/*
Theme Name: Maritime Institute Child
Description: Child theme for Maritime Industrial LLC - Connecting skilled professionals with maritime manufacturing companies
Author: Maritime Institute
Template: Divi
Version: 1.0.0
*/

/* Parent theme styles are loaded via functions.php */
/* @import url("../Divi/style.css"); - Removed to prevent double loading */

/* =============================================================================
   Custom Font Overrides - Gomme Sans as Primary, Gotham for Posts
   ========================================================================== */

/* Global Text - Gomme Sans Light (300) */
body,
p, span, div, li, td, th,
input, select, textarea,
.et_pb_text,
.et_pb_text_inner,
.et_pb_module,
.et_pb_tab_content,
.et_pb_toggle_content,
.et_pb_testimonial_description_inner,
.et_pb_pricing_content,
.et_pb_slide_description,
.et_pb_contact_form_label,
.footer-widget,
.widget_text,
.textwidget,
.entry-content,
.et_pb_text a,
.widget a,
.footer-widget a,
blockquote,
.et_pb_quote_content,
.et_pb_testimonial_author {
    font-family: 'Gomme Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif !important;
    font-weight: 300 !important; /* Light weight */
}

/* Headers - Gomme Sans Bold (700) */
h1, h2, h3, h4, h5, h6,
.et_pb_module_header,
.et_pb_fullwidth_header_title,
.et_pb_slide_title,
.et_pb_pricing_heading,
.woocommerce h1,
.woocommerce h2,
.woocommerce h3,
.product_title,
.et_pb_gallery_title,
.et_pb_portfolio_title h2,
.et_pb_filterable_portfolio_grid h2,
.et_pb_blurb_container h4,
.et_pb_counter_title,
.et_pb_toggle_title,
.et_pb_accordion_item h4,
.footer-title {
    font-family: 'Gomme Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif !important;
    font-weight: 700 !important; /* Bold for headers */
}

/* Ensure Divi sections have proper styling */
.et_pb_section {
    padding: 80px 0;
}

.et_pb_row {
    max-width: 1200px !important;
}

/* Navigation Menu - Gomme Sans Bold */
#top-menu li a,
.et-menu-nav > ul > li > a,
#et-secondary-nav li a,
.mobile_menu_bar,
.et_mobile_menu li a,
.et_pb_fullwidth_menu ul li a,
#main-header .nav li ul a,
.nav-links a,
.nav-links li a,
.mobile-nav ul li a,
#main-header,
#et-top-navigation,
.nav li a {
    font-family: 'Gomme Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif !important;
    font-weight: 700 !important; /* Bold for menu items */
    letter-spacing: 0.05em;
}

/* Buttons - Using Gomme Sans Bold */
.et_pb_button,
.et_pb_more_button,
.et_pb_contact_submit,
.et_pb_pricing_table_button,
button,
input[type="submit"],
input[type="button"],
.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.btn-primary,
.btn-secondary,
.nav-cta {
    font-family: 'Gomme Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif !important;
    font-weight: 700 !important;
    text-transform: none !important;
    letter-spacing: 0.05em !important;
}

/* Bold Text Override */
strong, b,
.et_pb_module strong,
.et_pb_text strong,
.et_pb_text b {
    font-family: inherit;
    font-weight: 700;
}

/* Italic Text Override */
em, i,
.et_pb_module em,
.et_pb_text em,
.et_pb_text i {
    font-family: inherit;
    font-style: italic;
}

/* Form Labels - Gomme Sans Bold */
label,
.et_pb_contact_form_label,
.gform_wrapper label,
.wpcf7-form label {
    font-family: 'Gomme Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif !important;
    font-weight: 700 !important; /* Bold for labels */
}

/* Form Inputs - Gomme Sans Light */
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="password"],
input[type="search"],
textarea,
select,
.et_pb_contact_field input,
.et_pb_contact_field textarea {
    font-family: 'Gomme Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif !important;
    font-weight: 300 !important; /* Light for inputs */
}

