/* ============================================================
   Kaizen Solutions Group (KSG) - Brand Stylesheet v2
   Primary: KSG Red #DD1A32  ·  Dark crimson / near-black system
   ============================================================ */

:root {
  /* Brand red */
  --red: #dd1a32;
  --red-bright: #e8243f;
  --red-2: #c2182b;
  --red-dark: #a51e22;
  --red-deep: #7a1420;
  --ember: #ff5a4d;
  /* warm highlight for gradients only */

  /* Dark crimson surfaces */
  --maroon-950: #120406;
  --maroon-900: #190711;
  --maroon-850: #210813;
  --maroon-800: #2a0a16;
  --maroon-700: #380e1d;

  /* Light surfaces */
  --paper: #ffffff;
  --paper-2: #faf6f7;
  --paper-3: #f4eef0;

  /* Ink + text */
  --ink: #1a1418;
  --ink-soft: #4a3b41;
  --muted: #c7adb4;
  /* light text on dark */
  --muted-2: #9a818a;
  --line-light: #ece2e5;
  --line-dark: rgba(255, 255, 255, .10);

  /* Gradients */
  --grad-red: linear-gradient(135deg, #e8243f 0%, #a51e22 100%);
  --grad-red-soft: linear-gradient(135deg, #dd1a32 0%, #7a1420 100%);
  --grad-text: linear-gradient(100deg, #ff5a4d 0%, #dd1a32 55%, #a51e22 100%);
  --grad-dark: linear-gradient(160deg, #210813 0%, #120406 55%, #2a0a16 100%);
  --grad-hero: radial-gradient(120% 120% at 70% 20%, #3a0e1d 0%, #190711 45%, #0d0305 100%);

  /* Subtle pattern (brand square motif) for LIGHT sections */
  --pattern-light: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='52' height='52' viewBox='0 0 52 52'%3E%3Cg fill='none' stroke='%23a51e22' stroke-opacity='0.05'%3E%3Crect x='16' y='16' width='20' height='20' rx='4'/%3E%3Cline x1='36' y1='16' x2='16' y2='36'/%3E%3C/g%3E%3Ccircle cx='4' cy='4' r='1' fill='%23a51e22' fill-opacity='0.05'/%3E%3C/svg%3E");
  /* Faint HUD rings for DARK sections */
  --pattern-dark: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='60' viewBox='0 0 60 60'%3E%3Cg fill='none' stroke='%23dd1a32' stroke-opacity='0.045'%3E%3Crect x='20' y='20' width='20' height='20' rx='4'/%3E%3Cline x1='40' y1='20' x2='20' y2='40'/%3E%3C/g%3E%3C/svg%3E");

  /* Typography */
  --font-sans: "Inter", "Segoe UI", system-ui, -apple-system, Roboto, Arial, sans-serif;

  /* Layout */
  --maxw: 1200px;
  --radius: 16px;
  --radius-sm: 11px;
  --shadow: 0 20px 55px rgba(18, 4, 6, .14);
  --shadow-lg: 0 36px 90px rgba(18, 4, 6, .30);
  --shadow-red: 0 16px 40px rgba(221, 26, 50, .28);
  --nav-h: 78px;
}

/* ---------- Reset ---------- */
*,
*::before,
*::after {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0;
  font-family: var(--font-sans);
  color: var(--ink);
  background: var(--paper);
  background-image: var(--pattern-light);
  line-height: 1.65;
  font-size: 17px;
  -webkit-font-smoothing: antialiased;
}

img {
  max-width: 100%;
  display: block;
}

a {
  color: inherit;
  text-decoration: none;
}

ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

h1,
h2,
h3,
h4 {
  line-height: 1.12;
  margin: 0 0 .5em;
  font-weight: 800;
  letter-spacing: -0.022em;
}

h1 {
  font-size: clamp(2.3rem, 5vw, 3.9rem);
}

h2 {
  font-size: clamp(1.8rem, 3.6vw, 2.8rem);
}

h3 {
  font-size: 1.32rem;
}

p {
  margin: 0 0 1rem;
}

::selection {
  background: var(--red);
  color: #fff;
}

/* ---------- Utilities ---------- */
.container {
  width: 100%;
  max-width: var(--maxw);
  margin: 0 auto;
  padding: 0 24px;
}

.section {
  padding: 92px 0;
  position: relative;
}

.section-sm {
  padding: 60px 0;
  position: relative;
}

/* light surfaces carry the subtle pattern */
.tint {
  background-color: var(--paper-2);
  background-image: var(--pattern-light);
}

.tint-2 {
  background-color: var(--paper-3);
  background-image: var(--pattern-light);
}

/* dark surfaces */
.dark {
  background-color: var(--maroon-900);
  background-image: var(--grad-dark), var(--pattern-dark);
  color: var(--muted);
}

.darker {
  background-color: var(--maroon-950);
  background-image: var(--pattern-dark);
  color: var(--muted);
}

.dark h1,
.dark h2,
.dark h3,
.darker h1,
.darker h2,
.darker h3 {
  color: #fff;
}

.center {
  text-align: center;
}

.eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 11px;
  font-size: 1.14rem;
  font-weight: 800;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--red);
  margin-bottom: 16px;
}

.eyebrow::before {
  content: "";
  width: 30px;
  height: 2px;
  background: var(--red);
  display: inline-block;
}

.dark .eyebrow,
.darker .eyebrow {
  color: var(--red-bright);
}

.dark .eyebrow::before,
.darker .eyebrow::before {
  background: var(--red-bright);
}

.lead {
  font-size: 1.16rem;
  color: var(--ink-soft);
  max-width: 62ch;
}

.dark .lead,
.darker .lead {
  color: var(--muted);
}

.center .lead {
  margin-left: auto;
  margin-right: auto;
}

.gradient-text {
  background: var(--grad-text);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
}

.section-head {
  max-width: 780px;
  margin: 0 auto 60px;
  text-align: center;
}

/* ---------- Buttons ---------- */
.btn {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  cursor: pointer;
  padding: 15px 30px;
  border-radius: 999px;
  font-weight: 700;
  font-size: .98rem;
  border: 1px solid transparent;
  transition: transform .16s ease, box-shadow .22s ease, background .2s ease, border-color .2s;
  white-space: nowrap;
}

.btn:hover {
  transform: translateY(-2px);
}

.btn-primary {
  background: var(--grad-red);
  color: #fff;
  box-shadow: var(--shadow-red);
}

.btn-primary:hover {
  box-shadow: 0 20px 48px rgba(221, 26, 50, .42);
}

.btn-solid {
  background: var(--red);
  color: #fff;
}

.btn-solid:hover {
  background: var(--red-bright);
}

.btn-ghost {
  background: transparent;
  color: #fff;
  border-color: rgba(255, 255, 255, .34);
}

.btn-ghost:hover {
  border-color: var(--red-bright);
  color: #fff;
  background: rgba(221, 26, 50, .14);
}

.btn-outline {
  background: transparent;
  color: var(--red);
  border-color: rgba(165, 30, 34, .4);
}

.btn-outline:hover {
  border-color: var(--red);
  background: rgba(221, 26, 50, .06);
}

.btn-arrow::after {
  content: "→";
  font-weight: 700;
  transition: transform .15s;
}

.btn-arrow:hover::after {
  transform: translateX(4px);
}

/* ---------- Brand / logo ---------- */
.brand {
  display: flex;
  align-items: center;
  gap: 13px;
}

.brand .logo-mark {
  width: 42px;
  height: 42px;
  flex-shrink: 0;
}

.brand-logo {
  height: 62px;
  width: auto;
  display: block;
  flex-shrink: 0;
}

.brand .brand-text {
  display: none;
}

.footer .brand-logo {
  height: 46px;
}

/* ---------- Hero (homepage base) ---------- */
.hero {
  position: relative;
  overflow: hidden;
  background: var(--grad-hero);
  color: #fff;
  min-height: calc(100vh - var(--nav-h));
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}

.hero-bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  opacity: .92;
  z-index: 0;
}

.hero-overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(90deg, #160611 0%, rgba(22, 6, 17, .78) 40%, rgba(22, 6, 17, .25) 70%, rgba(22, 6, 17, .5) 100%);
}

.hero-particles {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
  pointer-events: none;
}

.hero>.container {
  position: relative;
  z-index: 3;
  padding-top: 70px;
  padding-bottom: 26px;
}

.hero-inner {
  max-width: 700px;
}

.hero h1 {
  font-size: clamp(2.4rem, 5.2vw, 4.1rem);
  line-height: 1.05;
  margin: 0 0 22px;
  color: #fff;
  letter-spacing: -.5px;
}

.hero p {
  font-size: 1.12rem;
  line-height: 1.6;
  max-width: 600px;
  color: rgba(255, 255, 255, .85);
  margin: 0 0 30px;
}

.hero-actions {
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
}

.hero-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  margin-top: 44px;
}

.hero-badges .hb {
  display: flex;
  flex-direction: column;
  gap: 5px;
  padding: 14px 20px;
  border-radius: 14px;
  background: rgba(255, 255, 255, .07);
  border: 1px solid rgba(255, 255, 255, .16);
  min-width: 92px;
}

.hero-badges .hb b {
  font-size: 1.55rem;
  line-height: 1;
  color: #fff;
}

.hero-badges .hb span {
  font-size: .8rem;
  color: rgba(255, 255, 255, .72);
}

.hero-trust {
  position: relative;
  z-index: 3;
  border-top: 1px solid rgba(255, 255, 255, .12);
}

.hero-trust .container {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 8px 18px;
  padding: 18px 0;
}

.hero-trust .tlabel {
  font-size: .76rem;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, .62);
}

.hero-trust .tlabel:first-child {
  color: #fff;
  font-weight: 700;
}

@media (max-width: 760px) {
  .hero {
    min-height: 0;
  }

  .hero>.container {
    padding-top: 116px;
    padding-bottom: 30px;
  }

  .hero h1 {
    font-size: 2.1rem;
  }

  .hero p {
    font-size: 1rem;
  }
}

/* ---------- Hero: white/red cyber theme (homepage) ---------- */
.hero-light {
  background: #ffffff;
  border-bottom: 1px solid var(--line-light);
}

.hero-light .hero-overlay {
  background: linear-gradient(90deg, #ffffff 0%, rgba(255, 255, 255, .72) 40%, rgba(255, 255, 255, 0) 68%);
}

.hero-light h1 {
  color: var(--ink);
}

.hero-light h1 .gradient-text {
  filter: none;
}

.hero-light p {
  color: var(--ink-soft);
}

.hero-light .btn-ghost {
  color: var(--ink);
  border-color: rgba(26, 20, 24, .28);
  background: rgba(255, 255, 255, .55);
}

.hero-light .btn-ghost:hover {
  color: var(--red);
  border-color: var(--red);
  background: #fff;
}

.hero-light .hero-badges .hb {
  background: #fff;
  border: 1px solid var(--line-light);
  box-shadow: 0 8px 22px rgba(18, 4, 6, .07);
}

.hero-light .hero-badges .hb b {
  color: var(--red);
}

.hero-light .hero-badges .hb span {
  color: var(--muted-2);
}

.hero-light .hero-trust {
  border-top: 1px solid var(--line-light);
}

.hero-light .hero-trust .tlabel {
  color: var(--muted-2) !important;
}

.hero-light .hero-trust .tlabel:first-child {
  color: var(--ink) !important;
  font-weight: 700;
}

/* ---------- Partner logo marquee (scrolling, uniform tiles) ---------- */
.logo-marquee {
  position: relative;
  margin-top: 24px;
  padding: 30px 0;
  background: #2a0f1a;
  background-image: var(--pattern-dark);
  overflow: hidden;
}

.logo-marquee::before,
.logo-marquee::after {
  content: "";
  position: absolute;
  top: 0;
  bottom: 0;
  width: 11%;
  min-width: 95px;
  z-index: 2;
  pointer-events: none;
}

.logo-marquee::before {
  left: 0;
  background: linear-gradient(90deg, #100305 0%, rgba(16, 3, 5, 0.85) 30%, rgba(16, 3, 5, 0) 100%);
}

.logo-marquee::after {
  right: 0;
  background: linear-gradient(270deg, #100305 0%, rgba(16, 3, 5, 0.85) 30%, rgba(16, 3, 5, 0) 100%);
}

/* ---------- FAQ redesign (two-column) ---------- */
.faq-split {
  display: grid;
  grid-template-columns: 360px 1fr;
  gap: 54px;
  align-items: start;
}

.faq-intro {
  position: sticky;
  top: calc(var(--nav-h) + 24px);
}

.faq-tag {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: #fff;
  border: 1px solid var(--line-light);
  border-radius: 999px;
  padding: 7px 15px;
  font-size: .72rem;
  font-weight: 800;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: var(--ink);
}

.faq-tag svg {
  color: var(--red);
}

.faq-intro h2 {
  font-size: 2.5rem;
  line-height: 1.12;
  margin: 18px 0 14px;
}

.faq-call {
  display: inline-flex;
  align-items: center;
  gap: 14px;
  margin-top: 28px;
}

.faq-call-ic {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background: var(--grad-red);
  color: #fff;
  display: grid;
  place-items: center;
  box-shadow: var(--shadow-red);
  flex-shrink: 0;
}

.faq-call-txt {
  display: flex;
  flex-direction: column;
  line-height: 1.25;
}

.faq-call-txt small {
  font-size: .72rem;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: var(--muted-2);
}

.faq-call-txt strong {
  font-size: 1.18rem;
  color: var(--ink);
}

.faq-split .faq-list {
  max-width: none;
  margin: 0;
}

.faq-split .faq-item {
  margin-bottom: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  overflow: hidden;
}

.faq-split .faq-item:not(.open) {
  background: #fff;
  border-left: 1px solid var(--line-light);
  border-right: 1px solid var(--line-light);
  border-bottom: 1px dashed var(--line-light);
}

.faq-split .faq-item:not(.open):first-child,
.faq-split .faq-item.open+.faq-item:not(.open) {
  border-top: 1px solid var(--line-light);
  border-top-left-radius: 14px;
  border-top-right-radius: 14px;
}

.faq-split .faq-item:not(.open):last-child {
  border-bottom: 1px solid var(--line-light);
  border-bottom-left-radius: 14px;
  border-bottom-right-radius: 14px;
}

.faq-split .faq-item.open {
  background: var(--grad-red);
  border: 0;
  border-radius: 16px;
  box-shadow: var(--shadow-red);
  margin-bottom: 16px;
}

.faq-item.open .faq-q {
  color: #fff;
}

.faq-item.open .faq-a-inner {
  color: rgba(255, 255, 255, .92);
  border-top: 1px dashed rgba(255, 255, 255, .34);
  margin: 0 26px;
  padding: 18px 0 24px;
}

.faq-item.open .eyebrow {
  color: #fff !important;
}

.faq-item.open .eyebrow::before {
  background: #fff !important;
}

.faq-q .ic {
  position: relative;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  border: 2px solid var(--red);
  flex-shrink: 0;
  font-size: 0;
  transition: background .2s ease, border-color .2s ease;
  transform: none;
}

.faq-q .ic::before,
.faq-q .ic::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: var(--red);
  border-radius: 2px;
}

.faq-q .ic::before {
  width: 13px;
  height: 2.4px;
}

.faq-q .ic::after {
  width: 2.4px;
  height: 13px;
}

.faq-item.open .faq-q .ic {
  background: #fff;
  border-color: #fff;
  transform: none;
}

.faq-item.open .faq-q .ic::before {
  background: var(--red);
}

.faq-item.open .faq-q .ic::after {
  opacity: 0;
}

@media (max-width: 900px) {
  .faq-split {
    grid-template-columns: 1fr;
    gap: 30px;
  }

  .faq-intro {
    position: static;
  }

  .faq-intro h2 {
    font-size: 2rem;
  }
}

/* ---------- Client / Past-performance tiles ---------- */
.client-tile {
  background: #fff;
  border: 1px solid var(--line-light);
  border-radius: 14px;
  padding: 30px 20px;
  text-align: center;
  position: relative;
  overflow: hidden;
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.client-tile::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  height: 3px;
  width: 100%;
  background: var(--grad-red);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .28s ease;
}

.client-tile:hover {
  transform: translateY(-6px);
  box-shadow: var(--shadow);
  border-color: rgba(221, 26, 50, .25);
}

.client-tile:hover::before {
  transform: scaleX(1);
}

.client-ic {
  width: 50px;
  height: 50px;
  border-radius: 13px;
  display: grid;
  place-items: center;
  margin-bottom: 16px;
  color: var(--red);
  background: linear-gradient(135deg, rgba(221, 26, 50, .10), rgba(165, 30, 34, .14));
  border: 1px solid rgba(221, 26, 50, .16);
}

.client-tile h3 {
  font-size: 1.16rem;
  font-weight: 800;
  color: var(--ink);
  letter-spacing: .01em;
  margin: 0 0 13px;
  padding-bottom: 13px;
  position: relative;
}

.client-tile h3::after {
  content: "";
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translateX(-50%);
  width: 26px;
  height: 3px;
  border-radius: 2px;
  background: var(--grad-red);
}

.client-tile p {
  font-size: .85rem;
  color: var(--muted-2);
  line-height: 1.5;
  margin: 0;
}

/* ---------- Core Capabilities: flush divided panel (centered) ---------- */
.caps-rows {
  display: grid;
  gap: 26px;
}

.caps-flush {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1px;
  background: var(--line-light);
  border: 1px solid var(--line-light);
  border-radius: 18px;
  overflow: hidden;
  box-shadow: var(--shadow);
}

.caps-flush .cap-card {
  border: 0;
  border-radius: 0;
  background: #fff;
  box-shadow: none;
  text-align: center;
  align-items: center;
  padding: 42px 30px;
}

.caps-flush .cap-card::before {
  display: none;
}

.caps-flush .cap-card:hover {
  transform: none;
  box-shadow: none;
  background: var(--paper-2);
}

.caps-flush .cap-icon {
  margin: 0 auto 18px;
  border-radius: 50%;
}

.caps-flush .cap-card h3 {
  margin-bottom: 12px;
}

.caps-flush .cap-card .more {
  justify-content: center;
  padding-top: 22px;
}

@media (max-width: 860px) {
  .caps-flush {
    grid-template-columns: 1fr;
  }
}

/* ---------- Modern icon treatment (site-wide) ---------- */
.cap-icon {
  width: 60px;
  height: 60px;
  border-radius: 17px;
  border: 0;
  background: linear-gradient(145deg, rgba(232, 36, 63, .17), rgba(122, 20, 32, .09));
  box-shadow: inset 0 0 0 1px rgba(221, 26, 50, .16), 0 8px 18px rgba(221, 26, 50, .10);
  color: var(--red);
  transition: transform .28s ease, box-shadow .28s ease;
}

.cap-icon svg {
  width: 28px;
  height: 28px;
  stroke-width: 1.85;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.cap-card:hover .cap-icon {
  transform: translateY(-2px) scale(1.06);
  box-shadow: inset 0 0 0 1px rgba(221, 26, 50, .32), 0 12px 24px rgba(221, 26, 50, .2);
}

.dark .cap-icon,
.darker .cap-icon {
  background: linear-gradient(145deg, rgba(232, 36, 63, .26), rgba(255, 90, 77, .1));
  box-shadow: inset 0 0 0 1px rgba(221, 26, 50, .34);
  color: var(--red-bright);
}

.caps-flush .cap-icon {
  width: 64px;
  height: 64px;
}

.client-ic {
  border: 0;
  box-shadow: inset 0 0 0 1px rgba(221, 26, 50, .16), 0 6px 14px rgba(221, 26, 50, .08);
}

.client-ic svg,
.faq-tag svg,
.faq-call-ic svg,
.feature-list svg,
.cmmc-step svg {
  stroke-linecap: round;
  stroke-linejoin: round;
}

/* ---------- Blog index: two-column (posts + sidebar) ---------- */
.blog-layout {
  display: grid;
  grid-template-columns: 1fr 330px;
  gap: 44px;
  align-items: start;
}

.blog-main {
  display: grid;
  gap: 38px;
}

.post-card {
  background: #fff;
  border: 1px solid var(--line-light);
  border-radius: 18px;
  overflow: hidden;
  box-shadow: 0 10px 30px rgba(18, 4, 6, .05);
  transition: box-shadow .25s ease, transform .25s ease;
}

.post-card:hover {
  box-shadow: var(--shadow);
  transform: translateY(-3px);
}

.post-media {
  position: relative;
  display: grid;
  place-items: center;
  aspect-ratio: 16/7;
  background: var(--grad-hero);
  overflow: hidden;
}

.post-media::after {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 72% 28%, rgba(221, 26, 50, .42), transparent 60%);
}

.post-glyph {
  position: relative;
  z-index: 1;
  width: 86px;
  height: 86px;
  color: rgba(255, 255, 255, .17);
}

.post-date {
  position: absolute;
  z-index: 2;
  top: 18px;
  left: 18px;
  background: var(--grad-red);
  color: #fff;
  border-radius: 12px;
  padding: 9px 13px;
  text-align: center;
  line-height: 1;
  font-weight: 800;
  font-size: 1.35rem;
  box-shadow: var(--shadow-red);
}

.post-date small {
  display: block;
  font-size: .6rem;
  letter-spacing: .14em;
  margin-top: 5px;
  font-weight: 700;
}

.post-body {
  padding: 26px 30px 30px;
}

.post-meta {
  display: flex;
  align-items: center;
  gap: 14px;
  flex-wrap: wrap;
  font-size: .82rem;
  color: var(--muted-2);
  margin-bottom: 13px;
}

.post-cat {
  background: var(--paper-3);
  color: var(--red);
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: .05em;
  font-size: .68rem;
  padding: 5px 11px;
  border-radius: 6px;
}

.post-title {
  font-size: 1.5rem;
  line-height: 1.25;
  margin-bottom: 12px;
}

.post-title a {
  color: var(--ink);
}

.post-title a:hover {
  color: var(--red);
}

.post-excerpt {
  color: var(--ink-soft);
  margin-bottom: 20px;
  font-size: .98rem;
}

.post-card .more {
  color: var(--red);
  font-weight: 700;
  font-size: .92rem;
  display: inline-flex;
  align-items: center;
  gap: 11px;
}

.post-card .more::after {
  content: "";
  width: 34px;
  height: 34px;
  border-radius: 50%;
  flex-shrink: 0;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23dd1a32' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 17 17 7'/%3E%3Cpath d='M8 7h9v9'/%3E%3C/svg%3E") center / 15px no-repeat, linear-gradient(135deg, rgba(232, 36, 63, .18), rgba(122, 20, 32, .1));
  box-shadow: inset 0 0 0 1px rgba(221, 26, 50, .22);
  transition: transform .2s ease, box-shadow .2s ease;
}

.post-card:hover .more::after {
  transform: translate(2px, -2px);
  box-shadow: inset 0 0 0 1px rgba(221, 26, 50, .5);
}

.pagination {
  display: flex;
  gap: 10px;
  align-items: center;
  margin-top: 4px;
}

.pagination .pg {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  border: 1px solid var(--line-light);
  color: var(--ink-soft);
  font-weight: 700;
  background: #fff;
  transition: all .2s ease;
}

.pagination .pg:hover {
  border-color: var(--red);
  color: var(--red);
}

.pagination .pg.active {
  background: var(--grad-red);
  color: #fff;
  border-color: transparent;
  box-shadow: var(--shadow-red);
}

.blog-sidebar {
  display: grid;
  gap: 22px;
  position: sticky;
  top: calc(var(--nav-h) + 20px);
  max-height: calc(100vh - var(--nav-h) - 40px);
  overflow-y: auto;
  overscroll-behavior: contain;
  padding-right: 6px;
  scrollbar-width: thin;
  scrollbar-color: rgba(221, 26, 50, .4) transparent;
}

.widget {
  background: var(--paper-2);
  border: 1px solid var(--line-light);
  border-radius: 16px;
  padding: 22px 22px 24px;
}

.widget h4 {
  font-size: 1.06rem;
  margin-bottom: 16px;
}

.widget-cta p {
  color: var(--ink-soft);
  font-size: .92rem;
  margin-bottom: 16px;
}

.search-box {
  display: flex;
  gap: 8px;
}

.search-box input {
  flex: 1;
  min-width: 0;
  padding: 12px 14px;
  border-radius: 10px;
  border: 1px solid var(--line-light);
  background: #fff;
  font: inherit;
  font-size: .9rem;
  color: var(--ink);
}

.search-box input:focus {
  outline: none;
  border-color: var(--red);
}

.search-box button {
  width: 46px;
  flex-shrink: 0;
  border: 0;
  border-radius: 10px;
  background: var(--grad-red);
  color: #fff;
  display: grid;
  place-items: center;
  cursor: pointer;
}

.related-item {
  display: flex;
  gap: 13px;
  align-items: center;
  padding: 12px 0;
  border-bottom: 1px dashed var(--line-light);
}

.related-item:last-child {
  border-bottom: 0;
  padding-bottom: 0;
}

.related-item:first-of-type {
  padding-top: 0;
}

.related-thumb {
  flex: 0 0 54px;
  width: 54px;
  height: 54px;
  border-radius: 10px;
  background: var(--grad-hero);
  position: relative;
  overflow: hidden;
}

.related-thumb::after {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 65% 35%, rgba(221, 26, 50, .55), transparent 65%);
}

.related-item strong {
  display: block;
  font-size: .85rem;
  color: var(--ink);
  line-height: 1.32;
  font-weight: 700;
}

.related-item:hover strong {
  color: var(--red);
}

.related-item small {
  font-size: .74rem;
  color: var(--muted-2);
}

.cat-list {
  list-style: none;
  display: grid;
  gap: 0;
}

.cat-list a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 11px 2px;
  border-bottom: 1px dashed var(--line-light);
  color: var(--ink-soft);
  font-weight: 600;
  font-size: .92rem;
}

