
/**
 * Theme Name:     Neve Child
 * Author:         ThemeIsle
 * Template:       neve
 * Text Domain:	   neve-child
 * Description:    Neve is a next-generation, ultra-fast WordPress theme designed for top performance, SEO, and Core Web Vitals. Its lightweight codebase and small size ensure minimal overhead and lightning-fast load times. Fully compatible with the block editor, popular page builders (Elementor, Bricks, Oxygen etc), and WooCommerce, it's perfect for blogs, small businesses, agencies, portfolios, and online stores. With responsive design, multilingual translations, and easy customization options, Neve empowers you to create a future-proof, high-ranking online presence. Discover everything Neve has to offer and explore our powerful premium version at https://themeisle.com/themes/neve/.
 */
 
 /* Hide Neve theme's default page titles everywhere */
.nv-page-title-wrap {
    display: none !important;
}

/* Hide breadcrumbs everywhere */
.nv-yoast-breadcrumb {
    display: none !important;
}

/* ===================================
   STANDARDIZED HEADER STYLES
   Applied to all content pages (not homepage hero)
   =================================== */

/* Standard Page Header - Used by Strategy, Results, Why It Works */
.page-header {
    text-align: center !important;
    margin-bottom: 3rem !important;
    padding: 2rem 0 !important;
}

.page-header h1 {
    font-size: 2.5rem !important;
    font-weight: 800 !important;
    color: #1E3A8A !important;
    margin-bottom: 1rem !important;
    line-height: 1.2 !important;
}

.page-header .subtitle {
    font-size: 1.25rem !important;
    color: #64748B !important;
    font-weight: 400 !important;
    line-height: 1.5 !important;
}

/* Grid container fixes - MUST be at top to override theme */
.stat-grid {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 2rem !important;
    width: 100% !important;
    margin: 2rem 0 !important;
}

.candidate-grid {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 2rem !important;
    width: 100% !important;
    margin: 2rem 0 !important;
}

.state-grid {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 1.5rem !important;
    width: 100% !important;
    margin: 2rem 0 !important;
}

.timeline {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 2rem !important;
    width: 100% !important;
    margin: 3rem 0 !important;
}

/* ===================================
   THE STRATEGY PAGE STYLES
   =================================== */

/* Main container styles */
.strategy-container {
    max-width: 900px !important;
    margin: 0 auto !important;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
    line-height: 1.7 !important;
    color: #1f2937 !important;
}

.section {
    margin-bottom: 3.5rem !important;
}

.section h2 {
    font-size: 2rem !important;
    font-weight: 700 !important;
    color: #1E3A8A !important;
    margin-bottom: 1.5rem !important;
}

.section h3 {
    font-size: 1.5rem !important;
    font-weight: 700 !important;
    color: #1E3A8A !important;
    margin-bottom: 1rem !important;
    margin-top: 2rem !important;
}

.section p {
    margin-bottom: 1.25rem !important;
    font-size: 1.125rem !important;
}

.highlight-stat {
    background: #F3F4F6 !important;
    border-left: 4px solid #DC2626 !important;
    padding: 1.5rem !important;
    margin: 2rem 0 !important;
}

.stat-box {
    text-align: center !important;
    padding: 1.5rem !important;
    background: #F3F4F6 !important;
    border-radius: 8px !important;
}

.stat-number {
    font-size: 3rem !important;
    font-weight: 800 !important;
    color: #DC2626 !important;
    display: block !important;
    line-height: 1 !important;
}

.stat-label {
    font-size: 0.875rem !important;
    color: #64748B !important;
    margin-top: 0.5rem !important;
    display: block !important;
}

.candidate-card {
    background: #ffffff !important;
    border: 2px solid #E5E7EB !important;
    border-radius: 8px !important;
    padding: 1.5rem !important;
}

.candidate-card h4 {
    font-size: 1.25rem !important;
    font-weight: 700 !important;
    color: #1E3A8A !important;
    margin-bottom: 0.5rem !important;
}

.candidate-card .title {
    color: #64748B !important;
    font-size: 0.875rem !important;
    margin-bottom: 1rem !important;
    display: block !important;
}

.candidate-card p {
    font-size: 1rem !important;
    margin-bottom: 0.5rem !important;
}

.messaging-table {
    width: 100% !important;
    border-collapse: collapse !important;
    margin: 2rem 0 !important;
    font-size: 1rem !important;
}

.messaging-table th {
    background: #1E3A8A !important;
    color: #ffffff !important;
    padding: 1rem !important;
    text-align: left !important;
    font-weight: 600 !important;
}

.messaging-table td {
    padding: 1rem !important;
    border-bottom: 1px solid #E5E7EB !important;
    vertical-align: top !important;
}

.messaging-table tr:nth-child(even) {
    background: #F9FAFB !important;
}

.state-box {
    background: #F3F4F6 !important;
    padding: 1.5rem !important;
    border-radius: 8px !important;
}

.state-box h4 {
    font-size: 1.5rem !important;
    font-weight: 700 !important;
    color: #1E3A8A !important;
    margin-bottom: 0.5rem !important;
}

