/*
Theme Name: Beaver Builder Child Theme
Theme URI: http://www.wpbeaverbuilder.com
Version: 2.0
Description: An example child theme that can be used as a starting point for custom development.
Author: The Beaver Builder Team
Author URI: http://www.fastlinemedia.com
template: bb-theme
*/

.fl-builder-content[data-overlay="1"]:not(.fl-theme-builder-header-sticky):not(.fl-builder-content-editing) {
    position: relative;
    width: 100%;
    z-index: 100;
    background: black;
}

.fl-node-pecy4xb63jnf > .fl-col-content {
    border: 0px !important;
}

/* Add your custom styles here... */ 


/* =========================
   Yoast Breadcrumb Styling
   ========================= */
.sire-breadcrumbs {
    font-size: 14px;
    line-height: 1.4;
    margin: 12px 0 18px 0;
}

.sire-breadcrumbs a {
    text-decoration: none;
}

.sire-breadcrumbs a:hover {
    text-decoration: underline;
}

.sire-breadcrumbs span {
    opacity: 0.85;
}


/* ========================
   OPTIE 3 - Dual-Tone met Uniform Kaartsysteem
   ======================== */

/* ========================================
   NEW PROJECTS SECTIE
   ======================================== */

.fl-node-014rc8j53vgl > .fl-row-content-wrap {
  background-color: #f2f4f7 !important;
}

/* OPEN ASSIGNMENTS eyebrow */
.fl-node-014rc8j53vgl .sire-eyebrow {
  color: #3a6fa8 !important;
  font-size: 11px !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  opacity: 1 !important;
}

/* New Projects H3 heading — gebruik dubbele class selector voor hogere specificiteit */
.fl-node-z0e84bvo62p3.fl-module-heading,
.fl-node-z0e84bvo62p3.fl-module-heading :where(a, q, p, span) {
  color: #0d1b2e !important;
  font-size: 38px !important;
  font-weight: 900 !important;
  text-align: left !important;
}

/* Subtitle */
.fl-node-b64ylx7mw5ua.fl-module-heading,
.fl-node-b64ylx7mw5ua.fl-module-heading :where(a, q, p, span) {
  color: #4c6c87 !important;
  font-size: 15px !important;
  font-weight: 400 !important;
  text-align: left !important;
}

/* Job kaarten: witte achtergrond */
.fl-node-014rc8j53vgl .pp-content-post {
  background: #ffffff !important;
  border: none !important;
  border-right: 1px solid #dde3ea !important;
  border-bottom: 1px solid #dde3ea !important;
  padding: 32px 28px !important;
}

.fl-node-014rc8j53vgl .pp-content-posts {
  border: 1px solid #dde3ea !important;
}

/* Job titel */
.fl-node-014rc8j53vgl .sire_homepage_jobs_title {
  font-size: 15px !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.5px !important;
  margin-bottom: 14px !important;
  line-height: 1.4 !important;
}

.fl-node-014rc8j53vgl .sire_homepage_jobs_title a {
  color: #0d1b2e !important;
  text-decoration: none !important;
}

/* Accent lijn */
.fl-node-014rc8j53vgl .sire_homepage_sep {
  border: none !important;
  border-top: 2px solid #3a6fa8 !important;
  width: 40px !important;
  margin: 0 0 14px 0 !important;
  display: block !important;
}

/* Meta info */
.fl-node-014rc8j53vgl .sire_home_jobs_more_info_div {
  display: block !important;
}

.fl-node-014rc8j53vgl .sire_home_jobs_more_info {
  display: block !important;
  color: #5a7a95 !important;
  font-size: 13px !important;
  margin-bottom: 6px !important;
}

.fl-node-014rc8j53vgl .sire_home_jobs_more_info .sire_location_custom,
.fl-node-014rc8j53vgl .sire_home_jobs_more_info .sire_sector_custom {
  color: #0d1b2e !important;
  font-weight: 700 !important;
}

/* SEE JOB DETAILS button */
.fl-node-014rc8j53vgl .sire_see_jd_custom a {
  display: inline-block !important;
  margin-top: 20px !important;
  background: #1c3a5e !important;
  color: #ffffff !important;
  padding: 10px 22px !important;
  font-size: 12px !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  border-radius: 4px !important;
  text-decoration: none !important;
}