/* Ensure proper text colors in dark sections */
.et_pb_section.et_pb_section_0,
.et_pb_section[style*="background-color: #1e3a8a"],
.et_pb_section[style*="background-color: #0f172a"],
.et_pb_section[style*="background-color: #1e293b"],
.et_pb_section[style*="background-color: #2563eb"] {
    color: #ffffff;
}

/* Fix blurb module styling */
.et_pb_blurb_content {
    max-width: none !important;
}

/* =============================================================================
   Gotham Font Overrides for Single Posts and Archive Pages
   ========================================================================== */

/* Single Post Content - Gotham Regular */
.single-post .entry-content,
.single-post .et_pb_text,
.single-post .et_pb_text_inner,
.single-post .et_pb_module,
.single-post p,
.single-post span,
.single-post div,
.single-post li,
.single-post blockquote,
.single-post .et_pb_quote_content {
    font-family: 'Gotham', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif !important;
    font-weight: 400 !important; /* Regular weight */
}

/* Single Post Headers - Gotham Bold */
.single-post h1,
.single-post h2,
.single-post h3,
.single-post h4,
.single-post h5,
.single-post h6,
.single-post .et_pb_module_header,
.single-post .entry-title {
    font-family: 'Gotham', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif !important;
    font-weight: 700 !important; /* Bold weight */
}

/* Archive/Blog Pages - Gotham Regular */
.archive .entry-content,
.archive .et_pb_text,
.archive p,
.archive .post-meta,
.archive .excerpt,
.blog .entry-content,
.blog .et_pb_text,
.blog p,
.blog .post-meta,
.blog .excerpt,
.category .entry-content,
.category p,
.category .post-meta,
.tag .entry-content,
.tag p,
.tag .post-meta {
    font-family: 'Gotham', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif !important;
    font-weight: 400 !important; /* Regular weight */
}

/* Archive/Blog Headers - Gotham Bold */
.archive h1,
.archive h2,
.archive h3,
.archive h4,
.archive h5,
.archive h6,
.archive .entry-title,
.blog h1,
.blog h2,
.blog h3,
.blog h4,
.blog h5,
.blog h6,
.blog .entry-title,
.category h1,
.category h2,
.category h3,
.category .entry-title,
.tag h1,
.tag h2,
.tag h3,
.tag .entry-title {
    font-family: 'Gotham', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif !important;
    font-weight: 700 !important; /* Bold weight */
}

/* Single Post Strong/Bold - Gotham Bold */
.single-post strong,
.single-post b,
.single-post .et_pb_module strong,
.single-post .et_pb_text strong {
    font-family: 'Gotham', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif !important;
    font-weight: 700 !important;
}

/* Single Post Italic - Gotham Italic */
.single-post em,
.single-post i,
.single-post .et_pb_module em,
.single-post .et_pb_text em {
    font-family: 'Gotham', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif !important;
    font-style: italic !important;
}

/* =============================================================================
   Featured Articles Module - Gotham Fonts
   ========================================================================== */

/* Featured Articles Titles - Gotham Bold */
.maritime_featured_articles h2,
.maritime_featured_articles h4,
.featured-articles h2,
.featured-articles h4,
.featured-article h2,
.sidebar-article h4,
.featured-articles .article-content h2,
.featured-articles .sidebar-section h4 {
    font-family: 'Gotham', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif !important;
    font-weight: 700 !important; /* Bold for titles */
}

/* Featured Articles Text - Gotham Regular */
.maritime_featured_articles p,
.maritime_featured_articles .article-content p,
.maritime_featured_articles .sidebar-article p,
.featured-articles p,
.featured-articles .article-content p,
.featured-articles .sidebar-article p,
.featured-article p,
.sidebar-article p,
.featured-articles span,
.featured-articles div {
    font-family: 'Gotham', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif !important;
    font-weight: 400 !important; /* Regular for text */
}

/* Featured Articles Read More Links */
.maritime_featured_articles .read-more,
.featured-articles .read-more {
    font-family: 'Gotham', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif !important;
    font-weight: 400 !important;
}

/* Ensure number counters display properly */
.et_pb_number_counter .percent p {
    font-family: 'Gomme Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif !important;
}

/* Fix conflicts between theme CSS and Divi Builder */
#main-content .et_pb_section {
    padding: 80px 0;
}

