/* ==========================================================================
   FUTURE LEADERS V2 STYLES (Merged from _static/v2-styles.css)
   ========================================================================== */

/* ==========================================================================
   CSS VARIABLES (V2)
   ========================================================================== */

:root {
  /* Colors - Brand */
  --fl-midnight: #1A1A1A;
  --fl-cream: #F9F9F9;
  --fl-sand: #EDF2F4;

  /* Colors - Ink (text) */
  --fl-ink-900: #1A1A1A;
  --fl-ink-700: #373737;
  --fl-ink-600: #525252;
  --fl-ink-500: #6B7280;
  --fl-ink-400: #9CA3AF;
  --fl-ink-200: #E5E7EB;
  --fl-ink-100: #F3F4F6;

  /* Colors - Brand Navy */
  --fl-brand-950: #162029;
  --fl-brand-900: #1E2D3D;
  --fl-brand-700: #34495E;

  /* Colors - Accent (red) */
  --fl-accent-600: #C41E1A;
  --fl-accent-500: #E6231E;
  --fl-accent-400: #EF4444;

  /* Colors - CTA (orange) */
  --fl-cta-700: #C47D0E;
  --fl-cta-600: #E89418;
  --fl-cta-500: #F8A427;

  /* Typography */
  --fl-font-display: 'Fraunces', Georgia, serif;
  --fl-font-body: 'Plus Jakarta Sans', system-ui, sans-serif;

  /* Spacing */
  --fl-section-py: clamp(2.5rem, 5vw, 4rem);
  /* Reduced from 4rem-6rem */
  --fl-section-px: clamp(1.5rem, 4vw, 3rem);

  /* Radius */
  --fl-radius-sm: 0.5rem;
  --fl-radius-md: 0.75rem;
  --fl-radius-lg: 1rem;
}

/* ==========================================================================
   BASE & UTILITIES (V2)
   ========================================================================== */

.fl-font-display {
  font-family: var(--fl-font-display) !important;
}

.fl-text-gradient {
  background: linear-gradient(135deg, var(--fl-cta-500) 0%, var(--fl-accent-500) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

/* Section backgrounds */
.fl-section-dark {
  background-color: var(--fl-brand-900);
  padding: var(--fl-section-py) var(--fl-section-px);
}

.fl-section-light {
  background-color: var(--fl-cream);
  padding: var(--fl-section-py) var(--fl-section-px);
}

.fl-section-sand {
  background-color: var(--fl-sand);
  padding: var(--fl-section-py) var(--fl-section-px);
}

/* ==========================================================================
   LABELS
   ========================================================================== */

.fl-label {
  font-size: 0.75rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  color: var(--fl-accent-600);
  margin-bottom: 0.5rem;
}

.fl-section-dark .fl-label {
  color: var(--fl-accent-400);
}

/* ==========================================================================
   SECTION HEADERS
   ========================================================================== */

.fl-section-header {
  margin-bottom: 3rem;
}

.fl-section-header__title {
  font-size: clamp(1.75rem, 3vw + 0.5rem, 2.5rem);
  font-weight: 600;
  line-height: 1.2;
  color: var(--fl-ink-900);
  margin: 0;
}

.fl-section-dark .fl-section-header__title {
  color: #FFFFFF;
}

.fl-section-header__link {
  font-size: 0.875rem;
  font-weight: 500;
  margin: 0;
}

.fl-section-header__link a {
  color: var(--fl-accent-600);
  text-decoration: none;
  transition: color 0.2s;
}

.fl-section-header__link a:hover {
  color: var(--fl-accent-500);
}

/* ==========================================================================
   BUTTONS (V2 / WP Block)
   ========================================================================== */

.fl-btn .wp-block-button__link {
  font-family: var(--fl-font-body);
  font-weight: 600;
  font-size: 1rem;
  padding: 0.875rem 1.75rem;
  border-radius: var(--fl-radius-md);
  transition: all 0.3s ease;
  text-decoration: none;
}

/* Primary button (orange) */
.fl-btn--primary .wp-block-button__link {
  background: var(--fl-cta-600) !important;
  color: #FFFFFF !important;
  border: none;
}

.fl-btn--primary .wp-block-button__link:hover {
  background: var(--fl-cta-700) !important;
  box-shadow: 0 10px 25px -5px rgba(232, 148, 24, 0.3);
  transform: translateY(-2px);
}

/* Large button variant */
.fl-btn--lg .wp-block-button__link {
  font-size: 1.125rem;
  padding: 1rem 2.5rem;
}

/* Ghost button (dark backgrounds) */
.fl-btn--ghost .wp-block-button__link {
  background: rgba(255, 255, 255, 0.08) !important;
  color: rgba(255, 255, 255, 0.9) !important;
  border: 1px solid rgba(255, 255, 255, 0.15) !important;
}

.fl-btn--ghost .wp-block-button__link:hover {
  background: rgba(255, 255, 255, 0.12) !important;
  border-color: rgba(255, 255, 255, 0.25) !important;
}

/* Outline button (light backgrounds) */
.fl-btn--outline .wp-block-button__link {
  background: transparent !important;
  color: var(--fl-ink-700) !important;
  border: 1px solid var(--fl-ink-200) !important;
}

.fl-btn--outline .wp-block-button__link:hover {
  border-color: var(--fl-ink-400) !important;
  background: var(--fl-ink-100) !important;
}

/* ==========================================================================
   BADGES
   ========================================================================== */

.fl-badge {
  display: inline-block;
  font-size: 0.625rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.05em;
  padding: 0.25rem 0.75rem;
  border-radius: 9999px;
  margin: 0;
}

.fl-badge--accent {
  background: var(--fl-accent-500);
  color: #FFFFFF;
}

.fl-badge--muted {
  background: var(--fl-ink-200);
  color: var(--fl-ink-600);
}

/* ==========================================================================
   HERO
   ========================================================================== */

.fl-hero {
  /* min-height: 70vh; */
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  position: relative;
  overflow: hidden;
}

/* Decorative background */
.fl-hero::before {
  content: '';
  position: absolute;
  top: -20%;
  right: -10%;
  width: 500px;
  height: 500px;
  border-radius: 50%;
  background: rgba(78, 109, 135, 0.08);
  filter: blur(120px);
  pointer-events: none;
}

.fl-hero__content {
  position: relative;
  z-index: 1;
}

.fl-hero__title {
  font-size: clamp(2.25rem, 5vw + 0.5rem, 2.4rem);
  font-weight: 600;
  line-height: 1.1;
  color: #FFFFFF;
  margin-bottom: 1.5rem;
}

.fl-hero__subtitle {
  font-size: clamp(0.875rem, 1.2vw + 0.4rem, 1.1rem);
  /* Reduced from 1rem-1.25rem */
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.7);
  max-width: 600px;
  margin: 0 auto 2rem;
}

.fl-hero__buttons {
  gap: 1rem;
}

/* ==========================================================================
   COURSE CARDS
   ========================================================================== */

.fl-courses__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 1.5rem;
}

