.section {
  padding: clamp(16px, 3.5vw, 22px) clamp(16px, 3.5vw, 20px) clamp(40px, 10vw, 80px);
}

.section h2 {
  margin: 0 0 clamp(8px, 1.5vw, 10px);
}

.section p.lead {
  margin: 0 0 clamp(16px, 4vw, 24px);
  font-size: clamp(14px, 2vw, 16px);
}

.directors-layout {
  display: grid;
  grid-template-columns: minmax(0, 2fr) minmax(0, 1.1fr);
  grid-template-rows: clamp(320px, 40vw, 380px) auto;
  grid-template-areas:
    "hero featured"
    "cards cards";
  gap: clamp(12px, 2.5vw, 18px);
}

.hero {
  grid-area: hero;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  border-radius: var(--r-xl);
  border: 1px solid rgba(255, 255, 255, 0.06);
  box-shadow: var(--shadow);
}

.featured {
  grid-area: featured;
  display: flex;
  flex-direction: column;
  border-radius: var(--r-xl);
  overflow: hidden;
  box-shadow: var(--shadow);
  background:
    radial-gradient(clamp(300px, 50vw, 600px) clamp(200px, 40vh, 400px) at 80% -20%, rgba(76, 195, 255, 0.35), transparent 60%),
    linear-gradient(180deg, #111a28, #0f1725);
  border: 1px solid var(--border);
  transition: transform 0.18s ease, border-color 0.18s ease;
  min-height: clamp(280px, 35vw, 360px);
}

.featured:hover {
  transform: translateY(-3px);
  border-color: rgba(6, 91, 124, 0.4);
}

.featured .img-wrap {
  padding: clamp(12px, 3vw, 18px) clamp(12px, 3vw, 18px) 0;
}

.featured .img {
  width: 100%;
  aspect-ratio: 1 / 1;
  max-height: clamp(180px, 30vw, 215px);
  margin: 0 auto;
  object-fit: cover;
  border-radius: clamp(14px, 3vw, 18px);
  border: clamp(2px, 0.5vw, 3px) solid rgba(255, 255, 255, 0.06);
}

.featured .content {
  padding: clamp(12px, 2.5vw, 16px) clamp(12px, 3vw, 18px) clamp(16px, 3.5vw, 22px);
  background: linear-gradient(180deg, rgba(9, 14, 22, 0), rgba(7, 10, 18, 0.7));
  border-top-left-radius: clamp(18px, 4vw, 24px);
  border-top-right-radius: clamp(18px, 4vw, 24px);
}

.featured .name {
  font-size: clamp(16px, 2.5vw, 18px);
  font-weight: 700;
}

.featured .role {
  color: var(--muted);
  font-size: clamp(12px, 1.8vw, 13px);
  margin-top: 4px;
}

.featured .links {
  margin-top: clamp(12px, 2.5vw, 16px);
  display: flex;
  gap: clamp(8px, 2vw, 12px);
  flex-wrap: wrap;
}

.verticals-nav {
  max-width: 100%;
  margin: 0 auto 20px;
  display: grid;
  grid-template-columns: repeat(5, 1fr);
}

.verticals-nav a {
  padding: clamp(10px, 2.5vw, 14px) 0;
  text-align: center;
  border-radius: 0;
  background: linear-gradient(145deg, var(--accent), var(--accent-2));
  color: #001319;
  font-weight: 600;
  text-decoration: none;
  border-right: 1px solid rgba(255, 255, 255, 0.1);
  font-size: clamp(12px, 2vw, 16px);
}

.verticals-nav a:last-child {
  border-right: none;
}

.verticals-nav a:hover {
  transform: scale(1.05);
}

.site-note {
  text-align: center;
  color: var(--muted);
  font-size: 14px;
  margin: 0 0 10px;
  padding: 0 20px;
}

.directors-layout .cards {
  grid-area: cards;
  width: 100%;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  align-items: stretch;
}

.directors-layout .cards > .card {
  min-width: 0;
}

.market-insights-cards {
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 12px;
}

.market-insights-cards .card-top {
  padding: 10px 10px 0;
}

.market-insights-cards .img {
  width: 78%;
  border-radius: 14px;
}

.market-insights-cards .body {
  padding: 10px;
  gap: 5px;
}

.market-insights-cards .name {
  font-size: 14px;
  line-height: 1.25;
}

.market-insights-cards .role {
  font-size: 11px;
  line-height: 1.25;
  margin-top: 2px;
}

.market-insights-cards .links {
  padding-top: 8px;
  gap: 6px;
}

.market-insights-cards .btn.small {
  padding: 5px 8px;
  font-size: 11px;
}

@media (max-width: 1100px) {
  .market-insights-cards {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 980px) {
  .directors-layout {
    grid-template-columns: 1fr;
    grid-template-rows: clamp(200px, 35vw, 260px) auto auto;
    grid-template-areas:
      "hero"
      "featured"
      "cards";
  }
}

@media (max-width: 768px) {
  .verticals-nav {
    grid-template-columns: repeat(3, 1fr);
  }

  .verticals-nav a {
    border-right: 1px solid rgba(255, 255, 255, 0.1);
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  }

  .verticals-nav a:nth-child(3n) {
    border-right: none;
  }

  .verticals-nav a:nth-child(n + 4) {
    border-bottom: none;
  }

  .market-insights-cards {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 640px) {
  .card-top {
    flex: 0 0 auto;
    max-height: 50%;
    overflow: hidden;
  }

  .directors-layout .cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 480px) {
  .verticals-nav {
    grid-template-columns: repeat(2, 1fr);
  }

  .verticals-nav a {
    border-right: 1px solid rgba(255, 255, 255, 0.1);
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  }

  .verticals-nav a:nth-child(2n) {
    border-right: none;
  }

  .verticals-nav a:nth-child(n + 3) {
    border-bottom: none;
  }

  .directors-layout .cards,
  .market-insights-cards {
    grid-template-columns: 1fr !important;
  }
}
