/* ==========================================================================
   KOBIL — Technology / Application Security — Section: Compliance
   Figma 6087:54125 ("Built for Regulated Environments").

   Centred title (serif 56) + lead (20/26) in a 1080 column, then the
   compliance badge strip: Figma lays it out as 7 badges on one row and 3 on
   the next, both centred, with a uniform 60px gap and 24px between the rows.
   Reproduced as one centred flex-wrap capped at the same 778px the Figma
   frame uses, so it breaks 7/3 at desktop and reflows on its own below that.

   Each badge keeps its own Figma height (they are not uniform), with width
   auto so the artwork never distorts.

   Desktop values are --wN tokens (proportional zoom 768–2560 like every
   Aug-2026 sheet); the ≤1024/768/480 blocks below are the hand-tuned phone
   and tablet layouts and stay literal.
   ========================================================================== */

.sec-application-security-compliance {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--w60);
  width: 100%;
  padding: var(--w120) var(--w40);
}

.as-compliance__top {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--w16);
  width: 100%;
  max-width: var(--w1080);
  text-align: center;
}

.as-compliance__title {
  font-family: var(--font-serif);
  font-size: var(--w56);
  font-weight: 400;
  line-height: 1.3;
  color: var(--navy);
}

.as-compliance__lead {
  font-family: var(--font-sans);
  font-size: var(--w20);
  font-weight: 400;
  line-height: var(--w26);
  color: var(--navy-70);
}

/* ---- Badge strip ---- */

.as-compliance__badges {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: var(--w24) var(--w60);
  width: 100%;
  max-width: var(--w778);
  list-style: none;
  margin: 0;
  padding: 0;
}

/* Figma lays each row out as a 54px-tall items-center flex row
   (6100:64888 / 6100:64929); without the explicit height the rows were only
   as tall as their tallest badge (44), so the second row sat 10px too high. */
.as-compliance__badges li {
  display: flex;
  align-items: center;
  height: var(--w54);
}

.as-compliance__badge {
  display: block;
  width: auto;
  max-width: 100%;
}

/* Per-badge heights straight from Figma — the artwork is not a uniform size */
.as-compliance__badge--gdpr,
.as-compliance__badge--psd2 {
  height: var(--w44);
}

.as-compliance__badge--privacy {
  height: var(--w26);
}

.as-compliance__badge--eidas {
  height: var(--w19);
}

.as-compliance__badge--obe {
  height: var(--w32);
}

.as-compliance__badge--hipaa {
  height: var(--w43);
}

.as-compliance__badge--ccpa {
  height: var(--w44);
}

.as-compliance__badge--swift {
  height: var(--w35);
}

.as-compliance__badge--bddk {
  height: var(--w41);
}

.as-compliance__badge--glba {
  height: var(--w40);
}

/* ==========================================================================
   Responsive
   ========================================================================== */

@media (max-width: 1024px) {
  .sec-application-security-compliance {
    padding: 88px 40px;
    gap: 48px;
  }

  .as-compliance__title {
    font-size: 44px;
  }
}

@media (max-width: 768px) {
  .sec-application-security-compliance {
    padding: 64px 24px;
    gap: 40px;
  }

  .as-compliance__title {
    font-size: 34px;
    line-height: 1.2;
  }

  .as-compliance__lead {
    font-size: 16px;
    line-height: 23px;
  }

  .as-compliance__badges {
    gap: 20px 36px;
  }
}

@media (max-width: 480px) {
  .sec-application-security-compliance {
    padding: 56px 20px;
  }

  .as-compliance__title {
    font-size: 30px;
    line-height: 1.2;
  }

  .as-compliance__badges {
    gap: 20px 28px;
  }
}
