/*
Theme Name: Digitaluxe Agency
Theme URI: http://digitaluxeagency.com
Author: Shirley Pellicer
Author URI: 
Description: Premium custom theme for Digitaluxe Agency V0 by SP
Version: 1.0
License: GNU General Public License v2 or later
Text Domain: digitaluxe-theme
*/

/* ====================================================
   CSS VARIABLES
=================================================== */
:root {
    /* Colors */
    --color-black: #000;
    --color-white: #fff;
    --color-gray-111: #111;
    --color-gray-333: #333;
    --color-gray-555: #555;
    --color-gray-666: #666;
    --color-gray-f0: #f0f0f0;
    --color-gray-f5: #f5f5f5;
    --color-gray-f8: #f8f8f8;
    --color-gray-fa: #fafafa;
    --color-gold: #bfa14b;
    --color-gold-dark: #a08035;
    
    /* Typography */
    --font-family-helvetica: 'Helvetica Neue', sans-serif;
    --font-family-georgia: Georgia, serif;
    --line-height-base: 1.6;
    --line-height-tight: 1.4;
    --line-height-loose: 2.8;
    
    /* Spacing */
    --spacing-8: 8px;
    --spacing-12: 12px;
    --spacing-15: 15px;
    --spacing-20: 20px;
    --spacing-24: 24px;
    --spacing-25: 25px;
    --spacing-30: 30px;
    --spacing-40: 40px;
    --spacing-45: 45px;
    --spacing-50: 50px;
    --spacing-60: 60px;
    --spacing-80: 80px;
    --spacing-120: 120px;
    
    /* Border Radius */
    --radius-2: 2px;
    --radius-4: 4px;
    --radius-8: 8px;
    --radius-12: 12px;
    
    /* Shadows */
    --shadow-subtle: 0 2px 20px rgba(0, 0, 0, 0.04);
    --shadow-card: 0 4px 24px rgba(0, 0, 0, 0.06);
    --shadow-hover: 0 12px 40px rgba(0, 0, 0, 0.08);
    --shadow-header: 0 4px 6px rgba(0, 0, 0, 0.1);
    
    /* France page specific - override container width for featured project section */
body.slug-france /* Ensure all featured project sections display in full width and height */
.featured-project {
    max-width: 1200px !important;
    width: 100% !important;
    margin: 0 auto !important;
    padding: 0 !important;
    height: auto !important;
    min-height: 100% !important;
}

.featured-project-card {
    max-width: 1000px !important;
    width: 100% !important;
    margin: 0 auto !important;
    padding: 0 !important;
}

/* Archive pages - add proper spacing to solutions grid */
.pr-solutions .solutions-grid {
    padding-left: 150px !important;
    padding-right: 90px !important;
}

/* Container Widths */

/* CSS Variables */
:root {
    --container-max-width: 1200px;
    --content-max-width: 600px;
    
    /* Grid Gaps */
    --gap-30: 30px;
    --gap-40: 40px;
    --gap-50: 50px;
    --gap-80: 80px;
    
    /* Font Sizes */
    --font-size-xs: 0.6rem;
    --font-size-sm: 0.85rem;
    --font-size-base: 0.95rem;
    --font-size-lg: 1rem;
    --font-size-xl: 1.1rem;
    --font-size-2xl: 1.3rem;
    --font-size-3xl: 1.4rem;
    --font-size-4xl: 0.7rem;
    --font-size-5xl: 1.8rem;
    --font-size-6xl: 2.2rem;
    --font-size-7xl: 2.4rem;
    --font-size-8xl: 3.5rem;
}

/* Main Container Styles */
.container {
    max-width: var(--container-max-width);
    margin: 0 auto;
    padding: 0 20px;
    width: 100%;
    box-sizing: border-box;
}

@media (min-width: 768px) {
    .container {
        padding: 0 40px;
    }
}

@media (min-width: 1200px) {
    .container {
        padding: 0 60px;
    }
}

/* ====================================================
   CSS RESET
=================================================== */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

/* ====================================================
   BASE
=================================================== */
body {
    margin: 0;
    padding: 0;
    font-family: var(--font-family-helvetica);
    background: var(--color-white);
    color: var(--color-gray-111);
    line-height: var(--line-height-base);
}

main {
    display: block;
    width: 100%;
}

/* ====================================================
   HEADER
=================================================== */
.site-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: var(--spacing-20) var(--spacing-40);
    background: var(--color-black);
    color: var(--color-white);
    position: relative;
    z-index: 999;
}

.logo a {
    color: var(--color-white);
    font-size: 20px !important;
    font-weight: bold !important;
    text-decoration: none !important;
    font-family: var(--font-family-georgia);
    transition: color 0.3s ease;
    display: block !important;
    line-height: 1 !important;
}

.digitaluxe-logo {
    font-size: 20px !important;
}

.site-header .logo a:hover {
    color: var(--color-gold);
}

.primary-navigation {
    display: flex !important;
    align-items: center !important;
    flex: 1;
    justify-content: center;
}

/* Mac-specific and universal menu fixes */
.primary-menu,
.menu,
.nav-menu,
ul.primary-menu,
ul.menu,
ul.nav-menu,
nav ul {
    list-style: none !important;
    display: flex !important;
    flex-direction: row !important;
    gap: 30px;
    margin: 0 !important;
    padding: 0 !important;
    align-items: center !important;
    justify-content: center !important;
}

.primary-menu li,
.menu li,
.nav-menu li,
ul.primary-menu li,
ul.menu li,
ul.nav-menu li,
nav ul li {
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
    list-style-type: none !important;
    display: inline-block !important;
    float: none !important;
    position: relative !important;
    vertical-align: top !important;
}

/* Hide Home menu item specifically */
.primary-menu li a[href*="home"],
.menu li a[href*="home"],
.nav-menu li a[href*="home"],
ul.primary-menu li a[href*="home"],
ul.menu li a[href*="home"],
ul.nav-menu li a[href*="home"],
nav ul li a[href*="home"],
.primary-menu li:has(a[href*="home"]),
.menu li:has(a[href*="home"]),
.nav-menu li:has(a[href*="home"]),
ul.primary-menu li:has(a[href*="home"]),
ul.menu li:has(a[href*="home"]),
ul.nav-menu li:has(a[href*="home"]),
nav ul li:has(a[href*="home"]) {
    display: none !important;
}

.primary-menu li::before,
.menu li::before,
.nav-menu li::before,
ul.primary-menu li::before,
ul.menu li::before,
ul.nav-menu li::before,
nav ul li::before {
    content: none !important;
    display: none !important;
}

.primary-menu li a,
.menu li a,
.nav-menu li a,
ul.primary-menu li a,
ul.menu li a,
ul.nav-menu li a,
nav ul li a {
    color: var(--color-white);
    text-decoration: none;
    font-weight: var(--font-weight-medium);
    transition: 0.3s ease;
    display: block;
    white-space: nowrap;
}

/* ====================================================
   CAPABILITY & INDUSTRY PAGES
=================================================== */

.capability-hero, .industry-hero {
    background: linear-gradient(135deg, #1a1a1a 0%, #2d2d2d 100%);
    color: var(--color-white);
    padding: var(--spacing-120) 0;
    text-align: center;
}

.hero-content h1 {
    font-size: var(--font-size-8xl);
    font-weight: var(--font-weight-bold);
    margin-bottom: var(--spacing-20);
    line-height: 1.2;
}

.hero-content p {
    font-size: var(--font-size-2xl);
    max-width: var(--content-max-width);
    margin: 0 auto var(--spacing-30);
    line-height: var(--line-height-base);
    opacity: 0.9;
}

.hero-meta {
    display: flex;
    justify-content: center;
    gap: var(--spacing-30);
    font-size: var(--font-size-sm);
    text-transform: uppercase;
    letter-spacing: 1px;
}

.capability-category, .industry-category {
    color: var(--color-gold);
    font-weight: var(--font-weight-semibold);
}

.capability-markets, .industry-markets {
    color: var(--color-white);
    opacity: 0.8;
}

/* Content Sections */
.capability-overview, .industry-overview {
    padding: 80px 0;
    background: #fff;
}

.overview-content h2 {
    font-size: var(--font-size-6xl);
    font-weight: var(--font-weight-bold);
    margin-bottom: var(--spacing-30);
    text-align: center;
    color: var(--color-gray-111);
}

.overview-content p {
    font-size: var(--font-size-lg);
    line-height: 1.7;
    max-width: 800px;
    margin: 0 auto var(--spacing-50);
    text-align: center;
    color: var(--color-gray-333);
}

.key-services {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 40px;
    max-width: 1000px;
    margin: 0 auto;
}

.service-item {
    text-align: center;
    padding: 30px;
    border-radius: 12px;
    background: #f8f8f8;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.service-item:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 30px rgba(0, 0, 0, 0.1);
}

.service-item h3 {
    font-size: var(--font-size-2xl);
    font-weight: var(--font-weight-semibold);
    margin-bottom: var(--spacing-15);
    color: var(--color-gray-111);
}

.service-item p {
    font-size: var(--font-size-base);
    line-height: var(--line-height-base);
    color: var(--color-gray-666);
}

/* Case Studies Sections */
.related-case-studies {
    padding: 80px 0;
    background: #f8f8f8;
}

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

.section-header h2 {
font-size: var(--font-size-6xl);
font-weight: var(--font-weight-light);
margin-bottom: var(--spacing-15);
color: var(--color-gray-111);
}

.section-header p {
font-size: var(--font-size-lg);
color: var(--color-gray-666);
max-width: var(--content-max-width);
margin: 0 auto;
    max-width: var(--content-max-width);
    margin: 0 auto;
}

.case-studies-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
    gap: 40px;
    max-width: 1200px;
    margin: 0 auto;
}

.case-study-card {
    background: #fff;
    border-radius: 12px;
    padding: 40px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.case-study-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1);
}

.case-study-content h3 {
    font-size: var(--font-size-4xl);
    font-weight: var(--font-weight-semibold);
    margin-bottom: var(--spacing-15);
    color: var(--color-gray-111);
}

.case-study-excerpt {
    font-size: var(--font-size-base);
    line-height: var(--line-height-base);
    color: var(--color-gray-666);
    margin-bottom: var(--spacing-25);
}

.case-study-link {
    color: var(--color-gold);
    text-decoration: none;
    font-weight: var(--font-weight-medium);
    transition: color 0.3s ease;
}

.case-study-link:hover {
    color: var(--color-black);
}

/* Industry Insights Section */
.industry-insights {
    padding: 80px 0;
    background: #fff;
}

.insights-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
}

/* Responsive Design */
@media (max-width: 768px) {
    .hero-content h1 {
        font-size: var(--font-size-6xl);
    }
    
    .hero-content p {
        font-size: var(--font-size-lg);
    }
    
    .hero-meta {
        flex-direction: column;
        gap: 15px;
    }
    
    .key-services {
        grid-template-columns: 1fr;
        gap: 30px;
    }
    
    .case-studies-grid {
        grid-template-columns: 1fr;
        gap: 30px;
    }
    
    .case-study-card {
        padding: 30px 25px;
    }
    
}

.language-switcher {
    display: flex;
    gap: var(--spacing-12);
}

.language-switcher a {
    color: var(--color-white);
    text-decoration: none;
    opacity: 0.6;
    font-weight: var(--font-weight-medium);
    transition: 0.3s ease;
}

.language-switcher a.active-lang {
    opacity: 1;
    color: var(--color-white);
    font-weight: var(--font-weight-medium);
}

.menu-toggle {
    display: none;
    background: none;
    border: none;
    color: var(--color-white);
    font-size: var(--font-size-4xl);
    cursor: pointer;
}

/* ====================================================
   HERO
=================================================== */
.hero {
    padding: var(--spacing-60) var(--spacing-40) var(--spacing-80);
    text-align: center;
    background: var(--color-gray-111);
    color: var(--color-white);
}

.hero h1 {
    font-size: var(--font-size-8xl);
    margin-bottom: var(--spacing-20);
    font-family: var(--font-family-georgia);
    font-weight: var(--font-weight-bold);
    line-height: var(--line-height-tight);
    letter-spacing: var(--letter-spacing-tight);
}

.hero p {
    font-size: var(--font-size-2xl);
    max-width: 700px;
    margin: 0 auto var(--spacing-40);
    line-height: var(--line-height-base);
    opacity: 0.9;
}

/* ====================================================
   LEAD FORM
=================================================== */
.lead-section {
    padding: var(--spacing-80) var(--spacing-40);
    background: var(--color-gray-f5);
    text-align: center;
}

.lead-form {
    max-width: var(--content-max-width);
    margin: var(--spacing-40) auto 0 auto;
    display: flex;
    flex-direction: column;
    gap: var(--spacing-20);
}

.lead-form input,
.lead-form textarea {
    padding: var(--spacing-15);
    border: 1px solid var(--color-gray-f5);
    font-size: var(--font-size-sm);
    width: 100%;
}

.lead-form button {
    background: var(--color-black);
    color: var(--color-white);
    padding: var(--spacing-15);
    border: none;
    cursor: pointer;
    transition: 0.3s ease;
}

.lead-form button:hover {
    background: var(--color-gold);
}

.lead-success {
    background: linear-gradient(135deg, #28a745, #20c997);
    color: var(--color-white);
    padding: var(--spacing-15) var(--spacing-25);
    border-radius: var(--radius-8);
    margin-top: var(--spacing-20);
    font-weight: var(--font-weight-medium);
    display: inline-block;
    animation: slideInUp 0.5s ease;
}

.lead-error {
    background: linear-gradient(135deg, #dc3545, #c82333);
    color: var(--color-white);
    padding: var(--spacing-15) var(--spacing-25);
    border-radius: var(--radius-8);
    margin-top: var(--spacing-20);
    font-weight: var(--font-weight-medium);
    display: inline-block;
    animation: slideInUp 0.5s ease;
}

/* ====================================================
   HOMEPAGE HERO - APPLE MEETS CHANEL
=================================================== */
.hero {
    background: #ffffff !important;
    color: #1a1a1a !important;
    text-align: center !important;
    padding: 140px 40px 120px !important;
    position: relative !important;
    overflow: hidden !important;
    min-height: 60vh !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
}

.hero::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    background: linear-gradient(45deg, rgba(0, 0, 0, 0.01) 0%, rgba(0, 0, 0, 0.02) 100%) !important;
    pointer-events: none !important;
}

.hero h1 {
    font-size: 3.8rem !important;
    font-weight: var(--font-weight-light) !important;
    margin-bottom: 30px !important;
    color: #1a1a1a !important;
    line-height: 1.1 !important;
    letter-spacing: -1px !important;
    max-width: 800px !important;
    position: relative !important;
    z-index: 2 !important;
}

.hero h1::after {
    display: none !important;
}

.hero p {
    font-size: 1.1rem !important;
    max-width: 600px !important;
    margin: 0 auto 60px !important;
    color: #666666 !important;
    line-height: 1.6 !important;
    font-weight: 300 !important;
    position: relative !important;
    z-index: 2 !important;
}

/* ====================================================
   LEAD FORM SECTION - APPLE MEETS CHANEL
=================================================== */
.lead-section {
    background: #fafafa !important;
    padding: 120px 40px !important;
    text-align: center !important;
    border-top: 1px solid #e5e5e5 !important;
    border-bottom: 1px solid #e5e5e5 !important;
}

.lead-section h2 {
    font-size: 2.8rem !important;
    font-weight: var(--font-weight-light) !important;
    margin-bottom: 60px !important;
    color: #1a1a1a !important;
    letter-spacing: -1px !important;
    line-height: 1.1 !important;
}

.lead-form {
    max-width: 500px !important;
    margin: 0 auto !important;
    background: #fff !important;
    padding: 40px !important;
    border-radius: 12px !important;
    box-shadow: 0 20px 40px rgba(0, 0, 0, 0.1) !important;
    border: 1px solid rgba(191, 161, 75, 0.1) !important;
    display: block !important;
}

.lead-form input,
.lead-form textarea {
    width: 100%;
    padding: 15px 20px;
    margin-bottom: 20px;
    border: 2px solid #e9ecef;
    border-radius: 8px;
    font-size: 16px;
    transition: all 0.3s ease;
    background: #fff;
    box-sizing: border-box;
}

.lead-form input:focus,
.lead-form textarea:focus {
    outline: none;
    border-color: #bfa14b;
    box-shadow: 0 0 0 3px rgba(191, 161, 75, 0.1);
    transform: translateY(-2px);
}

.lead-form input::placeholder,
.lead-form textarea::placeholder {
    color: #6c757d;
    font-style: italic;
}

.lead-form textarea {
    resize: vertical;
    min-height: 120px;
    font-family: inherit;
}

.lead-form button {
    width: 100%;
    padding: 18px 40px;
    background: linear-gradient(135deg, #bfa14b 0%, #d4af37 100%);
    color: #fff;
    border: none;
    border-radius: 8px;
    font-size: 18px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
    text-transform: uppercase;
    letter-spacing: 1px;
    position: relative;
    overflow: hidden;
}

.lead-form button::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
    transition: left 0.5s ease;
}

.lead-form button:hover::before {
    left: 100%;
}

.lead-form button:hover {
    transform: translateY(-2px);
    box-shadow: 0 10px 25px rgba(191, 161, 75, 0.3);
}

.lead-form button:active {
    transform: translateY(0);
}

/* Hide honeypot field for spam protection */
.lead-form input[name="website_url"] {
    display: none !important;
    visibility: hidden !important;
    position: absolute !important;
    left: -9999px !important;
    top: -9999px !important;
}

/* ==========================================================
   TAXONOMY ARCHIVE STYLES
========================================================== */

.taxonomy-archive {
    padding: 0;
}

.taxonomy-hero {
    background: linear-gradient(135deg, #667eea 0%, #764ba2 100%);
    color: white;
    padding: 120px 0 80px;
    text-align: center;
    position: relative;
    overflow: hidden;
}

.taxonomy-hero::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.1);
    z-index: 1;
}

.taxonomy-hero .container {
    position: relative;
    z-index: 2;
}

.taxonomy-hero h1 {
    font-size: 3.5rem;
    font-weight: 700;
    margin-bottom: 20px;
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.3);
}

.taxonomy-description {
    font-size: 1.3rem;
    max-width: 800px;
    margin: 0 auto;
    line-height: 1.6;
    opacity: 0.95;
}

.taxonomy-content {
    padding: 80px 0;
    background: #f8f9fa;
}

.taxonomy-grid {
    display: grid;
    gap: 40px;
    margin-bottom: 60px;
}

.taxonomy-item {
    background: linear-gradient(135deg, #ffffff 0%, #fafbfc 100%) !important;
    border: 1px solid rgba(0, 0, 0, 0.05) !important;
    border-radius: 2px !important;
    overflow: hidden;
    display: grid;
    grid-template-columns: 280px 1fr;
    min-height: 180px !important;
    position: relative;
    box-shadow: 
        0 4px 20px rgba(0, 0, 0, 0.04),
        0 1px 3px rgba(0, 0, 0, 0.02) !important;
    transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1) !important;
}

/* Luxury accent bar */
.taxonomy-item::before {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    height: 3px !important;
    background: linear-gradient(90deg, #bfa14b 0%, #d4af37 100%) !important;
    opacity: 0 !important;
    transition: opacity 0.3s ease !important;
}

.taxonomy-item:hover::before {
    opacity: 1 !important;
}

.taxonomy-item-image {
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    position: relative;
}

.taxonomy-item-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
    filter: brightness(1.05);
}

.taxonomy-item:hover .taxonomy-item-image img {
    transform: scale(1.08);
    filter: brightness(1.1);
}

.taxonomy-item-content {
    padding: 25px 30px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    position: relative;
}

.taxonomy-item h2 {
    font-size: 1.4rem !important;
    font-weight: 500 !important;
    margin-bottom: 12px !important;
    line-height: 1.3 !important;
    letter-spacing: -0.2px !important;
    color: red !important;
    background: yellow !important;
}

.taxonomy-item h2 a {
    color: #1a1a1a !important;
    text-decoration: none;
    transition: color 0.4s cubic-bezier(0.165, 0.84, 0.44, 1) !important;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
}

.taxonomy-item h2 a:hover {
    color: #bfa14b !important;
}

.taxonomy-item-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-bottom: 12px;
    font-size: 0.8rem;
    font-weight: 500;
    letter-spacing: 0.3px;
}

.post-type {
    background: #667eea;
    color: white;
    padding: 5px 12px;
    border-radius: 20px;
    font-weight: 500;
}

.capabilities, .industries, .markets {
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
    color: #495057;
    padding: 4px 10px;
    border-radius: 12px;
    text-decoration: none;
    font-weight: 500;
    font-size: 0.75rem;
    letter-spacing: 0.3px;
    text-transform: uppercase;
    transition: all 0.3s ease;
    border: 1px solid rgba(0, 0, 0, 0.03);
}

.capabilities:hover, .industries:hover, .markets:hover {
    background: linear-gradient(135deg, #bfa14b 0%, #d4af37 100%);
    color: white;
    transform: translateY(-1px);
    box-shadow: 0 2px 8px rgba(191, 161, 75, 0.15);
}

.taxonomy-item-excerpt {
    color: #6c757d;
    line-height: 1.6;
    margin-bottom: 15px;
    flex-grow: 1;
    font-size: 0.9rem;
    font-weight: 400;
}

.read-more {
    color: #1a1a1a;
    text-decoration: none;
    font-weight: 500;
    font-size: 0.85rem;
    transition: all 0.3s ease;
    align-self: flex-start;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 8px 16px;
    border: 1px solid rgba(0, 0, 0, 0.08);
    border-radius: 20px;
    background: transparent;
    text-transform: uppercase;
    letter-spacing: 0.8px;
}

.read-more:hover {
    color: #bfa14b;
    border-color: #bfa14b;
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(191, 161, 75, 0.15);
}

.taxonomy-pagination {
    text-align: center;
    margin-top: 60px;
}

.taxonomy-pagination .nav-links {
    display: flex;
    justify-content: center;
    gap: 10px;
}

.taxonomy-pagination .page-numbers {
    padding: 12px 18px;
    background: white;
    color: #667eea;
    text-decoration: none;
    border-radius: 8px;
    border: 2px solid #667eea;
    transition: all 0.3s ease;
    font-weight: 500;
}

.taxonomy-pagination .page-numbers:hover,
.taxonomy-pagination .page-numbers.current {
    background: #667eea;
    color: white;
}

.no-content {
    text-align: center;
    padding: 80px 0;
    color: #6c757d;
}

.no-content h2 {
    font-size: 2rem;
    margin-bottom: 20px;
    color: #495057;
}

.related-terms {
    padding: 80px 0;
    background: white;
}

.related-terms h2 {
    text-align: center;
    font-size: 2.5rem;
    font-weight: 600;
    margin-bottom: 50px;
    color: #2c3e50;
}

.terms-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 30px;
}

.term-card {
    background: #f8f9fa;
    padding: 30px;
    border-radius: 12px;
    text-align: center;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    border: 2px solid transparent;
}

.term-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.1);
    border-color: #667eea;
}

.term-card h3 {
    font-size: 1.4rem;
    font-weight: 600;
    margin-bottom: 15px;
}

.term-card h3 a {
    color: #2c3e50;
    text-decoration: none;
    transition: color 0.3s ease;
}

.term-card h3 a:hover {
    color: #667eea;
}

.term-card p {
    color: #6c757d;
    line-height: 1.6;
}

/* Responsive Styles */
@media (max-width: 768px) {
    .taxonomy-hero h1 {
        font-size: 2.5rem;
    }
    
    .taxonomy-description {
        font-size: 1.1rem;
    }
    
    .taxonomy-item {
        grid-template-columns: 1fr;
        gap: 0;
    }
    
    .taxonomy-item-image {
        height: 200px;
    }
    
    .taxonomy-item-content {
        padding: 30px;
    }
    
    .taxonomy-item h2 {
        font-size: 1.5rem;
    }
    
    .taxonomy-item-meta {
        flex-direction: column;
        gap: 10px;
    }
    
    .related-terms h2 {
        font-size: 2rem;
    }
    
    .terms-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 480px) {
    .taxonomy-hero {
        padding: 80px 0 60px;
    }
    
    .taxonomy-hero h1 {
        font-size: 2rem;
    }
    
    .taxonomy-content {
        padding: 60px 0;
    }
    
    .taxonomy-item-content {
        padding: 25px;
    }
    
    .related-terms {
        padding: 60px 0;
    }
    
    .term-card {
        padding: 25px;
    }
}