.fl-course-card {
  background: #FFFFFF;
  border: 1px solid var(--fl-ink-200);
  border-radius: var(--fl-radius-lg);
  padding: 2rem;
  transition: all 0.3s ease;
}

.fl-course-card:hover {
  box-shadow: 0 20px 40px -10px rgba(0, 0, 0, 0.1);
  transform: translateY(-4px);
}

/* Featured card highlight */
.fl-course-card--featured {
  border-color: var(--fl-accent-500);
  border-width: 2px;
  position: relative;
}

.fl-course-card--featured::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 4px;
  background: linear-gradient(90deg, var(--fl-cta-500), var(--fl-accent-500));
  border-radius: var(--fl-radius-lg) var(--fl-radius-lg) 0 0;
}

/* Coming soon card */
.fl-course-card--coming {
  opacity: 0.85;
}

.fl-course-card__badge-wrap {
  margin-bottom: 1rem;
}

.fl-course-card__duration {
  font-size: 0.75rem;
  color: var(--fl-ink-500);
  margin: 0;
}

.fl-course-card__title {
  font-size: 1.5rem;
  font-weight: 600;
  color: var(--fl-ink-900);
  margin: 0 0 0.75rem;
}

.fl-course-card__desc {
  font-size: 1rem;
  line-height: 1.6;
  color: var(--fl-ink-600);
  margin-bottom: 1.25rem;
}

.fl-course-card__features {
  font-size: 0.875rem;
  color: var(--fl-ink-600);
  padding-left: 1.25rem;
  margin-bottom: 1.5rem;
}

.fl-course-card__features li {
  margin-bottom: 0.5rem;
}

.fl-course-card__features li::marker {
  color: var(--fl-accent-500);
}

.fl-course-card__cta {
  margin-top: auto;
}

/* ==========================================================================
   ARTICLE CARDS
   ========================================================================== */

.fl-articles__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 2rem;
}

.fl-article-card {
  background: #FFFFFF;
  border-radius: var(--fl-radius-lg);
  padding: 1.75rem;
  transition: all 0.3s ease;
}