#main-content .et_pb_row {
    padding: 0;
}

/* Ensure Divi content doesn't inherit theme's restrictive styles */
.et-db #et-boc .et-l {
    margin: 0;
    padding: 0;
}

/* Fix header spacing when using Divi Builder */
.page-template-default #main-content {
    padding-top: 0;
}

/* Ensure Divi text modules use proper fonts */
.et_pb_text_inner {
    font-family: 'Gomme Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif !important;
}

/* Fix Divi module spacing within theme structure */
.et_pb_module {
    margin-bottom: 0;
}

/* Ensure proper button hover states */
.et_pb_button:hover {
    opacity: 0.9;
    transform: translateY(-2px);
    transition: all 0.3s ease;
}

/* Fix blog module styling */
.et_pb_blog_grid .et_pb_post {
    background: #ffffff;
    border-radius: 12px;
    overflow: hidden;
    transition: transform 0.3s ease;
}

.et_pb_blog_grid .et_pb_post:hover {
    transform: translateY(-5px);
}

/* CSS Variables for Maritime Theme */
:root {
  /* Primary Colors */
  --maritime-primary: #1e3a8a;
  --maritime-primary-light: #3b82f6;
  --maritime-primary-lighter: #60a5fa;
  --maritime-primary-dark: #1e40af;
  --maritime-primary-darker: #1d4ed8;
  
  /* Secondary Colors */
  --maritime-secondary: #0f172a;
  --maritime-secondary-light: #1e293b;
  --maritime-secondary-lighter: #334155;
  --maritime-secondary-dark: #020617;
  
  /* Accent Colors */
  --maritime-accent: #60a5fa;
  --maritime-accent-light: #93c5fd;
  --maritime-accent-lighter: #bfdbfe;
  --maritime-accent-dark: #3b82f6;
  
  /* Neutral Colors */
  --maritime-white: #ffffff;
  --maritime-gray-50: #f8fafc;
  --maritime-gray-100: #f1f5f9;
  --maritime-gray-200: #e2e8f0;
  --maritime-gray-300: #cbd5e1;
  --maritime-gray-400: #94a3b8;
  --maritime-gray-500: #64748b;
  --maritime-gray-600: #475569;
  --maritime-gray-700: #334155;
  --maritime-gray-800: #1e293b;
  --maritime-gray-900: #0f172a;
  --maritime-black: #000000;
  
  /* Gradients */
  --maritime-gradient-primary: linear-gradient(135deg, #1e3a8a 0%, #3b82f6 50%, #60a5fa 100%);
  --maritime-gradient-secondary: linear-gradient(135deg, #0f172a 0%, #1e293b 50%, #334155 100%);
  --maritime-gradient-hero: linear-gradient(135deg, #1e3c72 0%, #2a5298 50%, #1a1a1a 100%);
  --maritime-gradient-overlay: linear-gradient(135deg, rgba(0, 30, 50, 0.85) 0%, rgba(0, 50, 70, 0.75) 25%, rgba(20, 70, 90, 0.65) 50%, rgba(30, 90, 110, 0.55) 75%, rgba(40, 110, 130, 0.45) 100%);
  
  /* Typography */
  --maritime-font-family: 'Gomme Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif;
  --maritime-font-size-xs: 0.75rem;
  --maritime-font-size-sm: 0.875rem;
  --maritime-font-size-base: 1rem;
  --maritime-font-size-lg: 1.125rem;
  --maritime-font-size-xl: 1.25rem;
  --maritime-font-size-2xl: 1.5rem;
  --maritime-font-size-3xl: 1.875rem;
  --maritime-font-size-4xl: 2.25rem;
  --maritime-font-size-5xl: 3rem;
  --maritime-font-size-6xl: 3.75rem;
  
  /* Spacing */
  --maritime-spacing-xs: 0.25rem;
  --maritime-spacing-sm: 0.5rem;
  --maritime-spacing-md: 1rem;
  --maritime-spacing-lg: 1.5rem;
  --maritime-spacing-xl: 2rem;
  --maritime-spacing-2xl: 3rem;
  --maritime-spacing-3xl: 4rem;
  --maritime-spacing-4xl: 6rem;
  --maritime-spacing-5xl: 8rem;
  
  /* Border Radius */
  --maritime-radius-sm: 0.25rem;
  --maritime-radius-md: 0.375rem;
  --maritime-radius-lg: 0.5rem;
  --maritime-radius-xl: 0.75rem;
  --maritime-radius-2xl: 1rem;
  --maritime-radius-3xl: 1.5rem;
  
  /* Shadows */
  --maritime-shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
  --maritime-shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
  --maritime-shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -2px rgba(0, 0, 0, 0.05);
  --maritime-shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.1), 0 10px 10px -5px rgba(0, 0, 0, 0.04);
  --maritime-shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
  
  /* Transitions */
  --maritime-transition-fast: 0.15s ease-in-out;
  --maritime-transition-normal: 0.3s ease-in-out;
  --maritime-transition-slow: 0.5s ease-in-out;
}

/* Base Styles */
body.maritime-theme {
  font-family: var(--maritime-font-family);
  line-height: 1.6;
  color: var(--maritime-gray-800);
  background-color: var(--maritime-white);
}

/* Typography Overrides */
.maritime-theme h1,
.maritime-theme h2,
.maritime-theme h3,
.maritime-theme h4,
.maritime-theme h5,
.maritime-theme h6 {
  font-family: var(--maritime-font-family);
  font-weight: 700;
  line-height: 1.2;
  color: var(--maritime-gray-900);
}

.maritime-theme h1 {
  font-size: clamp(2.5rem, 6vw, 4.5rem);
  font-weight: 800;
}

.maritime-theme h2 {
  font-size: clamp(2rem, 4vw, 3rem);
  font-weight: 700;
}

.maritime-theme h3 {
  font-size: clamp(1.5rem, 3vw, 2rem);
  font-weight: 600;
}

/* Button Styles */
.maritime-btn-primary {
  display: inline-block;
  padding: 0.75rem 1.5rem;
  background: var(--maritime-gradient-primary);
  color: var(--maritime-white);
  border: none;
  border-radius: var(--maritime-radius-lg);
  font-weight: 600;
  font-size: var(--maritime-font-size-base);
  text-decoration: none;
  text-align: center;
  cursor: pointer;
  transition: all var(--maritime-transition-normal);
  box-shadow: var(--maritime-shadow-md);
  text-transform: none;
  letter-spacing: 0.025em;
}

.maritime-btn-primary:hover {
  transform: translateY(-2px);
  box-shadow: var(--maritime-shadow-lg);
  color: var(--maritime-white);
  text-decoration: none;
}

.maritime-btn-primary:active {
  transform: translateY(0);
  box-shadow: var(--maritime-shadow-md);
}

.maritime-btn-secondary {
  display: inline-block;
  padding: 0.75rem 1.5rem;
  background: transparent;
  color: var(--maritime-primary);
  border: 2px solid var(--maritime-primary);
  border-radius: var(--maritime-radius-lg);
  font-weight: 600;
  font-size: var(--maritime-font-size-base);
  text-decoration: none;
  text-align: center;
  cursor: pointer;
  transition: all var(--maritime-transition-normal);
  text-transform: none;
  letter-spacing: 0.025em;
}

.maritime-btn-secondary:hover {
  background: var(--maritime-primary);
  color: var(--maritime-white);
  transform: translateY(-2px);
  box-shadow: var(--maritime-shadow-md);
  text-decoration: none;
}

.maritime-btn-primary-contrast {
  display: inline-block;
  padding: 0.75rem 1.5rem;
  background: var(--maritime-white);
  color: var(--maritime-primary);
  border: 2px solid var(--maritime-white);
  border-radius: var(--maritime-radius-lg);
  font-weight: 600;
  font-size: var(--maritime-font-size-base);
  text-decoration: none;
  text-align: center;
  cursor: pointer;
  transition: all var(--maritime-transition-normal);
  box-shadow: 0 4px 15px rgba(255, 255, 255, 0.2);
  text-transform: none;
  letter-spacing: 0.025em;
}

.maritime-btn-primary-contrast:hover {
  background: transparent;
  color: var(--maritime-white);
  transform: translateY(-2px);
  box-shadow: 0 6px 20px rgba(255, 255, 255, 0.3);
  text-decoration: none;
}

.maritime-btn-secondary-contrast {
  display: inline-block;
  padding: 0.75rem 1.5rem;
  background: transparent;
  color: var(--maritime-white);
  border: 2px solid var(--maritime-white);
  border-radius: var(--maritime-radius-lg);
  font-weight: 600;
  font-size: var(--maritime-font-size-base);
  text-decoration: none;
  text-align: center;
  cursor: pointer;
  transition: all var(--maritime-transition-normal);
  text-transform: none;
  letter-spacing: 0.025em;
}

.maritime-btn-secondary-contrast:hover {
  background: var(--maritime-white);
  color: var(--maritime-primary);
  transform: translateY(-2px);
  box-shadow: var(--maritime-shadow-md);
  text-decoration: none;
}

/* Card Styles */
.maritime-card {
  background: var(--maritime-white);
  border-radius: var(--maritime-radius-2xl);
  box-shadow: var(--maritime-shadow-lg);
  overflow: hidden;
  transition: all var(--maritime-transition-normal);
}

.maritime-card:hover {
  transform: translateY(-4px);
  box-shadow: var(--maritime-shadow-2xl);
}

.maritime-card-dark {
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(10px);
}

.maritime-card-dark:hover {
  background: rgba(255, 255, 255, 0.08);
  border-color: rgba(255, 255, 255, 0.2);
}

/* Hero Section Styles */
.maritime-hero-section {
  min-height: 100vh;
  display: flex;
  align-items: center;
  position: relative;
  background: var(--maritime-gradient-hero);
  overflow: hidden;
}

.maritime-hero-background {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  opacity: 0.6;
  z-index: 1;
}

.maritime-hero-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: var(--maritime-gradient-overlay);
  z-index: 2;
}

.maritime-hero-content {
  position: relative;
  z-index: 3;
  text-align: center;
  max-width: 800px;
  margin: 0 auto;
}

.maritime-hero-title {
  color: var(--maritime-white);
  font-size: clamp(2.5rem, 6vw, 4.5rem);
  font-weight: 700;
  margin-bottom: 1rem;
  line-height: 1.2;
}

.maritime-hero-highlight {
  color: var(--maritime-accent-light);
  display: block;
  font-size: clamp(2rem, 5vw, 3.5rem);
  font-weight: 800;
  margin: 0.5rem 0;
  text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5);
  text-transform: uppercase;
  letter-spacing: 0.02em;
}