.cat-list li:last-child a {
  border-bottom: 0;
}

.cat-list a:hover {
  color: var(--red);
}

.cat-list a span {
  color: var(--red);
  font-weight: 800;
  font-size: .76rem;
  background: #fff;
  border: 1px solid var(--line-light);
  border-radius: 6px;
  padding: 2px 9px;
}

.tag-cloud {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.tag-cloud a {
  font-size: .78rem;
  font-weight: 600;
  padding: 7px 12px;
  border-radius: 999px;
  background: #fff;
  border: 1px solid var(--line-light);
  color: var(--ink-soft);
  transition: all .2s ease;
}

.tag-cloud a:hover {
  background: var(--grad-red);
  color: #fff;
  border-color: transparent;
}

@media (max-width: 900px) {
  .blog-layout {
    grid-template-columns: 1fr;
  }

  .blog-sidebar {
    position: static;
    max-height: none;
    overflow: visible;
  }
}

/* ---------- Blog detail (article) ---------- */
.article-detail .post-media {
  aspect-ratio: 16/7;
  border-radius: 18px;
  margin-bottom: 26px;
}

.article-detail .post-cat {
  display: inline-block;
  margin-bottom: 14px;
}

.detail-title {
  font-size: 2.2rem;
  line-height: 1.18;
  margin-bottom: 18px;
}

.detail-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-bottom: 30px;
}

.dm-chip {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: var(--paper-2);
  border: 1px solid var(--line-light);
  border-radius: 999px;
  padding: 6px 15px 6px 7px;
  font-size: .82rem;
  color: var(--ink-soft);
  font-weight: 600;
}

.dm-chip svg {
  color: var(--red);
}

.dm-avatar {
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background: var(--grad-red);
  color: #fff;
  display: grid;
  place-items: center;
  font-size: .68rem;
  font-weight: 800;
}

.article-detail .prose {
  max-width: 720px;
}

.article-tags-share {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 16px;
  margin-top: 38px;
  padding-top: 24px;
  border-top: 1px solid var(--line-light);
}

.atags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
}

.atags .atags-label {
  font-weight: 700;
  color: var(--ink);
  margin-right: 2px;
}

.atags a {
  font-size: .78rem;
  font-weight: 600;
  padding: 6px 12px;
  border-radius: 999px;
  background: var(--paper-3);
  color: var(--ink-soft);
}

.atags a:hover {
  background: var(--grad-red);
  color: #fff;
}

.article-tags-share .share-row {
  margin: 0;
  padding: 0;
  border: 0;
}

/* ---------- Footer social icons ---------- */
.footer-social {
  display: flex;
  gap: 12px;
  margin-top: 22px;
  justify-content: flex-start;
  width: 100%;
}

.footer-social a {
  width: 44px;
  height: 44px;
  border-radius: 14px;
  display: grid;
  place-items: center;
  background: var(--grad-red);
  border: 0;
  box-shadow: var(--shadow-red);
  color: #fff;
  transition: transform .2s ease, background .2s ease, color .2s ease, box-shadow .2s ease;
}

.footer-social a:hover {
  background: linear-gradient(145deg, #fde3e8, #f9c3ca);
  color: var(--red);
  transform: translateY(-3px);
  box-shadow: inset 0 0 0 1px rgba(221, 26, 50, .28);
}

.footer-social svg {
  width: 19px;
  height: 19px;
}

/* ---------- Read more: text only (no icon) ---------- */
.cap-card .more::after,
.post-card .more::after {
  content: none !important;
  display: none !important;
}

.cap-card .more,
.post-card .more {
  gap: 0;
}

.cap-card:hover .more,
.post-card:hover .more {
  color: var(--red-dark);
  text-decoration: underline;
  text-underline-offset: 3px;
}

/* ---------- Resources page ---------- */
.res-tag {
  display: inline-block;
  font-size: .66rem;
  font-weight: 800;
  letter-spacing: .06em;
  text-transform: uppercase;
  padding: 4px 10px;
  border-radius: 6px;
  margin-bottom: 14px;
}

.res-tag.free {
  background: #e7f0e5;
  color: #2a7d4f;
}

.res-tag.soon {
  background: var(--paper-3);
  color: var(--muted-2);
}

.res-tag.live {
  background: var(--grad-red);
  color: #fff;
}

.res-feature {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 30px;
  align-items: center;
  background: var(--grad-hero);
  border-radius: 22px;
  padding: 44px 48px;
  color: #fff;
  position: relative;
  overflow: hidden;
}

.res-feature::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 85% 20%, rgba(221, 26, 50, .35), transparent 55%);
}

.res-feature>* {
  position: relative;
  z-index: 1;
}

.res-feature h2 {
  color: #fff;
  margin-bottom: 10px;
}

.res-feature p {
  color: var(--muted);
  max-width: 60ch;
}

@media (max-width: 760px) {
  .res-feature {
    grid-template-columns: 1fr;
    text-align: center;
  }
}

/* ---------- Leadership (About) ---------- */
.leaders {
  display: grid;
  gap: 26px;
  max-width: 980px;
  margin: 0 auto;
}

.leader {
  display: grid;
  grid-template-columns: 200px 1fr;
  gap: 30px;
  align-items: start;
  background: #fff;
  border: 1px solid var(--line-light);
  border-radius: 18px;
  padding: 30px;
  box-shadow: 0 10px 30px rgba(18, 4, 6, .05);
}

.leader-photo img {
  width: 100%;
  aspect-ratio: 1;
  object-fit: cover;
  border-radius: 14px;
  display: block;
}

.leader-bio h3 {
  font-size: 1.4rem;
  margin-bottom: 3px;
}

.leader-bio .role {
  color: var(--red);
  font-weight: 700;
}

.leader-bio .creds {
  color: var(--muted-2);
  font-size: .8rem;
  text-transform: uppercase;
  letter-spacing: .06em;
  margin: 5px 0 15px;
}

.leader-bio p {
  color: var(--ink-soft);
  font-size: .96rem;
  margin-bottom: 12px;
  line-height: 1.7;
}

.leader-bio p:last-child {
  margin-bottom: 0;
}

@media (max-width: 700px) {
  .leader {
    grid-template-columns: 1fr;
  }

  .leader-photo img {
    max-width: 220px;
  }
}

.logo-track {
  display: flex;
  align-items: center;
  width: max-content;
  animation: logoScroll 40s linear infinite;
}

.logo-marquee:hover .logo-track {
  animation-play-state: paused;
}

.logo-tile {
  flex: 0 0 auto;
  width: 230px;
  height: 96px;
  display: grid;
  place-items: center;
  padding: 0 10px;
}

.logo-tile img {
  max-width: 158px;
  max-height: 44px;
  width: auto;
  height: auto;
  object-fit: contain;
  opacity: .68;
  transition: opacity .25s ease;
}

.logo-tile:hover img {
  opacity: 1;
}

@keyframes logoScroll {
  from {
    transform: translateX(0);
  }

  to {
    transform: translateX(-50%);
  }
}

@media (prefers-reduced-motion: reduce) {
  .logo-track {
    animation: none;
  }
}

.brand-text {
  display: flex;
  flex-direction: column;
  line-height: 1;
}

.brand-text strong {
  color: #fff;
  font-size: 1.16rem;
  font-weight: 800;
  letter-spacing: .02em;
}

.brand-text span {
  color: var(--red-bright);
  font-size: .58rem;
  letter-spacing: .34em;
  text-transform: uppercase;
  margin-top: 5px;
  font-weight: 700;
}

/* ---------- Navbar ---------- */
.nav {
  position: sticky;
  top: 0;
  z-index: 100;
  height: var(--nav-h);
  background: rgba(13, 3, 5, .82);
  backdrop-filter: blur(14px) saturate(140%);
  border-bottom: 1px solid rgba(255, 255, 255, .07);
}

.nav-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 100%;
}

.nav-links {
  display: flex;
  align-items: center;
  gap: 4px;
}

.nav-links>li>a {
  color: #ecdfe2;
  font-weight: 600;
  font-size: .95rem;
  padding: 10px 14px;
  border-radius: 8px;
  display: inline-block;
  transition: color .15s ease, background .15s ease;
}

.nav-links>li>a:hover {
  color: #fff;
  background: rgba(221, 26, 50, .16);
}

.nav-links a.active {
  color: #fff;
}

.nav-links a.active::after {
  content: "";
  display: block;
  height: 2px;
  background: var(--grad-red);
  border-radius: 2px;
  margin-top: 5px;
}

.nav-cta {
  margin-left: 10px;
}

.nav-actions {
  display: flex;
  align-items: center;
  gap: 8px;
}

.has-drop {
  position: relative;
}

.drop {
  position: absolute;
  top: calc(100% + 12px);
  left: 0;
  min-width: 290px;
  background: #fff;
  border-radius: 16px;
  box-shadow: var(--shadow-lg);
  padding: 10px;
  opacity: 0;
  visibility: hidden;
  transform: translateY(8px);
  transition: all .18s ease;
  border: 1px solid var(--line-light);
}

.has-drop:hover .drop,
.has-drop:focus-within .drop {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

.drop a {
  display: flex;
  gap: 12px;
  padding: 11px 12px;
  border-radius: 11px;
  color: var(--ink);
  align-items: center;
}

.drop a:hover {
  background: var(--paper-2);
}

.drop a strong {
  display: block;
  font-size: .92rem;
  font-weight: 700;
}

.drop a small {
  color: var(--muted-2);
  font-size: .8rem;
}

.drop .di {
  color: var(--red);
  flex-shrink: 0;
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 9px;
  background: rgba(221, 26, 50, .1);
}

.nav-toggle {
  display: none;
  background: none;
  border: 0;
  cursor: pointer;
  padding: 8px;
}

.nav-toggle span {
  display: block;
  width: 24px;
  height: 2px;
  background: #fff;
  margin: 5px 0;
  transition: .2s;
  border-radius: 2px;
}

/* ---------- HUD decorative rings (shared) ---------- */
.hud-rings {
  position: absolute;
  pointer-events: none;
  opacity: .5;
}

/* ---------- Hero ---------- */
.hero {
  position: relative;
  background: var(--grad-hero);
  color: #fff;
  overflow: hidden;
}

.hero-bg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.hero-overlay {
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(90deg, rgba(13, 3, 5, .92) 0%, rgba(13, 3, 5, .62) 55%, rgba(13, 3, 5, .3) 100%);
}

.hero-particles {
  position: absolute;
  inset: 0;
  z-index: 2;
  pointer-events: none;
}

.hero-inner {
  position: relative;
  z-index: 3;
  padding: 104px 0 96px;
  max-width: 730px;
}

.hero .accent-bar {
  width: 96px;
  height: 5px;
  background: var(--grad-red);
  border-radius: 4px;
  margin-bottom: 26px;
  box-shadow: var(--shadow-red);
}

.hero h1 {
  color: #fff;
}

.hero h1 .gradient-text {
  filter: drop-shadow(0 4px 18px rgba(221, 26, 50, .4));
}

.hero p {
  color: #e7d6da;
  font-size: 1.2rem;
  max-width: 56ch;
}

.hero-actions {
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
  margin-top: 32px;
}

.hero-badges {
  display: flex;
  gap: 14px;
  flex-wrap: wrap;
  margin-top: 50px;
}

.hero-badges .hb {
  display: flex;
  flex-direction: column;
  padding: 14px 22px 14px 18px;
  border-radius: 13px;
  background: rgba(255, 255, 255, .05);
  border: 1px solid rgba(255, 255, 255, .1);
  border-left: 3px solid var(--red);
}

.hero-badges .hb b {
  font-size: 1.7rem;
  color: #fff;
  font-weight: 800;
  line-height: 1;
}

.hero-badges .hb span {
  font-size: .74rem;
  color: var(--muted);
  text-transform: uppercase;
  letter-spacing: .08em;
  margin-top: 7px;
}

.hero-trust {
  position: relative;
  z-index: 3;
  border-top: 1px solid rgba(255, 255, 255, .08);
}

.hero-trust .container {
  display: flex;
  align-items: center;
  gap: 30px 44px;
  flex-wrap: wrap;
  padding-top: 22px;
  padding-bottom: 22px;
}

.hero-trust .tlabel {
  font-size: .72rem;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: var(--muted-2);
}

/* page hero (interior) */
.page-hero {
  background: var(--grad-hero);
  color: #fff;
  padding: 78px 0 66px;
  position: relative;
  overflow: hidden;
}

.page-hero .accent-bar {
  width: 76px;
  height: 5px;
  background: var(--grad-red);
  border-radius: 4px;
  margin-bottom: 20px;
}

.page-hero h1 {
  color: #fff;
}

.page-hero p {
  color: #e1cdd2;
  max-width: 60ch;
}

.crumbs {
  font-size: .85rem;
  color: var(--muted-2);
  margin-bottom: 20px;
  position: relative;
  z-index: 2;
}

.crumbs a:hover {
  color: var(--red-bright);
}

.page-hero .container {
  position: relative;
  z-index: 2;
}

/* ---------- Grid ---------- */
.grid {
  display: grid;
  gap: 20px;
}

.g-2 {
  grid-template-columns: repeat(2, 1fr);
}

.g-3 {
  grid-template-columns: repeat(3, 1fr);
}

.g-4 {
  grid-template-columns: repeat(4, 1fr);
}

/* ---------- Cards ---------- */
.cap-card {
  background: #fff;
  border: 1px solid var(--line-light);
  border-radius: var(--radius);
  padding: 30px;
  transition: transform .22s ease, box-shadow .22s ease, border-color .22s ease;
  position: relative;
  overflow: hidden;
  height: 100%;
  display: flex;
  flex-direction: column;
}

.cap-card::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  height: 4px;
  width: 100%;
  background: var(--grad-red);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform .28s ease;
}

.cap-card:hover {
  transform: translateY(-7px);
  box-shadow: var(--shadow);
  border-color: rgba(221, 26, 50, .25);
}

.cap-card:hover::before {
  transform: scaleX(1);
}

.cap-icon {
  width: 58px;
  height: 58px;
  border-radius: 15px;
  display: grid;
  place-items: center;
  margin-bottom: 20px;
  background: linear-gradient(135deg, rgba(221, 26, 50, .12), rgba(165, 30, 34, .16));
  color: var(--red);
  border: 1px solid rgba(221, 26, 50, .16);
}

.cap-card h3 {
  margin-bottom: 11px;
}

.cap-card p {
  color: var(--ink-soft);
  font-size: .97rem;
}

.cap-card .more {
  margin-top: auto;
  padding-top: 18px;
  color: var(--red);
  font-weight: 700;
  font-size: .92rem;
  display: inline-flex;
  align-items: center;
  gap: 11px;
}

.cap-card .more::after {
  content: "";
  width: 34px;
  height: 34px;
  border-radius: 50%;
  flex-shrink: 0;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23dd1a32' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M7 17 17 7'/%3E%3Cpath d='M8 7h9v9'/%3E%3C/svg%3E") center / 15px no-repeat, linear-gradient(135deg, rgba(232, 36, 63, .18), rgba(122, 20, 32, .1));
  box-shadow: inset 0 0 0 1px rgba(221, 26, 50, .22);
  transition: transform .2s ease, box-shadow .2s ease;
}

.cap-card:hover .more {
  color: var(--red-dark);
}

.cap-card:hover .more::after {
  transform: translate(2px, -2px);
  box-shadow: inset 0 0 0 1px rgba(221, 26, 50, .5);
}

.dark .cap-card .more,
.darker .cap-card .more {
  color: var(--red-bright);
}

.dark .cap-card,
.darker .cap-card {
  background: rgba(255, 255, 255, .035);
  border-color: rgba(255, 255, 255, .1);
}

.dark .cap-card:hover,
.darker .cap-card:hover {
  background: rgba(255, 255, 255, .06);
  border-color: rgba(221, 26, 50, .5);
  box-shadow: var(--shadow-lg);
}

.dark .cap-card h3,
.darker .cap-card h3 {
  color: #fff;
}

.dark .cap-card p,
.darker .cap-card p {
  color: var(--muted);
}

.dark .cap-icon,
.darker .cap-icon {
  color: var(--red-bright);
  background: linear-gradient(135deg, rgba(221, 26, 50, .22), rgba(255, 90, 77, .12));
  border-color: rgba(221, 26, 50, .3);
}

/* numbered card */
.num-card {
  position: relative;
}

.num-card .num-badge {
  position: absolute;
  top: 22px;
  right: 24px;
  font-size: 3rem;
  font-weight: 800;
  color: rgba(221, 26, 50, .32);
  line-height: 1;
}

.dark .num-card .num-badge {
  color: rgba(255, 90, 77, .55);
}

/* ---------- Feature list ---------- */
.feature-list {
  display: grid;
  gap: 14px;
}

.feature-list li {
  display: flex;
  gap: 13px;
  align-items: flex-start;
}

.feature-list .tick {
  flex-shrink: 0;
  width: 24px;
  height: 24px;
  border-radius: 7px;
  background: var(--grad-red);
  color: #fff;
  display: grid;
  place-items: center;
  font-size: .72rem;
  font-weight: 900;
  margin-top: 2px;
  box-shadow: 0 4px 12px rgba(221, 26, 50, .3);
}

/* ---------- CMMC process (animated) ---------- */
.cmmc-steps {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 0;
  position: relative;
  margin-top: 44px;
}

.cmmc-steps::before {
  content: "";
  position: absolute;
  top: 36px;
  left: 9%;
  right: 9%;
  height: 3px;
  background: linear-gradient(90deg, rgba(221, 26, 50, .15), rgba(232, 36, 63, .55), rgba(221, 26, 50, .15));
}

.cmmc-step {
  text-align: center;
  position: relative;
  padding: 0 12px;
}

.cmmc-dot {
  width: 72px;
  height: 72px;
  border-radius: 50%;
  margin: 0 auto 20px;
  display: grid;
  place-items: center;
  background: var(--maroon-800);
  border: 2px solid var(--red);
  color: var(--red-bright);
  font-weight: 800;
  font-size: 1.4rem;
  position: relative;
  z-index: 2;
  transition: transform .3s ease;
}

.cmmc-step.in .cmmc-dot {
  animation: pulse 2.4s ease-in-out infinite;
  transform: scale(1.06);
}

.cmmc-step .num {
  position: absolute;
  top: -6px;
  right: calc(50% - 48px);
  background: var(--grad-red);
  color: #fff;
  width: 26px;
  height: 26px;
  border-radius: 50%;
  font-size: .78rem;
  display: grid;
  place-items: center;
  z-index: 3;
  font-weight: 800;
}

.cmmc-step h4 {
  color: #fff;
  font-size: 1.04rem;
  margin-bottom: 7px;
}

.cmmc-step p {
  color: var(--muted);
  font-size: .86rem;
}

@keyframes pulse {

  0%,
  100% {
    box-shadow: 0 0 0 0 rgba(221, 26, 50, .5);
  }

  50% {
    box-shadow: 0 0 0 16px rgba(221, 26, 50, 0);
  }
}

/* ---------- Logos strip ---------- */
.logo-strip {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  gap: 26px;
}

.logo-strip .lg {
  font-weight: 800;
  font-size: 1.16rem;
  letter-spacing: .02em;
  color: var(--ink-soft);
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 16px 26px;
  border-radius: 12px;
  background: #fff;
  border: 1px solid var(--line-light);
  transition: transform .2s, box-shadow .2s, color .2s;
}

.logo-strip .lg:hover {
  transform: translateY(-3px);
  box-shadow: var(--shadow);
  color: var(--red);
}

.logo-strip .lg small {
  font-size: .58rem;
  letter-spacing: .14em;
  display: block;
  color: var(--muted-2);
}

/* ---------- Certifications ---------- */
.cert-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 22px;
  justify-content: center;
}

.cert {
  width: 158px;
  padding: 26px 16px;
  border-radius: 16px;
  text-align: center;
  background: rgba(255, 255, 255, .04);
  border: 1px solid rgba(255, 255, 255, .1);
  transition: transform .2s, border-color .2s;
}

.cert:hover {
  transform: translateY(-4px);
  border-color: rgba(221, 26, 50, .5);
}

.cert .ring {
  width: 70px;
  height: 70px;
  border-radius: 50%;
  margin: 0 auto 14px;
  display: grid;
  place-items: center;
  border: 2px solid var(--red);
  color: #fff;
  font-weight: 800;
  font-size: .78rem;
  line-height: 1.1;
  background: rgba(221, 26, 50, .1);
}

.cert b {
  color: #fff;
  font-size: .84rem;
  display: block;
}

.cert span {
  color: var(--muted);
  font-size: .72rem;
}

/* ---------- 8(a) banner ---------- */
.banner-8a {
  background: var(--grad-red);
  color: #fff;
  border-radius: 22px;
  padding: 50px 52px;
  text-align: center;
  box-shadow: var(--shadow-red);
  position: relative;
  overflow: hidden;
}

.banner-8a::after {
  content: "";
  position: absolute;
  right: -80px;
  bottom: -100px;
  width: 320px;
  height: 320px;
  border: 40px solid rgba(255, 255, 255, .08);
  border-radius: 50%;
}

.banner-8a>* {
  position: relative;
  z-index: 2;
}

.banner-8a h2 {
  color: #fff;
}

.banner-8a p {
  color: rgba(255, 255, 255, .94);
  max-width: 76ch;
  margin: 0 auto;
}

/* ---------- FAQ accordion ---------- */
.faq-list {
  max-width: 840px;
  margin: 0 auto;
}

.faq-item {
  border: 1px solid var(--line-light);
  border-radius: 14px;
  margin-bottom: 14px;
  overflow: hidden;
  background: #fff;
  transition: box-shadow .2s, border-color .2s;
}

.faq-item.open {
  background: var(--grad-red);
  border-color: transparent;
  box-shadow: var(--shadow-red);
}

.dark .faq-item,
.darker .faq-item {
  background: rgba(255, 255, 255, .04);
  border-color: rgba(255, 255, 255, .1);
}

.faq-q {
  width: 100%;
  text-align: left;
  background: none;
  border: 0;
  cursor: pointer;
  padding: 22px 26px;
  font-size: 1.06rem;
  font-weight: 700;
  color: var(--ink);
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 16px;
}

.dark .faq-q,
.darker .faq-q {
  color: #fff;
}

.faq-q .ic {
  position: relative;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  border: 2px solid var(--red);
  flex-shrink: 0;
  font-size: 0;
  transition: background .2s ease, border-color .2s ease;
}

.faq-item.open .faq-q .ic {
  background: #fff;
  border-color: #fff;
}

.faq-a {
  max-height: 0;
  overflow: hidden;
  transition: max-height .3s ease;
}

.faq-a-inner {
  padding: 0 26px 24px;
  color: var(--ink-soft);
}

.dark .faq-a-inner,
.darker .faq-a-inner {
  color: var(--muted);
}

/* ---------- Blog cards ---------- */
.blog-card {
  background: #fff;
  border: 1px solid var(--line-light);
  border-radius: 16px;
  overflow: hidden;
  transition: transform .2s, box-shadow .2s;
  height: 100%;
}

.blog-card:hover {
  transform: translateY(-6px);
  box-shadow: var(--shadow);
}

.blog-thumb {
  aspect-ratio: 16/9;
  background: var(--grad-hero);
  position: relative;
  display: grid;
  place-items: center;
  overflow: hidden;
}

.blog-thumb::after {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 70% 30%, rgba(221, 26, 50, .4), transparent 60%);
}

.blog-thumb .tag {
  position: absolute;
  top: 15px;
  left: 15px;
  z-index: 2;
  background: var(--grad-red);
  color: #fff;
  font-size: .68rem;
  font-weight: 800;
  padding: 6px 13px;
  border-radius: 999px;
  text-transform: uppercase;
  letter-spacing: .06em;
}

.blog-body {
  padding: 24px 26px 28px;
}

.blog-body .meta {
  font-size: .77rem;
  color: var(--muted-2);
  text-transform: uppercase;
  letter-spacing: .06em;
  margin-bottom: 11px;
}