/* Success/Error Messages */
.lead-success {
    background: linear-gradient(135deg, #28a745, #20c997);
    color: #fff;
    padding: 15px 25px;
    border-radius: 8px;
    margin-top: 20px;
    font-weight: 500;
    display: inline-block;
    animation: slideInUp 0.5s ease;
}

/* ==========================================================
   PR SHOWCASE STYLES - APPLE MEETS CHANEL
========================================================== */

.pr-showcase {
    padding: 0;
    background: #ffffff;
}

/* Insight Hero Section - Apple/Chanel Design */
.insight-hero {
    padding: 140px 0 80px 0;
    background: #ffffff;
    text-align: center;
}

.insight-hero-content {
    max-width: 800px;
    margin: 0 auto;
    padding: 0 20px;
}

.insight-hero h1 {
    font-size: 3.2rem;
    font-weight: 200;
    color: #000;
    margin-bottom: 16px;
    font-family: 'Helvetica Neue', sans-serif;
    letter-spacing: -1px;
    line-height: 1.2;
}

.insight-meta {
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    color: #666;
    margin-bottom: 20px;
    font-family: 'Helvetica Neue', sans-serif;
    font-weight: 400;
    gap: 8px;
    flex-wrap: wrap;
}

.meta-separator {
    color: #999;
}

.insight-categories {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    justify-content: center;
    margin-bottom: 24px;
}

.insight-category {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 12px 20px;
    background: #ffffff;
    border: 1px solid #f0f0f0;
    border-radius: 2px;
    color: #000;
    font-size: 13px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    font-family: 'Helvetica Neue', sans-serif;
    cursor: pointer;
    text-decoration: none;
    transition: all 0.3s ease;
    margin-right: 8px;
    margin-bottom: 8px;
}

.insight-category:hover {
    background: #000;
    color: #fff;
    border-color: #000;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.insight-excerpt {
    margin-bottom: 32px;
}

.insight-excerpt p {
    font-size: 1.2rem;
    color: #666;
    margin-bottom: 0;
    font-family: 'Helvetica Neue', sans-serif;
    line-height: 1.6;
    font-weight: 300;
}

.insight-actions {
    display: flex;
    justify-content: center;
    gap: 16px;
    flex-wrap: wrap;
    margin-bottom: 24px;
}

.action-btn {
    display: inline-block;
    padding: 6px 14px;
    background: #f8f8f8;
    color: #666;
    font-size: 11px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border-radius: 2px;
    font-family: 'Helvetica Neue', sans-serif;
    border: 1px solid #f0f0f0;
    cursor: pointer;
    transition: all 0.3s ease;
    text-decoration: none;
}

.action-btn:hover {
    background: #000 !important;
    color: #fff !important;
    border-color: #000 !important;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

.btn-icon {
    font-size: 14px;
}

/* Insights Takeaways Section */
.insights-takeaways {
    padding: 80px 0;
    background: #fafafa;
}

.insights-takeaways .section-header h2 {
    font-size: var(--font-size-6xl);
    font-weight: var(--font-weight-light);
    margin-bottom: var(--spacing-15);
    color: var(--color-gray-111);
}

.insights-takeaways .section-header h2 {
    font-family: 'Helvetica Neue', sans-serif;
    font-size: 2.5rem;
    font-weight: var(--font-weight-light);
}

.pr-solutions .section-header h2 {
    font-size: 2.4rem;
    font-weight: var(--font-weight-light);
    margin-bottom: 20px;
}

.project-context-actions .section-header h2 {
    font-family: 'Helvetica Neue', sans-serif;
    font-size: 2.5rem;
    font-weight: var(--font-weight-light);
}

.home-results .section-header h2 {
    font-size: 2.4rem;
    font-weight: var(--font-weight-light);
    margin-bottom: 20px;
    color: var(--color-gray-111);
}

.takeaways-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
    gap: 40px;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

.takeaway-block {
    background: #ffffff;
    border: 1px solid #f0f0f0;
    border-radius: 12px;
    padding: 40px;
    transition: all 0.3s ease;
}

.takeaway-block:hover {
    transform: translateY(-4px);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);
    border-color: #e0e0e0;
}

.takeaway-header {
    margin-bottom: 24px;
}

.takeaway-header h3 {
    font-family: 'Helvetica Neue', sans-serif;
    font-size: 1.5rem;
    font-weight: 300;
    color: #000;
    margin-bottom: 0;
    letter-spacing: -0.3px;
}

.takeaway-content {
    font-family: 'Helvetica Neue', sans-serif;
    font-size: 1.1rem;
    line-height: 1.7;
    color: #333;
    font-weight: 300;
}

.takeaway-content p {
    margin-bottom: 1.5em;
}

.takeaway-content p:last-child {
    margin-bottom: 0;
}

/* PR Hero Section - Ultra Minimalist */
.pr-hero {
    background: #ffffff;
    color: #1a1a1a;
    padding: 140px 0 120px;
    text-align: center;
    position: relative;
    overflow: hidden;
}

.pr-hero::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(45deg, rgba(0, 0, 0, 0.01) 0%, rgba(0, 0, 0, 0.02) 100%);
}

.pr-hero-content {
    position: relative;
    z-index: 2;
    max-width: 800px;
    margin: 0 auto;
}

.pr-hero-badge {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    position: relative;
    background: #1a1a1a;
    padding: 8px 24px;
    border-radius: 2px;
    margin-bottom: 60px;
    letter-spacing: 2px;
}

.badge-pin {
    width: 8px;
    height: 8px;
    background: #ffd700;
    border-radius: 50%;
    flex-shrink: 0;
    box-shadow: 0 2px 4px rgba(0,0,0,0.3);
}

/* Hero Badge Styling */
.hero-badge {
    display: inline-flex !important;
    align-items: center !important;
    gap: 10px !important;
    padding: 8px 16px !important;
    background: #f8f8f8 !important;
    border-radius: 0px !important;
    font-size: 0.85rem !important;
    font-weight: 500 !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    color: #333 !important;
    margin-bottom: 20px !important;
}

.badge-pin {
    width: 8px !important;
    height: 8px !important;
    background: #ffd700 !important;
    border-radius: 50% !important;
}

/* Black pins for capability showcase pages */
body.template-capability-showcase .badge-pin {
    background: #000000;
}

/* Black pins for Industry and Market pages */
body.tax-industry .badge-pin,
body.tax-market .badge-pin {
    background: #000000;
}

/* Black pins for Insights Archive page */
body.archive-insight .badge-pin,
.archive-insight .badge-pin {
    background: #000000 !important;
}

/* Black pins for PR Square page - MAXIMUM SPECIFICITY */
body.single-solution .badge-pin,
.single-solution .badge-pin,
body.single-solution .hero-badge .badge-pin,
.hero-badge .badge-pin {
    background: #000000 !important;
}

/* Hero features for capability showcase pages */
body.template-capability-showcase .hero-features {
    display: flex;
    justify-content: center;
    gap: 30px;
    flex-wrap: wrap;
    margin-top: 40px;
}

body.template-capability-showcase .hero-tag {
    background: #ffffff;
    color: #1a1a1a;
    padding: 12px 20px;
    border: 1px solid #e0e0e0;
    border-radius: 0;
    font-size: 0.9rem;
    font-weight: 500;
    text-align: center;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    transition: all 0.3s ease;
}

body.template-capability-showcase .hero-tag:hover {
    border-color: #d4af37;
    box-shadow: 0 4px 12px rgba(212, 175, 55, 0.2);
    transform: translateY(-2px);
}

/* Hero tags for Industry and Market pages */
body.tax-industry .hero-tag,
body.tax-market .hero-tag {
    background: #ffffff;
    color: #1a1a1a;
    padding: 12px 20px;
    border: 1px solid #f5f5f5;
    border-radius: 2px;
    font-size: 0.9rem;
    font-weight: 500;
    text-align: center;
    transition: all 0.3s ease;
    display: inline-block;
    margin: 5px;
}

body.tax-industry .hero-tag:hover,
body.tax-market .hero-tag:hover {
    border-color: #d4af37;
    box-shadow: 0 4px 12px rgba(212, 175, 55, 0.2);
    transform: translateY(-2px);
}

/* ====================================================
   Insights Section
   ==================================================== */

.insights-section {
    padding: 80px 0;
    background: #ffffff;
}

.insights-section .section-header {
    text-align: center;
    margin-bottom: 60px;
}

.insights-section .section-header h2 {
    font-size: 2.5rem;
    font-weight: 300;
    color: #1a1a1a;
    margin-bottom: 20px;
    letter-spacing: -1px;
}

.insights-section .section-header p {
    font-size: 1.1rem;
    color: #666666;
    max-width: 600px;
    margin: 0 auto;
    line-height: 1.6;
}

.insights-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
    gap: 30px;
    margin-bottom: 50px;
}

.insight-card {
    background: #ffffff;
    border: 1px solid #f5f5f5;
    border-radius: 8px;
    padding: 30px;
    text-decoration: none;
    color: inherit;
    transition: all 0.3s ease;
    display: block;
    position: relative;
    overflow: hidden;
}

.insight-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 4px;
    background: linear-gradient(90deg, #d4af37, #f4e4bc);
    transform: translateX(-100%);
    transition: transform 0.3s ease;
}

.insight-card:hover {
    border-color: #d4af37;
    box-shadow: 0 8px 24px rgba(212, 175, 55, 0.15);
    transform: translateY(-4px);
}

.insight-card:hover::before {
    transform: translateX(0);
}

.insight-content {
    position: relative;
    z-index: 2;
}

.insight-meta {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 20px;
    font-size: 0.85rem;
    color: #999999;
}

.insight-date {
    font-weight: 500;
}

.reading-time {
    background: #f8f9fa;
    padding: 4px 8px;
    border-radius: 12px;
    font-size: 0.75rem;
}

.insight-card:hover .insight-title {
    color: #d4af37;
}

.insight-card .insight-title {
    font-size: 1.3rem;
    font-weight: 400;
    color: #1a1a1a;
    margin-bottom: 15px;
    line-height: 1.3;
    transition: color 0.3s ease;
    text-decoration: none;
}

.insight-card .insight-excerpt {
    margin-bottom: 20px;
    color: #666666;
    line-height: 1.6;
    font-size: 0.95rem;
    text-decoration: none;
}

.insight-author {
    font-size: 0.9rem;
    color: #999999;
    font-style: italic;
    display: none;
}

.insights-cta {
    text-align: center;
    margin-bottom: 80px !important;
}

.cta-button {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 15px 30px;
    background: #1a1a1a;
    color: white;
    text-decoration: none;
    border-radius: 0;
    font-weight: 500;
    transition: all 0.3s ease;
    border: 2px solid #1a1a1a;
}

.cta-button:hover {
    background: transparent;
    color: #1a1a1a;
    border-color: #d4af37;
}

.cta-button span {
    transition: transform 0.3s ease;
}

.cta-button:hover span {
    transform: translateX(4px);
    color: #d4af37;
}

/* Responsive Design */
@media (max-width: 768px) {
    .insights-section {
        padding: 60px 0;
    }
    
    .insights-section .section-header h2 {
        font-size: 2rem;
    }
    
    .insights-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }
    
    .insight-card {
        padding: 25px;
    }
    
    .insight-title {
        font-size: 1.2rem;
    }
}

/* Enhanced PR Solutions Section */
body.template-capability-showcase .solutions {
    padding: 80px 0;
    background: #f8f9fa;
}

body.template-capability-showcase .solutions-header {
    text-align: center;
    margin-bottom: 60px;
}

body.template-capability-showcase .solutions-header h2 {
    font-size: 2.8rem;
    font-weight: 20;
    color: #1a1a1a;
    letter-spacing: -1px;
    margin-bottom: 20px;
}

body.template-capability-showcase .solutions-header p {
    font-size: 1.2rem;
    color: #666;
    max-width: 600px;
    margin: 0 auto;
    line-height: 1.6;
}

body.template-capability-showcase .solutions-grid {
    display: flex;
    justify-content: center;
    max-width: 800px;
    margin: 0 auto;
}

body.template-capability-showcase .solution-card {
    background: white;
    border: 1px solid #e0e0e0;
    border-radius: 12px;
    padding: 40px;
    text-align: center;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    transition: all 0.3s ease;
    width: 100%;
}

body.template-capability-showcase .solution-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
    border-color: #d4af37;
}

body.template-capability-showcase .solution-card-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

body.template-capability-showcase .solution-card h3 {
    font-size: 2.2rem;
    font-weight: 20;
    color: #1a1a1a;
    margin-bottom: 20px;
    text-align: center;
}

body.template-capability-showcase .solution-card p {
    font-size: 1.1rem;
    line-height: 1.5;
    color: #666;
    margin-bottom: 30px;
    text-align: center;
    max-width: 500px;
}

body.template-capability-showcase .solution-features {
    display: flex;
    flex-direction: column;
    gap: 15px;
    margin-bottom: 30px;
    width: 100%;
    max-width: 550px;
}

body.template-capability-showcase .solution-features-row {
    display: flex;
    justify-content: center;
    gap: 15px;
    width: 100%;
}

body.template-capability-showcase .solution-features-row:first-child {
    justify-content: center;
}

body.template-capability-showcase .solution-features-row:last-child {
    justify-content: center;
}

body.template-capability-showcase .solution-feature {
    background: #ffffff;
    color: #1a1a1a;
    padding: 6px 20px;
    border: 1px solid #e0e0e0;
    border-radius: 0;
    font-size: 0.9rem;
    font-weight: 500;
    text-align: center;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08);
    transition: all 0.3s ease;
    line-height: 1;
}

body.template-capability-showcase .solution-feature:hover {
    border-color: #d4af37;
    box-shadow: 0 4px 12px rgba(212, 175, 55, 0.2);
    transform: translateY(-2px);
}

body.template-capability-showcase .solution-feature strong {
    color: #1a1a1a;
    font-weight: 500;
    font-size: 0.9rem;
    display: block;
    margin: 0;
    padding: 0;
}

body.template-capability-showcase .solution-actions {
    margin-top: 20px;
}

body.template-capability-showcase .solution-actions .solution-link {
    color: var(--color-gray-666) !important;
    text-decoration: none !important;
    font-weight: var(--font-weight-medium) !important;
    transition: transform 0.4s ease, color 0.3s ease !important;
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    display: inline-block !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    font-size: inherit !important;
    width: auto !important;
    height: auto !important;
    line-height: inherit !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}

body.template-capability-showcase .solution-link:hover {
    color: var(--color-gold) !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    transform: translateX(8px) !important;
    color: var(--color-gold) !important;
    border-color: transparent !important;
}

/* Override conflicting solution-link styles with maximum specificity */
body.template-capability-showcase .solution-actions .solution-link:hover {
    color: var(--color-gold) !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    transform: translateX(8px) !important;
    border-color: transparent !important;
    display: inline-block !important;
}

body.template-capability-showcase .solution-link span {
    transition: transform 0.4s ease !important;
    margin-left: 4px !important;
    display: inline-block !important;
}

body.template-capability-showcase .solution-link:hover span {
    transform: translateX(4px) !important;
}

/* Industry Pages - Solutions Section Styling (match capability pages) */
body.tax-industry .solutions,
body.taxonomy-industry .solutions {
    padding: 80px 0;
    background: #f8f9fa;
}

body.tax-industry .solutions-header,
body.taxonomy-industry .solutions-header {
    text-align: center;
    margin-bottom: 60px;
}

body.tax-industry .solutions-header h2,
body.taxonomy-industry .solutions-header h2 {
    font-size: 2.8rem;
    font-weight: 20;
    color: #1a1a1a;
    margin-bottom: 20px;
    letter-spacing: -1px;
}

body.tax-industry .solutions-header p,
body.taxonomy-industry .solutions-header p {
    font-size: 1.2rem;
    color: #666;
    max-width: 600px;
    margin: 0 auto;
    line-height: 1.6;
}

body.tax-industry .solutions-grid,
body.taxonomy-industry .solutions-grid {
    display: flex;
    justify-content: center;
    max-width: 800px;
    margin: 0 auto;
}

body.tax-industry .solution-card,
body.taxonomy-industry .solution-card {
    background: white;
    border: 1px solid #e0e0e0;
    border-radius: 12px;
    padding: 40px;
    text-align: center;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    transition: all 0.3s ease;
    width: 100%;
}

body.tax-industry .solution-card:hover,
body.taxonomy-industry .solution-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
}

body.tax-industry .solution-card-content h3,
body.taxonomy-industry .solution-card-content h3 {
    font-size: 1.8rem;
    font-weight: 600;
    color: #1a1a1a;
    margin-bottom: 20px;
}

body.tax-industry .solution-card-content p,
body.taxonomy-industry .solution-card-content p {
    font-size: 1.1rem;
    color: #666;
    margin-bottom: 30px;
    line-height: 1.6;
}

body.tax-industry .solution-features,
body.taxonomy-industry .solution-features {
    margin-bottom: 30px;
}

body.tax-industry .solution-features-row,
body.taxonomy-industry .solution-features-row {
    display: flex;
    justify-content: space-between;
    margin-bottom: 15px;
    gap: 20px;
}

body.tax-industry .solution-feature,
body.taxonomy-industry .solution-feature {
    flex: 1;
    text-align: center;
}

body.tax-industry .solution-feature strong,
body.taxonomy-industry .solution-feature strong {
    font-size: 0.9rem;
    font-weight: 500;
    color: #333;
    line-height: 1.4;
}

body.tax-industry .solution-actions,
body.taxonomy-industry .solution-actions {
    text-align: center;
}

body.tax-industry .solution-link,
body.taxonomy-industry .solution-link {
    color: var(--color-gray-666) !important;
    text-decoration: none !important;
    font-weight: var(--font-weight-medium) !important;
    transition: transform 0.4s ease, color 0.3s ease !important;
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    display: inline-block !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    font-size: inherit !important;
    width: auto !important;
    height: auto !important;
    line-height: inherit !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}

body.tax-industry .solution-link:hover,
body.taxonomy-industry .solution-link:hover {
    color: var(--color-gold) !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    transform: translateX(8px) !important;
}

body.tax-industry .solution-link span,
body.taxonomy-industry .solution-link span {
    transition: transform 0.4s ease !important;
    margin-left: 4px !important;
    display: inline-block !important;
}

body.tax-industry .solution-link:hover span,
body.taxonomy-industry .solution-link:hover span {
    transform: translateX(4px) !important;
}

/* Fallback - General solutions styling for any page */
.solutions {
    padding: 80px 0;
    background: #f8f9fa;
}

.solutions-header {
    text-align: center;
    margin-bottom: 60px;
}

.solutions-header h2 {
    font-size: 2.8rem;
    font-weight: 20;
    color: #1a1a1a;
    margin-bottom: 20px;
    letter-spacing: -1px;
}

.solutions-header p {
    font-size: 1.2rem;
    color: #666;
    max-width: 600px;
    margin: 0 auto;
    line-height: 1.6;
}

.solutions-grid {
    display: flex;
    justify-content: center;
    max-width: 800px;
    margin: 0 auto;
}

.solution-card {
    background: white;
    border: 1px solid #e0e0e0;
    border-radius: 12px;
    padding: 40px;
    text-align: center;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    transition: all 0.3s ease;
    width: 100%;
}

.solution-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.12);
}

.solution-card-content h3 {
    font-size: 1.8rem;
    font-weight: 600;
    color: #1a1a1a;
    margin-bottom: 20px;
}

.solution-card-content p {
    font-size: 1.1rem;
    color: #666;
    margin-bottom: 30px;
    line-height: 1.6;
}

.solution-features {
    margin-bottom: 30px;
}

.solution-features-row {
    display: flex;
    justify-content: space-between;
    margin-bottom: 15px;
    gap: 20px;
}

.solution-feature {
    background: #ffffff;
    color: #1a1a1a;
    padding: 8px 16px;
    border: 1px solid #e0e0e0;
    border-radius: 0px;
    text-align: center;
    transition: all 0.3s ease;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap;
}

.solution-feature:hover {
    border-color: #d4af37;
    box-shadow: 0 4px 12px rgba(212, 175, 55, 0.2);
    transform: translateY(-2px);
}

.solution-feature strong {
    color: #1a1a1a;
    font-weight: 500;
    font-size: 0.9rem;
    line-height: 1.4;
}

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

.solution-link {
    color: var(--color-gray-666) !important;
    text-decoration: none !important;
    font-weight: var(--font-weight-medium) !important;
    transition: transform 0.4s ease, color 0.3s ease !important;
    background: transparent !important;
    border: none !important;
    padding: 0 !important;
    display: inline-block !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    font-size: inherit !important;
    width: auto !important;
    height: auto !important;
    line-height: inherit !important;
    text-transform: uppercase !important;
    letter-spacing: 0.5px !important;
}

.solution-link:hover {
    color: var(--color-gold) !important;
    background: transparent !important;
    border: none !important;
    box-shadow: none !important;
    transform: translateX(8px) !important;
}

.solution-link span {
    transition: transform 0.4s ease !important;
    margin-left: 4px !important;
    display: inline-block !important;
}

.solution-link:hover span {
    transform: translateX(4px) !important;
}

.badge-text {
    font-size: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: #333;
}

.pr-hero-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 40px;
    padding: 4px 12px;
    background: #f5f5f5;
    border-radius: 0px;
    border: 1px solid #ddd;
}

.pr-hero-subtitle {
    margin-top: 10px;
}

/* Solutions Section - Home Page Style */
.pr-solutions {
    padding: 60px 0;
}

.solutions-header {
    text-align: center;
    margin-bottom: 20px;
}

.solutions-header h2 {
    font-size: 2.8rem;
    font-weight: var(--font-weight-light);
    color: var(--color-gray-111);
    margin-bottom: 10px;
    letter-spacing: -1px;
}

.solutions-header p {
    font-size: 1.2rem;
    color: var(--color-gray-666);
    max-width: 600px;
    margin: 0 auto;
}

.solutions-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(500px, 1fr));
    gap: 20px;
}

/* Archive pages - force wider cards */
.archive .solutions-grid,
body.archive .solutions-grid,
.archive-type .solutions-grid {
    grid-template-columns: repeat(3, 1fr) !important;
}

/* Template Archive Showcase - force wider cards */
body.template-archive-showcase .solutions-grid {
    grid-template-columns: repeat(3, 1fr) !important;
}

/* Project Hero Section - Add spacing between excerpt and categories */
.single-project .insight-excerpt {
    margin-bottom: 40px !important;
}

.single-project .insight-categories {
    margin-top: 20px !important;
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
    align-items: center !important;
}

.single-project .insight-category {
    display: inline-flex !important;
    margin: 0 !important;
}

/* Project Overview Section - Elegant Design */
.single-project .project-overview-section {
    margin-bottom: 60px;
}

.single-project .quick-info {
    background: #f8f9fa;
    border: 1px solid #e0e0e0;
    border-radius: 12px;
    padding: 30px;
    margin-bottom: 40px;
}

.single-project .info-item {
    margin-bottom: 15px;
}

.single-project .info-item:last-child {
    margin-bottom: 0;
}

.single-project .info-item strong {
    color: #1a1a1a;
    font-weight: 600;
    margin-right: 15px;
    font-size: 1.1rem;
}

.single-project .info-tag {
    display: inline-block;
    background: #ffffff;
    border: 1px solid #d4af37;
    color: #d4af37;
    padding: 8px 16px;
    border-radius: 25px;
    font-size: 0.95rem;
    margin-right: 10px;
    margin-bottom: 8px;
    transition: all 0.3s ease;
    font-weight: 500;
}

.single-project .content-boxes {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
    margin-top: 40px;
}

.single-project .content-box {
    background: #ffffff;
    border: 1px solid #e0e0e0;
    border-radius: 0px;
    padding: 30px;
    text-align: center;
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
}

.single-project .content-box::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, #d4af37, #f4e4bc);
    opacity: 0;
    transition: opacity 0.3s ease;
}

.single-project .content-box:hover {
    box-shadow: 0 8px 25px rgba(212, 175, 55, 0.15);
    transform: translateY(-5px);
    border-color: #d4af37;
}

.single-project .content-box:hover::before {
    opacity: 1;
}

.single-project .content-box h3 {
    font-size: 1.5rem;
    font-weight: 600;
    color: #1a1a1a;
    margin-bottom: 20px;
    position: relative;
    display: inline-block;
}

.single-project .content-box h3::after {
    content: '';
    position: absolute;
    bottom: -8px;
    left: 50%;
    transform: translateX(-50%);
    width: 0;
    height: 2px;
    background: #d4af37;
    transition: width 0.3s ease;
}

.single-project .content-box:hover h3::after {
    width: 50px;
}

.single-project .content-box p {
    font-size: 1rem;
    line-height: 1.6;
    color: #333;
    margin: 0;
}

/* Style Related Projects cards exactly like Insights Cards using CSS variables - MAXIMUM SPECIFICITY */
body.single-project .featured-project-card,
.featured-projects .featured-project-card,
section.featured-projects .featured-project-card {
    background: var(--color-white) !important;
    border-radius: var(--radius-12) !important;
    overflow: hidden !important;
    box-shadow: var(--shadow-card) !important;
    transition: all 0.4s ease !important;
    border: none !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
}

body.single-project .featured-project-card:hover,
.featured-projects .featured-project-card:hover,
section.featured-projects .featured-project-card:hover {
    transform: translateY(-4px) !important;
    box-shadow: var(--shadow-hover) !important;
    border: none !important;
}

body.single-project .featured-project-card .insight-content,
.featured-projects .featured-project-card .insight-content,
section.featured-projects .featured-project-card .insight-content {
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
    padding: var(--spacing-40) !important;
    background: transparent !important;
}

body.single-project .featured-project-card .insight-capabilities,
.featured-projects .featured-project-card .insight-capabilities,
section.featured-projects .featured-project-card .insight-capabilities {
    margin-bottom: var(--spacing-20) !important;
}

body.single-project .featured-project-card .capability-tag,
.featured-projects .featured-project-card .capability-tag,
section.featured-projects .featured-project-card .capability-tag {
    display: inline-block !important;
    background: #ffffff !important;
    color: #000000 !important;
    padding: var(--spacing-8) var(--spacing-12) !important;
    border-radius: 0px !important;
    font-size: 0.75rem !important;
    font-weight: 500 !important;
    margin-right: var(--spacing-8) !important;
    margin-bottom: var(--spacing-8) !important;
    transition: all 0.3s ease !important;
    text-decoration: none !important;
    border-bottom: none !important;
    border: 1px solid #e0e0e0 !important;
}

body.single-project .featured-project-card .capability-tag:hover,
.featured-projects .featured-project-card .capability-tag:hover,
.section.featured-projects .featured-project-card .capability-tag:hover {
    background: #ffffff !important;
    color: #000000 !important;
    border-color: #d4af37 !important;
}

body.single-project .featured-project-card .insight-title,
.featured-projects .featured-project-card .insight-title,
section.featured-projects .featured-project-card .insight-title {
    margin-bottom: var(--spacing-15) !important;
}