.fl-node-014rc8j53vgl .sire_see_jd_custom i {
  display: none !important;
}

/* ========================================
   CTA BAR
   ======================================== */

.fl-node-giduyj30v7o2 > .fl-row-content-wrap {
  background-color: #e8ecf1 !important;
  border-top: 1px solid #dde3ea !important;
}

.fl-node-giduyj30v7o2 .fl-module-content p,
.fl-node-giduyj30v7o2 .fl-module-content h1,
.fl-node-giduyj30v7o2 .fl-module-content h2,
.fl-node-giduyj30v7o2 .fl-module-content h3,
.fl-node-giduyj30v7o2 .fl-module-content h4 {
  color: #0d1b2e !important;
  font-size: 16px !important;
  font-weight: 400 !important;
}

.fl-node-giduyj30v7o2 .fl-module-content a {
  border: 2px solid #1c3a5e !important;
  color: #1c3a5e !important;
  background: transparent !important;
  padding: 12px 28px !important;
  font-size: 13px !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  display: inline-block !important;
}

/* ========================================
   VIEW PROJECTS BY SECTOR
   ======================================== */

.fl-node-sxkh5bqljzfe > .fl-row-content-wrap {
  background-color: #071018 !important;
}

/* Sector heading H4 */
.fl-node-irdou87v25a6.fl-module-heading,
.fl-node-irdou87v25a6.fl-module-heading :where(a, q, p, span) {
  color: #ffffff !important;
  font-size: 38px !important;
  font-weight: 900 !important;
  text-align: center !important;
}

/* 5-koloms grid */
.fl-node-sxkh5bqljzfe .fl-col-group {
  display: grid !important;
  grid-template-columns: repeat(5, 1fr) !important;
  gap: 0 !important;
  border: 1px solid #1e3352 !important;
  width: 100% !important;
}

.fl-node-sxkh5bqljzfe .fl-col {
  width: 100% !important;
  max-width: none !important;
  float: none !important;
}

/* Foto verbergen */
.fl-node-sxkh5bqljzfe .pp-photo-container {
  display: none !important;
}