.blog-body h3 {
  font-size: 1.18rem;
  margin-bottom: 10px;
}

.blog-body p {
  color: var(--ink-soft);
  font-size: .94rem;
}

.blog-body .more {
  color: var(--red);
  font-weight: 700;
  font-size: .9rem;
}

/* ---------- Team ---------- */
.team-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 26px;
}

.team-card {
  text-align: center;
}

.team-photo {
  aspect-ratio: 1;
  border-radius: 18px;
  margin-bottom: 16px;
  display: grid;
  place-items: center;
  background: var(--grad-hero);
  color: #fff;
  font-size: 2.4rem;
  font-weight: 800;
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, .08);
}

.team-photo::after {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 70% 25%, rgba(221, 26, 50, .35), transparent 60%);
}

.team-photo span {
  position: relative;
  z-index: 2;
}

.team-card h4 {
  margin: 0 0 4px;
  font-size: 1.08rem;
}

.team-card .role {
  color: var(--red);
  font-weight: 600;
  font-size: .88rem;
}

.team-card .creds {
  color: var(--muted-2);
  font-size: .8rem;
  margin-top: 3px;
}

/* ---------- Stats ---------- */
.stats {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 20px;
  text-align: center;
}

.stats .st {
  padding: 22px 12px;
  border-radius: 14px;
  background: rgba(255, 255, 255, .04);
  border: 1px solid rgba(255, 255, 255, .1);
}

.stats .st b {
  display: block;
  font-size: 2.5rem;
  font-weight: 800;
  color: #fff;
  line-height: 1;
}

.stats .st b .u {
  color: var(--red-bright);
}

.stats .st span {
  color: var(--muted);
  font-size: .82rem;
  margin-top: 8px;
  display: block;
}

/* ---------- Split / media ---------- */
.split {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 58px;
  align-items: center;
}

/* ---------- Contact ---------- */
.contact-grid {
  display: grid;
  grid-template-columns: 1.1fr 1fr;
  gap: 50px;
  align-items: start;
}

.field {
  margin-bottom: 18px;
}

.field label {
  display: block;
  font-weight: 600;
  font-size: .9rem;
  margin-bottom: 7px;
  color: var(--ink);
}

.field input,
.field textarea,
.field select {
  width: 100%;
  padding: 14px 16px;
  border: 1px solid var(--line-light);
  border-radius: 11px;
  font-family: inherit;
  font-size: 1rem;
  background: #fff;
  color: var(--ink);
  transition: border-color .15s, box-shadow .15s;
}

.field input:focus,
.field textarea:focus,
.field select:focus {
  outline: none;
  border-color: var(--red);
  box-shadow: 0 0 0 3px rgba(221, 26, 50, .14);
}

.contact-cards {
  display: grid;
  gap: 16px;
}

.contact-method {
  display: flex;
  gap: 16px;
  padding: 20px;
  border: 1px solid var(--line-light);
  border-radius: 13px;
  background: #fff;
  align-items: center;
  transition: box-shadow .2s, transform .2s;
}

.contact-method:hover {
  box-shadow: var(--shadow);
  transform: translateY(-2px);
}

.contact-method .ci {
  width: 48px;
  height: 48px;
  flex-shrink: 0;
  border-radius: 12px;
  display: grid;
  place-items: center;
  background: linear-gradient(135deg, rgba(221, 26, 50, .12), rgba(165, 30, 34, .16));
  color: var(--red);
}

.contact-method b {
  display: block;
}

.contact-method span {
  color: var(--ink-soft);
  font-size: .92rem;
}

.office-card {
  padding: 22px;
  border-radius: 13px;
  border: 1px solid var(--line-light);
  background: #fff;
  border-left: 3px solid var(--red);
}

.office-card h4 {
  font-size: 1.02rem;
  margin-bottom: 6px;
  color: var(--red);
}

.office-card p {
  color: var(--ink-soft);
  font-size: .92rem;
  margin: 0;
}

.map-embed {
  width: 100%;
  min-height: 340px;
  border: 0;
  border-radius: 18px;
}

/* ---------- CTA band ---------- */
.cta-band {
  background: var(--grad-hero);
  border-radius: 24px;
  padding: 66px;
  text-align: center;
  color: #fff;
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, .08);
}

.cta-band::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 80% 15%, rgba(221, 26, 50, .32), transparent 55%);
}

.cta-band>* {
  position: relative;
  z-index: 2;
}

.cta-band h2 {
  color: #fff;
}

/* ---------- Footer ---------- */
.footer {
  background: var(--maroon-950);
  background-image: var(--pattern-dark);
  color: var(--muted);
  padding: 70px 0 28px;
}

.footer-grid {
  display: grid;
  grid-template-columns: 1.6fr 1fr 1fr 1fr;
  gap: 42px;
}

.footer h5 {
  color: #fff;
  font-size: .8rem;
  text-transform: uppercase;
  letter-spacing: .14em;
  margin: 0 0 18px;
}

.footer a {
  color: var(--muted);
  font-size: .94rem;
  display: inline-block;
  padding: 5px 0;
  transition: color .15s;
}

.footer a:hover {
  color: var(--red-bright);
}

.footer .f-about p {
  font-size: .92rem;
  color: var(--muted-2);
  max-width: 38ch;
}

.footer .f-badges {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  margin-top: 18px;
}

.footer .f-badges span {
  font-size: .67rem;
  border: 1px solid rgba(255, 255, 255, .14);
  border-radius: 6px;
  padding: 4px 9px;
  color: var(--muted);
}

.footer-bottom {
  border-top: 1px solid rgba(255, 255, 255, .1);
  margin-top: 50px;
  padding-top: 26px;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 12px;
  font-size: .84rem;
  color: var(--muted-2);
}

/* ---------- Chatbot ---------- */
.chatbot {
  position: fixed;
  bottom: 24px;
  right: 24px;
  z-index: 200;
  width: 62px;
  height: 62px;
  border-radius: 50%;
  background: var(--grad-red);
  border: 0;
  cursor: pointer;
  box-shadow: var(--shadow-red);
  display: grid;
  place-items: center;
  color: #fff;
  transition: transform .2s;
}

.chatbot:hover {
  transform: scale(1.08);
}

.chatbot-panel {
  position: fixed;
  bottom: 98px;
  right: 24px;
  z-index: 200;
  width: 330px;
  background: #fff;
  border-radius: 18px;
  box-shadow: var(--shadow-lg);
  overflow: hidden;
  display: none;
  border: 1px solid var(--line-light);
}

.chatbot-panel.open {
  display: block;
  animation: slideup .2s ease;
}

@keyframes slideup {
  from {
    opacity: 0;
    transform: translateY(10px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.chatbot-head {
  background: var(--grad-hero);
  color: #fff;
  padding: 20px;
  position: relative;
  overflow: hidden;
}

.chatbot-head::after {
  content: "";
  position: absolute;
  right: -30px;
  top: -30px;
  width: 110px;
  height: 110px;
  border: 14px solid rgba(221, 26, 50, .3);
  border-radius: 50%;
}

.chatbot-head b {
  font-size: 1.02rem;
  position: relative;
  z-index: 2;
}

.chatbot-head span {
  font-size: .82rem;
  color: var(--muted);
  display: block;
  position: relative;
  z-index: 2;
}

.chatbot-body {
  padding: 20px;
  font-size: .9rem;
  color: var(--ink-soft);
}

.chatbot-body .bubble {
  background: var(--paper-2);
  padding: 13px 15px;
  border-radius: 13px;
  margin-bottom: 12px;
  color: var(--ink);
}

/* ---------- Reveal ---------- */
.reveal {
  opacity: 0;
  transform: translateY(26px);
  transition: opacity .6s ease, transform .6s ease;
}

.reveal.visible {
  opacity: 1;
  transform: none;
}

/* ---------- Responsive ---------- */
@media (max-width: 980px) {
  .g-4 {
    grid-template-columns: repeat(2, 1fr);
  }

  .team-grid {
    grid-template-columns: repeat(2, 1fr);
  }

  .stats {
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
  }

  .split,
  .contact-grid {
    grid-template-columns: 1fr;
    gap: 40px;
  }

  .footer-grid {
    grid-template-columns: 1fr 1fr;
    gap: 34px;
  }

  .cmmc-steps {
    grid-template-columns: repeat(2, 1fr);
    gap: 32px;
  }

  .cmmc-steps::before {
    display: none;
  }
}

@media (max-width: 760px) {
  .nav-links {
    position: fixed;
    top: var(--nav-h);
    left: 0;
    right: 0;
    background: var(--maroon-950);
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    padding: 12px;
    transform: translateY(-150%);
    transition: transform .25s ease;
    box-shadow: var(--shadow-lg);
    max-height: calc(100vh - var(--nav-h));
    overflow-y: auto;
  }

  .nav-links.open {
    transform: translateY(0);
  }

  .nav-links>li>a {
    padding: 14px;
    border-radius: 8px;
  }

  .drop {
    position: static;
    opacity: 1;
    visibility: visible;
    transform: none;
    box-shadow: none;
    background: rgba(255, 255, 255, .04);
    margin: 6px 0;
    border-color: rgba(255, 255, 255, .1);
  }

  .drop a {
    color: #ecdfe2;
  }

  .drop a:hover {
    background: rgba(255, 255, 255, .06);
  }

  .drop a small {
    color: var(--muted);
  }

  .nav-toggle {
    display: block;
  }

  .nav-cta {
    display: none;
  }

  .g-2,
  .g-3,
  .g-4 {
    grid-template-columns: 1fr;
  }

  .stats {
    grid-template-columns: repeat(2, 1fr);
  }

  .team-grid {
    grid-template-columns: 1fr 1fr;
  }

  .section {
    padding: 64px 0;
  }

  .banner-8a,
  .cta-band {
    padding: 40px 26px;
  }

  .hero-inner {
    padding: 72px 0;
  }

  .article-wrap {
    grid-template-columns: 1fr;
  }

  .article-toc {
    position: static;
    margin-bottom: 28px;
  }
}

/* ---------- Capability extras ---------- */
.hero-deadline {
  margin-top: 22px;
  max-width: 64ch;
  color: #f0dde1;
  font-size: 1rem;
  position: relative;
  z-index: 2;
}

.hero-deadline .hd-pill {
  display: inline-block;
  background: var(--grad-red);
  color: #fff;
  font-weight: 800;
  font-size: .74rem;
  letter-spacing: .04em;
  text-transform: uppercase;
  padding: 6px 13px;
  border-radius: 999px;
  margin-right: 10px;
  box-shadow: var(--shadow-red);
}

.stat-box {
  text-align: center;
  padding: 26px 16px;
  border-radius: 14px;
  background: rgba(255, 255, 255, .04);
  border: 1px solid rgba(255, 255, 255, .1);
}

.stat-box .stat-num {
  display: block;
  font-size: 2.6rem;
  font-weight: 800;
  color: #fff;
  line-height: 1;
  background: var(--grad-text);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

.stat-box .stat-label {
  color: var(--muted);
  font-size: .82rem;
  margin-top: 10px;
  display: block;
  line-height: 1.4;
}

/* ---------- Article / Blog post ---------- */
.article-wrap {
  display: grid;
  grid-template-columns: 240px 1fr;
  gap: 56px;
  align-items: start;
}

.article-toc {
  position: sticky;
  top: calc(var(--nav-h) + 24px);
  font-size: .9rem;
}

.article-toc h5 {
  text-transform: uppercase;
  letter-spacing: .08em;
  font-size: .72rem;
  color: var(--muted-2);
  margin-bottom: 14px;
}

.article-toc a {
  display: block;
  color: var(--ink-soft);
  padding: 7px 0 7px 14px;
  border-left: 2px solid var(--line-light);
  transition: all .2s;
}

.article-toc a:hover {
  color: var(--red);
  border-color: var(--red);
}

.prose {
  max-width: 720px;
}

.prose h2 {
  font-size: 1.7rem;
  margin: 44px 0 16px;
  scroll-margin-top: calc(var(--nav-h) + 20px);
}

.prose h2:first-child {
  margin-top: 0;
}

.prose h3 {
  font-size: 1.22rem;
  margin: 30px 0 12px;
}

.prose p {
  color: var(--ink-soft);
  margin-bottom: 18px;
  line-height: 1.75;
  font-size: 1.04rem;
}

.prose ul,
.prose ol {
  margin: 6px 0 22px 0;
  padding-left: 4px;
  display: grid;
  gap: 12px;
}

.prose ul {
  list-style: none;
}

.prose ul li {
  position: relative;
  padding-left: 26px;
  color: var(--ink-soft);
  line-height: 1.7;
}

.prose ul li::before {
  content: "";
  position: absolute;
  left: 3px;
  top: 10px;
  width: 8px;
  height: 8px;
  border-radius: 2px;
  background: var(--grad-red);
  transform: rotate(45deg);
}

.prose ol {
  counter-reset: s;
  list-style: none;
}

.prose ol li {
  counter-increment: s;
  position: relative;
  padding-left: 44px;
  color: var(--ink-soft);
  line-height: 1.7;
  min-height: 30px;
}

.prose ol li::before {
  content: counter(s);
  position: absolute;
  left: 0;
  top: 0;
  width: 30px;
  height: 30px;
  border-radius: 8px;
  background: var(--grad-red);
  color: #fff;
  font-weight: 800;
  font-size: .9rem;
  display: grid;
  place-items: center;
}

.prose strong {
  color: var(--ink);
}

.prose a {
  color: var(--red);
  font-weight: 600;
  text-decoration: underline;
  text-underline-offset: 2px;
}

.prose blockquote {
  margin: 26px 0;
  padding: 20px 26px;
  border-left: 4px solid var(--red);
  background: var(--paper-2);
  border-radius: 0 12px 12px 0;
  font-size: 1.12rem;
  color: var(--ink);
  font-weight: 500;
}

.prose .callout {
  margin: 28px 0;
  padding: 22px 26px;
  border-radius: 14px;
  background: var(--paper-3);
  border: 1px solid var(--line-light);
}

.prose .callout h4 {
  color: var(--red);
  font-size: .8rem;
  text-transform: uppercase;
  letter-spacing: .06em;
  margin-bottom: 8px;
}

.prose .callout p:last-child {
  margin-bottom: 0;
}

.article-meta {
  display: flex;
  flex-wrap: wrap;
  gap: 10px 18px;
  align-items: center;
  font-size: .88rem;
  color: var(--muted-2);
  margin-top: 18px;
}

.article-meta .tag {
  background: var(--grad-red);
  color: #fff;
  font-size: .68rem;
  font-weight: 800;
  padding: 5px 12px;
  border-radius: 999px;
  text-transform: uppercase;
  letter-spacing: .06em;
}

.share-row {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  align-items: center;
  margin-top: 40px;
  padding-top: 26px;
  border-top: 1px solid var(--line-light);
}

.share-row span {
  font-size: .85rem;
  color: var(--muted-2);
  font-weight: 600;
}

.share-row a {
  width: 38px;
  height: 38px;
  border-radius: 10px;
  display: grid;
  place-items: center;
  background: var(--paper-3);
  color: var(--ink-soft);
  transition: all .2s;
}

.share-row a:hover {
  background: var(--grad-red);
  color: #fff;
}

.author-card {
  display: flex;
  gap: 16px;
  align-items: center;
  margin-top: 32px;
  padding: 22px 24px;
  border-radius: 14px;
  background: var(--paper-2);
  border: 1px solid var(--line-light);
}

.author-card .ac-avatar {
  flex: 0 0 54px;
  width: 54px;
  height: 54px;
  border-radius: 50%;
  background: var(--grad-red);
  color: #fff;
  display: grid;
  place-items: center;
  font-weight: 800;
  font-size: 1.2rem;
}

.author-card .ac-name {
  font-weight: 700;
  color: var(--ink);
}

.author-card .ac-role {
  font-size: .85rem;
  color: var(--muted-2);
}

/* KSG footer-social: match Contact page look + force centered icons (overrides .footer a) */
.footer .footer-social a {
  display: grid;
  place-items: center;
  width: 44px;
  height: 44px;
  padding: 0;
  line-height: 0;
  border-radius: 14px;
  background: var(--grad-red);
  box-shadow: var(--shadow-red);
  color: #fff;
}

.footer .footer-social a:hover {
  background: linear-gradient(145deg, #fde3e8, #f9c3ca);
  color: var(--red);
  box-shadow: inset 0 0 0 1px rgba(221, 26, 50, .28);
}

.footer .footer-social svg {
  width: 19px;
  height: 19px;
  display: block;
}

/* ================= Job Portal ================= */
.jobs-toolbar {
  display: flex;
  gap: 12px;
  flex-wrap: wrap;
  align-items: center;
  margin: 0 0 20px;
}

.jobs-search {
  flex: 1;
  min-width: 240px;
  position: relative;
}

.jobs-search input {
  width: 100%;
  padding: 14px 16px 14px 46px;
  border: 1px solid var(--line-light);
  border-radius: 12px;
  font: inherit;
  background: #fff;
}

.jobs-search svg {
  position: absolute;
  left: 15px;
  top: 50%;
  transform: translateY(-50%);
  color: var(--muted-2);
}

.jobs-count {
  color: var(--muted-2);
  font-weight: 600;
  margin: 0 0 18px;
}

.jobs-layout {
  display: grid;
  grid-template-columns: 282px 1fr;
  gap: 28px;
  align-items: start;
}

.job-filters {
  background: #fff;
  border: 1px solid var(--line-light);
  border-radius: 16px;
  padding: 22px;
  position: sticky;
  top: 96px;
}

.job-filters h3 {
  margin: 0 0 4px;
  font-size: 1.05rem;
}

.filter-group {
  margin-top: 18px;
  border-top: 1px solid var(--line-light);
  padding-top: 16px;
}

.filter-group.first {
  border-top: 0;
  padding-top: 0;
  margin-top: 14px;
}

.filter-group h4 {
  margin: 0 0 10px;
  font-size: .78rem;
  text-transform: uppercase;
  letter-spacing: .05em;
  color: var(--muted-2);
}

.filter-group select {
  width: 100%;
  padding: 10px 12px;
  border: 1px solid var(--line-light);
  border-radius: 10px;
  font: inherit;
  background: #fff;
}

.job-card {
  background: #fff;
  border: 1px solid var(--line-light);
  border-radius: 16px;
  padding: 22px 24px;
  margin-bottom: 16px;
  transition: transform .16s, box-shadow .2s, border-color .2s;
  position: relative;
}

.job-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 16px 40px rgba(18, 4, 6, .10);
  border-color: rgba(221, 26, 50, .25);
}

.job-card.is-featured {
  border-color: rgba(221, 26, 50, .4);
}

.job-card-top {
  display: flex;
  gap: 16px;
  align-items: flex-start;
}

.job-logo {
  width: 54px;
  height: 54px;
  border-radius: 12px;
  flex-shrink: 0;
  display: grid;
  place-items: center;
  background: var(--grad-hero);
  color: #fff;
  font-weight: 800;
  overflow: hidden;
}

.job-logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
  background: #fff;
  padding: 7px;
}

.job-main {
  flex: 1;
  min-width: 0;
}

.job-title {
  font-size: 1.2rem;
  font-weight: 700;
  margin: 0 0 4px;
  line-height: 1.25;
}

.job-title a {
  color: var(--ink);
}

.job-title a:hover {
  color: var(--red);
}

.job-company {
  color: var(--muted-2);
  font-weight: 600;
  font-size: .95rem;
}

.job-badges {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 14px 0;
}

.job-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 5px 12px;
  border-radius: 999px;
  font-size: .8rem;
  font-weight: 600;
  background: rgba(221, 26, 50, .08);
  color: var(--red);
  border: 1px solid rgba(221, 26, 50, .16);
}

.job-badge.neutral {
  background: #f6f1f3;
  color: var(--muted-2);
  border-color: var(--line-light);
}

.job-desc {
  color: var(--ink-soft);
  font-size: .96rem;
  margin: 0 0 16px;
}

.job-card-foot {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
  border-top: 1px solid var(--line-light);
  padding-top: 14px;
}

.job-posted {
  color: var(--muted-2);
  font-size: .86rem;
}

.job-actions {
  display: flex;
  gap: 10px;
  align-items: center;
}

.save-btn {
  width: 42px;
  height: 42px;
  border-radius: 10px;
  border: 1px solid var(--line-light);
  background: #fff;
  display: grid;
  place-items: center;
  cursor: pointer;
  color: var(--muted-2);
  transition: all .15s;
}

.save-btn:hover {
  border-color: var(--red);
  color: var(--red);
}

.save-btn.saved {
  background: rgba(221, 26, 50, .1);
  border-color: var(--red);
  color: var(--red);
}

.save-btn.saved svg {
  fill: var(--red);
}

.featured-flag {
  position: absolute;
  top: 0;
  right: 22px;
  transform: translateY(-50%);
  background: var(--grad-red);
  color: #fff;
  font-size: .72rem;
  font-weight: 700;
  letter-spacing: .04em;
  padding: 4px 12px;
  border-radius: 999px;
  box-shadow: var(--shadow-red);
}

.jd-layout {
  display: grid;
  grid-template-columns: 1fr 330px;
  gap: 30px;
  align-items: start;
}

.jd-head {
  background: #fff;
  border: 1px solid var(--line-light);
  border-radius: 18px;
  padding: 28px;
}

.jd-title {
  font-size: 1.9rem;
  margin: 10px 0 6px;
  line-height: 1.1;
}

.jd-meta-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 14px;
  margin-top: 22px;
}

.jd-meta-grid .m {
  background: #f6f1f3;
  border-radius: 12px;
  padding: 12px 14px;
}

.jd-meta-grid .m small {
  display: block;
  color: var(--muted-2);
  font-size: .72rem;
  text-transform: uppercase;
  letter-spacing: .04em;
  margin-bottom: 3px;
}

.jd-meta-grid .m b {
  font-size: .96rem;
}

.jd-section {
  margin-top: 30px;
}

.jd-section h2 {
  font-size: 1.25rem;
  margin: 0 0 12px;
}

.jd-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.jd-list li {
  position: relative;
  padding-left: 28px;
  margin: 9px 0;
  color: var(--ink-soft);
}

.jd-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 6px;
  width: 14px;
  height: 14px;
  border-radius: 4px;
  background: rgba(221, 26, 50, .14);
  box-shadow: inset 0 0 0 2px var(--red);
}

.jd-apply {
  background: #fff;
  border: 1px solid var(--line-light);
  border-radius: 18px;
  padding: 24px;
  position: sticky;
  top: 96px;
}

.jd-apply .salary {
  font-size: 1.3rem;
  font-weight: 800;
  color: var(--red);
}

.jd-apply .btn {
  width: 100%;
  justify-content: center;
  margin-top: 14px;
}

.apply-form .field {
  margin-bottom: 16px;
}

.apply-form label {
  display: block;
  font-weight: 600;
  margin-bottom: 6px;
}

.apply-form input,
.apply-form textarea,
.apply-form select {
  width: 100%;
  padding: 11px 13px;
  border: 1px solid var(--line-light);
  border-radius: 10px;
  font: inherit;
}

.filedrop {
  border: 2px dashed var(--line-light);
  border-radius: 12px;
  padding: 22px;
  text-align: center;
  color: var(--muted-2);
}

.alert {
  padding: 14px 18px;
  border-radius: 12px;
  margin-bottom: 18px;
  font-weight: 600;
}

.alert.info {
  background: rgba(221, 26, 50, .07);
  color: var(--red);
  border: 1px solid rgba(221, 26, 50, .18);
}

.alert.success {
  background: #eefcf3;
  color: #1f9d55;
  border: 1px solid #b9eccb;
}

.auth-card {
  max-width: 460px;
  margin: 0 auto;
  background: #fff;
  border: 1px solid var(--line-light);
  border-radius: 18px;
  padding: 34px;
}

.auth-card .field {
  margin-bottom: 15px;
}

.auth-card label {
  display: block;
  font-weight: 600;
  margin-bottom: 6px;
}

.auth-card input,
.auth-card select {
  width: 100%;
  padding: 11px 13px;
  border: 1px solid var(--line-light);
  border-radius: 10px;
  font: inherit;
}

.role-toggle {
  display: flex;
  gap: 10px;
  margin-bottom: 22px;
}

.role-toggle a {
  flex: 1;
  text-align: center;
  padding: 10px;
  border: 1px solid var(--line-light);
  border-radius: 10px;
  font-weight: 600;
  color: var(--muted-2);
}

.role-toggle a.active {
  background: var(--grad-red);
  color: #fff;
  border-color: transparent;
}

@media (max-width: 880px) {
  .jobs-layout {
    grid-template-columns: 1fr;
  }

  .job-filters {
    position: static;
  }

  .jd-layout {
    grid-template-columns: 1fr;
  }

  .jd-apply {
    position: static;
  }
}