body.single-project .featured-project-card .insight-title h3,
.featured-projects .featured-project-card .insight-title h3,
section.featured-projects .featured-project-card .insight-title h3 {
    font-size: 1.5rem !important;
    font-weight: 400 !important;
    color: var(--color-gray-111) !important;
    margin: 0 !important;
    line-height: var(--line-height-tight) !important;
    transition: color 0.3s ease !important;
}

body.single-project .featured-project-card .insight-title a,
.featured-projects .featured-project-card .insight-title a,
section.featured-projects .featured-project-card .insight-title a {
    text-decoration: none !important;
    color: inherit !important;
}

body.single-project .featured-project-card:hover .insight-title h3,
.featured-projects .featured-project-card:hover .insight-title h3,
section.featured-projects .featured-project-card:hover .insight-title h3 {
    color: var(--color-gold) !important;
}

body.single-project .featured-project-card .insight-excerpt,
.featured-projects .featured-project-card .insight-excerpt,
section.featured-projects .featured-project-card .insight-excerpt {
    margin-bottom: var(--spacing-20) !important;
    color: var(--color-gray-555) !important;
    line-height: var(--line-height-base) !important;
    font-size: 1rem !important;
    flex-grow: 1 !important;
}

body.single-project .featured-project-card .insight-excerpt p,
.featured-projects .featured-project-card .insight-excerpt p,
section.featured-projects .featured-project-card .insight-excerpt p {
    margin: 0 !important;
}

/* Update the insights-grid to match the exact styling */
.insights-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
    gap: var(--spacing-30);
    margin-bottom: var(--spacing-50);
}

/* Responsive design for project cards */
@media (max-width: 768px) {
    .featured-project-card .insight-content {
        padding: var(--spacing-30) var(--spacing-25);
    }
    
    .featured-project-card .insight-title h3 {
        font-size: 1.3rem;
    }
    
    .insights-grid {
        grid-template-columns: 1fr;
        gap: var(--spacing-20);
    }
}

/* Project Hero Visual - Black & White with Color Hover */
.project-hero-visual {
    margin-top: 40px;
    margin-bottom: 20px;
}

.project-visual-container {
    position: relative;
    width: 140%;
    height: 400px;
    overflow: hidden;
    border-radius: 0px;
    box-shadow: 0 8px 32px rgba(0, 0, 0, 0.1);
    margin: 0 -20%;
}

.project-visual-image {
    width: 100%;
    height: 100%;
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    filter: grayscale(100%) contrast(1.1) !important;
    transition: all 0.6s ease !important;
    position: relative;
}

.project-visual-image::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, rgba(0,0,0,0.3) 0%, rgba(0,0,0,0.1) 100%);
    opacity: 0;
    transition: opacity 0.6s ease;
}

.project-visual-image:hover {
    filter: grayscale(0%) contrast(1.05) !important;
    transform: scale(1.02) !important;
}

.project-visual-image:hover::before {
    opacity: 1;
}

.project-visual-overlay {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: opacity 0.6s ease;
    background: rgba(0, 0, 0, 0.4);
}

.project-visual-image:hover .project-visual-overlay {
    opacity: 1;
}

.project-visual-content {
    text-align: center;
    color: #ffffff;
    transform: translateY(20px);
    transition: transform 0.6s ease;
}

.project-visual-image:hover .project-visual-content {
    transform: translateY(0);
}

.project-visual-content h3 {
    font-size: 2rem;
    font-weight: 600;
    margin-bottom: 15px;
    text-shadow: 0 2px 4px rgba(0, 0, 0, 0.3);
}

.project-visual-content p {
    font-size: 1.1rem;
    margin: 0;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
}

/* Placeholder styling for projects without featured images */
.project-visual-placeholder {
    background: linear-gradient(135deg, #d4af37 0%, #f4e4bc 50%, #d4af37 100%) !important;
    position: relative;
    filter: none !important;
    display: flex;
    align-items: center;
    justify-content: center;
}

.project-visual-placeholder::before {
    content: '📷';
    font-size: 60px;
    opacity: 0.3;
    color: #000;
}

/* CSS pattern fallback for projects without images */
.project-visual-pattern {
    background: 
        repeating-linear-gradient(45deg, #d4af37, #d4af37 10px, #f4e4bc 10px, #f4e4bc 20px),
        repeating-linear-gradient(-45deg, #f4e4bc, #f4e4bc 10px, #d4af37 10px, #d4af37 20px);
    background-blend-mode: multiply;
    position: relative;
    filter: grayscale(100%) contrast(1.1);
}

.project-visual-pattern::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 100px;
    height: 100px;
    background: radial-gradient(circle, rgba(212,175,55,0.3) 0%, transparent 70%);
    border-radius: 50%;
}

/* Responsive design for project visual */
@media (max-width: 768px) {
    .project-visual-container {
        height: 300px;
    }
    
    .project-visual-content h3 {
        font-size: 1.5rem;
    }
    
    .project-visual-content p {
        font-size: 1rem;
    }
    
    .project-hero-visual {
        margin-top: 30px;
    }
}

/* Add more space between excerpt and tags on insight pages */
.single-insight .insight-excerpt {
    margin-bottom: 40px !important;
}

.single-insight .insight-categories {
    margin-top: 20px !important;
}

/* Ensure insight title stays on single line on desktop */
.single-insight .insight-hero h1 {
    white-space: nowrap !important;
    overflow: visible !important;
    text-overflow: unset !important;
    font-size: 2.2rem !important;
    line-height: 1.2 !important;
}

/* Responsive - allow wrapping on mobile */
@media (max-width: 768px) {
    .single-insight .insight-hero h1 {
        white-space: normal !important;
        overflow: visible !important;
        text-overflow: unset !important;
        font-size: 1.8rem !important;
    }
}

/* Fix category button hover - keep text black, gold border */
.single-project .insight-category:hover {
    color: #1a1a1a !important;
    background-color: #ffffff !important;
    border-color: #d4af37 !important;
}

.single-project .insight-category:hover span {
    color: #1a1a1a !important;
}

/* Style Strategic Takeaways boxes with sharp angles and gold hover */
.single-insight .takeaway-block {
    border: 1px solid transparent !important;
    border-radius: 0px !important;
    padding: 30px !important;
    background: #ffffff !important;
    transition: all 0.3s ease !important;
    margin-bottom: 0 !important;
}

.single-insight .takeaway-block:hover {
    border-color: #d4af37 !important;
    background: #ffffff !important;
    transform: translateY(-5px) !important;
    box-shadow: 0 10px 30px rgba(212, 175, 55, 0.2) !important;
}

.single-insight .takeaway-header h3 {
    font-size: 1.5rem !important;
    font-weight: 300 !important;
    color: #1a1a1a !important;
    margin-bottom: 20px !important;
    letter-spacing: 0.01em !important;
}

.single-insight .takeaway-content {
    font-size: 1.05rem !important;
    line-height: 1.7 !important;
    color: #333 !important;
    font-weight: 300 !important;
}

.single-insight .takeaway-content p {
    margin-bottom: 0 !important;
}

/* Center Insights Archive Hero Title - More Specific */
.archive-insight .hero h1 {
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
    width: 100% !important;
    max-width: 100% !important;
}

/* Also center the subtitle */
.archive-insight .hero p {
    text-align: center !important;
}

/* Insights Archive Page - Complete Styling */
.archive-insight .insights-hero {
    background: linear-gradient(135deg, #1a1a1a 0%, #2d2d2d 100%) !important;
    padding: 80px 0 !important;
    text-align: center !important;
    color: #ffffff !important;
}

.archive-insight .insights-hero h1 {
    font-size: 3rem !important;
    font-weight: 300 !important;
    margin-bottom: 20px !important;
    letter-spacing: 0.02em !important;
}

.archive-insight .insights-hero p {
    font-size: 1.2rem !important;
    font-weight: 300 !important;
    max-width: 600px !important;
    margin: 0 auto !important;
    line-height: 1.6 !important;
    color: #cccccc !important;
}

/* Filter Section */
.archive-insight .insights-filter {
    padding: 40px 0 !important;
    background: #f8f8f8 !important;
    border-bottom: 1px solid #e0e0e0 !important;
}

.archive-insight .filter-header h3 {
    font-size: 1.5rem !important;
    font-weight: 300 !important;
    text-align: center !important;
    margin-bottom: 30px !important;
    color: #1a1a1a !important;
}

.archive-insight .filter-options {
    display: flex !important;
    justify-content: center !important;
    flex-wrap: wrap !important;
    gap: 15px !important;
}

.archive-insight .filter-tag {
    padding: 12px 24px !important;
    border: 1px solid #e0e0e0 !important;
    border-radius: 0px !important;
    background: #ffffff !important;
    color: #333 !important;
    text-decoration: none !important;
    font-weight: 300 !important;
    font-size: 0.95rem !important;
    transition: all 0.3s ease !important;
}

.archive-insight .filter-tag:hover {
    border-color: #d4af37 !important;
    color: #1a1a1a !important;
    background: #ffffff !important;
}

.archive-insight .filter-tag.active {
    background: #1a1a1a !important;
    color: #ffffff !important;
    border-color: #1a1a1a !important;
}

/* Insights Grid */
.archive-insight .insights-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(350px, 1fr)) !important;
    gap: 40px !important;
    padding: 60px 0 !important;
}

/* Insight Cards */
.archive-insight .insight-card {
    background: #ffffff !important;
    border-radius: 0px !important;
    overflow: hidden !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08) !important;
    transition: all 0.3s ease !important;
    border: 1px solid transparent !important;
}

.archive-insight .insight-card:hover {
    transform: translateY(-5px) !important;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.12) !important;
    border-color: #d4af37 !important;
}

/* Insight Visual - Black & White with Color Hover */
.archive-insight .insight-visual {
    position: relative !important;
    overflow: hidden !important;
}

.archive-insight .insight-image {
    width: 100% !important;
    height: 250px !important;
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    filter: grayscale(100%) contrast(1.1) !important;
    transition: all 0.6s ease !important;
}

.archive-insight .insight-card:hover .insight-image {
    filter: grayscale(0%) contrast(1.05) !important;
    transform: scale(1.05) !important;
}

.archive-insight .insight-overlay {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    background: rgba(0, 0, 0, 0.7) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    opacity: 0 !important;
    transition: all 0.3s ease !important;
    visibility: hidden !important;
}

.archive-insight .insight-card:hover .insight-overlay {
    opacity: 0 !important;
    visibility: hidden !important;
}

/* Style the actual "Read Full Analysis →" link in the card */
.archive-insight .insight-read-more {
    color: #888888 !important;
    text-decoration: none !important;
    font-weight: 400 !important;
    font-size: 0.9rem !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    transition: all 0.3s ease !important;
    margin-top: 15px !important;
}

.archive-insight .insight-read-more:hover {
    color: #d4af37 !important;
}

/* Insight Content */
.archive-insight .insight-content {
    padding: 30px !important;
}

.archive-insight .insight-meta {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    margin-bottom: 20px !important;
    font-size: 0.85rem !important;
    color: #666 !important;
    font-weight: 300 !important;
}

.archive-insight .insight-meta-separator {
    color: #d4af37 !important;
}

.archive-insight .insight-capabilities {
    margin-bottom: 20px !important;
}

.archive-insight .insight-capability {
    display: inline-block !important;
    padding: 6px 12px !important;
    background: #f8f8f8 !important;
    color: #333 !important;
    font-size: 0.8rem !important;
    font-weight: 300 !important;
    border-radius: 15px !important;
    margin-right: 8px !important;
    margin-bottom: 8px !important;
}

.archive-insight .insight-title {
    font-size: 1.3rem !important;
    font-weight: 400 !important;
    line-height: 1.4 !important;
    margin-bottom: 15px !important;
    color: #1a1a1a !important;
}

.archive-insight .insight-title a {
    color: #1a1a1a !important;
    text-decoration: none !important;
    transition: color 0.3s ease !important;
}

.archive-insight .insight-title a:hover {
    color: #d4af37 !important;
}

.archive-insight .insight-excerpt {
    font-size: 0.95rem !important;
    line-height: 1.6 !important;
    color: #555 !important;
    font-weight: 300 !important;
}

/* Projects Archive Page - Complete Styling to Match Insights */
.archive-project .hero h1 {
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
    width: 100% !important;
    max-width: 100% !important;
}

/* Also center the subtitle */
.archive-project .hero p {
    text-align: center !important;
}

/* Black pins for Projects Archive page */
body.archive-project .badge-pin,
.archive-project .badge-pin {
    background: #000000 !important;
}

/* Filter Section */
.archive-project .projects-filter {
    padding: 40px 0 !important;
    background: #f8f8f8 !important;
    border-bottom: 1px solid #e0e0e0 !important;
}

.archive-project .filter-header h3 {
    font-size: 1.5rem !important;
    font-weight: 300 !important;
    text-align: center !important;
    margin-bottom: 30px !important;
    color: #1a1a1a !important;
}

.archive-project .filter-options {
    display: flex !important;
    justify-content: center !important;
    flex-wrap: wrap !important;
    gap: 15px !important;
}

.archive-project .filter-tag {
    padding: 12px 24px !important;
    border: 1px solid #e0e0e0 !important;
    border-radius: 0px !important;
    background: #ffffff !important;
    color: #333 !important;
    text-decoration: none !important;
    font-weight: 300 !important;
    font-size: 0.95rem !important;
    transition: all 0.3s ease !important;
}

.archive-project .filter-tag:hover {
    border-color: #d4af37 !important;
    color: #1a1a1a !important;
    background: #ffffff !important;
}

.archive-project .filter-tag.active {
    background: #1a1a1a !important;
    color: #ffffff !important;
    border-color: #1a1a1a !important;
}

/* Projects Grid */
.archive-project .projects-grid-container {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(350px, 1fr)) !important;
    gap: 40px !important;
    padding: 60px 0 !important;
}

/* Project Cards */
.archive-project .project-card {
    background: #ffffff !important;
    border-radius: 0px !important;
    overflow: hidden !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08) !important;
    transition: all 0.3s ease !important;
    border: 1px solid transparent !important;
}

.archive-project .project-card:hover {
    transform: translateY(-5px) !important;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.12) !important;
    border-color: #d4af37 !important;
}

/* Project Visual - Black & White with Color Hover */
.archive-project .project-visual {
    position: relative !important;
    overflow: hidden !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
    background: transparent !important;
}

.archive-project .project-image {
    margin: 0 !important;
    padding: 0 !important;
    line-height: 0 !important;
    font-size: 0 !important;
    border: none !important;
    background: transparent !important;
}

.archive-project .project-image img {
    width: 100% !important;
    height: 250px !important;
    object-fit: cover !important;
    filter: grayscale(100%) contrast(1.1) !important;
    transition: all 0.6s ease !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    border: none !important;
}

.archive-project .project-card:hover .project-image img {
    filter: grayscale(0%) contrast(1.05) !important;
    transform: scale(1.05) !important;
}

.archive-project .project-overlay {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    background: rgba(0, 0, 0, 0.7) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    opacity: 0 !important;
    transition: all 0.3s ease !important;
    visibility: hidden !important;
}

.archive-project .project-card:hover .project-overlay {
    opacity: 0 !important;
    visibility: hidden !important;
}

/* Project Content */
.archive-project .project-info {
    padding: 30px 30px 30px 30px !important;
    background: #ffffff !important;
    margin: 0 !important;
    border: none !important;
}

.archive-project .project-client {
    font-size: 0.85rem !important;
    font-weight: 500 !important;
    color: #666 !important;
    margin-bottom: 10px !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
}

.archive-project .project-title {
    font-size: 1.3rem !important;
    font-weight: 400 !important;
    line-height: 1.4 !important;
    margin-bottom: 15px !important;
}

.archive-project .project-title a {
    color: #1a1a1a !important;
    text-decoration: none !important;
    transition: color 0.3s ease !important;
}

.archive-project .project-title a:hover {
    color: #d4af37 !important;
}

.archive-project .project-tags {
    margin-bottom: 10px !important;
}

.archive-project .tag {
    display: inline-block !important;
    padding: 6px 12px !important;
    background: #f8f8f8 !important;
    color: #333 !important;
    font-size: 0.8rem !important;
    font-weight: 300 !important;
    border-radius: 15px !important;
    margin-right: 8px !important;
    margin-bottom: 8px !important;
}

/* Project Visual Pattern for cards without images */
.archive-project .project-visual-pattern {
    width: 100% !important;
    height: 250px !important;
    background: 
        repeating-linear-gradient(
            45deg,
            #d4af37,
            #d4af37 10px,
            #f4e4bc 10px,
            #f4e4bc 20px
        ) !important;
    filter: grayscale(100%) contrast(1.1) !important;
    transition: all 0.6s ease !important;
    border: 1px solid #e0e0e0 !important;
}

.archive-project .project-card:hover .project-visual-pattern {
    filter: grayscale(0%) contrast(1.05) !important;
    transform: scale(1.05) !important;
}

/* Footer Styling */
.site-footer {
    background: #1a1a1a !important;
    color: #ffffff !important;
    padding: 60px 0 20px 0 !important;
    border-top: 1px solid #333 !important;
}

.footer-content {
    display: grid !important;
    grid-template-columns: 2fr 3fr 2fr !important;
    gap: 60px !important;
    margin-bottom: 40px !important;
}

/* Footer Brand */
.footer-brand {
    padding-right: 40px !important;
}

/* Footer Logo - Maximum Specificity */
.site-footer .footer-brand .footer-logo h2,
footer .footer-brand .footer-logo h2,
.footer-logo h2 {
    font-size: 2rem !important;
    font-weight: 300 !important;
    color: #ffffff !important;
    margin-bottom: 10px !important;
    margin-top: 0 !important;
    padding: 0 !important;
    letter-spacing: 0.02em !important;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    text-transform: none !important;
    line-height: 1.2 !important;
}

.footer-tagline {
    font-size: 1rem !important;
    font-weight: 300 !important;
    color: #cccccc !important;
    margin-bottom: 30px !important;
    line-height: 1.6 !important;
}

.footer-contact p {
    font-size: 0.9rem !important;
    color: #aaaaaa !important;
    margin-bottom: 8px !important;
    font-weight: 300 !important;
}

.footer-contact strong {
    color: #ffffff !important;
    font-weight: 500 !important;
}

/* LinkedIn Icon Styling */
.footer-contact .linkedin-icon {
    color: #cccccc !important;
    text-decoration: none !important;
    transition: none !important;
    display: inline-block !important;
    width: 20px !important;
    height: 20px !important;
    line-height: 0 !important;
    font-size: 0 !important;
    overflow: hidden !important;
    vertical-align: middle !important;
}

.footer-contact .linkedin-icon svg {
    width: 20px !important;
    height: 20px !important;
    fill: currentColor !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
    position: relative !important;
    top: 0 !important;
    left: 0 !important;
}

/* Footer Navigation */
.footer-nav {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 40px !important;
}

.footer-column h3 {
    font-size: 1.1rem !important;
    font-weight: 500 !important;
    color: #ffffff !important;
    margin-bottom: 20px !important;
    letter-spacing: 0.01em !important;
}

.footer-column ul {
    list-style: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

.footer-column ul li {
    margin-bottom: 12px !important;
}

.footer-column ul li a {
    color: #cccccc !important;
    text-decoration: none !important;
    font-size: 0.9rem !important;
    font-weight: 300 !important;
    transition: color 0.3s ease !important;
}

.footer-column ul li a:hover {
    color: #d4af37 !important;
}

/* Footer CTA */
.footer-cta {
    text-align: right !important;
    padding-left: 40px !important;
    border-left: 1px solid #333 !important;
}

.footer-cta h3 {
    font-size: 1.3rem !important;
    font-weight: 400 !important;
    color: #ffffff !important;
    margin-bottom: 15px !important;
    line-height: 1.4 !important;
}

.footer-cta p {
    font-size: 0.95rem !important;
    color: #aaaaaa !important;
    margin-bottom: 25px !important;
    line-height: 1.6 !important;
}

/* Newsletter Form */
.newsletter-form {
    display: flex !important;
    flex-direction: column !important;
    gap: 15px !important;
}

.newsletter-form input[type="email"] {
    padding: 12px 16px !important;
    background: rgba(255, 255, 255, 0.1) !important;
    border: 1px solid rgba(255, 255, 255, 0.2) !important;
    border-radius: 0px !important;
    color: #ffffff !important;
    font-size: 0.9rem !important;
    font-weight: 300 !important;
    transition: all 0.3s ease !important;
}

.newsletter-form input[type="email"]::placeholder {
    color: #aaaaaa !important;
}

.newsletter-form input[type="email"]:focus {
    outline: none !important;
    border-color: #d4af37 !important;
    background: rgba(255, 255, 255, 0.15) !important;
}

.newsletter-btn {
    padding: 12px 24px !important;
    background: #ffffff !important;
    color: #1a1a1a !important;
    border: none !important;
    border-radius: 0px !important;
    font-weight: 500 !important;
    font-size: 0.9rem !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
}

.newsletter-btn:hover {
    background: #1a1a1a !important;
    color: #ffffff !important;
}

/* Footer Bottom */
.footer-bottom {
    display: flex !important;
    justify-content: space-between !important;
    align-items: center !important;
    padding-top: 30px !important;
    border-top: 1px solid #333 !important;
}

.footer-copyright p {
    font-size: 0.85rem !important;
    color: #888888 !important;
    margin: 0 !important;
    font-weight: 300 !important;
}

.footer-legal {
    display: flex !important;
    align-items: center !important;
    gap: 15px !important;
}

.footer-legal a {
    color: #888888 !important;
    text-decoration: none !important;
    font-size: 0.85rem !important;
    font-weight: 300 !important;
    transition: color 0.3s ease !important;
}

.footer-legal a:hover {
    color: #d4af37 !important;
}

.footer-legal .separator {
    color: #555555 !important;
}

/* Responsive Footer */
@media (max-width: 1024px) {
    .footer-content {
        grid-template-columns: 1fr !important;
        gap: 40px !important;
    }
    
    .footer-cta {
        text-align: left !important;
        padding-left: 0 !important;
        border-left: none !important;
        border-top: 1px solid #333 !important;
        padding-top: 30px !important;
    }
}

@media (max-width: 768px) {
    .footer-nav {
        grid-template-columns: 1fr !important;
        gap: 30px !important;
    }
    
    .footer-bottom {
        flex-direction: column !important;
        gap: 20px !important;
        text-align: center !important;
    }
    
    .footer-legal {
        flex-direction: column !important;
        gap: 10px !important;
    }
}

/* Solutions Page Styling */
.page-solutions .hero h1 {
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
    width: 100% !important;
    max-width: 100% !important;
}

/* Also center the subtitle */
.page-solutions .hero p {
    text-align: center !important;
}

/* Black pins for Solutions page */
body.page-solutions .badge-pin,
.page-solutions .badge-pin {
    background: #000000 !important;
}

/* Solutions Overview Section */
.solutions-overview {
    padding: 80px 0 !important;
    background: #ffffff !important;
}

.overview-header {
    text-align: center !important;
    margin-bottom: 60px !important;
}

.overview-header h2 {
    font-size: 2.5rem !important;
    font-weight: 300 !important;
    color: #1a1a1a !important;
    margin-bottom: 20px !important;
    letter-spacing: 0.02em !important;
}

.overview-header p {
    font-size: 1.2rem !important;
    font-weight: 300 !important;
    color: #666 !important;
    max-width: 700px !important;
    margin: 0 auto !important;
    line-height: 1.6 !important;
}

/* Solutions Grid */
.solutions-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(600px, 1fr)) !important;
    gap: 40px !important;
    max-width: 1200px !important;
    margin: 0 auto !important;
}

/* Solution Cards */
.solution-card {
    background: #ffffff !important;
    border-radius: 0px !important;
    overflow: hidden !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08) !important;
    transition: all 0.3s ease !important;
    border: 1px solid transparent !important;
}

.solution-card:hover {
    transform: translateY(-5px) !important;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.12) !important;
    border-color: #d4af37 !important;
}

/* Solution Visual - Black & White with Color Hover */
.solution-visual {
    position: relative !important;
    overflow: hidden !important;
}

.solution-image {
    width: 100% !important;
    height: 250px !important;
    background-size: cover !important;
    background-position: center !important;
    background-repeat: no-repeat !important;
    filter: grayscale(100%) contrast(1.1) !important;
    transition: all 0.6s ease !important;
}

.solution-card:hover .solution-image {
    filter: grayscale(0%) contrast(1.05) !important;
    transform: scale(1.05) !important;
}

/* Solution Content */
.solution-content {
    padding: 30px !important;
}

.solution-category {
    font-size: 0.85rem !important;
    font-weight: 500 !important;
    color: #d4af37 !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    margin-bottom: 0px !important;
    margin-top: 0px !important;
    padding: 0px !important;
}

.solution-content h3 {
    font-size: 1.4rem !important;
    font-weight: 400 !important;
    line-height: 1.4 !important;
    margin-bottom: 15px !important;
    color: #1a1a1a !important;
}

.solution-content p {
    font-size: 1rem !important;
    line-height: 1.6 !important;
    color: #555 !important;
    font-weight: 300 !important;
    margin-bottom: 20px !important;
}

.solution-features {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 10px !important;
    margin-bottom: 25px !important;
}

.solution-features span {
    display: inline-block !important;
    padding: 6px 12px !important;
    background: #f8f8f8 !important;
    color: #333 !important;
    font-size: 0.8rem !important;
    font-weight: 300 !important;
    border-radius: 15px !important;
}

.solution-link {
    display: inline-flex !important;
    align-items: center !important;
    gap: 8px !important;
    color: #888888 !important;
    text-decoration: none !important;
    font-weight: 400 !important;
    font-size: 0.9rem !important;
    text-transform: uppercase !important;
    letter-spacing: 1px !important;
    transition: color 0.3s ease !important;
}