.state-box .vet-percent {
    font-size: 2rem !important;
    font-weight: 800 !important;
    color: #DC2626 !important;
    display: block !important;
}

.state-box .detail {
    color: #64748B !important;
    font-size: 0.875rem !important;
    margin-top: 0.5rem !important;
}

.quote {
    font-style: italic !important;
    color: #64748B !important;
    padding: 1rem 2rem !important;
    border-left: 4px solid #1E3A8A !important;
    margin: 1.5rem 0 !important;
    background: #F9FAFB !important;
}

.bullet-list {
    margin: 1.5rem 0 !important;
    padding-left: 2rem !important;
}

.bullet-list li {
    margin-bottom: 0.75rem !important;
    font-size: 1.125rem !important;
}

.dont-list {
    background: #FEF2F2 !important;
    border-left: 4px solid #DC2626 !important;
    padding: 1.5rem !important;
    margin: 2rem 0 !important;
}

.dont-list h4 {
    color: #DC2626 !important;
    font-weight: 700 !important;
    margin-bottom: 1rem !important;
}

.dont-list ul {
    margin-left: 1.5rem !important;
}

.dont-list li {
    margin-bottom: 0.75rem !important;
}

.timeline-item {
    text-align: center !important;
    padding: 2rem !important;
    background: #F3F4F6 !important;
    border-radius: 8px !important;
}

.timeline-year {
    font-size: 2.5rem !important;
    font-weight: 800 !important;
    color: #1E3A8A !important;
    margin-bottom: 1rem !important;
}

.timeline-item p {
    font-size: 0.875rem !important;
    margin-bottom: 0.5rem !important;
}

.cta-box {
    background: #1E3A8A !important;
    color: #ffffff !important;
    padding: 3rem !important;
    text-align: center !important;
    border-radius: 8px !important;
    margin-top: 4rem !important;
}

.cta-box h2 {
    color: #ffffff !important;
    font-size: 2rem !important;
    margin-bottom: 1.5rem !important;
}

.cta-box p {
    font-size: 1.25rem !important;
    margin-bottom: 2rem !important;
}

.cta-button {
    display: inline-block !important;
    background: #DC2626 !important;
    color: #ffffff !important;
    padding: 1rem 2.5rem !important;
    text-decoration: none !important;
    font-weight: 700 !important;
    border-radius: 6px !important;
    font-size: 1.125rem !important;
    transition: background 0.3s !important;
}

.cta-button:hover {
    background: #B91C1C !important;
    color: #ffffff !important;
}

.strategy-container strong {
    font-weight: 700 !important;
    color: #1E3A8A !important;
}

/* ===================================
   HOME PAGE CSS (Keep existing hero styles)
   =================================== */