.maritime-hero-description {
  color: rgba(255, 255, 255, 0.9);
  font-size: var(--maritime-font-size-lg);
  margin-bottom: 2rem;
  line-height: 1.6;
}

.maritime-hero-buttons {
  display: flex;
  gap: 1rem;
  justify-content: center;
  flex-wrap: wrap;
}

/* Section Styles */
.maritime-section-header {
  text-align: center;
  margin-bottom: 3rem;
}

.maritime-section-eyebrow {
  color: var(--maritime-accent-light);
  font-size: var(--maritime-font-size-sm);
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  margin-bottom: 1rem;
}

.maritime-section-title {
  font-size: clamp(2rem, 4vw, 3rem);
  font-weight: 700;
  margin-bottom: 1.5rem;
  line-height: 1.2;
  color: var(--maritime-white);
}

.maritime-section-description {
  font-size: var(--maritime-font-size-lg);
  opacity: 0.8;
  margin-bottom: 2rem;
  color: rgba(255, 255, 255, 0.8);
}

/* Career Cards */
.maritime-careers-section {
  padding: var(--maritime-spacing-5xl) 0;
  background: var(--maritime-secondary);
}

.maritime-careers-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(350px, 1fr));
  gap: 2rem;
}

.maritime-career-card {
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: var(--maritime-radius-2xl);
  padding: 2rem;
  transition: all var(--maritime-transition-normal);
  position: relative;
  overflow: hidden;
  min-height: 300px;
  padding-bottom: 4rem;
}