/* Uniforme donkere kaart */
.fl-node-sxkh5bqljzfe .sire-sector-card-overlay {
  position: relative !important;
  top: auto !important;
  left: auto !important;
  transform: none !important;
  background: #122236 !important;
  padding: 32px 20px 28px !important;
  display: flex !important;
  flex-direction: column !important;
  min-height: 180px !important;
  border-right: 1px solid #1e3352 !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

/* SECTOR label */
.fl-node-sxkh5bqljzfe .sco-label {
  color: #5ba8d4 !important;
  font-size: 10px !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  margin-bottom: 10px !important;
  display: block !important;
}

/* Sector naam */
.fl-node-sxkh5bqljzfe .sco-name {
  color: #ffffff !important;
  font-size: 15px !important;
  font-weight: 800 !important;
  margin-bottom: 14px !important;
  line-height: 1.3 !important;
}

/* Accent lijn */
.fl-node-sxkh5bqljzfe .sco-line {
  width: 40px !important;
  height: 2px !important;
  background: #5ba8d4 !important;
  margin-bottom: 20px !important;
  display: block !important;
  flex-shrink: 0 !important;
}

/* VIEW PROJECTS button */
.fl-node-sxkh5bqljzfe .sco-btn {
  display: inline-block !important;
  background: #1c3a5e !important;
  color: #7eb8d4 !important;
  border: 1.5px solid #2e5a8a !important;
  padding: 10px 22px !important;
  font-size: 12px !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  margin-top: auto !important;
  align-self: flex-start !important;
}

.fl-node-sxkh5bqljzfe .sco-btn:hover {
  background: #2e5a8a !important;
  color: #ffffff !important;
}

.fl-node-sxkh5bqljzfe .pp-overlay-bg,
.fl-node-sxkh5bqljzfe .pp-rollover-img {
  display: none !important;
}

.fl-node-sxkh5bqljzfe .fl-col-content {
  height: 100% !important;
}

/* ========================================
   BUTTON CONSISTENCY FIX - VIEW PROJECTS sector
   ======================================== */

/* VIEW PROJECTS knoppen in sector sectie */
.sire-sector-jobs .pp-button,
.sire-sector-jobs a.pp-button,
.pp-content-grid .pp-button,
[class*="sire"] .pp-button {
  border-radius: 4px !important;
}

/* Algemene override voor alle donkerblauwe knoppen op homepage */
.sire_home_jobs_section .pp-button,
.sire_home_jobs_section a.pp-button {
  border-radius: 4px !important;
}

/* ========================================
   BUTTON RADIUS OVERRIDES - hogere specificiteit dan Beaver Builder inline CSS
   ======================================== */

/* SEE JOB DETAILS - override Beaver Builder inline !important */
html body .fl-node-014rc8j53vgl .sire_see_jd_custom a,
html body .fl-node-014rc8j53vgl .sire_see_jd_custom a:link,
html body .fl-node-014rc8j53vgl .sire_see_jd_custom a:visited {
  border-radius: 4px !important;
}

/* VIEW PROJECTS sector knoppen - Beaver Builder nodes met border-radius: 0px */
html body .fl-node-bzhc71ky4nrl .pp-button-wrap a.pp-button,
html body .fl-node-bzhc71ky4nrl .pp-button-wrap a.pp-button:visited,
html body .fl-node-tb4crkuws5i9 .pp-button-wrap a.pp-button,
html body .fl-node-tb4crkuws5i9 .pp-button-wrap a.pp-button:visited {
  border-radius: 4px !important;
}

/* ============================================================
   SIRE® WEBSITE AUDIT FIXES - v1.0
   Alle fixes op basis van uitgebreide audit
   ============================================================ */

/* ============================================================
   FIX 1: MOBIEL - Verticale tekst bug in job-kaarten
   Oplossing: word-break en min-width fix voor flex-children
   ============================================================ */
.pp-content-post,
.pp-content-grid-post,
.sire-job-card,
[class*="content-grid-post"],
[class*="pp-content-post"] {
  word-break: normal !important;
  overflow-wrap: break-word !important;
  min-width: 0 !important;
}

.pp-content-post .pp-post-title,
.pp-content-grid-post .pp-post-title,
.pp-content-post h4,
.pp-content-grid-post h4 {
  word-break: normal !important;
  word-wrap: break-word !important;
  overflow-wrap: break-word !important;
  hyphens: auto !important;
  white-space: normal !important;
}

@media (max-width: 768px) {
  .pp-content-grid-post,
  .pp-content-post {
    width: 100% !important;
    max-width: 100% !important;
    flex-shrink: 1 !important;
    min-width: 0 !important;
    overflow: hidden !important;
  }
  .pp-content-post .pp-post-title a,
  .pp-content-grid-post .pp-post-title a,
  .pp-content-post h4 a,
  .pp-content-grid-post h4 a {
    word-break: break-word !important;
    display: block !important;
    white-space: normal !important;
  }
}

/* ============================================================
   FIX 2: NAVIGATIE - 2-rijen nav fix voor 1350-1440px
   ============================================================ */
@media (min-width: 992px) {
  .fl-nav-bar .menu > li > a,
  .fl-page-nav .menu > li > a {
    letter-spacing: 0.5px !important;
    padding-left: 10px !important;
    padding-right: 10px !important;
    font-size: 13px !important;
  }
  .fl-page-nav-wrap,
  .fl-nav-bar-wrap {
    white-space: nowrap !important;
  }
}
@media (min-width: 1200px) {
  .fl-nav-bar .menu > li > a,
  .fl-page-nav .menu > li > a {
    letter-spacing: 1px !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
    font-size: 13.5px !important;
  }
}

/* ============================================================
   FIX 3: HERO HOOGTE - Minder whitespace op desktop
   ============================================================ */
@media (min-width: 992px) {
  .fl-builder-content [data-overlay="1"] .fl-hero-section,
  .fl-page-content .fl-col-group:first-child .fl-col,
  .fl-builder-content .fl-node:first-child .fl-hero-col {
    min-height: 480px !important;
  }
}

/* ============================================================
   FIX 4: SCROLL-DOWN INDICATOR op hero secties
   ============================================================ */
.sire-hero-scroll-indicator {
  position: absolute;
  bottom: 24px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  z-index: 10;
  cursor: pointer;
  animation: sire-bounce 2s infinite;
}
.sire-hero-scroll-indicator span {
  display: block;
  width: 20px;
  height: 20px;
  border-right: 2px solid rgba(255,255,255,0.7);
  border-bottom: 2px solid rgba(255,255,255,0.7);
  transform: rotate(45deg);
}
@keyframes sire-bounce {
  0%, 100% { transform: translateX(-50%) translateY(0); }
  50% { transform: translateX(-50%) translateY(8px); }
}

/* ============================================================
   FIX 5: UNIFORME HOVER STATES voor knoppen
   ============================================================ */
.fl-button:hover,
a.fl-button:hover,
.pp-button:hover,
a.pp-button:hover {
  opacity: 0.88 !important;
  transform: translateY(-1px) !important;
  transition: all 0.2s ease !important;
  box-shadow: 0 4px 12px rgba(0,0,0,0.2) !important;
}

/* ============================================================
   FIX 6: ACCESSIBILITY - Focus states (keyboard nav)
   ============================================================ */
.fl-button:focus,
a.fl-button:focus,
.pp-button:focus,
a.pp-button:focus,
button:focus,
input:focus,
select:focus,
textarea:focus {
  outline: 2px solid #5ba8d4 !important;
  outline-offset: 2px !important;
}
*:focus-visible {
  outline: 2px solid #5ba8d4 !important;
  outline-offset: 2px !important;
  border-radius: 2px !important;
}
*:focus:not(:focus-visible) {
  outline: none !important;
}

/* ============================================================
   FIX 7: SKIP TO CONTENT link (toegankelijkheid)
   ============================================================ */
.sire-skip-link {
  position: absolute;
  top: -40px;
  left: 0;
  background: #1a3a5c;
  color: white;
  padding: 8px 16px;
  text-decoration: none;
  z-index: 9999;
  font-size: 14px;
  transition: top 0.2s;
}
.sire-skip-link:focus {
  top: 0;
}

/* ============================================================
   FIX 8: SR-ONLY utility class (screenreader-only labels)
   ============================================================ */
.sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0,0,0,0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

/* ============================================================
   FIX 9: TAALVLAG INDICATOR voor gemixte NL/EN vacatures
   ============================================================ */
.sire-lang-badge {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  font-size: 11px;
  font-weight: 600;
  padding: 2px 7px;
  border-radius: 3px;
  background: rgba(255,255,255,0.12);
  color: rgba(255,255,255,0.85);
  border: 1px solid rgba(255,255,255,0.2);
  margin-left: 6px;
  vertical-align: middle;
  letter-spacing: 0.5px;
  text-transform: uppercase;
}
.sire-lang-badge.nl { background: rgba(174,28,40,0.15); border-color: rgba(174,28,40,0.3); }
.sire-lang-badge.en { background: rgba(0,82,180,0.15); border-color: rgba(0,82,180,0.3); }

/* ============================================================
   FIX 10: POPULAIRE ZOEKOPDRACHTEN styling
   ============================================================ */
.sire-search-suggestions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 12px;
}
.sire-search-suggestions span {
  font-size: 12px;
  color: rgba(255,255,255,0.65);
}
.sire-search-suggestions a {
  font-size: 12px;
  color: rgba(255,255,255,0.85);
  text-decoration: none;
  padding: 3px 10px;
  border: 1px solid rgba(255,255,255,0.25);
  border-radius: 20px;
  transition: all 0.2s;
  white-space: nowrap;
}
.sire-search-suggestions a:hover {
  background: rgba(255,255,255,0.1);
  border-color: rgba(255,255,255,0.5);
  color: white;
}