.solution-link:hover {
    color: #d4af37 !important;
}

/* Approach Section */
.approach-section {
    padding: 80px 0 !important;
    background: #f8f8f8 !important;
}

.approach-header {
    text-align: center !important;
    margin-bottom: 60px !important;
}

.approach-header h2 {
    font-size: 2.5rem !important;
    font-weight: 300 !important;
    color: #1a1a1a !important;
    margin-bottom: 20px !important;
    letter-spacing: 0.02em !important;
}

.approach-header p {
    font-size: 1.2rem !important;
    font-weight: 300 !important;
    color: #666 !important;
    max-width: 700px !important;
    margin: 0 auto !important;
    line-height: 1.6 !important;
}

.approach-grid {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)) !important;
    gap: 40px !important;
}

.approach-step {
    text-align: center !important;
    padding: 40px 20px !important;
    background: #ffffff !important;
    border-radius: 0px !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08) !important;
    transition: all 0.3s ease !important;
    border: 1px solid transparent !important;
}

.approach-step:hover {
    transform: translateY(-5px) !important;
    box-shadow: 0 10px 40px rgba(0, 0, 0, 0.12) !important;
    border-color: #d4af37 !important;
}

.step-number {
    font-size: 3rem !important;
    font-weight: 200 !important;
    color: #cccccc !important;
    margin-bottom: 20px !important;
    letter-spacing: 0.02em !important;
    transition: color 0.3s ease !important;
}

.step-number:hover {
    color: #d4af37 !important;
}

.approach-step h3 {
    font-size: 1.3rem !important;
    font-weight: 400 !important;
    color: #1a1a1a !important;
    margin-bottom: 15px !important;
}

.approach-step p {
    font-size: 1rem !important;
    line-height: 1.6 !important;
    color: #555 !important;
    font-weight: 300 !important;
}

/* Responsive Design */
@media (max-width: 768px) {
    .solutions-grid {
        grid-template-columns: 1fr !important;
        gap: 30px !important;
    }
    
    .approach-grid {
        grid-template-columns: 1fr !important;
        gap: 30px !important;
    }
    
    .overview-header h2,
    .approach-header h2 {
        font-size: 2rem !important;
    }
}

/* Solutions Page - Single Column Override */
.page-solutions .pr-solutions .solutions-grid,
body.page-solutions .pr-solutions .solutions-grid {
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 40px !important;
    max-width: 800px !important;
    margin: 0 auto !important;
    padding: 0 !important;
}

/* Solutions Page - Card Width Override */
.page-solutions .pr-solutions .solution-card,
body.page-solutions .pr-solutions .solution-card {
    flex: none !important;
    max-width: none !important;
    width: 100% !important;
    min-width: auto !important;
}

/* Solutions Page - Container Override */
.page-solutions .pr-solutions .container,
body.page-solutions .pr-solutions .container {
    max-width: 1200px !important;
    width: 100% !important;
    padding: 0 20px !important;
}

/* Solutions Page - White Background for Tags */
.page-solutions .pr-solutions .solution-features span,
body.page-solutions .pr-solutions .solution-features span {
    background: #ffffff !important;
    border: 1px solid #e0e0e0 !important;
    color: #333333 !important;
    border-radius: 0px !important;
}

/* Fix list styling to match paragraph text and add hover effect */
.single-insight .insight-article ul,
.single-insight .insight-article ol {
    font-weight: 300 !important;
    font-size: 1.15rem !important;
    line-height: 1.8 !important;
    color: #333 !important;
    letter-spacing: 0.01em !important;
    margin: 2rem 0 !important;
    padding-left: 2rem !important;
}

.single-insight .insight-article li {
    font-weight: 300 !important;
    margin-bottom: 0.8rem !important;
    transition: all 0.3s ease !important;
    padding: 0.5rem 0 !important;
    border-radius: 4px !important;
}

.single-insight .insight-article li:hover {
    background-color: rgba(212, 175, 55, 0.05) !important;
    transform: translateX(5px) !important;
    color: #1a1a1a !important;
}

.single-insight .insight-article li:last-child {
    margin-bottom: 0 !important;
}

/* Improve insight main content typography and spacing */
.single-insight .insight-article {
    font-size: 1.15rem !important;
    line-height: 1.8 !important;
    max-width: 700px !important;
    margin: 0 auto !important;
    padding: 40px 0 !important;
}

.single-insight .insight-article p {
    margin-bottom: 2rem !important;
    text-align: justify !important;
    font-weight: 300 !important;
    color: #333 !important;
    letter-spacing: 0.01em !important;
}

.single-insight .insight-article p:last-child {
    margin-bottom: 0 !important;
}

/* Reduce space between visual and content */
.single-insight .project-hero-visual {
    margin-bottom: 20px !important;
}

/* Add more breathing room for content sections */
.single-insight .insight-content {
    padding: 20px 0 60px 0 !important;
}

.single-insight .insight-layout-full {
    max-width: 800px !important;
    margin: 0 auto !important;
}

/* Fix insight category button hover - keep text black, gold border */
.single-insight .insight-category:hover {
    color: #1a1a1a !important;
    background-color: #ffffff !important;
    border-color: #d4af37 !important;
}

.single-insight .insight-category:hover span {
    color: #1a1a1a !important;
}

/* Override pr-solutions card restrictions - MAXIMUM SPECIFICITY */
section.pr-solutions .solutions-grid .solution-card,
body section.pr-solutions .solutions-grid .solution-card,
section.pr-solutions div.solution-card,
body section.pr-solutions div.solution-card {
    flex: none !important;
    max-width: none !important;
    width: 100% !important;
    min-width: 500px !important;
}

/* Override pr-solutions grid behavior - COMPLETE OVERRIDE */
section.pr-solutions .solutions-grid,
body section.pr-solutions .solutions-grid,
.pr-solutions .solutions-grid {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 40px !important;
    flex: none !important;
    flex-wrap: nowrap !important;
    justify-content: flex-start !important;
    padding: 0 !important;
}

/* Override pr-solutions container behavior */
section.pr-solutions .container,
body section.pr-solutions .container {
    max-width: none !important;
    width: 100% !important;
    padding: 0 20px !important;
}

/* Make cards more compact */
section.pr-solutions .solutions-grid .solution-card,
body section.pr-solutions .solutions-grid .solution-card,
section.pr-solutions div.solution-card,
body section.pr-solutions div.solution-card {
    flex: none !important;
    max-width: none !important;
    width: 100% !important;
    min-width: auto !important;
    padding: 15px !important;
    box-sizing: border-box !important;
    overflow: visible !important;
    white-space: normal !important;
    word-wrap: break-word !important;
}

/* Fix card titles to prevent cutoff */
section.pr-solutions .solutions-grid .solution-card h3,
body section.pr-solutions .solutions-grid .solution-card h3,
section.pr-solutions div.solution-card h3,
body section.pr-solutions div.solution-card h3 {
    white-space: nowrap !important;
    word-wrap: normal !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    line-height: 1.2 !important;
    font-size: 1.5rem !important;
}

.solution-card {
    background: white;
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    padding: 8px 12px;
    text-align: left;
}

.solution-card h3 {
    font-size: 2.2rem;
    font-weight: 20 !important;
    color: var(--color-gray-111);
    margin-bottom: 5px;
    letter-spacing: -0.8px;
    white-space: nowrap;
    overflow: hidden;
    max-width: 100%;
}

.solution-card p {
    font-size: 1.1rem;
    line-height: 1.4;
    color: var(--color-gray-666);
    margin-bottom: 10px;
}

.solution-features {
    margin-bottom: 15px;
}

.solution-feature {
    font-size: 1rem;
    font-weight: var(--font-weight-normal);
    color: var(--color-gray-111);
    margin-bottom: 8px;
    padding-left: 0;
    position: relative;
    line-height: 1.3;
}

.solution-feature::before {
    display: none;
}

.solution-link {
    display: inline-block;
    font-size: 1.5rem;
    color: var(--color-gray-111);
    text-decoration: none;
    font-weight: var(--font-weight-light);
    transition: transform 0.3s ease;
}

.solution-link:hover {
    transform: translateX(10px);
}

/* Hero Title Styling - Beautiful Thin Design */
.pr-hero-title {
    font-size: var(--font-size-6xl);
    font-weight: var(--font-weight-light);
    margin-bottom: var(--spacing-15);
    color: var(--color-gray-111);
    letter-spacing: -1px;
    line-height: 1.1;
}

.pr-hero-subtitle {
    font-size: var(--font-size-xl);
    margin: 40px auto var(--spacing-80) auto;
    color: var(--color-gray-666);
    line-height: 2.2;
    max-width: var(--content-max-width);
    font-weight: var(--font-weight-normal);
}

.pr-hero-description {
    font-size: var(--font-size-xl);
    margin-bottom: var(--spacing-80);
    color: var(--color-gray-666);
    line-height: 1.8;
    max-width: var(--content-max-width);
    margin-left: auto;
    margin-right: auto;
    font-weight: var(--font-weight-normal);
}

.pr-hero-credentials {
    display: flex;
    justify-content: center;
    gap: 80px;
    margin-top: 60px;
}

.credential {
    text-align: center;
    padding: 20px 40px;
    background: #ffffff;
    border-radius: 2px;
    border: 1px solid #e5e5e5;
    transition: all 0.4s ease;
    min-height: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.credential:hover {
    border-color: #1a1a1a;
    transform: translateY(-2px);
}

.credential-label {
    font-size: var(--font-size-sm);
    color: var(--color-gray-111);
    font-weight: var(--font-weight-normal);
    text-transform: uppercase;
    letter-spacing: 1.5px;
}

/* Featured PR Project Section */
.featured-project {
    padding: 40px 0 50px 0;
    background: #ffffff;
}

.featured-header {
    text-align: center;
    margin-bottom: 40px;
}

.featured-header h2 {
    font-size: 2.8rem;
    font-weight: var(--font-weight-light);
    margin-bottom: var(--spacing-20);
    color: var(--color-gray-111);
    letter-spacing: -1px;
    line-height: 1.1;
}

.featured-header p {
    font-size: var(--font-size-base);
    color: var(--color-gray-666);
    max-width: 500px;
    margin: 0 auto;
    line-height: var(--line-height-base);
    font-weight: var(--font-weight-normal);
}

.featured-project-card {
    max-width: 1000px !important;
    margin: 0 auto;
    background: #fafafa;
    border-radius: 2px;
    overflow: hidden;
    transition: all 0.6s ease;
    border: 1px solid #f5f5f5;
}

.featured-project-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 15px 45px rgba(0, 0, 0, 0.06);
    border-color: #e5e5e5;
}

.featured-project-header {
    position: relative;
}

.featured-project-image {
    height: 400px;
    overflow: hidden;
    background: #fafafa;
}

.featured-project-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.8s ease;
    filter: grayscale(100%);
    opacity: 0.8;
}

.featured-project-card:hover .featured-project-image img {
    transform: scale(1.02);
    filter: grayscale(0%);
    opacity: 1;
}

.featured-project-overlay {
    position: absolute;
    top: 24px;
    right: 24px;
}

.featured-badge {
    background: #1a1a1a;
    color: #ffffff;
    padding: 4px 12px;
    border-radius: 2px;
    font-size: 0.7rem;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.featured-project-content {
    padding: 30px;
}

.featured-project-meta {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 30px;
    flex-wrap: wrap;
    gap: 20px;
}

.featured-project-date {
    background: #f5f5f5;
    color: #666666;
    padding: 8px 16px;
    border-radius: 2px;
    font-size: 0.75rem;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.featured-project-industries {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.featured-project-content h3 {
    font-size: 2rem;
    font-weight: var(--font-weight-light);
    margin-bottom: var(--spacing-30);
    color: var(--color-gray-111);
    line-height: 1.2;
    letter-spacing: var(--letter-spacing-tight);
}

.featured-project-excerpt {
    color: var(--color-gray-666);
    line-height: 1.7;
    margin-bottom: var(--spacing-15);
    font-size: var(--font-size-xl);
    font-weight: var(--font-weight-normal);
}

.featured-project-results {
    background: #fafafa;
    padding: 30px;
    border-radius: 12px;
    margin-bottom: 40px;
    border-left: 2px solid #1a1a1a;
}

.featured-project-results .results-header {
    font-weight: 400;
    color: #1a1a1a;
    margin-bottom: 12px;
    font-size: 0.9rem;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.featured-project-results .results-content {
    color: #666666;
    line-height: 1.6;
    font-size: 1rem;
    font-weight: 300;
}

.featured-project-metrics {
    margin-bottom: 40px;
}

.featured-project-metrics .metrics-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: 16px;
}

.featured-project-metrics .metric-item {
    background: #ffffff;
    padding: 20px;
    border-radius: 0;
    text-align: center;
    font-size: 0.85rem;
    font-weight: 300;
    color: #666666;
    border: 1px solid #f5f5f5;
    transition: all 0.3s ease;
    position: relative;
}

.featured-project-metrics .metric-item:hover {
    border-color: #d4af37;
    box-shadow: 0 4px 12px rgba(212, 175, 55, 0.2);
    transform: translateY(-2px);
    color: #1a1a1a;
}

.featured-project-link {
    color: #1a1a1a;
    text-decoration: none;
    font-weight: 400;
    font-size: 0.9rem;
    transition: all 0.4s ease;
    display: inline-flex;
    align-items: center;
    gap: 12px;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.featured-project-link:hover {
    color: #666666;
    transform: translateX(8px);
}

.featured-project-link span {
    transition: transform 0.4s ease;
}

/* Responsive for Featured Project */
@media (max-width: 768px) {
    .featured-project {
        padding: 80px 0;
    }
    
    .featured-header {
        margin-bottom: 60px;
    }
    
    .featured-header h2 {
        font-size: 2.2rem;
    }
    
    .featured-project-content {
        padding: 40px;
    }
    
    .featured-project-content h3 {
        font-size: 1.6rem;
    }
    
    .featured-project-excerpt {
        font-size: 1rem;
    }
}

@media (max-width: 480px) {
    .featured-project {
        padding: 60px 0;
    }
    
    .featured-header h2 {
        font-size: 1.8rem;
    }
    
    .featured-project-content {
        padding: 30px;
    }
    
    .featured-project-content h3 {
        font-size: 1.4rem;
    }
    
    .featured-project-image {
        height: 250px;
    }
}

/* Trust Indicators Section - Ultra Clean */
.trust-indicators {
    padding: 120px 0;
    background: #fafafa;
    border-top: 1px solid #e5e5e5;
    border-bottom: 1px solid #e5e5e5;
}

.trust-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
    gap: 60px;
}

.trust-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 24px;
    padding: 0;
    background: transparent;
    transition: all 0.4s ease;
    text-align: center;
}

.trust-item:hover {
    transform: translateY(-4px);
}

.trust-icon {
    width: 16px;
    height: 16px;
    background: #1a1a1a;
    border-radius: 50%;
    position: relative;
    flex-shrink: 0;
    margin-bottom: 0;
}

.trust-content h4 {
    font-size: 1rem;
    font-weight: 400;
    margin-bottom: 8px;
    color: #1a1a1a;
    letter-spacing: -0.5px;
}

.trust-content p {
    font-size: 0.9rem;
    color: #666666;
    line-height: 1.5;
    margin: 0;
    font-weight: 300;
}

/* Section Headers - Typography Focus */
.section-header {
    text-align: center;
    margin-bottom: 80px;
}

.section-header h2 {
    font-size: 2.4rem !important;
    font-weight: 20 !important;
    margin-bottom: 20px !important;
    color: #1a1a1a !important;
    letter-spacing: -0.5px !important;
    font-family: Georgia, serif !important;
}

.section-header p {
    font-size: 1rem;
    color: #666666;
    max-width: 500px;
    margin: 0 auto;
    line-height: 1.6;
    font-weight: 300;
}

/* ====================================================
   SOLUTIONS SECTION - UNIFIED DESIGN SYSTEM
=================================================== */
.pr-solutions {
    padding: 30px 0 40px 0;
    background: #ffffff;
}

.pr-solutions .section-header-content {
    position: relative;
    z-index: 2;
    max-width: 800px;
    margin: 0 auto;
    text-align: center;
}

.pr-solutions .section-header {
    text-align: center;
    margin-bottom: 60px;
}

/* Unique class for archive title - override everything */
.archive-title-thin {
    font-size: 2.4rem !important;
    font-weight: 20 !important;
    color: #1a1a1a !important;
    letter-spacing: -1px !important;
    font-family: Georgia, serif !important;
    margin-bottom: 20px !important;
    display: block !important;
}

/* Force thin titles on archive pages */
.pr-solutions .section-header h2,
section.pr-solutions .section-header h2,
body section.pr-solutions .section-header h2,
.pr-solutions .section-header h2:not([style]),
section.pr-solutions .section-header h2:not([style]),
body section.pr-solutions .section-header h2:not([style]) {
    font-size: 2.4rem !important;
    font-weight: 20 !important;
    margin-bottom: 20px !important;
    color: #1a1a1a !important;
    letter-spacing: -0.5px !important;
    font-family: Georgia, serif !important;
}

/* Override any inline styles on h2 */
h2.pr-solutions-title,
h2:not([class*="pr-solutions"]) {
    font-size: 2.4rem !important;
    font-weight: 20 !important;
    color: #1a1a1a !important;
    letter-spacing: -0.5px !important;
    font-family: Georgia, serif !important;
}

.pr-solutions .section-header p {
    font-size: 1.1rem;
    color: #666;
    max-width: 600px;
    margin: 0 auto;
    line-height: 1.6;
}

.pr-solutions .solutions-grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
    gap: 10px;
    padding: 0;
}

.pr-solutions .solution-card {
    flex: 0 0 calc(33.333% - 10px);
    max-width: 350px;
}

.solution-card-link {
    text-decoration: none;
    color: inherit;
    display: block;
    position: relative;
}

.solution-card {
    background: linear-gradient(135deg, #ffffff 0%, #f8f9fa 100%);
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 
        0 2px 8px rgba(0, 0, 0, 0.04),
        0 1px 2px rgba(0, 0, 0, 0.06);
    border: 1px solid rgba(0, 0, 0, 0.08);
    transition: all 0.3s ease;
    position: relative;
    display: flex;
    flex-direction: column;
    min-height: 140px;
    cursor: pointer;
    text-decoration: none;
    color: inherit;
}

.solution-card:hover {
    transform: translateY(-4px) !important;
    box-shadow: 
        0 8px 25px rgba(0, 0, 0, 0.08),
        0 4px 12px rgba(0, 0, 0, 0.05);
    border: 1px solid #d4af37;
    text-decoration: none;
    color: inherit;
}

.solution-header {
    padding: 16px 20px 8px 20px;
    text-align: center;
    background: transparent;
    border-bottom: none;
}

.solution-header h3 {
    font-size: 1.3rem;
    font-weight: 500;
    margin: 0 0 8px 0;
    color: #1a1a1a;
    text-align: center !important;
    line-height: 1.2;
    font-family: 'Helvetica Neue', sans-serif;
}

.solution-icon {
    display: none; /* Hidden for clean design */
}

.solution-content {
    padding: 0 20px 16px 20px;
    text-align: center;
    background: transparent;
    display: flex;
    flex-direction: column;
    flex: 1;
}

.solution-excerpt {
    font-size: var(--font-size-xs);
    line-height: 1.6;
    color: var(--color-gray-666);
    margin-bottom: 24px;
    font-weight: var(--font-weight-normal);
    letter-spacing: 0.1px;
}

.solution-features {
    margin: 0 0 25px 0;
    line-height: 1.4;
    color: #333;
    text-align: center;
    font-size: 0.95rem;
    font-weight: 300;
    letter-spacing: 0.2px;
}

.solution-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 6px;
    color: var(--color-gray-111);
    text-decoration: none;
    font-weight: var(--font-weight-semibold);
    font-size: var(--font-size-xs);
    transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
    margin: 0 auto;
    padding: 6px 12px;
    border: 1px solid rgba(0, 0, 0, 0.08);
    border-radius: 6px;
    background: rgba(255, 255, 255, 0.8);
    backdrop-filter: blur(10px);
    width: fit-content;
}

.solution-link:hover {
    color: var(--color-gold);
    border-color: rgba(0, 0, 0, 0.12);
    background: rgba(255, 255, 255, 0.95);
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
}

.solution-link span {
    margin-left: 4px;
    transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.solution-link:hover span {
    transform: translateX(4px);
}

/* Solution Features Detailed Section */
.solution-features-detailed h3 {
    font-size: 2.2rem !important;
    font-weight: 200 !important;
    margin-bottom: 40px !important;
    color: #1a1a1a !important;
    letter-spacing: 0.02em !important;
    line-height: 1.3 !important;
}

/* Solution features styling - column format without bullets */
.solution-features {
    margin: 25px 0 30px 0 !important;
    line-height: 2.2 !important;
    color: #555 !important;
    white-space: pre-line !important;
    text-align: center !important;
    font-size: 0.95rem !important;
    display: block !important;
}

/* Extra specific override for physical directory pages */
div.solution-features {
    margin: 25px 0 30px 0 !important;
    line-height: 2.2 !important;
    color: #555 !important;
    white-space: pre-line !important;
    text-align: center !important;
    font-size: 0.95rem !important;
    display: block !important;
}


    
.solution-content h3 {
    font-size: 1.6rem;
    font-weight: 300;
    margin-bottom: 24px;
    color: #1a1a1a;
    line-height: 1.3;
    letter-spacing: -0.5px;
}

.solution-meta {
    margin-bottom: 30px;
}

.solution-industries {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
}

.industry-tag {
    background: #f5f5f5;
    color: #666666;
    padding: 8px 16px;
    border-radius: 2px;
    font-size: 0.75rem;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 1px;
    text-decoration: none !important;
    transition: all 0.3s ease;
}

.industry-tag-link:hover {
    background: #000;
    color: #fff;
    transform: translateY(-1px);
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
    text-decoration: none !important;
}

.market-tag {
    background: #f5f5f5;
    color: #666666;
    padding: 8px 16px;
    border-radius: 2px;
    font-size: 0.75rem;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 1px;
    text-decoration: none !important;
    transition: all 0.3s ease;
}

/* Solution Content Section */
.solution-content-section {
    padding: 60px 0;
    background: #fff;
}

.solution-content {
    max-width: 800px;
    margin: 0 auto;
}

.solution-description {
    font-size: 1.1rem;
    line-height: 1.7;
    color: #333;
    margin-bottom: 0px;
}

/* Detailed Features Section */
.solution-features-detailed {
    margin-top: 0px;
    text-align: center;
    margin-bottom: 40px;
}

.solution-features-detailed h3 {
    font-size: 2.8rem;
    font-weight: var(--font-weight-light);
    margin-bottom: var(--spacing-20);
    color: #1a1a1a;
    line-height: 1.1;
}

.features-extended {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 30px;
    margin-top: 40px;
}

.feature-item-detailed {
    background: linear-gradient(135deg, #ffffff 0%, #f8f9fa 100%);
    border-radius: 0px;
    overflow: hidden;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.06);
    transition: all 0.3s ease;
    position: relative;
    min-height: 140px;
}

.feature-item-detailed:hover {
    transform: translateY(-4px);
    box-shadow: 
        0 8px 25px rgba(0, 0, 0, 0.08),
        0 12px 40px rgba(0, 0, 0, 0.12);
    border: 1px solid #D4AF37 !important;
}

.feature-header {
    padding: 12px 20px 4px 20px;
    text-align: center;
    background: transparent;
    border-bottom: none;
    position: relative;
}

.feature-header::before {
    display: none;
}

.feature-header h4 {
    font-size: 1.3rem;
    font-weight: var(--font-weight-light);
    margin: 6px 0 0 0;
    color: var(--color-gray-111);
    letter-spacing: -0.3px;
}

.feature-content {
    padding: 0 20px 16px 20px;
    text-align: center;
}

.feature-description {
    font-size: var(--font-size-base);
    line-height: 1.6;
    margin-bottom: 15px;
    color: var(--color-gray-666);
}

.feature-benefits {
    background: transparent;
    padding: 0;
    border-radius: 0;
    border-left: none;
    font-size: 0.9rem;
    color: #666;
    line-height: 1.4;
}

.benefits-label {
    display: none;
}

.benefits-list {
    font-size: 0.9rem;
    line-height: 1.4;
    color: #666;
}

.solution-description h2 {
    font-size: 1.8rem;
    font-weight: 500;
    margin: 30px 0 15px 0;
    color: #000;
}

.solution-description h3 {
    font-size: 1.4rem;
    font-weight: 500;
    margin: 25px 0 12px 0;
    color: #000;
}

.solution-description p {
    margin-bottom: 20px;
}

.solution-description ul, .solution-description ol {
    margin: 20px 0;
    padding-left: 30px;
}

.solution-description li {
    margin-bottom: 8px;
    font-weight: 300;
}

.solution-excerpt {
    color: #666666;
    line-height: 1.7;
    margin-bottom: 15px;
    font-size: 0.95rem;
    font-weight: 300;
}

.solution-features {
    margin-bottom: 15px;
}

.solution-features ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.solution-features li {
    padding: 12px 0 12px 24px;
    position: relative;
    color: #1a1a1a;
    font-size: 0.9rem;
    line-height: 1.6;
    font-weight: 300;
}

.solution-features li::before {
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 4px;
    height: 4px;
    background: #1a1a1a;
    border-radius: 50%;
}

.insight-link {
    color: #1a1a1a;
    text-decoration: none;
    font-weight: 400;
    font-size: 1rem;
    letter-spacing: 1px;
}

.insight-link:hover {
    color: #666666;
}

.insight-link span {
    transition: transform 0.4s ease;
}

.featured-project-link {
    color: #1a1a1a;
    text-decoration: none;
    font-weight: 400;
    font-size: 0.9rem;
    letter-spacing: 1px;
    display: inline-block;
    transition: all 0.3s ease;
    margin-top: 10px;
    margin-left: 30px;
    padding: 0;
    background: transparent;
    border: none;
    text-align: left;
}

.featured-project-link:hover {
    color: #d4af37 !important;
    transform: translateX(8px);
    background: transparent;
    border: none;
}

/* PR Projects Section - Editorial Minimalism */
.pr-projects {
    padding: 120px 0;
    background: #fafafa;
}

.projects-timeline {
    max-width: 1200px;
    margin: 0 auto;
}

.project-timeline-item {
    display: flex;
    gap: 60px;
    margin-bottom: 100px;
    align-items: flex-start;
}

.timeline-marker {
    flex-shrink: 0;
}

.timeline-dot {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 12px;
    height: 12px;
    background: #1a1a1a;
    border-radius: 50%;
    box-shadow: none;
    position: relative;
    margin-top: 8px;
}

.timeline-dot::before {
    display: none;
}

.project-card {
    flex: 1;
    background: #ffffff;
    border-radius: 12px;
    overflow: hidden;
    transition: all 0.6s ease;
    border: 1px solid #f5f5f5;
}

.project-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 15px 45px rgba(0, 0, 0, 0.06);
    border-color: #e5e5e5;
}

.project-header {
    position: relative;
}

.project-image {
    height: 320px;
    overflow: hidden;
    background: #fafafa;
}

.project-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.8s ease;
    filter: grayscale(100%);
    opacity: 0.8;
}