.maritime-career-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  background: var(--maritime-gradient-primary);
}

.maritime-career-card:hover {
  transform: translateY(-4px);
  background: rgba(255, 255, 255, 0.08);
  border-color: rgba(255, 255, 255, 0.2);
  box-shadow: var(--maritime-shadow-2xl);
}

.maritime-career-icon {
  font-size: 2.5rem;
  margin-bottom: 1rem;
  color: var(--maritime-accent-light);
}

.maritime-career-link {
  position: absolute;
  bottom: 2rem;
  left: 2rem;
  color: var(--maritime-accent-light);
  text-decoration: none;
  font-size: 1.2rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 24px;
  height: 24px;
  transition: all var(--maritime-transition-normal);
  border-radius: var(--maritime-radius-md);
  overflow: hidden;
  white-space: nowrap;
  max-width: 24px;
}

.maritime-career-link::after {
  content: '→';
  opacity: 0;
  transform: translateX(-10px);
  transition: all var(--maritime-transition-normal);
}

.maritime-career-card:hover .maritime-career-link::after {
  opacity: 1;
  transform: translateX(0);
}

.maritime-career-card:hover .maritime-career-link {
  max-width: 200px;
  padding-right: 0.5rem;
}

/* Stats Counter */
.maritime-stats-section {
  padding: var(--maritime-spacing-5xl) 0;
}