/* ============================================================
   FIX 11: COOKIE CONSENT - Verbeterde GDPR-stijl
   ============================================================ */
#cookie-law-info-bar {
  box-shadow: 0 -4px 20px rgba(0,0,0,0.15) !important;
  padding: 16px 24px !important;
}
.cli-bar-btn_container {
  display: flex !important;
  gap: 10px !important;
  flex-wrap: wrap !important;
}
#cookie_action_accept_header {
  background: #2e7d32 !important;
  border-radius: 4px !important;
  padding: 8px 18px !important;
  font-weight: 600 !important;
}
#cookie_action_reject_header {
  background: transparent !important;
  border: 1px solid #666 !important;
  border-radius: 4px !important;
  padding: 8px 18px !important;
  font-weight: 600 !important;
  color: #333 !important;
}

/* ============================================================
   FIX 12: FORM LABELS - Toegankelijkheid
   ============================================================ */
.fl-builder-content .fl-form-field label,
.gform_wrapper .gfield_label,
.wpcf7 .wpcf7-form-control-wrap label {
  font-size: 13px !important;
  font-weight: 600 !important;
  margin-bottom: 4px !important;
  display: block !important;
}

/* ============================================================
   FIX 13: JOB DETAIL PAGINA - Verbeterde leesbaarheid
   ============================================================ */