.project-card:hover .project-image img {
    transform: scale(1.02);
    filter: grayscale(0%);
    opacity: 1;
}

.project-overlay {
    position: absolute;
    top: 24px;
    right: 24px;
}

.case-study-badge {
    background: #1a1a1a;
    color: #ffffff;
    padding: 4px 12px;
    border-radius: 2px;
    font-size: 0.7rem;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.project-content {
    padding: 50px;
}

.project-meta-top {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 30px;
    flex-wrap: wrap;
    gap: 20px;
}

.project-date {
    background: #f5f5f5;
    color: #666666;
    padding: 8px 16px;
    border-radius: 2px;
    font-size: 0.75rem;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.project-industries {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.project-content h3 {
    font-size: 1.8rem;
    font-weight: 200;
    margin-bottom: 30px;
    color: #1a1a1a;
    line-height: 1.2;
    letter-spacing: -0.5px;
}

.project-excerpt {
    color: #666666;
    line-height: 1.7;
    margin-bottom: 40px;
    font-size: 1rem;
    font-weight: 300;
}

.project-results {
    background: #fafafa;
    padding: 30px;
    border-radius: 12px;
    margin-bottom: 40px;
    border-left: 2px solid #1a1a1a;
}

.results-header {
    font-weight: 400;
    color: #1a1a1a;
    margin-bottom: 12px;
    font-size: 0.9rem;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.results-content {
    color: #666666;
    line-height: 1.6;
    font-size: 0.95rem;
    font-weight: 300;
}

.project-metrics {
    margin-bottom: 40px;
}

.metrics-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: 16px;
}

.metric-item {
    background: #ffffff;
    padding: 20px;
    border-radius: 2px;
    text-align: center;
    font-size: 0.85rem;
    font-weight: 300;
    color: #666666;
    border: 1px solid #f5f5f5;
}

.project-link {
    color: #1a1a1a;
    text-decoration: none;
    font-weight: 400;
    font-size: 0.9rem;
    transition: all 0.4s ease;
    display: inline-flex;
    align-items: center;
    gap: 12px;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.project-link:hover {
    color: #666666;
    transform: translateX(8px);
}

/* Fix spacing between sections - remove WordPress content gaps */
.pr-insights + .consultation-cta {
    margin-top: 0 !important;
}

.pr-insights + .consultation-cta .container {
    padding-top: 0 !important;
}

/* Remove any unwanted spacing from WordPress content processing */
.pr-insights:after,
.consultation-cta:before {
    content: none !important;
    display: none !important;
}

/* Override WordPress block spacing between sections */
.pr-insights {
    margin-bottom: 0 !important;
}

.consultation-cta {
    margin-top: 0 !important;
}

/* Remove any empty paragraphs or divs between sections */
.pr-insights ~ .consultation-cta {
    border-top: none !important;
}

/* Fallback styling for no-image scenarios */
.featured-project-header-fallback {
    height: 200px;
    background: linear-gradient(135deg, #f8f8f8 0%, #e8e8e8 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}

.featured-project-header-fallback .featured-badge {
    background: rgba(26, 26, 26, 0.8);
    color: #ffffff;
    padding: 8px 16px;
    font-size: 0.75rem;
    font-weight: 500;
    letter-spacing: 1px;
    text-transform: uppercase;
    border-radius: 4px;
}

/* Override Gutenberg Block Spacing Issues */
.wp-block {
    margin: 0 !important;
    padding: 0 !important;
}

.wp-block-p {
    margin: 0 !important;
    padding: 0 !important;
}

.wp-block-heading {
    margin: 0 !important;
    padding: 0 !important;
}

.wp-block-paragraph {
    margin: 0 !important;
    padding: 0 !important;
}

.wp-block-group {
    margin: 0 !important;
    padding: 0 !important;
}

.wp-block-columns {
    margin: 0 !important;
    padding: 0 !important;
    gap: 30px !important;
}

.wp-block-column {
    margin: 0 !important;
    padding: 0 !important;
}

/* Remove default WordPress block margins */
.has-large-font-size,
.has-medium-font-size,
.has-small-font-size {
    margin: 0 !important;
}

/* Fix block editor spacing */
.entry-content p,
.entry-content h1,
.entry-content h2,
.entry-content h3,
.entry-content h4,
.entry-content h5,
.entry-content h6 {
    margin: 0 !important;
    padding: 0 !important;
}

/* Remove WordPress core block spacing */
.is-layout-constrained > *,
.is-layout-flow > * {
    margin: 0 !important;
}

/* Fix block gaps */
.wp-block-group__inner-container {
    gap: 0 !important;
}

/* Override any remaining block spacing */
.wp-block-list li,
.wp-block-quote {
    margin: 0 !important;
}

/* PR Insights Section - Editorial Chic */
.pr-insights {
    padding: 20px 0 30px 0;
    background: var(--color-white);
}

.insights-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 20px;
    margin-bottom: 20px;
}

.insight-card {
    background: var(--color-white);
    border-radius: var(--radius-2);
    overflow: hidden;
    transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
    border: none;
}

.insight-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 15px 45px rgba(0, 0, 0, 0.06);
    border: none;
}

.insight-header {
    position: relative;
}

.insight-image {
    height: 280px;
    overflow: hidden;
    background: var(--color-white);
}

.insight-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease, filter 0.3s ease;
    opacity: 0.8;
}

.insight-card:hover .insight-image img {
    transform: scale(1.02);
    filter: grayscale(0%);
    opacity: 1;
}

.insight-meta {
    position: absolute;
    top: 24px;
    left: auto;
    right: 24px;
    background: transparent !important;
}

.insight-category {
    background: transparent !important;
    color: #1a1a1a;
    padding: 6px 12px;
    letter-spacing: 1px;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.insight-date {
    background: transparent !important;
    color: #1a1a1a;
    padding: 6px 12px;
    letter-spacing: 1px;
}

.insight-content {
    padding: 30px;
    padding-top: 40px;
}

.insight-content h3 {
    font-size: 1.6rem;
    font-weight: 300;
    margin-bottom: 0px;
}

.insight-excerpt {
    color: #666666;
    line-height: 1.6;
    margin-bottom: 0px;
    font-size: 0.95rem;
    font-weight: 300;
}

.insight-key-takeaways {
    background: transparent;
    padding: 20px;
    border-radius: 8px;
    margin-bottom: 20px;
}

/* Hide empty insight-key-takeaways - stronger rule */
.insight-key-takeaways:empty,
.insight-key-takeaways:blank {
    display: none !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* Also try hiding if no content */
.insight-key-takeaways:not(:has(*)) {
    display: none !important;
}

.takeaways-header {
    font-size: 14px;
    font-weight: 600;
    margin-bottom: 10px;
    color: #1a1a1a;
}

.takeaways-content {
    font-size: 14px;
    line-height: 1.6;
    color: #666666;
}

/* Author styles removed - no longer used in template */

.insight-link {
    color: #1a1a1a;
    text-decoration: none;
    font-weight: 400;
    font-size: 0.9rem;
    transition: all 0.4s ease;
    display: inline-flex;
    align-items: center;
    gap: 12px;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.insight-link:hover {
    color: #666666;
    transform: translateX(8px);
}

/* Consultation CTA - Understated Luxury */
.consultation-cta {
    padding: 140px 0;
    background: #1a1a1a;
    color: #ffffff;
    text-align: center;
}

.cta-content {
    max-width: 800px;
    margin: 0 auto;
}

.cta-header h2 {
    font-size: 2.4rem;
    font-weight: 200;
    margin-bottom: 24px;
    color: #ffffff !important;
    text-align: center;
    text-shadow: 0 0 0 2px rgba(255, 255, 255, 0.8), 0 0 4px rgba(255, 255, 255, 0.5);
}

/* Allow text wrapping on mobile for better responsiveness */
@media (max-width: 768px) {
    .cta-header h2 {
        white-space: normal;
        font-size: 1.8rem;
    }
}

.cta-header p {
    font-size: 1rem;
    margin-bottom: 60px;
    opacity: 0.8;
    line-height: 1.6;
    font-weight: 300;
}

.consultation-cta .cta-benefits {
    display: flex !important;
    justify-content: center;
    gap: 60px;
    margin-bottom: 60px;
    flex-wrap: wrap;
    align-items: center;
}

.consultation-cta .benefit-item {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    gap: 8px;
    padding: 0;
    background: transparent;
    border-radius: 0;
    backdrop-filter: none;
    width: auto !important;
    margin: 0 !important;
}

.consultation-cta .benefit-icon {
    width: 16px;
    height: 16px;
    background: #ffffff;
    border-radius: 50%;
    position: relative;
}

.consultation-cta .benefit-icon::before {
    display: none;
}

.consultation-cta .benefit-text {
    font-size: 0.8rem;
    font-weight: 400;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: #ffffff;
    opacity: 0.9;
}

.cta-actions {
    display: flex;
    justify-content: center;
    gap: 30px;
    flex-wrap: wrap;
}

.cta-primary {
    display: inline-block;
    background: #ffffff;
    color: #1a1a1a;
    padding: 16px 40px;
    border-radius: 0;
    text-decoration: none;
    font-weight: 400;
    font-size: 0.9rem;
    transition: all 0.4s ease;
    box-shadow: none;
    text-transform: uppercase;
    letter-spacing: 1px;
    border: 2px solid #ffffff;
}

.cta-primary:hover {
    background: #1a1a1a;
    color: #ffffff;
    transform: translateY(-2px);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.15);
    border-color: #1a1a1a;
}

.cta-secondary {
    display: inline-block;
    background: transparent;
    color: #ffffff;
    padding: 16px 40px;
    border-radius: 2px;
    text-decoration: none;
    font-weight: 400;
    font-size: 0.9rem;
    border: 1px solid #ffffff;
    transition: all 0.4s ease;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.cta-secondary:hover {
    background: #ffffff;
    color: #1a1a1a;
    transform: translateY(-2px);
    box-shadow: 0 8px 24px rgba(255, 255, 255, 0.15);
}

/* Base PR Hero Title Styling */
.pr-hero h1 {
    font-size: 3.5rem !important;
    font-weight: 20 !important;
    font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif !important;
    margin-bottom: 30px !important;
    margin-top: 20px !important;
    color: #1a1a1a !important;
    letter-spacing: -2px !important;
    line-height: 0.9 !important;
    text-transform: none !important;
    -webkit-font-smoothing: antialiased !important;
    -moz-osx-font-smoothing: grayscale !important;
}

.pr-hero-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 60px;
    padding: 4px 12px;
    background: #f5f5f5;
    border-radius: 0px;
    border: 1px solid #ddd;
}

.pr-hero-subtitle {
    margin-top: 20px;
}

/* Responsive Styles */
@media (max-width: 768px) {
    .pr-hero h1 {
        font-size: 2.8rem;
    }
    
    .pr-hero-subtitle {
        font-size: 1rem;
    }
    
    .pr-hero-credentials {
        flex-direction: column;
        gap: 30px;
    }
    
    .pr-solutions .container {
        padding-left: 20px !important;
        padding-right: 20px !important;
    }
    
    .pr-solutions .solutions-grid {
        gap: 15px;
        justify-content: center;
    }
    
    .pr-solutions .solution-card {
        flex: 0 0 calc(100% - 40px);
        max-width: calc(100% - 40px);
    }
}

@media (min-width: 769px) {
    .pr-solutions .container {
        padding-left: 0px !important;
        padding-right: 60px !important;
    }
    
    .pr-solutions .solution-card {
        flex: 0 0 calc(33.333% - 10px);
        max-width: 350px;
    }
    
    .pr-solutions,
    .pr-projects,
    .pr-insights,
    .consultation-cta {
        padding: 60px 0;
    }
}

    .credential {
        padding: 20px 30px;
    }
    
    .section-header h2 {
        font-size: 2.2rem;
    }
    
    .section-header p {
        font-size: 0.9rem;
    }
    
    .trust-grid,
    .solutions-grid,
    .insights-grid {
        grid-template-columns: 1fr;
        gap: 30px;
    }
    
    .project-timeline-item {

@media (max-width: 480px) {
    .pr-hero {
        padding: 100px 0 80px;
    }
    
    .pr-hero h1 {
        font-size: 2.4rem;
    }
    
    .pr-hero-credentials {
        gap: 20px;
    }
    
    .pr-solutions,
    .pr-projects,
    .pr-insights,
    .consultation-cta {
        padding: 60px 0;
    }
    
    .solution-content,
    .project-content,
    .insight-content {
        padding: 0 0 30px 0;
    }
    
    .solution-content h3,
    .project-content h3,
    .insight-content h3 {
        font-size: 1.4rem;
    }
    
    .cta-primary,
    .cta-secondary {
        padding: 14px 30px;
        font-size: 0.85rem;
    }
}

/* ====================================================
   APPLE/CHANEL HEADER STYLING
=================================================== */

.site-header {
    display: flex;
    align-items: center;
    padding: 8px 40px;
    background: #000;
    color: #fff;
    position: relative;
    margin-bottom: 0;
}

.site-header .logo {
    margin-right: 60px; /* Space between logo and menu */
}

/* Logo Size Fix - Override all other rules */
.site-header .logo a,
header .logo a,
.logo a {
    font-size: 3.2rem !important;
}

.site-header .logo,
header .logo,
.logo {
    font-size: 3.2rem !important;
}

.site-header .logo a {
    color: var(--color-white);
    font-size: 3.2rem !important;
    font-weight: var(--font-weight-bold);
    text-decoration: none;
    font-family: var(--font-family-georgia);
    transition: color 0.3s ease;
}

.primary-navigation {
    display: flex !important;
    align-items: center !important;
    flex: 1;
}

.primary-navigation ul.primary-menu {
    display: flex;
    list-style: none;
    margin: 0;
    padding: 0;
    gap: 0; /* Remove gap, control with padding */
}

.primary-navigation ul.primary-menu li a {
    display: block;
    padding: var(--spacing-12) var(--spacing-24);
    font-size: var(--font-size-lg);
    font-weight: var(--font-weight-medium);
    letter-spacing: var(--letter-spacing-normal);
    color: var(--color-white);
    text-decoration: none;
    transition: all 0.3s ease;
    text-transform: none;
}

.primary-navigation ul.primary-menu li a:hover {
    color: var(--color-gold) !important;
    background: rgba(255, 255, 255, 0.1);
    text-decoration: none;
}

/* ====================================================
   HOMEPAGE RESPONSIVE 
=================================================== */
@media (max-width: 768px) {
    .hero {
        padding: 100px var(--spacing-20) var(--spacing-80) !important;
        min-height: 50vh !important;
    }
    
    .hero h1 {
        font-size: 2.8rem !important;
        max-width: 100% !important;
        line-height: 1.2 !important;
    }
    
    .hero p {
        font-size: 1rem !important;
        max-width: 90% !important;
        margin: 0 auto 40px !important;
    }
    
    .lead-section {
        padding: 80px 20px !important;
    }
    
    .lead-section h2 {
        font-size: 2.2rem !important;
        margin-bottom: 40px !important;
    }
    
    .lead-form {
        max-width: 100% !important;
        padding: 30px !important;
    }
}

@media (max-width: 480px) {
    .hero {
        padding: 80px 15px 60px !important;
        min-height: 40vh !important;
    }
    
    .hero h1 {
        font-size: 2.4rem !important;
        line-height: 1.3 !important;
    }
    
    .hero p {
        font-size: 0.95rem !important;
        max-width: 95% !important;
        margin: 0 auto 30px !important;
    }
    
    .lead-section {
        padding: 60px 15px !important;
    }
    
    .lead-section h2 {
        font-size: 1.8rem !important;
        margin-bottom: 30px !important;
    }
    
    .lead-form {
        padding: 25px !important;
    }
    
    .lead-form input[type="text"],
    .lead-form input[type="email"],
    .lead-form textarea {
        padding: 14px 16px !important;
        font-size: 0.9rem !important;
    }
    
    .lead-form button[type="submit"] {
        padding: 14px 30px !important;
        font-size: 0.85rem !important;
    }
}

@media (max-width: 768px) {
    .lead-form {
        padding: var(--spacing-30) var(--spacing-20);
        margin: 0 var(--spacing-10);
    }
}

@media (max-width: 480px) {
    .hero h1 {
        font-size: 2rem;
    }
    
    .hero p {
        font-size: 1rem;
    }
    
    .lead-section h2 {
        font-size: 1.5rem;
    }
    
    .lead-form input,
    .lead-form textarea {
        padding: 12px 15px;
        font-size: 14px;
    }
    
    .lead-form button {
        padding: 15px 30px;
        font-size: 16px;
    }
}

/* ====================================================
   RESPONSIVE MOBILE MENU - SIMPLIFIED
=================================================== */
@media (max-width: 768px) {
    .site-header {
        padding: var(--spacing-12) var(--spacing-20);
        position: relative;
    }
    
    .site-header .logo {
        margin-right: auto;
        order: 1;
    }
    
    .primary-navigation {
        display: none;
        position: absolute;
        top: 100%;
        left: 0;
        right: 0;
        background: #000;
        flex-direction: column;
        padding: 0;
        z-index: 1000;
        box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    }
    
    .primary-navigation.active {
        display: flex;
    }
    
    .primary-navigation ul.primary-menu {
        flex-direction: column;
        gap: 0;
        width: 100%;
        margin: 0;
        padding: 0;
    }
    
    .primary-navigation ul.primary-menu li {
        margin: 0;
        padding: 0;
        border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    }
    
    .primary-navigation ul.primary-menu li:last-child {
        border-bottom: none;
    }
    
    .primary-navigation ul.primary-menu li a {
        padding: 20px 25px;
        font-size: 16px;
        text-align: left;
        line-height: 1.4;
        display: block;
        width: 100%;
        color: #fff;
        text-decoration: none;
        transition: background-color 0.3s ease;
    }
    
    .primary-navigation ul.primary-menu li a:hover {
        background-color: rgba(255, 255, 255, 0.1);
    }
    
    .language-switcher {
        display: none; /* Hide on mobile for simplicity */
    }
    
    .menu-toggle {
        display: block;
        background: none;
        border: none;
        color: var(--color-white);
        font-size: var(--font-size-4xl);
        cursor: pointer;
        padding: var(--spacing-8);
        order: 2;
        position: relative;
        width: 40px;
        height: 40px;
        border-radius: var(--radius-4);
        transition: background-color 0.3s ease;
    }
    
    .menu-toggle:hover {
        background-color: rgba(255, 255, 255, 0.1);
    }
    
    .menu-toggle::before {
        content: '☰';
        font-size: var(--font-size-4xl);
        line-height: 1;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
    }
    
    .menu-toggle.active::before {
        content: '✕';
        font-size: var(--font-size-4xl);
    }
}

/* About Page Styling */
.about-page {
    background: #ffffff;
    color: #1a1a1a;
}

/* Founder Photo Selective Color Effect */
.founder-photo-container {
    position: relative;
    width: 250px;
    height: 350px;
    overflow: hidden;
    border-radius: 12px;
    background: transparent;
}

.founder-photo-selective {
    position: relative;
    width: 100%;
    height: 100%;
    background: transparent;
}

.founder-photo-img {
    width: 100% !important;
    height: 100% !important;
    object-fit: contain !important;
    filter: contrast(1.02) brightness(0.98);
    transition: all 0.3s ease;
    border: 3px solid red !important;
    display: block !important;
    visibility: visible !important;
    max-width: 100% !important;
    max-height: 100% !important;
}

.founder-photo-img-csp {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    position: relative;
    z-index: 10;
    filter: contrast(1.02) brightness(0.98);
    transition: all 0.3s ease;
}

/* Subtle enhancement for the selective color effect */
.founder-photo-selective::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: radial-gradient(ellipse at center, transparent 0%, rgba(0,0,0,0.05) 100%);
    mix-blend-mode: multiply;
    pointer-events: none;
}

.founder-photo-fallback {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
    border-radius: 12px;
}

.founder-photo-fallback .photo-icon {
    width: 60px;
    height: 60px;
    background: var(--color-gray-ccc);
    border-radius: 50%;
    margin-bottom: 16px;
}

.founder-photo-fallback p {
    color: var(--color-gray-666);
    font-size: var(--font-size-base);
    font-weight: var(--font-weight-light);
}

/* Hide fallback when image loads */
.founder-photo-img[src] + .founder-photo-fallback {
    display: none;
}

/* Temporary placeholder effect */
.founder-photo-placeholder-effect {
    display: none;
    position: relative;
    width: 100%;
    height: 100%;
    background: linear-gradient(135deg, #f8f9fa 0%, #e9ecef 100%);
    border-radius: 12px;
    overflow: hidden;
}

.founder-silhouette {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 120px;
    height: 180px;
    background: linear-gradient(135deg, #d0d0d0 0%, #b0b0b0 100%);
    border-radius: 60px 60px 80px 80px;
    filter: grayscale(100%);
}

.founder-lips-accent {
    position: absolute;
    top: 45%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 20px;
    height: 8px;
    background: radial-gradient(ellipse, rgba(255,105,180,0.9) 0%, rgba(255,105,180,0.6) 50%, transparent 70%);
    border-radius: 50%;
    mix-blend-mode: screen;
}

/* Responsive design */
@media (max-width: 768px) {
    .founder-photo-container {
        width: 200px;
        height: 280px;
    }
    
    .founder-content {
        grid-template-columns: 1fr;
        gap: 40px;
        text-align: center;
    }
    
    .founder-photo-selective::after {
        width: 50px;
        height: 16px;
        top: 42%;
    }
}

@media (max-width: 480px) {
    .founder-photo-container {
        height: 250px;
    }
    
    .founder-photo-selective::after {
        width: 40px;
        height: 14px;
        top: 40%;
    }
}

/* Hero Section */
.about-hero {
    padding: 120px 0 80px;
    background: linear-gradient(135deg, #ffffff 0%, #fafafa 100%);
    position: relative;
    overflow: hidden;
}

.about-hero::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 400px;
    height: 400px;
    background: radial-gradient(circle, rgba(102, 102, 102, 0.05) 0%, transparent 70%);
    border-radius: 50%;
    transform: translate(100px, -100px);
}

.about-hero-content {
    max-width: 800px;
    margin: 0 auto;
    text-align: center;
    position: relative;
    z-index: 1;
}

.about-hero-badge {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    background: #1a1a1a;
    color: #ffffff;
    padding: 8px 20px;
    border-radius: 2px;
    margin-bottom: 40px;
    font-size: 0.9rem;
    letter-spacing: 1px;
    text-transform: uppercase;
}

.badge-icon {
    width: 8px;
    height: 8px;
    background: #666666;
    border-radius: 50%;
}

.about-hero h1 {
    font-size: 3.5rem;
    font-weight: 300;
    line-height: 1.2;
    margin-bottom: 30px;
    letter-spacing: -0.5px;
}

.about-hero-subtitle {
    font-size: 1.3rem;
    color: #666666;
    line-height: 1.6;
    margin-bottom: 50px;
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
}

.about-hero-credentials {
    display: flex;
    justify-content: center;
    gap: 30px;
    flex-wrap: wrap;
}

.credential {
    background: #fafafa;
    padding: 12px 24px;
    border-radius: 2px;
    border: 1px solid #f0f0f0;
}

.credential-label {
    font-size: 0.95rem;
    color: #1a1a1a;
    font-weight: 400;
    letter-spacing: 0.5px;
}

/* Section Headers */
.section-header {
    text-align: center;
    margin-bottom: 80px;
}

.section-header h2 {
    font-size: 2.8rem;
    font-weight: 300;
    margin-bottom: 20px;
    letter-spacing: -0.3px;
}

.section-header p {
    font-size: 1.2rem;
    color: #666666;
    max-width: 500px;
    margin: 0 auto;
    line-height: 1.6;
}

/* Approach Section */
.about-approach {
    padding: 100px 0;
    background: #fafafa;
}

.process-flow-horizontal {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap: 40px;
    max-width: 1200px;
    margin: 0 auto;
}

.process-step-horizontal {
    text-align: center;
    transition: transform 0.3s ease;
}

.process-step-horizontal:hover {
    transform: translateY(-5px);
}

.process-icon {
    width: 80px;
    height: 80px;
    background: #ffffff;
    border: 2px solid #f0f0f0;
    border-radius: 50%;
    margin: 0 auto 20px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    transition: all 0.3s ease;
}

.process-icon:hover {
    border-color: #d4af37;
    box-shadow: 0 0 20px rgba(212, 175, 55, 0.3);
}

.icon-symbol {
    position: relative;
    transition: all 0.3s ease;
    font-size: 2.5rem;
    font-weight: 300;
    color: #1a1a1a;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%;
}

.icon-symbol.phi {
    font-size: 2rem;
    font-weight: 300;
    color: #1a1a1a;
    letter-spacing: -2px;
}

.process-icon:hover .icon-symbol {
    color: #d4af37;
    text-shadow: 0 0 10px rgba(212, 175, 55, 0.5);
}

.icon-symbol.spiral {
    width: 30px;
    height: 30px;
    border: 2px solid #1a1a1a;
    border-radius: 50%;
    border-top-color: transparent;
    border-right-color: transparent;
    transform: rotate(-45deg);
}

.process-icon:hover .icon-symbol.spiral {
    border-color: #d4af37;
    border-top-color: transparent;
    border-right-color: transparent;
    box-shadow: 0 0 15px rgba(212, 175, 55, 0.4);
}

.icon-symbol.cube {
    width: 30px;
    height: 30px;
    position: relative;
    transform: rotate(-45deg);
}

.icon-symbol.cube::before {
    content: '';
    position: absolute;
    width: 20px;
    height: 20px;
    border: 2px solid #1a1a1a;
    background: rgba(255, 255, 255, 0.9);
    top: 0;
    left: 0;
    z-index: 2;
}

.icon-symbol.cube::after {
    content: '';
    position: absolute;
    width: 20px;
    height: 20px;
    border: 2px solid #1a1a1a;
    background: rgba(240, 240, 240, 0.8);
    top: -8px;
    left: 8px;
    z-index: 1;
}

.process-icon:hover .icon-symbol.cube::before {
    border-color: #d4af37;
    background: rgba(212, 175, 55, 0.1);
}

.process-icon:hover .icon-symbol.cube::after {
    border-color: #d4af37;
    background: rgba(212, 175, 55, 0.2);
}

.icon-symbol.harmony {
    width: 30px;
    height: 30px;
    border: 2px solid #1a1a1a;
    border-radius: 50%;
    position: relative;
}

.icon-symbol.harmony::before {
    content: '';
    position: absolute;
    width: 15px;
    height: 15px;
    background: #1a1a1a;
    border-radius: 50%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.process-icon:hover .icon-symbol.harmony {
    border-color: #d4af37;
    box-shadow: 0 0 15px rgba(212, 175, 55, 0.4);
}

.process-icon:hover .icon-symbol.harmony::before {
    background: #d4af37;
}

.process-step-horizontal h4 {
    font-size: 1.3rem;
    font-weight: 500;
    margin-bottom: 15px;
    color: #1a1a1a;
}

.process-step-horizontal p {
    font-size: 1rem;
    color: #666666;
    line-height: 1.6;
}

/* Global Expertise Section */
.about-global {
    padding: 100px 0;
    background: #ffffff;
}

.markets-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 40px;
    max-width: 1000px;
    margin: 60px auto 0;
}

.market-card {
    background: #ffffff;
    padding: 40px 30px;
    border-radius: 12px;
    border: 1px solid #f0f0f0;
    text-align: center !important;
    transition: all 0.3s ease;
}

.market-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.1);
    border: 1px solid #d4af37;
}

.market-flag {
    width: 70px;
    height: 70px;
    background: #ffffff;
    border-radius: 50%;
    margin: 0 auto 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #1a1a1a;
    font-size: 1.8rem;
    font-weight: 300;
    position: relative;
    transition: all 0.3s ease;
}

.market-flag.usa::before {
    content: 'EN';
}

.market-flag.france::before {
    content: 'FR';
}

.market-flag.spain::before {
    content: 'ES';
}

.market-card:hover .market-flag {
color: #d4af37;
text-shadow: 0 0 10px rgba(212, 175, 55, 0.5);
}

.market-card h3 {
font-size: 1.5rem;
font-weight: 500;
margin-bottom: 20px;
color: #1a1a1a;
text-align: center !important;
}

.market-card p {
font-size: 1rem;
color: #666666;
line-height: 1.6;
    line-height: 1.6;
}

.market-badge {
    position: absolute;
    top: 10px;
    right: 10px;
    width: 30px;
    height: 30px;
    background: #1a1a1a;
    color: #ffffff;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 0.8rem;
    font-weight: 500;
    z-index: 2;
}

/* Capabilities Section */
.about-capabilities {
    padding: 100px 0;
    background: #fafafa;
}

.capabilities-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 40px;
}

.capability-card {
    background: #ffffff;
    padding: 40px 30px;
    border-radius: 12px;
    border: 1px solid #f0f0f0;
    text-align: center !important;
    transition: all 0.3s ease;
}

.capability-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.1);
    border: 1px solid #d4af37;
}

.capability-card:hover .capability-icon {
    filter: none;
    color: #d4af37;
    text-shadow: 0 0 10px rgba(212, 175, 55, 0.5);
}

.capability-icon {
    width: 70px;
    height: 70px;
    background: #ffffff;
    border-radius: 50%;
    margin: 0 auto 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #1a1a1a;
    font-size: 2.5rem;
    font-weight: 300;
    position: relative;
    transition: all 0.3s ease;
    filter: grayscale(100%);
}

.capability-icon.strategy::before {
    content: '';
    position: absolute;
    width: 24px;
    height: 24px;
    border: 2px solid #ffffff;
    border-radius: 50%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.capability-icon.creative::before {
    content: '';
    position: absolute;
    width: 24px;
    height: 24px;
    background: linear-gradient(45deg, transparent 40%, #ffffff 40%, #ffffff 60%, transparent 60%);
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.capability-icon.digital::before {
    content: '';
    position: absolute;
    width: 24px;
    height: 18px;
    border: 2px solid #ffffff;
    border-radius: 4px;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.capability-icon.cultural::before {
    content: '';
    position: absolute;
    width: 24px;
    height: 24px;
    border: 2px solid #ffffff;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.capability-icon.cultural::after {
    content: '';
    position: absolute;
    width: 12px;
    height: 12px;
    background: #ffffff;
    border-radius: 50%;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.capability-card h3 {
    font-size: 1.5rem;
    font-weight: 500;
    margin-bottom: 5px;
    text-align: center !important;
    margin-left: auto !important;
}

.capability-card p {
    font-size: 1rem;
    color: #666666;
    line-height: 1.6;
}

/* Force center specific card titles only */
.solution-card h3,
.solution-header h3 {
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
    display: block !important;
    width: 100% !important;
}
.about-founder {
    padding: 100px 0;
    background: #ffffff;
}

.founder-content {
    display: grid;
    grid-template-columns: 300px 1fr;
    gap: 60px;
    align-items: start;
}

.founder-image {
    display: flex;
    justify-content: center;
    margin-left: 20px;
}

.founder-photo-placeholder {
    width: 400px;
    height: 400px;
    background: #f8f8f8;
    border-radius: 2px;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    border: 2px solid #f0f0f0;
}

.photo-icon {
    font-size: 4rem;
    margin-bottom: 20px;
    opacity: 0.3;
    display: none;
}

.founder-photo-placeholder p {
    color: #999999;
    font-size: 1.1rem;
    font-weight: 300;
}

.story-header h2 {
    font-size: 2.5rem;
    font-weight: 400;
    margin-bottom: 20px;
    color: #1a1a1a;
}

.story-header p {
    font-size: 1.2rem;
    color: #666666;
    margin-bottom: 40px;
}

.story-content p {
    font-size: 1.1rem;
    line-height: 1.8;
    color: #666666;
    margin-bottom: 20px;
}

/* Client Success Section */
.about-clients {
    padding: 100px 0;
    background: #fafafa;
}

.client-testimonials {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));
    gap: 40px;
}

.testimonial-card {
    background: #ffffff;
    padding: 50px;
    border-radius: 2px;
    border: 1px solid #f0f0f0;
    position: relative;
}

.testimonial-card::before {
    content: '"';
    position: absolute;
    top: 20px;
    left: 30px;
    font-size: 4rem;
    color: #666666;
    opacity: 0.3;
    font-family: Georgia, serif;
}

.testimonial-content blockquote {
    font-size: 1.3rem;
    line-height: 1.6;
    color: #1a1a1a;
    margin-bottom: 30px;
    font-style: italic;
    font-weight: 300;
}

.testimonial-content cite {
    font-size: 1rem;
    color: #666666;
    font-style: normal;
}

.testimonial-content strong {
    color: #1a1a1a;
    font-weight: 500;
}

/* Network Excellence Section */
.about-network {
    padding: 100px 0;
    background: #fafafa;
}

.network-visualization {
    position: relative;
    height: 400px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 30px 0;
}

.network-hub, .network-node {
    animation: networkFloat 4s ease-in-out infinite;
}

.hub-center:hover {
    background: #d4af37;
    box-shadow: 0 0 20px rgba(212, 175, 55, 0.4);
}

@keyframes networkFloat {
    0%, 100% {
        transform: translateY(0px);
    }
    50% {
        transform: translateY(-5px);
    }
}

.curated-statement {
    text-align: center;
    max-width: 800px;
    margin: 0 auto;
}

.curated-statement h3 {
    font-size: 2rem;
    font-weight: 300;
    margin-bottom: 30px;
    color: #1a1a1a;
    letter-spacing: -1px;
}

.curated-statement p {
    font-size: 1.2rem;
    line-height: 1.7;
    color: #666666;
    max-width: 600px;
    margin: 0 auto;
}

.network-hub {
    position: relative;
    width: 300px;
    height: 300px;
}

.hub-center {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 20px;
    height: 20px;
    background: #1a1a1a;
    border-radius: 50%;
    z-index: 10;
    box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
}

.network-node {
    position: absolute;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s ease;
}

.network-node.strategic {
    top: 0;
    left: 50%;
    transform: translateX(-50%);
}

.network-node.creative {
    top: 50%;
    right: 0;
    transform: translateY(-50%);
}

.network-node.technical {
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
}

.network-node.cultural {
    top: 50%;
    left: 0;
    transform: translateY(-50%);
}

.node-dot {
    width: 20px;
    height: 20px;
    background: #999999;
    border-radius: 50%;
    position: relative;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
}

.network-node:hover .node-dot {
    background: #d4af37;
    box-shadow: 0 0 15px rgba(212, 175, 55, 0.6);
    transform: scale(1.1);
}

/* Connection Section */
.about-connection {
    padding: 100px 0;
    background: #000000;
    color: #ffffff;
}

.connection-header {
    text-align: center;
    margin-bottom: 60px;
}

.connection-header h2 {
    font-size: 2.8rem;
    font-weight: 300;
    margin-bottom: 20px;
    color: #ffffff;
}

.connection-header p {
    font-size: 1.2rem;
    color: #cccccc;
    max-width: 600px;
    margin: 0 auto;
    line-height: 1.6;
}

.connection-benefits {
    display: flex;
    justify-content: center;
    gap: 40px;
    margin-bottom: 40px;
    flex-wrap: wrap;
}

.connection-benefits .benefit-item {
    display: flex;
    align-items: center;
    gap: 15px;
}

.connection-benefits .benefit-icon {
    width: 12px;
    height: 12px;
    background: #ffffff;
    border-radius: 50%;
    flex-shrink: 0;
}

.connection-benefits .benefit-text {
    font-size: 1rem;
    color: #ffffff;
    font-weight: 300;
}

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

/* Duplicate market tag styles removed - using the enhanced version at end of file */

.connection-primary {
    display: inline-block;
    background: #ffffff;
    color: #1a1a1a;
    padding: 15px 40px;
    border-radius: 2px;
    text-decoration: none;
    font-weight: 500;
    font-size: 1rem;
    letter-spacing: 0.5px;
    transition: all 0.3s ease;
}

.connection-primary:hover {
    background: #1a1a1a;
    color: #ffffff;
    transform: translateY(-2px);
}

/* Responsive Design */
@media (max-width: 768px) {
    .about-hero h1 {
        font-size: 2.5rem;
    }
    
    .about-hero-subtitle {
        font-size: 1.1rem;
    }
    
    .about-hero-credentials {
        gap: 20px;
    }
    
    .section-header h2 {
        font-size: 2.2rem;
    }
    
    .approach-content,
    .global-content,
    .founder-content,
    .network-content {
        grid-template-columns: 1fr;
        gap: 60px;
    }
    
    .capabilities-grid {
        grid-template-columns: 1fr;
    }
    
    .client-testimonials {
        grid-template-columns: 1fr;
    }
    
    .connection-benefits {
        flex-direction: column;
        gap: 20px;
    }
}

@media (max-width: 480px) {
    .about-hero {
        padding: 80px 0 60px;
    }
    
    .about-hero h1 {
        font-size: 2rem;
    }
    
    .section-header {
        margin-bottom: 60px;
    }
    
    .section-header h2 {
        font-size: 1.8rem;
    }
    
    .founder-photo-placeholder {
        width: 300px;
        height: 300px;
    }
    
    .testimonial-card {
        padding: 30px;
    }
}

/* Features Section Styling */
.features-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 30px;
    margin-top: 60px;
}

.feature-card {
    background: #ffffff;
    padding: 40px 30px;
    border-radius: 8px;
    transition: all 0.3s ease;
    text-align: center !important;
    border: none;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05);
}

.feature-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.1);
}

.feature-header {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
    margin-bottom: 20px;
}

.feature-dot {
    width: 8px;
    height: 8px;
    background: #1a1a1a;
    border-radius: 50%;
    flex-shrink: 0;
}

.feature-card h4 {
    font-size: 1.2rem;
    font-weight: 400;
    color: #1a1a1a;
    margin: 0;
    letter-spacing: 0.5px;
}

.feature-line {
    width: 60px;
    height: 2px;
    background: #e0e0e0;
    margin: 0 auto;
}

/* Responsive for Features */
@media (max-width: 768px) {
    .features-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }
    
    .feature-card {
        padding: 30px 20px;
    }
    
    .feature-header {
        gap: 12px;
    }
    
    .feature-card h4 {
        font-size: 1.1rem;
    }
}