/* Jobs listing - two columns */
#job-list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px;
}

#job-list .job-card {
  margin-bottom: 0;
}

.featured-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px;
  margin-bottom: 34px;
}

.featured-grid .job-card {
  margin-bottom: 0;
}

@media (max-width: 1100px) {

  #job-list,
  .featured-grid {
    grid-template-columns: 1fr;
  }
}

/* Subtle hexagonal molecular network on the Certifications section (brand red, faded edges) */
.section.certs {
  background-color: var(--maroon-900);
  background-image:
    radial-gradient(125% 110% at 62% 42%, rgba(25, 7, 17, 0) 22%, var(--maroon-900) 100%),
    url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNDAwIiBoZWlnaHQ9Ijc2MCIgdmlld0JveD0iMCAwIDE0MDAgNzYwIj48bGluZSB4MT0iODAzLjUiIHkxPSI0MjAuNiIgeDI9Ijg3MS4yIiB5Mj0iNDM5LjQiIHN0cm9rZT0iI2U4MjQzZiIgc3Ryb2tlLW9wYWNpdHk9IjAuMDQ3IiBzdHJva2Utd2lkdGg9IjEiLz48bGluZSB4MT0iODAzLjUiIHkxPSI0MjAuNiIgeDI9Ijg2MS41IiB5Mj0iNDkwLjUiIHN0cm9rZT0iI2U4MjQzZiIgc3Ryb2tlLW9wYWNpdHk9IjAuMDU2IiBzdHJva2Utd2lkdGg9IjEiLz48bGluZSB4MT0iODAzLjUiIHkxPSI0MjAuNiIgeDI9IjcwMC4zIiB5Mj0iMzQ4LjIiIHN0cm9rZT0iI2U4MjQzZiIgc3Ryb2tlLW9wYWNpdHk9IjAuMDM1IiBzdHJva2Utd2lkdGg9IjEiLz48bGluZSB4MT0iODcxLjIiIHkxPSI0MzkuNCIgeDI9Ijg2MS41IiB5Mj0iNDkwLjUiIHN0cm9rZT0iI2U4MjQzZiIgc3Ryb2tlLW9wYWNpdHk9IjAuMDM1IiBzdHJva2Utd2lkdGg9IjEiLz48bGluZSB4MT0iMjYwLjgiIHkxPSI1OTAuNiIgeDI9IjIyNC4yIiB5Mj0iNDY4LjAiIHN0cm9rZT0iI2U4MjQzZiIgc3Ryb2tlLW9wYWNpdHk9IjAuMDU3IiBzdHJva2Utd2lkdGg9IjEiLz48bGluZSB4MT0iMjYwLjgiIHkxPSI1OTAuNiIgeDI9IjI4MC4wIiB5Mj0iNzEyLjciIHN0cm9rZT0iI2U4MjQzZiIgc3Ryb2tlLW9wYWNpdHk9IjAuMDU1IiBzdHJva2Utd2lkdGg9IjEiLz48bGluZSB4MT0iMjYwLjgiIHkxPSI1OTAuNiIgeDI9IjI1OS43IiB5Mj0iNDM2LjMiIHN0cm9rZT0iI2U4MjQzZiIgc3Ryb2tlLW9wYWNpdHk9IjAuMDM3IiBzdHJva2Utd2lkdGg9IjEiLz48bGluZSB4MT0iMTM4Mi41IiB5MT0iNjk2LjAiIHgyPSIxMzk3LjciIHkyPSI3MTcuMSIgc3Ryb2tlPSIjZTgyNDNmIiBzdHJva2Utb3BhY2l0eT0iMC4wMzYiIHN0cm9rZS13aWR0aD0iMSIvPjxsaW5lIHgxPSIxMzgyLjUiIHkxPSI2OTYuMCIgeDI9IjEzNTguNiIgeTI9IjYxNi4yIiBzdHJva2U9IiNlODI0M2YiIHN0cm9rZS1vcGFjaXR5PSIwLjA1MiIgc3Ryb2tlLXdpZHRoPSIxIi8+PGxpbmUgeDE9IjEzODIuNSIgeTE9IjY5Ni4wIiB4Mj0iMTM3MS40IiB5Mj0iNTg2LjMiIHN0cm9rZT0iI2U4MjQzZiIgc3Ryb2tlLW9wYWNpdHk9IjAuMDU4IiBzdHJva2Utd2lkdGg9IjEiLz48bGluZSB4MT0iMzgzLjkiIHkxPSI1MC4yIiB4Mj0iNDM4LjEiIHkyPSIyMDQuNSIgc3Ryb2tlPSIjZTgyNDNmIiBzdHJva2Utb3BhY2l0eT0iMC4wMzYiIHN0cm9rZS13aWR0aD0iMSIvPjxsaW5lIHgxPSIzODMuOSIgeTE9IjUwLjIiIHgyPSIzMTMuNiIgeTI9IjIwNy41IiBzdHJva2U9IiNlODI0M2YiIHN0cm9rZS1vcGFjaXR5PSIwLjA1OSIgc3Ryb2tlLXdpZHRoPSIxIi8+PGxpbmUgeDE9IjQzOC4xIiB5MT0iMjA0LjUiIHgyPSIzMTMuNiIgeTI9IjIwNy41IiBzdHJva2U9IiNlODI0M2YiIHN0cm9rZS1vcGFjaXR5PSIwLjA1NiIgc3Ryb2tlLXdpZHRoPSIxIi8+PGxpbmUgeDE9IjQzOC4xIiB5MT0iMjA0LjUiIHgyPSI0NzAuNyIgeTI9IjMwOC4xIiBzdHJva2U9IiNlODI0M2YiIHN0cm9rZS1vcGFjaXR5PSIwLjA0OCIgc3Ryb2tlLXdpZHRoPSIxIi8+PGxpbmUgeDE9Ijc4OC43IiB5MT0iNjEyLjkiIHgyPSI4NjEuNSIgeTI9IjQ5MC41IiBzdHJva2U9IiNlODI0M2YiIHN0cm9rZS1vcGFjaXR5PSIwLjA0MyIgc3Ryb2tlLXdpZHRoPSIxIi8+PGxpbmUgeDE9IjEzOTcuNyIgeTE9IjcxNy4xIiB4Mj0iMTM1OC42IiB5Mj0iNjE2LjIiIHN0cm9rZT0iI2U4MjQzZiIgc3Ryb2tlLW9wYWNpdHk9IjAuMDMzIiBzdHJva2Utd2lkdGg9IjEiLz48bGluZSB4MT0iMTM5Ny43IiB5MT0iNzE3LjEiIHgyPSIxMzcxLjQiIHkyPSI1ODYuMyIgc3Ryb2tlPSIjZTgyNDNmIiBzdHJva2Utb3BhY2l0eT0iMC4wMzEiIHN0cm9rZS13aWR0aD0iMSIvPjxsaW5lIHgxPSI2MjQuMCIgeTE9IjE5Ni4yIiB4Mj0iNzAwLjMiIHkyPSIzNDguMiIgc3Ryb2tlPSIjZTgyNDNmIiBzdHJva2Utb3BhY2l0eT0iMC4wNTkiIHN0cm9rZS13aWR0aD0iMSIvPjxsaW5lIHgxPSIxMTYyLjAiIHkxPSIzMTIuMyIgeDI9IjEzMTAuOCIgeTI9IjM1OS42IiBzdHJva2U9IiNlODI0M2YiIHN0cm9rZS1vcGFjaXR5PSIwLjAzNyIgc3Ryb2tlLXdpZHRoPSIxIi8+PGxpbmUgeDE9IjExNjIuMCIgeTE9IjMxMi4zIiB4Mj0iMTE5NC40IiB5Mj0iMTYwLjgiIHN0cm9rZT0iI2U4MjQzZiIgc3Ryb2tlLW9wYWNpdHk9IjAuMDUxIiBzdHJva2Utd2lkdGg9IjEiLz48bGluZSB4MT0iMTE2Mi4wIiB5MT0iMzEyLjMiIHgyPSIxMTY4LjgiIHkyPSIyNjMuNyIgc3Ryb2tlPSIjZTgyNDNmIiBzdHJva2Utb3BhY2l0eT0iMC4wMzgiIHN0cm9rZS13aWR0aD0iMSIvPjxsaW5lIHgxPSIxMzU4LjYiIHkxPSI2MTYuMiIgeDI9IjEzNzEuNCIgeTI9IjU4Ni4zIiBzdHJva2U9IiNlODI0M2YiIHN0cm9rZS1vcGFjaXR5PSIwLjA1NSIgc3Ryb2tlLXdpZHRoPSIxIi8+PGxpbmUgeDE9IjEzMTAuOCIgeTE9IjM1OS42IiB4Mj0iMTE2OC44IiB5Mj0iMjYzLjciIHN0cm9rZT0iI2U4MjQzZiIgc3Ryb2tlLW9wYWNpdHk9IjAuMDQ4IiBzdHJva2Utd2lkdGg9IjEiLz48bGluZSB4MT0iMjI0LjIiIHkxPSI0NjguMCIgeDI9IjMxMC45IiB5Mj0iMzI2LjEiIHN0cm9rZT0iI2U4MjQzZiIgc3Ryb2tlLW9wYWNpdHk9IjAuMDM5IiBzdHJva2Utd2lkdGg9IjEiLz48bGluZSB4MT0iMjI0LjIiIHkxPSI0NjguMCIgeDI9IjI1OS43IiB5Mj0iNDM2LjMiIHN0cm9rZT0iI2U4MjQzZiIgc3Ryb2tlLW9wYWNpdHk9IjAuMDM1IiBzdHJva2Utd2lkdGg9IjEiLz48bGluZSB4MT0iMjUzLjciIHkxPSIyNjYuMiIgeDI9IjMxMy42IiB5Mj0iMjA3LjUiIHN0cm9rZT0iI2U4MjQzZiIgc3Ryb2tlLW9wYWNpdHk9IjAuMDUyIiBzdHJva2Utd2lkdGg9IjEiLz48bGluZSB4MT0iMjUzLjciIHkxPSIyNjYuMiIgeDI9IjMxMC45IiB5Mj0iMzI2LjEiIHN0cm9rZT0iI2U4MjQzZiIgc3Ryb2tlLW9wYWNpdHk9IjAuMDMyIiBzdHJva2Utd2lkdGg9IjEiLz48bGluZSB4MT0iMjUzLjciIHkxPSIyNjYuMiIgeDI9IjI1OS43IiB5Mj0iNDM2LjMiIHN0cm9rZT0iI2U4MjQzZiIgc3Ryb2tlLW9wYWNpdHk9IjAuMDM3IiBzdHJva2Utd2lkdGg9IjEiLz48bGluZSB4MT0iMzEzLjYiIHkxPSIyMDcuNSIgeDI9IjMxMC45IiB5Mj0iMzI2LjEiIHN0cm9rZT0iI2U4MjQzZiIgc3Ryb2tlLW9wYWNpdHk9IjAuMDQ3IiBzdHJva2Utd2lkdGg9IjEiLz48bGluZSB4MT0iMTE5NC40IiB5MT0iMTYwLjgiIHgyPSIxMTY4LjgiIHkyPSIyNjMuNyIgc3Ryb2tlPSIjZTgyNDNmIiBzdHJva2Utb3BhY2l0eT0iMC4wNTYiIHN0cm9rZS13aWR0aD0iMSIvPjxsaW5lIHgxPSIzMTAuOSIgeTE9IjMyNi4xIiB4Mj0iNDcwLjciIHkyPSIzMDguMSIgc3Ryb2tlPSIjZTgyNDNmIiBzdHJva2Utb3BhY2l0eT0iMC4wNDgiIHN0cm9rZS13aWR0aD0iMSIvPjxsaW5lIHgxPSIzMTAuOSIgeTE9IjMyNi4xIiB4Mj0iMjU5LjciIHkyPSI0MzYuMyIgc3Ryb2tlPSIjZTgyNDNmIiBzdHJva2Utb3BhY2l0eT0iMC4wMzgiIHN0cm9rZS13aWR0aD0iMSIvPjxwb2x5Z29uIHBvaW50cz0iODU3LjIsNDQ5LjEgODA1LjcsNDgxLjQgNzUxLjksNDUyLjkgNzQ5LjgsMzkyLjIgODAxLjMsMzU5LjkgODU1LjAsMzg4LjQiIGZpbGw9IiNmZjVhNGQiIGZpbGwtb3BhY2l0eT0iMC4wMDQiIHN0cm9rZT0iI2ZmNWE0ZCIgc3Ryb2tlLW9wYWNpdHk9IjAuMTI0IiBzdHJva2Utd2lkdGg9IjEuMSIvPjxjaXJjbGUgY3g9Ijg1Ny4yIiBjeT0iNDQ5LjEiIHI9IjEuOCIgZmlsbD0iI2ZmNmY2MyIgZmlsbC1vcGFjaXR5PSIwLjEwNyIvPjxjaXJjbGUgY3g9IjgwNS43IiBjeT0iNDgxLjQiIHI9IjEuNyIgZmlsbD0iI2ZmNmY2MyIgZmlsbC1vcGFjaXR5PSIwLjE2OSIvPjxjaXJjbGUgY3g9Ijc1MS45IiBjeT0iNDUyLjkiIHI9IjEuNyIgZmlsbD0iI2ZmNmY2MyIgZmlsbC1vcGFjaXR5PSIwLjIwNyIvPjxwb2x5Z29uIHBvaW50cz0iODk2LjgsNDU0LjYgODcwLjksNDY5LjIgODQ1LjMsNDU0LjAgODQ1LjcsNDI0LjIgODcxLjYsNDA5LjcgODk3LjIsNDI0LjkiIGZpbGw9IiNmZjVhNGQiIGZpbGwtb3BhY2l0eT0iMC4wMDMiIHN0cm9rZT0iI2ZmNWE0ZCIgc3Ryb2tlLW9wYWNpdHk9IjAuMTAxIiBzdHJva2Utd2lkdGg9IjEuMSIvPjxjaXJjbGUgY3g9Ijg5Ni44IiBjeT0iNDU0LjYiIHI9IjIuMyIgZmlsbD0iI2ZmNmY2MyIgZmlsbC1vcGFjaXR5PSIwLjE4NCIvPjxjaXJjbGUgY3g9Ijg0NS4zIiBjeT0iNDU0LjAiIHI9IjIuMCIgZmlsbD0iI2ZmNmY2MyIgZmlsbC1vcGFjaXR5PSIwLjE1OCIvPjxjaXJjbGUgY3g9Ijg3MS42IiBjeT0iNDA5LjciIHI9IjIuNCIgZmlsbD0iI2ZmNmY2MyIgZmlsbC1vcGFjaXR5PSIwLjEwOSIvPjxwb2x5Z29uIHBvaW50cz0iMTAzNy43LDU4Ny4zIDEwMTguMyw2MDQuNiA5OTMuNyw1OTYuNSA5ODguMyw1NzEuMSAxMDA3LjcsNTUzLjggMTAzMi4zLDU2MS45IiBmaWxsPSIjZmY1YTRkIiBmaWxsLW9wYWNpdHk9IjAuMDE4IiBzdHJva2U9IiNlODI0M2YiIHN0cm9rZS1vcGFjaXR5PSIwLjExMiIgc3Ryb2tlLXdpZHRoPSIxLjEiLz48Y2lyY2xlIGN4PSI5ODguMyIgY3k9IjU3MS4xIiByPSIyLjEiIGZpbGw9IiNmZjZmNjMiIGZpbGwtb3BhY2l0eT0iMC4yMDgiLz48Y2lyY2xlIGN4PSIxMDMyLjMiIGN5PSI1NjEuOSIgcj0iMi4yIiBmaWxsPSIjZmY2ZjYzIiBmaWxsLW9wYWNpdHk9IjAuMjA0Ii8+PHBvbHlnb24gcG9pbnRzPSIzMTEuOSw1OTIuOCAyODQuNCw2MzUuOSAyMzMuMyw2MzMuNyAyMDkuOCw1ODguMyAyMzcuMiw1NDUuMiAyODguMyw1NDcuNCIgZmlsbD0iI2ZmNWE0ZCIgZmlsbC1vcGFjaXR5PSIwLjAxMiIgc3Ryb2tlPSIjZmY1YTRkIiBzdHJva2Utb3BhY2l0eT0iMC4xIiBzdHJva2Utd2lkdGg9IjEuMSIvPjxjaXJjbGUgY3g9IjIzMy4zIiBjeT0iNjMzLjciIHI9IjIuMCIgZmlsbD0iI2ZmNmY2MyIgZmlsbC1vcGFjaXR5PSIwLjIxOSIvPjxjaXJjbGUgY3g9IjI4OC4zIiBjeT0iNTQ3LjQiIHI9IjIuMSIgZmlsbD0iI2ZmNmY2MyIgZmlsbC1vcGFjaXR5PSIwLjE3Ii8+PHBvbHlnb24gcG9pbnRzPSIxNDIyLjAsNzI1LjggMTM3Ni41LDc0NS4xIDEzMzcuMCw3MTUuNCAxMzQzLjAsNjY2LjMgMTM4OC41LDY0Ni45IDE0MjguMCw2NzYuNyIgZmlsbD0iI2ZmNWE0ZCIgZmlsbC1vcGFjaXR5PSIwLjAxNyIgc3Ryb2tlPSIjZmY1YTRkIiBzdHJva2Utb3BhY2l0eT0iMC4wOTEiIHN0cm9rZS13aWR0aD0iMS4xIi8+PGNpcmNsZSBjeD0iMTM3Ni41IiBjeT0iNzQ1LjEiIHI9IjIuMCIgZmlsbD0iI2ZmNmY2MyIgZmlsbC1vcGFjaXR5PSIwLjE1OCIvPjxjaXJjbGUgY3g9IjEzMzcuMCIgY3k9IjcxNS40IiByPSIyLjEiIGZpbGw9IiNmZjZmNjMiIGZpbGwtb3BhY2l0eT0iMC4xNiIvPjxjaXJjbGUgY3g9IjE0MjguMCIgY3k9IjY3Ni43IiByPSIxLjMiIGZpbGw9IiNmZjZmNjMiIGZpbGwtb3BhY2l0eT0iMC4xMzYiLz48cG9seWdvbiBwb2ludHM9IjQyOC4wLDUzLjAgNDAzLjYsODkuOCAzNTkuNSw4Ny4wIDMzOS44LDQ3LjQgMzY0LjIsMTAuNiA0MDguMywxMy40IiBmaWxsPSIjZmY1YTRkIiBmaWxsLW9wYWNpdHk9IjAuMDA0IiBzdHJva2U9IiNmZjVhNGQiIHN0cm9rZS1vcGFjaXR5PSIwLjEwNyIgc3Ryb2tlLXdpZHRoPSIxLjEiLz48Y2lyY2xlIGN4PSIzNTkuNSIgY3k9Ijg3LjAiIHI9IjIuMyIgZmlsbD0iI2ZmNmY2MyIgZmlsbC1vcGFjaXR5PSIwLjEzOSIvPjxjaXJjbGUgY3g9IjM2NC4yIiBjeT0iMTAuNiIgcj0iMS44IiBmaWxsPSIjZmY2ZjYzIiBmaWxsLW9wYWNpdHk9IjAuMTk3Ii8+PHBvbHlnb24gcG9pbnRzPSI0NTguNywyMTUuNCA0MzkuMCwyMjcuOCA0MTguNCwyMTYuOSA0MTcuNSwxOTMuNyA0MzcuMiwxODEuMyA0NTcuOCwxOTIuMSIgZmlsbD0iI2ZmNWE0ZCIgZmlsbC1vcGFjaXR5PSIwLjAwOCIgc3Ryb2tlPSIjZTgyNDNmIiBzdHJva2Utb3BhY2l0eT0iMC4xMjIiIHN0cm9rZS13aWR0aD0iMS4xIi8+PGNpcmNsZSBjeD0iNDU4LjciIGN5PSIyMTUuNCIgcj0iMS40IiBmaWxsPSIjZmY2ZjYzIiBmaWxsLW9wYWNpdHk9IjAuMTYiLz48Y2lyY2xlIGN4PSI0NTcuOCIgY3k9IjE5Mi4xIiByPSIxLjUiIGZpbGw9IiNmZjZmNjMiIGZpbGwtb3BhY2l0eT0iMC4xNTQiLz48cG9seWdvbiBwb2ludHM9IjgyMy4wLDY0MC4xIDc4Mi4zLDY1Ni4yIDc0OC4wLDYyOS4wIDc1NC40LDU4NS42IDc5NS4xLDU2OS41IDgyOS40LDU5Ni43IiBmaWxsPSIjZmY1YTRkIiBmaWxsLW9wYWNpdHk9IjAuMDA0IiBzdHJva2U9IiNmZjVhNGQiIHN0cm9rZS1vcGFjaXR5PSIwLjA3OSIgc3Ryb2tlLXdpZHRoPSIxLjEiLz48Y2lyY2xlIGN4PSI3ODIuMyIgY3k9IjY1Ni4yIiByPSIxLjYiIGZpbGw9IiNmZjZmNjMiIGZpbGwtb3BhY2l0eT0iMC4yMDEiLz48Y2lyY2xlIGN4PSI3NTQuNCIgY3k9IjU4NS42IiByPSIxLjQiIGZpbGw9IiNmZjZmNjMiIGZpbGwtb3BhY2l0eT0iMC4xMDQiLz48Y2lyY2xlIGN4PSI4MjkuNCIgY3k9IjU5Ni43IiByPSIyLjEiIGZpbGw9IiNmZjZmNjMiIGZpbGwtb3BhY2l0eT0iMC4xNjgiLz48cG9seWdvbiBwb2ludHM9IjkwMS4wLDUwMi4zIDg3MS4wLDUzMC42IDgzMS41LDUxOC43IDgyMi4xLDQ3OC42IDg1Mi4wLDQ1MC40IDg5MS41LDQ2Mi4yIiBmaWxsPSIjZmY1YTRkIiBmaWxsLW9wYWNpdHk9IjAuMDE2IiBzdHJva2U9IiNmZjVhNGQiIHN0cm9rZS1vcGFjaXR5PSIwLjA4MiIgc3Ryb2tlLXdpZHRoPSIxLjEiLz48Y2lyY2xlIGN4PSI5MDEuMCIgY3k9IjUwMi4zIiByPSIxLjgiIGZpbGw9IiNmZjZmNjMiIGZpbGwtb3BhY2l0eT0iMC4xMDMiLz48Y2lyY2xlIGN4PSI4MzEuNSIgY3k9IjUxOC43IiByPSIxLjUiIGZpbGw9IiNmZjZmNjMiIGZpbGwtb3BhY2l0eT0iMC4xMDYiLz48Y2lyY2xlIGN4PSI4NTIuMCIgY3k9IjQ1MC40IiByPSIyLjAiIGZpbGw9IiNmZjZmNjMiIGZpbGwtb3BhY2l0eT0iMC4xNzkiLz48cG9seWdvbiBwb2ludHM9IjE0NDAuMCw3NTUuOCAxMzg1LjMsNzczLjAgMTM0My4xLDczNC4zIDEzNTUuNCw2NzguNCAxNDEwLjEsNjYxLjEgMTQ1Mi4zLDY5OS44IiBmaWxsPSIjZmY1YTRkIiBmaWxsLW9wYWNpdHk9IjAuMDE0IiBzdHJva2U9IiNmZjVhNGQiIHN0cm9rZS1vcGFjaXR5PSIwLjEyNyIgc3Ryb2tlLXdpZHRoPSIxLjEiLz48Y2lyY2xlIGN4PSIxNDQwLjAiIGN5PSI3NTUuOCIgcj0iMS41IiBmaWxsPSIjZmY2ZjYzIiBmaWxsLW9wYWNpdHk9IjAuMTAxIi8+PGNpcmNsZSBjeD0iMTM4NS4zIiBjeT0iNzczLjAiIHI9IjIuMSIgZmlsbD0iI2ZmNmY2MyIgZmlsbC1vcGFjaXR5PSIwLjEyMSIvPjxjaXJjbGUgY3g9IjEzNDMuMSIgY3k9IjczNC4zIiByPSIxLjciIGZpbGw9IiNmZjZmNjMiIGZpbGwtb3BhY2l0eT0iMC4xODQiLz48cG9seWdvbiBwb2ludHM9IjY1OC4xLDE5OC43IDYzOC45LDIyNi45IDYwNC44LDIyNC40IDU5MC4wLDE5My43IDYwOS4yLDE2NS40IDY0My4yLDE2Ny45IiBmaWxsPSIjZmY1YTRkIiBmaWxsLW9wYWNpdHk9IjAuMDE2IiBzdHJva2U9IiNlODI0M2YiIHN0cm9rZS1vcGFjaXR5PSIwLjA4OCIgc3Ryb2tlLXdpZHRoPSIxLjEiLz48Y2lyY2xlIGN4PSI2NTguMSIgY3k9IjE5OC43IiByPSIyLjMiIGZpbGw9IiNmZjZmNjMiIGZpbGwtb3BhY2l0eT0iMC4xODciLz48Y2lyY2xlIGN4PSI2MzguOSIgY3k9IjIyNi45IiByPSIxLjgiIGZpbGw9IiNmZjZmNjMiIGZpbGwtb3BhY2l0eT0iMC4xNzUiLz48Y2lyY2xlIGN4PSI1OTAuMCIgY3k9IjE5My43IiByPSIxLjkiIGZpbGw9IiNmZjZmNjMiIGZpbGwtb3BhY2l0eT0iMC4yMDYiLz48cG9seWdvbiBwb2ludHM9IjEyMTQuOSwzMzQuOSAxMTY4LjgsMzY5LjQgMTExNS45LDM0Ni44IDExMDkuMSwyODkuNiAxMTU1LjIsMjU1LjEgMTIwOC4xLDI3Ny44IiBmaWxsPSIjZmY1YTRkIiBmaWxsLW9wYWNpdHk9IjAuMDEzIiBzdHJva2U9IiNmZjVhNGQiIHN0cm9rZS1vcGFjaXR5PSIwLjA5MiIgc3Ryb2tlLXdpZHRoPSIxLjEiLz48Y2lyY2xlIGN4PSIxMTU1LjIiIGN5PSIyNTUuMSIgcj0iMi4zIiBmaWxsPSIjZmY2ZjYzIiBmaWxsLW9wYWNpdHk9IjAuMjE4Ii8+PHBvbHlnb24gcG9pbnRzPSIxMzgwLjEsNjIxLjAgMTM2NS4yLDYzNy4yIDEzNDMuNyw2MzIuNCAxMzM3LjEsNjExLjQgMTM1Mi4wLDU5NS4yIDEzNzMuNSw2MDAuMCIgZmlsbD0iI2ZmNWE0ZCIgZmlsbC1vcGFjaXR5PSIwLjAxNiIgc3Ryb2tlPSIjZmY1YTRkIiBzdHJva2Utb3BhY2l0eT0iMC4wOTgiIHN0cm9rZS13aWR0aD0iMS4xIi8+PGNpcmNsZSBjeD0iMTM0My43IiBjeT0iNjMyLjQiIHI9IjEuNCIgZmlsbD0iI2ZmNmY2MyIgZmlsbC1vcGFjaXR5PSIwLjE1MyIvPjxjaXJjbGUgY3g9IjEzNzMuNSIgY3k9IjYwMC4wIiByPSIxLjMiIGZpbGw9IiNmZjZmNjMiIGZpbGwtb3BhY2l0eT0iMC4xOTciLz48cG9seWdvbiBwb2ludHM9IjEzNjguNiwzODUuMSAxMzE3LjYsNDIyLjQgMTI1OS44LDM5Ni45IDEyNTMuMSwzMzQuMSAxMzA0LjEsMjk2LjggMTM2MS44LDMyMi4zIiBmaWxsPSIjZmY1YTRkIiBmaWxsLW9wYWNpdHk9IjAuMDE2IiBzdHJva2U9IiNmZjVhNGQiIHN0cm9rZS1vcGFjaXR5PSIwLjA2NCIgc3Ryb2tlLXdpZHRoPSIxLjEiLz48Y2lyY2xlIGN4PSIxMzY4LjYiIGN5PSIzODUuMSIgcj0iMi4yIiBmaWxsPSIjZmY2ZjYzIiBmaWxsLW9wYWNpdHk9IjAuMTE3Ii8+PGNpcmNsZSBjeD0iMTMxNy42IiBjeT0iNDIyLjQiIHI9IjEuOSIgZmlsbD0iI2ZmNmY2MyIgZmlsbC1vcGFjaXR5PSIwLjE4NyIvPjxjaXJjbGUgY3g9IjEzNjEuOCIgY3k9IjMyMi4zIiByPSIyLjMiIGZpbGw9IiNmZjZmNjMiIGZpbGwtb3BhY2l0eT0iMC4xMSIvPjxwb2x5Z29uIHBvaW50cz0iMjc2LjcsNDgzLjMgMjM3LjIsNTIxLjEgMTg0LjcsNTA1LjkgMTcxLjcsNDUyLjggMjExLjEsNDE0LjkgMjYzLjcsNDMwLjIiIGZpbGw9IiNmZjVhNGQiIGZpbGwtb3BhY2l0eT0iMC4wMTEiIHN0cm9rZT0iI2ZmNWE0ZCIgc3Ryb2tlLW9wYWNpdHk9IjAuMDc1IiBzdHJva2Utd2lkdGg9IjEuMSIvPjxjaXJjbGUgY3g9IjI2My43IiBjeT0iNDMwLjIiIHI9IjEuNyIgZmlsbD0iI2ZmNmY2MyIgZmlsbC1vcGFjaXR5PSIwLjIwMSIvPjxwb2x5Z29uIHBvaW50cz0iMjk3LjUsMzEwLjcgMjM3LjAsMzI2LjQgMTkzLjIsMjgxLjggMjA5LjksMjIxLjYgMjcwLjQsMjA1LjkgMzE0LjIsMjUwLjUiIGZpbGw9IiNmZjVhNGQiIGZpbGwtb3BhY2l0eT0iMC4wMDQiIHN0cm9rZT0iI2U4MjQzZiIgc3Ryb2tlLW9wYWNpdHk9IjAuMTIzIiBzdHJva2Utd2lkdGg9IjEuMSIvPjxjaXJjbGUgY3g9IjIwOS45IiBjeT0iMjIxLjYiIHI9IjEuOSIgZmlsbD0iI2ZmNmY2MyIgZmlsbC1vcGFjaXR5PSIwLjE2Ii8+PGNpcmNsZSBjeD0iMzE0LjIiIGN5PSIyNTAuNSIgcj0iMi40IiBmaWxsPSIjZmY2ZjYzIiBmaWxsLW9wYWNpdHk9IjAuMTYyIi8+PHBvbHlnb24gcG9pbnRzPSIzMzkuOCwyMDkuMiAzMjUuMywyMzEuMCAyOTkuMSwyMjkuNCAyODcuNCwyMDUuOSAzMDIuMCwxODQuMCAzMjguMiwxODUuNyIgZmlsbD0iI2ZmNWE0ZCIgZmlsbC1vcGFjaXR5PSIwLjAxNiIgc3Ryb2tlPSIjZTgyNDNmIiBzdHJva2Utb3BhY2l0eT0iMC4wODgiIHN0cm9rZS13aWR0aD0iMS4xIi8+PGNpcmNsZSBjeD0iMzM5LjgiIGN5PSIyMDkuMiIgcj0iMi4xIiBmaWxsPSIjZmY2ZjYzIiBmaWxsLW9wYWNpdHk9IjAuMTA4Ii8+PGNpcmNsZSBjeD0iMjk5LjEiIGN5PSIyMjkuNCIgcj0iMi40IiBmaWxsPSIjZmY2ZjYzIiBmaWxsLW9wYWNpdHk9IjAuMjExIi8+PGNpcmNsZSBjeD0iMjg3LjQiIGN5PSIyMDUuOSIgcj0iMS44IiBmaWxsPSIjZmY2ZjYzIiBmaWxsLW9wYWNpdHk9IjAuMTE1Ii8+PGNpcmNsZSBjeD0iMzAyLjAiIGN5PSIxODQuMCIgcj0iMi4yIiBmaWxsPSIjZmY2ZjYzIiBmaWxsLW9wYWNpdHk9IjAuMjA4Ii8+PGNpcmNsZSBjeD0iMzI4LjIiIGN5PSIxODUuNyIgcj0iMS42IiBmaWxsPSIjZmY2ZjYzIiBmaWxsLW9wYWNpdHk9IjAuMTIzIi8+PHBvbHlnb24gcG9pbnRzPSIxMjM1LjAsMTgxLjQgMTE5Ni45LDIwNi4yIDExNTYuMywxODUuNyAxMTUzLjgsMTQwLjMgMTE5MS45LDExNS40IDEyMzIuNSwxMzUuOSIgZmlsbD0iI2ZmNWE0ZCIgZmlsbC1vcGFjaXR5PSIwLjAxOSIgc3Ryb2tlPSIjZmY1YTRkIiBzdHJva2Utb3BhY2l0eT0iMC4xMDMiIHN0cm9rZS13aWR0aD0iMS4xIi8+PGNpcmNsZSBjeD0iMTE5Ni45IiBjeT0iMjA2LjIiIHI9IjEuNSIgZmlsbD0iI2ZmNmY2MyIgZmlsbC1vcGFjaXR5PSIwLjEyNyIvPjxjaXJjbGUgY3g9IjExNTMuOCIgY3k9IjE0MC4zIiByPSIxLjciIGZpbGw9IiNmZjZmNjMiIGZpbGwtb3BhY2l0eT0iMC4xNzQiLz48Y2lyY2xlIGN4PSIxMTkxLjkiIGN5PSIxMTUuNCIgcj0iMi4xIiBmaWxsPSIjZmY2ZjYzIiBmaWxsLW9wYWNpdHk9IjAuMTE1Ii8+PHBvbHlnb24gcG9pbnRzPSI0NjAuNCw1NTQuOSA0MzQuOCw1NjQuOSA0MTMuMyw1NDcuNyA0MTcuNCw1MjAuNSA0NDMuMCw1MTAuNSA0NjQuNSw1MjcuNyIgZmlsbD0iI2ZmNWE0ZCIgZmlsbC1vcGFjaXR5PSIwLjAwNCIgc3Ryb2tlPSIjZTgyNDNmIiBzdHJva2Utb3BhY2l0eT0iMC4wNzgiIHN0cm9rZS13aWR0aD0iMS4xIi8+PGNpcmNsZSBjeD0iNDYwLjQiIGN5PSI1NTQuOSIgcj0iMS43IiBmaWxsPSIjZmY2ZjYzIiBmaWxsLW9wYWNpdHk9IjAuMTUiLz48Y2lyY2xlIGN4PSI0MTMuMyIgY3k9IjU0Ny43IiByPSIxLjUiIGZpbGw9IiNmZjZmNjMiIGZpbGwtb3BhY2l0eT0iMC4xNzYiLz48cG9seWdvbiBwb2ludHM9IjM0MC42LDMzNC43IDMxOC4zLDM1Ni4yIDI4OC41LDM0Ny41IDI4MS4yLDMxNy41IDMwMy41LDI5Ni4xIDMzMy4yLDMwNC43IiBmaWxsPSIjZmY1YTRkIiBmaWxsLW9wYWNpdHk9IjAuMDE3IiBzdHJva2U9IiNmZjVhNGQiIHN0cm9rZS1vcGFjaXR5PSIwLjEwMyIgc3Ryb2tlLXdpZHRoPSIxLjEiLz48Y2lyY2xlIGN4PSIyODEuMiIgY3k9IjMxNy41IiByPSIxLjYiIGZpbGw9IiNmZjZmNjMiIGZpbGwtb3BhY2l0eT0iMC4yMTEiLz48Y2lyY2xlIGN4PSIzMDMuNSIgY3k9IjI5Ni4xIiByPSIyLjQiIGZpbGw9IiNmZjZmNjMiIGZpbGwtb3BhY2l0eT0iMC4yMDciLz48Y2lyY2xlIGN4PSIzMzMuMiIgY3k9IjMwNC43IiByPSIxLjYiIGZpbGw9IiNmZjZmNjMiIGZpbGwtb3BhY2l0eT0iMC4xODciLz48cG9seWdvbiBwb2ludHM9IjEzOTIuMyw2MTQuMSAxMzU3LjcsNjE4LjMgMTMzNi45LDU5MC41IDEzNTAuNSw1NTguNSAxMzg1LjAsNTU0LjMgMTQwNS45LDU4Mi4xIiBmaWxsPSIjZmY1YTRkIiBmaWxsLW9wYWNpdHk9IjAuMDAyIiBzdHJva2U9IiNlODI0M2YiIHN0cm9rZS1vcGFjaXR5PSIwLjA3OCIgc3Ryb2tlLXdpZHRoPSIxLjEiLz48Y2lyY2xlIGN4PSIxMzkyLjMiIGN5PSI2MTQuMSIgcj0iMi4yIiBmaWxsPSIjZmY2ZjYzIiBmaWxsLW9wYWNpdHk9IjAuMTE1Ii8+PGNpcmNsZSBjeD0iMTM1Ny43IiBjeT0iNjE4LjMiIHI9IjIuMSIgZmlsbD0iI2ZmNmY2MyIgZmlsbC1vcGFjaXR5PSIwLjEwMiIvPjxjaXJjbGUgY3g9IjEzMzYuOSIgY3k9IjU5MC41IiByPSIyLjEiIGZpbGw9IiNmZjZmNjMiIGZpbGwtb3BhY2l0eT0iMC4yMDkiLz48Y2lyY2xlIGN4PSIxMzg1LjAiIGN5PSI1NTQuMyIgcj0iMS45IiBmaWxsPSIjZmY2ZjYzIiBmaWxsLW9wYWNpdHk9IjAuMTkxIi8+PHBvbHlnb24gcG9pbnRzPSI1MTYuMCwzNDQuMSA0NjIuMSwzNjUuNCA0MTYuOCwzMjkuMyA0MjUuNCwyNzIuMSA0NzkuMiwyNTAuOSA1MjQuNSwyODYuOSIgZmlsbD0iI2ZmNWE0ZCIgZmlsbC1vcGFjaXR5PSIwLjAwNCIgc3Ryb2tlPSIjZmY1YTRkIiBzdHJva2Utb3BhY2l0eT0iMC4xMDgiIHN0cm9rZS13aWR0aD0iMS4xIi8+PGNpcmNsZSBjeD0iNTE2LjAiIGN5PSIzNDQuMSIgcj0iMS4zIiBmaWxsPSIjZmY2ZjYzIiBmaWxsLW9wYWNpdHk9IjAuMTY2Ii8+PGNpcmNsZSBjeD0iNDI1LjQiIGN5PSIyNzIuMSIgcj0iMS41IiBmaWxsPSIjZmY2ZjYzIiBmaWxsLW9wYWNpdHk9IjAuMTI0Ii8+PHBvbHlnb24gcG9pbnRzPSIzMDkuOCw3MjEuMCAyODcuNyw3NDIuNyAyNTcuOSw3MzQuNCAyNTAuMiw3MDQuNSAyNzIuMiw2ODIuOCAzMDIuMSw2OTEuMCIgZmlsbD0iI2ZmNWE0ZCIgZmlsbC1vcGFjaXR5PSIwLjAwMiIgc3Ryb2tlPSIjZmY1YTRkIiBzdHJva2Utb3BhY2l0eT0iMC4xMjUiIHN0cm9rZS13aWR0aD0iMS4xIi8+PGNpcmNsZSBjeD0iMjg3LjciIGN5PSI3NDIuNyIgcj0iMi4xIiBmaWxsPSIjZmY2ZjYzIiBmaWxsLW9wYWNpdHk9IjAuMTM5Ii8+PGNpcmNsZSBjeD0iMjU3LjkiIGN5PSI3MzQuNCIgcj0iMS45IiBmaWxsPSIjZmY2ZjYzIiBmaWxsLW9wYWNpdHk9IjAuMTUyIi8+PGNpcmNsZSBjeD0iMjcyLjIiIGN5PSI2ODIuOCIgcj0iMi4xIiBmaWxsPSIjZmY2ZjYzIiBmaWxsLW9wYWNpdHk9IjAuMjAxIi8+PGNpcmNsZSBjeD0iMzAyLjEiIGN5PSI2OTEuMCIgcj0iMS44IiBmaWxsPSIjZmY2ZjYzIiBmaWxsLW9wYWNpdHk9IjAuMTg5Ii8+PHBvbHlnb24gcG9pbnRzPSIxMjAzLjEsMjY2LjMgMTE4My43LDI5NC44IDExNDkuMywyOTIuMSAxMTM0LjQsMjYxLjAgMTE1My45LDIzMi42IDExODguMiwyMzUuMyIgZmlsbD0iI2ZmNWE0ZCIgZmlsbC1vcGFjaXR5PSIwLjAwNCIgc3Ryb2tlPSIjZmY1YTRkIiBzdHJva2Utb3BhY2l0eT0iMC4wODgiIHN0cm9rZS13aWR0aD0iMS4xIi8+PGNpcmNsZSBjeD0iMTE4My43IiBjeT0iMjk0LjgiIHI9IjIuMyIgZmlsbD0iI2ZmNmY2MyIgZmlsbC1vcGFjaXR5PSIwLjE5NiIvPjxjaXJjbGUgY3g9IjExODguMiIgY3k9IjIzNS4zIiByPSIyLjAiIGZpbGw9IiNmZjZmNjMiIGZpbGwtb3BhY2l0eT0iMC4xNjEiLz48cG9seWdvbiBwb2ludHM9IjI4NS43LDQ1NS4yIDI1Ni4zLDQ2OC4zIDIzMC4zLDQ0OS4zIDIzMy43LDQxNy4zIDI2My4xLDQwNC4yIDI4OS4yLDQyMy4yIiBmaWxsPSIjZmY1YTRkIiBmaWxsLW9wYWNpdHk9IjAuMDE2IiBzdHJva2U9IiNmZjVhNGQiIHN0cm9rZS1vcGFjaXR5PSIwLjEyOSIgc3Ryb2tlLXdpZHRoPSIxLjEiLz48Y2lyY2xlIGN4PSIyNjMuMSIgY3k9IjQwNC4yIiByPSIyLjMiIGZpbGw9IiNmZjZmNjMiIGZpbGwtb3BhY2l0eT0iMC4yMDYiLz48cG9seWdvbiBwb2ludHM9Ijc1NC43LDM3OC40IDcwMS4zLDQxMC41IDY0Ni45LDM4MC4yIDY0NS44LDMxOC4wIDY5OS4yLDI4NS45IDc1My43LDMxNi4xIiBmaWxsPSIjZmY1YTRkIiBmaWxsLW9wYWNpdHk9IjAuMDE1IiBzdHJva2U9IiNmZjVhNGQiIHN0cm9rZS1vcGFjaXR5PSIwLjExNCIgc3Ryb2tlLXdpZHRoPSIxLjEiLz48Y2lyY2xlIGN4PSI3MDEuMyIgY3k9IjQxMC41IiByPSIxLjciIGZpbGw9IiNmZjZmNjMiIGZpbGwtb3BhY2l0eT0iMC4xNTYiLz48Y2lyY2xlIGN4PSI2NDYuOSIgY3k9IjM4MC4yIiByPSIxLjciIGZpbGw9IiNmZjZmNjMiIGZpbGwtb3BhY2l0eT0iMC4xNzciLz48Y2lyY2xlIGN4PSI2OTkuMiIgY3k9IjI4NS45IiByPSIyLjMiIGZpbGw9IiNmZjZmNjMiIGZpbGwtb3BhY2l0eT0iMC4xOCIvPjxjaXJjbGUgY3g9Ijc1My43IiBjeT0iMzE2LjEiIHI9IjIuMCIgZmlsbD0iI2ZmNmY2MyIgZmlsbC1vcGFjaXR5PSIwLjE2OCIvPjxjaXJjbGUgY3g9IjkwMS4zIiBjeT0iMjk2LjEiIHI9IjEuNiIgZmlsbD0iI2ZmNmY2MyIgZmlsbC1vcGFjaXR5PSIwLjEwOCIvPjxjaXJjbGUgY3g9IjEwOTIuMCIgY3k9IjU3OC45IiByPSIxLjYiIGZpbGw9IiNmZjZmNjMiIGZpbGwtb3BhY2l0eT0iMC4wNTIiLz48Y2lyY2xlIGN4PSI5OTYuNiIgY3k9IjU2MS41IiByPSIxLjAiIGZpbGw9IiNmZjZmNjMiIGZpbGwtb3BhY2l0eT0iMC4wODYiLz48Y2lyY2xlIGN4PSIxNzMuMSIgY3k9IjE0OC41IiByPSIxLjEiIGZpbGw9IiNmZjZmNjMiIGZpbGwtb3BhY2l0eT0iMC4wNTkiLz48Y2lyY2xlIGN4PSI1MzEuOCIgY3k9IjY4OC4zIiByPSIxLjIiIGZpbGw9IiNmZjZmNjMiIGZpbGwtb3BhY2l0eT0iMC4wOTYiLz48Y2lyY2xlIGN4PSIxMzY3LjYiIGN5PSI0MzEuNyIgcj0iMS42IiBmaWxsPSIjZmY2ZjYzIiBmaWxsLW9wYWNpdHk9IjAuMTA3Ii8+PGNpcmNsZSBjeD0iMTIwNy41IiBjeT0iNTcuOSIgcj0iMS4zIiBmaWxsPSIjZmY2ZjYzIiBmaWxsLW9wYWNpdHk9IjAuMTE4Ii8+PGNpcmNsZSBjeD0iMTYwLjAiIGN5PSI3MDYuOSIgcj0iMC45IiBmaWxsPSIjZmY2ZjYzIiBmaWxsLW9wYWNpdHk9IjAuMDkyIi8+PGNpcmNsZSBjeD0iNDAzLjUiIGN5PSIzNzYuNiIgcj0iMS4zIiBmaWxsPSIjZmY2ZjYzIiBmaWxsLW9wYWNpdHk9IjAuMDU1Ii8+PGNpcmNsZSBjeD0iMTM0NS45IiBjeT0iMzE5LjciIHI9IjEuMiIgZmlsbD0iI2ZmNmY2MyIgZmlsbC1vcGFjaXR5PSIwLjEwNCIvPjxjaXJjbGUgY3g9IjY5Mi4yIiBjeT0iMjE3LjIiIHI9IjEuMyIgZmlsbD0iI2ZmNmY2MyIgZmlsbC1vcGFjaXR5PSIwLjEiLz48Y2lyY2xlIGN4PSI1NzkuNCIgY3k9IjU0NC42IiByPSIxLjAiIGZpbGw9IiNmZjZmNjMiIGZpbGwtb3BhY2l0eT0iMC4wNTEiLz48Y2lyY2xlIGN4PSI1MjMuMSIgY3k9IjMyLjUiIHI9IjAuOSIgZmlsbD0iI2ZmNmY2MyIgZmlsbC1vcGFjaXR5PSIwLjExOCIvPjxjaXJjbGUgY3g9IjcyNC4yIiBjeT0iNjgyLjEiIHI9IjEuNCIgZmlsbD0iI2ZmNmY2MyIgZmlsbC1vcGFjaXR5PSIwLjA1NSIvPjxjaXJjbGUgY3g9IjEzODkuMCIgY3k9IjcxNy44IiByPSIwLjkiIGZpbGw9IiNmZjZmNjMiIGZpbGwtb3BhY2l0eT0iMC4xMzEiLz48Y2lyY2xlIGN4PSI3NzQuOCIgY3k9IjM2My4wIiByPSIxLjYiIGZpbGw9IiNmZjZmNjMiIGZpbGwtb3BhY2l0eT0iMC4wNzIiLz48Y2lyY2xlIGN4PSI4ODkuOCIgY3k9IjcxMi4zIiByPSIxLjQiIGZpbGw9IiNmZjZmNjMiIGZpbGwtb3BhY2l0eT0iMC4wOTIiLz48Y2lyY2xlIGN4PSIxMzc5LjIiIGN5PSI2MjAuNyIgcj0iMS4zIiBmaWxsPSIjZmY2ZjYzIiBmaWxsLW9wYWNpdHk9IjAuMDYiLz48Y2lyY2xlIGN4PSIxMDA2LjYiIGN5PSIzNDYuMyIgcj0iMS4wIiBmaWxsPSIjZmY2ZjYzIiBmaWxsLW9wYWNpdHk9IjAuMDU1Ii8+PGNpcmNsZSBjeD0iODk1LjQiIGN5PSI5NC41IiByPSIxLjIiIGZpbGw9IiNmZjZmNjMiIGZpbGwtb3BhY2l0eT0iMC4xMSIvPjxjaXJjbGUgY3g9IjgwNy40IiBjeT0iMTk5LjIiIHI9IjEuMyIgZmlsbD0iI2ZmNmY2MyIgZmlsbC1vcGFjaXR5PSIwLjA4OCIvPjxjaXJjbGUgY3g9IjExNzQuNCIgY3k9IjQwMy40IiByPSIxLjYiIGZpbGw9IiNmZjZmNjMiIGZpbGwtb3BhY2l0eT0iMC4xMzYiLz48Y2lyY2xlIGN4PSIxMTI3LjgiIGN5PSIxODEuMiIgcj0iMC45IiBmaWxsPSIjZmY2ZjYzIiBmaWxsLW9wYWNpdHk9IjAuMTMiLz48Y2lyY2xlIGN4PSIxMTgxLjEiIGN5PSI0NzUuMCIgcj0iMS4xIiBmaWxsPSIjZmY2ZjYzIiBmaWxsLW9wYWNpdHk9IjAuMDc0Ii8+PGNpcmNsZSBjeD0iMTA3NC4zIiBjeT0iNDI5LjMiIHI9IjEuMyIgZmlsbD0iI2ZmNmY2MyIgZmlsbC1vcGFjaXR5PSIwLjEwNyIvPjxjaXJjbGUgY3g9IjExNDguMiIgY3k9IjE0NC4zIiByPSIxLjAiIGZpbGw9IiNmZjZmNjMiIGZpbGwtb3BhY2l0eT0iMC4xMzgiLz48Y2lyY2xlIGN4PSIxMzE2LjMiIGN5PSI2NjcuOSIgcj0iMC44IiBmaWxsPSIjZmY2ZjYzIiBmaWxsLW9wYWNpdHk9IjAuMDU1Ii8+PGNpcmNsZSBjeD0iNTYxLjIiIGN5PSIzMjMuMSIgcj0iMS4zIiBmaWxsPSIjZmY2ZjYzIiBmaWxsLW9wYWNpdHk9IjAuMDU5Ii8+PGNpcmNsZSBjeD0iOTExLjQiIGN5PSI1NS4xIiByPSIwLjkiIGZpbGw9IiNmZjZmNjMiIGZpbGwtb3BhY2l0eT0iMC4xMTEiLz48Y2lyY2xlIGN4PSI5MjIuMCIgY3k9IjQ3OS42IiByPSIxLjEiIGZpbGw9IiNmZjZmNjMiIGZpbGwtb3BhY2l0eT0iMC4wOTMiLz48Y2lyY2xlIGN4PSI0NzAuNSIgY3k9IjI2MS4yIiByPSIxLjQiIGZpbGw9IiNmZjZmNjMiIGZpbGwtb3BhY2l0eT0iMC4xMjUiLz48Y2lyY2xlIGN4PSIyMjcuMCIgY3k9IjkxLjAiIHI9IjEuNCIgZmlsbD0iI2ZmNmY2MyIgZmlsbC1vcGFjaXR5PSIwLjEwNiIvPjxjaXJjbGUgY3g9IjExNjQuNiIgY3k9IjE2Mi4wIiByPSIxLjEiIGZpbGw9IiNmZjZmNjMiIGZpbGwtb3BhY2l0eT0iMC4wNzMiLz48Y2lyY2xlIGN4PSIxMjA3LjkiIGN5PSIyODAuNCIgcj0iMS4zIiBmaWxsPSIjZmY2ZjYzIiBmaWxsLW9wYWNpdHk9IjAuMTM5Ii8+PGNpcmNsZSBjeD0iNjM4LjAiIGN5PSI0MTYuOSIgcj0iMS40IiBmaWxsPSIjZmY2ZjYzIiBmaWxsLW9wYWNpdHk9IjAuMTMzIi8+PGNpcmNsZSBjeD0iNzcyLjUiIGN5PSIyODAuNiIgcj0iMC45IiBmaWxsPSIjZmY2ZjYzIiBmaWxsLW9wYWNpdHk9IjAuMTI5Ii8+PGNpcmNsZSBjeD0iMjM1LjgiIGN5PSI2My4xIiByPSIxLjMiIGZpbGw9IiNmZjZmNjMiIGZpbGwtb3BhY2l0eT0iMC4wOTQiLz48Y2lyY2xlIGN4PSIxMDc0LjYiIGN5PSIyMjcuMSIgcj0iMS40IiBmaWxsPSIjZmY2ZjYzIiBmaWxsLW9wYWNpdHk9IjAuMDU3Ii8+PGNpcmNsZSBjeD0iNDc0LjYiIGN5PSI1MDMuMiIgcj0iMC45IiBmaWxsPSIjZmY2ZjYzIiBmaWxsLW9wYWNpdHk9IjAuMDc3Ii8+PGNpcmNsZSBjeD0iMTExNy44IiBjeT0iNTI3LjQiIHI9IjEuMCIgZmlsbD0iI2ZmNmY2MyIgZmlsbC1vcGFjaXR5PSIwLjA2MyIvPjwvc3ZnPg==),
    var(--grad-dark);
  background-repeat: no-repeat, no-repeat, no-repeat;
  background-size: 100% 100%, cover, cover;
  background-position: center, center, center;
}