.sire-job-content h2,
.fl-post-content h2 {
  font-size: 1.3rem !important;
  font-weight: 700 !important;
  color: #1a3a5c !important;
  margin-top: 28px !important;
  margin-bottom: 10px !important;
  padding-bottom: 6px !important;
  border-bottom: 2px solid #e8f0f8 !important;
}

/* ============================================================
   FIX 14: MOBILE NAVIGATIE - Touch targets
   ============================================================ */
@media (max-width: 991px) {
  .fl-nav-bar .menu > li > a {
    padding: 12px 16px !important;
    min-height: 44px !important;
    display: flex !important;
    align-items: center !important;
  }
}

/* ============================================================
   FIX 15: SECTOR KAARTEN - Hover effect
   ============================================================ */
.sire-sector-card,
[class*="sector-card"],
[class*="sco-"] {
  transition: transform 0.2s ease, box-shadow 0.2s ease !important;
}
.sire-sector-card:hover,
[class*="sector-card"]:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 8px 24px rgba(0,0,0,0.15) !important;
}

/* ============================================================
   FIX 16: CLIENT/PARTNER LOGOS - Hover effect
   ============================================================ */
.fl-builder-content [class*="award"] img,
.fl-builder-content [class*="partner"] img,
.fl-builder-content [class*="client"] img {
  filter: grayscale(30%) !important;
  transition: filter 0.3s ease, opacity 0.3s ease !important;
  opacity: 0.85 !important;
}
.fl-builder-content [class*="award"] img:hover,
.fl-builder-content [class*="partner"] img:hover,
.fl-builder-content [class*="client"] img:hover {
  filter: grayscale(0%) !important;
  opacity: 1 !important;
}

/* ============================================================
   FIX 17: PRINT STIJLEN
   ============================================================ */
@media print {
  .fl-page-nav, header, .fl-builder-content [class*="popup"],
  .cookie-notice, #cookie-law-info-bar, .admin-bar { display: none !important; }
  body { font-size: 12pt !important; color: #000 !important; }
  a[href]::after { content: " (" attr(href) ")" !important; font-size: 10pt !important; }
}

/* ============================================================
   FIX 18: MOBILE FOOTER
   ============================================================ */
@media (max-width: 768px) {
  .fl-builder-content footer .menu,
  .fl-builder-content footer nav {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 4px 16px !important;
  }
  .fl-builder-content footer .menu li { list-style: none !important; }
}

/* ============================================================
   FIX 19: RESPONSIVE TABELLEN in content
   ============================================================ */
.fl-post-content table, .entry-content table {
  width: 100% !important;
  border-collapse: collapse !important;
  overflow-x: auto !important;
  display: block !important;
}
.fl-post-content table th,
.fl-post-content table td {
  padding: 10px 14px !important;
  text-align: left !important;
  border-bottom: 1px solid #e0e0e0 !important;
  font-size: 14px !important;
}
.fl-post-content table th {
  background: #f5f7fa !important;
  font-weight: 700 !important;
  color: #1a3a5c !important;
}

/* ============================================================
   FIX 20: SKELETON LOADING ANIMATIE
   ============================================================ */
.sire-skeleton {
  background: linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);
  background-size: 200% 100%;
  animation: sire-shimmer 1.5s infinite;
  border-radius: 4px;
}
@keyframes sire-shimmer {
  0% { background-position: -200% 0; }
  100% { background-position: 200% 0; }
}


/* ============================================================
   AUDIT FIX BATCH 2 — May 2026 — Design and Performance CSS
   ============================================================ */