/* ====================================================
   BLOG META SECTION - Simplified Clean Layout
=================================================== */

.blog-meta-section {
    padding: 60px 0 40px 0;
    background: #ffffff;
    border-bottom: 1px solid #f0f0f0;
}

.blog-meta-content {
    max-width: 800px;
    margin: 0 auto;
    padding: 0 20px;
}

.blog-title {
    font-size: 42px;
    line-height: 1.4;
    font-weight: 300;
    color: #000;
    margin-bottom: 20px;
    font-family: 'Helvetica Neue', sans-serif;
}

.blog-meta-info {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 30px;
    padding-bottom: 20px;
    border-bottom: 1px solid #f0f0f0;
}

.meta-left {
    display: flex;
    align-items: center;
    font-size: 14px;
    color: #666;
    font-family: 'Helvetica Neue', sans-serif;
}

.meta-separator {
    margin: 0 12px;
    color: #555;
}

.blog-actions {
    display: flex;
    gap: 8px;
}

.btn-blog-action {
    padding: 8px 16px;
    background: #ffffff;
    border: 1px solid #f0f0f0;
    border-radius: 2px;
    font-size: 12px;
    font-weight: 500;
    color: #666;
    cursor: pointer;
    transition: all 0.2s ease;
    font-family: 'Helvetica Neue', sans-serif;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.btn-blog-action:hover {
    background: #f8f8f8;
    border-color: #555;
    color: #000;
}

.blog-subtitle {
    margin-bottom: 40px;
}

.blog-subtitle p {
    font-size: 18px;
    line-height: 1.6;
    color: #555;
    font-family: Georgia, serif;
    font-style: italic;
}

/* ====================================================
   PROJECTS ARCHIVE - Apple/Chanel Luxury Design
=================================================== */

.projects-filter {
    padding: 60px 0 40px 0;
    background: #ffffff;
    border-bottom: 1px solid #f0f0f0;
}

.filter-content {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

.filter-header h3 {
    font-size: 1.2rem;
    font-weight: 400;
    color: #333;
    margin-bottom: 24px;
    font-family: 'Helvetica Neue', sans-serif;
    letter-spacing: -0.5px;
}

.filter-options {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    align-items: center;
}

.filter-tag {
    display: inline-block;
    padding: 10px 20px;
    background: #ffffff;
    border: 1px solid #f0f0f0;
    border-radius: 2px;
    font-size: 12px;
    font-weight: 500;
    color: #666;
    text-decoration: none;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    transition: all 0.2s ease;
    font-family: 'Helvetica Neue', sans-serif;
}

.filter-tag:hover {
    background: #f8f8f8;
    border-color: #333;
    color: #000;
}

.filter-tag.active {
    background: #000;
    border-color: #000;
    color: #fff;
}

.projects-grid {
    padding: 80px 0 100px 0;
    background: #ffffff;
}

.projects-content {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

.projects-grid-container {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));
    gap: 60px;
    margin-bottom: 80px;
}

.project-card {
    display: flex;
    flex-direction: column;
    background: #ffffff;
    border-radius: 0;
    overflow: hidden;
    transition: all 0.3s ease;
}

.project-card:hover {
    transform: translateY(-2px);
}

.project-visual {
    position: relative;
    width: 100%;
    height: 280px;
    overflow: hidden;
}

.project-image {
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: relative;
    transition: all 0.3s ease;
}

.project-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.7);
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: all 0.3s ease;
}

.project-card:hover .project-overlay {
    opacity: 1;
}

.project-link {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #ffffff;
    text-decoration: none;
    font-size: 14px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    font-family: 'Helvetica Neue', sans-serif;
    transition: all 0.2s ease;
}

.project-link:hover {
    color: #ffffff;
    transform: translateX(4px);
}

.link-arrow {
    font-size: 16px;
    transition: transform 0.2s ease;
}

.project-link:hover .link-arrow {
    transform: translateX(4px);
}

.project-info {
    padding: 40px 0 0 0;
}

.project-client {
    font-size: 12px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    color: #666;
    margin-bottom: 12px;
    font-family: 'Helvetica Neue', sans-serif;
}

.project-title {
    margin: 0 0 20px 0;
    line-height: 1.3;
}

.project-title a {
    font-size: 1.8rem;
    font-weight: 300;
    color: #000;
    text-decoration: none !important;
    transition: color 0.2s ease;
    font-family: 'Helvetica Neue', sans-serif;
    letter-spacing: -1px;
}

.project-title a:hover {
    color: #333;
}

/* Universal rule - Remove ALL underlines from related projects section */
.featured-projects a,
.featured-projects a:hover,
.featured-projects a:focus,
.featured-projects a:visited,
.related-projects a,
.related-projects a:hover,
.related-projects a:focus,
.related-projects a:visited,
.featured-projects * a,
.featured-projects * a:hover,
.featured-projects * a:focus,
.featured-projects * a:visited,
.related-projects * a,
.related-projects * a:hover,
.related-projects * a:focus,
.related-projects * a:visited {
    text-decoration: none !important;
    border-bottom: none !important;
    box-shadow: none !important;
}

/* Force no underlines on all related project links - MAXIMUM SPECIFICITY */
.featured-project-link,
.featured-project-link:hover,
.featured-project-link:focus,
.featured-project-link:visited,
.project-card a,
.project-card a:hover,
.project-card a:focus,
.project-card a:visited,
.featured-projects .project-title a,
.featured-projects .project-title a:hover,
.featured-projects .project-title a:focus,
.featured-projects .project-title a:visited,
.related-projects .project-title a,
.related-projects .project-title a:hover,
.related-projects .project-title a:focus,
.related-projects .project-title a:visited,
.capability-tag,
.capability-tag:hover,
.capability-tag:focus,
.capability-tag:visited,
.insight-capabilities .capability-tag,
.insight-capabilities .capability-tag:hover,
.insight-capabilities .capability-tag:focus,
.insight-capabilities .capability-tag:visited {
    text-decoration: none !important;
    border-bottom: none !important;
}