.maritime-stats-grid {
  display: grid;
  gap: 2rem;
  text-align: center;
}

.maritime-stat-item {
  padding: 1rem;
}

.maritime-stat-number {
  font-size: 3rem;
  font-weight: 800;
  margin-bottom: 0.5rem;
  color: var(--maritime-white);
}

.maritime-stat-label {
  font-size: var(--maritime-font-size-lg);
  opacity: 0.9;
  color: var(--maritime-white);
  font-weight: 600;
  letter-spacing: 0.05em;
}

/* Blog Grid */
.maritime-blog-grid-section {
  padding: var(--maritime-spacing-5xl) 0;
  background: var(--maritime-gray-50);
  color: var(--maritime-gray-800);
}

.maritime-news-grid {
  display: grid;
  gap: 2rem;
  margin-bottom: 4rem;
}

.maritime-news-card {
  background: var(--maritime-white);
  border-radius: var(--maritime-radius-2xl);
  overflow: hidden;
  box-shadow: var(--maritime-shadow-lg);
  transition: all var(--maritime-transition-normal);
  display: flex;
  flex-direction: column;
}

.maritime-news-card:hover {
  transform: translateY(-4px);
  box-shadow: var(--maritime-shadow-2xl);
}

.maritime-news-image {
  position: relative;
  height: 200px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--maritime-gray-50);
}

.maritime-news-content {
  padding: 1.5rem;
  flex: 1;
  display: flex;
  flex-direction: column;
  position: relative;
  min-height: 160px;
  padding-bottom: 3rem;
  color: var(--maritime-gray-800);
}

.maritime-news-date {
  font-size: var(--maritime-font-size-xs);
  color: var(--maritime-gray-600);
  font-weight: 500;
  margin-bottom: 1rem;
}

.maritime-read-more {
  position: absolute;
  bottom: 1.5rem;
  left: 1.5rem;
  color: var(--maritime-accent-light);
  text-decoration: none;
  font-size: 1.2rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 24px;
  height: 24px;
  transition: all var(--maritime-transition-normal);
  border-radius: var(--maritime-radius-md);
  overflow: hidden;
  white-space: nowrap;
  max-width: 24px;
}

.maritime-read-more::after {
  content: '→';
  opacity: 0;
  transform: translateX(-10px);
  transition: all var(--maritime-transition-normal);
}

.maritime-news-card:hover .maritime-read-more::after {
  opacity: 1;
  transform: translateX(0);
}

.maritime-news-card:hover .maritime-read-more {
  max-width: 200px;
  padding-right: 0.5rem;
}

/* Filter Section */
.maritime-filter-section {
  margin-bottom: 3rem;
}

.maritime-filter-controls {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 2rem;
}

.maritime-dropdown {
  position: relative;
}