/* Subtle scattered-square mosaic on the CMMC path section (brand red, faded toward edges) */
.section.cmmc-path {
  background-color: var(--maroon-950);
  background-image: radial-gradient(120% 90% at 50% 38%, rgba(18, 4, 6, 0) 30%, var(--maroon-950) 100%), url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyNDAiIGhlaWdodD0iMjQwIiB2aWV3Qm94PSIwIDAgMjQwIDI0MCI+PHJlY3QgeD0iMy4wIiB5PSIzLjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNmZjVhNGQiIGZpbGwtb3BhY2l0eT0iMC4wNTQiLz48cmVjdCB4PSIyNy4wIiB5PSIzLjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNmZjVhNGQiIGZpbGwtb3BhY2l0eT0iMC4wNDgiLz48cmVjdCB4PSI1MS4wIiB5PSIzLjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNlODI0M2YiIGZpbGwtb3BhY2l0eT0iMC4wNDQiLz48cmVjdCB4PSI2My4wIiB5PSIzLjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNlODI0M2YiIGZpbGwtb3BhY2l0eT0iMC4wNTMiLz48cmVjdCB4PSI4Ny4wIiB5PSIzLjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNlODI0M2YiIGZpbGwtb3BhY2l0eT0iMC4xMTIiLz48cmVjdCB4PSI5OS4wIiB5PSIzLjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNmZjVhNGQiIGZpbGwtb3BhY2l0eT0iMC4wMyIvPjxyZWN0IHg9IjEyMy4wIiB5PSIzLjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNmZjVhNGQiIGZpbGwtb3BhY2l0eT0iMC4wNTQiLz48cmVjdCB4PSIxNDcuMCIgeT0iMy4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZTgyNDNmIiBmaWxsLW9wYWNpdHk9IjAuMDM0Ii8+PHJlY3QgeD0iMTcxLjAiIHk9IjMuMCIgd2lkdGg9IjYiIGhlaWdodD0iNiIgcng9IjEuNCIgZmlsbD0iI2ZmNWE0ZCIgZmlsbC1vcGFjaXR5PSIwLjA0NSIvPjxyZWN0IHg9IjIwNy4wIiB5PSIzLjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNlODI0M2YiIGZpbGwtb3BhY2l0eT0iMC4wNDkiLz48cmVjdCB4PSIyMzEuMCIgeT0iMy4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZmY1YTRkIiBmaWxsLW9wYWNpdHk9IjAuMTE1Ii8+PHJlY3QgeD0iMTUuMCIgeT0iMTUuMCIgd2lkdGg9IjYiIGhlaWdodD0iNiIgcng9IjEuNCIgZmlsbD0iI2U4MjQzZiIgZmlsbC1vcGFjaXR5PSIwLjAyNyIvPjxyZWN0IHg9IjYzLjAiIHk9IjE1LjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNlODI0M2YiIGZpbGwtb3BhY2l0eT0iMC4wNTIiLz48cmVjdCB4PSIxMzUuMCIgeT0iMTUuMCIgd2lkdGg9IjYiIGhlaWdodD0iNiIgcng9IjEuNCIgZmlsbD0iI2U4MjQzZiIgZmlsbC1vcGFjaXR5PSIwLjA1NCIvPjxyZWN0IHg9IjE1OS4wIiB5PSIxNS4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZmY1YTRkIiBmaWxsLW9wYWNpdHk9IjAuMDU1Ii8+PHJlY3QgeD0iMTgzLjAiIHk9IjE1LjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNlODI0M2YiIGZpbGwtb3BhY2l0eT0iMC4wMjgiLz48cmVjdCB4PSIxOTUuMCIgeT0iMTUuMCIgd2lkdGg9IjYiIGhlaWdodD0iNiIgcng9IjEuNCIgZmlsbD0iI2U4MjQzZiIgZmlsbC1vcGFjaXR5PSIwLjA0MyIvPjxyZWN0IHg9IjIwNy4wIiB5PSIxNS4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZTgyNDNmIiBmaWxsLW9wYWNpdHk9IjAuMDUiLz48cmVjdCB4PSIzLjAiIHk9IjI3LjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNlODI0M2YiIGZpbGwtb3BhY2l0eT0iMC4wNDEiLz48cmVjdCB4PSIyNy4wIiB5PSIyNy4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZmY1YTRkIiBmaWxsLW9wYWNpdHk9IjAuMDM1Ii8+PHJlY3QgeD0iNjMuMCIgeT0iMjcuMCIgd2lkdGg9IjYiIGhlaWdodD0iNiIgcng9IjEuNCIgZmlsbD0iI2ZmNWE0ZCIgZmlsbC1vcGFjaXR5PSIwLjA0NCIvPjxyZWN0IHg9IjE0Ny4wIiB5PSIyNy4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZTgyNDNmIiBmaWxsLW9wYWNpdHk9IjAuMTAxIi8+PHJlY3QgeD0iMTcxLjAiIHk9IjI3LjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNlODI0M2YiIGZpbGwtb3BhY2l0eT0iMC4wMyIvPjxyZWN0IHg9IjE4My4wIiB5PSIyNy4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZmY1YTRkIiBmaWxsLW9wYWNpdHk9IjAuMDM0Ii8+PHJlY3QgeD0iMTk1LjAiIHk9IjI3LjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNmZjVhNGQiIGZpbGwtb3BhY2l0eT0iMC4wMjUiLz48cmVjdCB4PSIyMDcuMCIgeT0iMjcuMCIgd2lkdGg9IjYiIGhlaWdodD0iNiIgcng9IjEuNCIgZmlsbD0iI2U4MjQzZiIgZmlsbC1vcGFjaXR5PSIwLjAyNiIvPjxyZWN0IHg9IjIzMS4wIiB5PSIyNy4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZmY1YTRkIiBmaWxsLW9wYWNpdHk9IjAuMDQxIi8+PHJlY3QgeD0iMy4wIiB5PSIzOS4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZTgyNDNmIiBmaWxsLW9wYWNpdHk9IjAuMTEiLz48cmVjdCB4PSIyNy4wIiB5PSIzOS4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZmY1YTRkIiBmaWxsLW9wYWNpdHk9IjAuMDQiLz48cmVjdCB4PSI1MS4wIiB5PSIzOS4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZTgyNDNmIiBmaWxsLW9wYWNpdHk9IjAuMDY4Ii8+PHJlY3QgeD0iNjMuMCIgeT0iMzkuMCIgd2lkdGg9IjYiIGhlaWdodD0iNiIgcng9IjEuNCIgZmlsbD0iI2U4MjQzZiIgZmlsbC1vcGFjaXR5PSIwLjAyNiIvPjxyZWN0IHg9IjExMS4wIiB5PSIzOS4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZTgyNDNmIiBmaWxsLW9wYWNpdHk9IjAuMDMzIi8+PHJlY3QgeD0iMTQ3LjAiIHk9IjM5LjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNlODI0M2YiIGZpbGwtb3BhY2l0eT0iMC4wNjIiLz48cmVjdCB4PSIyMDcuMCIgeT0iMzkuMCIgd2lkdGg9IjYiIGhlaWdodD0iNiIgcng9IjEuNCIgZmlsbD0iI2ZmNWE0ZCIgZmlsbC1vcGFjaXR5PSIwLjA0MSIvPjxyZWN0IHg9IjIxOS4wIiB5PSIzOS4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZTgyNDNmIiBmaWxsLW9wYWNpdHk9IjAuMDM3Ii8+PHJlY3QgeD0iNTEuMCIgeT0iNTEuMCIgd2lkdGg9IjYiIGhlaWdodD0iNiIgcng9IjEuNCIgZmlsbD0iI2ZmNWE0ZCIgZmlsbC1vcGFjaXR5PSIwLjAzNSIvPjxyZWN0IHg9IjYzLjAiIHk9IjUxLjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNlODI0M2YiIGZpbGwtb3BhY2l0eT0iMC4wNjYiLz48cmVjdCB4PSIxMTEuMCIgeT0iNTEuMCIgd2lkdGg9IjYiIGhlaWdodD0iNiIgcng9IjEuNCIgZmlsbD0iI2U4MjQzZiIgZmlsbC1vcGFjaXR5PSIwLjA2NiIvPjxyZWN0IHg9IjE0Ny4wIiB5PSI1MS4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZTgyNDNmIiBmaWxsLW9wYWNpdHk9IjAuMDgzIi8+PHJlY3QgeD0iMTcxLjAiIHk9IjUxLjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNlODI0M2YiIGZpbGwtb3BhY2l0eT0iMC4wNjgiLz48cmVjdCB4PSIxODMuMCIgeT0iNTEuMCIgd2lkdGg9IjYiIGhlaWdodD0iNiIgcng9IjEuNCIgZmlsbD0iI2U4MjQzZiIgZmlsbC1vcGFjaXR5PSIwLjAzMiIvPjxyZWN0IHg9IjIwNy4wIiB5PSI1MS4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZTgyNDNmIiBmaWxsLW9wYWNpdHk9IjAuMTA5Ii8+PHJlY3QgeD0iMjE5LjAiIHk9IjUxLjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNmZjVhNGQiIGZpbGwtb3BhY2l0eT0iMC4wMzEiLz48cmVjdCB4PSI3NS4wIiB5PSI2My4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZmY1YTRkIiBmaWxsLW9wYWNpdHk9IjAuMDM4Ii8+PHJlY3QgeD0iOTkuMCIgeT0iNjMuMCIgd2lkdGg9IjYiIGhlaWdodD0iNiIgcng9IjEuNCIgZmlsbD0iI2U4MjQzZiIgZmlsbC1vcGFjaXR5PSIwLjAzMSIvPjxyZWN0IHg9IjExMS4wIiB5PSI2My4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZTgyNDNmIiBmaWxsLW9wYWNpdHk9IjAuMDUxIi8+PHJlY3QgeD0iMTgzLjAiIHk9IjYzLjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNmZjVhNGQiIGZpbGwtb3BhY2l0eT0iMC4wMzMiLz48cmVjdCB4PSIyMDcuMCIgeT0iNjMuMCIgd2lkdGg9IjYiIGhlaWdodD0iNiIgcng9IjEuNCIgZmlsbD0iI2U4MjQzZiIgZmlsbC1vcGFjaXR5PSIwLjA1OCIvPjxyZWN0IHg9IjIxOS4wIiB5PSI2My4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZTgyNDNmIiBmaWxsLW9wYWNpdHk9IjAuMDUiLz48cmVjdCB4PSIyMzEuMCIgeT0iNjMuMCIgd2lkdGg9IjYiIGhlaWdodD0iNiIgcng9IjEuNCIgZmlsbD0iI2ZmNWE0ZCIgZmlsbC1vcGFjaXR5PSIwLjAzNiIvPjxyZWN0IHg9IjIwNy4wIiB5PSI3NS4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZTgyNDNmIiBmaWxsLW9wYWNpdHk9IjAuMDY3Ii8+PHJlY3QgeD0iMjE5LjAiIHk9Ijc1LjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNmZjVhNGQiIGZpbGwtb3BhY2l0eT0iMC4wNDUiLz48cmVjdCB4PSIyMzEuMCIgeT0iNzUuMCIgd2lkdGg9IjYiIGhlaWdodD0iNiIgcng9IjEuNCIgZmlsbD0iI2U4MjQzZiIgZmlsbC1vcGFjaXR5PSIwLjA1NSIvPjxyZWN0IHg9IjE1LjAiIHk9Ijg3LjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNmZjVhNGQiIGZpbGwtb3BhY2l0eT0iMC4wNTUiLz48cmVjdCB4PSI1MS4wIiB5PSI4Ny4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZTgyNDNmIiBmaWxsLW9wYWNpdHk9IjAuMTI2Ii8+PHJlY3QgeD0iODcuMCIgeT0iODcuMCIgd2lkdGg9IjYiIGhlaWdodD0iNiIgcng9IjEuNCIgZmlsbD0iI2ZmNWE0ZCIgZmlsbC1vcGFjaXR5PSIwLjA0OCIvPjxyZWN0IHg9Ijk5LjAiIHk9Ijg3LjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNmZjVhNGQiIGZpbGwtb3BhY2l0eT0iMC4wNTciLz48cmVjdCB4PSIxMzUuMCIgeT0iODcuMCIgd2lkdGg9IjYiIGhlaWdodD0iNiIgcng9IjEuNCIgZmlsbD0iI2U4MjQzZiIgZmlsbC1vcGFjaXR5PSIwLjA1MyIvPjxyZWN0IHg9IjE0Ny4wIiB5PSI4Ny4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZTgyNDNmIiBmaWxsLW9wYWNpdHk9IjAuMTQyIi8+PHJlY3QgeD0iMTU5LjAiIHk9Ijg3LjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNlODI0M2YiIGZpbGwtb3BhY2l0eT0iMC4wMjciLz48cmVjdCB4PSIxNzEuMCIgeT0iODcuMCIgd2lkdGg9IjYiIGhlaWdodD0iNiIgcng9IjEuNCIgZmlsbD0iI2U4MjQzZiIgZmlsbC1vcGFjaXR5PSIwLjA0NCIvPjxyZWN0IHg9IjE5NS4wIiB5PSI4Ny4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZTgyNDNmIiBmaWxsLW9wYWNpdHk9IjAuMDY2Ii8+PHJlY3QgeD0iMjE5LjAiIHk9Ijg3LjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNmZjVhNGQiIGZpbGwtb3BhY2l0eT0iMC4wNTYiLz48cmVjdCB4PSIyMzEuMCIgeT0iODcuMCIgd2lkdGg9IjYiIGhlaWdodD0iNiIgcng9IjEuNCIgZmlsbD0iI2U4MjQzZiIgZmlsbC1vcGFjaXR5PSIwLjEzNSIvPjxyZWN0IHg9IjMuMCIgeT0iOTkuMCIgd2lkdGg9IjYiIGhlaWdodD0iNiIgcng9IjEuNCIgZmlsbD0iI2U4MjQzZiIgZmlsbC1vcGFjaXR5PSIwLjA3MyIvPjxyZWN0IHg9IjI3LjAiIHk9Ijk5LjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNmZjVhNGQiIGZpbGwtb3BhY2l0eT0iMC4wNjciLz48cmVjdCB4PSIzOS4wIiB5PSI5OS4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZmY1YTRkIiBmaWxsLW9wYWNpdHk9IjAuMDM2Ii8+PHJlY3QgeD0iNTEuMCIgeT0iOTkuMCIgd2lkdGg9IjYiIGhlaWdodD0iNiIgcng9IjEuNCIgZmlsbD0iI2ZmNWE0ZCIgZmlsbC1vcGFjaXR5PSIwLjAzNCIvPjxyZWN0IHg9IjYzLjAiIHk9Ijk5LjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNlODI0M2YiIGZpbGwtb3BhY2l0eT0iMC4wODIiLz48cmVjdCB4PSI3NS4wIiB5PSI5OS4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZmY1YTRkIiBmaWxsLW9wYWNpdHk9IjAuMDI2Ii8+PHJlY3QgeD0iODcuMCIgeT0iOTkuMCIgd2lkdGg9IjYiIGhlaWdodD0iNiIgcng9IjEuNCIgZmlsbD0iI2ZmNWE0ZCIgZmlsbC1vcGFjaXR5PSIwLjA5MiIvPjxyZWN0IHg9IjEyMy4wIiB5PSI5OS4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZTgyNDNmIiBmaWxsLW9wYWNpdHk9IjAuMDg3Ii8+PHJlY3QgeD0iMTQ3LjAiIHk9Ijk5LjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNlODI0M2YiIGZpbGwtb3BhY2l0eT0iMC4wNTYiLz48cmVjdCB4PSIxNTkuMCIgeT0iOTkuMCIgd2lkdGg9IjYiIGhlaWdodD0iNiIgcng9IjEuNCIgZmlsbD0iI2U4MjQzZiIgZmlsbC1vcGFjaXR5PSIwLjA5OCIvPjxyZWN0IHg9IjE3MS4wIiB5PSI5OS4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZmY1YTRkIiBmaWxsLW9wYWNpdHk9IjAuMDI3Ii8+PHJlY3QgeD0iMTgzLjAiIHk9Ijk5LjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNmZjVhNGQiIGZpbGwtb3BhY2l0eT0iMC4wOCIvPjxyZWN0IHg9IjE5NS4wIiB5PSI5OS4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZTgyNDNmIiBmaWxsLW9wYWNpdHk9IjAuMTA1Ii8+PHJlY3QgeD0iMjA3LjAiIHk9Ijk5LjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNlODI0M2YiIGZpbGwtb3BhY2l0eT0iMC4wMzgiLz48cmVjdCB4PSIyMTkuMCIgeT0iOTkuMCIgd2lkdGg9IjYiIGhlaWdodD0iNiIgcng9IjEuNCIgZmlsbD0iI2U4MjQzZiIgZmlsbC1vcGFjaXR5PSIwLjAzNyIvPjxyZWN0IHg9IjE1LjAiIHk9IjExMS4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZmY1YTRkIiBmaWxsLW9wYWNpdHk9IjAuMTIyIi8+PHJlY3QgeD0iMjcuMCIgeT0iMTExLjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNlODI0M2YiIGZpbGwtb3BhY2l0eT0iMC4wNDYiLz48cmVjdCB4PSIzOS4wIiB5PSIxMTEuMCIgd2lkdGg9IjYiIGhlaWdodD0iNiIgcng9IjEuNCIgZmlsbD0iI2ZmNWE0ZCIgZmlsbC1vcGFjaXR5PSIwLjAyNSIvPjxyZWN0IHg9IjUxLjAiIHk9IjExMS4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZmY1YTRkIiBmaWxsLW9wYWNpdHk9IjAuMDI3Ii8+PHJlY3QgeD0iNjMuMCIgeT0iMTExLjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNlODI0M2YiIGZpbGwtb3BhY2l0eT0iMC4wNTEiLz48cmVjdCB4PSIxMjMuMCIgeT0iMTExLjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNmZjVhNGQiIGZpbGwtb3BhY2l0eT0iMC4wNjkiLz48cmVjdCB4PSIxNTkuMCIgeT0iMTExLjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNlODI0M2YiIGZpbGwtb3BhY2l0eT0iMC4xMDYiLz48cmVjdCB4PSIxOTUuMCIgeT0iMTExLjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNlODI0M2YiIGZpbGwtb3BhY2l0eT0iMC4wNDgiLz48cmVjdCB4PSIzOS4wIiB5PSIxMjMuMCIgd2lkdGg9IjYiIGhlaWdodD0iNiIgcng9IjEuNCIgZmlsbD0iI2ZmNWE0ZCIgZmlsbC1vcGFjaXR5PSIwLjAzMSIvPjxyZWN0IHg9IjUxLjAiIHk9IjEyMy4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZTgyNDNmIiBmaWxsLW9wYWNpdHk9IjAuMDkyIi8+PHJlY3QgeD0iOTkuMCIgeT0iMTIzLjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNlODI0M2YiIGZpbGwtb3BhY2l0eT0iMC4xIi8+PHJlY3QgeD0iMTM1LjAiIHk9IjEyMy4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZmY1YTRkIiBmaWxsLW9wYWNpdHk9IjAuMDgiLz48cmVjdCB4PSIxNDcuMCIgeT0iMTIzLjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNlODI0M2YiIGZpbGwtb3BhY2l0eT0iMC4wNzgiLz48cmVjdCB4PSIxODMuMCIgeT0iMTIzLjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNlODI0M2YiIGZpbGwtb3BhY2l0eT0iMC4wNTYiLz48cmVjdCB4PSIyMTkuMCIgeT0iMTIzLjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNlODI0M2YiIGZpbGwtb3BhY2l0eT0iMC4wMzYiLz48cmVjdCB4PSIyMzEuMCIgeT0iMTIzLjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNmZjVhNGQiIGZpbGwtb3BhY2l0eT0iMC4wMjYiLz48cmVjdCB4PSIzLjAiIHk9IjEzNS4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZTgyNDNmIiBmaWxsLW9wYWNpdHk9IjAuMDU2Ii8+PHJlY3QgeD0iMTUuMCIgeT0iMTM1LjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNlODI0M2YiIGZpbGwtb3BhY2l0eT0iMC4wNDYiLz48cmVjdCB4PSIyNy4wIiB5PSIxMzUuMCIgd2lkdGg9IjYiIGhlaWdodD0iNiIgcng9IjEuNCIgZmlsbD0iI2U4MjQzZiIgZmlsbC1vcGFjaXR5PSIwLjA3OCIvPjxyZWN0IHg9IjUxLjAiIHk9IjEzNS4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZTgyNDNmIiBmaWxsLW9wYWNpdHk9IjAuMDYyIi8+PHJlY3QgeD0iNzUuMCIgeT0iMTM1LjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNmZjVhNGQiIGZpbGwtb3BhY2l0eT0iMC4wNjgiLz48cmVjdCB4PSI5OS4wIiB5PSIxMzUuMCIgd2lkdGg9IjYiIGhlaWdodD0iNiIgcng9IjEuNCIgZmlsbD0iI2ZmNWE0ZCIgZmlsbC1vcGFjaXR5PSIwLjA2OCIvPjxyZWN0IHg9IjE1OS4wIiB5PSIxMzUuMCIgd2lkdGg9IjYiIGhlaWdodD0iNiIgcng9IjEuNCIgZmlsbD0iI2ZmNWE0ZCIgZmlsbC1vcGFjaXR5PSIwLjA4OSIvPjxyZWN0IHg9IjE3MS4wIiB5PSIxMzUuMCIgd2lkdGg9IjYiIGhlaWdodD0iNiIgcng9IjEuNCIgZmlsbD0iI2ZmNWE0ZCIgZmlsbC1vcGFjaXR5PSIwLjA0NSIvPjxyZWN0IHg9IjE4My4wIiB5PSIxMzUuMCIgd2lkdGg9IjYiIGhlaWdodD0iNiIgcng9IjEuNCIgZmlsbD0iI2U4MjQzZiIgZmlsbC1vcGFjaXR5PSIwLjAzOSIvPjxyZWN0IHg9IjE5NS4wIiB5PSIxMzUuMCIgd2lkdGg9IjYiIGhlaWdodD0iNiIgcng9IjEuNCIgZmlsbD0iI2ZmNWE0ZCIgZmlsbC1vcGFjaXR5PSIwLjEwNCIvPjxyZWN0IHg9IjMuMCIgeT0iMTQ3LjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNlODI0M2YiIGZpbGwtb3BhY2l0eT0iMC4wNDMiLz48cmVjdCB4PSIyNy4wIiB5PSIxNDcuMCIgd2lkdGg9IjYiIGhlaWdodD0iNiIgcng9IjEuNCIgZmlsbD0iI2ZmNWE0ZCIgZmlsbC1vcGFjaXR5PSIwLjAzNyIvPjxyZWN0IHg9IjM5LjAiIHk9IjE0Ny4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZTgyNDNmIiBmaWxsLW9wYWNpdHk9IjAuMDgxIi8+PHJlY3QgeD0iNTEuMCIgeT0iMTQ3LjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNmZjVhNGQiIGZpbGwtb3BhY2l0eT0iMC4wNDgiLz48cmVjdCB4PSI2My4wIiB5PSIxNDcuMCIgd2lkdGg9IjYiIGhlaWdodD0iNiIgcng9IjEuNCIgZmlsbD0iI2U4MjQzZiIgZmlsbC1vcGFjaXR5PSIwLjE0NSIvPjxyZWN0IHg9IjEzNS4wIiB5PSIxNDcuMCIgd2lkdGg9IjYiIGhlaWdodD0iNiIgcng9IjEuNCIgZmlsbD0iI2U4MjQzZiIgZmlsbC1vcGFjaXR5PSIwLjA4OCIvPjxyZWN0IHg9IjE1OS4wIiB5PSIxNDcuMCIgd2lkdGg9IjYiIGhlaWdodD0iNiIgcng9IjEuNCIgZmlsbD0iI2ZmNWE0ZCIgZmlsbC1vcGFjaXR5PSIwLjA2NyIvPjxyZWN0IHg9IjE4My4wIiB5PSIxNDcuMCIgd2lkdGg9IjYiIGhlaWdodD0iNiIgcng9IjEuNCIgZmlsbD0iI2U4MjQzZiIgZmlsbC1vcGFjaXR5PSIwLjA1OCIvPjxyZWN0IHg9IjE5NS4wIiB5PSIxNDcuMCIgd2lkdGg9IjYiIGhlaWdodD0iNiIgcng9IjEuNCIgZmlsbD0iI2U4MjQzZiIgZmlsbC1vcGFjaXR5PSIwLjAzOSIvPjxyZWN0IHg9IjIwNy4wIiB5PSIxNDcuMCIgd2lkdGg9IjYiIGhlaWdodD0iNiIgcng9IjEuNCIgZmlsbD0iI2ZmNWE0ZCIgZmlsbC1vcGFjaXR5PSIwLjAzMiIvPjxyZWN0IHg9IjMuMCIgeT0iMTU5LjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNmZjVhNGQiIGZpbGwtb3BhY2l0eT0iMC4xMSIvPjxyZWN0IHg9IjE1LjAiIHk9IjE1OS4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZmY1YTRkIiBmaWxsLW9wYWNpdHk9IjAuMDI5Ii8+PHJlY3QgeD0iMjcuMCIgeT0iMTU5LjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNlODI0M2YiIGZpbGwtb3BhY2l0eT0iMC4wMzciLz48cmVjdCB4PSI2My4wIiB5PSIxNTkuMCIgd2lkdGg9IjYiIGhlaWdodD0iNiIgcng9IjEuNCIgZmlsbD0iI2ZmNWE0ZCIgZmlsbC1vcGFjaXR5PSIwLjA0OSIvPjxyZWN0IHg9Ijc1LjAiIHk9IjE1OS4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZTgyNDNmIiBmaWxsLW9wYWNpdHk9IjAuMDM3Ii8+PHJlY3QgeD0iODcuMCIgeT0iMTU5LjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNlODI0M2YiIGZpbGwtb3BhY2l0eT0iMC4wNTMiLz48cmVjdCB4PSI5OS4wIiB5PSIxNTkuMCIgd2lkdGg9IjYiIGhlaWdodD0iNiIgcng9IjEuNCIgZmlsbD0iI2ZmNWE0ZCIgZmlsbC1vcGFjaXR5PSIwLjAzNiIvPjxyZWN0IHg9IjE1OS4wIiB5PSIxNTkuMCIgd2lkdGg9IjYiIGhlaWdodD0iNiIgcng9IjEuNCIgZmlsbD0iI2U4MjQzZiIgZmlsbC1vcGFjaXR5PSIwLjA1NyIvPjxyZWN0IHg9IjE5NS4wIiB5PSIxNTkuMCIgd2lkdGg9IjYiIGhlaWdodD0iNiIgcng9IjEuNCIgZmlsbD0iI2U4MjQzZiIgZmlsbC1vcGFjaXR5PSIwLjA2NyIvPjxyZWN0IHg9IjIzMS4wIiB5PSIxNTkuMCIgd2lkdGg9IjYiIGhlaWdodD0iNiIgcng9IjEuNCIgZmlsbD0iI2U4MjQzZiIgZmlsbC1vcGFjaXR5PSIwLjAzMiIvPjxyZWN0IHg9Ijg3LjAiIHk9IjE3MS4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZTgyNDNmIiBmaWxsLW9wYWNpdHk9IjAuMDc5Ii8+PHJlY3QgeD0iMTExLjAiIHk9IjE3MS4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZTgyNDNmIiBmaWxsLW9wYWNpdHk9IjAuMDM2Ii8+PHJlY3QgeD0iMTM1LjAiIHk9IjE3MS4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZTgyNDNmIiBmaWxsLW9wYWNpdHk9IjAuMDQ5Ii8+PHJlY3QgeD0iMTQ3LjAiIHk9IjE3MS4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZmY1YTRkIiBmaWxsLW9wYWNpdHk9IjAuMDUyIi8+PHJlY3QgeD0iMTU5LjAiIHk9IjE3MS4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZTgyNDNmIiBmaWxsLW9wYWNpdHk9IjAuMDY4Ii8+PHJlY3QgeD0iMTk1LjAiIHk9IjE3MS4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZTgyNDNmIiBmaWxsLW9wYWNpdHk9IjAuMDY4Ii8+PHJlY3QgeD0iMjA3LjAiIHk9IjE3MS4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZTgyNDNmIiBmaWxsLW9wYWNpdHk9IjAuMDQ3Ii8+PHJlY3QgeD0iMjMxLjAiIHk9IjE3MS4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZmY1YTRkIiBmaWxsLW9wYWNpdHk9IjAuMDY3Ii8+PHJlY3QgeD0iMy4wIiB5PSIxODMuMCIgd2lkdGg9IjYiIGhlaWdodD0iNiIgcng9IjEuNCIgZmlsbD0iI2U4MjQzZiIgZmlsbC1vcGFjaXR5PSIwLjA0NCIvPjxyZWN0IHg9IjE1LjAiIHk9IjE4My4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZTgyNDNmIiBmaWxsLW9wYWNpdHk9IjAuMSIvPjxyZWN0IHg9IjI3LjAiIHk9IjE4My4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZTgyNDNmIiBmaWxsLW9wYWNpdHk9IjAuMTIyIi8+PHJlY3QgeD0iMzkuMCIgeT0iMTgzLjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNmZjVhNGQiIGZpbGwtb3BhY2l0eT0iMC4wNTkiLz48cmVjdCB4PSI3NS4wIiB5PSIxODMuMCIgd2lkdGg9IjYiIGhlaWdodD0iNiIgcng9IjEuNCIgZmlsbD0iI2U4MjQzZiIgZmlsbC1vcGFjaXR5PSIwLjA0NCIvPjxyZWN0IHg9Ijk5LjAiIHk9IjE4My4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZTgyNDNmIiBmaWxsLW9wYWNpdHk9IjAuMDM1Ii8+PHJlY3QgeD0iMTExLjAiIHk9IjE4My4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZmY1YTRkIiBmaWxsLW9wYWNpdHk9IjAuMDI4Ii8+PHJlY3QgeD0iMTgzLjAiIHk9IjE4My4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZTgyNDNmIiBmaWxsLW9wYWNpdHk9IjAuMDY3Ii8+PHJlY3QgeD0iMTk1LjAiIHk9IjE4My4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZmY1YTRkIiBmaWxsLW9wYWNpdHk9IjAuMDQyIi8+PHJlY3QgeD0iMjA3LjAiIHk9IjE4My4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZmY1YTRkIiBmaWxsLW9wYWNpdHk9IjAuMDI1Ii8+PHJlY3QgeD0iMjE5LjAiIHk9IjE4My4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZTgyNDNmIiBmaWxsLW9wYWNpdHk9IjAuMTE1Ii8+PHJlY3QgeD0iMjMxLjAiIHk9IjE4My4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZTgyNDNmIiBmaWxsLW9wYWNpdHk9IjAuMDYyIi8+PHJlY3QgeD0iMTUuMCIgeT0iMTk1LjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNlODI0M2YiIGZpbGwtb3BhY2l0eT0iMC4wNDIiLz48cmVjdCB4PSIyNy4wIiB5PSIxOTUuMCIgd2lkdGg9IjYiIGhlaWdodD0iNiIgcng9IjEuNCIgZmlsbD0iI2ZmNWE0ZCIgZmlsbC1vcGFjaXR5PSIwLjA2NSIvPjxyZWN0IHg9IjM5LjAiIHk9IjE5NS4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZmY1YTRkIiBmaWxsLW9wYWNpdHk9IjAuMTAxIi8+PHJlY3QgeD0iNTEuMCIgeT0iMTk1LjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNmZjVhNGQiIGZpbGwtb3BhY2l0eT0iMC4wNjYiLz48cmVjdCB4PSI4Ny4wIiB5PSIxOTUuMCIgd2lkdGg9IjYiIGhlaWdodD0iNiIgcng9IjEuNCIgZmlsbD0iI2U4MjQzZiIgZmlsbC1vcGFjaXR5PSIwLjA2OCIvPjxyZWN0IHg9Ijk5LjAiIHk9IjE5NS4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZmY1YTRkIiBmaWxsLW9wYWNpdHk9IjAuMDM5Ii8+PHJlY3QgeD0iMTExLjAiIHk9IjE5NS4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZTgyNDNmIiBmaWxsLW9wYWNpdHk9IjAuMTA3Ii8+PHJlY3QgeD0iMTM1LjAiIHk9IjE5NS4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZTgyNDNmIiBmaWxsLW9wYWNpdHk9IjAuMDQ2Ii8+PHJlY3QgeD0iMTU5LjAiIHk9IjE5NS4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZTgyNDNmIiBmaWxsLW9wYWNpdHk9IjAuMDQ0Ii8+PHJlY3QgeD0iMTgzLjAiIHk9IjE5NS4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZTgyNDNmIiBmaWxsLW9wYWNpdHk9IjAuMSIvPjxyZWN0IHg9IjIxOS4wIiB5PSIxOTUuMCIgd2lkdGg9IjYiIGhlaWdodD0iNiIgcng9IjEuNCIgZmlsbD0iI2U4MjQzZiIgZmlsbC1vcGFjaXR5PSIwLjA0MSIvPjxyZWN0IHg9IjIzMS4wIiB5PSIxOTUuMCIgd2lkdGg9IjYiIGhlaWdodD0iNiIgcng9IjEuNCIgZmlsbD0iI2ZmNWE0ZCIgZmlsbC1vcGFjaXR5PSIwLjA1OSIvPjxyZWN0IHg9IjMuMCIgeT0iMjA3LjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNmZjVhNGQiIGZpbGwtb3BhY2l0eT0iMC4wNSIvPjxyZWN0IHg9IjUxLjAiIHk9IjIwNy4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZTgyNDNmIiBmaWxsLW9wYWNpdHk9IjAuMDI5Ii8+PHJlY3QgeD0iODcuMCIgeT0iMjA3LjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNlODI0M2YiIGZpbGwtb3BhY2l0eT0iMC4wNTMiLz48cmVjdCB4PSIxMzUuMCIgeT0iMjA3LjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNlODI0M2YiIGZpbGwtb3BhY2l0eT0iMC4wODIiLz48cmVjdCB4PSIxNDcuMCIgeT0iMjA3LjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNmZjVhNGQiIGZpbGwtb3BhY2l0eT0iMC4wNzgiLz48cmVjdCB4PSIxNTkuMCIgeT0iMjA3LjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNlODI0M2YiIGZpbGwtb3BhY2l0eT0iMC4wNjUiLz48cmVjdCB4PSIxNzEuMCIgeT0iMjA3LjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNlODI0M2YiIGZpbGwtb3BhY2l0eT0iMC4wNyIvPjxyZWN0IHg9IjE4My4wIiB5PSIyMDcuMCIgd2lkdGg9IjYiIGhlaWdodD0iNiIgcng9IjEuNCIgZmlsbD0iI2U4MjQzZiIgZmlsbC1vcGFjaXR5PSIwLjA5NiIvPjxyZWN0IHg9IjE5NS4wIiB5PSIyMDcuMCIgd2lkdGg9IjYiIGhlaWdodD0iNiIgcng9IjEuNCIgZmlsbD0iI2U4MjQzZiIgZmlsbC1vcGFjaXR5PSIwLjA2MiIvPjxyZWN0IHg9IjIxOS4wIiB5PSIyMDcuMCIgd2lkdGg9IjYiIGhlaWdodD0iNiIgcng9IjEuNCIgZmlsbD0iI2ZmNWE0ZCIgZmlsbC1vcGFjaXR5PSIwLjAzIi8+PHJlY3QgeD0iMjcuMCIgeT0iMjE5LjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNmZjVhNGQiIGZpbGwtb3BhY2l0eT0iMC4wODgiLz48cmVjdCB4PSI2My4wIiB5PSIyMTkuMCIgd2lkdGg9IjYiIGhlaWdodD0iNiIgcng9IjEuNCIgZmlsbD0iI2ZmNWE0ZCIgZmlsbC1vcGFjaXR5PSIwLjA1MyIvPjxyZWN0IHg9Ijc1LjAiIHk9IjIxOS4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZmY1YTRkIiBmaWxsLW9wYWNpdHk9IjAuMDM0Ii8+PHJlY3QgeD0iMTExLjAiIHk9IjIxOS4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZTgyNDNmIiBmaWxsLW9wYWNpdHk9IjAuMDQiLz48cmVjdCB4PSIxMjMuMCIgeT0iMjE5LjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNlODI0M2YiIGZpbGwtb3BhY2l0eT0iMC4wMzQiLz48cmVjdCB4PSIxNDcuMCIgeT0iMjE5LjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNlODI0M2YiIGZpbGwtb3BhY2l0eT0iMC4wNDMiLz48cmVjdCB4PSIxNzEuMCIgeT0iMjE5LjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNmZjVhNGQiIGZpbGwtb3BhY2l0eT0iMC4wNTYiLz48cmVjdCB4PSIxODMuMCIgeT0iMjE5LjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNmZjVhNGQiIGZpbGwtb3BhY2l0eT0iMC4wNjgiLz48cmVjdCB4PSIyMDcuMCIgeT0iMjE5LjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNlODI0M2YiIGZpbGwtb3BhY2l0eT0iMC4wNjQiLz48cmVjdCB4PSIyMTkuMCIgeT0iMjE5LjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNmZjVhNGQiIGZpbGwtb3BhY2l0eT0iMC4wNTgiLz48cmVjdCB4PSIyMzEuMCIgeT0iMjE5LjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNlODI0M2YiIGZpbGwtb3BhY2l0eT0iMC4wODciLz48cmVjdCB4PSIzLjAiIHk9IjIzMS4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZmY1YTRkIiBmaWxsLW9wYWNpdHk9IjAuMDg4Ii8+PHJlY3QgeD0iMTUuMCIgeT0iMjMxLjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNlODI0M2YiIGZpbGwtb3BhY2l0eT0iMC4wNTQiLz48cmVjdCB4PSIyNy4wIiB5PSIyMzEuMCIgd2lkdGg9IjYiIGhlaWdodD0iNiIgcng9IjEuNCIgZmlsbD0iI2U4MjQzZiIgZmlsbC1vcGFjaXR5PSIwLjA0MiIvPjxyZWN0IHg9IjM5LjAiIHk9IjIzMS4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZTgyNDNmIiBmaWxsLW9wYWNpdHk9IjAuMDQ4Ii8+PHJlY3QgeD0iNTEuMCIgeT0iMjMxLjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNlODI0M2YiIGZpbGwtb3BhY2l0eT0iMC4wNjEiLz48cmVjdCB4PSI2My4wIiB5PSIyMzEuMCIgd2lkdGg9IjYiIGhlaWdodD0iNiIgcng9IjEuNCIgZmlsbD0iI2U4MjQzZiIgZmlsbC1vcGFjaXR5PSIwLjA2NyIvPjxyZWN0IHg9Ijg3LjAiIHk9IjIzMS4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZTgyNDNmIiBmaWxsLW9wYWNpdHk9IjAuMTI2Ii8+PHJlY3QgeD0iMTIzLjAiIHk9IjIzMS4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZmY1YTRkIiBmaWxsLW9wYWNpdHk9IjAuMDc5Ii8+PHJlY3QgeD0iMTU5LjAiIHk9IjIzMS4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZTgyNDNmIiBmaWxsLW9wYWNpdHk9IjAuMDQzIi8+PHJlY3QgeD0iMTcxLjAiIHk9IjIzMS4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZTgyNDNmIiBmaWxsLW9wYWNpdHk9IjAuMDM2Ii8+PHJlY3QgeD0iMTk1LjAiIHk9IjIzMS4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZmY1YTRkIiBmaWxsLW9wYWNpdHk9IjAuMDU5Ii8+PHJlY3QgeD0iMjE5LjAiIHk9IjIzMS4wIiB3aWR0aD0iNiIgaGVpZ2h0PSI2IiByeD0iMS40IiBmaWxsPSIjZTgyNDNmIiBmaWxsLW9wYWNpdHk9IjAuMDUiLz48cmVjdCB4PSIyMzEuMCIgeT0iMjMxLjAiIHdpZHRoPSI2IiBoZWlnaHQ9IjYiIHJ4PSIxLjQiIGZpbGw9IiNmZjVhNGQiIGZpbGwtb3BhY2l0eT0iMC4wNTEiLz48L3N2Zz4=);
  background-repeat: no-repeat, repeat;
  background-size: 100% 100%, 240px 240px;
  background-position: center, center;
}