.fl-article-card:hover {
  box-shadow: 0 15px 30px -10px rgba(0, 0, 0, 0.08);
}

.fl-article-card__meta {
  font-size: 0.75rem;
  color: var(--fl-ink-400);
  margin-bottom: 0.75rem;
}

.fl-article-card__title {
  font-size: 1.125rem;
  font-weight: 600;
  line-height: 1.3;
  margin: 0 0 0.75rem;
}

.fl-article-card__title a {
  color: var(--fl-ink-900);
  text-decoration: none;
  transition: color 0.2s;
}

.fl-article-card__title a:hover {
  color: var(--fl-accent-600);
}

.fl-article-card__excerpt {
  font-size: 0.9375rem;
  line-height: 1.6;
  color: var(--fl-ink-500);
  margin: 0;
}

/* --- Post Grid Filtering --- */

.fl-post-filter-wrap {
  margin-bottom: 3.5rem;
}

.fl-post-filter__controls {
  display: flex;
  flex-wrap: wrap;
  gap: 1.25rem;
  margin-bottom: 3rem;
  align-items: center;
  justify-content: flex-start;
}

.fl-filter-search {
  position: relative;
  flex: 0 1 400px;
  min-width: 280px;
}

.fl-filter-search input,
.fl-filter-category select {
  width: 100%;
  height: 48px;
  padding: 0 1.25rem;
  border: 1px solid var(--fl-ink-200);
  border-radius: var(--fl-radius-md);
  font-family: inherit;
  font-size: 0.9375rem;
  background-color: #fff;
  color: var(--fl-ink-900);
  transition: all 0.2s ease;
  box-shadow: none;
  /* Removed default shadow */
  box-sizing: border-box;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  outline: none !important;
  border-style: solid !important;
  /* Force solid border */
}

/* Fix for Firefox's dotted line */
.fl-filter-search input::-moz-focus-inner,
.fl-filter-category select::-moz-focus-inner {
  border: 0 !important;
  padding: 0 !important;
}

.fl-filter-search input {
  padding-left: 3rem;
  padding-right: 3.5rem;
}

/* Clean, modern focus state - strictly controlled */
.fl-filter-search input:focus,
.fl-filter-category select:focus {
  outline: 0 !important;
  outline-offset: 0 !important;
  border-color: var(--fl-accent-500) !important;
  box-shadow: 0 0 0 3px rgba(230, 35, 30, 0.1) !important;
  background-color: #fff !important;
}

.fl-search-icon {
  position: absolute;
  left: 1.125rem;
  top: 50%;
  transform: translateY(-50%);
  color: var(--fl-ink-400);
  font-size: 0.9rem;
  pointer-events: none;
  z-index: 2;
}

.fl-loader-spinner {
  position: absolute;
  right: 1.125rem;
  top: 50%;
  transform: translateY(-50%);
  width: 18px;
  height: 18px;
  border: 2px solid var(--fl-ink-100);
  border-top: 2px solid var(--fl-accent-500);
  border-radius: 50%;
  opacity: 0;
  transition: opacity 0.2s ease;
  pointer-events: none;
  z-index: 2;
}

.fl-loader-spinner.is-active {
  opacity: 1;
  animation: fl-spin 0.8s linear infinite;
}

@keyframes fl-spin {
  0% {
    transform: translateY(-50%) rotate(0deg);
  }

  100% {
    transform: translateY(-50%) rotate(360deg);
  }
}

.fl-filter-category {
  flex: 0 1 250px;
  position: relative;
}

.fl-filter-category select {
  padding-right: 2.5rem;
  cursor: pointer;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%239CA3AF' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 1.25rem center;
}

/* Grid & Layout */
.uagb-post-grid.is-grid {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 2.5rem !important;
  /* Spacing in both directions */
  margin-bottom: 3rem;
}

.uagb-post__inner-wrap {
  cursor: pointer !important;
  /* Make sure entire card shows pointer */
}

.uagb-post-grid.is-loading {
  opacity: 0.6;
  pointer-events: none;
  filter: grayscale(0.2);
}

.fl-no-posts {
  grid-column: 1 / -1;
  text-align: center;
  padding: 5rem 2rem;
  background: #fff;
  border: 1px dashed var(--fl-ink-200);
  border-radius: var(--fl-radius-lg);
  color: var(--fl-ink-500);
  font-family: var(--fl-font-body);
}

/* Category Browser (Footer) */
.fl-category-browser-wrap {
  margin-top: 5rem;
  padding-top: 3rem;
  border-top: 1px solid var(--fl-ink-100);
}