.maritime-dropdown-toggle {
  background: var(--maritime-gradient-primary);
  color: var(--maritime-white);
  border: none;
  padding: 0.75rem 1rem;
  border-radius: var(--maritime-radius-lg);
  font-size: 0.95rem;
  font-weight: 500;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: space-between;
  min-width: 120px;
  transition: all var(--maritime-transition-normal);
  box-shadow: 0 2px 8px rgba(30, 58, 138, 0.2);
}

.maritime-dropdown-toggle:hover {
  transform: translateY(-1px);
  box-shadow: 0 4px 12px rgba(30, 58, 138, 0.3);
}

.maritime-dropdown-menu {
  position: absolute;
  top: 100%;
  left: 0;
  background: var(--maritime-white);
  border: 1px solid var(--maritime-gray-200);
  border-radius: var(--maritime-radius-lg);
  box-shadow: var(--maritime-shadow-xl);
  min-width: 200px;
  z-index: 1000;
  opacity: 0;
  visibility: hidden;
  transform: translateY(-10px);
  transition: all var(--maritime-transition-normal);
  max-height: 300px;
  overflow-y: auto;
}

.maritime-dropdown.active .maritime-dropdown-menu {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.maritime-dropdown-item {
  display: block;
  padding: 0.75rem 1rem;
  color: var(--maritime-gray-700);
  text-decoration: none;
  font-size: 0.9rem;
  transition: all var(--maritime-transition-fast);
  border-bottom: 1px solid var(--maritime-gray-100);
}

.maritime-dropdown-item:hover {
  background: var(--maritime-gray-50);
  color: var(--maritime-primary);
}

.maritime-dropdown-item:last-child {
  border-bottom: none;
}

.maritime-results-count {
  font-size: 0.9rem;
  color: var(--maritime-gray-500);
  font-weight: 500;
  white-space: nowrap;
}

.maritime-active-filters {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  min-height: 2rem;
}

/* Partner Cards */
.maritime-partners-section {
  padding: var(--maritime-spacing-5xl) 0;
  background: var(--maritime-secondary);
}

.maritime-partners-grid {
  display: grid;
  gap: 2rem;
}

.maritime-partner-card {
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: var(--maritime-radius-2xl);
  overflow: hidden;
  transition: all var(--maritime-transition-normal);
  position: relative;
  display: flex;
  flex-direction: column;
  min-height: 400px;
}

.maritime-partner-card:hover {
  transform: translateY(-4px);
  background: rgba(255, 255, 255, 0.08);
  border-color: rgba(255, 255, 255, 0.2);
  box-shadow: var(--maritime-shadow-2xl);
}

.maritime-partner-featured {
  border: 2px solid var(--maritime-accent-light) !important;
}

.maritime-partner-featured::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  background: var(--maritime-gradient-primary);
  z-index: 2;
}

.maritime-featured-badge {
  background: var(--maritime-gradient-primary);
  color: var(--maritime-white);
  padding: 0.5rem 1rem;
  border-radius: var(--maritime-radius-lg);
  font-size: var(--maritime-font-size-xs);
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  margin-bottom: 1.5rem;
  display: inline-block;
  width: fit-content;
}

.maritime-partner-logo {
  position: relative;
  width: 100%;
  height: 120px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--maritime-gray-50);
}

.maritime-partner-content {
  padding: 2rem;
  flex: 1;
  display: flex;
  flex-direction: column;
  position: relative;
  padding-bottom: 4rem;
}

.maritime-partner-specialties {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-bottom: 1.5rem;
}

.maritime-specialty-tag {
  background: rgba(96, 165, 250, 0.2);
  color: var(--maritime-accent-light);
  padding: 0.25rem 0.75rem;
  border-radius: 20px;
  font-size: var(--maritime-font-size-sm);
  font-weight: 500;
  display: inline-block;
}

.maritime-partner-link {
  position: absolute;
  bottom: 2rem;
  left: 2rem;
  color: var(--maritime-accent-light);
  text-decoration: none;
  font-size: 1.2rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 24px;
  height: 24px;
  transition: all var(--maritime-transition-normal);
  border-radius: var(--maritime-radius-md);
  overflow: hidden;
  white-space: nowrap;
  max-width: 24px;
}