/* Fit the Core Capabilities section (header + 6 tiles) within the visible viewport */
#capabilities {
  padding: clamp(34px, 5vh, 60px) 0;
}

#capabilities .section-head {
  margin-bottom: clamp(16px, 2.8vh, 32px);
}

#capabilities .section-head .lead {
  font-size: 1.04rem;
}

#capabilities .caps-rows {
  gap: clamp(10px, 1.4vh, 18px);
}

#capabilities .caps-flush .cap-card {
  padding: clamp(16px, 3vh, 32px) 26px;
}

#capabilities .caps-flush .cap-icon {
  width: 54px;
  height: 54px;
  margin-bottom: clamp(8px, 1.5vh, 16px);
}

#capabilities .caps-flush .cap-icon svg {
  width: 25px;
  height: 25px;
}

#capabilities .cap-card h3 {
  font-size: 1.04rem;
  margin-bottom: 8px;
}

#capabilities .cap-card p {
  font-size: .9rem;
  line-height: 1.5;
}

#capabilities .caps-flush .cap-card .more {
  padding-top: clamp(10px, 1.6vh, 18px);
}

/* Blog sidebar filters: active states + filter status bar */
.cat-list a,
.tag-cloud a {
  cursor: pointer;
}

.cat-list a.active {
  color: var(--red);
  font-weight: 800;
}