/* CSS FIX B1: H2 typography — was 17px/weight 300, fix to proper heading size */
.fl-builder-content h2.fl-heading,
.fl-builder-content .fl-module-heading h2 {
  font-size: clamp(22px, 2.5vw, 32px) !important;
  font-weight: 600 !important;
  line-height: 1.3 !important;
}

/* CSS FIX B2: Counter stat numbers — improved visual presentation */
.fl-module-numbers .fl-number-string {
  font-size: 51px !important;
  font-weight: 300 !important;
  color: #01050c !important;
}
.fl-module-numbers .fl-number-after-text {
  font-size: 14px !important;
  font-weight: 600 !important;
  color: #4a5568 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.08em !important;
  margin-top: 4px !important;
}

/* CSS FIX B3: Navigation buttons consistent styling */
.pp-button {
  border-radius: 8px !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  letter-spacing: 0.05em !important;
  padding: 9px 22px !important;
  transition: background 0.2s ease, color 0.2s ease !important;
}

/* CSS FIX B4: Navigation wrapping prevention at medium widths */
@media (min-width: 1200px) {
  .fl-page-nav .fl-menu {
    flex-wrap: nowrap !important;
    white-space: nowrap !important;
  }
  .fl-page-nav .fl-menu > li > a {
    padding-left: 10px !important;
    padding-right: 10px !important;
    font-size: 13px !important;
  }
}

/* CSS FIX B5: Social icon touch targets min 44x44px */
.fl-page-footer .fl-icon-wrap a,
.fl-page-footer-bottom .fl-social-icons a {
  min-width: 44px !important;
  min-height: 44px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}

/* CSS FIX B6: Blog Location search field — hidden on blog/category pages */
.blog .facetwp-facet-location,
.category .facetwp-facet-location,
.archive .facetwp-facet-location {
  display: none !important;
}

/* CSS FIX B7: 404 page title styling */
.error404 .page-title {
  display: block !important;
  font-size: 2rem !important;
  font-weight: 700 !important;
  color: #1a3a5c !important;
  margin-bottom: 20px !important;
}

/* CSS FIX B8: Primary CTA button standardized */
.fl-builder-content .fl-button-wrap .fl-button,
.fl-builder-content a.fl-button {
  font-size: 14px !important;
  font-weight: 700 !important;
  border-radius: 4px !important;
  letter-spacing: 0.03em !important;
}

/* CSS FIX B9: Breadcrumb styling improvements */
.sire-breadcrumbs,
.breadcrumb-trail,
.yoast-breadcrumb {
  padding: 8px 0 !important;
  font-size: 13px !important;
  color: #718096 !important;
}
.sire-breadcrumbs a,
.breadcrumb-trail a {
  color: #4a7fa5 !important;
  text-decoration: none !important;
}
.sire-breadcrumbs a:hover,
.breadcrumb-trail a:hover {
  text-decoration: underline !important;
}

/* CSS FIX B10: Mobile touch targets */
@media (max-width: 768px) {
  .fl-button,
  input[type="submit"],
  button[type="submit"] {
    min-height: 44px !important;
  }
}

/* CSS FIX B11: FontAwesome font-display optimization */
@font-face {
  font-family: 'Font Awesome 6 Free';
  font-display: swap;
}
@font-face {
  font-family: 'Font Awesome 6 Brands';
  font-display: swap;
}

/* CSS FIX B12: Lazy loaded images */
img[loading="lazy"] {
  content-visibility: auto;
}

/* CSS FIX B13: FacetWP filter button consistency */
.facetwp-facet .facetwp-radio {
  border-radius: 4px !important;
}


/* ============================================================
   CONSULTANTS PAGE (page-id-98880)
   Styles to match blog/project page design consistency
   Added: May 2026
   ============================================================ */

/* Sector bar / category badge for consultant cards - added via JS */
.page-id-98880 .sire-sector-bar {
  background: #e8f0f8 !important;
  color: #1a4080 !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.8px !important;
  padding: 6px 14px !important;
  display: block !important;
}

/* Hide auto-generated post title */
.page-id-98880 .fl-post-title { display: none !important; }

/* Content padding fix */
.page-id-98880 .fl-content > .fl-page-content { padding: 0px !important; }

/* Post header hide */
body.page-id-98880 .fl-post-header { display: none !important; }

/* Heading size: match blog h1 size */
.page-id-98880 .fl-module-heading {
  font-size: 2.4rem !important;
}