.project-meta {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.project-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.tag {
    display: inline-block;
    padding: 4px 12px;
    background: #f8f8f8;
    color: #666;
    font-size: 11px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border-radius: 2px;
    font-family: 'Helvetica Neue', sans-serif;
}

.tag.industry {
    background: #f0f4f8;
    color: #4a5568;
}

.tag.market {
    background: #f8f4f0;
    color: #8b5a3c;
}

.no-projects {
    text-align: center;
    padding: 80px 0;
}

.no-projects h3 {
    font-size: 1.8rem;
    font-weight: 300;
    color: #333;
    margin-bottom: 16px;
    font-family: 'Helvetica Neue', sans-serif;
    letter-spacing: -0.5px;
}

.no-projects p {
    font-size: 1rem;
    line-height: 1.6;
}

/* ====================================================
   INSIGHT CATEGORIES & NAVIGATION - Apple/Chanel Design
=================================================== */

/* ====================================================
   INSIGHT ARTICLE CONTENT - Apple/Chanel Design
=================================================== */

/* Full Width Layout */
.insight-layout-full {
    display: flex;
    flex-direction: column;
    max-width: 100%;
}

.insight-main-full {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

.insight-sidebar {
    display: none !important;
}

/* Article Typography - Apple/Chanel Style */
.insight-article {
    font-family: 'Helvetica Neue', sans-serif;
    font-size: 1.1rem;
    line-height: 1.7;
    color: #333;
    margin-bottom: 60px;
    text-align: left;
    max-width: 700px;
    margin-left: auto;
    margin-right: auto;
    padding: 0 20px;
}

.insight-article h1,
.insight-article h2,
.insight-article h3,
.insight-article h4,
.insight-article h5,
.insight-article h6 {
    font-family: 'Helvetica Neue', sans-serif;
    font-weight: 300;
    color: #000;
    margin-top: 2.5em;
    margin-bottom: 1.5em;
    letter-spacing: -0.5px;
    line-height: 1.3;
}

.insight-article h1 {
    font-size: 2.5rem;
    font-weight: 200;
}

.insight-article h2 {
    font-size: 2rem;
    font-weight: 300;
}

.insight-article h3 {
    font-size: 1.5rem;
    font-weight: 400;
}

.insight-article h4 {
    font-size: 1.3rem;
    font-weight: 500;
}

.insight-article p {
    margin-bottom: 1.5em;
    text-align: left;
    max-width: none;
}

/* Links - Professional Interactions */
.insight-article a {
    color: #000;
    text-decoration: none;
    border-bottom: 1px solid #000;
    transition: all 0.2s ease;
}

.insight-article a:hover {
    color: #666;
    border-bottom-color: #666;
}

/* Bullet Lists - Beautiful Styling */
.insight-article ul,
.insight-article ol {
    margin: 2em 0;
    padding-left: 2em;
}

.insight-article ul li,
.insight-article ol li {
    margin-bottom: 1em;
    padding-left: 0.5em;
    line-height: 1.6;
}

.insight-article ul {
    list-style: none;
    padding-left: 0;
}

.insight-article ul li {
    position: relative;
    padding-left: 1.5em;
}

.insight-article ul li:before {
    content: "•";
    position: absolute;
    left: 0;
    color: #000;
    font-size: 1.2em;
    font-weight: 300;
    line-height: 1;
}

.insight-article ol {
    counter-reset: item;
}

.insight-article ol li {
    counter-increment: item;
    list-style: none;
}

.insight-article ol li:before {
    content: counter(item) ".";
    position: absolute;
    left: -2em;
    color: #000;
    font-weight: 500;
    font-family: 'Helvetica Neue', sans-serif;
}

/* Blockquotes */
.insight-article blockquote {
    margin: 2em 0;
    padding: 1em 1.5em;
    border-left: 3px solid #000;
    font-style: italic;
    font-size: 1.1rem;
    color: #555;
    background: #f8f8f8;
}

/* Strong/Bold */
.insight-article strong,
.insight-article b {
    font-weight: 600;
    color: #000;
}

/* Emphasis */
.insight-article em,
.insight-article i {
    font-style: italic;
    color: #444;
}

/* Responsive Design */
@media (max-width: 768px) {
    .insight-article {
        font-size: 1rem;
        line-height: 1.6;
    }
    
    .insight-article h1 {
        font-size: 2rem;
    }
    
    .insight-article h2 {
        font-size: 1.6rem;
    }
    
    .insight-article h3 {
        font-size: 1.3rem;
    }
    
    .insight-article h4 {
        font-size: 1.1rem;
    }
}

@media (max-width: 480px) {
    .insight-article {
        font-size: 0.95rem;
        line-height: 1.5;
    }
    
    .insight-article h1 {
        font-size: 1.8rem;
    }
    
    .insight-article h2 {
        font-size: 1.4rem;
    }
    
    .insight-article h3 {
        font-size: 1.2rem;
    }
    
    .insight-article h4 {
        font-size: 1.05rem;
    }
}

/* INSIGHT CATEGORIES */
.insight-categories {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 24px;
}

.insight-category {
    display: inline-flex;
    align-items: center;
    padding: 8px 16px;
    background: #f8f8f8;
    color: #666;
    font-size: 11px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border-radius: 2px;
    font-family: 'Helvetica Neue', sans-serif;
    transition: all 0.2s ease;
    border: 1px solid #f0f0f0;
    cursor: pointer;
    text-decoration: none;
}

.insight-category:hover {
    background: #000 !important;
    color: #fff !important;
    border-color: #000 !important;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

/* INSIGHT NAVIGATION */
.insight-navigation {
    padding: 60px 0;
    background: #ffffff;
    border-top: 1px solid #f0f0f0;
    border-bottom: 1px solid #f0f0f0;
}

.insight-nav-content {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}


.insight-nav-prev,
.insight-nav-next {
    display: flex;
    align-items: center;
    gap: 8px;
}

.insight-nav-prev {
    justify-self: flex-start;
}

.insight-nav-next {
    justify-self: flex-end;
}

.insight-nav-prev a,
.insight-nav-next a {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #000;
    text-decoration: none;
    font-size: 13px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    font-family: 'Helvetica Neue', sans-serif;
    transition: all 0.2s ease;
    padding: 12px 20px;
    border: 1px solid #f0f0f0;
    border-radius: 2px;
}

.insight-nav-prev a:hover,
.insight-nav-next a:hover {
    color: #333;
    border-color: #333;
}

.nav-arrow {
    font-size: 14px;
    transition: transform 0.2s ease;
}

.insight-nav-prev a:hover .nav-arrow,
.insight-nav-next a:hover .nav-arrow {
    transform: translateX(4px);
}

/* Project-Specific Styles */
.strategy-content,
.implementation-content,
.team-content,
.project-details-list {
    font-family: 'Helvetica Neue', sans-serif;
    font-size: 1.1rem;
    line-height: 1.7;
    color: #333;
    margin-bottom: 1.5em;
}

.strategy-content h2,
.implementation-content h2,
.team-content h2,
.project-details-list h2 {
    font-family: 'Helvetica Neue', sans-serif;
    font-weight: 300;
    color: #000;
    margin-bottom: 1.2em;
    font-size: 1.8rem;
    letter-spacing: -0.5px;
}

.strategy-content p,
.implementation-content p,
.team-content p,
.project-details-list p {
    margin-bottom: 1.5em;
}

.strategy-content ul,
.strategy-content ol,
.implementation-content ul,
.implementation-content ol {
    margin-bottom: 1.5em;
    padding-left: 2em;
}

.strategy-content li,
.implementation-content li {
    margin-bottom: 0.8em;
    line-height: 1.6;
}

.strategy-content a,
.implementation-content a,
.team-content a {
    color: #000;
    text-decoration: none;
    border-bottom: 1px solid #000;
    transition: all 0.2s ease;
}

.strategy-content a:hover,
.implementation-content a:hover,
.team-content a:hover {
    color: #333;
    border-bottom-color: #333;
}

/* Featured Project Metrics Grid - Applied to Project Results */
.featured-project-metrics .metrics-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
    gap: 16px;
    margin-bottom: 40px;
}

.featured-project-metrics .metric-item {
    background: linear-gradient(135deg, #ffffff 0%, #fafafa 100%);
    padding: 20px 16px;
    border-radius: 6px;
    text-align: center;
    font-family: 'Helvetica Neue', sans-serif;
    font-weight: 400;
    color: #000;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    border: 1px solid rgba(0, 0, 0, 0.08);
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.06);
    position: relative;
    overflow: hidden;
    min-height: 80px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.featured-project-metrics .metric-item::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 2px;
    background: linear-gradient(90deg, #000 0%, #333 100%);
    transform: scaleX(0);
    transition: transform 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

.featured-project-metrics .metric-item:hover {
    background: linear-gradient(135deg, #000000 0%, #1a1a1a 100%);
    color: #fff;
    transform: translateY(-4px) scale(1.01);
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.12);
    border-color: rgba(255, 255, 255, 0.1);
}

.featured-project-metrics .metric-item:hover::before {
    transform: scaleX(1);
}

.featured-project-metrics .metric-item strong {
    display: block;
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.8px;
    margin-bottom: 6px;
    line-height: 1.2;
    position: relative;
    z-index: 2;
}

.featured-project-metrics .metric-item p {
    font-size: 10px;
    font-weight: 300;
    color: #666;
    margin: 0;
    line-height: 1.3;
    position: relative;
    z-index: 2;
    transition: color 0.3s ease;
}

.featured-project-metrics .metric-item:hover p {
    color: rgba(255, 255, 255, 0.8);
}

.featured-project-metrics .metric-item:hover strong {
    color: #ffffff;
}

.featured-project-results {
    background: #fafafa;
    padding: 30px;
    border-radius: 2px;
    margin-top: 40px;
    border-left: 2px solid #1a1a1a;
}

.featured-project-results .results-header {
    font-weight: 400;
    color: #1a1a1a;
    margin-bottom: 12px;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.featured-project-results .results-content {
    color: #666666;
    line-height: 1.6;
    font-size: 1rem;
    font-weight: 300;
}

.testimonial-quote {
    font-family: 'Helvetica Neue', sans-serif;
    font-style: italic;
    font-size: 1.2rem;
    line-height: 1.6;
    color: #333;
    padding: 20px 0;
    border-left: 3px solid #000;
    margin: 20px 0;
    font-weight: 300;
}

/* Project Context & Actions Section - Compact 2-Column Layout */
.project-context-actions {
    padding: 60px 0;
    background: #ffffff;
}

.project-context-actions .section-header {
    text-align: center;
    margin-bottom: 40px;
}

.project-context-actions .section-header h2 {
    font-family: 'Helvetica Neue', sans-serif;
    font-size: 2.5rem;
    font-weight: 200;
    color: #000;
    margin-bottom: 16px;
    letter-spacing: -0.5px;
}

.project-context-actions .section-header p {
    font-family: 'Helvetica Neue', sans-serif;
    font-size: 1.2rem;
    color: #666;
    font-weight: 300;
    max-width: 600px;
    margin: 0 auto;
    line-height: 1.6;
}

.context-actions-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 40px;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

.context-column,
.actions-column {
    background: #fafafa;
    padding: 40px;
    border-radius: 2px;
    border: 1px solid #f0f0f0;
}

.context-block h3,
.actions-block h3 {
    font-family: 'Helvetica Neue', sans-serif;
    font-size: 1.5rem;
    font-weight: 300;
    color: #000;
    margin-bottom: 12px;
    letter-spacing: -0.3px;
}

.actions-description {
    font-family: 'Helvetica Neue', sans-serif;
    font-size: 1rem;
    color: #666;
    font-weight: 300;
    margin-bottom: 24px;
    line-height: 1.5;
}

.challenge-text {
    font-family: 'Helvetica Neue', sans-serif;
    font-size: 1rem;
    line-height: 1.6;
    color: #333;
    font-weight: 300;
    margin-bottom: 24px;
}

.challenge-text p {
    margin-bottom: 1em;
}

.context-details {
    margin-top: 24px;
}

.context-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 16px;
}

.context-item {
    font-family: 'Helvetica Neue', sans-serif;
    font-size: 0.9rem;
    color: #333;
    font-weight: 300;
}

.context-item strong {
    display: block;
    margin-bottom: 4px;
    color: #000;
    font-weight: 500;
    font-size: 0.85rem;
}

.context-tag {
    display: inline-block;
    padding: 3px 8px;
    background: #f0f0f0;
    color: #666;
    font-size: 10px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border-radius: 2px;
    margin-right: 6px;
    margin-bottom: 6px;
    text-decoration: none !important;
    transition: all 0.3s ease;
}

.context-tag-link:hover {
    background: #000;
    color: #fff;
    transform: translateY(-1px);
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
    text-decoration: none !important;
}

/* Actions Sections */
.approach-section,
.implementation-section,
.capabilities-section,
.team-section {
    margin-bottom: 24px;
}

.approach-section h4,
.implementation-section h4,
.capabilities-section h4,
.team-section h4 {
    font-family: 'Helvetica Neue', sans-serif;
    font-size: 1.1rem;
    font-weight: 500;
    color: #000;
    margin-bottom: 12px;
    letter-spacing: -0.2px;
}

.approach-content,
.implementation-content,
.team-content {
    font-family: 'Helvetica Neue', sans-serif;
    font-size: 0.9rem;
    line-height: 1.6;
    color: #333;
    font-weight: 300;
}

.approach-content p,
.implementation-content p,
.team-content p {
    margin-bottom: 1em;
}

.capabilities-content p {
    font-family: 'Helvetica Neue', sans-serif;
    font-size: 0.9rem;
    line-height: 1.6;
    color: #333;
    font-weight: 300;
    margin-bottom: 12px;
}

.capabilities-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
}

.capability-tag {
    display: inline-block;
    padding: 4px 10px;
    background: #f8f8f8;
    color: #666;
    font-size: 10px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border-radius: 2px;
    font-family: 'Helvetica Neue', sans-serif;
    border: 1px solid #f0f0f0;
    cursor: pointer;
    text-decoration: none;
    transition: all 0.3s ease;
}

.capability-tag:hover {
    background: #000;
    color: #fff;
    border-color: #000;
    transform: translateY(-1px);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
}

.scope-content {
    font-family: 'Helvetica Neue', sans-serif;
    font-size: 1.1rem;
    line-height: 1.7;
    color: #333;
    font-weight: 300;
}

.scope-content p {
    margin-bottom: 1.5em;
}

/* Responsive Design */
@media (max-width: 768px) {
    .insight-categories {
        gap: 6px;
    }
    
    .insight-category {
        padding: 4px 12px;
        font-size: 10px;
    }
    
    /* Compact Context & Actions Responsive */
    .context-actions-grid {
        grid-template-columns: 1fr;
        gap: 24px;
    }
    
    .context-column,
    .actions-column {
        padding: 30px;
    }
    
    .project-context-actions {
        padding: 40px 0;
    }
    
    .project-context-actions .section-header h2 {
        font-size: 2rem;
    }
}
    
    .insight-nav-content {
        flex-direction: column;
        gap: 16px;
    }
    
    .insight-nav-prev,
    .insight-nav-next {
        align-self: stretch;
    }
    
    .insight-nav-prev a,
    .insight-nav-next a {
        justify-content: center;
    }
    
    .metrics-list {
        grid-template-columns: 1fr;
        gap: 15px;
    }
    
    .metric-item {
        padding: 15px;
    }
    
    .testimonial-quote {
        font-size: 1.1rem;
        padding: 15px 0;
    }

@media (max-width: 480px) {
    .insight-categories-section {
        margin-bottom: 24px;
    }
    
    .insight-categories-section h3 {
        font-size: 1.1rem;
        margin-bottom: 12px;
    }
    
    .insight-navigation {
        padding: 40px 0;
    }
    
    .insight-nav-prev a,
    .insight-nav-next a {
        padding: 10px 16px;
        font-size: 12px;
    }
}

@media (max-width: 480px) {
    .projects-filter {
        padding: 40px 0 30px 0;
    }
    
    .projects-grid {
        padding: 60px 0 80px 0;
    }
    
    .projects-grid-container {
        gap: 30px;
    }
    
    .project-visual {
        height: 200px;
    }
    
    .project-info {
        padding: 20px 0 0 0;
    }
}

@media (max-width: 480px) {
    .projects-filter {
        padding: 40px 0 30px 0;
    }
    
    .projects-grid {
        padding: 60px 0 80px 0;
    }
    
    .projects-grid-container {
        gap: 30px;
    }
    
    .project-visual {
        height: 200px;
    }
    
    .project-info {
        padding: 20px 0 0 0;
    }
    
    .project-title a {
        font-size: 1.3rem;
    }
}

/* ====================================================
   INSIGHTS ARCHIVE - Apple/Chanel Luxury Blog Design
=================================================== */

.insights-hero {
    padding: 140px 0 80px 0;
    background: #ffffff;
    text-align: center;
}

.insights-hero-content {
    max-width: 800px;
    margin: 0 auto;
    padding: 0 20px;
}

.insights-hero h1 {
    font-size: 3.2rem;
    font-weight: 200;
    color: #000;
    margin-bottom: 24px;
    font-family: 'Helvetica Neue', sans-serif;
    letter-spacing: -1px;
    line-height: 1.2;
}

.insights-hero p {
    font-size: 1.2rem;
    color: #666;
    margin-bottom: 0;
    font-family: 'Helvetica Neue', sans-serif;
    line-height: 1.6;
    font-weight: 300;
}

.insights-filter {
    padding: 60px 0 40px 0;
    background: #ffffff;
    border-bottom: 1px solid #f0f0f0;
}

.insights-listing {
    padding: 20px 0 25px 0;
    background: #ffffff;
}

.insights-content {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px;
}

.insights-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
    gap: 20px;
    margin-bottom: 20px;
}

.insight-card-link {
    text-decoration: none;
    color: inherit;
    display: block;
}

.insight-card {
    display: flex;
    flex-direction: column;
    background: #ffffff;
    border-radius: 0;
    overflow: hidden;
    transition: all 0.3s ease;
    border: 1px solid #f0f0f0;
}

.insight-card-link:hover .insight-card {
    transform: translateY(-2px);
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
}

.insight-visual {
    position: relative;
    width: 100%;
    height: 100px;
    overflow: hidden;
}

.insight-image {
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    position: relative;
    transition: all 0.3s ease;
}

.insight-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.7);
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    transition: all 0.3s ease;
}

.insight-card:hover .insight-overlay {
    opacity: 1;
}

.insight-link {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #ffffff;
    text-decoration: none;
    font-size: 14px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    font-family: 'Helvetica Neue', sans-serif;
    transition: all 0.2s ease;
}

.insight-link:hover {
    color: #ffffff;
    transform: translateX(4px);
}

.insight-content {
    padding: 0px 12px 12px 12px;
}

.insight-meta {
    display: flex;
    align-items: center;
    font-size: 11px;
    color: #666;
    margin-bottom: 12px;
    font-family: 'Helvetica Neue', sans-serif;
    font-weight: 400;
    flex-wrap: wrap;
    gap: 6px;
}

.insight-meta-separator {
    color: #999;
}

.insight-capabilities {
    margin: 0 0 8px 0;
}

.capability-tag {
    display: inline-block;
    padding: 6px 14px;
    background: #f8f8f8;
    color: #666;
    font-size: 11px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    border-radius: 2px;
    margin-right: 8px;
    margin-bottom: 0px;
    font-family: 'Helvetica Neue', sans-serif;
}

.insight-title {
    margin: 0 0 10px 0;
    line-height: 1.3;
}

.insight-title a {
    font-size: 1.6rem;
    font-weight: 300;
    color: #000;
    text-decoration: none;
    font-family: 'Helvetica Neue', sans-serif;
    letter-spacing: -0.5px;
    transition: color 0.2s ease;
    line-height: 1.3;
}

.insight-title a:hover {
    color: #333;
}

.insight-excerpt {
    margin-bottom: 24px;
}

.insight-excerpt p {
    font-size: 1rem;
    color: #666;
    line-height: 1.6;
    margin: 0;
    font-family: 'Helvetica Neue', sans-serif;
    font-weight: 300;
}

.insight-actions {
    margin-top: auto;
}

.insight-read-more {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #000;
    text-decoration: none;
    font-size: 13px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    font-family: 'Helvetica Neue', sans-serif;
    transition: all 0.2s ease;
}

.insight-read-more:hover {
color: #333;
transform: translateX(4px);
}

.insight-read-more span {
font-size: 14px;
transition: transform 0.2s ease;
}

.insight-read-more:hover span {
transform: translateX(4px);
}

.solution-title-link {
    color: inherit;
    text-decoration: none;
    font-weight: inherit;
    font-size: inherit;
}

.solution-title-link:hover {
    color: #d4af37;
}

/* ==========================================================
   HOME PAGE STYLES - Apple/Chanel Aesthetic
   ========================================================== */

/* Section Headers */
.section-header {
    text-align: center;
    margin-bottom: 60px;
}

.section-header h2 {
    font-size: 2.5rem;
    font-weight: 300;
    letter-spacing: 0.5px;
    color: #1a1a1a;
    margin-bottom: 20px;
}

.section-header p {
    font-size: 1.2rem;
    font-weight: 300;
    color: #666;
    max-width: 600px;
    margin: 0 auto;
    line-height: 1.6;
}

/* Simple fix for Our Capabilities title - Same as Our Holistic Approach */
.home-capabilities .section-header h2 {
    font-size: 2.2rem !important;
    font-weight: var(--font-weight-light) !important;
    margin-bottom: var(--spacing-15) !important;
    color: var(--color-gray-111) !important;
}

.capabilities-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
    gap: 40px;
    max-width: 1200px;
    margin: 0 auto;
}

.capability-icon {
    width: 60px;
    height: 60px;
    background: linear-gradient(135deg, #1a1a1a 0%, #333333 100%);
    border-radius: 50%;
    margin: 0 auto 30px;
    position: relative;
}

.capability-icon::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 24px;
    height: 24px;
    background: #ffffff;
    border-radius: 4px;
}

.capability-card h3 {
    font-size: 1.5rem;
    font-weight: 400;
    color: #1a1a1a;
    margin-bottom: 20px;
    letter-spacing: 0.3px;
}

.capability-card p {
    font-size: 1rem;
    color: #666;
    line-height: 1.6;
    margin-bottom: 30px;
    font-weight: 300;
}

.capability-link {
    display: inline-flex;
    align-items: center;
    color: #1a1a1a;
    text-decoration: none;
    font-weight: 400;
    font-size: 0.9rem;
    letter-spacing: 1px;
    transition: all 0.3s ease;
}

.capability-link span {
    font-size: 1.2rem;
    margin-left: 8px;
    transition: transform 0.3s ease, color 0.3s ease;
}

.capability-link:hover span {
    transform: translateX(4px);
    color: #d4af37;
}

/* Home Projects Section */
.home-projects {
    padding: 100px 0;
    background: #fafafa;
}

.projects-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(380px, 1fr));
    gap: 40px;
    max-width: 1200px;
    margin: 0 auto;
}

.project-card {
    background: linear-gradient(135deg, #ffffff 0%, #f8f9fa 100%);
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 
        0 2px 8px rgba(0, 0, 0, 0.04),
        0 1px 2px rgba(0, 0, 0, 0.06);
    border: 1px solid rgba(0, 0, 0, 0.06);
    transition: all 0.4s ease;
    position: relative;
    display: flex;
    flex-direction: column;
    padding: 40px;
    min-height: 200px;
}

.project-card:hover {
    transform: translateY(-8px);
    box-shadow: 
        0 20px 40px rgba(0, 0, 0, 0.08),
        0 8px 16px rgba(0, 0, 0, 0.04);
    border: 1px solid #d4af37;
}

.project-card h3 {
    font-size: 1.5rem;
    font-weight: 400;
    color: #1a1a1a;
    margin-bottom: 15px;
    letter-spacing: 0.3px;
}

.project-card p {
    font-size: 0.95rem;
    color: #666666;
    line-height: 1.6;
    margin-bottom: 20px;
    flex-grow: 1;
}

.project-link {
    display: inline-flex;
    align-items: center;
    color: #1a1a1a;
    text-decoration: none;
    font-weight: 400;
    font-size: 0.9rem;
    letter-spacing: 1px;
    transition: all 0.3s ease;
}

.project-link:hover {
    color: #d4af37;
}

.project-link span {
    font-size: 1.2rem;
    margin-left: 8px;
    transition: transform 0.3s ease, color 0.3s ease;
}

.project-link:hover span {
    transform: translateX(4px);
    color: #d4af37;
}

/* Home Solutions Section */
.home-solutions {
    padding: 100px 0;
    background: #ffffff;
}

.solutions-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(500px, 1fr));
    gap: 40px;
    max-width: 1200px;
    margin: 0 auto;
}

/* Archive pages - force wider cards */
.archive .solutions-grid,
body.archive .solutions-grid,
.archive-type .solutions-grid {
    grid-template-columns: repeat(auto-fit, minmax(500px, 1fr)) !important;
}

.solution-header {
    display: flex;
    align-items: center;
    margin-bottom: 30px;
}

.solution-icon {
    width: 50px;
    height: 50px;
    background: linear-gradient(135deg, #1a1a1a 0%, #333333 100%);
    border-radius: 50%;
    margin-right: 20px;
    position: relative;
    flex-shrink: 0;
}

.solution-icon::before {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 20px;
    height: 20px;
    background: #ffffff;
    border-radius: 3px;
}

.solution-header h3 {
    font-size: 1.3rem;
    font-weight: 400;
    color: #1a1a1a;
    letter-spacing: 0.3px;
    margin: 0;
}

.solution-content p {
    font-size: 1rem;
    color: #666;
    line-height: 1.6;
    margin-bottom: 20px;
    font-weight: 300;
}

.solution-arrow {
    font-size: 1.2rem;
    color: #1a1a1a;
    transition: transform 0.3s ease, color 0.3s ease;
    text-align: center;
    text-decoration: none;
}

.solution-card:hover .solution-arrow {
    transform: translateX(4px);
    color: #d4af37;
}

/* Home Insights Section */
.home-insights {
    padding: 100px 0;
    background: #fafafa;
}

.insights-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
    gap: 40px;
    max-width: 1200px;
    margin: 0 auto;
}

.insight-card {
    background: #ffffff;
    border-radius: 16px;
    padding: 40px;
    border: 1px solid rgba(0, 0, 0, 0.06);
    transition: all 0.4s ease;
}

.insight-card:hover {
    transform: translateY(-8px);
    box-shadow: 
        0 20px 40px rgba(0, 0, 0, 0.08),
        0 8px 16px rgba(0, 0, 0, 0.04);
    border: 1px solid #d4af37;
}

.insight-card h3 {
    font-size: 1.5rem;
    font-weight: 400;
    color: #1a1a1a;
    margin-bottom: 15px;
    letter-spacing: 0.3px;
}

.insight-reading-time {
    font-size: 0.8rem;
    color: #999;
    margin-bottom: 20px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.insight-card p {
    font-size: 1rem;
    color: #666;
    line-height: 1.6;
    margin-bottom: 30px;
    font-weight: 300;
}

.insight-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: #1a1a1a;
    text-decoration: none;
    font-weight: 500;
    font-size: 0.95rem;
    transition: color 0.3s ease;
}

.insight-link:hover {
    color: #D4AF37 !important;
}

.single-solution .insight-link:hover {
    color: #D4AF37 !important;
}

.template-capability-showcase .insight-link:hover {
    color: #D4AF37 !important;
}

.insight-link span {
    transition: transform 0.3s ease;
}

.insight-link:hover span {
    transform: translateX(4px);
    color: #d4af37;
}

/* Home Page Capabilities - COMPLETELY FRESH CLASSES - HIGHEST PRIORITY */
body .home-capabilities-grid {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 30px !important;
    margin-top: 40px !important;
}

body .home-capability-card {
    background: white !important;
    border: 1px solid #e0e0e0 !important;
    border-radius: 12px !important;
    padding: 40px !important;
    text-align: center !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08) !important;
    transition: all 0.3s ease !important;
    position: relative !important;
    cursor: pointer !important;
    display: block !important;
}

body .home-capability-card h3 {
    margin: 0 0 20px 0 !important;
    font-size: 1.2rem !important;
    color: #111 !important;
}

body .home-capability-actions {
    position: absolute !important;
    bottom: 20px !important;
    right: 20px !important;
}

body .home-capability-link {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 40px !important;
    height: 40px !important;
    background: #d4af37 !important;
    color: white !important;
    border-radius: 50% !important;
    text-decoration: none !important;
    font-size: 18px !important;
    transition: all 0.3s ease !important;
}

body .home-capability-link:hover {
    background: #bfa14b !important;
    transform: scale(1.1) !important;
}

/* Responsive for mobile */
@media (max-width: 768px) {
    body .home-capabilities-grid {
        grid-template-columns: 1fr !important;
        gap: 20px !important;
    }
}

/* Home Page Capabilities - Single Row Layout - MAXIMUM OVERRIDE */
.home-capabilities .solutions-grid {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 30px !important;
    margin-top: 40px !important;
    max-width: none !important;
    minmax: unset !important;
}

.home-capabilities .solution-card {
    width: 100% !important;
    min-width: unset !important;
    max-width: none !important;
}

/* Override any existing flexbox styles - HIGHEST SPECIFICITY */
body main .home-capabilities .solutions-grid,
main section.home-capabilities .solutions-grid {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 30px !important;
    margin-top: 40px !important;
    max-width: none !important;
    flex-direction: unset !important;
    justify-content: unset !important;
}

/* Responsive for mobile */
@media (max-width: 768px) {
    .home-capabilities .solutions-grid {
        grid-template-columns: 1fr !important;
        gap: 20px !important;
    }
}

/* SIMPLE CSS TEST - SHOULD DEFINITELY WORK */
.test-red {
    background: red !important;
    color: white !important;
    padding: 20px !important;
    border: 3px solid blue !important;
    font-size: 24px !important;
}

/* HOME PAGE CAPABILITIES - MAXIMUM OVERRIDE */
body .home-capabilities table {
    border: 2px solid #d4af37 !important;
    background: #f0f0f0 !important;
    width: 100% !important;
    border-collapse: separate !important;
    border-spacing: 20px !important;
}

body .home-capabilities table td {
    background: white !important;
    border: 2px solid #d4af37 !important;
    padding: 40px !important;
    text-align: center !important;
    vertical-align: top !important;
}

body .home-capabilities table td div {
    background: #d4af37 !important;
    color: white !important;
    padding: 20px !important;
    margin-bottom: 20px !important;
}

body .home-capabilities table td h2 {
    margin: 0 !important;
    font-size: 1.5rem !important;
    color: white !important;
}

body .home-capabilities table td p {
    font-size: 1.1rem !important;
    margin: 0 0 20px 0 !important;
}

body .home-capabilities table td div[style*="background: #d4af37"] {
    background: #d4af37 !important;
    padding: 12px 25px !important;
    border-radius: 20px !important;
    display: inline-block !important;
}

body .home-capabilities table td a {
    color: white !important;
    text-decoration: none !important;
    font-weight: bold !important;
}

/* Clean Minimal Legal Pages */
.legal-page {
    padding: 80px 0 160px !important;
    background: #ffffff;
}

body .legal-page {
    padding: 80px 0 160px !important;
}

.legal-content {
    max-width: 800px;
    margin: 0 auto 80px;
    padding: 0 20px;
}

body .legal-content {
    margin: 0 auto 80px !important;
}