/* Home Container */
.home-container {
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* Hero Section - Full Width */
.hero-section-fullwidth {
    width: 100vw !important;
    margin-left: calc(-50vw + 50%) !important;
    margin-right: calc(-50vw + 50%) !important;
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    padding: 4rem 2rem !important;
    color: #ffffff !important;
    position: relative !important;
}

.hero-section-fullwidth::before {
    content: "" !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    background: rgba(30, 58, 138, 0.85) !important;
    z-index: 1 !important;
}

.hero-content {
    max-width: 1200px !important;
    margin: 0 auto !important;
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 3rem !important;
    align-items: center !important;
    position: relative !important;
    z-index: 2 !important;
}

.hero-text {
    text-align: left !important;
}

.hero-text h1 {
    font-size: 2.75rem !important;
    font-weight: 800 !important;
    color: #ffffff !important;
    margin-bottom: 1rem !important;
    line-height: 1.2 !important;
}

.hero-subtitle {
    font-size: 1.125rem !important;
    color: #F3F4F6 !important;
    margin-bottom: 0.75rem !important;
    line-height: 1.5 !important;
}

.hero-tagline {
    font-size: 1rem !important;
    color: #ffffff !important;
    margin-bottom: 1.5rem !important;
}

.hero-button {
    display: inline-block !important;
    background: #DC2626 !important;
    color: #ffffff !important;
    padding: 0.875rem 2rem !important;
    text-decoration: none !important;
    font-weight: 700 !important;
    border-radius: 6px !important;
    font-size: 1rem !important;
    transition: background 0.3s !important;
}

.hero-button:hover {
    background: #B91C1C !important;
    color: #ffffff !important;
}

.hero-image {
    text-align: center !important;
}

.hero-image img {
    max-width: 100% !important;
    height: auto !important;
    filter: drop-shadow(0 10px 25px rgba(0,0,0,0.3)) !important;
}

/* Sections - Tighter Spacing */
.home-container .section {
    max-width: 1000px !important;
    margin: 0 auto !important;
    padding: 2.5rem 2rem !important;
}

.home-container .section h2 {
    font-size: 1.75rem !important;
    font-weight: 700 !important;
    color: #1E3A8A !important;
    text-align: center !important;
    margin-bottom: 1.75rem !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
}

/* Advantage Section */
.advantage-section {
    background: #F9FAFB !important;
}

.advantage-grid {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 1.5rem !important;
    margin-bottom: 2rem !important;
    width: 100% !important;
}

.advantage-card {
    background: #ffffff !important;
    border: 2px solid #E5E7EB !important;
    border-radius: 8px !important;
    padding: 1.5rem !important;
    text-align: center !important;
    transition: transform 0.3s, box-shadow 0.3s !important;
}

.advantage-card:hover {
    transform: translateY(-5px) !important;
    box-shadow: 0 10px 25px rgba(0,0,0,0.1) !important;
}

.checkmark {
    font-size: 2.5rem !important;
    color: #DC2626 !important;
    margin-bottom: 0.75rem !important;
}

.advantage-card h3 {
    font-size: 1.25rem !important;
    font-weight: 700 !important;
    color: #1E3A8A !important;
    margin-bottom: 0.25rem !important;
}

.advantage-card .subtitle {
    color: #64748B !important;
    font-size: 0.8rem !important;
    margin-bottom: 0.5rem !important;
    font-weight: 600 !important;
    text-transform: uppercase !important;
}

.advantage-card p {
    color: #1f2937 !important;
    font-size: 0.95rem !important;
    margin: 0 !important;
}

.strategy-callout {
    text-align: center !important;
    font-size: 1.125rem !important;
    color: #1E3A8A !important;
    font-weight: 600 !important;
    line-height: 1.5 !important;
    margin-top: 1rem !important;
}

/* Theory Section */
.theory-section {
    background: #ffffff !important;
}

.intro-text {
    font-size: 1.125rem !important;
    color: #1f2937 !important;
    text-align: center !important;
    margin-bottom: 1.5rem !important;
    line-height: 1.5 !important;
}

.key-points {
    list-style: none !important;
    padding: 0 !important;
    margin: 1.5rem 0 0 0 !important;
}

.key-points li {
    font-size: 1rem !important;
    color: #1f2937 !important;
    padding: 0.875rem !important;
    margin-bottom: 0.75rem !important;
    background: #F3F4F6 !important;
    border-left: 4px solid #DC2626 !important;
    border-radius: 4px !important;
}

/* Why Section */
.why-section {
    background: #F9FAFB !important;
}

.why-section p {
    font-size: 1rem !important;
    color: #1f2937 !important;
    line-height: 1.6 !important;
    margin-bottom: 1rem !important;
}

.why-section p:last-child {
    margin-bottom: 0 !important;
}

.why-section strong {
    color: #1E3A8A !important;
    font-weight: 700 !important;
}

/* ===================================
   REAL RESULTS PAGE CSS
   =================================== */

/* Results Page Container */
.results-page {
    max-width: 1200px !important;
    margin: 0 auto !important;
    padding: 2rem 1rem !important;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
    line-height: 1.6 !important;
    color: #1f2937 !important;
}

/* Results Hero - Different from home hero */
.results-hero {
    text-align: center !important;
    margin-bottom: 4rem !important;
    padding: 3rem 2rem !important;
    background: linear-gradient(135deg, #1E3A8A 0%, #3B82F6 100%) !important;
    color: white !important;
    border-radius: 12px !important;
}

.results-hero h2 {
    font-size: 2rem !important;
    font-weight: 800 !important;
    margin-bottom: 1rem !important;
    color: white !important;
    line-height: 1.2 !important;
}

.results-hero .hero-subtitle {
    font-size: 1.25rem !important;
    margin-bottom: 2rem !important;
    opacity: 0.95 !important;
    max-width: 800px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    color: white !important;
}

.hero-stats-grid {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 2rem !important;
    width: 100% !important;
    max-width: 900px !important;
    margin: 0 auto !important;
}

.hero-stat {
    background: rgba(255, 255, 255, 0.15) !important;
    padding: 1.5rem !important;
    border-radius: 8px !important;
    backdrop-filter: blur(10px) !important;
}

.hero-stat .stat-number {
    font-size: 3rem !important;
    font-weight: 800 !important;
    color: white !important;
    margin-bottom: 0.5rem !important;
}

.hero-stat .stat-label {
    font-size: 0.95rem !important;
    color: rgba(255, 255, 255, 0.9) !important;
    font-weight: 500 !important;
}

/* Section Headers */
.section-header {
    margin: 4rem 0 2rem 0 !important;
    padding-bottom: 1rem !important;
    border-bottom: 3px solid #DC2626 !important;
}

.section-header h2 {
    font-size: 2rem !important;
    font-weight: 700 !important;
    color: #1E3A8A !important;
    margin: 0 !important;
}

/* Intro Sections */
.intro-section {
    margin: 2rem 0 3rem 0 !important;
    font-size: 1.1rem !important;
    line-height: 1.8 !important;
}

.intro-section p {
    margin-bottom: 1.25rem !important;
}

.intro-section strong {
    color: #1E3A8A !important;
    font-weight: 600 !important;
}

/* Candidate Profiles - Full width layouts */
.candidate-profile {
    margin-bottom: 4rem !important;
    padding: 2rem !important;
    background: #F3F4F6 !important;
    border-radius: 12px !important;
    border-left: 5px solid #DC2626 !important;
}

.candidate-header {
    margin-bottom: 2rem !important;
}

.candidate-header h3 {
    font-size: 2rem !important;
    font-weight: 700 !important;
    color: #1E3A8A !important;
    margin: 0 0 0.5rem 0 !important;
}

.candidate-title {
    font-size: 1.1rem !important;
    color: #64748B !important;
    font-weight: 500 !important;
}

.profile-grid {
    display: grid !important;
    grid-template-columns: 2fr 1fr !important;
    gap: 2rem !important;
    width: 100% !important;
    margin-bottom: 2rem !important;
}

.profile-story h4,
.profile-results h4 {
    font-size: 1.3rem !important;
    font-weight: 700 !important;
    color: #1E3A8A !important;
    margin: 0 0 1rem 0 !important;
}

.profile-story p {
    margin-bottom: 1.25rem !important;
    line-height: 1.7 !important;
}

.profile-story strong {
    color: #1E3A8A !important;
    font-weight: 600 !important;
}

.result-stat-box {
    background: white !important;
    padding: 1.5rem !important;
    border-radius: 8px !important;
    text-align: center !important;
    margin-bottom: 1rem !important;
}

.result-number {
    font-size: 2.5rem !important;
    font-weight: 800 !important;
    color: #DC2626 !important;
    margin-bottom: 0.5rem !important;
}

.result-label {
    font-size: 0.95rem !important;
    color: #64748B !important;
    font-weight: 500 !important;
}

.results-note {
    margin-top: 1.5rem !important;
    padding: 1rem !important;
    background: rgba(30, 58, 138, 0.1) !important;
    border-radius: 6px !important;
    font-size: 0.95rem !important;
    line-height: 1.6 !important;
}

.results-note strong {
    color: #1E3A8A !important;
}

/* Campaign Strategy Box */
.campaign-strategy {
    margin-top: 2rem !important;
    padding: 1.5rem !important;
    background: white !important;
    border-radius: 8px !important;
    border: 2px solid #1E3A8A !important;
}

.campaign-strategy h4 {
    font-size: 1.2rem !important;
    font-weight: 700 !important;
    color: #1E3A8A !important;
    margin: 0 0 1rem 0 !important;
}

.campaign-strategy ul {
    margin: 0 !important;
    padding-left: 1.5rem !important;
}

.campaign-strategy li {
    margin-bottom: 0.75rem !important;
    line-height: 1.6 !important;
}

.campaign-strategy strong {
    color: #1E3A8A !important;
    font-weight: 600 !important;
}

/* 2018 Winners Grid */
.winner-grid {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 2rem !important;
    width: 100% !important;
    margin: 2rem 0 !important;
}

.winner-card {
    background: white !important;
    padding: 1.5rem !important;
    border-radius: 8px !important;
    border: 2px solid #E5E7EB !important;
    transition: all 0.3s ease !important;
}

.winner-card:hover {
    border-color: #1E3A8A !important;
    box-shadow: 0 4px 12px rgba(30, 58, 138, 0.15) !important;
    transform: translateY(-2px) !important;
}

.winner-name {
    font-size: 1.5rem !important;
    font-weight: 700 !important;
    color: #1E3A8A !important;
    margin-bottom: 0.5rem !important;
}

.winner-district {
    font-size: 1rem !important;
    color: #64748B !important;
    font-weight: 600 !important;
    margin-bottom: 0.5rem !important;
}

.winner-service {
    font-size: 0.9rem !important;
    color: #DC2626 !important;
    font-weight: 600 !important;
    margin-bottom: 1rem !important;
}

.winner-result {
    font-size: 1rem !important;
    font-weight: 700 !important;
    color: #1E3A8A !important;
    margin-bottom: 1rem !important;
    padding: 0.75rem !important;
    background: #F3F4F6 !important;
    border-radius: 6px !important;
}

.winner-story {
    font-size: 0.95rem !important;
    line-height: 1.6 !important;
    color: #4B5563 !important;
}

/* Blue Wave Stats Section */
.blue-wave-stats {
    margin: 3rem 0 !important;
    padding: 2rem !important;
    background: linear-gradient(135deg, #1E3A8A 0%, #3B82F6 100%) !important;
    border-radius: 12px !important;
    color: white !important;
}

.blue-wave-stats h4 {
    font-size: 1.5rem !important;
    font-weight: 700 !important;
    color: white !important;
    margin: 0 0 2rem 0 !important;
    text-align: center !important;
}

.wave-stats-grid {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 2rem !important;
    width: 100% !important;
    margin-bottom: 2rem !important;
}

.wave-stat {
    text-align: center !important;
    padding: 1rem !important;
    background: rgba(255, 255, 255, 0.15) !important;
    border-radius: 8px !important;
}

.wave-number {
    font-size: 2.5rem !important;
    font-weight: 800 !important;
    color: white !important;
    margin-bottom: 0.5rem !important;
}

.wave-label {
    font-size: 0.9rem !important;
    color: rgba(255, 255, 255, 0.9) !important;
}

.stats-note {
    font-size: 1rem !important;
    line-height: 1.7 !important;
    color: rgba(255, 255, 255, 0.95) !important;
    text-align: center !important;
}

.stats-note strong {
    color: white !important;
    font-weight: 700 !important;
}

/* Results page has different advantage-card styling than homepage */
.results-page .advantage-card {
    padding: 1.5rem !important;
    background: #F3F4F6 !important;
    border-radius: 8px !important;
    border-left: 4px solid #DC2626 !important;
    border: none !important;
    text-align: left !important;
}

.results-page .advantage-card:hover {
    transform: none !important;
    box-shadow: none !important;
}

.checkmark-green {
    font-size: 2.5rem !important;
    color: #16A34A !important;
    margin-bottom: 0.75rem !important;
}

.results-page .advantage-card h4 {
    font-size: 1.2rem !important;
    font-weight: 700 !important;
    color: #1E3A8A !important;
    margin: 0 0 1rem 0 !important;
}

.results-page .advantage-card p {
    font-size: 1rem !important;
    line-height: 1.7 !important;
    color: #4B5563 !important;
    margin: 0 !important;
}

.results-page .advantage-grid {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 2rem !important;
    width: 100% !important;
    margin: 2rem 0 3rem 0 !important;
}

/* Comparison Table */
.comparison-table {
    margin: 3rem 0 !important;
    overflow-x: auto !important;
}

.comparison-table h4 {
    font-size: 1.4rem !important;
    font-weight: 700 !important;
    color: #1E3A8A !important;
    margin: 0 0 1.5rem 0 !important;
}

.comparison-table table {
    width: 100% !important;
    border-collapse: collapse !important;
    background: white !important;
    border-radius: 8px !important;
    overflow: hidden !important;
}

.comparison-table thead {
    background: #1E3A8A !important;
    color: white !important;
}

.comparison-table th {
    padding: 1rem !important;
    text-align: left !important;
    font-weight: 600 !important;
    font-size: 0.95rem !important;
}

.comparison-table td {
    padding: 1rem !important;
    border-bottom: 1px solid #E5E7EB !important;
    font-size: 0.95rem !important;
}

.comparison-table tbody tr:hover {
    background: #F3F4F6 !important;
}

.comparison-table .highlight-row {
    background: rgba(30, 58, 138, 0.05) !important;
}

.comparison-table .highlight-row:hover {
    background: rgba(30, 58, 138, 0.1) !important;
}

.table-note {
    margin-top: 1rem !important;
    font-size: 0.95rem !important;
    line-height: 1.6 !important;
    color: #4B5563 !important;
}

.table-note strong {
    color: #1E3A8A !important;
    font-weight: 600 !important;
}

/* CTA Section - Red gradient (different from existing .cta-box blue) */
.cta-section {
    margin: 4rem 0 2rem 0 !important;
    padding: 3rem !important;
    background: linear-gradient(135deg, #DC2626 0%, #991B1B 100%) !important;
    color: white !important;
    border-radius: 12px !important;
    text-align: center !important;
}

.cta-section h3 {
    font-size: 2rem !important;
    font-weight: 800 !important;
    color: white !important;
    margin: 0 0 1.5rem 0 !important;
}

.cta-section p {
    font-size: 1.15rem !important;
    line-height: 1.8 !important;
    color: rgba(255, 255, 255, 0.95) !important;
    margin-bottom: 1.25rem !important;
    max-width: 900px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

.cta-section p strong {
    color: white !important;
    font-weight: 700 !important;
}

.cta-section em {
    font-style: italic !important;
    color: white !important;
}

/* ===================================
   WHY IT WORKS PAGE STYLES
   =================================== */

/* Main container */
.why-works-container {
    max-width: 900px !important;
    margin: 0 auto !important;
    padding: 2rem 1rem !important;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif !important;
    line-height: 1.7 !important;
    color: #1f2937 !important;
}

/* Trust Hero Section */
.trust-hero {
    background: linear-gradient(135deg, #1E3A8A 0%, #3B82F6 100%) !important;
    color: white !important;
    padding: 3rem 2rem !important;
    border-radius: 12px !important;
    margin: 3rem 0 !important;
}

.trust-hero h2 {
    font-size: 2rem !important;
    font-weight: 800 !important;
    color: white !important;
    margin: 0 0 1.5rem 0 !important;
    text-align: center !important;
}

.trust-hero > p {
    font-size: 1.15rem !important;
    line-height: 1.8 !important;
    color: rgba(255, 255, 255, 0.95) !important;
    margin-bottom: 2rem !important;
    text-align: center !important;
}

.trust-grid {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 2rem !important;
    width: 100% !important;
    margin: 2rem 0 !important;
}

.trust-stat {
    text-align: center !important;
    padding: 1.5rem !important;
    background: rgba(255, 255, 255, 0.15) !important;
    border-radius: 8px !important;
}

.trust-number {
    font-size: 3rem !important;
    font-weight: 800 !important;
    color: white !important;
    display: block !important;
    margin-bottom: 0.5rem !important;
    line-height: 1 !important;
}

.trust-label {
    font-size: 0.95rem !important;
    color: rgba(255, 255, 255, 0.9) !important;
    display: block !important;
    line-height: 1.4 !important;
}

.trust-note {
    font-size: 1.05rem !important;
    line-height: 1.7 !important;
    color: rgba(255, 255, 255, 0.95) !important;
    text-align: center !important;
    margin-top: 2rem !important;
}

.trust-note strong {
    color: white !important;
    font-weight: 700 !important;
}

/* Four Pillars Grid */
.pillars-grid {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 2rem !important;
    width: 100% !important;
    margin: 2rem 0 3rem 0 !important;
}

.pillar-card {
    background: #F3F4F6 !important;
    padding: 2rem !important;
    border-radius: 8px !important;
    border-left: 4px solid #DC2626 !important;
}

.pillar-icon {
    font-size: 2.5rem !important;
    margin-bottom: 1rem !important;
}

.pillar-card h3 {
    font-size: 1.4rem !important;
    font-weight: 700 !important;
    color: #1E3A8A !important;
    margin: 0 0 1rem 0 !important;
}

.pillar-card p {
    font-size: 1rem !important;
    line-height: 1.7 !important;
    color: #4B5563 !important;
    margin: 0 !important;
}

.pillar-card strong {
    color: #1E3A8A !important;
    font-weight: 700 !important;
}

/* Independent Voter Data Section */
.independent-data {
    background: #F9FAFB !important;
    padding: 2rem !important;
    border-radius: 8px !important;
    margin: 2rem 0 3rem 0 !important;
}

.independent-data h3 {
    font-size: 1.4rem !important;
    font-weight: 700 !important;
    color: #1E3A8A !important;
    margin: 0 0 1.5rem 0 !important;
    text-align: center !important;
}

.data-comparison {
    margin: 2rem 0 !important;
}

.data-bar {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    padding: 1.25rem !important;
    margin-bottom: 1rem !important;
    border-radius: 6px !important;
}

.gallego-bar {
    background: #1E3A8A !important;
    color: white !important;
}

.harris-bar {
    background: #64748B !important;
    color: white !important;
}

.data-label {
    font-size: 1.05rem !important;
    font-weight: 600 !important;
}

.data-percent {
    font-size: 1.75rem !important;
    font-weight: 800 !important;
}

.data-note {
    font-size: 1rem !important;
    line-height: 1.7 !important;
    color: #4B5563 !important;
    text-align: center !important;
    margin-top: 1.5rem !important;
}

.data-note strong {
    color: #1E3A8A !important;
    font-weight: 700 !important;
}

/* Research Grid */
.research-grid {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 2rem !important;
    width: 100% !important;
    margin: 2rem 0 3rem 0 !important;
}

.research-box {
    background: white !important;
    border: 2px solid #E5E7EB !important;
    padding: 1.5rem !important;
    border-radius: 8px !important;
}

.research-box h4 {
    font-size: 1.2rem !important;
    font-weight: 700 !important;
    color: #1E3A8A !important;
    margin: 0 0 1rem 0 !important;
}

.research-box p {
    font-size: 1rem !important;
    line-height: 1.7 !important;
    color: #4B5563 !important;
    margin: 0 !important;
}

.research-box strong {
    color: #1E3A8A !important;
    font-weight: 700 !important;
}

/* Attack Immunity Section */
.attack-immunity {
    background: #F9FAFB !important;
    padding: 2rem !important;
    border-radius: 8px !important;
    margin: 2rem 0 3rem 0 !important;
}

.immunity-grid {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 2rem !important;
    width: 100% !important;
    margin: 2rem 0 !important;
}

.immunity-box {
    background: white !important;
    padding: 1.5rem !important;
    border-radius: 8px !important;
    border: 2px solid #E5E7EB !important;
}

.immunity-check {
    font-size: 2rem !important;
    color: #16A34A !important;
    margin-bottom: 0.75rem !important;
}

.immunity-box h4 {
    font-size: 1.1rem !important;
    font-weight: 700 !important;
    color: #DC2626 !important;
    margin: 0 0 0.75rem 0 !important;
}

.immunity-box p {
    font-size: 0.95rem !important;
    line-height: 1.7 !important;
    color: #4B5563 !important;
    margin: 0 !important;
}

.immunity-box strong {
    color: #1E3A8A !important;
    font-weight: 700 !important;
}

.immunity-note {
    font-size: 1.05rem !important;
    line-height: 1.7 !important;
    color: #4B5563 !important;
    text-align: center !important;
    margin-top: 2rem !important;
    padding: 1.5rem !important;
    background: white !important;
    border-radius: 8px !important;
}

.immunity-note strong {
    color: #1E3A8A !important;
    font-weight: 700 !important;
}

/* Institution Trust Bars */
.institution-trust {
    margin: 3rem 0 !important;
}

.institution-trust h3 {
    font-size: 1.5rem !important;
    font-weight: 700 !important;
    color: #1E3A8A !important;
    margin: 0 0 2rem 0 !important;
    text-align: center !important;
}

.trust-bars {
    background: #F9FAFB !important;
    padding: 2rem !important;
    border-radius: 8px !important;
}

.trust-bar-item {
    margin-bottom: 1.5rem !important;
}

.trust-bar-item:last-child {
    margin-bottom: 0 !important;
}

.bar-label {
    font-size: 0.95rem !important;
    font-weight: 600 !important;
    color: #1f2937 !important;
    display: block !important;
    margin-bottom: 0.5rem !important;
}

.bar-fill {
    background: #1E3A8A !important;
    height: 36px !important;
    border-radius: 6px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    padding-right: 1rem !important;
    transition: width 0.5s ease !important;
}

.bar-value {
    color: white !important;
    font-weight: 700 !important;
    font-size: 1rem !important;
}

.trust-bar-item.military .bar-fill {
    background: #16A34A !important;
}

.trust-bar-item.congress .bar-fill {
    background: #DC2626 !important;
}

.trust-bars-note {
    font-size: 1rem !important;
    line-height: 1.7 !important;
    color: #4B5563 !important;
    text-align: center !important;
    margin-top: 2rem !important;
}

.trust-bars-note strong {
    color: #1E3A8A !important;
    font-weight: 700 !important;
}

/* Academic Section */
.academic-section {
    margin: 3rem 0 !important;
}

.study-grid {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 2rem !important;
    width: 100% !important;
    margin: 2rem 0 !important;
}

.study-card {
    background: white !important;
    border: 2px solid #E5E7EB !important;
    padding: 1.5rem !important;
    border-radius: 8px !important;
}

.study-card h4 {
    font-size: 1.15rem !important;
    font-weight: 700 !important;
    color: #1E3A8A !important;
    margin: 0 0 0.5rem 0 !important;
}

.study-meta {
    font-size: 0.85rem !important;
    color: #64748B !important;
    font-style: italic !important;
    margin: 0 0 1rem 0 !important;
}

.study-card p {
    font-size: 0.95rem !important;
    line-height: 1.7 !important;
    color: #4B5563 !important;
    margin-bottom: 1rem !important;
}

.study-conclusion {
    font-weight: 600 !important;
    color: #1E3A8A !important;
    margin-top: 1rem !important;
}

.study-conclusion strong {
    font-weight: 700 !important;
}

.quote-block {
    background: #F9FAFB !important;
    border-left: 4px solid #1E3A8A !important;
    padding: 2rem !important;
    margin: 2rem 0 !important;
    border-radius: 0 8px 8px 0 !important;
}

.quote-block p {
    font-size: 1.1rem !important;
    line-height: 1.8 !important;
    color: #1f2937 !important;
    font-style: italic !important;
    margin-bottom: 1rem !important;
}

.quote-block strong {
    font-weight: 700 !important;
    color: #1E3A8A !important;
}

.quote-source {
    font-size: 0.95rem !important;
    color: #64748B !important;
    font-style: normal !important;
    font-weight: 600 !important;
    margin: 0 !important;
}

/* Conditions Grid */
.conditions-grid {
    display: grid !important;
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 2rem !important;
    width: 100% !important;
    margin: 2rem 0 3rem 0 !important;
}

.condition-box {
    background: #F3F4F6 !important;
    padding: 1.5rem !important;
    border-radius: 8px !important;
    border-left: 4px solid #DC2626 !important;
}

.condition-box h4 {
    font-size: 1.2rem !important;
    font-weight: 700 !important;
    color: #1E3A8A !important;
    margin: 0 0 1rem 0 !important;
}

.condition-box p {
    font-size: 1rem !important;
    line-height: 1.7 !important;
    color: #4B5563 !important;
    margin: 0 !important;
}

.condition-box strong {
    color: #1E3A8A !important;
    font-weight: 700 !important;
}

/* Bottom Line Section */
.bottom-line {
    background: #F9FAFB !important;
    padding: 3rem 2rem !important;
    border-radius: 12px !important;
    margin: 3rem 0 !important;
    border: 2px solid #E5E7EB !important;
}

.bottom-line h2 {
    font-size: 2rem !important;
    font-weight: 800 !important;
    color: #1E3A8A !important;
    margin: 0 0 1.5rem 0 !important;
    text-align: center !important;
}

.bottom-line p {
    font-size: 1.1rem !important;
    line-height: 1.8 !important;
    color: #1f2937 !important;
    margin-bottom: 1.25rem !important;
}

.bottom-line p:last-child {
    margin-bottom: 0 !important;
}

.bottom-line strong {
    color: #1E3A8A !important;
    font-weight: 700 !important;
}

.bottom-line em {
    font-style: italic !important;
    color: #DC2626 !important;
}

/* CTA Section */
.why-works-cta {
    background: linear-gradient(135deg, #DC2626 0%, #991B1B 100%) !important;
    color: white !important;
    padding: 3rem 2rem !important;
    border-radius: 12px !important;
    text-align: center !important;
    margin: 3rem 0 2rem 0 !important;
}

.why-works-cta h3 {
    font-size: 2rem !important;
    font-weight: 800 !important;
    color: white !important;
    margin: 0 0 1.5rem 0 !important;
}

.why-works-cta p {
    font-size: 1.15rem !important;
    line-height: 1.8 !important;
    color: rgba(255, 255, 255, 0.95) !important;
    margin-bottom: 1.25rem !important;
}

.why-works-cta p:last-child {
    margin-bottom: 0 !important;
}

.why-works-cta strong {
    color: white !important;
    font-weight: 700 !important;
}

/* ===================================
   RESPONSIVE DESIGN
   =================================== */
@media (max-width: 768px) {
    .page-header h1 {
        font-size: 2rem !important;
    }
    
    .page-header .subtitle {
        font-size: 1.1rem !important;
    }
    
    .stat-grid {
        grid-template-columns: 1fr !important;
    }
    
    .candidate-grid {
        grid-template-columns: 1fr !important;
    }
    
    .state-grid {
        grid-template-columns: 1fr !important;
    }
    
    .timeline {
        grid-template-columns: 1fr !important;
    }
    
    .messaging-table {
        font-size: 0.875rem !important;
    }
    
    .messaging-table th, .messaging-table td {
        padding: 0.75rem !important;
    }
    
    .hero-section-fullwidth {
        padding: 3rem 1.5rem !important;
    }
    
    .hero-content {
        grid-template-columns: 1fr !important;
        gap: 2rem !important;
    }
    
    .hero-text h1 {
        font-size: 2rem !important;
    }
    
    .hero-image {
        order: -1 !important;
    }
    
    .advantage-grid {
        grid-template-columns: 1fr !important;
    }
    
    .home-container .section {
        padding: 2rem 1.5rem !important;
    }
    
    .home-container .section h2 {
        font-size: 1.5rem !important;
    }
    
    /* Results Page Responsive */
    .results-hero .results-hero h2 {
        font-size: 1.75rem !important;
    }
    
    .results-hero .hero-subtitle {
        font-size: 1rem !important;
    }
    
    .hero-stats-grid {
        grid-template-columns: 1fr !important;
        gap: 1rem !important;
    }
    
    .hero-stat .stat-number {
        font-size: 2.5rem !important;
    }
    
    .section-header h2 {
        font-size: 1.5rem !important;
    }
    
    .candidate-header h3 {
        font-size: 1.5rem !important;
    }
    
    .winner-grid {
        grid-template-columns: 1fr !important;
    }
    
    .wave-stats-grid {
        grid-template-columns: 1fr !important;
    }
    
    .comparison-table {
        font-size: 0.85rem !important;
    }
    
    .comparison-table th,
    .comparison-table td {
        padding: 0.5rem !important;
    }
    
    .cta-section h3 {
        font-size: 1.5rem !important;
    }
    
    .cta-section p {
        font-size: 1rem !important;
    }
    
    /* Why It Works Responsive */
    .trust-grid {
        grid-template-columns: 1fr !important;
    }
    
    .pillars-grid {
        grid-template-columns: 1fr !important;
    }
    
    .research-grid {
        grid-template-columns: 1fr !important;
    }
    
    .immunity-grid {
        grid-template-columns: 1fr !important;
    }
    
    .study-grid {
        grid-template-columns: 1fr !important;
    }
    
    .conditions-grid {
        grid-template-columns: 1fr !important;
    }
    
    .trust-hero h2 {
        font-size: 1.5rem !important;
    }
    
    .trust-number {
        font-size: 2.5rem !important;
    }
    
    .pillar-card h3 {
        font-size: 1.2rem !important;
    }
    
    .data-bar {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 0.5rem !important;
    }
    
    .bottom-line {
        padding: 2rem 1.5rem !important;
    }
    
    .bottom-line h2 {
        font-size: 1.5rem !important;
    }
    
    .why-works-cta {
        padding: 2rem 1.5rem !important;
    }
    
    .why-works-cta h3 {
        font-size: 1.5rem !important;
    }
}

@media (max-width: 1024px) {
    .profile-grid {
        grid-template-columns: 1fr !important;
    }
    
    .results-page .advantage-grid {
        grid-template-columns: 1fr !important;
    }
    
    .wave-stats-grid {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

@media (max-width: 480px) {
    .results-page {
        padding: 1rem 0.75rem !important;
    }
    
    .candidate-profile {
        padding: 1.5rem !important;
    }
    
    .cta-section {
        padding: 2rem 1.5rem !important;
    }
    
    .why-works-container {
        padding: 1rem 0.75rem !important;
    }
    
    .trust-hero {
        padding: 1.5rem 1rem !important;
    }
    
    .pillar-card, .research-box, .immunity-box, .condition-box {
        padding: 1.25rem !important;
    }
    
    .quote-block {
        padding: 1.5rem !important;
    }
}