.cat-list a.active span {
  background: var(--grad-red);
  color: #fff;
  border-color: transparent;
}

.tag-cloud a.active {
  background: var(--grad-red);
  color: #fff;
  border-color: transparent;
}

.tag-cloud a.tag-latest {
  position: relative;
}

.tag-cloud a.tag-latest::after {
  content: "";
  position: absolute;
  top: -2px;
  right: -2px;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--red);
  border: 1.5px solid var(--paper-2);
}

.blog-filter-status {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
  background: var(--paper-2);
  border: 1px solid var(--line-light);
  border-left: 3px solid var(--red);
  border-radius: 12px;
  padding: 12px 16px;
  margin-bottom: 22px;
  font-size: .92rem;
  color: var(--ink-soft);
}

.blog-filter-status strong {
  color: var(--ink);
}

.blog-filter-clear {
  color: var(--red);
  font-weight: 700;
  white-space: nowrap;
}

.blog-filter-clear:hover {
  text-decoration: underline;
}

/* CMMC section: very subtle, slow random-square pulse layer (over the static mosaic) */
.section.cmmc-path>.container {
  position: relative;
  z-index: 1;
}

.cmmc-anim {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  overflow: hidden;
  -webkit-mask-image: radial-gradient(120% 95% at 50% 40%, #000 26%, transparent 100%);
  mask-image: radial-gradient(120% 95% at 50% 40%, #000 26%, transparent 100%);
}

.cmmc-anim svg {
  width: 100%;
  height: 100%;
  display: block;
}

@keyframes cmmcPulse {

  0%,
  100% {
    opacity: .15;
  }

  50% {
    opacity: 1;
  }
}

@media (prefers-reduced-motion: reduce) {
  .cmmc-anim rect {
    animation: none !important;
    opacity: .4;
  }
}

/* Certifications: keep hex pattern strictly behind cards/text so text stays clear */
.section.certs>.container {
  position: relative;
  z-index: 1;
}

.section.certs .section-head {
  position: relative;
  z-index: 1;
}

.section.certs .section-head::before {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 132%;
  height: 210%;
  z-index: -1;
  pointer-events: none;
  background: radial-gradient(58% 62% at 50% 50%, rgba(18, 4, 6, .92) 0%, rgba(18, 4, 6, .55) 45%, rgba(18, 4, 6, 0) 75%);
}

.section.certs .cert {
  background: rgba(16, 5, 9, .88);
  -webkit-backdrop-filter: blur(2px);
  backdrop-filter: blur(2px);
}

/* CMMC families grid: center the trailing two tiles in the middle two columns (4-col layout) */
@media (min-width: 981px) {
  .cmmc-fam-grid>.cap-card:nth-child(13) {
    grid-column-start: 2;
  }
}


/* Hero fits the first screen: fixed top gap, CERTIFIED FOR pinned to bottom (visible without scrolling) */
@media (min-width: 761px) {
  .hero {
    margin-top: 0;
  }

  .hero-trust {
    margin-top: auto;
  }
}

@supports (height: 100svh) {
  @media (min-width: 761px) {
    .hero {
      min-height: calc(100svh - var(--nav-h));
    }
  }
}

/* ===== Responsive pass (tablet hamburger + small-phone refinements) ===== */
body {
  overflow-x: clip;
}

/* guard against accidental horizontal scroll (keeps sticky nav) */

/* Show the hamburger menu through tablet portrait widths (full nav overflows ~768-900px) */
@media (max-width: 920px) {
  .nav-links {
    position: fixed;
    top: var(--nav-h);
    left: 0;
    right: 0;
    background: var(--maroon-950);
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    padding: 12px;
    transform: translateY(-150%);
    transition: transform .25s ease;
    box-shadow: var(--shadow-lg);
    max-height: calc(100vh - var(--nav-h));
    overflow-y: auto;
  }

  .nav-links.open {
    transform: translateY(0);
  }

  .nav-links>li>a {
    padding: 14px;
    border-radius: 8px;
  }

  .drop {
    position: static;
    opacity: 1;
    visibility: visible;
    transform: none;
    box-shadow: none;
    background: rgba(255, 255, 255, .04);
    margin: 6px 0;
    border-color: rgba(255, 255, 255, .1);
  }

  .drop a {
    color: #ecdfe2;
  }

  .drop a:hover {
    background: rgba(255, 255, 255, .06);
  }

  .drop a small {
    color: var(--muted);
  }

  .nav-toggle {
    display: block;
  }

  .nav-cta {
    display: block;
    margin: 8px 0 0;
  }

  /* keep "Get in Touch" reachable in the mobile menu */
  .nav-cta a {
    width: 100%;
    justify-content: center;
  }
}

/* Long buttons wrap instead of overflowing on small phones */
@media (max-width: 480px) {
  .btn {
    white-space: normal;
    text-align: center;
    padding: 14px 22px;
  }
}

/* Chat panel fits narrow phones */
@media (max-width: 420px) {
  .chatbot-panel {
    width: calc(100vw - 28px);
    right: 14px;
  }

  .chatbot {
    right: 16px;
  }
}

/* Past Performance: agency logos in a uniform contained frame (clean, consistent) */
.client-tile .client-logo {
  height: 50px;
  max-width: 86%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 18px;
  background: none;
  border: 0;
  box-shadow: none;
}

.client-tile .client-logo img {
  max-height: 50px;
  max-width: 100%;
  width: auto;
  height: auto;
  object-fit: contain;
  display: block;
}

/* Typography: prevent single-word orphan lines site-wide (alignment unchanged) */
h1,
h2,
h3,
h4,
h5,
h6 {
  text-wrap: balance;
}

p,
li,
.lead,
figcaption,
blockquote,
.post-excerpt,
.cap-card p,
.client-tile p,
.cmmc-step p,
.stat-label {
  text-wrap: pretty;
}

/* ===== Homepage blog: featured-left + two stacked-right (KSG palette) ===== */
.home-blog {
  display: grid;
  grid-template-columns: 1.12fr 1fr;
  gap: 26px;
  align-items: stretch;
}

.home-blog a {
  color: inherit;
  text-decoration: none;
}

.hb-feat {
  display: flex;
  flex-direction: column;
  height: 100%;
  background: #fff;
  border: 1px solid var(--line-light);
  border-radius: 20px;
  overflow: hidden;
  box-shadow: var(--shadow);
  transition: transform .22s ease, box-shadow .22s ease;
}

.hb-side {
  display: grid;
  grid-template-rows: 1fr 1fr;
  gap: 26px;
}

.hb-mini {
  display: grid;
  grid-template-columns: 40% 60%;
  background: #fff;
  border: 1px solid var(--line-light);
  border-radius: 20px;
  overflow: hidden;
  box-shadow: var(--shadow);
  transition: transform .22s ease, box-shadow .22s ease;
}

.hb-feat:hover,
.hb-mini:hover {
  transform: translateY(-5px);
  box-shadow: var(--shadow-lg);
  border-color: rgba(221, 26, 50, .25);
}

.hb-media {
  position: relative;
  background-color: var(--maroon-900);
  background-image: var(--grad-dark), var(--pattern-dark);
  overflow: hidden;
}

.hb-feat .hb-media {
  aspect-ratio: 16 / 9;
}

.hb-media img.hb-photo {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.hb-media--ai {
  background: #08111f;
}

.hb-media--ai img.hb-photo {
  object-fit: contain;
  padding: 10px;
}

.hb-mini .hb-more {
  margin-top: 12px;
}

.hb-mini .hb-content p {
  color: var(--ink-soft);
  font-size: .86rem;
  line-height: 1.6;
  display: -webkit-box;
  line-clamp: 3;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}



.hb-mini .hb-media {
  min-height: 100%;
}

.hb-glyph {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 60px;
  height: 60px;
  color: #fff;
  opacity: .16;
}

.hb-mini .hb-glyph {
  width: 40px;
  height: 40px;
}

.hb-tag {
  position: absolute;
  left: 14px;
  bottom: 14px;
  background: var(--grad-red);
  color: #fff;
  font-size: .68rem;
  font-weight: 800;
  letter-spacing: .05em;
  text-transform: uppercase;
  padding: 6px 12px;
  border-radius: 8px;
  box-shadow: var(--shadow-red);
}

.hb-mini .hb-tag {
  left: 10px;
  bottom: 10px;
  padding: 5px 10px;
  font-size: .62rem;
}

.hb-content {
  padding: 24px 26px 26px;
  display: flex;
  flex-direction: column;
}

.hb-mini .hb-content {
  padding: 18px 20px;
  justify-content: center;
}

.hb-by {
  color: var(--muted-2);
  font-size: .82rem;
  font-weight: 600;
  margin-bottom: 10px;
}

.hb-feat h3 {
  font-size: 1.5rem;
  line-height: 1.22;
  margin: 0 0 12px;
  color: var(--ink);
}

.hb-feat p {
  color: var(--ink-soft);
  font-size: .96rem;
  line-height: 1.6;
  margin: 0 0 20px;
}

.hb-mini h4 {
  font-size: 1.1rem;
  line-height: 1.28;
  margin: 0 0 14px;
  color: var(--ink);
}

.hb-more {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  font-weight: 800;
  color: var(--ink);
  font-size: .92rem;
  margin-top: auto;
}

.hb-mini .hb-more {
  font-size: .84rem;
}

.hb-arrow {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: var(--grad-red);
  color: #fff;
  flex-shrink: 0;
  box-shadow: var(--shadow-red);
  transition: transform .2s ease;
}

.hb-mini .hb-arrow {
  width: 30px;
  height: 30px;
}

.hb-arrow svg {
  width: 15px;
  height: 15px;
}

.hb-feat:hover .hb-arrow,
.hb-mini:hover .hb-arrow {
  transform: translate(2px, -2px);
}

@media (max-width: 900px) {
  .home-blog {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 520px) {
  .hb-mini {
    grid-template-columns: 1fr;
  }

  .hb-mini .hb-media {
    aspect-ratio: 16 / 9;
  }
}

/* Blog post photos in listing cards, detail headers, and related-post thumbs */
.media-photo {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 0;
  display: block;
}

.post-media.has-photo .post-glyph,
.post-media.has-photo::after,
.blog-thumb.has-photo::after {
  display: none;
}

.has-photo--ai {
  background: #08111f;
}

.has-photo--ai .media-photo {
  object-fit: contain;
  padding: 8px;
}

/* Required-field markers on forms */
.req {
  color: var(--red);
  font-weight: 800;
}

.form-req-note {
  font-size: .82rem;
  color: var(--muted-2);
  margin: 14px 0 0;
}

.contact-method a {
  color: inherit;
}

.contact-method a:hover {
  color: var(--red);
}

/* Balanced agency-logo sizing: wordmarks capped shorter, square emblems allowed taller */
.client-tile .client-logo {
  height: 60px;
  max-width: 100%;
}

.client-tile .client-logo img {
  max-height: 40px;
  max-width: 142px;
}

.client-tile .client-logo--mark img {
  max-height: 58px;
  max-width: 62px;
}

/* Apply form: certifications multi-select + resume states */
.hint-inline {
  font-weight: 600;
  color: var(--muted-2);
  font-size: .8rem;
}

.cert-search,
.cert-other {
  width: 100%;
  padding: 12px 14px;
  border: 1px solid var(--line-light);
  border-radius: 10px;
  font: inherit;
  font-size: .95rem;
  color: var(--ink);
}

.cert-search:focus,
.cert-other:focus {
  outline: none;
  border-color: var(--red);
}

.cert-chips {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  max-height: 150px;
  overflow-y: auto;
  padding: 12px 4px;
  margin: 10px 0;
}

.cert-chip {
  font-size: .82rem;
  font-weight: 600;
  padding: 7px 13px;
  border-radius: 999px;
  border: 1px solid var(--line-light);
  background: #fff;
  color: var(--ink-soft);
  cursor: pointer;
  transition: all .15s ease;
}

.cert-chip:hover {
  border-color: var(--red);
  color: var(--red);
}

.cert-chip.on {
  background: var(--grad-red);
  color: #fff;
  border-color: transparent;
  box-shadow: var(--shadow-red);
}

.cert-hint {
  font-size: .78rem;
  color: var(--muted-2);
  margin: 8px 0 0;
}

.filedrop.has-file {
  border-style: solid;
  border-color: var(--red);
  color: var(--ink);
  font-weight: 600;
}

.filedrop.needs {
  border-color: var(--red);
  color: var(--red);
}

/* Certifications: header row, Clear button, None chip */
.cert-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 12px;
  margin-bottom: 6px;
}

.cert-head label {
  margin-bottom: 0;
}

.cert-clear {
  background: none;
  border: 0;
  color: var(--red);
  font-weight: 700;
  font-size: .82rem;
  cursor: pointer;
  padding: 4px 2px;
}

.cert-clear:hover {
  text-decoration: underline;
}

.cert-chip--none.on {
  background: var(--ink);
  border-color: transparent;
  color: #fff;
  box-shadow: none;
}

/* Slim scrollbar for the blog sidebar scroll region */
.blog-sidebar::-webkit-scrollbar {
  width: 7px
}

.blog-sidebar::-webkit-scrollbar-thumb {
  background: rgba(221, 26, 50, .35);
  border-radius: 999px
}

.blog-sidebar::-webkit-scrollbar-track {
  background: transparent
}

/* Blog post bottom navigation (Previous / All posts / Next) */
.post-nav {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  background: #fff;
  border: 1px solid var(--line-light);
  border-radius: 18px;
  padding: 16px 26px;
  margin-top: 36px;
  box-shadow: var(--shadow);
}

.post-nav .pn-prev,
.post-nav .pn-next,
.post-nav .pn-all {
  display: flex;
  align-items: center;
  gap: 14px;
  color: var(--ink);
  font-weight: 700;
  font-size: .95rem;
  text-decoration: none;
}

.pn-circle {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  border: 1px solid var(--line-light);
  color: var(--ink);
  transition: all .2s ease;
  flex-shrink: 0;
}

.pn-circle svg {
  width: 18px;
  height: 18px;
}

.post-nav a:hover .pn-circle {
  border-color: transparent;
  background: var(--grad-red);
  color: #fff;
}

.pn-all svg {
  width: 26px;
  height: 26px;
}

.pn-all:hover {
  color: var(--red);
}

.pn-disabled {
  opacity: .32;
  cursor: default;
  pointer-events: none;
}

@media (max-width: 520px) {
  .post-nav {
    padding: 12px 16px;
  }

  .post-nav .pn-label {
    display: none;
  }
}

/* Blog drafting (authoring preview) page */
.draft-wrap {
  background: #fff;
  border: 1px solid var(--line-light);
  border-radius: 18px;
  padding: 26px;
  box-shadow: var(--shadow);
}

.draft-bar {
  display: grid;
  grid-template-columns: 1fr 300px;
  gap: 18px;
}

.draft-bar .df label {
  display: block;
  font-weight: 700;
  font-size: .85rem;
  margin-bottom: 7px;
  color: var(--ink);
}

.draft-bar input,
.draft-bar select {
  width: 100%;
  padding: 12px 14px;
  border: 1px solid var(--line-light);
  border-radius: 10px;
  font: inherit;
  font-size: .95rem;
  color: var(--ink);
}

.draft-bar input:focus,
.draft-bar select:focus {
  outline: none;
  border-color: var(--red);
}

.draft-note {
  font-size: .82rem;
  color: var(--muted-2);
  margin: 16px 0 10px;
}

.draft-editor {
  min-height: 340px;
  border: 1px dashed var(--line-light);
  border-radius: 12px;
  padding: 22px 26px;
  outline: none;
  background: var(--paper);
}

.draft-editor:focus {
  border-style: solid;
  border-color: var(--red);
  background: #fff;
}

.draft-actions {
  display: flex;
  gap: 12px;
  margin-top: 18px;
  flex-wrap: wrap;
}

.draft-saved {
  color: var(--red);
  font-weight: 700;
  font-size: .88rem;
  margin-top: 12px;
}

@media (max-width: 640px) {
  .draft-bar {
    grid-template-columns: 1fr;
  }
}

/* =========================================================
   CMMC SPRS Calculator Page Fix
   Scoped only to /cmmc-sprs-calculator
   ========================================================= */

.legacy-cmmc-sprs-calculator .page-hero {
  min-height: auto;
  padding: 88px 0 72px;
}

.legacy-cmmc-sprs-calculator .page-hero .lead {
  max-width: 760px;
  font-size: 1.2rem;
  line-height: 1.75;
}

.legacy-cmmc-sprs-calculator .section {
  padding: 80px 0;
}

.legacy-cmmc-sprs-calculator h2,
.legacy-cmmc-sprs-calculator h3 {
  letter-spacing: -0.04em;
}

.legacy-cmmc-sprs-calculator form {
  width: 100%;
  max-width: 760px;
  margin-top: 28px;
  padding: 34px;
  border: 1px solid rgba(221, 26, 50, 0.14);
  border-radius: 28px;
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.94), rgba(255, 255, 255, 0.88)),
    rgba(255, 255, 255, 0.92);
  box-shadow: 0 24px 70px rgba(15, 23, 42, 0.08);
}

.legacy-cmmc-sprs-calculator form label {
  display: block;
  margin: 0 0 8px;
  color: #111827;
  font-size: 0.92rem;
  font-weight: 800;
  letter-spacing: -0.01em;
}

.legacy-cmmc-sprs-calculator form label+input,
.legacy-cmmc-sprs-calculator form input[type="text"],
.legacy-cmmc-sprs-calculator form input[type="email"],
.legacy-cmmc-sprs-calculator form input[type="tel"],
.legacy-cmmc-sprs-calculator form select,
.legacy-cmmc-sprs-calculator form textarea {
  display: block;
  width: 100%;
  height: 54px;
  margin: 0 0 18px;
  padding: 0 18px;
  border: 1px solid rgba(15, 23, 42, 0.14);
  border-radius: 16px;
  background: #ffffff;
  color: #111827;
  font-size: 1rem;
  font-family: inherit;
  outline: none;
  transition: border-color 0.18s ease, box-shadow 0.18s ease, transform 0.18s ease;
}

.legacy-cmmc-sprs-calculator form textarea {
  min-height: 130px;
  padding-top: 16px;
  resize: vertical;
}

.legacy-cmmc-sprs-calculator form input:focus,
.legacy-cmmc-sprs-calculator form select:focus,
.legacy-cmmc-sprs-calculator form textarea:focus {
  border-color: #dd1a32;
  box-shadow: 0 0 0 4px rgba(221, 26, 50, 0.12);
}

.legacy-cmmc-sprs-calculator form button,
.legacy-cmmc-sprs-calculator form button[type="submit"],
.legacy-cmmc-sprs-calculator form input[type="submit"] {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: auto;
  min-width: 240px;
  height: 58px;
  margin-top: 8px;
  padding: 0 30px;
  border: 0;
  border-radius: 999px;
  background: linear-gradient(135deg, #dd1a32, #b91528);
  color: #ffffff;
  font-size: 1rem;
  font-weight: 900;
  letter-spacing: -0.01em;
  cursor: pointer;
  box-shadow: 0 16px 34px rgba(221, 26, 50, 0.24);
  transition: transform 0.18s ease, box-shadow 0.18s ease, filter 0.18s ease;
}

.legacy-cmmc-sprs-calculator form button:hover,
.legacy-cmmc-sprs-calculator form input[type="submit"]:hover {
  transform: translateY(-2px);
  box-shadow: 0 22px 44px rgba(221, 26, 50, 0.3);
  filter: brightness(1.02);
}

.legacy-cmmc-sprs-calculator form p,
.legacy-cmmc-sprs-calculator .form-note,
.legacy-cmmc-sprs-calculator small {
  color: #475569;
  font-size: 0.95rem;
  line-height: 1.6;
}

.legacy-cmmc-sprs-calculator form+p,
.legacy-cmmc-sprs-calculator form+small {
  display: block;
  max-width: 760px;
  margin-top: 16px;
  color: #475569;
}

.legacy-cmmc-sprs-calculator input[aria-invalid="true"] {
  border-color: #dc2626 !important;
  box-shadow: 0 0 0 4px rgba(220, 38, 38, 0.1);
}

.legacy-cmmc-sprs-calculator .cms-field-error {
  margin-top: -10px !important;
  margin-bottom: 14px;
}

@media (max-width: 768px) {
  .legacy-cmmc-sprs-calculator .page-hero {
    padding: 70px 0 56px;
  }

  .legacy-cmmc-sprs-calculator form {
    padding: 24px;
    border-radius: 22px;
  }

  .legacy-cmmc-sprs-calculator form button,
  .legacy-cmmc-sprs-calculator form input[type="submit"] {
    width: 100%;
  }
}

/* =========================================================
   CMMC SPRS Calculator Center Alignment Fix
   ========================================================= */

.legacy-cmmc-sprs-calculator .section>.container {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.legacy-cmmc-sprs-calculator .section h2,
.legacy-cmmc-sprs-calculator .section h3,
.legacy-cmmc-sprs-calculator .section>.container>p {
  width: 100%;
  max-width: 860px;
  text-align: center;
}

.legacy-cmmc-sprs-calculator form {
  width: 100%;
  max-width: 860px;
  margin: 32px auto 0;
}

.legacy-cmmc-sprs-calculator form+p,
.legacy-cmmc-sprs-calculator form+small {
  width: 100%;
  max-width: 860px;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}

.legacy-cmmc-sprs-calculator form button,
.legacy-cmmc-sprs-calculator form button[type="submit"],
.legacy-cmmc-sprs-calculator form input[type="submit"] {
  width: 100%;
}

/* =========================================================
   Blog/Post Details CTA Button Color Fix
   ========================================================= */

.blog-sidebar .widget-cta .btn.btn-primary,
.blog-sidebar .widget-cta .btn.btn-primary:link,
.blog-sidebar .widget-cta .btn.btn-primary:visited,
.widget-cta .btn.btn-primary,
.widget-cta .btn.btn-primary:link,
.widget-cta .btn.btn-primary:visited {
  color: #ffffff !important;
  background: linear-gradient(135deg, #dd1a32, #b91528) !important;
  border-color: transparent !important;
  text-decoration: none !important;
}

.blog-sidebar .widget-cta .btn.btn-primary:hover,
.blog-sidebar .widget-cta .btn.btn-primary:focus,
.widget-cta .btn.btn-primary:hover,
.widget-cta .btn.btn-primary:focus {
  color: #ffffff !important;
  background: linear-gradient(135deg, #c9162d, #a91123) !important;
  text-decoration: none !important;
}

.blog-sidebar .widget-cta .btn.btn-primary *,
.widget-cta .btn.btn-primary * {
  color: #ffffff !important;
}
/* =========================================================
   KSG SPRS Calculator Full UI Restore - V3
   Restores legacy calculator styling after CMS migration.
   ========================================================= */
.calc-wrap{max-width:1000px;margin:0 auto;width:100%}
.gate{max-width:560px;margin:0 auto;background:#fff;border:1px solid var(--line-light);border-radius:18px;padding:38px;box-shadow:var(--shadow)}
.gate h2{font-size:1.5rem;margin-bottom:6px;color:var(--ink)}
.gate p{color:var(--ink-soft);margin-bottom:22px;font-size:.95rem}
.gate .fld{margin-bottom:14px}
.gate label{display:block;font-size:.8rem;font-weight:700;color:var(--ink);margin-bottom:6px}
.gate input{width:100%;padding:13px 15px;border:1px solid var(--line-light);border-radius:10px;font:inherit;font-size:.95rem;color:var(--ink);background:#fff}
.gate input:focus{outline:none;border-color:var(--red)}
.gate .gnote{font-size:.78rem;color:var(--muted-2);margin-top:6px}
.gate .gerr{display:none;font-size:.82rem;font-weight:600;color:var(--red);margin-top:10px;background:rgba(221,26,50,.08);border:1px solid rgba(221,26,50,.25);border-radius:8px;padding:9px 12px}
.gate input.invalid{border-color:var(--red)}
.calc-bar{position:sticky;top:calc(var(--nav-h) + 10px);z-index:20;background:var(--grad-hero);border-radius:16px;padding:18px 22px;display:grid;grid-template-columns:auto repeat(4,1fr);gap:14px;align-items:center;box-shadow:var(--shadow-lg);margin-bottom:22px}
.calc-bar .cb-score{text-align:center;padding-right:18px;border-right:1px solid rgba(255,255,255,.14)}
.calc-bar .cb-score b{display:block;font-size:2.6rem;font-weight:800;line-height:1;color:#fff}
.calc-bar .cb-score span{font-size:.66rem;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}
.cb-stat b{display:block;font-size:1.3rem;font-weight:800;color:#fff;line-height:1}
.cb-stat span{font-size:.68rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-top:4px;display:block}
.cb-stat.neg b{color:#ff8a7a}
.calc-tools{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:18px}
.calc-filter{display:flex;gap:6px;flex-wrap:wrap}
.calc-filter button{font-size:.78rem;font-weight:700;padding:8px 13px;border-radius:999px;border:1px solid var(--line-light);background:#fff;color:var(--ink-soft);cursor:pointer;font-family:inherit}
.calc-filter button.on{background:var(--grad-red);color:#fff;border-color:transparent}
.calc-tools .spacer{flex:1}
.tool-btn{font-size:.78rem;font-weight:700;padding:8px 13px;border-radius:8px;border:1px solid var(--line-light);background:var(--paper-2);color:var(--ink);cursor:pointer;font-family:inherit}
.tool-btn:hover{border-color:var(--red);color:var(--red)}
.fam-group{margin-bottom:14px;border:1px solid var(--line-light);border-radius:14px;overflow:hidden;background:#fff}
.fam-head{background:var(--paper-3);padding:13px 20px;font-weight:800;color:var(--ink);font-size:.95rem;display:flex;justify-content:space-between;align-items:center}
.fam-head small{font-weight:600;color:var(--muted-2);font-size:.76rem}
.ctrl-row{display:flex;gap:16px;align-items:flex-start;padding:16px 20px;border-top:1px dashed var(--line-light)}
.ctrl-row:first-of-type{border-top:0}
.ctrl-main{flex:1;min-width:0}
.ctrl-top{display:flex;align-items:center;gap:9px;margin-bottom:4px;flex-wrap:wrap}
.ctrl-id{font-weight:800;color:var(--ink);font-size:.92rem}
.wbadge{font-size:.62rem;font-weight:800;letter-spacing:.04em;padding:3px 8px;border-radius:5px;text-transform:uppercase;display:inline-flex;align-items:center}
.w5{background:#fde0e5;color:#a51e22}.w3{background:#fcebd8;color:#9a5512}.w1{background:#eef0f1;color:#6a6a72}.wt{background:#e4def0;color:#5b3ea8}
.ctrl-stmt{color:var(--ink-soft);font-size:.9rem;line-height:1.55}
.seg{display:inline-flex;border:1px solid var(--line-light);border-radius:9px;overflow:hidden;flex-shrink:0;background:#fff}
.seg button{border:0;background:#fff;color:var(--ink-soft);font-size:.74rem;font-weight:700;padding:8px 12px;cursor:pointer;border-left:1px solid var(--line-light);font-family:inherit}
.seg button:first-child{border-left:0}
.seg button.sel-met{background:#1f9d57;color:#fff}
.seg button.sel-not{background:var(--red);color:#fff}
.seg button.sel-part{background:#e08a1e;color:#fff}
.interp{display:grid;gap:8px;margin-top:8px}
.interp .band{display:grid;grid-template-columns:90px 1fr;gap:14px;align-items:center;padding:12px 16px;border:1px solid var(--line-light);border-radius:12px;background:#fff}
.interp .band b{font-weight:800;color:var(--red)}
.interp .band p{margin:0;font-size:.9rem;color:var(--ink-soft)}
.calc-foot-note{font-size:.8rem;color:var(--muted-2);text-align:center;margin-top:18px}
.page[hidden]{display:none!important}
@media(max-width:760px){.calc-bar{grid-template-columns:1fr 1fr;gap:12px}.calc-bar .cb-score{border-right:0;grid-column:1 / -1;border-bottom:1px solid rgba(255,255,255,.14);padding-bottom:12px}.ctrl-row{flex-direction:column}.interp .band{grid-template-columns:1fr}.gate{padding:26px}}