/* Button consistent with blog/project pages */
.page-id-98880 .sire_see_jd_custom a {
  background: #0e1e35 !important;
  color: #ffffff !important;
  padding: 5px 13px !important;
  font-size: 12px !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  border-radius: 4px !important;
  text-decoration: none !important;
  display: inline-block !important;
  margin-top: 16px !important;
}

/* Ensure consultant name link is readable */
.page-id-98880 .sire_home_jobs_job_title {
  font-size: 15px !important;
  font-weight: 700 !important;
  color: #0d1b2e !important;
  text-decoration: none !important;
}

/* ============================================================
   CONSULTANTS PAGE (page-id-98880) — Design alignment with blog/project pages
   ============================================================ */

/* Hide the post title */
body.page-id-98880 .fl-post-title { display: none !important; }
body.page-id-98880 .fl-post-header { display: none !important; }

/* Remove content padding */
.page-id-98880 .fl-content > .fl-page-content { padding: 0px !important; }
.page-id-98880 .fl-post-content { margin: 0 !important; padding: 0 !important; }

/* Fix heading size to match blog h1 */
.page-id-98880 .fl-module-heading { font-size: 2.4rem !important; }

/* ---- EMPTY GREY AREA FIX: Hide the empty first column group ---- */
/* The template has an empty colgroup (fl-node-qx04fd7znybh) that creates ~480px grey space */
.page-id-98880 .fl-node-qx04fd7znybh { display: none !important; }

/* Make the content row full-width now that sidebar is hidden */
.page-id-98880 .fl-node-pmfsqb4oj0hw { width: 100% !important; }

/* Hide the hidden left sidebar column (was for filters) */
.page-id-98880 .fl-node-j503zx8nfgek { display: none !important; }

/* Make main content column full width */
.page-id-98880 .fl-node-vjyd8znxcf1e {
  width: 100% !important;
  max-width: 100% !important;
  flex: 0 0 100% !important;
}

/* ---- CARD GRID: 3 columns like blog/projects ---- */
.page-id-98880 .pp-content-posts {
  --column-xl: 3 !important;
  --column-lg: 3 !important;
  --column-md: 2 !important;
  --column-sm: 1 !important;
}

/* ---- CONSULTANT PHOTO styling ---- */
.sire-consultant-photo {
  width: 100%;
  overflow: hidden;
  border-radius: 4px 4px 0 0;
  margin-bottom: 0;
  background: #e8edf3;
  max-height: 200px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.sire-consultant-photo img {
  width: 100%;
  height: 200px;
  object-fit: cover;
  object-position: center top;
  display: block;
  border-radius: 4px 4px 0 0;
}

/* ---- SECTOR BAR (category badge) ---- */
.page-id-98880 .sire-sector-bar {
  background: #e8f0f8 !important;
  color: #1a4080 !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.8px !important;
  padding: 6px 14px !important;
  display: block !important;
  margin-bottom: 0 !important;
}

/* ---- CARD title ---- */
.page-id-98880 .sire_home_jobs_job_title {
  font-size: 15px !important;
  font-weight: 700 !important;
  color: #0d1b2e !important;
  text-decoration: none !important;
}

/* ---- Button styling consistent with blog/project pages ---- */
.page-id-98880 .sire_see_jd_custom a {
  background: #0e1e35 !important;
  color: #ffffff !important;
  padding: 5px 13px !important;
  font-size: 12px !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  border-radius: 4px !important;
  display: inline-block !important;
  margin-top: 16px !important;
  text-decoration: none !important;
}

/* ---- Card padding ---- */
.page-id-98880 .sire_home_jobs_main_container {
  padding: 0 !important;
}
.page-id-98880 .sire_home_jobs_main_row,
.page-id-98880 .sire_home_jobs_job_listings,
.page-id-98880 .sire_home_jobs_parent_row {
  margin: 0 !important;
}
.page-id-98880 .sire_home_jobs_main {
  padding: 14px 16px 12px !important;
}

/* Hide old extra bars injected previously */
.page-id-98880 .sire-top-cta-bar { display: none !important; }
.page-id-98880 .sire-sector-filter { display: none !important; }
.page-id-98880 .sire-location-filter { display: none !important; }