.maritime-partner-link::after {
  content: '→';
  opacity: 0;
  transform: translateX(-10px);
  transition: all var(--maritime-transition-normal);
}

.maritime-partner-card:hover .maritime-partner-link::after {
  opacity: 1;
  transform: translateX(0);
}

.maritime-partner-card:hover .maritime-partner-link {
  max-width: 200px;
  padding-right: 0.5rem;
}

/* Page Hero */
.maritime-page-hero {
  padding: var(--maritime-spacing-5xl) 0 6rem;
  background: var(--maritime-gradient-primary);
  text-align: center;
  margin-bottom: 4rem;
}

/* Responsive Design */
@media (max-width: 768px) {
  .maritime-hero-buttons {
    flex-direction: column;
    align-items: center;
  }
  
  .maritime-filter-controls {
    flex-direction: column;
    gap: 1rem;
    align-items: stretch;
  }
  
  .maritime-results-count {
    text-align: center;
  }
  
  .maritime-careers-grid,
  .maritime-news-grid,
  .maritime-partners-grid {
    grid-template-columns: 1fr;
  }
  
  .maritime-stats-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 480px) {
  .maritime-stats-grid {
    grid-template-columns: 1fr;
  }
  
  .maritime-hero-content {
    padding: 0 1rem;
  }
  
  .maritime-section-header {
    padding: 0 1rem;
  }
}

/* Animation Classes */
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(30px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes fadeInLeft {
  from {
    opacity: 0;
    transform: translateX(-30px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes fadeInRight {
  from {
    opacity: 0;
    transform: translateX(30px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

.maritime-animate-fade-up {
  animation: fadeInUp 0.6s ease-out;
}

.maritime-animate-fade-left {
  animation: fadeInLeft 0.6s ease-out;
}

.maritime-animate-fade-right {
  animation: fadeInRight 0.6s ease-out;
}

/* Utility Classes */
.maritime-text-center {
  text-align: center;
}

.maritime-text-left {
  text-align: left;
}

.maritime-text-right {
  text-align: right;
}

.maritime-mb-0 { margin-bottom: 0; }
.maritime-mb-1 { margin-bottom: var(--maritime-spacing-xs); }
.maritime-mb-2 { margin-bottom: var(--maritime-spacing-sm); }
.maritime-mb-3 { margin-bottom: var(--maritime-spacing-md); }
.maritime-mb-4 { margin-bottom: var(--maritime-spacing-lg); }
.maritime-mb-5 { margin-bottom: var(--maritime-spacing-xl); }

.maritime-mt-0 { margin-top: 0; }
.maritime-mt-1 { margin-top: var(--maritime-spacing-xs); }
.maritime-mt-2 { margin-top: var(--maritime-spacing-sm); }
.maritime-mt-3 { margin-top: var(--maritime-spacing-md); }
.maritime-mt-4 { margin-top: var(--maritime-spacing-lg); }
.maritime-mt-5 { margin-top: var(--maritime-spacing-xl); }

/* Divi Overrides */
.et_pb_section.maritime-section {
  padding: 0;
}

.et_pb_row.maritime-row {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 2rem;
}

/* Print Styles */
@media print {
  .maritime-hero-section,
  .maritime-filter-section,
  .maritime-btn-primary,
  .maritime-btn-secondary {
    display: none !important;
  }
  
  .maritime-career-card,
  .maritime-news-card,
  .maritime-partner-card {
    break-inside: avoid;
    box-shadow: none;
    border: 1px solid var(--maritime-gray-300);
  }
}

/* High Contrast Mode */
@media (prefers-contrast: high) {
  :root {
    --maritime-primary: #000080;
    --maritime-accent-light: #0066cc;
    --maritime-gray-600: #000000;
  }
  
  .maritime-career-card,
  .maritime-news-card,
  .maritime-partner-card {
    border: 2px solid var(--maritime-gray-800);
  }
}

/* Reduced Motion */
@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
  
  .maritime-career-card:hover,
  .maritime-news-card:hover,
  .maritime-partner-card:hover {
    transform: none;
  }
}