.legal-content h1 {
    font-size: 2.5rem;
    font-weight: 300;
    color: #1a1a1a;
    margin-bottom: 40px;
    line-height: 1.2;
}

.legal-text h2 {
    font-size: 1.5rem;
    font-weight: 400;
    color: #1a1a1a;
    margin: 40px 0 20px 0;
    line-height: 1.3;
}

.legal-text h2:first-child {
    margin-top: 0;
}

.legal-text p {
    font-size: 1.1rem;
    line-height: 1.8;
    color: #555;
    margin-bottom: 20px;
    font-weight: 300;
}

.legal-text strong {
    color: #1a1a1a;
    font-weight: 500;
}

/* Responsive Design for Legal Pages */
@media (max-width: 768px) {
    .legal-page {
        padding: 60px 0;
    }
    
    .legal-content h1 {
        font-size: 2rem;
    }
    
    .legal-text h2 {
        font-size: 1.3rem;
    }
    
    .legal-text p {
        font-size: 1rem;
    }
}

/* Legal Pages Styling */
.legal-hero {
    background: linear-gradient(135deg, #1a1a1a 0%, #2d2d2d 100%);
    color: white;
    padding: 120px 0 80px;
    text-align: center;
}

.legal-hero-content {
    max-width: 800px;
    margin: 0 auto;
}

.legal-hero-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.2);
    padding: 8px 16px;
    border-radius: 20px;
    margin-bottom: 24px;
    font-size: 0.9rem;
    letter-spacing: 0.5px;
}

.legal-hero h1 {
    font-size: 3rem;
    font-weight: 300;
    margin-bottom: 20px;
    line-height: 1.2;
}

.legal-hero-subtitle {
    font-size: 1.2rem;
    font-weight: 300;
    opacity: 0.9;
    line-height: 1.6;
    max-width: 600px;
    margin: 0 auto;
}

.legal-content {
    padding: 80px 0;
    background: #ffffff;
}

.legal-content-wrapper {
    max-width: 800px;
    margin: 0 auto;
}

.legal-text {
    background: white;
    padding: 60px;
    border-radius: 0px;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.05);
}

.legal-content-inner h2 {
    font-size: 1.8rem;
    font-weight: 400;
    color: #1a1a1a;
    margin: 40px 0 20px 0;
    line-height: 1.3;
}

.legal-content-inner h2:first-child {
    margin-top: 0;
}

.legal-content-inner p {
    font-size: 1.1rem;
    line-height: 1.8;
    color: #555;
    margin-bottom: 20px;
    font-weight: 300;
}

.legal-content-inner strong {
    color: #1a1a1a;
    font-weight: 500;
}

/* Responsive Design for Legal Pages */
@media (max-width: 768px) {
    .legal-hero {
        padding: 80px 0 60px;
    }
    
    .legal-hero h1 {
        font-size: 2.2rem;
    }
    
    .legal-hero-subtitle {
        font-size: 1rem;
    }
    
    .legal-content {
        padding: 60px 0;
    }
    
    .legal-text {
        padding: 40px 30px;
    }
    
    .legal-content-inner h2 {
        font-size: 1.5rem;
    }
    
    .legal-content-inner p {
        font-size: 1rem;
    }
}

/* Home Markets Section */
.home-markets {
    padding: 100px 0;
    background: #ffffff;
}

.markets-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 30px;
    max-width: 1200px;
    margin: 0 auto;
}

.market-card h3 {
    font-size: 1.3rem;
    font-weight: 400;
    color: #1a1a1a;
    margin-bottom: 20px;
    letter-spacing: 0.3px;
}

.market-link {
    display: inline-flex;
    align-items: center;
    color: #1a1a1a;
    text-decoration: none;
    font-weight: 400;
    font-size: 0.9rem;
    letter-spacing: 1px;
    transition: all 0.3s ease;
}

.market-link span {
    font-size: 1.2rem;
    margin-left: 8px;
    transition: transform 0.3s ease, color 0.3s ease;
}

.market-link:hover span {
    transform: translateX(4px);
    color: #d4af37;
}

/* Home Results Section */
.home-results {
    padding: 100px 0;
    background: #f8f9fa;
    color: #1a1a1a;
}

.home-results .section-header h2 {
    color: #1a1a1a;
}

.home-results .section-header p {
    color: #666666;
}

.results-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 40px;
    max-width: 800px;
    margin: 0 auto;
}

.result-card {
    text-align: center;
    padding: 40px 20px;
}

.result-number {
    font-size: 3rem;
    font-weight: 300;
    color: #1a1a1a;
    margin-bottom: 10px;
    letter-spacing: 1px;
}

.result-label {
    font-size: 1.1rem;
    color: #666666;
    font-weight: 300;
    letter-spacing: 0.5px;
}

/* Home CTA Section */
.home-cta {
    padding: 100px 0;
    background: #1a1a1a;
    text-align: center;
}

.cta-content {
    margin-bottom: 60px;
}

.cta-content h2 {
    font-size: 2.5rem;
    font-weight: 300;
    color: #ffffff;
    margin-bottom: 20px;
    letter-spacing: 0.5px;
}

.cta-content p {
    font-size: 1.2rem;
    color: #cccccc;
    max-width: 600px;
    margin: 0 auto 40px auto;
    line-height: 1.6;
}

.cta-form {
    max-width: 100%;
    margin: 0 auto;
}

.cta-form-container {
    margin-top: 40px;
    max-width: 600px;
    margin-left: auto;
    margin-right: auto;
}

.cta-expanded-form {
    width: 100%;
}

.cta-form-grid {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.form-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
}

.form-row:has(.cta-textarea),
.form-row:has(.cta-primary) {
    grid-template-columns: 1fr;
}

.cta-textarea {
    resize: vertical;
    min-height: 120px;
    border: none !important;
    grid-column: 1 / -1;
    width: 100%;
}

.cta-input {
    background: #ffffff;
    color: #1a1a1a;
    border: 1px solid rgba(0, 0, 0, 0.1);
    padding: 16px 20px;
    border-radius: 0;
    font-size: 0.95rem;
    font-weight: 300;
    letter-spacing: 0.5px;
    transition: all 0.3s ease;
    font-family: inherit;
}

.cta-input:focus {
    outline: none;
    border-color: #1a1a1a;
    background: #ffffff;
    box-shadow: 0 0 0 2px rgba(26, 26, 26, 0.1);
}

.cta-input::placeholder {
    color: #999;
    font-weight: 300;
}

/* Responsive Design */
@media (max-width: 768px) {
    .section-header h2 {
        font-size: 2rem;
    }
    
    .capabilities-grid,
    .projects-grid,
    .solutions-grid,
    .insights-grid {
        grid-template-columns: 1fr;
        gap: 30px;
    }
    
    .markets-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
    }
    
    .results-grid {
        grid-template-columns: 1fr;
        gap: 30px;
    }
    
    .cta-actions {
        flex-direction: column;
        align-items: center;
        gap: 15px;
    }
    
    .cta-form-container {
        margin-top: 30px;
    }
    
    .form-row {
        grid-template-columns: 1fr;
        gap: 15px;
    }
    
    .capability-card,
    .project-card,
    .solution-card,
    .insight-card,
    .market-card {
        padding: 30px 25px;
    }
    
    .project-image {
        height: 200px;
    }
    
    .cta-content h2 {
        font-size: 2rem;
    }
}

.solution-arrow {
font-size: 1rem;
color: #1a1a1a;
transition: transform 0.4s ease;
margin-top: 10px;
}

.solution-card-link:hover .solution-arrow {
transform: translateX(4px);
color: #666666;
}

.no-insights {
text-align: center;
padding: 80px 0;
}

.no-insights h3 {
    font-size: 1.8rem;
    font-weight: 300;
    color: #333;
    margin-bottom: 16px;
    font-family: 'Helvetica Neue', sans-serif;
    letter-spacing: -0.5px;
}

.no-insights p {
    font-size: 1rem;
    color: #666;
    font-family: 'Helvetica Neue', sans-serif;
    line-height: 1.6;
}

/* Pagination */
.insights-pagination {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 16px;
    margin-top: 60px;
}

.pagination-link {
    display: flex;
    align-items: center;
    gap: 8px;
    padding: 12px 20px;
    background: #ffffff;
    border: 1px solid #f0f0f0;
    border-radius: 2px;
    color: #666;
    text-decoration: none;
    font-size: 13px;
    font-weight: 500;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    font-family: 'Helvetica Neue', sans-serif;
    transition: all 0.2s ease;
}

.pagination-link:hover {
    background: #f8f8f8;
    border-color: #333;
    color: #000;
}

.pagination-arrow {
    font-size: 14px;
}

.pagination-numbers {
    display: flex;
    gap: 8px;
}

.pagination-number {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    background: #ffffff;
    border: 1px solid #f0f0f0;
    border-radius: 2px;
    color: #666;
    text-decoration: none;
    font-size: 13px;
    font-weight: 500;
    font-family: 'Helvetica Neue', sans-serif;
    transition: all 0.2s ease;
}

.pagination-number:hover {
    background: #f8f8f8;
    border-color: #333;
    color: #000;
}

.pagination-number.current {
    background: #000;
    border-color: #000;
    color: #fff;
}

/* Responsive Design */
@media (max-width: 768px) {
    .insights-hero {
        padding: 100px 0 60px 0;
    }
    
    .insights-hero h1 {
        font-size: 2.4rem;
    }
    
    .insights-hero p {
        font-size: 1.1rem;
    }
    
    .insights-grid {
        grid-template-columns: 1fr;
        gap: 40px;
    }
    
    .insight-visual {
        height: 200px;
    }
    
    .insight-content {
        padding: 30px;
    }
    
    .insight-title a {
        font-size: 1.4rem;
    }
    
    .insights-pagination {
        flex-wrap: wrap;
        gap: 12px;
    }
}

@media (max-width: 480px) {
    .insights-hero {
        padding: 80px 0 40px 0;
    }
    
    .insights-hero h1 {
        font-size: 2rem;
    }
    
    .insights-listing {
        padding: 40px 0 50px 0;
    }
    
    .insights-grid {
        gap: 30px;
    }
    
    .insight-visual {
        height: 180px;
    }
    
    .insight-content {
        padding: 24px;
    }
    
    .insight-title a {
        font-size: 1.3rem;
    }
    
    .insight-meta {
        font-size: 11px;
    }
}

/* ====================================================
   Contact Page Styles - Maximum Specificity
=================================================== */
html body.page-template-contact .contact-hero {
    padding: 180px 0 120px;
    background: linear-gradient(135deg, #ffffff 0%, #fafafa 50%, #f8f9fa 100%);
    text-align: center;
    color: #1a1a1a;
    position: relative;
    overflow: hidden;
}

html body.page-template-contact .contact-hero::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(45deg, rgba(191, 161, 75, 0.03) 0%, rgba(191, 161, 75, 0.01) 100%);
    pointer-events: none;
}

html body.page-template-contact .contact-hero-content {
    position: relative;
    z-index: 2;
}

html body.page-template-contact .contact-hero h1 {
    font-size: 4.5rem;
    font-weight: 200;
    margin-bottom: 30px;
    letter-spacing: -0.5px;
    line-height: 1.1;
    font-family: 'Helvetica Neue', sans-serif;
    color: #000000;
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
}

html body.page-template-contact .contact-hero p {
    font-size: 1.4rem;
    color: #666666;
    max-width: 600px;
    margin: 0 auto 40px;
    line-height: 1.6;
    font-weight: 300;
    letter-spacing: 0.2px;
}

body.page-template-contact .contact-form-section {
    padding: 120px 0;
    background: #ffffff;
    position: relative;
}

body.page-template-contact .contact-form-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(191, 161, 75, 0.2), transparent);
}

body.page-template-contact .contact-form-wrapper {
    max-width: 1000px;
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 1.5fr;
    gap: 80px;
    align-items: start;
}

body.page-template-contact .contact-form-content {
    padding: 40px 0;
}

body.page-template-contact .contact-form-content h2 {
    font-size: 3rem;
    font-weight: 200;
    color: #1a1a1a;
    margin-bottom: 30px;
    letter-spacing: -0.3px;
    line-height: 1.2;
    font-family: 'Helvetica Neue', sans-serif;
}

body.page-template-contact .contact-form-content p {
    font-size: 1.1rem;
    color: #666666;
    line-height: 1.7;
    font-weight: 300;
    margin-bottom: 40px;
}

body.page-template-contact .contact-form-container {
    background: #ffffff;
    border: 1px solid #f0f0f0;
    border-radius: 16px;
    padding: 50px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.08);
    position: relative;
    overflow: hidden;
}

body.page-template-contact .contact-form-container::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, #bfa14b 0%, #d4af37 50%, #bfa14b 100%);
    opacity: 0;
    transition: opacity 0.3s ease;
}

body.page-template-contact .contact-form-container:hover::before {
    opacity: 1;
}

body.page-template-contact .form-input,
body.page-template-contact .form-textarea {
    width: 100%;
    padding: 20px 0;
    border: none;
    border-bottom: 2px solid #f0f0f0;
    background: transparent;
    font-size: 16px;
    font-family: 'Helvetica Neue', sans-serif;
    font-weight: 400;
    color: #1a1a1a;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    border-radius: 0;
}

body.page-template-contact .form-input:focus,
body.page-template-contact .form-textarea:focus {
    outline: none;
    border-bottom-color: #bfa14b;
    background: rgba(191, 161, 75, 0.02);
}

body.page-template-contact .form-label {
    position: absolute;
    top: 20px;
    left: 0;
    font-size: 16px;
    font-weight: 400;
    color: #999999;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    pointer-events: none;
    font-family: 'Helvetica Neue', sans-serif;
}

body.page-template-contact .form-input:focus + .form-label,
body.page-template-contact .form-textarea:focus + .form-label,
body.page-template-contact .form-input:not(:placeholder-shown) + .form-label,
body.page-template-contact .form-textarea:not(:placeholder-shown) + .form-label {
    top: -12px;
    font-size: 12px;
    color: #bfa14b;
    font-weight: 500;
    letter-spacing: 0.5px;
    text-transform: uppercase;
}

body.page-template-contact .contact-submit {
    background: linear-gradient(135deg, #bfa14b 0%, #d4af37 100%);
    color: #ffffff;
    border: none;
    border-radius: 8px;
    padding: 18px 40px;
    font-size: 16px;
    font-weight: 600;
    font-family: 'Helvetica Neue', sans-serif;
    letter-spacing: 0.5px;
    text-transform: uppercase;
    cursor: pointer;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    overflow: hidden;
    box-shadow: 0 4px 15px rgba(191, 161, 75, 0.2);
}

body.page-template-contact .contact-submit::before {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.2), transparent);
    transition: left 0.5s ease;
}

body.page-template-contact .contact-submit:hover::before {
    left: 100%;
}

body.page-template-contact .contact-submit:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 25px rgba(191, 161, 75, 0.3);
}

body.page-template-contact .contact-submit:active {
    transform: translateY(0);
}

body.page-template-contact .contact-result {
    margin-top: 30px;
    padding: 20px 25px;
    border-radius: 12px;
    font-weight: 500;
    font-family: 'Helvetica Neue', sans-serif;
    transition: all 0.3s ease;
    opacity: 0;
    transform: translateY(-10px);
    animation: slideInUp 0.5s ease forwards;
}

@keyframes slideInUp {
    from {
        opacity: 0;
        transform: translateY(20px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}

body.page-template-contact .contact-result.success {
    background: linear-gradient(135deg, #f0fdf4 0%, #dcfce7 100%);
    color: #166534;
    border: 1px solid #bbf7d0;
    box-shadow: 0 4px 20px rgba(34, 197, 94, 0.1);
}

body.page-template-contact .contact-result.error {
    background: linear-gradient(135deg, #fef2f2 0%, #fee2e2 100%);
    color: #991b1b;
    border: 1px solid #fecaca;
    box-shadow: 0 4px 20px rgba(239, 68, 68, 0.1);
}

/* Form field animations */
body.page-template-contact .form-field {
    position: relative;
    transition: all 0.3s ease;
}

body.page-template-contact .form-field:hover .form-input,
body.page-template-contact .form-field:hover .form-textarea {
    border-bottom-color: #e0e0e0;
}

body.page-template-contact .form-field:hover .form-label {
    color: #666666;
}

/* Add subtle loading animation for submit button */
body.page-template-contact .contact-submit.loading {
    pointer-events: none;
    opacity: 0.7;
}

body.page-template-contact .contact-submit.loading::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 20px;
    height: 20px;
    margin: -10px 0 0 -10px;
    border: 2px solid #ffffff;
    border-radius: 50%;
    border-top-color: transparent;
    animation: spin 1s linear infinite;
}

@keyframes spin {
    to {
        transform: rotate(360deg);
    }
}

/* Enhanced focus states */
body.page-template-contact .form-input:focus,
body.page-template-contact .form-textarea:focus {
    box-shadow: 0 4px 20px rgba(191, 161, 75, 0.1);
}

body.page-template-contact .form-input:focus + .form-label,
body.page-template-contact .form-textarea:focus + .form-label {
    color: #bfa14b;
    font-weight: 600;
}

body.page-template-contact .contact-info {
    padding: 120px 0;
    background: linear-gradient(135deg, #fafafa 0%, #f8f9fa 100%);
    position: relative;
}

body.page-template-contact .contact-info::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(191, 161, 75, 0.2), transparent);
}

body.page-template-contact .contact-info-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 40px;
    max-width: 1000px;
    margin: 0 auto;
    padding: 0 20px;
}

body.page-template-contact .contact-info-item {
    background: #ffffff;
    border: 1px solid #f0f0f0;
    border-radius: 16px;
    padding: 50px 40px;
    text-align: center;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    position: relative;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
}

body.page-template-contact .contact-info-item::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 3px;
    background: linear-gradient(90deg, #bfa14b 0%, #d4af37 50%, #bfa14b 100%);
    opacity: 0;
    transition: opacity 0.3s ease;
}

body.page-template-contact .contact-info-item:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 50px rgba(0, 0, 0, 0.1);
    border-color: rgba(191, 161, 75, 0.2);
}

body.page-template-contact .contact-info-item:hover::before {
    opacity: 1;
}

body.page-template-contact .contact-info-item h3 {
    font-size: 1.4rem;
    font-weight: 600;
    color: #1a1a1a;
    margin-bottom: 20px;
    letter-spacing: -0.2px;
    font-family: 'Helvetica Neue', sans-serif;
    text-transform: uppercase;
    letter-spacing: 1px;
    color: #bfa14b;
}

body.page-template-contact .contact-info-item p {
    font-size: 1.1rem;
    color: #666666;
    line-height: 1.6;
    font-weight: 400;
    margin-bottom: 0;
    transition: color 0.3s ease;
}

body.page-template-contact .contact-info-item:hover p {
    color: #1a1a1a;
}


.form-grid {
    display: grid;
    gap: 30px;
}

.form-row {
    display: grid;
    gap: 30px;
}

.form-row:not(.full-width) {
    grid-template-columns: 1fr 1fr;
}

.form-field {
    position: relative;
}

.form-field.full-width {
    grid-column: 1 / -1;
}


.cta-primary {
    background: #ffffff;
    color: #1a1a1a;
    border: 2px solid #ffffff;
    padding: 16px 32px;
    font-size: 0.9rem;
    font-weight: 400;
    letter-spacing: 1px;
    text-transform: uppercase;
    cursor: pointer;
    transition: all 0.3s ease;
    border-radius: 0;
    width: 100%;
    grid-column: 1 / -1;
}

.cta-primary:hover {
    background: #1a1a1a;
    color: #ffffff;
    transform: translateY(-2px);
}

.contact-submit {
    background: #ffffff;
    color: #1a1a1a;
    border: 2px solid #ffffff;
    padding: 15px 40px;
    font-size: 0.9rem;
    font-weight: 400;
    letter-spacing: 1px;
    text-transform: uppercase;
    cursor: pointer;
    transition: all 0.3s ease;
    border-radius: 0;
}

.contact-submit:hover {
    background: #1a1a1a;
    color: #ffffff;
    transform: translateY(-2px);
}

.contact-result {
    margin-top: 20px;
    padding: 15px;
    border-radius: 0;
}

.contact-result.success {
    background: #f8f9fa;
    color: #1a1a1a;
    border: 1px solid #666666;
}

.contact-result.error {
    background: #f8d7da;
    color: #721c24;
    border: 1px solid #721c24;
}



/* Responsive Design for Contact */
@media (max-width: 768px) {
    html body.page-template-contact .contact-hero {
        padding: 120px 0 80px;
    }
    
    html body.page-template-contact .contact-hero h1 {
        font-size: 2.8rem;
        margin-bottom: 25px;
    }
    
    html body.page-template-contact .contact-hero p {
        font-size: 1.2rem;
        margin-bottom: 30px;
    }
    
    body.page-template-contact .contact-form-section {
        padding: 80px 0;
    }
    
    body.page-template-contact .contact-form-wrapper {
        grid-template-columns: 1fr;
        gap: 60px;
    }
    
    body.page-template-contact .contact-form-content h2 {
        font-size: 2.2rem;
        margin-bottom: 25px;
    }
    
    body.page-template-contact .contact-form-container {
        padding: 40px 30px;
    }
    
    body.page-template-contact .contact-info {
        padding: 80px 0;
    }
    
    body.page-template-contact .contact-info-grid {
        grid-template-columns: 1fr;
        gap: 30px;
        padding: 0 15px;
    }
    
    body.page-template-contact .contact-info-item {
        padding: 40px 30px;
    }
    
    body.page-template-contact .form-row:not(.full-width) {
        grid-template-columns: 1fr;
        gap: 25px;
    }
    
    body.page-template-contact .contact-submit {
        padding: 16px 32px;
        font-size: 15px;
    }
}

@media (max-width: 480px) {
    html body.page-template-contact .contact-hero {
        padding: 100px 0 60px;
    }
    
    html body.page-template-contact .contact-hero h1 {
        font-size: 2.2rem;
        margin-bottom: 20px;
    }
    
    html body.page-template-contact .contact-hero p {
        font-size: 1.1rem;
        margin-bottom: 25px;
    }
    
    body.page-template-contact .contact-form-section {
        padding: 60px 0;
    }
    
    body.page-template-contact .contact-form-wrapper {
        gap: 40px;
    }
    
    body.page-template-contact .contact-form-content h2 {
        font-size: 1.8rem;
        margin-bottom: 20px;
    }
    
    body.page-template-contact .contact-form-content p {
        font-size: 1rem;
        margin-bottom: 30px;
    }
    
    body.page-template-contact .contact-form-container {
        padding: 30px 20px;
    }
    
    body.page-template-contact .contact-info {
        padding: 60px 0;
    }
    
    body.page-template-contact .contact-info-item {
        padding: 30px 20px;
    }
    
    body.page-template-contact .contact-info-item h3 {
        font-size: 1.2rem;
        margin-bottom: 15px;
    }
    
    body.page-template-contact .contact-info-item p {
        font-size: 1rem;
    }
    
    body.page-template-contact .form-input,
    body.page-template-contact .form-textarea {
        padding: 15px 0;
        font-size: 15px;
    }
    
    body.page-template-contact .form-label {
        top: 15px;
        font-size: 15px;
    }
    
    body.page-template-contact .form-input:focus + .form-label,
    body.page-template-contact .form-textarea:focus + .form-label,
    body.page-template-contact .form-input:not(:placeholder-shown) + .form-label,
    body.page-template-contact .form-textarea:not(:placeholder-shown) + .form-label {
        top: -10px;
        font-size: 11px;
    }
    
    body.page-template-contact .contact-submit {
        padding: 14px 28px;
        font-size: 14px;
    }
}

/* ====================================================
   Public Relations Section - 4 Box Layout
   ==================================================== */

body.template-capability-showcase .public-relations-section .solution-features-row {
    display: flex;
    justify-content: center;
    gap: 12px;
    width: 100%;
    flex-wrap: wrap;
}

body.template-capability-showcase .public-relations-section .solution-feature {
    background: #ffffff;
    color: #1a1a1a;
    padding: 6px 16px;
    border: 1px solid #f5f5f5;
    border-radius: 2px;
    font-size: 0.85rem;
    font-weight: 500;
    text-align: center;
    transition: all 0.3s ease;
    flex: 1;
    min-width: 150px;
    max-width: 200px;
}

body.template-capability-showcase .public-relations-section .solution-feature strong {
    color: #1a1a1a;
    font-weight: 500;
    font-size: 0.85rem;
    display: block;
    line-height: 1.4;
}

body.template-capability-showcase .public-relations-section .solution-feature:hover {
    border-color: #d4af37;
    box-shadow: 0 4px 12px rgba(212, 175, 55, 0.2);
    transform: translateY(-2px);
}

/* ====================================================
   Featured Project Tags - Enhanced Gold Hover Effects
   ==================================================== */

.featured-project-markets .market-tag {
    display: inline-block !important;
    background: #f8f9fa !important;
    color: #1a1a1a !important;
    padding: 6px 12px !important;
    border-radius: 20px !important;
    font-size: 0.75rem !important;
    font-weight: 500 !important;
    text-decoration: none !important;
    transition: all 0.3s ease !important;
    border: 1px solid #e9ecef !important;
    text-transform: none !important;
    letter-spacing: normal !important;
}

.featured-project-markets .market-tag:hover {
    background: #d4af37 !important;
    color: #ffffff !important;
    border-color: #d4af37 !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 8px rgba(212, 175, 55, 0.3) !important;
}

/* ====================================================
   Contact Page Design Implementation
   ==================================================== */

/* Ultra-specific override to ensure gold hover effects win */
body.template-capability-showcase .featured-project-markets .market-tag:hover {
    background: #d4af37 !important;
    color: #ffffff !important;
    border-color: #d4af37 !important;
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 8px rgba(212, 175, 55, 0.3) !important;
}