.fl-category-browser__title {
  font-family: var(--fl-font-display);
  font-size: 1.25rem;
  font-weight: 600;
  margin-bottom: 1.5rem;
  color: var(--fl-ink-900);
}

.fl-category-browser__list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}

.fl-cat-pill {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.5rem 1rem;
  background: var(--color-brand-50, #EDF2F6);
  color: var(--color-brand-600, #3E5871);
  border: 1px solid transparent;
  border-radius: 9999px;
  font-family: var(--fl-font-body);
  font-size: 0.875rem;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease;
}

.fl-cat-pill:hover {
  background: var(--color-brand-100, #DDE9F0);
  border-color: var(--color-brand-200, #C0D5E3);
  color: #B71C1A;
  /* Requested hover color */
  transform: translateY(-1px);
}

.fl-cat-pill:hover .fl-cat-pill__count {
  color: #B71C1A;
}

.fl-cat-pill__count {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 20px;
  height: 20px;
  padding: 0 6px;
  background: rgba(255, 255, 255, 0.5);
  color: var(--color-brand-700, #34495E);
  border-radius: 9999px;
  font-size: 0.75rem;
}

/* Pagination */
.uagb-post-pagination-wrap {
  margin-top: 4rem;
  display: flex;
  justify-content: center;
  gap: 0.625rem;
  flex-wrap: wrap;
}


/* ==========================================================================
   ABOUT SECTION
   ========================================================================== */

.fl-about__columns {
  align-items: stretch;
  gap: 4rem;
}

.fl-about__image-col {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

.fl-about__image img {
  border-radius: var(--fl-radius-lg);
  box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.15);
}

.fl-about__title {
  font-size: clamp(1.75rem, 3vw + 0.5rem, 2.25rem);
  font-weight: 600;
  line-height: 1.2;
  color: var(--fl-ink-900);
  margin: 0.5rem 0 1.5rem;
}

.fl-about__text {
  font-size: 1.0625rem;
  line-height: 1.7;
  color: var(--fl-ink-600);
  margin-bottom: 1rem;
}

/* .VisaBadge {
  display: inline-block;
  color: transparent;
  width: 2.6em;
  height: 0.8em;
  background-image: url("data:image/webp;base64,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");
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center center;
  vertical-align: middle;
  transform: translateY(-2px);
  line-height: inherit;
} TEMPORARILY DISABLED */


.fl-about__stats {
  margin-top: 1.5rem;
  gap: 2rem;
  justify-content: center;
  width: 100%;
}

.fl-stat {
  text-align: center;
}

.fl-stat__value {
  font-family: var(--fl-font-display);
  font-size: 2.5rem;
  font-weight: 700;
  color: var(--fl-cta-500);
  line-height: 1;
  margin: 0;
}

.fl-stat__label {
  font-size: 0.875rem;
  color: var(--fl-ink-500);
  margin: 0.25rem 0 0;
}

.fl-about__stats>.fl-stat>.fl-stat__value {
  margin-bottom: 0 !important;
}

.fl-about__stats>.fl-stat>.fl-stat__label {
  font-weight: 800 !important;
}

/* ==========================================================================
   NEWSLETTER
   ========================================================================== */

.fl-newsletter {
  text-align: center;
}

.fl-newsletter__title {
  font-size: clamp(1.75rem, 3vw + 0.5rem, 2.5rem);
  font-weight: 600;
  color: #FFFFFF;
  margin-bottom: 1rem;
}

.fl-newsletter__desc {
  font-size: 1.0625rem;
  line-height: 1.6;
  color: rgba(255, 255, 255, 0.7);
  max-width: 500px;
  margin: 0 auto 2rem;
}

.fl-newsletter__form {
  max-width: 480px;
  margin: 0 auto;
}

.fl-newsletter__form-row {
  display: flex;
  gap: 0.75rem;
}

.fl-newsletter__input {
  flex: 1;
  padding: 1rem 1.25rem;
  font-size: 1rem;
  font-family: var(--fl-font-body);
  border: 1px solid rgba(255, 255, 255, 0.15);
  border-radius: var(--fl-radius-md);
  background: rgba(255, 255, 255, 0.08);
  color: #FFFFFF;
  outline: none;
  transition: all 0.3s ease;
}

.fl-newsletter__input::placeholder {
  color: rgba(255, 255, 255, 0.5);
}

.fl-newsletter__input:focus {
  border-color: rgba(255, 255, 255, 0.3);
  background: rgba(255, 255, 255, 0.1);
}

.fl-newsletter__submit {
  padding: 1rem 1.75rem;
  font-size: 1rem;
  font-weight: 600;
  font-family: var(--fl-font-body);
  background: var(--fl-cta-500);
  color: var(--fl-ink-900);
  border: none;
  border-radius: var(--fl-radius-md);
  cursor: pointer;
  transition: all 0.3s ease;
  white-space: nowrap;
}

.fl-newsletter__submit:hover {
  background: var(--fl-cta-600);
  box-shadow: 0 10px 25px -5px rgba(248, 164, 39, 0.4);
}

.fl-newsletter__privacy {
  font-size: 0.75rem;
  color: rgba(255, 255, 255, 0.5);
  margin-top: 1rem;
}

/* ==========================================================================
   FINAL CTA
   ========================================================================== */

.fl-cta {
  text-align: center;
}

.fl-cta__title {
  font-size: clamp(1.75rem, 3vw + 0.5rem, 2.5rem);
  font-weight: 600;
  color: var(--fl-ink-900);
  margin-bottom: 1rem;
}

.fl-cta__desc {
  font-size: 1.125rem;
  line-height: 1.6;
  color: var(--fl-ink-600);
  max-width: 500px;
  margin: 0 auto 2rem;
}

.fl-cta__buttons {
  gap: 1rem;
}

/* ==========================================================================
   TABLET (max-width: 1024px)
   Container 1080px zaczyna być ściskany — 2 kolumny, stack about
   ========================================================================== */

@media (max-width: 1024px) {
  .uagb-post-grid.is-grid {
    grid-template-columns: repeat(2, 1fr) !important;
  }

  .fl-about__columns {
    flex-direction: column;
    gap: 2.5rem;
  }

  .fl-about__image-col,
  .fl-about__content-col {
    flex-basis: 100% !important;
  }

  .fl-about__image img {
    max-width: 400px;
    margin: 0 auto;
    display: block;
  }
}

/* ==========================================================================
   MOBILE (max-width: 768px)
   Jedna kolumna, stack pionowy, uproszczony layout
   ========================================================================== */

@media (max-width: 768px) {
  :root {
    --fl-section-py: 3rem;
    --fl-section-px: 1.25rem;
  }

  /* Hero */
  .fl-hero {
    min-height: auto;
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
  }

  .fl-hero__buttons {
    flex-direction: column;
    align-items: center;
  }

  /* Section headers */
  .fl-section-header {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 1rem;
  }

  /* Post grid & filters */
  .fl-post-filter__controls {
    flex-direction: column;
    align-items: stretch;
    gap: 1rem;
  }

  .fl-filter-search,
  .fl-filter-category {
    flex: 1 1 auto;
    width: 100%;
    max-width: none;
  }

  .uagb-post-grid.is-grid {
    grid-template-columns: 1fr !important;
    gap: 1.5rem !important;
  }

  /* Course & article cards */
  .fl-courses__grid,
  .fl-articles__grid {
    grid-template-columns: 1fr;
  }

  .fl-course-card,
  .fl-article-card {
    padding: 1.5rem;
  }

  /* Newsletter */
  .fl-newsletter__form-row {
    flex-direction: column;
  }

  .fl-newsletter__submit {
    width: 100%;
  }

  /* About — reorder: title above image */
  .fl-about__columns {
    gap: 0 !important;
  }

  .fl-about__content-col {
    display: contents !important;
  }

  .fl-about__image-col {
    display: contents !important;
  }

  .fl-about__columns .wp-block-column {
    max-width: 100% !important;
  }

  .fl-about__image img {
    max-width: 100% !important;
    height: auto !important;
  }

  .fl-about__content-col .fl-label {
    order: 1 !important;
  }

  .fl-about__content-col .fl-about__title {
    order: 2 !important;
    margin-bottom: 1rem !important;
  }

  .fl-about__image-col .fl-about__image {
    order: 3 !important;
    margin-bottom: 1.5rem !important;
  }

  .fl-about__content-col .fl-about__text {
    order: 5 !important;
    margin-top: 0 !important;
    margin-bottom: 0.75rem !important;
  }

  .fl-about__content-col p:not(.fl-label):not(.fl-about__text) {
    order: 5 !important;
    margin-top: 0 !important;
    margin-bottom: 0.75rem !important;
  }

  .fl-about__image-col .fl-about__stats {
    order: 7 !important;
    margin-top: 0.5rem !important;
  }

  /* CTA */
  .fl-cta__buttons {
    flex-direction: column;
    align-items: center;
  }
}