/* =========================
   Fonts
   ========================= */

@font-face {
  font-family: "KF Body";
  src: url("/hc/theming_assets/01KTPMZVVYTMJVQNDNE02C7QG3") format("opentype");
  font-weight: 300 800;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "KF H1";
  src: url("/hc/theming_assets/01KTPN5EY8WJJ83GJ5PW43CJDZ") format("opentype");
  font-weight: 200 800;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "KF H2";
  src: url("/hc/theming_assets/01KTC4DVM86Q7QM9QHHC0QBY0B") format("opentype");
  font-weight: 200 800;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "KF H3";
  src: url("/hc/theming_assets/01KTPND4G6Z5M1QC21KBH2ESHZ") format("opentype");
  font-weight: 300 800;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "KF H4-5";
  src: url("/hc/theming_assets/01KTPND6SNZCZBAVWY5B5CG1F7") format("opentype");
  font-weight: 300 800;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "KF H6";
  src: url("/hc/theming_assets/01KTPND7Q3RC76V9XZKHJABW7Z") format("opentype");
  font-weight: 300 800;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: "KF Hero H1";
  src: url("/hc/theming_assets/01KTPN5EY8WJJ83GJ5PW43CJDZ") format("opentype");
  font-weight: 200 800;
  font-style: normal;
  font-display: swap;
}

/* =========================
   Root styles
   ========================= */
:root {
  --kf-white: #ffffff;
  --kf-page: #ffffff;
  --kf-mist-white: #f8f8ff;
  --kf-ink: #18181c;
  --kf-night: #141522;
  --kf-midnight: #191a2c;
  --kf-purple-deep: #232344;
  --kf-purple: #34356a;
  --kf-lavender: #5f5fc4;
  --kf-text: rgba(255, 255, 255, 0.92);
  --kf-text-soft: rgba(255, 255, 255, 0.72);
  --kf-text-muted: rgba(255, 255, 255, 0.52);
  --kf-font-body: "KF Body", Arial, sans-serif;
  --kf-font-h1: "KF H1", "KF Body", Arial, sans-serif;
  --kf-font-h2: "KF H2", "KF Body", Arial, sans-serif;
  --kf-font-h3: "KF H3", "KF Body", Arial, sans-serif;
  --kf-font-h4-5: "KF H4-5", "KF Body", Arial, sans-serif;
  --kf-font-h6: "KF H6", "KF Body", Arial, sans-serif;
  --kf-font-hero-h1: "KF Hero H1", "KF H1", "KF Body", Arial, sans-serif;
  --kf-glass: rgba(255, 255, 255, 0.105);
  --kf-glass-strong: rgba(255, 255, 255, 0.16);
  --kf-glass-border: rgba(255, 255, 255, 0.28);
  --kf-glass-border-soft: rgba(255, 255, 255, 0.14);
  --kf-radius-page: 46px;
  --kf-radius-glass: 999px;
  --kf-radius-card: 24px;
  --kf-shadow-soft: 0 22px 80px rgba(0, 0, 0, 0.22);
  --kf-shadow-card: 0 18px 50px rgba(0, 0, 0, 0.24);
  --kf-max: 1440px;
  --kf-liquid-bg: rgba(255, 255, 255, 0.055);
  --kf-liquid-bg-hover: rgba(255, 255, 255, 0.08);
  --kf-liquid-saturation: 150%;
  --kf-liquid-ease: cubic-bezier(0.05, 0.7, 0.1, 1);
  --kf-liquid-shadow-pill: inset 0 0 0 1px rgba(255, 255, 255, 0.10),
  inset 1.8px 3px 0 -2px rgba(255, 255, 255, 0.50),
  inset -2px -2px 0 -2px rgba(255, 255, 255, 0.44),
  inset -3px -8px 1px -6px rgba(255, 255, 255, 0.30),
  inset -0.3px -1px 4px 0 rgba(0, 0, 0, 0.04),
  inset -1.5px 2.5px 0 -2px rgba(0, 0, 0, 0.06),
  inset 0 3px 4px -2px rgba(0, 0, 0, 0.08),
  inset 2px -6.5px 1px -4px rgba(0, 0, 0, 0.04),
  0 1px 5px rgba(0, 0, 0, 0.08),
  0 6px 16px rgba(0, 0, 0, 0.08);
  --kf-liquid-shadow-card: inset 0 0 0 1px rgba(255, 255, 255, 0.09),
  inset 1.8px 3px 0 -2px rgba(255, 255, 255, 0.46),
  inset -2px -2px 0 -2px rgba(255, 255, 255, 0.38),
  inset -3px -8px 1px -6px rgba(255, 255, 255, 0.24),
  inset -0.3px -1px 4px 0 rgba(0, 0, 0, 0.04),
  inset -1.5px 2.5px 0 -2px rgba(0, 0, 0, 0.055),
  inset 0 3px 4px -2px rgba(0, 0, 0, 0.08),
  inset 2px -6.5px 1px -4px rgba(0, 0, 0, 0.04),
  0 1px 5px rgba(0, 0, 0, 0.08),
  0 10px 24px rgba(0, 0, 0, 0.11);
}

* {
  box-sizing: border-box;
}

/* =========================
   Global reset / base
   ========================= */
html {
  min-height: 100%;
  background: var(--kf-mist-white);
  scroll-behavior: smooth;
}

body {
  margin: 0;
  min-height: 100%;
  background: var(--kf-mist-white);
  color: var(--kf-text);
  font-family: var(--kf-font-body);
  font-weight: 400;
  text-rendering: geometricPrecision;
  -webkit-font-smoothing: antialiased;
}

body, button, input, textarea, select {
  font-family: var(--kf-font-body) !important;
  font-weight: 400;
}

h1, .h1 {
  font-family: var(--kf-font-h1);
  font-weight: 200;
}

h2, .h2 {
  font-family: var(--kf-font-h2);
  font-weight: 300;
}

h3, .h3 {
  font-family: var(--kf-font-h3);
  font-weight: 500;
}

h4, h5, .h4, .h5 {
  font-family: var(--kf-font-h4-5);
  font-weight: 600;
}

h6, .h6 {
  font-family: var(--kf-font-h6);
  font-weight: 600;
}

p, li, a, span, div, label, input, textarea, select, button {
  font-family: inherit;
}

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

img {
  max-width: 100%;
  height: auto;
}

button {
  cursor: pointer;
}

/* Superscript trademark / registered / copyright marks */
.kf-symbol-sup,
.article-body sup,
.kf-article-body sup,
.article__body sup {
  position: relative;
  top: -0.42em;
  font-size: 0.58em;
  line-height: 0;
  vertical-align: baseline;
  letter-spacing: 0;
}

/* =========================
   Home stage / gradient wrapper
   ========================= */
.kf-home {
  position: relative;
  min-height: 100vh;
  padding: 20px 20px 0;
  background: var(--kf-mist-white);
}

.kf-hero {
  position: relative;

  overflow: hidden;
  isolation: isolate;

  min-height: 0;
  padding: 20px 40px 32px;

  border-radius: var(--kf-radius-page);

  background-color: #17182d;
  background-image:
    url("https://www.keyfactor.com/wp-content/uploads/Keyfactor-Hero-Background-Intro-Pulse.svg");
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.14);
}

.kf-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background: linear-gradient(
      90deg,
      rgba(18, 19, 31, 0.18) 0%,
      rgba(18, 19, 31, 0.08) 42%,
      rgba(18, 19, 31, 0.18) 100%
    );
  opacity: 1;
}

.kf-hero::after {
  content: "";
  position: absolute;
  inset: auto 0 0 0;
  height: 1px;
  z-index: 1;
  background: rgba(255, 255, 255, 0.18);
}

.kf-hero__grid {
  display: none;
}

.kf-hero__glow {
  display: none;
}

.kf-hero__glow--one {
  width: 520px;
  height: 520px;
  left: -170px;
  top: -150px;
  background: radial-gradient(circle, rgba(122, 122, 237, 0.5), transparent 68%);
}

.kf-hero__glow--two {
  width: 460px;
  height: 460px;
  right: 6%;
  bottom: -80px;
  background: radial-gradient(circle, rgba(67, 68, 135, 0.38), transparent 70%);
}

/* =========================
   Keyfactor-style announcement bar
   ========================= */
.kf-home-announcement {
  min-height: 42px;
  background: #171717;
  color: #ffffff;
  font-size: 15px;
  font-weight: 520;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  font-synthesis: none;
}

.kf-home-announcement__inner {
  width: min(var(--kf-max), calc(100vw - 56px));
  min-height: 42px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0;
}

.kf-home-announcement__message {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  color: rgba(255, 255, 255, 0.92);
  font-size: 15px;
  line-height: 1;
  font-weight: 520;
  text-align: center;
  white-space: nowrap;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  font-synthesis: none;
}

.kf-home-announcement__message:hover {
  color: #ffffff;
  text-decoration: none;
}

.kf-home-announcement__message strong {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: #ffffff;
  font-weight: 560;
  letter-spacing: 0.005em;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  font-synthesis: none;
}

.kf-home-announcement__message strong::after {
  content: "";
  width: 0;
  height: 0;
  border-top: 4px solid transparent;
  border-bottom: 4px solid transparent;
  border-left: 5px solid currentColor;
  transform: translateY(0.5px);
}

.kf-home-announcement__divider {
  display: inline-block;
  color: rgba(255, 255, 255, 0.34);
  font-weight: 200;
  font-size: 17px;
  line-height: 1;
  transform: translateY(-1px) skewX(-8deg);
}

.kf-home-announcement__language {
  display: none;
}

/* =========================
   Split liquid glass header
   ========================= */
.kf-glass-header {
  position: absolute;
  top: 34px;
  left: 0;
  right: 0;
  z-index: 10;
  padding: 0 52px;
  pointer-events: none;
}

.kf-glass-header__inner {
  width: min(1360px, calc(100vw - 104px));
  min-height: 66px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;
  pointer-events: none;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

.kf-logo {
  position: relative;
  min-height: 66px;
  min-width: 0;
  padding: 8px 32px;
  overflow: hidden;
  display: inline-flex;
  align-items: center;
  border-radius: var(--kf-radius-glass);
  border: 1px solid rgba(255, 255, 255, 0.10);
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.085), rgba(255, 255, 255, 0.022)),
    var(--kf-liquid-bg);
  box-shadow: var(--kf-liquid-shadow-pill);
  backdrop-filter: blur(4px) saturate(var(--kf-liquid-saturation));
  -webkit-backdrop-filter: blur(4px) saturate(var(--kf-liquid-saturation));
  pointer-events: auto;
  transition: transform 300ms var(--kf-liquid-ease),
    background 300ms var(--kf-liquid-ease),
    box-shadow 300ms var(--kf-liquid-ease),
    border-color 300ms var(--kf-liquid-ease);
}

.kf-logo img {
  position: relative;
  z-index: 2;
  display: block;
  width: 222px;
  max-height: 38px;
  object-fit: contain;
}

.kf-logo::before, .kf-header-actions::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  border-radius: inherit;
  pointer-events: none;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.16), transparent 34%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.08), transparent 54%);
  opacity: 0.72;
}

.kf-logo::after, .kf-header-actions::after {
  content: "";
  position: absolute;
  left: 24px;
  right: 24px;
  top: 1px;
  z-index: 1;
  height: 1px;
  border-radius: 999px;
  pointer-events: none;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.54), transparent);
  opacity: 0.38;
}

.kf-logo:hover, .kf-header-actions:hover {
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.11), rgba(255, 255, 255, 0.03)),
    var(--kf-liquid-bg-hover);
  box-shadow: var(--kf-liquid-shadow-pill),
    0 8px 22px rgba(0, 0, 0, 0.12);
}

.kf-header-actions {
  position: relative;
  min-height: 66px;
  padding: 8px 10px;
  overflow: visible;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
  border-radius: var(--kf-radius-glass);
  border: 1px solid rgba(255, 255, 255, 0.10);
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.085), rgba(255, 255, 255, 0.022)),
    var(--kf-liquid-bg);
  box-shadow: var(--kf-liquid-shadow-pill);
  backdrop-filter: blur(4px) saturate(var(--kf-liquid-saturation));
  -webkit-backdrop-filter: blur(4px) saturate(var(--kf-liquid-saturation));
  pointer-events: auto;
  transition: transform 300ms var(--kf-liquid-ease),
    background 300ms var(--kf-liquid-ease),
    box-shadow 300ms var(--kf-liquid-ease),
    border-color 300ms var(--kf-liquid-ease);
}

.kf-header-actions > * {
  position: relative;
  z-index: 2;
}

.kf-submit-request, .kf-profile-menu__signin, .kf-profile-menu__button {
  min-height: 46px;
  padding: 0 24px;
  border-radius: var(--kf-radius-glass);
  border: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0;
  color: #ffffff;
  font-size: 15.5px;
  font-weight: 480;
  letter-spacing: 0.01em;
  line-height: 1;
  background: transparent;
  box-shadow: none;
  -webkit-font-smoothing: antialiased;
  text-rendering: geometricPrecision;
  transition: transform 180ms ease,
    color 180ms ease,
    background 180ms ease,
    box-shadow 180ms ease;
}

.kf-submit-request {
  position: relative;
  z-index: 4;
  background: #171717;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.08),
    inset 1.6px 2px 0 -2px rgba(255, 255, 255, 0.42),
    inset -2px -3px 1px -3px rgba(255, 255, 255, 0.18),
    0 10px 24px rgba(0, 0, 0, 0.22);
}

.kf-submit-request:hover, .kf-submit-request:focus {
  color: #ffffff;
  background: #5f61ff;
  transform: translateY(-1px);
  text-decoration: none;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.14),
    inset 1.6px 2px 0 -2px rgba(255, 255, 255, 0.48),
    inset -2px -3px 1px -3px rgba(255, 255, 255, 0.2),
    0 12px 28px rgba(95, 97, 255, 0.28);
}

.kf-profile-menu {
  position: relative;
  display: flex;
  align-items: center;
}

.kf-profile-menu__button {
  appearance: none;
  min-width: 132px;
  max-width: 220px;
  padding: 0 22px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  border: 0;
  cursor: pointer;
}

.kf-profile-menu__button,
.kf-profile-menu__signin {
  border-color: transparent;
  background: transparent;
  box-shadow: none;
}

.kf-profile-menu__button.dropdown-toggle::after {
  content: none !important;
  display: none !important;
}

.kf-profile-menu__button:hover, .kf-profile-menu__button:focus, .kf-profile-menu__signin:hover, .kf-profile-menu__signin:focus {
  color: #ffffff;
  background: #5f61ff;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.18),
    0 10px 22px rgba(95, 97, 255, 0.24);
  transform: translateY(-1px);
  text-decoration: none;
}

.kf-profile-menu__name {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.kf-profile-menu__dropdown {
  position: absolute;
  top: calc(100% + 12px);
  right: 0;

  min-width: 220px;
  padding: 10px;

  border-radius: 22px;
  border: 1px solid rgba(255, 255, 255, 0.22);

  background:
    linear-gradient(
      135deg,
      rgba(255, 255, 255, 0.08),
      transparent 48%
    ),
    #292a3a;

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.18),
    0 22px 58px rgba(0, 0, 0, 0.38);

  backdrop-filter: none;
  -webkit-backdrop-filter: none;

  display: none;
}

.kf-profile-menu__dropdown a {
  display: block;
  padding: 12px 13px;
  border-radius: 14px;
  color: rgba(255, 255, 255, 0.82);
  font-size: 15px;
  font-weight: 500;
}

.kf-profile-menu__dropdown a:hover {
  color: #ffffff;
  background: rgba(255, 255, 255, 0.11);
}

.kf-profile-menu.is-open .kf-profile-menu__dropdown {
  display: block;
}

.kf-profile-menu__divider {
  height: 1px;
  margin: 8px 6px;
  background: rgba(255, 255, 255, 0.14);
}

.kf-profile-menu__dropdown .kf-profile-menu__signout {
  color: rgba(255, 255, 255, 0.62);
}

.kf-profile-menu__dropdown .kf-profile-menu__signout:hover {
  color: #ffffff;
  background: rgba(255, 255, 255, 0.11);
}

/* =========================
   Site header for non-home pages
   ========================= */
.kf-glass-header--site {
  position: relative;
  top: auto;
  left: auto;
  right: auto;
  z-index: 20;
  padding: 24px 52px 28px;
  background: #17182d;
  pointer-events: none;
}

.kf-glass-header--site::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background-image: url("https://www.keyfactor.com/wp-content/uploads/Keyfactor-Hero-Background-Intro-Pulse.svg");
  background-repeat: no-repeat;
  background-position: center top;
  background-size: cover;
  pointer-events: none;
}

.kf-glass-header--site::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: linear-gradient(
      90deg,
      rgba(18, 19, 31, 0.18) 0%,
      rgba(18, 19, 31, 0.08) 42%,
      rgba(18, 19, 31, 0.18) 100%
    );
  pointer-events: none;
}

.kf-glass-header--site .kf-glass-header__inner {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: auto minmax(280px, 560px) auto;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  pointer-events: none;
}

.kf-glass-header--site .kf-logo, .kf-glass-header--site .kf-header-actions, .kf-glass-header--site .kf-site-header-search {
  pointer-events: auto;
}

.kf-site-header-search {
  position: relative;
  min-width: 0;
  width: 100%;
  justify-self: center;
}

.kf-site-header-search form, .kf-site-header-search .search {
  position: relative !important;
  width: 100% !important;
  max-width: none !important;
  height: 54px !important;
  min-height: 54px !important;
  margin: 0 !important;
  display: flex !important;
  align-items: center !important;
  border-radius: 999px !important;
  border: 1px solid rgba(255, 255, 255, 0.10) !important;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.085), rgba(255, 255, 255, 0.022)),
    var(--kf-liquid-bg) !important;
  box-shadow: var(--kf-liquid-shadow-pill) !important;
  backdrop-filter: blur(4px) saturate(var(--kf-liquid-saturation));
  -webkit-backdrop-filter: blur(4px) saturate(var(--kf-liquid-saturation));
  overflow: hidden !important;
}

.kf-site-header-search form::before, .kf-site-header-search .search::before {
  content: "⌕";
  position: absolute;
  left: 20px;
  top: 50%;
  z-index: 2;
  color: rgba(255, 255, 255, 0.58);
  font-size: 19px;
  line-height: 1;
  transform: translateY(-50%);
  pointer-events: none;
}

.kf-site-header-search input[type="search"], .kf-site-header-search input[type="text"], .kf-site-header-search .search-field {
  width: 100% !important;
  height: 54px !important;
  min-height: 54px !important;
  margin: 0 !important;
  padding: 0 20px 0 50px !important;
  border: 0 !important;
  border-radius: 999px !important;
  outline: 0 !important;
  color: #ffffff !important;
  font-size: 16px !important;
  line-height: 1 !important;
  font-weight: 450 !important;
  background: transparent !important;
  box-shadow: none !important;
  appearance: none !important;
  -webkit-font-smoothing: antialiased;
  text-rendering: geometricPrecision;
}

.kf-site-header-search input[type="search"]::placeholder, .kf-site-header-search input[type="text"]::placeholder, .kf-site-header-search .search-field::placeholder {
  color: rgba(255, 255, 255, 0.56);
}

.kf-site-header-search input[type="submit"], .kf-site-header-search button[type="submit"] {
  display: none !important;
}


/* =========================
   Global header on HOME page
   ========================= */

body:has(.kf-home) .kf-global-header {
  position: absolute;
  left: 0;
  right: 0;
  z-index: 50;
  width: 100%;
}

body:has(.kf-home) .kf-glass-header--site {
  position: static;
  padding: 0 52px;
  background: transparent;
  pointer-events: none;
}

body:has(.kf-home) .kf-glass-header--site::before,
body:has(.kf-home) .kf-glass-header--site::after {
  content: none;
}

body:has(.kf-home) .kf-site-header-search {
  display: none;
}

body:has(.kf-home) .kf-glass-header--site .kf-glass-header__inner {
  width: min(1360px, calc(100vw - 104px));
  min-height: 66px;
  margin: 0 auto;

  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 28px;

  pointer-events: none;
}

body:has(.kf-home) .kf-glass-header--site .kf-logo,
body:has(.kf-home) .kf-glass-header--site .kf-header-actions {
  pointer-events: auto;
}

/* =========================
   Hero layout - 40/60 title + search
   ========================= */
.kf-hero__inner {
  position: relative;
  z-index: 2;

  width: min(1320px, 100%);
  margin: 0 auto;
  padding-top: 126px;

  display: grid;
  grid-template-columns:
    minmax(0, 0.46fr)
    minmax(0, 0.54fr);

  grid-template-areas:
    "eyebrow search"
    "title search"
    "tiles tiles";

  column-gap: 48px;
  align-items: center;
}

.kf-eyebrow {
  grid-area: eyebrow;

  margin: 4px 0 12px;

  color: #a5a7ff !important;

  font-size: 13px;
  line-height: 1;
  font-weight: 560;
  letter-spacing: 0.125em;
  text-transform: uppercase;

  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  font-synthesis: none;
}

.kf-eyebrow::before {
  content: "/ / / /";
  margin-right: 12px;
  letter-spacing: 0;
  color: #a5a7ff;
}

.kf-hero__title {
  grid-area: title;

  max-width: none;
  margin: 0;

  display: inline-block;

  font-family: var(--kf-font-hero-h1) !important;
  font-size: clamp(50px, 5.35vw, 82px);
  line-height: 0.96;
  font-weight: 200;

  text-wrap: normal;

  background-image:
    linear-gradient(
      56.76deg,
      #7779be 25.78%,
      #ffffff 44%,
      #aaaab4 56.56%
    );

  background-size: 200% 100%;
  background-position: 50% 0%;

  -webkit-background-clip: text;
  background-clip: text;

  color: transparent;
  -webkit-text-fill-color: transparent;

  animation: kfHeroGradientSlide linear;
  animation-timeline: scroll(root);
  animation-range: 0vh 60vh;
}

.kf-hero__title span {
  display: block;
  white-space: nowrap;
}

.kf-hero__title strong, .kf-hero__title em {
  font-family: var(--kf-font-hero-h1) !important;
  font-style: normal;
  font-weight: 300;
  letter-spacing: inherit;
  color: inherit;
  -webkit-text-fill-color: inherit;
}

.kf-hero__subtitle {
  display: none;
}

/* =========================
   Search - rounded white bar with attached button
   ========================= */
.kf-search-panel {
  grid-area: search;

  width: 100%;
  margin: 18px 0 0;

  justify-self: stretch;
}

.kf-search-wrap {
  width: 100%;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
  overflow: visible;
  position: relative;
}

form.kf-search,
.kf-search form,
.search.kf-search {
  width: 100% !important;
  max-width: none !important;

  position: relative !important;

  height: 62px !important;
  min-height: 62px !important;
  margin: 0 !important;
  padding: 0 !important;

  display: flex !important;
  flex-wrap: nowrap !important;
  align-items: stretch !important;
  gap: 0 !important;

  border-radius: 999px !important;
  border: 1px solid rgba(255, 255, 255, 0.84) !important;

  background: #ffffff !important;

  overflow: hidden !important;

  box-shadow:
    0 20px 48px rgba(0, 0, 0, 0.22),
    inset 0 1px 0 rgba(255, 255, 255, 0.95) !important;
}

form.kf-search::before, .kf-search form::before, .search.kf-search::before {
  content: "⌕";
  position: absolute;
  left: 23px;
  top: 50%;
  z-index: 2;
  transform: translateY(-50%);
  color: rgba(28, 29, 39, 0.42);
  font-size: 20px;
  line-height: 1;
  pointer-events: none;
}

form.kf-search input[type="search"], form.kf-search input[type="text"], .kf-search form input[type="search"], .kf-search form input[type="text"], .search.kf-search .search-field {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  width: auto !important;
  max-width: none !important;
  height: 62px !important;
  min-height: 62px !important;
  margin: 0 !important;
  padding: 0 18px 0 53px !important;
  border: 0 !important;
  border-radius: 0 !important;
  outline: none !important;
  color: #18181c !important;
  font-size: clamp(15.5px, 1.08vw, 18px) !important;
  font-weight: 430 !important;
  line-height: 1 !important;
  box-shadow: none !important;
  appearance: none !important;
}

form.kf-search input[type="search"]::placeholder, form.kf-search input[type="text"]::placeholder, .kf-search form input[type="search"]::placeholder, .kf-search form input[type="text"]::placeholder {
  color: rgba(24, 24, 28, 0.48);
}

form.kf-search input[type="submit"], form.kf-search button[type="submit"], .kf-search form input[type="submit"], .kf-search form button[type="submit"], .search.kf-search input[type="submit"], .search.kf-search button[type="submit"] {
  flex-basis: clamp(104px, 8vw, 126px) !important;
  width: clamp(104px, 8vw, 126px) !important;
  min-width: clamp(104px, 8vw, 126px) !important;
  max-width: 126px !important;
  height: 64px !important;
  min-height: 64px !important;
  margin: -1px -1px -1px 0 !important;
  padding: 0 20px !important;
  position: relative !important;
  z-index: 2 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border: 0 !important;
  border-left: 0 !important;
  border-radius: 0 999px 999px 0 !important;
  appearance: none !important;
  color: #ffffff !important;
  font-family: var(--kf-font-body) !important;
  font-size: 17px !important;
  font-weight: 520 !important;
  letter-spacing: 0.008em !important;
  line-height: 1 !important;
  text-align: center !important;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.06), transparent 42%),
    #171717 !important;
  box-shadow: inset 1px 0 0 rgba(255, 255, 255, 0.035),
    inset 0 1px 0 rgba(255, 255, 255, 0.10) !important;
  cursor: pointer;
  transition: background 180ms ease,
    box-shadow 180ms ease,
    filter 180ms ease !important;
}

form.kf-search input[type="submit"]:hover, form.kf-search button[type="submit"]:hover, .kf-search form input[type="submit"]:hover, .kf-search form button[type="submit"]:hover, .search.kf-search input[type="submit"]:hover, .search.kf-search button[type="submit"]:hover {
  transform: none !important;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.13), transparent 46%),
    #5f61ff !important;
  box-shadow: inset 1px 0 0 rgba(255, 255, 255, 0.06),
    inset 0 1px 0 rgba(255, 255, 255, 0.20),
    0 12px 28px rgba(95, 97, 255, 0.24) !important;
  filter: brightness(1.035);
}

/* =========================
   Search tags
   ========================= */
.kf-search-tags {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;

  gap: 8px;
  margin-top: 10px;
  padding-left: 15px;
}

.kf-pill {
  min-height: 29px;
  padding: 0 13px;

  border-radius: 999px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  color: rgba(255, 255, 255, 0.82);

  font-size: 12.5px;
  font-weight: 450;
  letter-spacing: 0.01em;
  line-height: 1;

  border: 0;
  background: #1a1825;
  box-shadow: none;
}

.kf-pill:hover {
  transform: translateY(-1px);
  color: #ffffff;
  background: #5f61ff;
  box-shadow: 0 8px 18px rgba(95, 97, 255, 0.22);
  text-decoration: none;
}

/* =========================
   Tiles - compact glass cards
   ========================= */

.kf-tile-grid {
  grid-area: tiles;

  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  grid-auto-rows: 124px;

  gap: 12px;

  width: 100%;
  margin: 38px auto 0;
}


/* =========================
   Base tile
   ========================= */

.kf-tile {
  position: relative;

  width: 100%;
  height: 100%;
  min-height: 0;
  padding: 20px 18px 18px;

  overflow: hidden;

  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
grid-template-rows: auto 1fr;
grid-template-areas:
  "icon title"
  "icon body";

column-gap: 11px;
row-gap: 8px;

  align-items: start;

  border-radius: 20px;
  border: 1px solid rgba(255, 255, 255, 0.075);

  color: #ffffff;

  background:
    linear-gradient(
      135deg,
      rgba(255, 255, 255, 0.085),
      rgba(255, 255, 255, 0.022)
    ),
    rgba(255, 255, 255, 0.045);

  box-shadow: var(--kf-liquid-shadow-card);

  backdrop-filter:
    blur(4px)
    saturate(var(--kf-liquid-saturation));

  -webkit-backdrop-filter:
    blur(4px)
    saturate(var(--kf-liquid-saturation));

  transition:
    transform 240ms var(--kf-liquid-ease),
    background 300ms var(--kf-liquid-ease),
    box-shadow 300ms var(--kf-liquid-ease),
    border-color 300ms var(--kf-liquid-ease);
}

.kf-tile::before {
  content: "";

  position: absolute;
  inset: 0;
  z-index: 0;

  border-radius: inherit;

  opacity: 0.70;
  pointer-events: none;

  background:
    linear-gradient(
      135deg,
      rgba(255, 255, 255, 0.13),
      transparent 34%
    ),
    linear-gradient(
      180deg,
      rgba(255, 255, 255, 0.06),
      transparent 52%
    );
}

.kf-tile::after {
  content: "";

  position: absolute;
  left: 18px;
  right: 18px;
  top: 1px;
  z-index: 1;

  height: 1px;

  border-radius: 999px;

  background:
    linear-gradient(
      90deg,
      transparent,
      rgba(255, 255, 255, 0.44),
      transparent
    );

  opacity: 0.34;
  pointer-events: none;
}

.kf-tile:hover {
  transform: translateY(-4px);

  border-color: rgba(255, 255, 255, 0.17);

  background:
    linear-gradient(
      135deg,
      rgba(255, 255, 255, 0.12),
      rgba(255, 255, 255, 0.034)
    ),
    rgba(255, 255, 255, 0.065);

  box-shadow:
    var(--kf-liquid-shadow-card),
    0 14px 32px rgba(0, 0, 0, 0.16);

  text-decoration: none;
}


/* =========================
   Tile elements
   ========================= */

.kf-tile__icon,
.kf-tile__content,
.kf-tile__title,
.kf-tile__text, {
  position: relative;
  z-index: 2;
}


/* Icon */

.kf-tile__icon {
  grid-area: icon;

  width: 34px;
  height: 34px;
  min-width: 34px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  align-self: start;
  margin-top: 6px;
}

.kf-tile__icon img {
  display: block;

  width: 33px;
  height: 33px;

  object-fit: contain;

  filter: brightness(0) invert(1);
  opacity: 0.94;
}


/* Unwrap the content wrapper into the parent grid */

.kf-tile__content {
  display: contents;
}


/* Eyebrow title */

.kf-tile__title {
  grid-area: title;

  display: block;
  align-self: center;

  min-width: 0;
  max-width: 100%;

  color: #a5a7ff;

  font-size: 16px;
  line-height: 1.12;
  font-weight: 700;
  letter-spacing: 0.055em;
  text-transform: uppercase;

  text-wrap: pretty;

  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  font-synthesis: none;
}

.kf-tile__title::after {
  content: "";

  display: inline-block;

  width: 0;
  height: 0;
  margin-left: 7px;

  border-top: 4px solid transparent;
  border-bottom: 4px solid transparent;
  border-left: 6px solid currentColor;

  vertical-align: 0.04em;

  transition:
    transform 180ms ease,
    color 180ms ease;
}

.kf-tile:hover .kf-tile__title::after {
  transform: translateX(3px);
  color: #ffffff;
}


/* Main body text */

.kf-tile__text {
  grid-area: body;

  display: -webkit-box;
  align-self: start;

  max-width: 100%;
  margin: 0;

  overflow: hidden;

  color: rgba(255, 255, 255, 0.84);

  font-size: 16.5px;
  line-height: 1.27;
  font-weight: 400;
  letter-spacing: -0.003em;

  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
}


/* =========================
   Important notice tile
   ========================= */

.kf-tile--notice {
grid-template-columns: minmax(0, 1fr);
grid-template-rows: auto 1fr;
grid-template-areas:
  "title"
  "body";

row-gap: 10px;

  padding: 18px 20px;

  border-color: rgba(165, 167, 255, 0.30);

  background:
    radial-gradient(
      circle at 18% 0%,
      rgba(255, 255, 255, 0.24),
      transparent 34%
    ),
    radial-gradient(
      circle at 100% 100%,
      rgba(95, 97, 255, 0.28),
      transparent 36%
    ),
    linear-gradient(
      135deg,
      rgba(95, 97, 255, 0.72),
      rgba(95, 97, 255, 0.42)
    ),
    rgba(255, 255, 255, 0.055);

  box-shadow:
    var(--kf-liquid-shadow-card),
    0 18px 42px rgba(95, 97, 255, 0.18);
}

.kf-tile--notice::before {
  opacity: 0.76;

  background:
    linear-gradient(
      135deg,
      rgba(255, 255, 255, 0.24),
      transparent 34%
    ),
    linear-gradient(
      180deg,
      rgba(255, 255, 255, 0.12),
      transparent 52%
    );
}

.kf-tile--notice::after {
  left: 18px;
  right: 18px;
  top: 1px;

  height: 1px;

  background:
    linear-gradient(
      90deg,
      transparent,
      rgba(255, 255, 255, 0.68),
      transparent
    );

  opacity: 0.58;
}

.kf-tile--notice .kf-tile__title {
  color: #d6d7ff;

  font-size: 16px;
  line-height: 1.12;
  font-weight: 700;
  letter-spacing: 0.085em;
}

.kf-tile--notice .kf-tile__text {
  color: rgba(255, 255, 255, 0.94);

  font-size: 16.5px;
  line-height: 1.27;
  font-weight: 450;
}

.kf-tile--notice:hover {
  border-color: rgba(165, 167, 255, 0.42);

  background:
    radial-gradient(
      circle at 18% 0%,
      rgba(255, 255, 255, 0.28),
      transparent 36%
    ),
    radial-gradient(
      circle at 100% 100%,
      rgba(95, 97, 255, 0.34),
      transparent 38%
    ),
    linear-gradient(
      135deg,
      rgba(95, 97, 255, 0.82),
      rgba(95, 97, 255, 0.48)
    ),
    rgba(255, 255, 255, 0.07);

  box-shadow:
    var(--kf-liquid-shadow-card),
    0 20px 48px rgba(95, 97, 255, 0.24);
}

/* =========================
   Knowledge Hub - new home aesthetic
   ========================= */
.kf-kbhub {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  margin: 0 -20px 0;
  padding: 84px 60px 92px;
  color: #18181c;
  border-radius: 0;
  border: 0;
  box-shadow: none;
  background: linear-gradient(
   180deg,
    var(--kf-mist-white) 0%,
    #ffffff 16%,
    #eef0ff 42%,
    #eef0ff 58%,
    #ffffff 84%,
    var(--kf-mist-white) 100%
  );
}

.kf-kbhub::before, .kf-kbhub::after {
  content: none;
}

.kf-kbhub__orb, .kf-kbhub__grain {
  display: none;
}

.kf-kbhub__wrap {
  width: min(1320px, 100%);
  margin: 0 auto;
  padding: 0;
}

.kf-kbhub__intro {
  max-width: 780px;
  margin: 0 auto 34px;
  text-align: center;
}

.kf-kbhub__eyebrow {
  margin: 0 0 13px;
  color: #5f61ff !important;
  font-size: 15px;
  line-height: 1;
  font-weight: 560;
  letter-spacing: 0.125em;
  text-transform: uppercase;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  font-synthesis: none;
}

.kf-kbhub__eyebrow::before {
  content: "/ / / /";
  margin-right: 12px;
  letter-spacing: 0;
  color: #5f61ff;
}

.kf-kbhub__title {
  margin: 0;
  font-family: var(--kf-font-hero-h1) !important;
  font-size: clamp(46px, 4.8vw, 74px);
  line-height: 0.98;
  font-weight: 300;
  background: linear-gradient(
    115deg,
    #171717 0%,
    #34356a 34%,
    #5f5fc4 58%,
    #171717 100%
  );
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  -webkit-text-fill-color: transparent;
}

.kf-kbhub__lede {
  max-width: 680px;
  margin: 18px auto 0;
  color: rgba(24, 24, 28, 0.66);
  font-size: 19px;
  line-height: 1.42;
  font-weight: 460;
}

/* =========================
   Knowledge Hub sign-in nudge
   ========================= */
.kf-kbhub__signin {
  position: relative;
  z-index: 3;
  margin: 0 0 22px;
}

.kf-kbhub__signin-inner {
  position: relative;
  overflow: hidden;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 22px;
  padding: 22px 24px;
  border-radius: 28px;
  border: 1px solid rgba(255, 255, 255, 0.72);
  color: #18181c;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.74), rgba(255, 255, 255, 0.42)),
    rgba(255, 255, 255, 0.36);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.82),
    0 18px 46px rgba(24, 24, 28, 0.08);
  backdrop-filter: blur(24px) saturate(150%);
  -webkit-backdrop-filter: blur(24px) saturate(150%);
}

.kf-kbhub__signin-inner::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: radial-gradient(circle at 5% 0%, rgba(95, 95, 196, 0.12), transparent 34%),
    linear-gradient(145deg, rgba(255, 255, 255, 0.34), transparent 46%);
}

.kf-kbhub__signin-text, .kf-kbhub__signin .kf-btn {
  position: relative;
  z-index: 1;
}

.kf-kbhub__signin-text strong {
  display: block;
  color: #18181c;
  font-size: 21px;
  line-height: 1.2;
  font-weight: 650;
}

.kf-kbhub__signin-text p {
  margin: 6px 0 0;
  color: rgba(24, 24, 28, 0.62);
  font-size: 16px;
  line-height: 1.35;
  font-weight: 450;
}

/* =========================
   Knowledge Hub category tabs - carousel style
   ========================= */
.kf-kbhub__tabs {
  position: relative;
  top: auto;
  z-index: 5;
  width: 100%;
  margin: 0 auto 34px;
  display: grid;
  grid-auto-flow: column;
grid-auto-columns: minmax(0, 1fr);
  gap: 18px;
  overflow-x: auto;
  overflow-y: visible;
  scrollbar-width: none;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

.kf-kbhub__tabs::-webkit-scrollbar {
  height: 0;
}

.kf-kbhub__tab {
  appearance: none;
  position: relative;
  min-height: 54px;
  padding: 0 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 0;
  border-bottom: 1px solid rgba(24, 24, 28, 0.16);
  border-radius: 0;
  color: rgba(24, 24, 28, 0.46);
  font-family: var(--kf-font-body) !important;
  font-size: 19px;
  line-height: 1;
  font-weight: 560;
  text-align: center;
  white-space: nowrap;
  background: transparent;
  box-shadow: none;
  cursor: pointer;
  transition: color 180ms ease,
    border-color 180ms ease,
    opacity 180ms ease;
}

.kf-kbhub__tab:hover {
  color: rgba(24, 24, 28, 0.78);
  background: transparent;
}

.kf-kbhub__tab[aria-selected="true"] {
  color: #18181c;
  border-bottom-color: #5f5fc4;
  font-weight: 580;
  background: transparent;
  box-shadow: none;
  -webkit-font-smoothing: antialiased;
  text-rendering: geometricPrecision;
  font-synthesis: none;
}

.kf-kbhub__tab[aria-selected="true"]::after {
  content: "";
  position: absolute;
  right: -1px;
  bottom: -1px;
  width: 1px;
  height: 9px;
  background: #5f5fc4;
}

.kf-kbhub__tab:focus-visible {
  outline: 2px solid rgba(95, 95, 196, 0.7);
  outline-offset: 5px;
  border-radius: 10px;
}

/* =========================
   Knowledge Hub panels
   ========================= */
.kf-kbhub__panel {
  display: none;
}

.kf-kbhub__panel.is-active {
  display: block;
  animation: kfHubPanelIn 260ms ease both;
}

/* =========================
   Section shells - airy editorial layout
   ========================= */
.kf-sec {
  margin: 52px 0 0;
}

.kf-sec:first-child {
  margin-top: 34px;
}

.kf-sec:not(:has(.kf-cards)) {
  padding: 0;
  border-radius: 0;
  background: transparent;
  border: 0;
  box-shadow: none;
}

.kf-sec:has(.kf-cards) {
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
}

.kf-sec + .kf-sec {
  margin-top: 58px;
  padding-top: 34px;
}

.kf-sec__hd {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 22px;
  margin: 0 0 48px;
}

.kf-sec__title {
  margin: 0;
  color: #18181c;
  font-size: 28px;
  line-height: 1.02;
  font-weight: 560;
  letter-spacing: -0.014em;
}

.kf-sec__more {
  min-height: 42px;
  padding: 0 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;
  border-radius: 999px;
  border: 1px solid rgba(24, 24, 28, 0.12);
  color: rgba(24, 24, 28, 0.72);
  font-size: 14px;
  line-height: 1;
  font-weight: 560;
  text-decoration: none;
  background: rgba(255, 255, 255, 0.34);
  box-shadow: none;
  backdrop-filter: blur(12px) saturate(120%);
  -webkit-backdrop-filter: blur(12px) saturate(120%);
  transition: transform 180ms ease,
    color 180ms ease,
    background 180ms ease,
    border-color 180ms ease;
}

.kf-sec__more::after {
  content: "›";
  font-size: 17px;
  line-height: 1;
  transform: translateY(-1px);
  transition: transform 180ms ease;
}

.kf-sec__more:hover {
  transform: translateY(-1px);
  color: #ffffff;
  border-color: rgba(255, 255, 255, 0.18);
  background: linear-gradient(135deg, rgba(95, 95, 196, 0.94), rgba(52, 53, 106, 0.92)),
    rgba(52, 53, 106, 0.92);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.18),
    0 10px 22px rgba(52, 53, 106, 0.18);
  text-decoration: none;
}

.kf-sec__more:hover::after {
  color: #ffffff;
  transform: translate(2px, -1px);
}

.kf-sec__more:focus-visible {
  outline: 2px solid rgba(95, 95, 196, 0.58);
  outline-offset: 3px;
}

.kf-sec--getstarted {
  display: none;
}

/* =========================
   Highlight cards - liquid glass
   ========================= */
.kf-cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
  margin: 0;
}

.kf-card {
  position: relative;
  overflow: hidden;
  min-height: 126px;
  padding: 24px 26px;
  display: grid;
  grid-template-columns: 56px minmax(0, 1fr) 34px;
  align-items: center;
  gap: 18px;
  color: #18181c;
  text-decoration: none;
  border-radius: 30px;
  border: 1px solid rgba(255, 255, 255, 0.58);
  background: radial-gradient(circle at 14% 0%, rgba(255, 255, 255, 0.56), transparent 34%),
  radial-gradient(circle at 100% 100%, rgba(165, 167, 255, 0.16), transparent 28%),
  linear-gradient(135deg, rgba(255, 255, 255, 0.34), rgba(255, 255, 255, 0.1)),
  rgba(255, 255, 255, 0.08);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.82),
    inset 0 -1px 0 rgba(255, 255, 255, 0.16),
    0 12px 32px rgba(38, 39, 78, 0.05),
    0 2px 8px rgba(255, 255, 255, 0.08);
  backdrop-filter: blur(30px) saturate(165%);
  -webkit-backdrop-filter: blur(30px) saturate(165%);
  transition: transform 220ms ease,
    border-color 220ms ease,
    background 220ms ease,
    box-shadow 220ms ease;
}

.kf-card::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  border-radius: inherit;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.42), transparent 34%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.18), transparent 42%),
    radial-gradient(circle at 82% 18%, rgba(255, 255, 255, 0.18), transparent 18%);
  opacity: 0.95;
}

.kf-card::after {
  content: "→";
  position: relative;
  z-index: 1;
  width: 34px;
  height: 34px;
  border-radius: 999px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  justify-self: end;
  color: rgba(24, 24, 28, 0.52);
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.62), rgba(255, 255, 255, 0.22)),
    rgba(255, 255, 255, 0.18);
  border: 1px solid rgba(255, 255, 255, 0.48);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.78),
    0 8px 18px rgba(38, 39, 78, 0.05);
  transition: transform 220ms ease,
    color 220ms ease,
    background 220ms ease,
    border-color 220ms ease,
    box-shadow 220ms ease;
}

.kf-card:hover {
  transform: translateY(-4px);
  border-color: rgba(255, 255, 255, 0.78);
  background: radial-gradient(circle at 14% 0%, rgba(255, 255, 255, 0.66), transparent 36%),
  radial-gradient(circle at 100% 100%, rgba(165, 167, 255, 0.22), transparent 30%),
  linear-gradient(135deg, rgba(255, 255, 255, 0.42), rgba(255, 255, 255, 0.12)),
  rgba(255, 255, 255, 0.1);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.92),
    inset 0 -1px 0 rgba(255, 255, 255, 0.18),
    0 18px 44px rgba(38, 39, 78, 0.08),
    0 2px 10px rgba(255, 255, 255, 0.12);
  text-decoration: none;
}

.kf-card:hover::after {
  transform: translateX(3px);
  color: #ffffff;
  background: linear-gradient(135deg, rgba(95, 95, 196, 0.94), rgba(52, 53, 106, 0.92)),
    rgba(52, 53, 106, 0.92);
  border-color: rgba(255, 255, 255, 0.18);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.18),
    0 10px 22px rgba(52, 53, 106, 0.18);
}

.kf-card__logo, .kf-card__title {
  position: relative;
  z-index: 1;
}

.kf-card__logo {
  width: 56px;
  height: 56px;
  flex: 0 0 56px;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  border-radius: 19px;
  border: 1px solid rgba(255, 255, 255, 0.5);
  background: radial-gradient(circle at 20% 0%, rgba(255, 255, 255, 0.7), transparent 34%),
    linear-gradient(135deg, rgba(255, 255, 255, 0.54), rgba(255, 255, 255, 0.18)),
    rgba(255, 255, 255, 0.14);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.82),
    0 8px 18px rgba(38, 39, 78, 0.04);
}

.kf-card__logo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  border-radius: inherit;
  opacity: 0.92;
}

.kf-card__logo--github img {
  width: 82%;
  height: 82%;
  object-fit: contain;
  object-position: center;
  border-radius: 0;
}

.kf-card__title {
  max-width: none;
  padding-right: 0;
  color: #18181c;
  font-size: 22px;
  line-height: 1.08;
  font-weight: 540;
  letter-spacing: -0.014em;
}

/* =========================
   Article grid lists - airy resource index
   ========================= */
.kf-gridlist {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  column-gap: 34px;
  row-gap: 0;
}

.kf-gridlist > li {
  position: relative;
  overflow: visible;
  min-height: 156px;
  padding: 0 0 30px;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  transition: transform 180ms ease,
    color 180ms ease;
}

.kf-gridlist > li:nth-child(n + 4) {
  padding-top: 30px;
  border-top: 1px solid rgba(24, 24, 28, 0.1);
}

.kf-gridlist > li:nth-child(3n + 2), .kf-gridlist > li:nth-child(3n + 3) {
  padding-left: 28px;
  border-left: 1px solid rgba(24, 24, 28, 0.1);
}

.kf-gridlist > li::before {
  content: none;
  position: absolute;
  left: 0;
  top: 0;
  width: 38px;
  height: 2px;
  border-radius: 999px;
  background: #5f5fc4;
  opacity: 0;
  transform: scaleX(0);
  transform-origin: left center;
  transition: opacity 180ms ease,
    transform 180ms ease;
}

.kf-gridlist > li:nth-child(n + 4)::before {
  top: 30px;
}

.kf-gridlist > li:hover {
  transform: translateY(-3px);
}

.kf-gridlist > li:hover::before {
  opacity: 1;
  transform: scaleX(1);
}

.kf-article-link {
  position: relative;
  z-index: 1;
  display: inline-block;
  padding-right: 22px;
  color: #34356a;
  font-size: 19px;
  line-height: 1.22;
  font-weight: 560;
  letter-spacing: -0.006em;
  text-decoration: none;
  transition: color 180ms ease,
    transform 180ms ease;
}

.kf-article-link::after {
  content: "→";
  position: absolute;
  right: 0;
  top: 0.04em;
  color: #5f5fc4;
  opacity: 0;
  transform: translateX(-5px);
  transition: opacity 180ms ease,
    transform 180ms ease;
}

.kf-gridlist > li:hover .kf-article-link {
  color: #18181c;
  transform: translateX(2px);
  text-decoration: none;
}

.kf-gridlist > li:hover .kf-article-link::after {
  opacity: 1;
  transform: translateX(0);
}

.kf-gridlist > li:hover .kf-article-excerpt {
  color: rgba(24, 24, 28, 0.78);
}

.kf-article-excerpt {
  position: relative;
  z-index: 1;
  margin: 18px 0 0;
  color: rgba(24, 24, 28, 0.68);
  font-size: 16.5px;
  line-height: 1.42;
  font-weight: 430;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  word-break: break-word;
  max-height: 2.84em;
}

/* =========================
   Buttons
   ========================= */
.kf-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 0 20px;
  border-radius: 999px;
  text-decoration: none;
  font-size: 15px;
  line-height: 1;
  font-weight: 700;
  transition: transform 180ms ease,
    background 180ms ease,
    border-color 180ms ease,
    color 180ms ease;
}

.kf-btn--primary {
  color: #ffffff;
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: radial-gradient(circle at 10% 0%, rgba(255, 255, 255, 0.16), transparent 42%),
    #171717;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.12),
    0 12px 28px rgba(24, 24, 28, 0.14);
}

.kf-btn--primary:hover, .kf-btn--primary:focus {
  transform: translateY(-1px);
  color: #ffffff;
  background: #252525;
  text-decoration: none;
}

#kf-home-signin-btn {
  position: relative;
  z-index: 21;
  pointer-events: auto;
}

/* =========================
   Knowledge Hub loading / empty text
   ========================= */
.kf-kbhub p {
  color: rgba(24, 24, 28, 0.62);
}

.kf-sec > div > p {
  margin: 0;
  padding: 18px 0;
  color: rgba(24, 24, 28, 0.58);
  font-size: 16px;
}

/* =========================
   Featured resources carousel
   ========================= */
.kf-feature-carousel {
  width: min(1320px, 100%);
  margin: 78px auto 0;
  color: #18181c;
}

.kf-feature-carousel__intro {
  max-width: 780px;
  margin: 0 auto 34px;
  text-align: center;
}

.kf-feature-carousel__eyebrow {
  margin: 0 0 13px;
  color: #5f61ff !important;
  font-size: 15px;
  line-height: 1;
  font-weight: 560;
  letter-spacing: 0.125em;
  text-transform: uppercase;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  font-synthesis: none;
}

.kf-feature-carousel__eyebrow::before {
  content: "/ / / /";
  margin-right: 12px;
  letter-spacing: 0;
  color: #5f61ff;
}

.kf-feature-carousel__title {
  margin: 0;
  font-family: var(--kf-font-hero-h1) !important;
  font-size: clamp(46px, 4.8vw, 74px);
  line-height: 0.98;
  font-weight: 300;
  background: linear-gradient(
    115deg,
    #171717 0%,
    #34356a 34%,
    #5f5fc4 58%,
    #171717 100%
  );
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  -webkit-text-fill-color: transparent;
}

.kf-feature-carousel__lede {
  max-width: 680px;
  margin: 18px auto 0;
  color: rgba(24, 24, 28, 0.66);
  font-size: 19px;
  line-height: 1.42;
  font-weight: 460;
}

.kf-feature-carousel__tabs {
  width: min(980px, 100%);
  margin: 0 auto 34px;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 16px;
}

.kf-feature-carousel__tab {
  appearance: none;
  position: relative;
  min-height: 54px;
  padding: 0 20px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 0;
  border-bottom: 1px solid rgba(24, 24, 28, 0.16);
  border-radius: 0;
  color: rgba(24, 24, 28, 0.46);
  font-size: 19px;
  line-height: 1;
  font-weight: 560;
  text-align: center;
  background: transparent;
  box-shadow: none;
  transition: color 180ms ease,
    border-color 180ms ease,
    opacity 180ms ease;
}

.kf-feature-carousel__tab:hover {
  color: rgba(24, 24, 28, 0.78);
}

.kf-feature-carousel__tab.is-active {
  color: #18181c;
  border-bottom-color: #5f5fc4;
  font-weight: 580;
  -webkit-font-smoothing: antialiased;
  text-rendering: geometricPrecision;
  font-synthesis: none;
}

.kf-feature-carousel__tab.is-active::after {
  content: "";
  position: absolute;
  right: -1px;
  bottom: -1px;
  width: 1px;
  height: 9px;
  background: #5f5fc4;
}

.kf-feature-carousel__tab:focus-visible {
  outline: 2px solid rgba(95, 95, 196, 0.7);
  outline-offset: 5px;
  border-radius: 10px;
}

.kf-feature-carousel__stage {
  position: relative;
  width: 100vw;
  max-width: none;
  height: 400px;
  left: 50%;
  transform: translateX(-50%);
  overflow: hidden;
}

.kf-feature-card {
  position: absolute;
  top: 0;
  left: 50%;
  width: min(980px, calc(100vw - 160px));
  min-height: 390px;
  overflow: hidden;
  border-radius: 28px;
  border: 1px solid rgba(255, 255, 255, 0.58);
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.72), rgba(255, 255, 255, 0.3)),
    rgba(255, 255, 255, 0.22);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.78),
    0 30px 86px rgba(24, 24, 28, 0.16);
  backdrop-filter: blur(24px) saturate(150%);
  -webkit-backdrop-filter: blur(24px) saturate(150%);
  transform: translateX(-50%) scale(0.86);
  opacity: 0;
  pointer-events: none;
  transition: transform 360ms ease,
    opacity 360ms ease,
    filter 360ms ease,
    box-shadow 360ms ease;
}

.kf-feature-card.is-active {
  z-index: 3;
  opacity: 1;
  pointer-events: auto;
  transform: translateX(-50%) scale(1);
  filter: none;
}

.kf-feature-card.is-prev {
  z-index: 1;
  opacity: 0.34;
  transform: translateX(calc(-50% - 760px)) scale(0.86);
  filter: saturate(0.72) blur(0.2px);
}

.kf-feature-card.is-next {
  z-index: 1;
  opacity: 0.34;
  transform: translateX(calc(-50% + 760px)) scale(0.86);
  filter: saturate(0.72) blur(0.2px);
}

.kf-feature-card.is-hidden {
  z-index: 0;
  opacity: 0;
  transform: translateX(-50%) scale(0.82);
}

.kf-feature-card::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.2), transparent 34%),
    radial-gradient(circle at 85% 10%, rgba(153, 255, 244, 0.16), transparent 28%),
    radial-gradient(circle at 22% 92%, rgba(95, 95, 196, 0.18), transparent 36%);
}

.kf-feature-card__media {
  position: absolute;
  inset: 0;
  display: block;
}

.kf-feature-card__media img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.kf-feature-card--techdays {
  height: auto;
  min-height: 390px;
  top: 0;
  padding: 0;

  display: flex;
  align-items: stretch;
  justify-content: center;

  color: #ffffff;

  border: 0;
  background: transparent;
  box-shadow: none;

  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

.kf-feature-card--techdays::before {
  content: none;
}

.kf-techdays-banner {
  position: relative;
  z-index: 2;

  width: 100%;
  height: 100%;
  min-height: 390px;

  overflow: hidden;

  display: grid;
  grid-template-rows:
    minmax(0, 1.35fr)
    auto
    minmax(0, 1fr);
  align-items: stretch;

  border-radius: 28px;

  color: #ffffff !important;
  text-decoration: none;

  background:
    linear-gradient(
      90deg,
      #34359a 0%,
      #27287f 18%,
      #15164a 48%,
      #0a0b2e 72%,
      #171622 100%
    );

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.18),
    inset 0 -1px 0 rgba(255, 255, 255, 0.08),
    0 18px 48px rgba(24, 24, 28, 0.18);
}

.kf-techdays-banner, .kf-techdays-banner:hover, .kf-techdays-banner:focus {
  color: #ffffff !important;
  text-decoration: none;
}

.kf-techdays-banner__top {
  padding: 0 30px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
}

.kf-techdays-banner__brand {
  min-width: 0;
}

.kf-techdays-banner__logo {
  display: block;
  width: clamp(260px, 34vw, 430px);
  max-width: 100%;
  height: auto;
}

.kf-techdays-banner__button {
  flex: 0 0 auto;
  min-height: 45px;
  padding: 0 26px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  color: #000000 !important;
  -webkit-text-fill-color: #000000 !important;
  text-shadow: none !important;
  font-size: 18px;
  line-height: 1;
  font-weight: 700;
  letter-spacing: 0.01em;
  background: #99fff4;
  box-shadow: none;
  transition: transform 180ms ease,
    background 180ms ease;
}

.kf-techdays-banner:hover .kf-techdays-banner__button {
  transform: translateY(-1px);
  background: #b4fff8;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.72),
    0 18px 40px rgba(0, 0, 0, 0.2);
}

.kf-techdays-banner__rule {
  height: 1px;
  margin: 0;
  background: rgba(255, 255, 255, 0.34);
}

.kf-techdays-banner__bottom {
  padding: 0 30px;
  display: grid;
  grid-template-columns: 1fr 1.05fr 2.35fr;
  align-items: stretch;
  gap: 32px;
}

.kf-techdays-banner__label, .kf-techdays-banner__meta, .kf-techdays-banner__text {
  margin: 0;
  color: #ffffff !important;
  -webkit-text-fill-color: currentColor;
}

.kf-techdays-banner__label {
  min-height: 0;
  margin: 0;
  display: flex;
  align-items: center;
  color: rgba(255, 255, 255, 0.96) !important;
  -webkit-text-fill-color: currentColor;
  font-size: 20px;
  line-height: 1.06;
  font-weight: 420;
  letter-spacing: -0.01em;
}

.kf-techdays-banner__meta {
  position: relative;
  align-self: stretch;
  min-height: 0;
  padding-left: 26px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  border-left: 0;
  color: rgba(255, 255, 255, 0.9) !important;
  -webkit-text-fill-color: currentColor;
  font-size: 15px;
  line-height: 1.16;
  font-weight: 560;
  letter-spacing: 0.002em;
}

.kf-techdays-banner__meta::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 1px;
  height: 52px;
  background: rgba(255, 255, 255, 0.54);
  transform: translateY(-50%);
}

.kf-techdays-banner__text {
  position: relative;
  align-self: stretch;
  min-height: 0;
  padding-left: 34px;
  display: flex;
  align-items: center;
  border-left: 0;
  color: rgba(255, 255, 255, 0.96) !important;
  -webkit-text-fill-color: currentColor;
  font-size: 19px;
  line-height: 1.12;
  font-weight: 430;
  letter-spacing: -0.012em;
}

.kf-techdays-banner__text::before {
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  width: 1px;
  height: 52px;
  background: rgba(255, 255, 255, 0.54);
  transform: translateY(-50%);
}

.kf-kbhub .kf-techdays-banner .kf-techdays-banner__keyfactor, .kf-kbhub .kf-techdays-banner .kf-techdays-banner__label {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  opacity: 1 !important;
  filter: none !important;
}

.kf-feature-card--insider {
  color: #ffffff;
  background: radial-gradient(circle at 12% 12%, rgba(122, 122, 237, 0.6), transparent 34%),
    radial-gradient(circle at 92% 82%, rgba(153, 255, 244, 0.24), transparent 30%),
    linear-gradient(120deg, #15162a 0%, #34356a 50%, #5f5fc4 100%);
}

.kf-feature-card--insider::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background: linear-gradient(90deg, rgba(0, 0, 0, 0.34), transparent 64%),
    radial-gradient(circle at 100% 0%, rgba(255, 255, 255, 0.22), transparent 36%);
}

.kf-feature-card--kfu {
  background: rgba(255, 255, 255, 0.68);
}

.kf-feature-card__bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  background-image: linear-gradient(
      90deg,
      rgba(255, 255, 255, 0.98) 0%,
      rgba(255, 255, 255, 0.9) 36%,
      rgba(255, 255, 255, 0.58) 62%,
      rgba(255, 255, 255, 0.16) 100%
    ),
    url("/hc/theming_assets/01KTQ306WYQMBZPC1SCS896B48");
  background-size: cover;
  background-position: center right;
}

.kf-feature-card__content {
  position: relative;
  z-index: 2;
  min-height: 390px;
  padding: 54px 58px;
  display: grid;
  grid-template-columns: 150px minmax(0, 1fr);
  align-items: center;
  gap: 44px;
}

.kf-feature-card--kfu .kf-feature-card__content {
  max-width: 650px;
  display: flex;
  align-items: center;
}

.kf-feature-card--insider .kf-feature-card__mark {
  display: flex;
  align-items: center;
  justify-content: center;

  flex: 0 0 auto;

  width: clamp(170px, 20vw, 260px);
}

.kf-feature-card--insider .kf-feature-card__mark img {
  display: block;

  width: 100%;
  height: auto;

  object-fit: contain;
}

.kf-feature-card__eyebrow {
  margin: 0 0 13px;
  color: rgba(52, 53, 106, 0.82);
  font-size: 13px;
  line-height: 1;
  font-weight: 560;
  letter-spacing: 0.125em;
  text-transform: uppercase;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  font-synthesis: none;
}

.kf-feature-card--insider .kf-feature-card__eyebrow {
  color: rgba(255, 255, 255, 0.76);
}

.kf-feature-card--insider .kf-feature-card__content {
  grid-template-columns: 220px minmax(0, 1fr);
  gap: 52px;
}

.kf-feature-card--insider .kf-feature-card__mark {
  width: 220px;
}

.kf-feature-card__title {
  margin: 0;
  color: #18181c;
  font-size: clamp(36px, 3.2vw, 56px);
  line-height: 0.98;
  font-weight: 520;
  letter-spacing: -0.022em;
}

.kf-feature-card--insider .kf-feature-card__title {
  color: #ffffff;
}

.kf-feature-card__text {
  max-width: 620px;
  margin: 18px 0 0;
  color: rgba(24, 24, 28, 0.68);
  font-size: 19px;
  line-height: 1.42;
  font-weight: 450;
}

.kf-feature-card--insider .kf-feature-card__text {
  color: rgba(255, 255, 255, 0.78);
}

.kf-feature-card__button {
  margin-top: 26px;
  min-height: 50px;
  padding: 0 22px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  color: #ffffff;
  font-size: 15px;
  line-height: 1;
  font-weight: 720;
  text-decoration: none;
  background: radial-gradient(circle at 10% 0%, rgba(255, 255, 255, 0.16), transparent 42%),
    #171717;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.12),
    0 14px 34px rgba(24, 24, 28, 0.18);
  transition: transform 180ms ease,
    background 180ms ease,
    box-shadow 180ms ease;
}

.kf-feature-card__button::after {
  content: "→";
  transform: translateY(-1px);
}

.kf-feature-card__button:hover {
  transform: translateY(-1px);
  color: #ffffff;
  background: #252525;
  text-decoration: none;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.14),
    0 18px 40px rgba(24, 24, 28, 0.2);
}

@media (max-width: 800px) {
  .kf-feature-card--insider .kf-feature-card__content {
    grid-template-columns: 170px minmax(0, 1fr);
    gap: 32px;
    padding: 44px 40px;
  }

  .kf-feature-card--insider .kf-feature-card__mark {
    width: 170px;
  }
}

@media (max-width: 640px) {
  .kf-feature-card--insider .kf-feature-card__content {
    grid-template-columns: 1fr;
    align-content: center;
    gap: 24px;
    padding: 34px 28px;
  }

  .kf-feature-card--insider .kf-feature-card__mark {
    width: 180px;
    justify-self: start;
  }
}

/* =========================================================
   User Profile page
   ========================================================= */

/* =========================
   Page shell
   ========================= */

.kf-profile-page {
  position: relative;
  min-height: 100vh;
  padding: 20px 20px 0;

  color: #18181c;

  background:
    radial-gradient(
      circle at 84% 16%,
      rgba(165, 167, 255, 0.14),
      transparent 28%
    ),
    radial-gradient(
      circle at 12% 72%,
      rgba(95, 97, 255, 0.06),
      transparent 30%
    ),
    linear-gradient(
      180deg,
      var(--kf-mist-white) 0%,
      #ffffff 20%,
      #eef0ff 50%,
      #ffffff 88%,
      var(--kf-mist-white) 100%
    );
}

body:has(.kf-profile-page) > .page-heading,
body:has(.kf-profile-page) > .container,
body:has(.kf-profile-page) .container-divider,
body:has(.kf-profile-page) .sub-nav {
  display: none !important;
}


/* =========================
   Hero
   ========================= */

.kf-profile-hero {
  position: relative;
  padding: 58px 40px 38px;

  color: #18181c;
  background: transparent;
}

.kf-profile-hero__inner {
  width: min(1120px, 100%);
  margin: 0 auto;
}


/* Eyebrow */

.kf-profile-eyebrow {
  width: fit-content;
  margin: 0 0 18px;

  display: flex;
  align-items: center;
  gap: 14px;

  color: #5f61ff !important;

  font-size: 15px;
  line-height: 1;
  font-weight: 560;
  letter-spacing: 0.125em;
  text-transform: uppercase;

  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  font-synthesis: none;
}

.kf-profile-eyebrow::before {
  content: "/ / / /";

  flex: 0 0 auto;

  color: #5f61ff;
  letter-spacing: 0;
  line-height: 1;
}


/* Identity row */

.kf-profile-identity {
  display: grid;
  grid-template-columns: 104px minmax(0, 1fr);
  align-items: center;
  gap: 28px;
}

.kf-profile-avatar {
  position: relative;

  width: 104px;
  height: 104px;
  padding: 6px;

  overflow: hidden;

  border-radius: 31px;
  border: 1px solid rgba(255, 255, 255, 0.72);

  background:
    radial-gradient(
      circle at 18% 0%,
      rgba(255, 255, 255, 0.72),
      transparent 38%
    ),
    linear-gradient(
      135deg,
      rgba(255, 255, 255, 0.58),
      rgba(255, 255, 255, 0.18)
    ),
    rgba(255, 255, 255, 0.24);

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.88),
    0 18px 42px rgba(38, 39, 78, 0.11);

  backdrop-filter: blur(24px) saturate(150%);
  -webkit-backdrop-filter: blur(24px) saturate(150%);
}

.kf-profile-avatar::before {
  content: "";

  position: absolute;
  inset: 0;

  border-radius: inherit;

  pointer-events: none;

  background:
    linear-gradient(
      135deg,
      rgba(255, 255, 255, 0.34),
      transparent 42%
    );
}

.kf-profile-avatar img {
  position: relative;
  z-index: 1;

  width: 100%;
  height: 100%;

  display: block;
  object-fit: cover;

  border-radius: 25px;

  background: #ffffff;
}

.kf-profile-identity__content {
  min-width: 0;
  max-width: none;
}

.kf-profile-heading-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 280px;
  align-items: center;
  gap: 64px;
}

.kf-profile-heading-row__content {
  min-width: 0;
}

.kf-profile-edit-panel {
  width: 280px;
  padding: 22px 24px;

  align-self: center;
  justify-self: end;

  border: 1px solid rgba(24, 24, 28, 0.12);
  border-radius: 24px;

  background: transparent;
  box-shadow: none;
}

.kf-profile-edit-panel__eyebrow {
  margin: 0 0 8px;

  color: rgba(95, 97, 255, 0.84);

  font-size: 12px;
  line-height: 1;
  font-weight: 650;
  letter-spacing: 0.105em;
  text-transform: uppercase;
}

.kf-profile-edit-panel__title {
  margin: 0;

  color: #18181c;

  font-family: var(--kf-font-h2) !important;
  font-size: 24px;
  line-height: 1.05;
  font-weight: 300;
  letter-spacing: -0.008em;
}

.kf-profile-edit-panel__text {
  margin: 12px 0 0;

  color: rgba(24, 24, 28, 0.56);

  font-size: 14px;
  line-height: 1.42;
  font-weight: 440;
}

.kf-profile-hero-actions {
  margin-top: 18px;
}

.kf-profile-edit-panel .kf-profile-hero-actions,
.kf-profile-edit-panel .kf-profile-hero-actions > * {
  width: 100%;
}

.kf-profile-edit-panel .kf-profile-hero-actions a,
.kf-profile-edit-panel .kf-profile-hero-actions button,
.kf-profile-edit-panel .kf-profile-hero-actions .button,
.kf-profile-edit-panel .kf-profile-hero-actions input[type="submit"] {
  width: 100%;
}

/*
 * Zendesk may render the action as a link, button,
 * or inside a small wrapper.
 */

.kf-profile-hero-actions > * {
  margin: 0;
}

.kf-profile-hero-actions a,
.kf-profile-hero-actions button,
.kf-profile-hero-actions .button,
.kf-profile-hero-actions input[type="submit"] {
  min-width: 132px;
  min-height: 48px;
  padding: 0 23px;

  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;

  border: 1px solid rgba(255, 255, 255, 0.18) !important;
  border-radius: 999px;

  color: #ffffff !important;

  font-family: var(--kf-font-body) !important;
  font-size: 14.5px;
  line-height: 1;
  font-weight: 650;
  letter-spacing: 0.01em;
  text-decoration: none;
  text-transform: none;

  background:
    radial-gradient(
      circle at 10% 0%,
      rgba(255, 255, 255, 0.15),
      transparent 42%
    ),
    #171717 !important;

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.12),
    0 12px 28px rgba(24, 24, 28, 0.14) !important;

  cursor: pointer;

  transition:
    transform 180ms ease,
    color 180ms ease,
    background 180ms ease,
    border-color 180ms ease,
    box-shadow 180ms ease;
}

.kf-profile-hero-actions a:hover,
.kf-profile-hero-actions a:focus,
.kf-profile-hero-actions button:hover,
.kf-profile-hero-actions button:focus,
.kf-profile-hero-actions .button:hover,
.kf-profile-hero-actions .button:focus,
.kf-profile-hero-actions input[type="submit"]:hover,
.kf-profile-hero-actions input[type="submit"]:focus {
  transform: translateY(-1px);

  color: #ffffff !important;
  border-color: #5f61ff !important;
  background: #5f61ff !important;

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.20),
    0 12px 28px rgba(95, 97, 255, 0.24) !important;

  text-decoration: none;
}

.kf-profile-title {
  max-width: 760px;
  margin: 0;

  color: #18181c;

  font-family: var(--kf-font-h1) !important;
  font-size: clamp(42px, 4.8vw, 68px);
  line-height: 0.98;
  font-weight: 200;
  letter-spacing: -0.012em;

  overflow-wrap: anywhere;

  text-rendering: geometricPrecision;
  -webkit-font-smoothing: antialiased;
  font-synthesis: none;
}

.kf-profile-description {
  max-width: 720px;
  margin: 14px 0 0;

  color: rgba(24, 24, 28, 0.64);

  font-size: 17.5px;
  line-height: 1.44;
  font-weight: 450;
}

.kf-profile-support-link {
  width: fit-content;
  margin-top: 15px;

  display: inline-flex;
  align-items: center;
  gap: 7px;

  color: #5f61ff;

  font-size: 14px;
  line-height: 1;
  font-weight: 620;

  text-decoration: none;

  transition:
    color 180ms ease,
    transform 180ms ease;
}

.kf-profile-support-link span {
  font-size: 15px;
  transform: translateY(-1px);
}

.kf-profile-support-link:hover {
  color: #34356a;
  transform: translateY(-1px);
  text-decoration: none;
}


/* =========================
   Main layout
   ========================= */

.kf-profile-main {
  width: min(1120px, calc(100vw - 80px));
  margin: 14px auto 0;
  padding: 0 0 96px;
}

.kf-profile-layout {
  display: block;
}


/* =========================
   Shared panels
   ========================= */

.kf-profile-panel {
  position: relative;
  overflow: hidden;

  padding: 32px;

  border-radius: 30px;
  border: 1px solid rgba(255, 255, 255, 0.64);

  color: #18181c;

  background:
    radial-gradient(
      circle at 14% 0%,
      rgba(255, 255, 255, 0.62),
      transparent 34%
    ),
    radial-gradient(
      circle at 100% 100%,
      rgba(165, 167, 255, 0.14),
      transparent 32%
    ),
    linear-gradient(
      135deg,
      rgba(255, 255, 255, 0.50),
      rgba(255, 255, 255, 0.18)
    ),
    rgba(255, 255, 255, 0.20);

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.86),
    0 18px 46px rgba(38, 39, 78, 0.075);

  backdrop-filter: blur(28px) saturate(160%);
  -webkit-backdrop-filter: blur(28px) saturate(160%);
}

.kf-profile-panel::before {
  content: "";

  position: absolute;
  inset: 0;

  pointer-events: none;

  background:
    linear-gradient(
      135deg,
      rgba(255, 255, 255, 0.36),
      transparent 36%
    ),
    linear-gradient(
      180deg,
      rgba(255, 255, 255, 0.16),
      transparent 48%
    );
}

.kf-profile-panel > * {
  position: relative;
  z-index: 1;
}

.kf-profile-panel__header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 22px;
}

.kf-profile-panel__eyebrow {
  margin: 0 0 9px;

  color: rgba(95, 97, 255, 0.84);

  font-size: 12.5px;
  line-height: 1;
  font-weight: 650;
  letter-spacing: 0.105em;
  text-transform: uppercase;
}

.kf-profile-panel__title {
  margin: 0;

  color: #18181c;

  font-family: var(--kf-font-h2) !important;
  font-size: 30px;
  line-height: 1.04;
  font-weight: 300;
  letter-spacing: -0.008em;
}

.kf-profile-panel__text {
  max-width: 600px;
  margin: 18px 0 0;

  color: rgba(24, 24, 28, 0.62);

  font-size: 16px;
  line-height: 1.48;
  font-weight: 440;
}


/* =========================
   Quick links
   ========================= */

.kf-profile-panel--links {
  display: block;
}

.kf-profile-quick-links {
  margin-top: 24px;

  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.kf-profile-quick-link {
  position: relative;

  min-height: 76px;
  padding: 15px 15px 15px 17px;

  display: grid;
  grid-template-columns: minmax(0, 1fr) 34px;
  align-items: center;
  gap: 16px;

  border-radius: 20px;
  border: 1px solid rgba(24, 24, 28, 0.08);

  color: #18181c;
  text-decoration: none;

  background: rgba(255, 255, 255, 0.34);

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.72);

  transition:
    transform 180ms ease,
    color 180ms ease,
    background 180ms ease,
    border-color 180ms ease,
    box-shadow 180ms ease;
}

.kf-profile-quick-link:hover,
.kf-profile-quick-link:focus {
  transform: translateY(-2px);

  color: #18181c;
  border-color: rgba(95, 97, 255, 0.16);

  background: rgba(255, 255, 255, 0.58);

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.82),
    0 12px 26px rgba(38, 39, 78, 0.065);

  text-decoration: none;
}

.kf-profile-quick-link__content {
  min-width: 0;

  display: block;
}

.kf-profile-quick-link__title {
  display: block;

  color: #34356a;

  font-size: 16px;
  line-height: 1.18;
  font-weight: 650;
}

.kf-profile-quick-link__text {
  display: block;
  margin-top: 5px;

  color: rgba(24, 24, 28, 0.54);

  font-size: 13.5px;
  line-height: 1.3;
  font-weight: 440;
}

.kf-profile-quick-link__arrow {
  width: 34px;
  height: 34px;

  display: inline-flex;
  align-items: center;
  justify-content: center;
  justify-self: end;

  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.48);

  color: rgba(24, 24, 28, 0.52);

  background:
    linear-gradient(
      135deg,
      rgba(255, 255, 255, 0.62),
      rgba(255, 255, 255, 0.22)
    ),
    rgba(255, 255, 255, 0.18);

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.78),
    0 8px 18px rgba(38, 39, 78, 0.05);

  transition:
    transform 180ms ease,
    color 180ms ease,
    background 180ms ease,
    border-color 180ms ease,
    box-shadow 180ms ease;
}

.kf-profile-quick-link:hover .kf-profile-quick-link__arrow,
.kf-profile-quick-link:focus .kf-profile-quick-link__arrow {
  transform: translateX(3px);

  color: #ffffff;
  border-color: rgba(255, 255, 255, 0.18);

  background:
    linear-gradient(
      135deg,
      rgba(95, 97, 255, 0.96),
      rgba(52, 53, 106, 0.94)
    ),
    #5f61ff;

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.20),
    0 10px 22px rgba(95, 97, 255, 0.20);
}


/* =========================
   Help Center participation
   ========================= */

.kf-profile-panel--participation {
  margin-top: 24px;
  padding: 30px 32px 32px;
}

.kf-profile-participation__intro {
  padding-bottom: 24px;

  display: grid;
  grid-template-columns: minmax(250px, 0.72fr) minmax(0, 1.28fr);
  align-items: end;
  gap: 40px;

  border-bottom: 1px solid rgba(24, 24, 28, 0.10);
}

.kf-profile-participation__description {
  max-width: 650px;
  margin: 0;

  color: rgba(24, 24, 28, 0.56);

  font-size: 14.5px;
  line-height: 1.46;
  font-weight: 440;
}

.kf-profile-participation-stats {
  margin: 0;
  padding: 28px 0 0;

  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.kf-profile-participation-stat {
  min-width: 0;
  margin: 0;
  padding: 0 24px;

  display: grid;
  grid-template-rows: auto auto 1fr;
  align-content: start;

  border-left: 1px solid rgba(24, 24, 28, 0.09);
}

.kf-profile-participation-stat:first-child {
  padding-left: 0;
  border-left: 0;
}

.kf-profile-participation-stat:last-child {
  padding-right: 0;
}

.kf-profile-participation-stat dt {
  margin: 0;

  color: rgba(24, 24, 28, 0.48);

  font-size: 12px;
  line-height: 1.25;
  font-weight: 650;
  letter-spacing: 0.07em;
  text-transform: uppercase;
}

.kf-profile-participation-stat dd {
  margin: 12px 0 0;

  color: #18181c;

  font-family: var(--kf-font-h2);
  font-size: 34px;
  line-height: 1;
  font-weight: 300;
}

.kf-profile-participation-stat dd.kf-profile-participation-stat__date {
  color: #18181c;

  font-family: var(--kf-font-h2);
  font-size: 34px;
  line-height: 1;
  font-weight: 300;
}

.kf-profile-participation-stat span {
  display: block;
  margin-top: 12px;

  color: rgba(24, 24, 28, 0.50);

  font-size: 13px;
  line-height: 1.38;
  font-weight: 430;
}


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

@media (max-width: 1000px) {

  .kf-profile-participation-stats {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    row-gap: 26px;
  }

  .kf-profile-participation-stat:nth-child(3) {
    padding-left: 0;
    border-left: 0;
  }

  .kf-profile-participation-stat:nth-child(n + 3) {
    padding-top: 26px;
    border-top: 1px solid rgba(24, 24, 28, 0.09);
  }

}


@media (max-width: 800px) {

  .kf-profile-page {
    padding: 12px 12px 0;
  }

  .kf-profile-hero {
    padding: 44px 26px 32px;
  }

  .kf-profile-main {
    width: calc(100vw - 48px);
    padding-bottom: 72px;
  }

  .kf-profile-layout {
    grid-template-columns: 1fr;
  }
  
  .kf-profile-heading-row {
  grid-template-columns: 1fr;
  align-items: start;
  gap: 24px;
}

.kf-profile-edit-panel {
  width: min(420px, 100%);
  align-self: start;
}

.kf-profile-quick-links {
  grid-template-columns: 1fr;
}

  .kf-profile-panel {
    padding: 28px;
    border-radius: 28px;
  }

  .kf-profile-panel--participation {
    padding: 28px;
  }

  .kf-profile-participation__intro {
    grid-template-columns: 1fr;
    align-items: start;
    gap: 15px;
  }

}


@media (max-width: 640px) {

  .kf-profile-hero {
    padding: 30px 20px 28px;
  }

  .kf-profile-eyebrow {
    gap: 10px;
    margin-bottom: 16px;

    font-size: 12px;
    line-height: 1.25;
    font-weight: 560;
    letter-spacing: 0.105em;
  }

  .kf-profile-identity {
    grid-template-columns: 1fr;
    gap: 20px;
  }

  .kf-profile-avatar {
    width: 92px;
    height: 92px;

    border-radius: 28px;
  }

  .kf-profile-avatar img {
    border-radius: 22px;
  }

  .kf-profile-title {
    font-size: clamp(38px, 12vw, 54px);
    line-height: 1;
  }

  .kf-profile-description {
    font-size: 16px;
  }

  .kf-profile-main {
    width: calc(100vw - 36px);
    margin-top: 4px;
    padding-bottom: 58px;
  }

  .kf-profile-panel,
  .kf-profile-panel--participation {
    padding: 22px;
    border-radius: 24px;
  }

  .kf-profile-panel__title {
    font-size: 26px;
  }

  .kf-profile-actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .kf-profile-actions a,
  .kf-profile-actions button,
  .kf-profile-actions .button,
  .kf-profile-actions input[type="submit"] {
    width: 100%;
  }

  .kf-profile-participation-stats {
    grid-template-columns: 1fr;
    padding-top: 4px;
  }

  .kf-profile-participation-stat,
  .kf-profile-participation-stat:first-child,
  .kf-profile-participation-stat:nth-child(3),
  .kf-profile-participation-stat:last-child {
    padding: 22px 0;
    border-left: 0;
    border-top: 1px solid rgba(24, 24, 28, 0.09);
  }

  .kf-profile-participation-stat:first-child {
    border-top: 0;
  }

  .kf-profile-participation-stat dd {
    font-size: 31px;
  }

.kf-profile-hero-actions a,
.kf-profile-hero-actions button,
.kf-profile-hero-actions .button,
.kf-profile-hero-actions input[type="submit"] {
  width: 100%;
}
  
  .kf-profile-edit-panel {
  width: 100%;
  padding: 20px;
  border-radius: 22px;
}

.kf-profile-edit-panel__title {
  font-size: 22px;
}

.kf-profile-edit-panel__text {
  font-size: 13.5px;
}

}

/* =========================================================
   My Team page
   ========================================================= */

/* =========================
   Page shell
   ========================= */

.kf-team-page {
  position: relative;
  min-height: 100vh;
  padding: 20px 20px 0;

  color: #18181c;

  background:
    radial-gradient(
      circle at 84% 16%,
      rgba(165, 167, 255, 0.14),
      transparent 28%
    ),
    radial-gradient(
      circle at 12% 72%,
      rgba(95, 97, 255, 0.06),
      transparent 30%
    ),
    linear-gradient(
      180deg,
      var(--kf-mist-white) 0%,
      #ffffff 20%,
      #eef0ff 50%,
      #ffffff 88%,
      var(--kf-mist-white) 100%
    );
}


/* Hide old Gotham page furniture if it survives around the template */

body:has(.kf-team-page) > .page-heading,
body:has(.kf-team-page) > .container,
body:has(.kf-team-page) .container-divider,
body:has(.kf-team-page) .sub-nav {
  display: none !important;
}


/* =========================
   Hero
   ========================= */

.kf-team-hero {
  position: relative;
  padding: 64px 40px 42px;

  color: #18181c;
  background: transparent;
}

.kf-team-hero__inner {
  width: min(1120px, 100%);
  margin: 0 auto;
}


/* Eyebrow */

.kf-team-eyebrow {
  width: fit-content;
  margin: 0 0 18px;

  display: flex;
  align-items: center;
  gap: 14px;

  color: #5f61ff !important;

  font-size: 15px;
  line-height: 1;
  font-weight: 560;
  letter-spacing: 0.125em;
  text-transform: uppercase;

  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  font-synthesis: none;
}

.kf-team-eyebrow::before {
  content: "/ / / /";

  flex: 0 0 auto;

  color: #5f61ff;
  letter-spacing: 0;
  line-height: 1;
}


/* Title */

.kf-team-title {
  max-width: 860px;
  margin: 0;

  color: #18181c;

  font-family: var(--kf-font-h1) !important;
  font-size: clamp(44px, 5vw, 72px);
  line-height: 0.98;
  font-weight: 200;
  letter-spacing: -0.012em;

  text-rendering: geometricPrecision;
  -webkit-font-smoothing: antialiased;
  font-synthesis: none;
}

.kf-team-description {
  max-width: 680px;
  margin: 16px 0 0;

  color: rgba(24, 24, 28, 0.64);

  font-size: 18px;
  line-height: 1.44;
  font-weight: 450;
}


/* =========================
   Main layout
   ========================= */

.kf-team-main {
  width: min(1120px, calc(100vw - 80px));
  margin: 8px auto 0;
  padding: 0 0 96px;
}


/* =========================
   Current-user info
   ========================= */

.kf-team-user-info {
  position: relative;
  overflow: hidden;

  margin-bottom: 0px;
  padding: 26px 28px;

  display: block;

  border-radius: 28px;
  border: 1px solid rgba(255, 255, 255, 0.64);

  color: #18181c;

  background:
    radial-gradient(
      circle at 14% 0%,
      rgba(255, 255, 255, 0.62),
      transparent 34%
    ),
    radial-gradient(
      circle at 100% 100%,
      rgba(165, 167, 255, 0.14),
      transparent 32%
    ),
    linear-gradient(
      135deg,
      rgba(255, 255, 255, 0.50),
      rgba(255, 255, 255, 0.18)
    ),
    rgba(255, 255, 255, 0.20);

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.86),
    0 18px 46px rgba(38, 39, 78, 0.075);

  backdrop-filter: blur(28px) saturate(160%);
  -webkit-backdrop-filter: blur(28px) saturate(160%);
}

.kf-team-user-info::before {
  content: "";

  position: absolute;
  inset: 0;

  pointer-events: none;

  background:
    linear-gradient(
      135deg,
      rgba(255, 255, 255, 0.36),
      transparent 36%
    ),
    linear-gradient(
      180deg,
      rgba(255, 255, 255, 0.16),
      transparent 48%
    );
}

.kf-team-user-info > * {
  position: relative;
  z-index: 1;
}

.kf-team-user-info__eyebrow {
  margin: 0 0 8px;

  color: rgba(95, 97, 255, 0.84);

  font-size: 12px;
  line-height: 1;
  font-weight: 650;
  letter-spacing: 0.105em;
  text-transform: uppercase;
}

.kf-team-user-info__intro h2 {
  margin: 0;

  color: #18181c;

  font-family: var(--kf-font-h2) !important;
  font-size: 25px;
  line-height: 1.05;
  font-weight: 300;
}

.kf-team-user-info__fields {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.team-admin-user-info__field {
  min-width: 0;
  padding: 2px 24px;

  display: flex;
  flex-direction: column;
  gap: 9px;

  border-left: 1px solid rgba(24, 24, 28, 0.09);
}

.team-admin-user-info__field:first-child {
  border-left: 0;
  padding-left: 0;
}

.team-admin-user-info__field:last-child {
  padding-right: 0;
}

.team-admin-user-info__label {
  color: rgba(24, 24, 28, 0.46);

  font-size: 11.5px;
  line-height: 1;
  font-weight: 650;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.team-admin-user-info__field > span:last-child {
  min-width: 0;

  overflow: hidden;
  text-overflow: ellipsis;

  color: #18181c;

  font-size: 15px;
  line-height: 1.28;
  font-weight: 520;
}


/* =========================
   Team layout
   ========================= */

.team-admin-grid {
  display: grid;
  grid-template-columns: minmax(0, 1.65fr) minmax(280px, 0.75fr);
  gap: 24px;

  align-items: start;
}


/* =========================
   Main cards
   ========================= */

.team-admin-grid__main {
  min-width: 0;

  display: grid;
  gap: 24px;
}

.team-admin-card {
  position: relative;
  overflow: hidden;

  padding: 30px 32px 32px;

  border-radius: 30px;
  border: 1px solid rgba(255, 255, 255, 0.64);

  color: #18181c;

  background:
    radial-gradient(
      circle at 14% 0%,
      rgba(255, 255, 255, 0.62),
      transparent 34%
    ),
    radial-gradient(
      circle at 100% 100%,
      rgba(165, 167, 255, 0.14),
      transparent 32%
    ),
    linear-gradient(
      135deg,
      rgba(255, 255, 255, 0.50),
      rgba(255, 255, 255, 0.18)
    ),
    rgba(255, 255, 255, 0.20);

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.86),
    0 18px 46px rgba(38, 39, 78, 0.075);

  backdrop-filter: blur(28px) saturate(160%);
  -webkit-backdrop-filter: blur(28px) saturate(160%);
}

.team-admin-card::before {
  content: "";

  position: absolute;
  inset: 0;

  pointer-events: none;

  background:
    linear-gradient(
      135deg,
      rgba(255, 255, 255, 0.36),
      transparent 36%
    ),
    linear-gradient(
      180deg,
      rgba(255, 255, 255, 0.16),
      transparent 48%
    );
}

.team-admin-card > * {
  position: relative;
  z-index: 1;
}

.team-admin-card--side::before {
  content: none;
}


/* Card headings */

.team-admin-card__header {
  margin: 0 0 22px;
  padding-bottom: 22px;

  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 22px;

  border-bottom: 1px solid rgba(24, 24, 28, 0.10);
}

.team-admin-card__eyebrow {
  margin: 0 0 8px;

  color: rgba(95, 97, 255, 0.84);

  font-size: 12px;
  line-height: 1;
  font-weight: 650;
  letter-spacing: 0.105em;
  text-transform: uppercase;
}

.team-admin-card__header h2 {
  margin: 0;

  color: #18181c;

  font-family: var(--kf-font-h2) !important;
  font-size: 29px;
  line-height: 1.05;
  font-weight: 300;
  letter-spacing: -0.008em;
}

.team-admin-card__header p {
  max-width: 520px;
  margin: 9px 0 0;

  color: rgba(24, 24, 28, 0.56);

  font-size: 14.5px;
  line-height: 1.4;
  font-weight: 440;
}

.team-admin-card__intro {
  max-width: 100%;
  margin: 10px 0 0;

  color: rgba(24, 24, 28, 0.56);

  font-size: 14px;
  line-height: 1.42;
  font-weight: 440;
}


/* =========================
   Contact list
   ========================= */

.team-admin-list {
  display: grid;
  gap: 10px;
}

.team-admin-list > p {
  margin: 0;
  padding: 24px 4px;

  color: rgba(24, 24, 28, 0.54);

  font-size: 15px;
  line-height: 1.4;
}

.team-contact-card {
  position: relative;

  min-height: 78px;
  padding: 16px 17px 16px 19px;

  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 18px;

  border-radius: 20px;
  border: 1px solid rgba(24, 24, 28, 0.08);

  background: rgba(255, 255, 255, 0.34);

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.72);

  transition:
    transform 180ms ease,
    background 180ms ease,
    border-color 180ms ease,
    box-shadow 180ms ease;
}

.team-contact-card:hover {
  transform: translateY(-2px);

  border-color: rgba(95, 97, 255, 0.14);

  background: rgba(255, 255, 255, 0.56);

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.84),
    0 12px 28px rgba(38, 39, 78, 0.06);
}

.team-contact-card__main {
  min-width: 0;
}

.team-contact-card__name {
  margin: 0;

  color: #18181c;

  font-size: 17px;
  line-height: 1.2;
  font-weight: 620;
}

.team-contact-card__meta {
  margin-top: 6px;

  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 7px;

  color: rgba(24, 24, 28, 0.52);

  font-size: 13.5px;
  line-height: 1.3;
  font-weight: 440;
}

.team-contact-card__meta span:nth-child(2) {
  color: rgba(24, 24, 28, 0.24);
}

.team-contact-card__meta span:last-child:not(:first-child) {
  min-height: 25px;
  padding: 0 10px;

  display: inline-flex;
  align-items: center;

  border-radius: 999px;

  color: #4f50b3;

  font-size: 11.5px;
  line-height: 1;
  font-weight: 650;
  letter-spacing: 0.035em;

  background: rgba(95, 97, 255, 0.09);
}


/* =========================
   Buttons
   ========================= */

.team-admin-btn {
  appearance: none;

  min-height: 40px;
  padding: 0 16px;

  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;

  border-radius: 999px;

  font-family: var(--kf-font-body) !important;
  font-size: 13.5px;
  line-height: 1;
  font-weight: 620;

  cursor: pointer;

  transition:
    transform 180ms ease,
    color 180ms ease,
    background 180ms ease,
    border-color 180ms ease,
    box-shadow 180ms ease;
}


/* Primary */

.team-admin-btn--primary {
  color: #ffffff !important;

  border: 1px solid rgba(255, 255, 255, 0.14);

  background:
    radial-gradient(
      circle at 10% 0%,
      rgba(255, 255, 255, 0.15),
      transparent 42%
    ),
    #171717;

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.12),
    0 10px 24px rgba(24, 24, 28, 0.13);
}

.team-admin-btn--primary:hover,
.team-admin-btn--primary:focus {
  transform: translateY(-1px);

  color: #ffffff !important;
  border-color: #5f61ff;
  background: #5f61ff;

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.20),
    0 11px 26px rgba(95, 97, 255, 0.22);
}


/* Secondary / edit */

.team-admin-btn--secondary {
  color: rgba(24, 24, 28, 0.68);

  border: 1px solid rgba(24, 24, 28, 0.10);

  background: rgba(255, 255, 255, 0.38);
}

.team-admin-btn--secondary:hover,
.team-admin-btn--secondary:focus {
  transform: translateY(-1px);

  color: #ffffff;

  border-color: rgba(255, 255, 255, 0.18);
  background: #5f61ff;
}


/* Ghost */

.team-admin-btn--ghost {
  color: rgba(24, 24, 28, 0.64);

  border: 1px solid rgba(24, 24, 28, 0.10);

  background: rgba(255, 255, 255, 0.34);
}

.team-admin-btn--ghost:hover,
.team-admin-btn--ghost:focus {
  color: #18181c;
  border-color: rgba(95, 97, 255, 0.16);
  background: rgba(255, 255, 255, 0.72);
}


/* Danger */

.team-admin-btn--danger {
  color: rgba(150, 42, 42, 0.78);

  border: 1px solid rgba(170, 49, 49, 0.13);

  background: rgba(255, 255, 255, 0.32);
}

.team-admin-btn--danger:hover,
.team-admin-btn--danger:focus {
  transform: translateY(-1px);

  color: #ffffff;

  border-color: #ba4545;
  background: #ba4545;

  box-shadow: 0 10px 22px rgba(186, 69, 69, 0.16);
}

.team-contact-card__actions {
  display: flex;
  align-items: center;
  gap: 7px;
}


/* =========================
   Contact limit
   ========================= */

.team-admin-limit-message {
  margin: -4px 0 18px !important;
  padding: 12px 14px !important;

  border-radius: 15px;

  color: rgba(24, 24, 28, 0.62) !important;

  font-size: 13.5px !important;
  line-height: 1.35;

  background: rgba(95, 97, 255, 0.07);
  border: 1px solid rgba(95, 97, 255, 0.10);
}


/* =========================
   How this works
   ========================= */

.team-admin-card--side {
  padding: 22px 24px;

  overflow: visible;

  border: 1px solid rgba(24, 24, 28, 0.12);
  border-radius: 24px;

  background: transparent;
  box-shadow: none;

  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

.team-admin-card--side .team-admin-card__header {
  margin: 0 0 18px;
  padding-bottom: 18px;

  align-items: flex-start;
}

.team-admin-info {
  list-style: none;
  margin: 0;
  padding: 0;

  display: grid;
  gap: 0;
}

.team-admin-info li {
  position: relative;

  margin: 0;
  padding: 15px 0 15px 29px;

  color: rgba(24, 24, 28, 0.58);

  font-size: 14.5px;
  line-height: 1.42;
  font-weight: 440;

  border-bottom: 1px solid rgba(24, 24, 28, 0.075);
}

.team-admin-info li:first-child {
  padding-top: 0;
}

.team-admin-info li:last-child {
  border-bottom: 0;
}

.team-admin-info li::before {
  content: "✓";

  position: absolute;
  left: 0;
  top: 15px;

  width: 19px;
  height: 19px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  border-radius: 999px;

  color: #ffffff;

  font-size: 11px;
  line-height: 1;
  font-weight: 750;

  background: #1a1a1a;
}

.team-admin-info li:first-child::before {
  top: 0;
}

.team-admin-note {
  margin-top: 14px;
  padding: 17px 18px;

  display: grid;
  gap: 7px;

  border-radius: 18px;
  border: 1px solid rgba(24, 24, 28, 0.10);

  background: transparent;
  box-shadow: none;
}

.team-admin-note strong {
  color: rgba(95, 97, 255, 0.84);

  font-size: 12px;
  line-height: 1;
  font-weight: 650;
  letter-spacing: 0.105em;
  text-transform: uppercase;
}

.team-admin-note span {
  color: rgba(24, 24, 28, 0.58);

  font-size: 13.5px;
  line-height: 1.42;
  font-weight: 440;
}


/* =========================
   Modals
   ========================= */

.team-admin-modal {
  position: fixed;
  inset: 0;
  z-index: 1000;

  display: none;
  align-items: center;
  justify-content: center;

  padding: 24px;
}

.team-admin-modal.is-open {
  display: flex;
}

.team-admin-modal__backdrop {
  position: absolute;
  inset: 0;

  background: rgba(20, 21, 34, 0.52);

  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
}

.team-admin-modal__dialog {
  position: relative;
  z-index: 1;

  width: min(520px, 100%);
  max-height: calc(100vh - 48px);
  overflow-y: auto;

  padding: 28px;

  border-radius: 30px;
  border: 1px solid rgba(255, 255, 255, 0.76);

  color: #18181c;

  background:
    radial-gradient(
      circle at 12% 0%,
      rgba(255, 255, 255, 0.74),
      transparent 34%
    ),
    linear-gradient(
      135deg,
      rgba(255, 255, 255, 0.96),
      rgba(248, 248, 255, 0.92)
    );

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.92),
    0 32px 90px rgba(20, 21, 34, 0.24);
}

.team-admin-modal__dialog--sm {
  width: min(430px, 100%);
}

.team-admin-modal__header {
  margin-bottom: 24px;
  padding-bottom: 20px;

  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 22px;

  border-bottom: 1px solid rgba(24, 24, 28, 0.10);
}

.team-admin-modal__header h2 {
  margin: 0;

  color: #18181c;

  font-family: var(--kf-font-h2) !important;
  font-size: 30px;
  line-height: 1;
  font-weight: 300;
}

.team-admin-modal__close {
  appearance: none;

  width: 38px;
  height: 38px;
  padding: 0;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  border-radius: 999px;
  border: 1px solid rgba(24, 24, 28, 0.09);

  color: rgba(24, 24, 28, 0.54);

  font-size: 25px;
  line-height: 1;
  font-weight: 300;

  background: rgba(255, 255, 255, 0.52);

  transition:
    color 180ms ease,
    background 180ms ease,
    transform 180ms ease;
}

.team-admin-modal__close:hover {
  transform: rotate(4deg);

  color: #ffffff;
  background: #5f61ff;
}


/* =========================
   Modal form
   ========================= */

.team-admin-form {
  display: grid;
  gap: 18px;
}

.team-admin-field {
  display: grid;
  gap: 8px;
}

.team-admin-field label {
  color: rgba(24, 24, 28, 0.72);

  font-size: 13px;
  line-height: 1;
  font-weight: 620;
}

.team-admin-field input,
.team-admin-field select {
  width: 100%;
  min-height: 48px;
  padding: 0 15px;

  border-radius: 14px;
  border: 1px solid rgba(24, 24, 28, 0.12);

  outline: 0;

  color: #18181c;

  font-family: var(--kf-font-body) !important;
  font-size: 15px;
  font-weight: 450;

  background: rgba(255, 255, 255, 0.70);

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.80);

  transition:
    border-color 180ms ease,
    box-shadow 180ms ease,
    background 180ms ease;
}

.team-admin-field input:focus,
.team-admin-field select:focus {
  border-color: rgba(95, 97, 255, 0.66);

  background: #ffffff;

  box-shadow:
    0 0 0 3px rgba(95, 97, 255, 0.10),
    inset 0 1px 0 rgba(255, 255, 255, 0.90);
}

.team-admin-field input:disabled {
  color: rgba(24, 24, 28, 0.48);

  background: rgba(24, 24, 28, 0.045);

  cursor: not-allowed;
}

.team-admin-field input::placeholder {
  color: rgba(24, 24, 28, 0.34);
}

#formStatus {
  min-height: 18px;

  margin: 0 !important;

  color: rgba(24, 24, 28, 0.58);

  font-size: 13px !important;
  line-height: 1.35;
}

.team-admin-form__actions {
  margin-top: 5px;
  padding-top: 20px;

  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 9px;

  border-top: 1px solid rgba(24, 24, 28, 0.08);
}


/* Delete dialog */

.team-admin-delete p {
  margin: 0;

  color: rgba(24, 24, 28, 0.66);

  font-size: 15.5px;
  line-height: 1.48;
  font-weight: 440;
}

.team-admin-delete .team-admin-form__actions {
  margin-top: 24px;
}


/* =========================
   Signed-out state
   ========================= */

.kf-team-signin {
  width: min(620px, 100%);
  margin: 12px auto 0;

  text-align: center;
}

.kf-team-signin .team-admin-card {
  padding: 42px;
}

.kf-team-signin h2 {
  margin: 0;

  color: #18181c;

  font-family: var(--kf-font-h2) !important;
  font-size: 34px;
  line-height: 1.05;
  font-weight: 300;
}

.kf-team-signin p {
  max-width: 470px;
  margin: 14px auto 24px;

  color: rgba(24, 24, 28, 0.60);

  font-size: 16px;
  line-height: 1.45;
}


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

@media (max-width: 960px) {

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

  .team-admin-card--side {
    width: 100%;
  }

  .kf-team-user-info {
    grid-template-columns: 1fr;
    gap: 22px;
  }

}


@media (max-width: 800px) {

  .kf-team-page {
    padding: 12px 12px 0;
  }

  .kf-team-hero {
    padding: 44px 26px 34px;
  }

  .kf-team-main {
    width: calc(100vw - 48px);
    padding-bottom: 72px;
  }

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

  .team-admin-user-info__field,
  .team-admin-user-info__field:first-child,
  .team-admin-user-info__field:last-child {
    padding: 14px 0;
    border-left: 0;
    border-top: 1px solid rgba(24, 24, 28, 0.08);
  }

  .team-admin-user-info__field:first-child {
    border-top: 0;
  }

}


@media (max-width: 640px) {

  .kf-team-hero {
    padding: 30px 20px 28px;
  }

  .kf-team-eyebrow {
    gap: 10px;
    margin-bottom: 16px;

    font-size: 12px;
    line-height: 1.25;
    letter-spacing: 0.105em;
  }

  .kf-team-title {
    font-size: clamp(38px, 12vw, 54px);
    line-height: 1;
  }

  .kf-team-description {
    font-size: 16px;
  }

  .kf-team-main {
    width: calc(100vw - 36px);
    margin-top: 4px;
    padding-bottom: 58px;
  }

  .kf-team-user-info,
  .team-admin-card {
    padding: 22px;
    border-radius: 24px;
  }

  .team-admin-card__header {
    align-items: flex-start;
    flex-direction: column;
  }

  .team-admin-toolbar,
  .team-admin-toolbar .team-admin-btn {
    width: 100%;
  }

  .team-contact-card {
    grid-template-columns: 1fr;
    gap: 14px;
  }

  .team-contact-card__actions {
    width: 100%;
  }

  .team-contact-card__actions .team-admin-btn {
    flex: 1 1 0;
  }

  .team-admin-card__header h2 {
    font-size: 26px;
  }

  .team-admin-modal {
    padding: 14px;
  }

  .team-admin-modal__dialog {
    padding: 22px;
    border-radius: 24px;
  }

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

  .team-admin-form__actions .team-admin-btn {
    width: 100%;
  }

}

/* =========================
   Article page
   ========================= */
.kf-article-page {
  position: relative;
  min-height: 100vh;
  padding: 20px 20px 0;
  color: #18181c;
  background: linear-gradient(
      180deg,
      var(--kf-mist-white) 0%,
      #ffffff 20%,
      #eef0ff 46%,
      #ffffff 86%,
      var(--kf-mist-white) 100%
    );
}

.kf-article-body h2, .kf-article-body h3, .kf-article-body h4 {
  scroll-margin-top: 110px;
}

.kf-article-hero {
  position: relative;
  overflow: visible;
  isolation: auto;
  padding: 56px 40px 32px;
  border-radius: 0;
  color: #18181c;
  background: transparent;
  box-shadow: none;
}

.kf-article-hero::before, .kf-article-hero::after {
  content: none;
}

.kf-article-hero__inner {
  position: relative;
  z-index: 2;
  width: min(1320px, 100%);
  margin: 0 auto;
}

.kf-article-hero__title-wrap {
  max-width: 980px;
}

.kf-article-eyebrow {
  margin: 0 0 16px;
  display: flex;
  align-items: center;
  gap: 14px;
  color: #5f61ff !important;
  font-size: 15px;
  line-height: 1;
  font-weight: 560;
  letter-spacing: 0.125em;
  text-transform: uppercase;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  font-synthesis: none;
}

.kf-article-eyebrow::before {
  content: "/ / / /";
  flex: 0 0 auto;
  color: #5f61ff;
  letter-spacing: 0;
  line-height: 1;
}

.kf-article-breadcrumbs .breadcrumbs {
  list-style: none !important;
  counter-reset: none !important;
  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  gap: 9px;
  min-width: 0;
  margin: 0 !important;
  padding: 0 !important;
  color: #5f61ff !important;
  font-size: inherit;
  line-height: 1;
  font-weight: inherit;
  letter-spacing: inherit;
  text-transform: inherit;
}

.kf-article-breadcrumbs .breadcrumbs li {
  list-style: none !important;
  counter-increment: none !important;
  display: inline-flex;
  align-items: center;
  gap: 9px;
  margin: 0 !important;
  padding: 0 !important;
  color: inherit;
  line-height: 1;
  white-space: nowrap;
}

.kf-article-breadcrumbs .breadcrumbs li::marker {
  content: "" !important;
}

.kf-article-breadcrumbs .breadcrumbs li:first-child {
  display: none !important;
}

.kf-article-breadcrumbs .breadcrumbs li::before {
  content: none !important;
}

.kf-article-breadcrumbs .breadcrumbs li:not(:first-child):not(:last-child)::after {
  content: ">";
  color: rgba(95, 97, 255, 0.58);
  font-weight: 560;
  letter-spacing: 0;
  transform: translateY(-0.5px);
}

.kf-article-breadcrumbs .breadcrumbs a {
  color: #5f61ff !important;
  text-decoration: none;
}

.kf-article-breadcrumbs .breadcrumbs a:hover {
  color: #34356a !important;
  text-decoration: none;
}

.kf-article-title {
  max-width: 860px;
  margin: 0;
  font-family: var(--kf-font-h1) !important;
  font-size: clamp(34px, 3.2vw, 50px);
  line-height: 1.05;
  letter-spacing: -0.006em;
  font-weight: 200;
  color: #18181c;
  text-rendering: geometricPrecision;
  -webkit-font-smoothing: antialiased;
  font-synthesis: none;
}

.kf-article-title .icon-lock {
  display: inline-block;
  width: 0.42em;
  height: 0.42em;
  margin-left: 10px;
  color: rgba(24, 24, 28, 0.58);
  transform: translateY(-0.05em);
}

.kf-article-meta-row {
  margin-top: 22px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 16px;
}

.kf-article-date-stack {
  display: flex;
  flex-direction: column;
  gap: 3px;
  line-height: 1.25;
}

.kf-article-date {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 9px;

  color: rgba(24, 24, 28, 0.52);
  font-size: 14px;
  line-height: 1.3;
  font-weight: 400;
}

.kf-article-date__divider {
  color: rgba(95, 97, 255, 0.7);
}

.kf-article-search form, .kf-article-search .search {
  position: relative !important;
  width: 100% !important;
  height: 48px !important;
  min-height: 48px !important;
  margin: 0 !important;
  display: flex !important;
  align-items: center !important;
  border-radius: 999px !important;
  border: 1px solid rgba(255, 255, 255, 0.18) !important;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.13), rgba(255, 255, 255, 0.034)),
    rgba(255, 255, 255, 0.07) !important;
  box-shadow: var(--kf-liquid-shadow-pill) !important;
  backdrop-filter: blur(4px) saturate(var(--kf-liquid-saturation));
  -webkit-backdrop-filter: blur(4px) saturate(var(--kf-liquid-saturation));
  overflow: hidden !important;
}

.kf-article-search form::before, .kf-article-search .search::before {
  content: "⌕";
  position: absolute;
  left: 18px;
  top: 50%;
  z-index: 2;
  color: rgba(255, 255, 255, 0.58);
  font-size: 18px;
  line-height: 1;
  transform: translateY(-50%);
  pointer-events: none;
}

.kf-article-search input[type="search"], .kf-article-search input[type="text"], .kf-article-search .search-field {
  width: 100% !important;
  height: 48px !important;
  min-height: 48px !important;
  padding: 0 18px 0 46px !important;
  border: 0 !important;
  border-radius: 999px !important;
  outline: 0 !important;
  color: #ffffff !important;
  font-size: 15.5px !important;
  line-height: 1 !important;
  font-weight: 450 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.kf-article-search input[type="search"]::placeholder, .kf-article-search input[type="text"]::placeholder, .kf-article-search .search-field::placeholder {
  color: rgba(255, 255, 255, 0.56);
}

.kf-article-shell {
  width: min(1320px, calc(100vw - 80px));
  margin: 10px auto 0;
  padding-bottom: 86px;
  display: grid;
  grid-template-columns: minmax(300px, 340px) minmax(0, 1fr);
  gap: 34px;
  align-items: start;
}

.kf-article-sidebar {
  position: sticky;
  top: 26px;
  z-index: 4;
}

.kf-toc-card {
  max-height: calc(100vh - 72px);
  overflow-y: auto;
  overflow-x: hidden;
  scrollbar-width: thin;
  scrollbar-color: rgba(95, 97, 255, 0.28) transparent;
}

.kf-toc-card::-webkit-scrollbar {
  width: 6px;
}

.kf-toc-card::-webkit-scrollbar-track {
  background: transparent;
}

.kf-toc-card::-webkit-scrollbar-thumb {
  border-radius: 999px;
  background: rgba(95, 97, 255, 0.24);
}

.kf-article-toc {
  margin-top: 16px;
}

.kf-toc-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  gap: 1px;
}

.kf-toc-item {
  margin: 0;
  padding: 0;
}

.kf-toc-link {
  position: relative;
  display: block;
  padding: 5px 0;
  color: rgba(24, 24, 28, 0.62);
  font-size: 14px;
  line-height: 1.22;
  font-weight: 500;
  text-decoration: none;
  transition: color 160ms ease,
    transform 160ms ease;
}

.kf-toc-link::before {
  content: none !important;
}

.kf-toc-link:hover, .kf-toc-link:focus {
  color: #5f61ff;
  text-decoration: none;
  transform: translateX(2px);
}

.kf-toc-item--h2 .kf-toc-link {
  padding-left: 0;
  color: rgba(24, 24, 28, 0.76);
  font-weight: 580;
}

.kf-toc-item--h3 .kf-toc-link {
  padding-left: 12px;
  font-size: 13.75px;
}

.kf-toc-item--h4 .kf-toc-link {
  padding-left: 22px;
  font-size: 13.25px;
  color: rgba(24, 24, 28, 0.54);
}

.kf-side-card {
  position: relative;
  overflow: hidden;
  padding: 22px;
  border-radius: 28px;
  border: 1px solid rgba(255, 255, 255, 0.64);
  color: #18181c;
  background: radial-gradient(circle at 14% 0%, rgba(255, 255, 255, 0.58), transparent 34%),
    radial-gradient(circle at 100% 100%, rgba(165, 167, 255, 0.14), transparent 32%),
    linear-gradient(135deg, rgba(255, 255, 255, 0.48), rgba(255, 255, 255, 0.18)),
    rgba(255, 255, 255, 0.18);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.82),
    0 16px 42px rgba(38, 39, 78, 0.08);
  backdrop-filter: blur(28px) saturate(160%);
  -webkit-backdrop-filter: blur(28px) saturate(160%);
}

.kf-side-card::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.34), transparent 36%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.16), transparent 48%);
}

.kf-side-card > * {
  position: relative;
  z-index: 1;
}

.kf-side-card__title {
  display: block;
  margin: 0 0 15px;
  color: #18181c;
  font-size: 18px;
  line-height: 1.1;
  font-weight: 620;
  letter-spacing: -0.01em;
}

/* Long article TOC scrolling */

.kf-side-card.kf-toc-card {
  max-height: calc(100vh - 72px);
  overflow-y: auto !important;
  overflow-x: hidden !important;
  overscroll-behavior: contain;

  scrollbar-width: thin;
  scrollbar-color: rgba(95, 97, 255, 0.32) transparent;
}

.kf-side-card.kf-toc-card::-webkit-scrollbar {
  width: 4px;
}

.kf-side-card.kf-toc-card::-webkit-scrollbar-track {
  background: transparent;
}

.kf-side-card.kf-toc-card::-webkit-scrollbar-thumb {
  border-radius: 999px;
  background: rgba(95, 97, 255, 0.28);
}

.kf-side-card.kf-toc-card::-webkit-scrollbar-thumb:hover {
  background: rgba(95, 97, 255, 0.42);
}

/* Let the TOC body participate in the scroll instead of getting clipped */

.kf-toc-card .collapsible-sidebar-body {
  overflow: visible !important;
}

/* Give long TOC text room without smushing it */

.kf-side-card.kf-toc-card {
  padding: 22px 18px 22px 22px;
  scrollbar-gutter: stable;
}

.kf-side-card.kf-toc-card .collapsible-sidebar-body {
  padding-right: 0;
}

.kf-side-card.kf-toc-card .kf-toc-list {
  padding-right: 10px;
}

/* Keep short TOCs from feeling oversized inside the wider sidebar column */

.kf-article-sidebar .kf-toc-card {
  width: 100%;
  max-width: 340px;
}

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

.kf-side-list li + li {
  margin-top: 4px;
}

.kf-side-list .sidenav-item {
  position: relative;
  display: block;
  padding: 10px 12px;
  border-radius: 14px;
  color: rgba(24, 24, 28, 0.64);
  font-size: 15px;
  line-height: 1.22;
  font-weight: 500;
  text-decoration: none;
  transition: color 180ms ease,
    background 180ms ease,
    transform 180ms ease;
}

.kf-side-list .sidenav-item:hover {
  color: #18181c;
  background: rgba(255, 255, 255, 0.46);
  text-decoration: none;
  transform: translateX(2px);
}

.kf-side-list .sidenav-item.current-article {
  color: #ffffff;
  font-weight: 600;
  background: linear-gradient(135deg, rgba(95, 97, 255, 0.96), rgba(52, 53, 106, 0.94)),
    #5f61ff;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.22),
    0 10px 20px rgba(95, 97, 255, 0.18);
}

.kf-side-card__more {
  display: inline-flex;
  margin-top: 14px;
  color: #5f61ff;
  font-size: 14px;
  font-weight: 620;
  text-decoration: none;
}

.kf-side-card__more:hover {
  color: #34356a;
  text-decoration: none;
}

.kf-article-card-header {
  max-width: 900px;
  margin: 0 auto;
  padding: 34px 0 30px;

  border-bottom: 1px solid rgba(24, 24, 28, 0.12);
}

/* Article layout when there is no TOC */

.kf-article-shell--no-toc {
  grid-template-columns: minmax(0, 900px);
  justify-content: center;
}

.kf-article-shell--no-toc .kf-article-sidebar {
  display: none;
}

.kf-article-shell--no-toc .kf-article-main {
  min-width: 0;
}

/* Main article */

.kf-article-main {
  min-width: 0;
}

.kf-article-card {
  position: relative;
  overflow: visible;

  border: 0;
  border-radius: 0;

  color: #18181c;
  background: transparent;
  box-shadow: none;

  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

.kf-article-card::before {
  content: none;
}

.kf-article-card > * {
  position: relative;
  z-index: 1;
}

.kf-article-card .article-info {
  display: block;
}

.kf-article-card .article-content {
  max-width: 900px;
  margin: 0 auto;
  padding: 42px 0 36px;
}

.kf-article-title, .kf-article-body h1 {
  font-family: var(--kf-font-h1);
  font-weight: 200;
}

.kf-article-body {
  color: rgba(24, 24, 28, 0.82);
  font-size: 18px;
  line-height: 1.62;
  font-weight: 400;
}

.kf-article-body > *:first-child {
  margin-top: 0;
}

.kf-article-body > *:last-child {
  margin-bottom: 0;
}

.kf-article-body p {
  margin: 0 0 1.25em;
}

.kf-article-body strong,
.kf-article-body b {
  font-family: var(--kf-font-h4-5) !important;
  font-weight: 600 !important;
  color: #18181c;
}

.kf-article-body h2, .kf-article-body h3, .kf-article-body h4, .kf-article-body h5, .kf-article-body h6 {
  color: #18181c;
  text-rendering: geometricPrecision;
  -webkit-font-smoothing: antialiased;
  font-synthesis: none;
}

.kf-article-body h2, .kf-article-section-title, .comment-heading {
  font-family: var(--kf-font-h2);
  font-weight: 300;
}

.kf-article-body h2 {
  margin: 0.85em 0 0.4em;
  font-size: clamp(30px, 3vw, 42px);
  line-height: 1.02;
  letter-spacing: -0.006em;
  font-weight: 300;
  font-family: var(--kf-font-h2);
}

.kf-article-body h3 {
  margin: 1.15em 0 0.4em;
  font-family: var(--kf-font-h3);
  font-size: 26px;
  line-height: 1.08;
  font-weight: 500;
  letter-spacing: -0.012em;
}

.kf-article-body h4, .kf-article-body h5 {
  margin: 1em 0 0.35em;
  font-family: var(--kf-font-h4-5);
  font-size: 20px;
  line-height: 1.16;
  font-weight: 600;
}

.kf-article-body h6 {
  margin: 1em 0 0.35em;
  font-family: var(--kf-font-h6);
  font-size: 18px;
  line-height: 1.18;
  font-weight: 600;
  letter-spacing: -0.006em;
  color: #18181c;
  text-rendering: geometricPrecision;
  -webkit-font-smoothing: antialiased;
  font-synthesis: none;
}

.kf-article-body h4 {
  margin: 1em 0 0.35em;
  font-size: 20px;
  line-height: 1.16;
  font-weight: 600;
  font-family: var(--kf-font-h4-5);
}

.kf-article-body h5 {
  margin: 1em 0 0.35em;
  font-family: var(--kf-font-h4-5);
  font-size: 20px;
  line-height: 1.16;
  font-weight: 600;
  letter-spacing: -0.01em;
  color: #18181c;
  text-rendering: geometricPrecision;
  -webkit-font-smoothing: antialiased;
  font-synthesis: none;
}

.kf-article-body a {
  color: #5f61ff;
  font-weight: 560;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

.kf-article-body a:hover {
  color: #34356a;
}

.kf-article-body ul, .kf-article-body ol {
  margin: 0 0 1.35em;
  padding-left: 1.35em;
}

.kf-article-body li {
  margin: 0.36em 0;
  padding-left: 0.15em;
}

/* Controlled spacing for manual paragraph breaks inside list items */

.kf-article-body li .kf-list-paragraph-break {
  display: block;
  height: 0.55em;
}

.kf-article-body blockquote {
  margin: 1.8em 0;
  padding: 0.15em 0 0.15em 24px;

  border-left: 2px solid rgba(24, 24, 28, 0.24);
  border-radius: 0;

  color: rgba(24, 24, 28, 0.68);
  font-style: italic;
  font-weight: 400;
  line-height: 1.62;

  background: transparent;
  box-shadow: none;
}

.kf-article-body blockquote p {
  margin: 0;
  color: inherit;
  font-style: inherit;
  line-height: inherit;
}

.kf-article-body blockquote p + p {
  margin-top: 0.85em;
}

.kf-article-body code {
  padding: 0.16em 0.38em;
  border-radius: 7px;
  color: #34356a;
  font-size: 0.92em;
  background: rgba(95, 97, 255, 0.10);
}

.kf-article-body pre {
  position: relative;
  margin: 1.7em 0;
  padding: 22px 24px;
  overflow: auto;
  border-radius: 22px;
  border: 1px solid rgba(24, 24, 28, 0.08);
  color: #18181c;
  background:
    radial-gradient(circle at 0% 0%, rgba(165, 167, 255, 0.14), transparent 34%),
    linear-gradient(135deg, rgba(255, 255, 255, 0.78), rgba(255, 255, 255, 0.42)),
    rgba(248, 248, 255, 0.72);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.86),
    inset 0 -1px 0 rgba(24, 24, 28, 0.035),
    0 14px 34px rgba(38, 39, 78, 0.07);
  scrollbar-width: thin;
  scrollbar-color: rgba(95, 97, 255, 0.42) rgba(24, 24, 28, 0.06);
}

.kf-article-body pre::before {
  content: "";
  position: absolute;
  left: 22px;
  right: 22px;
  top: 1px;
  height: 1px;
  border-radius: 999px;
  pointer-events: none;
  background: linear-gradient(
    90deg,
    transparent,
    rgba(255, 255, 255, 0.9),
    transparent
  );
  opacity: 0.8;
}

.kf-article-body pre code {
  display: block;
  padding: 0;
  color: #18181c;
  background: transparent;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace !important;
  font-size: 0.92rem;
  line-height: 1.6;
  font-weight: 400;
  white-space: pre;
  tab-size: 2;
}

.kf-article-body pre::-webkit-scrollbar {
  height: 10px;
  width: 10px;
}

.kf-article-body pre::-webkit-scrollbar-track {
  border-radius: 999px;
  background: rgba(24, 24, 28, 0.06);
}

.kf-article-body pre::-webkit-scrollbar-thumb {
  border-radius: 999px;
  background: rgba(95, 97, 255, 0.38);
}

.kf-article-body pre::-webkit-scrollbar-thumb:hover {
  background: rgba(95, 97, 255, 0.58);
}

/* =========================
   Article tables / Zendesk WYSIWYG tables
   ========================= */

/* Table shell: stable on white and mist backgrounds */

.kf-article-body figure.wysiwyg-table {
  width: 100%;
  margin: 1em 0 1.15em !important;
  padding: 0;

  overflow: hidden;
  border-radius: 16px;

  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.96), rgba(255, 255, 255, 0.86)),
    #ffffff;

  border: 1px solid rgba(24, 24, 28, 0.12);

  box-shadow:
  inset 0 1px 0 rgba(255, 255, 255, 0.95),
  0 1px 2px rgba(24, 24, 28, 0.035),
  0 14px 32px rgba(38, 39, 78, 0.055);
}

.kf-article-body figure.wysiwyg-table table,
.kf-article-body table {
  width: 100%;
  margin: 0 !important;

  border-collapse: separate;
  border-spacing: 0;
  border: 0;
  border-radius: 0;

  color: rgba(24, 24, 28, 0.78);
  font-size: 16px;
  line-height: 1.42;

  background: transparent;
  box-shadow: none;
}

.kf-article-body figure.wysiwyg-table th,
.kf-article-body figure.wysiwyg-table td,
.kf-article-body th,
.kf-article-body td {
  padding: 12px 24px !important;

  border: 0 !important;
  border-bottom: 1px solid rgba(24, 24, 28, 0.06) !important;
  border-right: 1px solid rgba(24, 24, 28, 0.045) !important;

  text-align: left;
  vertical-align: middle;
}

.kf-article-body figure.wysiwyg-table th:last-child,
.kf-article-body figure.wysiwyg-table td:last-child,
.kf-article-body th:last-child,
.kf-article-body td:last-child {
  border-right: 0 !important;
}

.kf-article-body figure.wysiwyg-table th,
.kf-article-body th {
  color: #18181c;
  font-size: 14.5px;
  line-height: 1.25;
  font-weight: 700;
  letter-spacing: 0.002em;

  background: #eef0ff !important;
  border-bottom: 1px solid rgba(95, 97, 255, 0.22) !important;
}

.kf-article-body figure.wysiwyg-table td,
.kf-article-body td {
  color: rgba(24, 24, 28, 0.8);
  background: rgba(255, 255, 255, 0.78) !important;
}

.kf-article-body figure.wysiwyg-table tr:nth-child(even) td,
.kf-article-body tr:nth-child(even) td {
  background: rgba(248, 248, 255, 0.78) !important;
}

.kf-article-body figure.wysiwyg-table tbody tr:hover td,
.kf-article-body tbody tr:hover td {
  background: rgba(238, 240, 255, 0.72) !important;
}

/* Treat the first table row as a header row, even when Zendesk uses td cells */

.kf-article-body figure.wysiwyg-table table > tbody > tr:first-child > td,
.kf-article-body figure.wysiwyg-table table > tbody > tr:first-child > th,
.kf-article-body figure.wysiwyg-table table > thead > tr > th,
.kf-article-body figure.wysiwyg-table table > thead > tr > td {
  color: #18181c !important;
  font-size: 14.5px;
  line-height: 1.25;
  font-weight: 720;
  letter-spacing: 0.002em;

  background: #e8e9ff !important;

  border-bottom: 1px solid rgba(95, 97, 255, 0.28) !important;
}

/* Keep fake header row from changing on hover */

.kf-article-body figure.wysiwyg-table table > tbody > tr:first-child:hover > td,
.kf-article-body figure.wysiwyg-table table > tbody > tr:first-child:hover > th {
  background: #e8e9ff !important;
}

/* Tighten table spacing near surrounding content */

.kf-article-body p + figure.wysiwyg-table,
.kf-article-body ul + figure.wysiwyg-table,
.kf-article-body ol + figure.wysiwyg-table {
  margin-top: 0.85em !important;
}

.kf-article-body figure.wysiwyg-table + h2,
.kf-article-body figure.wysiwyg-table + h3,
.kf-article-body figure.wysiwyg-table + h4 {
  margin-top: 1.35em !important;
}

.kf-article-body figure.wysiwyg-table + p,
.kf-article-body figure.wysiwyg-table + ul,
.kf-article-body figure.wysiwyg-table + ol {
  margin-top: 0.85em !important;
}

/* Other */

.kf-article-body img {
  border-radius: 22px;
  box-shadow: 0 18px 44px rgba(38, 39, 78, 0.10);
}

.kf-content-tags, .kf-article-attachments {
  margin-top: 44px;
  padding-top: 28px;

}

/* Content tags / article metadata */

.kf-content-tags {
  margin-top: 46px;
  padding-top: 22px;

  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 14px 16px;
  align-items: center;

  border-top: 1px solid rgba(24, 24, 28, 0.10);
}

.kf-content-tags--empty {
  min-height: 1px;
  padding-top: 0;
  margin-top: 46px;
}

.kf-content-tags p {
  margin: 0;

  color: rgba(24, 24, 28, 0.46);
  font-family: var(--kf-font-body);
  font-size: 12.5px;
  line-height: 1;
  font-weight: 620;
  letter-spacing: 0.105em;
  text-transform: uppercase;
}

.kf-content-tags .content-tag-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;

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

.kf-content-tags .content-tag-item a {
  min-height: 30px;
  padding: 0 12px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  border-radius: 999px;
  border: 1px solid rgba(95, 97, 255, 0.14);

  color: rgba(52, 53, 106, 0.78);
  font-size: 13px;
  line-height: 1;
  font-weight: 560;
  text-decoration: none;

  background: rgba(95, 97, 255, 0.055);

  transition:
    color 180ms ease,
    background 180ms ease,
    border-color 180ms ease,
    transform 180ms ease;
}

.kf-content-tags .content-tag-item a:hover {
  transform: translateY(-1px);

  color: #ffffff;
  border-color: rgba(255, 255, 255, 0.18);
  background: #5f61ff;
  text-decoration: none;
}

.kf-article-attachments .attachments {
  list-style: none;
  margin: 0;
  padding: 0;
}

.kf-article-attachments .attachment-item {
  position: relative;
  padding: 16px 18px 16px 44px;
  border-radius: 18px;
  color: rgba(24, 24, 28, 0.76);
  background: rgba(255, 255, 255, 0.46);
  border: 1px solid rgba(24, 24, 28, 0.08);
}

.kf-article-attachments .attachment-item + .attachment-item {
  margin-top: 10px;
}

.kf-article-attachments .attachment-icon {
  position: absolute;
  left: 18px;
  top: 18px;
  color: #5f61ff;
}

.kf-article-attachments .attachment-item a {
  color: #34356a;
  font-weight: 620;
  text-decoration: none;
}

.kf-article-attachments .attachment-item a:hover {
  color: #5f61ff;
}

/* Article relatives */

.kf-article-relatives {
  width: 100%;
  max-width: 900px;
  margin: 16px auto 0;

  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 22px;
}

.kf-article-relatives section, .kf-article-relatives .recent-articles, .kf-article-relatives .related-articles {
  padding: 30px 32px;
  min-height: 0;
  border-radius: 28px;
  border: 1px solid rgba(255, 255, 255, 0.64);
  background: radial-gradient(circle at 14% 0%, rgba(255, 255, 255, 0.58), transparent 34%),
    linear-gradient(135deg, rgba(255, 255, 255, 0.48), rgba(255, 255, 255, 0.18)),
    rgba(255, 255, 255, 0.20);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.82),
    0 16px 42px rgba(38, 39, 78, 0.06);
  backdrop-filter: blur(24px) saturate(150%);
  -webkit-backdrop-filter: blur(24px) saturate(150%);
}

.kf-article-relatives h2, .kf-article-relatives h3 {
  margin: 0 0 14px;
  color: #18181c;
  font-size: 22px;
  line-height: 1.1;
  font-weight: 560;
  letter-spacing: -0.012em;
}

.kf-article-relatives ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.kf-article-relatives li + li {
  margin-top: 10px;
}

.kf-article-relatives a {
  color: #34356a;
  font-size: 16px;
  line-height: 1.22;
  font-weight: 560;
  text-decoration: none;
}

.kf-article-relatives a:hover {
  color: #18181c;
  text-decoration: none;
}

/* =========================
   Category page
   ========================= */

.kf-category-page {
  position: relative;
  min-height: 100vh;
  padding: 20px 20px 0;
  color: #18181c;
  background: linear-gradient(
    180deg,
    var(--kf-mist-white) 0%,
    #ffffff 18%,
    #eef0ff 46%,
    #ffffff 86%,
    var(--kf-mist-white) 100%
  );
}

.kf-category-page .container-divider,
.kf-category-page > .container,
.kf-category-page .sub-nav {
  display: none !important;
}

/* Category hero */

.kf-category-hero {
  position: relative;
  overflow: visible;
  padding: 72px 40px 44px;
  color: #18181c;
  background: transparent;
}

.kf-category-hero__inner {
  width: min(1320px, 100%);
  margin: 0 auto;
}

.kf-category-hero__content {
  display: block;
}

.kf-category-header {
  max-width: 780px;
  margin: 0 auto;
  text-align: center;
}

/* Breadcrumb eyebrow */

.kf-category-eyebrow {
  width: fit-content;
  margin: 0 auto 13px;

  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;

  color: #5f61ff !important;
  font-size: 15px;
  line-height: 1;
  font-weight: 560;
  letter-spacing: 0.125em;
  text-transform: uppercase;

  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  font-synthesis: none;
}

.kf-category-eyebrow::before {
  content: "/ / / /";
  flex: 0 0 auto;
  color: #5f61ff;
  letter-spacing: 0;
  line-height: 1;
}

.kf-category-breadcrumbs .breadcrumbs {
  list-style: none !important;
  counter-reset: none !important;

  display: flex;
  flex-wrap: nowrap;
  align-items: center;
  gap: 9px;

  min-width: 0;
  margin: 0 !important;
  padding: 0 !important;

  color: #5f61ff !important;
  font-size: inherit;
  line-height: 1;
  font-weight: inherit;
  letter-spacing: inherit;
  text-transform: inherit;
}

.kf-category-breadcrumbs .breadcrumbs li {
  list-style: none !important;
  counter-increment: none !important;

  display: inline-flex;
  align-items: center;
  gap: 9px;

  margin: 0 !important;
  padding: 0 !important;

  color: inherit;
  line-height: 1;
  white-space: nowrap;
}

.kf-category-breadcrumbs .breadcrumbs li::marker {
  content: "" !important;
}

.kf-category-breadcrumbs .breadcrumbs li:first-child {
  display: none !important;
}

.kf-category-breadcrumbs .breadcrumbs li::before {
  content: none !important;
}

.kf-category-breadcrumbs .breadcrumbs li:not(:first-child):not(:last-child)::after {
  content: ">";
  color: rgba(95, 97, 255, 0.58);
  font-weight: 560;
  letter-spacing: 0;
  transform: translateY(-0.5px);
}

.kf-category-breadcrumbs .breadcrumbs a {
  color: #5f61ff !important;
  text-decoration: none;
}

.kf-category-breadcrumbs .breadcrumbs a:hover {
  color: #34356a !important;
  text-decoration: none;
}

/* Category title */

.kf-category-title {
  max-width: 900px;
  margin: 0;

  font-family: var(--kf-font-h1) !important;
  font-size: clamp(44px, 5vw, 76px);
  line-height: 0.98;
  letter-spacing: -0.006em;
  font-weight: 200;

  color: #18181c;

  text-rendering: geometricPrecision;
  -webkit-font-smoothing: antialiased;
  font-synthesis: none;
}

.kf-category-description {
  max-width: 680px;
  margin: 18px auto 0;
  color: rgba(24, 24, 28, 0.64);
  font-size: 19px;
  line-height: 1.42;
  font-weight: 450;
}

/* Category content */

.kf-category-main {
  width: min(1320px, calc(100vw - 80px));
  margin: 8px auto 0;
  padding: 0 0 92px;
}

.kf-category-section-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
}

.kf-category-section {
  position: relative;
  overflow: hidden;

  min-height: 280px;
  padding: 30px 32px 28px;

  border-radius: 30px;
  border: 1px solid rgba(255, 255, 255, 0.64);

  color: #18181c;

  background:
    radial-gradient(circle at 14% 0%, rgba(255, 255, 255, 0.58), transparent 34%),
    radial-gradient(circle at 100% 100%, rgba(165, 167, 255, 0.14), transparent 32%),
    linear-gradient(135deg, rgba(255, 255, 255, 0.48), rgba(255, 255, 255, 0.18)),
    rgba(255, 255, 255, 0.18);

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.82),
    0 16px 42px rgba(38, 39, 78, 0.07);

  backdrop-filter: blur(28px) saturate(160%);
  -webkit-backdrop-filter: blur(28px) saturate(160%);

  transition:
    transform 220ms ease,
    border-color 220ms ease,
    background 220ms ease,
    box-shadow 220ms ease;
}

.kf-category-section::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;

  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.34), transparent 36%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.16), transparent 48%);
}

.kf-category-section:hover {
  transform: translateY(-3px);
  border-color: rgba(255, 255, 255, 0.78);

  background:
    radial-gradient(circle at 14% 0%, rgba(255, 255, 255, 0.66), transparent 36%),
    radial-gradient(circle at 100% 100%, rgba(165, 167, 255, 0.18), transparent 34%),
    linear-gradient(135deg, rgba(255, 255, 255, 0.54), rgba(255, 255, 255, 0.22)),
    rgba(255, 255, 255, 0.22);

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.9),
    0 20px 48px rgba(38, 39, 78, 0.09);
}

.kf-category-section > * {
  position: relative;
  z-index: 1;
}

.kf-category-section__header {
  margin: 0 0 20px;
  padding: 0 0 18px;

  display: grid;
  grid-template-columns: minmax(0, 1fr) 34px;
  align-items: start;
  gap: 18px;

  border-bottom: 1px solid rgba(24, 24, 28, 0.10);
}

.kf-category-section__title {
  margin: 0;

  font-family: var(--kf-font-h2) !important;
  font-size: 28px;
  line-height: 1.04;
  font-weight: 300;
  letter-spacing: -0.006em;

  color: #18181c;
}

.kf-category-section__title a {
  color: inherit;
  text-decoration: none;
}

.kf-category-section__title a:hover {
  color: #34356a;
  text-decoration: none;
}

.kf-category-section__arrow {
  width: 34px;
  height: 34px;

  display: inline-flex;
  align-items: center;
  justify-content: center;
  justify-self: end;

  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.48);

  color: rgba(24, 24, 28, 0.52);

  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.62), rgba(255, 255, 255, 0.22)),
    rgba(255, 255, 255, 0.18);

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.78),
    0 8px 18px rgba(38, 39, 78, 0.05);

  transition:
    transform 220ms ease,
    color 220ms ease,
    background 220ms ease,
    border-color 220ms ease,
    box-shadow 220ms ease;
}

.kf-category-section:hover .kf-category-section__arrow,
.kf-category-section__arrow:hover {
  transform: translateX(3px);

  color: #ffffff;
  border-color: rgba(255, 255, 255, 0.18);

  background:
    linear-gradient(135deg, rgba(95, 95, 196, 0.94), rgba(52, 53, 106, 0.92)),
    rgba(52, 53, 106, 0.92);

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.18),
    0 10px 22px rgba(52, 53, 106, 0.18);

  text-decoration: none;
}

/* Article list */

.kf-category-article-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.kf-category-article-item {
  margin: 0;
  padding: 0;
}

.kf-category-article-item + .kf-category-article-item {
  border-top: 1px solid rgba(24, 24, 28, 0.075);
}

.kf-category-article-link {
  position: relative;

  min-height: 44px;
  padding: 11px 30px 11px 0;

  display: flex;
  align-items: center;
  gap: 10px;

  color: #34356a;
  font-size: 16.5px;
  line-height: 1.25;
  font-weight: 560;
  letter-spacing: -0.002em;
  text-decoration: none;

  transition:
    color 180ms ease,
    transform 180ms ease;
}

.kf-category-article-link::after {
  content: "→";
  position: absolute;
  right: 0;
  top: 50%;

  color: #5f5fc4;
  opacity: 0;

  transform: translate(-7px, -50%);
  transition:
    opacity 180ms ease,
    transform 180ms ease;
}

.kf-category-article-link:hover {
  color: #18181c;
  transform: translateX(2px);
  text-decoration: none;
}

.kf-category-article-link:hover::after {
  opacity: 1;
  transform: translate(0, -50%);
}

.kf-category-article-text {
  min-width: 0;
  flex: 1 1 auto;
  display: block;
}

.kf-category-article-title {
  display: inline;
  padding-right: 0;
}

.kf-category-article-badge {
  width: 26px;
  height: 26px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  border-radius: 0;

  background: transparent;
  box-shadow: none;
}

.kf-category-article-badge img {
  display: block;
  width: 24px;
  height: 24px;
  object-fit: contain;
}

.kf-category-article-lock {
  display: inline-block;
  width: 14px;
  height: 14px;
  margin-left: 7px;

  color: rgba(24, 24, 28, 0.46);

  vertical-align: -0.1em;
}

.kf-category-see-all {
  min-height: 42px;
  margin-top: 18px;
  padding: 0 17px;

  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;

  border-radius: 999px;
  border: 1px solid rgba(24, 24, 28, 0.12);

  color: rgba(24, 24, 28, 0.72);
  font-size: 14px;
  line-height: 1;
  font-weight: 560;
  text-decoration: none;

  background: rgba(255, 255, 255, 0.34);
  box-shadow: none;

  backdrop-filter: blur(12px) saturate(120%);
  -webkit-backdrop-filter: blur(12px) saturate(120%);

  transition:
    transform 180ms ease,
    color 180ms ease,
    background 180ms ease,
    border-color 180ms ease;
}

.kf-category-see-all::after {
  content: "›";
  font-size: 17px;
  line-height: 1;
  transform: translateY(-1px);
  transition: transform 180ms ease;
}

.kf-category-see-all:hover {
  transform: translateY(-1px);

  color: #ffffff;
  border-color: rgba(255, 255, 255, 0.18);

  background:
    linear-gradient(135deg, rgba(95, 95, 196, 0.94), rgba(52, 53, 106, 0.92)),
    rgba(52, 53, 106, 0.92);

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.18),
    0 10px 22px rgba(52, 53, 106, 0.18);

  text-decoration: none;
}

.kf-category-see-all:hover::after {
  transform: translate(2px, -1px);
}

.kf-category-empty {
  margin: 0;

  color: rgba(24, 24, 28, 0.52);
  font-size: 15.5px;
  line-height: 1.4;
  font-weight: 450;
}

/* =========================
   Category page responsive
   ========================= */

@media (max-width: 1180px) {

  .kf-category-main {
    width: min(100%, calc(100vw - 64px));
  }
}

@media (max-width: 900px) {
  .kf-category-page {
    padding: 12px 12px 0;
  }

  .kf-category-hero {
    padding: 34px 26px 30px;
  }

  .kf-category-header {
  max-width: 720px;
}

  .kf-category-main {
    width: calc(100vw - 48px);
    margin-top: 10px;
    padding-bottom: 70px;
  }

  .kf-category-section-grid {
    grid-template-columns: 1fr;
  }

  .kf-category-section {
    min-height: 0;
    padding: 26px;
    border-radius: 28px;
  }
}

@media (max-width: 560px) {
  .kf-category-hero {
    padding: 26px 20px 28px;
  }

  .kf-category-eyebrow {
    gap: 10px;
    font-size: 12px;
    line-height: 1.25;
    margin-bottom: 12px;
    font-weight: 560;
    letter-spacing: 0.105em;
  }

  .kf-category-breadcrumbs .breadcrumbs {
    gap: 7px;
    overflow: hidden;
  }

  .kf-category-breadcrumbs .breadcrumbs li {
    gap: 7px;
    min-width: 0;
  }

  .kf-category-breadcrumbs .breadcrumbs a {
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .kf-category-title {
    font-size: clamp(38px, 12vw, 52px);
    line-height: 1;
    letter-spacing: -0.004em;
  }

  .kf-category-description {
    font-size: 16.5px;
  }

  .kf-category-main {
    width: calc(100vw - 36px);
    padding-bottom: 58px;
  }

  .kf-category-section {
    padding: 22px;
    border-radius: 24px;
  }

  .kf-category-section__header {
    grid-template-columns: minmax(0, 1fr) 32px;
    gap: 14px;
    margin-bottom: 16px;
    padding-bottom: 16px;
  }

  .kf-category-section__title {
    font-size: 24px;
  }

  .kf-category-section__arrow {
    width: 32px;
    height: 32px;
  }

  .kf-category-article-link {
    font-size: 15.5px;
  }
}

/* Category page Knowledge Hub category nav */

.kf-category-nav {
  width: 100%;
  margin: 42px auto 0;
}

.kf-category-nav .kf-kbhub__tab {
  text-decoration: none;
}

.kf-category-nav .kf-kbhub__tab[aria-current="page"] {
  color: #18181c;
  border-bottom-color: #5f5fc4;
  font-weight: 580;
  background: transparent;
  box-shadow: none;
  -webkit-font-smoothing: antialiased;
  text-rendering: geometricPrecision;
  font-synthesis: none;
}

.kf-category-nav .kf-kbhub__tab[aria-current="page"]::after {
  content: "";
  position: absolute;
  right: -1px;
  bottom: -1px;
  width: 1px;
  height: 9px;
  background: #5f5fc4;
}

.kf-category-nav .kf-kbhub__tab:hover {
  text-decoration: none;
}

/* =========================
   Section page
   ========================= */

.kf-section-page {
  position: relative;
  min-height: 100vh;
  padding: 20px 20px 0;
  color: #18181c;
  background: linear-gradient(
    180deg,
    var(--kf-mist-white) 0%,
    #ffffff 18%,
    #eef0ff 46%,
    #ffffff 86%,
    var(--kf-mist-white) 100%
  );
}

.kf-section-page .container-divider,
.kf-section-page > .container,
.kf-section-page .sub-nav {
  display: none !important;
}

/* Section hero */

.kf-section-hero {
  position: relative;
  overflow: visible;
  padding: 72px 40px 44px;
  color: #18181c;
  background: transparent;
}

.kf-section-hero__inner {
  width: min(1320px, 100%);
  margin: 0 auto;
}

.kf-section-hero__content {
  display: block;
}

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

.kf-section-eyebrow {
  width: fit-content;
  margin: 0 auto 13px;

  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;

  color: #5f61ff !important;
  font-size: 15px;
  line-height: 1;
  font-weight: 560;
  letter-spacing: 0.125em;
  text-transform: uppercase;

  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  font-synthesis: none;
}

.kf-section-eyebrow::before {
  content: "/ / / /";
  flex: 0 0 auto;
  color: #5f61ff;
  letter-spacing: 0;
  line-height: 1;
}

.kf-section-title {
  max-width: 900px;
  margin: 0;

  font-family: var(--kf-font-h1) !important;
  font-size: clamp(44px, 5vw, 76px);
  line-height: 0.98;
  letter-spacing: -0.006em;
  font-weight: 200;

  color: #18181c;

  text-rendering: geometricPrecision;
  -webkit-font-smoothing: antialiased;
  font-synthesis: none;
}

.kf-section-description {
  max-width: 680px;
  margin: 18px auto 0;

  color: rgba(24, 24, 28, 0.64);
  font-size: 19px;
  line-height: 1.42;
  font-weight: 450;
}

/* Back to category button */

.kf-section-back {
  min-height: 42px;
  margin: 24px auto 0;
  padding: 0 18px;

  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 7px;

  border-radius: 999px;
  border: 1px solid rgba(24, 24, 28, 0.12);

  color: rgba(24, 24, 28, 0.72);
  font-size: 14px;
  line-height: 1;
  font-weight: 560;
  text-decoration: none;

  background: rgba(255, 255, 255, 0.34);
  box-shadow: none;

  backdrop-filter: blur(12px) saturate(120%);
  -webkit-backdrop-filter: blur(12px) saturate(120%);

  transition:
    transform 180ms ease,
    color 180ms ease,
    background 180ms ease,
    border-color 180ms ease,
    box-shadow 180ms ease;
}

.kf-section-back::before {
  content: "‹";
  font-size: 17px;
  line-height: 1;
  transform: translateY(-1px);
  transition: transform 180ms ease;
}

.kf-section-back:hover {
  transform: translateY(-1px);

  color: #ffffff;
  border-color: rgba(255, 255, 255, 0.18);

  background:
    linear-gradient(135deg, rgba(95, 95, 196, 0.94), rgba(52, 53, 106, 0.92)),
    rgba(52, 53, 106, 0.92);

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.18),
    0 10px 22px rgba(52, 53, 106, 0.18);

  text-decoration: none;
}

.kf-section-back:hover::before {
  transform: translate(-2px, -1px);
}

.kf-section-breadcrumb-source {
  display: none !important;
}

/* Section content shell */

.kf-section-main {
  width: min(1320px, calc(100vw - 80px));
  margin: 24px auto 0;
  padding: 0 0 92px;

  display: grid;
  gap: 54px;
}

.kf-section-child-card {
  position: relative;
  overflow: hidden;

  width: min(900px, 100%);
  margin: 0 auto;
  padding: 30px 32px 28px;

  border-radius: 30px;
  border: 1px solid rgba(255, 255, 255, 0.64);

  color: #18181c;

  background:
    radial-gradient(circle at 14% 0%, rgba(255, 255, 255, 0.58), transparent 34%),
    radial-gradient(circle at 100% 100%, rgba(165, 167, 255, 0.14), transparent 32%),
    linear-gradient(135deg, rgba(255, 255, 255, 0.48), rgba(255, 255, 255, 0.18)),
    rgba(255, 255, 255, 0.18);

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.82),
    0 16px 42px rgba(38, 39, 78, 0.07);

  backdrop-filter: blur(28px) saturate(160%);
  -webkit-backdrop-filter: blur(28px) saturate(160%);
}

.kf-section-child-card::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;

  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.34), transparent 36%),
    linear-gradient(180deg, rgba(255, 255, 255, 0.16), transparent 48%);
}

.kf-section-child-card > * {
  position: relative;
  z-index: 1;
}

.kf-section-card-header {
  margin: 0 0 20px;
  padding: 0 0 18px;

  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;

  border-bottom: 1px solid rgba(24, 24, 28, 0.10);
}

.kf-section-card-title {
  margin: 0;

  font-family: var(--kf-font-h2) !important;
  font-size: 28px;
  line-height: 1.04;
  font-weight: 300;
  letter-spacing: -0.006em;

  color: #18181c;
}

/* Child sections */

.kf-section-child-list {
  list-style: none;
  margin: 0;
  padding: 0;

  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.kf-section-child-item {
  margin: 0;
  padding: 0;
}

.kf-section-child-link {
  min-height: 58px;
  padding: 0 16px 0 18px;

  display: grid;
  grid-template-columns: minmax(0, 1fr) 30px;
  align-items: center;
  gap: 14px;

  border-radius: 20px;
  border: 1px solid rgba(24, 24, 28, 0.08);

  color: #34356a;
  font-size: 16px;
  line-height: 1.18;
  font-weight: 560;
  letter-spacing: -0.002em;
  text-decoration: none;

  background: rgba(255, 255, 255, 0.34);

  transition:
    transform 180ms ease,
    color 180ms ease,
    background 180ms ease,
    border-color 180ms ease,
    box-shadow 180ms ease;
}

.kf-section-child-link:hover {
  transform: translateY(-1px);

  color: #18181c;
  border-color: rgba(95, 97, 255, 0.16);
  background: rgba(255, 255, 255, 0.54);

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.72),
    0 10px 22px rgba(38, 39, 78, 0.05);

  text-decoration: none;
}

.kf-section-child-arrow {
  width: 30px;
  height: 30px;

  display: inline-flex;
  align-items: center;
  justify-content: center;
  justify-self: end;

  border-radius: 999px;

  color: rgba(24, 24, 28, 0.52);
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.62), rgba(255, 255, 255, 0.22)),
    rgba(255, 255, 255, 0.18);

  border: 1px solid rgba(255, 255, 255, 0.48);

  transition:
    transform 180ms ease,
    color 180ms ease,
    background 180ms ease,
    border-color 180ms ease;
}

.kf-section-child-link:hover .kf-section-child-arrow {
  transform: translateX(2px);

  color: #ffffff;
  border-color: rgba(255, 255, 255, 0.18);

  background:
    linear-gradient(135deg, rgba(95, 95, 196, 0.94), rgba(52, 53, 106, 0.92)),
    rgba(52, 53, 106, 0.92);
}

/* Section article grid */

.kf-section-articles {
  width: 100%;
  margin: 0;
  padding: 0;
  color: #18181c;
}

.kf-section-article-grid {
  list-style: none;
  margin: 0;
  padding: 0;

  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  column-gap: 34px;
  row-gap: 0;
}

.kf-section-article-grid-item {
  position: relative;
  overflow: visible;

  min-height: 164px;
  padding: 0 0 32px;

  border: 0;
  border-radius: 0;

  background: transparent;
  box-shadow: none;

  transition:
    transform 180ms ease,
    color 180ms ease;
}

.kf-section-article-grid-item:nth-child(n + 4) {
  padding-top: 32px;
  border-top: 1px solid rgba(24, 24, 28, 0.10);
}

.kf-section-article-grid-item:nth-child(3n + 2),
.kf-section-article-grid-item:nth-child(3n + 3) {
  padding-left: 28px;
  border-left: 1px solid rgba(24, 24, 28, 0.10);
}

.kf-section-article-grid-item:hover {
  transform: translateY(-3px);
}

.kf-section-grid-article-link {
  position: relative;
  z-index: 1;

  display: block;
  min-height: 100%;

  color: inherit;
  text-decoration: none;

  transition:
    color 180ms ease,
    transform 180ms ease;
}

.kf-section-grid-article-heading {
  position: relative;

  display: flex;
  align-items: flex-start;
  gap: 9px;

  padding-right: 24px;
}

.kf-section-grid-article-heading::after {
  content: "→";
  position: absolute;
  right: 0;
  top: 0.05em;

  color: #5f5fc4;
  opacity: 0;

  transform: translateX(-5px);

  transition:
    opacity 180ms ease,
    transform 180ms ease;
}

.kf-section-grid-article-link:hover .kf-section-grid-article-heading::after {
  opacity: 1;
  transform: translateX(0);
}

.kf-section-grid-article-title {
  min-width: 0;

  display: inline;

  color: #34356a;
  font-size: 19px;
  line-height: 1.22;
  font-weight: 560;
  letter-spacing: -0.006em;

  transition: color 180ms ease;
}

.kf-section-grid-article-link:hover .kf-section-grid-article-title {
  color: #18181c;
}

.kf-section-grid-article-badge {
  width: 25px;
  height: 25px;
  margin-top: -2px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  flex: 0 0 25px;

  background: transparent;
  box-shadow: none;
}

.kf-section-grid-article-badge img {
  display: block;
  width: 23px;
  height: 23px;
  object-fit: contain;
}

.kf-section-grid-article-lock {
  display: inline-block;
  width: 14px;
  height: 14px;
  margin-left: 7px;

  color: rgba(24, 24, 28, 0.46);

  vertical-align: -0.1em;
}

.kf-section-grid-article-excerpt {
  position: relative;
  z-index: 1;

  max-width: 95%;
  margin: 18px 0 0;

  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;

  overflow: hidden;
  word-break: break-word;

  color: rgba(24, 24, 28, 0.66);
  font-size: 16.5px;
  line-height: 1.42;
  font-weight: 430;

  transition: color 180ms ease;
}

.kf-section-grid-article-link:hover .kf-section-grid-article-excerpt {
  color: rgba(24, 24, 28, 0.78);
}

.kf-section-articles .kf-section-empty {
  max-width: 900px;
  margin: 0 auto;
  padding: 28px 0;
  border-top: 1px solid rgba(24, 24, 28, 0.10);
  border-bottom: 1px solid rgba(24, 24, 28, 0.10);
}

/* Pagination - custom clean redesign */

.pagination.kf-pagination-native-hidden {
  display: none !important;
}

.kf-pagination {
  margin: 10px 0 0;
  padding: 0;

  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;

  color: #18181c;
}

.kf-pagination__numbers {
  display: inline-flex;
  align-items: center;
  gap: 6px;
}

.kf-pagination__arrow {
  width: 28px;
  height: 36px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  color: rgba(24, 24, 28, 0.42);
  font-size: 18px;
  line-height: 1;
  font-weight: 560;

  user-select: none;
  pointer-events: none;
}

.kf-pagination__link,
.kf-pagination__current,
.kf-pagination__ellipsis {
  min-width: 36px;
  height: 36px;
  padding: 0 12px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  border-radius: 999px;

  font-size: 14px;
  line-height: 1;
  font-weight: 560;
  text-decoration: none;
}

.kf-pagination__link {
  border: 1px solid rgba(24, 24, 28, 0.10);

  color: rgba(24, 24, 28, 0.66);

  background: rgba(255, 255, 255, 0.42);

  transition:
    transform 180ms ease,
    color 180ms ease,
    background 180ms ease,
    border-color 180ms ease,
    box-shadow 180ms ease;
}

.kf-pagination__link:hover,
.kf-pagination__link:focus {
  transform: translateY(-1px);

  color: #18181c;
  border-color: rgba(95, 97, 255, 0.18);
  background: rgba(255, 255, 255, 0.72);

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.72),
    0 8px 18px rgba(38, 39, 78, 0.06);

  text-decoration: none;
}

.kf-pagination__current {
  color: #ffffff;
  border: 1px solid rgba(255, 255, 255, 0.18);

  background: #5f61ff;

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.18),
    0 10px 22px rgba(95, 97, 255, 0.20);
}

.kf-pagination__ellipsis {
  min-width: 24px;
  padding: 0 4px;

  color: rgba(24, 24, 28, 0.36);
}

.kf-pagination__link:focus-visible {
  outline: 2px solid rgba(95, 97, 255, 0.58);
  outline-offset: 4px;
}

@media (max-width: 560px) {
  .kf-pagination {
    flex-wrap: wrap;
    gap: 10px;
  }

 .kf-pagination__link,
.kf-pagination__current,
.kf-pagination__ellipsis,
.kf-pagination__arrow {
  height: 34px;
  font-size: 13.5px;
}
}

@media (max-width: 900px) {
  .kf-section-page {
    padding: 12px 12px 0;
  }

  .kf-section-hero {
    padding: 34px 26px 30px;
  }

  .kf-section-header {
    max-width: 720px;
  }

  .kf-section-main {
  width: calc(100vw - 48px);
  margin-top: 22px;
  padding-bottom: 70px;
}

 .kf-section-child-card {
  padding: 26px;
  border-radius: 28px;
}

.kf-section-article-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.kf-section-article-grid-item:nth-child(n + 3) {
  padding-top: 32px;
  border-top: 1px solid rgba(24, 24, 28, 0.10);
}

.kf-section-article-grid-item:nth-child(3n + 2),
.kf-section-article-grid-item:nth-child(3n + 3) {
  padding-left: 0;
  border-left: 0;
}

.kf-section-article-grid-item:nth-child(2n + 2) {
  padding-left: 26px;
  border-left: 1px solid rgba(24, 24, 28, 0.10);
}

  .kf-section-child-list {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 560px) {
  .kf-section-hero {
    padding: 26px 20px 28px;
  }

  .kf-section-eyebrow {
    gap: 10px;
    font-size: 12px;
    line-height: 1.25;
    margin-bottom: 12px;
    font-weight: 560;
    letter-spacing: 0.105em;
  }

  .kf-section-title {
    font-size: clamp(38px, 12vw, 52px);
    line-height: 1;
    letter-spacing: -0.004em;
  }

  .kf-section-description {
    font-size: 16.5px;
  }

  .kf-section-main {
    width: calc(100vw - 36px);
    padding-bottom: 58px;
  }

  .kf-section-child-card {
  padding: 22px;
  border-radius: 24px;
}

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

.kf-section-article-grid-item,
.kf-section-article-grid-item:nth-child(n + 3),
.kf-section-article-grid-item:nth-child(2n + 2),
.kf-section-article-grid-item:nth-child(3n + 2),
.kf-section-article-grid-item:nth-child(3n + 3) {
  min-height: 0;
  padding: 0 0 28px;
  border-left: 0;
}

.kf-section-article-grid-item + .kf-section-article-grid-item {
  padding-top: 28px;
  border-top: 1px solid rgba(24, 24, 28, 0.10);
}

.kf-section-grid-article-title {
  font-size: 18px;
}

.kf-section-grid-article-excerpt {
  font-size: 15.5px;
  -webkit-line-clamp: 2;
}

  .kf-section-card-header {
    margin-bottom: 16px;
    padding-bottom: 16px;
  }

  .kf-section-card-title {
    font-size: 24px;
  }

  .kf-section-child-link {
    min-height: 54px;
    font-size: 15.5px;
  }
}

/* =========================
   Error page
   ========================= */

.kf-error-page {
  position: relative;

  min-height: calc(100vh - 194px);
  padding: 0 20px;

  display: flex;
  align-items: center;

  color: #18181c;

  background:
    radial-gradient(circle at 82% 22%, rgba(165, 167, 255, 0.18), transparent 30%),
    radial-gradient(circle at 14% 82%, rgba(95, 97, 255, 0.10), transparent 34%),
    linear-gradient(
      180deg,
      var(--kf-mist-white) 0%,
      #ffffff 18%,
      #eef0ff 48%,
      #ffffff 86%,
      var(--kf-mist-white) 100%
    );
}

.kf-error-page .container-divider,
.kf-error-page > .container,
.kf-error-page .sub-nav {
  display: none !important;
}

.kf-error-hero {
  position: relative;

  width: 100%;
  padding: 42px 40px 50px;

  display: flex;
  align-items: center;

  overflow: hidden;
  background: transparent;
}

.kf-error-hero__inner {
  position: relative;
  z-index: 1;

  width: min(1180px, 100%);
  margin: 0 auto;
}

.kf-error-card {
  position: relative;

  display: grid;
  grid-template-columns: minmax(0, 760px) minmax(220px, 270px);
  gap: 34px;
  align-items: start;

  min-height: 0;
  padding: 0;

  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;

  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

.kf-error-card::before {
  content: none;
}

.kf-error-card__content {
  max-width: 680px;
}

.kf-error-eyebrow {
  width: fit-content;
  margin: 0 0 15px;

  display: flex;
  align-items: center;
  gap: 14px;

  color: #5f61ff !important;
  font-size: 15px;
  line-height: 1;
  font-weight: 560;
  letter-spacing: 0.125em;
  text-transform: uppercase;

  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  font-synthesis: none;
}

.kf-error-eyebrow::before {
  content: "/ / / /";
  flex: 0 0 auto;
  color: #5f61ff;
  letter-spacing: 0;
  line-height: 1;
}

.kf-error-title {
  max-width: none;
  margin: 0;

  font-family: var(--kf-font-h1) !important;
  font-size: clamp(46px, 4.8vw, 76px);
  line-height: 0.98;
  letter-spacing: -0.012em;
  font-weight: 200;

  color: #18181c;

  text-wrap: balance;

  text-rendering: geometricPrecision;
  -webkit-font-smoothing: antialiased;
  font-synthesis: none;
}

.kf-error-text {
  max-width: 620px;
  margin: 22px 0 0;

  color: rgba(24, 24, 28, 0.66);
  font-size: 19px;
  line-height: 1.46;
  font-weight: 450;
}

.kf-error-actions {
  margin-top: 30px;

  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.kf-error-button {
  min-height: 46px;
  padding: 0 20px;

  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;

  border-radius: 999px;

  font-size: 15px;
  line-height: 1;
  font-weight: 620;
  text-decoration: none;

  transition:
    transform 180ms ease,
    color 180ms ease,
    background 180ms ease,
    border-color 180ms ease,
    box-shadow 180ms ease;
}

.kf-error-button::after {
  content: "→";
  font-size: 16px;
  line-height: 1;
  transform: translateY(-1px);
  transition: transform 180ms ease;
}

.kf-error-button--primary {
  color: #ffffff;

  border: 1px solid rgba(255, 255, 255, 0.18);

  background:
    radial-gradient(circle at 10% 0%, rgba(255, 255, 255, 0.15), transparent 42%),
    #171717;

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.12),
    0 12px 28px rgba(24, 24, 28, 0.14);
}

.kf-error-button--secondary {
  color: rgba(24, 24, 28, 0.72);

  border: 1px solid rgba(24, 24, 28, 0.12);

  background: rgba(255, 255, 255, 0.42);

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.72),
    0 8px 18px rgba(38, 39, 78, 0.045);
}

.kf-error-button:hover,
.kf-error-button:focus {
  transform: translateY(-1px);

  color: #ffffff;
  border-color: rgba(255, 255, 255, 0.18);

  background:
    linear-gradient(135deg, rgba(95, 97, 255, 0.96), rgba(52, 53, 106, 0.94)),
    #5f61ff;

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.20),
    0 12px 28px rgba(95, 97, 255, 0.24);

  text-decoration: none;
}

.kf-error-button:hover::after,
.kf-error-button:focus::after {
  transform: translate(2px, -1px);
}

/* Error search */

.kf-error-search {
  max-width: 620px;
  margin-top: 30px;
}

.kf-error-search form,
.kf-error-search .search {
  position: relative !important;

  width: 100% !important;
  max-width: none !important;
  height: 62px !important;
  min-height: 62px !important;
  margin: 0 !important;

  display: flex !important;
  align-items: center !important;

  border-radius: 999px !important;
  border: 1px solid rgba(24, 24, 28, 0.08) !important;

  background: #ffffff !important;

  box-shadow:
    0 16px 42px rgba(38, 39, 78, 0.08),
    inset 0 1px 0 rgba(255, 255, 255, 0.92) !important;

  overflow: hidden !important;
}

.kf-error-search form::before,
.kf-error-search .search::before {
  content: "⌕";

  position: absolute;
  left: 22px;
  top: 50%;
  z-index: 2;

  color: rgba(24, 24, 28, 0.42);
  font-size: 20px;
  line-height: 1;

  transform: translateY(-50%);

  pointer-events: none;
}

.kf-error-search input[type="search"],
.kf-error-search input[type="text"],
.kf-error-search .search-field {
  width: 100% !important;
  height: 62px !important;
  min-height: 62px !important;
  margin: 0 !important;
  padding: 0 22px 0 54px !important;

  border: 0 !important;
  border-radius: 999px !important;
  outline: 0 !important;

  color: #18181c !important;
  font-size: 18px !important;
  line-height: 1 !important;
  font-weight: 430 !important;

  background: transparent !important;
  box-shadow: none !important;

  appearance: none !important;
}

.kf-error-search input[type="search"]::placeholder,
.kf-error-search input[type="text"]::placeholder,
.kf-error-search .search-field::placeholder {
  color: rgba(24, 24, 28, 0.44);
}

.kf-error-search input[type="submit"],
.kf-error-search button[type="submit"] {
  display: none !important;
}

/* Right-side visual */

.kf-error-card__aside {
  min-height: 270px;
  padding-top: 76px;

  display: grid;
  align-content: start;
  justify-items: center;
}

.kf-error-illustration {
  width: min(270px, 100%);
  max-height: 235px;

  display: block;
  object-fit: contain;

  filter:
    drop-shadow(0 18px 32px rgba(95, 97, 255, 0.14))
    drop-shadow(0 6px 14px rgba(38, 39, 78, 0.06));
}

/* Remove old orb styles if any markup lingers */

.kf-error-orb {
  display: none;
}

@media (max-width: 900px) {
.kf-error-page {
  min-height: auto;
  padding: 0 12px;
}

.kf-error-hero {
  padding: 42px 26px 54px;
}

.kf-error-card {
  grid-template-columns: 1fr;
  gap: 30px;
  min-height: 0;
}

.kf-error-card__aside {
  min-height: 0;
  padding-top: 0;
  justify-items: start;
}

  .kf-error-illustration {
  width: min(200px, 100%);
  max-height: 180px;
}
}

@media (max-width: 560px) {
  .kf-error-hero {
  padding: 28px 20px 40px;
}

  .kf-error-eyebrow {
    gap: 10px;
    font-size: 12px;
    line-height: 1.25;
    margin-bottom: 12px;
    font-weight: 560;
    letter-spacing: 0.105em;
  }

  .kf-error-title {
    font-size: clamp(38px, 12vw, 52px);
    line-height: 1;
    letter-spacing: -0.004em;
  }

  .kf-error-text {
    font-size: 16.5px;
  }

  .kf-error-actions {
    display: grid;
    grid-template-columns: 1fr;
  }

  .kf-error-button {
    width: 100%;
  }

  .kf-error-search form,
  .kf-error-search .search,
  .kf-error-search input[type="search"],
  .kf-error-search input[type="text"],
  .kf-error-search .search-field {
    height: 56px !important;
    min-height: 56px !important;
  }

  .kf-error-search input[type="search"],
  .kf-error-search input[type="text"],
  .kf-error-search .search-field {
    font-size: 16px !important;
  }

 .kf-error-illustration {
  width: min(170px, 100%);
  max-height: 155px;
}
}

/* Back to top floater */

.kf-back-to-top {
  position: fixed;
  left: var(--kf-back-to-top-left, 50%);
  bottom: var(--kf-back-to-top-bottom, 28px);
  z-index: 80;

  min-height: 44px;
  padding: 0 16px 0 14px;

  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;

  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.62);

  color: rgba(24, 24, 28, 0.76);
  font-size: 13.5px;
  line-height: 1;
  font-weight: 620;
  text-decoration: none;

  background:
    radial-gradient(circle at 14% 0%, rgba(255, 255, 255, 0.62), transparent 38%),
    linear-gradient(135deg, rgba(255, 255, 255, 0.54), rgba(255, 255, 255, 0.20)),
    rgba(255, 255, 255, 0.24);

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.82),
    0 16px 42px rgba(38, 39, 78, 0.10);

  backdrop-filter: blur(22px) saturate(150%);
  -webkit-backdrop-filter: blur(22px) saturate(150%);

  opacity: 0;
  visibility: hidden;
  transform: translate(-50%, 10px);

  transition:
    opacity 180ms ease,
    visibility 180ms ease,
    transform 180ms ease,
    color 180ms ease,
    background 180ms ease,
    border-color 180ms ease,
    bottom 180ms ease,
    left 180ms ease;
}

.kf-back-to-top span:first-child {
  width: 22px;
  height: 22px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  border-radius: 999px;
  color: #ffffff;
  background: #5f61ff;

  font-size: 14px;
  line-height: 1;
  font-weight: 620;
}

.kf-back-to-top.is-visible {
  opacity: 1;
  visibility: visible;
  transform: translate(-50%, 0);
}

.kf-back-to-top:hover,
.kf-back-to-top:focus {
  color: #18181c;
  border-color: rgba(95, 97, 255, 0.22);
  background:
    radial-gradient(circle at 14% 0%, rgba(255, 255, 255, 0.74), transparent 38%),
    linear-gradient(135deg, rgba(255, 255, 255, 0.68), rgba(255, 255, 255, 0.28)),
    rgba(255, 255, 255, 0.34);
  text-decoration: none;
  transform: translate(-50%, -2px);
}

@media (max-width: 760px) {
  .kf-back-to-top {
    left: auto;
    right: 18px;
    bottom: var(--kf-back-to-top-bottom, 18px);
    min-height: 42px;
    padding: 0 12px;
    transform: translateY(10px);
  }

  .kf-back-to-top.is-visible {
    transform: translateY(0);
  }

  .kf-back-to-top:hover,
  .kf-back-to-top:focus {
    transform: translateY(-2px);
  }

  .kf-back-to-top span:last-child {
    display: none;
  }
}

/* =========================
   Article comments
   ========================= */

.kf-article-comments {
  position: relative;
  overflow: visible;

  width: 100%;
  max-width: 900px;
  margin: 54px auto 0;
  padding: 0;

  border: 0;
  border-radius: 0;

  background: transparent;
  box-shadow: none;

  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

.kf-article-comments::before {
  content: none;
}

.kf-article-comments .comments {
  position: relative;
  z-index: 1;
}

/* Comments header */

.kf-article-comments .comment-overview {
  margin: 0 0 26px;
  padding: 0 0 22px;

  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 8px;

  border-bottom: 1px solid rgba(24, 24, 28, 0.12);
}

.kf-article-comments .comment-heading {
  margin: 0;

  color: #18181c;
  font-family: var(--kf-font-h3);
  font-size: 24px;
  line-height: 1.12;
  font-weight: 500;
  letter-spacing: -0.012em;

  text-rendering: geometricPrecision;
  -webkit-font-smoothing: antialiased;
  font-synthesis: none;
}

.kf-article-comments .comment-callout {
  margin: 0;

  color: rgba(24, 24, 28, 0.52);
  font-size: 15px;
  line-height: 1.35;
  font-weight: 450;
}

/* Remove default Zendesk divider above the comment form */

.kf-article-comments .comment-form,
.kf-article-comments .comment-container {
  border-top: 0 !important;
}

.kf-article-comments .comment-form {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

.kf-article-comments .comment-container {
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* Comments list */

.kf-article-comments .comment-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.kf-article-comments .comment {
  margin: 0;
  padding: 0;
  border: 0;
}

.kf-article-comments .comment + .comment {
  margin-top: 0;
  padding-top: 22px;
  border-top: 1px solid rgba(24, 24, 28, 0.10);
}

.kf-article-comments .comment-wrapper {
  position: relative;
  overflow: visible;

  padding: 0 0 22px;

  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 18px;
  align-items: start;

  border: 0;
  border-radius: 0;

  background: transparent;
  box-shadow: none;
}

.kf-article-comments .comment-wrapper::before {
  content: none;
}

.kf-article-comments .comment-info,
.kf-article-comments .comment-actions-container {
  position: relative;
  z-index: 1;
}

.kf-article-comments .comment-author {
  display: block;
}

.kf-article-comments .comment-meta {
  min-width: 0;

  display: flex;
  flex-wrap: wrap;
  align-items: baseline;
  justify-content: flex-start !important;
  gap: 6px 0;

  color: rgba(24, 24, 28, 0.48);
  font-size: 13.5px;
  line-height: 1.25;
  font-weight: 450;
}

.kf-article-comments .comment-meta > span:first-child,
.kf-article-comments .comment-meta > span:first-child a {
  color: #18181c;
  font-size: 16px;
  line-height: 1.2;
  font-weight: 650;
  text-decoration: none;
}

.kf-article-comments .comment-meta > span:first-child a:hover {
  color: #5f61ff;
}

.kf-article-comments .meta-group,
.kf-article-comments .meta-data {
  color: rgba(24, 24, 28, 0.44);
  font-size: 13px;
  line-height: 1.25;
  font-weight: 450;
}

.kf-article-comments .comment-body {
  margin-top: 14px;

  color: rgba(24, 24, 28, 0.74);
  font-size: 16px;
  line-height: 1.5;
  font-weight: 400;
}

.kf-article-comments .comment-body p {
  margin: 0 0 1em;
}

.kf-article-comments .comment-body p:last-child {
  margin-bottom: 0;
}

.kf-article-comments .comment-body a {
  color: #5f61ff;
  font-weight: 560;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

/* Comment author / timestamp divider */

.kf-article-comments .comment-meta {
  justify-content: flex-start !important;
}

.kf-article-comments .comment-meta .community-badge-titles,
.kf-article-comments .comment-meta .community-badge-achievements {
  margin: 0 !important;
  padding: 0 !important;
}

.kf-article-comments .comment-meta .community-badge-titles:empty,
.kf-article-comments .comment-meta .community-badge-achievements:empty {
  display: none !important;
}

.kf-article-comments .comment-meta .meta-group,
.kf-article-comments .comment-meta .meta-group-opposite {
  margin-left: 0 !important;
  margin-right: 0 !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: flex-start !important;
  gap: 6px;
}

.kf-article-comments .comment-meta .meta-group-opposite::before {
  content: "/";
  margin: 0 10px;
  color: rgba(95, 97, 255, 0.7);
  font-size: 14px;
  line-height: 1;
  font-weight: 400;
}

/* Comment vote/actions */

.kf-article-comments .comment-actions-container {
  display: flex;
  align-items: flex-start;
  justify-content: flex-end;
  gap: 8px;
}

.kf-article-comments .comment-vote {
  display: inline-flex;
  align-items: center;
  gap: 4px;

  min-height: 34px;
  padding: 3px;

  border-radius: 999px;
  border: 1px solid rgba(24, 24, 28, 0.08);

  background: rgba(255, 255, 255, 0.34);
}

.kf-article-comments .comment-vote a,
.kf-article-comments .comment-vote button,
.kf-article-comments .vote-up,
.kf-article-comments .vote-down,
.kf-article-comments .comment-actions button,
.kf-article-comments .comment-actions a {
  width: 27px;
  height: 27px;
  min-width: 27px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  border-radius: 999px;
  border: 0;

  color: rgba(24, 24, 28, 0.46);
  background: transparent;

  transition:
    color 180ms ease,
    background 180ms ease,
    transform 180ms ease;
}

.kf-article-comments .comment-vote a:hover,
.kf-article-comments .comment-vote button:hover,
.kf-article-comments .vote-up:hover,
.kf-article-comments .vote-down:hover,
.kf-article-comments .vote-voted {
  transform: translateY(-1px);

  color: #ffffff;
  background: #5f61ff;
}

.kf-article-comments .vote-sum {
  min-width: 18px;

  color: rgba(24, 24, 28, 0.50);
  font-size: 13px;
  line-height: 1;
  font-weight: 620;
  text-align: center;
}

.kf-article-comments .comment-actions {
  min-height: 34px;
  padding: 3px;

  display: inline-flex;
  align-items: center;

  border-radius: 999px;
  border: 1px solid rgba(24, 24, 28, 0.08);

  background: rgba(255, 255, 255, 0.34);
}

.kf-article-comments .comment-actions button:hover,
.kf-article-comments .comment-actions a:hover {
  color: #ffffff;
  background: #5f61ff;
}

/* Pagination inside comments */

.kf-article-comments .pagination {
  margin-top: 22px;
}

/* Comment form */

.kf-article-comments .comment-form {
  margin-top: 28px;
  padding-top: 24px;

  display: block;

  border-top: 1px solid rgba(24, 24, 28, 0.10);
  border-radius: 0;

  background: transparent;
  box-shadow: none;
}

.kf-article-comments .comment-container {
  min-width: 0;
}

.kf-article-comments .comment-container textarea,
.kf-article-comments .comment-container .comment-editor,
.kf-article-comments .comment-container .hc-wysiwyg,
.kf-article-comments .comment-container iframe {
  width: 100%;
  min-height: 118px;

  border-radius: 22px !important;
  border: 1px solid rgba(24, 24, 28, 0.10) !important;

  color: #18181c;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.70), rgba(255, 255, 255, 0.36)),
    rgba(255, 255, 255, 0.34) !important;

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.82),
    0 8px 20px rgba(38, 39, 78, 0.035) !important;
}

.kf-article-comments .comment-form-controls {
  margin-top: 14px;

  display: flex;
  justify-content: flex-end;
}

.kf-article-comments .comment-form input[type="submit"],
.kf-article-comments .comment-form .button {
  min-height: 42px;
  padding: 0 22px;

  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.18);

  color: #ffffff;
  font-size: 14px;
  line-height: 1;
  font-weight: 650;

  background: #171717;

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.12),
    0 10px 22px rgba(24, 24, 28, 0.12);

  transition:
    transform 180ms ease,
    background 180ms ease,
    box-shadow 180ms ease;
}

.kf-article-comments .comment-form input[type="submit"]:hover,
.kf-article-comments .comment-form .button:hover {
  transform: translateY(-1px);

  color: #ffffff;
  background: #5f61ff;

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.18),
    0 10px 22px rgba(95, 97, 255, 0.24);
}

/* Bottom comment callout */

.kf-article-comments .comment-callout--before-form {
  margin: 24px 0 0;
  padding: 15px 18px;

  border-radius: 18px;
  border: 1px solid rgba(95, 97, 255, 0.12);

  color: rgba(24, 24, 28, 0.62);
  font-size: 14.5px;
  line-height: 1.4;
  font-weight: 450;

  background: rgba(95, 97, 255, 0.06);
}

.kf-article-page .container-divider, .kf-article-page > .container, .kf-article-page .sub-nav {
  display: none;
}

.kf-article-page .article-header {
  display: none;
}

/* =========================
   Article color macros
   ========================= */

/* Code block / inline code macro */
.kf-article-body span[style*="color: #723609"] {
  display: inline;
  margin: 0 2px;
  padding: 0.08em 0.38em;

  border-radius: 6px;
  border: 1px solid rgba(24, 24, 28, 0.12);

  color: #18181c !important;
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", monospace !important;
  font-size: 0.92em !important;
  line-height: 1.35;

  background: rgba(233, 235, 237, 0.88) !important;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.7);
}

/* Shared callout styling */
.kf-article-body span[style*="color: #7D1905"],
.kf-article-body span[style*="color: #054580"],
.kf-article-body span[style*="color: #01512A"],
.kf-article-body span[style*="color: #8B1379"],
.kf-article-body span[style*="color: #640A8E"] {
  display: block;
  max-width: 100%;
  position: relative;
  overflow: hidden;

  margin: 1.5rem 0;
  padding: 1rem 1.35rem;

  border-radius: 16px;

  color: #18181c !important;
  font-family: var(--kf-font-body);
  font-size: 18px;
line-height: 1.58;
  font-weight: 400;

  word-wrap: break-word;

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.62),
    0 10px 26px rgba(24, 24, 28, 0.06);
}

/* Warning */
.kf-article-body span[style*="color: #7D1905"] {
  background: #ffe1d8;
  border-left: 4px solid #ff3a00;
}

.kf-article-body span[style*="color: #7D1905"]::before {
  content: "Warning: ";
  font-family: var(--kf-font-h4-5) !important;
  font-weight: 600;
  color: #18181c;
}

/* Note */
.kf-article-body span[style*="color: #054580"] {
  background: #d8f1ff;
  border-left: 4px solid #5f61ff;
}

.kf-article-body span[style*="color: #054580"]::before {
  content: "Note: ";
  font-family: var(--kf-font-h4-5) !important;
  font-weight: 600;
  color: #18181c;
}

/* Tip */
.kf-article-body span[style*="color: #01512A"] {
  background: #e2ffd8;
  border-left: 4px solid #34e590;
}

.kf-article-body span[style*="color: #01512A"]::before {
  content: "Tip: ";
  font-family: var(--kf-font-h4-5) !important;
  font-weight: 600;
  color: #18181c;
}

/* Important */
.kf-article-body span[style*="color: #8B1379"] {
  background: #fff4d8;
  border-left: 4px solid #ffba00;
}

.kf-article-body span[style*="color: #8B1379"]::before {
  content: "Important: ";
  font-family: var(--kf-font-h4-5) !important;
  font-weight: 600;
  color: #18181c;
}

/* Versions */
.kf-article-body span[style*="color: #640A8E"] {
  background: #d8d9ff;
  border-left: 4px solid #5f61ff;
}

.kf-article-body span[style*="color: #640A8E"]::before {
  content: "Versions: ";
  font-family: var(--kf-font-h4-5) !important;
  font-weight: 600;
  color: #18181c;
}

/* Internal-use critical warning */

.kf-article-body .kf-internal-warning {
  position: relative;
  overflow: hidden;

  margin: 0 0 1.85rem !important;
  padding: 1rem 1.2rem 1rem 1.35rem !important;

  display: flex;
  align-items: center;
  gap: 12px;

  border-radius: 18px;
  border: 1px solid rgba(24, 24, 28, 0.12);
border-left: 4px solid #ff9371;

  color: #18181c !important;
  font-size: 15.5px;
  line-height: 1.42;
  font-weight: 560;

 background:
  linear-gradient(135deg, rgba(255, 255, 255, 0.78), rgba(255, 255, 255, 0.38)),
  rgba(248, 248, 255, 0.64);

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.84),
    0 14px 34px rgba(38, 39, 78, 0.06);
}

.kf-article-body .kf-internal-warning::before {
  content: "Internal";
  flex: 0 0 auto;

  min-height: 25px;
  padding: 0 10px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  border-radius: 999px;

  color: #ffffff;
  background: #ff9371;

  font-size: 12px;
  line-height: 1;
  font-weight: 680;
  letter-spacing: 0.035em;
  text-transform: uppercase;
}

.kf-article-body .kf-internal-warning strong,
.kf-article-body .kf-internal-warning b,
.kf-article-body .kf-internal-warning span {
  color: #18181c !important;
  font-family: var(--kf-font-body) !important;
  font-weight: 580 !important;
}

/* =========================
   Request list page
   ========================= */

.kf-requests-page {
  position: relative;
  min-height: 100vh;
  padding: 20px 20px 0;
  color: #18181c;
  background: linear-gradient(
    180deg,
    var(--kf-mist-white) 0%,
    #ffffff 18%,
    #eef0ff 46%,
    #ffffff 86%,
    var(--kf-mist-white) 100%
  );
}

.kf-requests-page .container-divider,
.kf-requests-page > .container,
.kf-requests-page .sub-nav,
.kf-requests-page .page-heading {
  display: none !important;
}

/* Hero */

.kf-requests-hero {
  position: relative;
  overflow: visible;
  padding: 72px 40px 36px;
  color: #18181c;
  background: transparent;
}

.kf-requests-hero__inner {
  width: min(1320px, 100%);
  margin: 0 auto;
}

.kf-requests-header {
  max-width: 780px;
  margin: 0 auto;
  text-align: center;
}

.kf-requests-eyebrow {
  width: fit-content;
  margin: 0 auto 13px;

  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;

  color: #5f61ff !important;
  font-size: 15px;
  line-height: 1;
  font-weight: 560;
  letter-spacing: 0.125em;
  text-transform: uppercase;

  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  font-synthesis: none;
}

.kf-requests-eyebrow::before {
  content: "/ / / /";
  flex: 0 0 auto;
  color: #5f61ff;
  letter-spacing: 0;
  line-height: 1;
}

.kf-requests-title {
  max-width: 900px;
  margin: 0;

  font-family: var(--kf-font-h1) !important;
  font-size: clamp(44px, 5vw, 76px);
  line-height: 0.98;
  letter-spacing: -0.006em;
  font-weight: 200;

  color: #18181c;

  text-rendering: geometricPrecision;
  -webkit-font-smoothing: antialiased;
  font-synthesis: none;
}

.kf-requests-description {
  max-width: 680px;
  margin: 18px auto 0;

  color: rgba(24, 24, 28, 0.64);
  font-size: 19px;
  line-height: 1.42;
  font-weight: 450;
}

/* Main shell */

.kf-requests-main {
  width: min(1320px, calc(100vw - 80px));
  margin: 8px auto 0;
  padding: 0 0 92px;
}

/* =========================
   Request filter tabs
   Matches Knowledge Hub / feature carousel
   ========================= */

.kf-requests-tabs {
  width: 100%;
  margin: 0 auto 30px;

  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;

  border: 0;
}

.kf-requests-tab {
  position: relative;

  min-height: 54px;
  padding: 0 18px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  border: 0;
  border-bottom: 1px solid rgba(24, 24, 28, 0.16);
  border-radius: 0;

  color: rgba(24, 24, 28, 0.46);

  font-size: 19px;
  line-height: 1;
  font-weight: 560;
  text-align: center;
  text-decoration: none;
  white-space: nowrap;

  background: transparent;
  box-shadow: none;

  transition:
    color 180ms ease,
    border-color 180ms ease;
}

.kf-requests-tab:hover {
  color: rgba(24, 24, 28, 0.78);
  text-decoration: none;
}

.kf-requests-tab.is-active {
  color: #18181c;
  border-bottom-color: #5f5fc4;
  font-weight: 580;

  -webkit-font-smoothing: antialiased;
  text-rendering: geometricPrecision;
  font-synthesis: none;
}

.kf-requests-tab.is-active::after {
  content: "";

  position: absolute;
  right: -1px;
  bottom: -1px;

  width: 1px;
  height: 9px;

  background: #5f5fc4;
}

.kf-requests-tab:focus-visible {
  outline: 2px solid rgba(95, 95, 196, 0.7);
  outline-offset: 5px;
  border-radius: 10px;
}

/* =========================
   Request search and filters
   ========================= */

.kf-requests-toolbar {
  margin: 0 0 46px;
}


/* Three stable columns:
   search / organization / status */

.kf-requests-toolbar__inner {
  display: grid;

  grid-template-columns:
    minmax(320px, 1fr)
    minmax(210px, 240px)
    minmax(180px, 210px);

  align-items: end;
  gap: 14px;
}


/* Remove the old nested flex behavior */

.kf-requests-filter-row {
  display: contents;
}


/* =========================
   Search
   ========================= */

.kf-requests-search {
  position: relative;
  min-width: 0;
}

.kf-requests-search::before {
  content: "⌕";

  position: absolute;
  left: 20px;
  top: 50%;
  z-index: 2;

  color: rgba(24, 24, 28, 0.42);

  font-size: 19px;
  line-height: 1;

  transform: translateY(-50%);

  pointer-events: none;
}

.kf-requests-search input[type="search"],
.kf-requests-search input[type="text"],
.kf-requests-search .requests-search {
  width: 100% !important;

  height: 54px !important;
  min-height: 54px !important;

  margin: 0 !important;

  padding:
    0
    22px
    0
    50px !important;

  border:
    1px solid
    rgba(24, 24, 28, 0.09) !important;

  border-radius: 999px !important;

  outline: 0 !important;

  color: #18181c !important;

  font-size: 16px !important;
  line-height: 1 !important;
  font-weight: 450 !important;

  background: rgba(255, 255, 255, 0.84) !important;

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.96),
    0 12px 30px rgba(38, 39, 78, 0.05) !important;

  appearance: none !important;
}

.kf-requests-search input[type="search"]::placeholder,
.kf-requests-search input[type="text"]::placeholder,
.kf-requests-search .requests-search::placeholder {
  color: rgba(24, 24, 28, 0.44);
}


/* =========================
   Filter fields
   ========================= */

.kf-requests-select {
  min-width: 0;
}

.kf-requests-select label {
  display: block;

  margin: 0 0 9px;
  padding: 0;

  color: rgba(24, 24, 28, 0.54);

  font-size: 12.5px;
  line-height: 1;
  font-weight: 620;

  letter-spacing: 0.095em;
  text-align: center;
  text-transform: uppercase;
}


/* Custom wrapper gives the arrow its own safe space */

.kf-requests-select {
  position: relative;
  min-width: 0;
}

.kf-requests-select::after {
  content: "";

  position: absolute;

  right: 20px;
  bottom: 22px;

  width: 7px;
  height: 7px;

  border-right:
    1.5px solid
    rgba(24, 24, 28, 0.58);

  border-bottom:
    1.5px solid
    rgba(24, 24, 28, 0.58);

  transform: rotate(45deg);

  pointer-events: none;
}


/* Native Zendesk selects */

.kf-requests-select select {
  width: 100% !important;

  height: 54px !important;
  min-height: 54px !important;

  margin: 0 !important;

  /*
   * The larger right padding is the important fix:
   * text stops well before the custom arrow.
   */

  padding:
    0
    52px
    0
    20px !important;

  border:
    1px solid
    rgba(24, 24, 28, 0.09) !important;

  border-radius: 999px !important;

  outline: 0 !important;

  color: rgba(24, 24, 28, 0.72) !important;

  font-size: 14.5px !important;
  line-height: 1 !important;
  font-weight: 470 !important;

  background:
    rgba(255, 255, 255, 0.84) !important;

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.96),
    0 12px 30px rgba(38, 39, 78, 0.045) !important;

  appearance: none !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;

  cursor: pointer;
}


/* Hover */

.kf-requests-select:not(.kf-requests-select--disabled)
select:hover {
  border-color:
    rgba(95, 97, 255, 0.22) !important;
}


/* Keyboard focus */

.kf-requests-select select:focus {
  border-color:
    rgba(95, 97, 255, 0.42) !important;

  box-shadow:
    0 0 0 3px rgba(95, 97, 255, 0.08),
    inset 0 1px 0 rgba(255, 255, 255, 0.96),
    0 12px 30px rgba(38, 39, 78, 0.055) !important;
}


/* =========================
   Disabled Organization field
   ========================= */

.kf-requests-select--disabled {
  opacity: 0.58;
}

.kf-requests-select--disabled::after {
  border-color:
    rgba(24, 24, 28, 0.32);
}

.kf-requests-select--disabled select {
  color:
    rgba(24, 24, 28, 0.44) !important;

  border-color:
    rgba(24, 24, 28, 0.065) !important;

  background:
    rgba(244, 244, 250, 0.72) !important;

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.74) !important;

  cursor: not-allowed;
}


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

@media (max-width: 1050px) {

  .kf-requests-toolbar__inner {
    grid-template-columns:
      minmax(260px, 1fr)
      minmax(180px, 210px)
      minmax(160px, 190px);

    gap: 12px;
  }

}


@media (max-width: 800px) {

  .kf-requests-toolbar__inner {
    grid-template-columns:
      repeat(2, minmax(0, 1fr));

    gap: 14px;
  }

  .kf-requests-search {
    grid-column: 1 / -1;
  }

}


@media (max-width: 560px) {

  .kf-requests-toolbar__inner {
    grid-template-columns: 1fr;
  }

  .kf-requests-search {
    grid-column: auto;
  }

}

/* =========================
   Themed request dropdowns
   ========================= */


/* Hide the real Zendesk select visually,
   but keep it in the page for form behavior. */

.kf-native-select--enhanced {
  position: absolute !important;

  width: 1px !important;
  height: 1px !important;

  margin: 0 !important;
  padding: 0 !important;

  overflow: hidden !important;

  opacity: 0 !important;

  pointer-events: none !important;
}


/* Remove the older CSS arrow once
   the custom dropdown is active. */

.kf-requests-select.is-custom-select::after {
  content: none;
}


/* Wrapper */

.kf-custom-select {
  position: relative;

  width: 100%;
}


/* =========================
   Closed field
   ========================= */

.kf-custom-select__button {
  position: relative;

  width: 100%;
  min-height: 54px;

  padding:
    0
    52px
    0
    20px;

  display: flex;
  align-items: center;

  border:
    1px solid
    rgba(24, 24, 28, 0.09);

  border-radius: 999px;

  color:
    rgba(24, 24, 28, 0.74);

  background:
    linear-gradient(
      135deg,
      rgba(255, 255, 255, 0.92),
      rgba(255, 255, 255, 0.72)
    ),
    rgba(255, 255, 255, 0.78);

  box-shadow:
    inset
    0
    1px
    0
    rgba(255, 255, 255, 0.98),

    0
    12px
    30px
    rgba(38, 39, 78, 0.05);

  font-family:
    var(--kf-font-body) !important;

  font-size: 14.5px;
  line-height: 1;
  font-weight: 470;

  text-align: left;

  cursor: pointer;

  transition:
    border-color 180ms ease,
    box-shadow 180ms ease,
    background 180ms ease;
}


.kf-custom-select__button:hover {
  border-color:
    rgba(95, 97, 255, 0.26);

  background:
    linear-gradient(
      135deg,
      rgba(255, 255, 255, 1),
      rgba(247, 247, 255, 0.84)
    );
}


.kf-custom-select.is-open
.kf-custom-select__button {
  border-color:
    rgba(95, 97, 255, 0.46);

  box-shadow:
    0
    0
    0
    3px
    rgba(95, 97, 255, 0.09),

    inset
    0
    1px
    0
    rgba(255, 255, 255, 1),

    0
    15px
    34px
    rgba(38, 39, 78, 0.08);
}


.kf-custom-select__value {
  overflow: hidden;

  text-overflow: ellipsis;
  white-space: nowrap;
}


/* =========================
   Arrow
   ========================= */

.kf-custom-select__arrow {
  position: absolute;

  top: 50%;
  right: 21px;

  width: 8px;
  height: 8px;

  border-right:
    1.5px solid
    rgba(24, 24, 28, 0.56);

  border-bottom:
    1.5px solid
    rgba(24, 24, 28, 0.56);

  transform:
    translateY(-70%)
    rotate(45deg);

  transition:
    transform 180ms ease;
}


.kf-custom-select.is-open
.kf-custom-select__arrow {
  transform:
    translateY(-30%)
    rotate(225deg);
}


/* =========================
   Open menu
   ========================= */

.kf-custom-select__menu {
  position: absolute;

  top: calc(100% + 10px);
  left: 0;
  right: 0;

  z-index: 80;

  overflow: hidden;

  padding: 8px;

  border:
    1px solid
    rgba(255, 255, 255, 0.86);

  border-radius: 20px;

  background:
    radial-gradient(
      circle at 0% 0%,
      rgba(255, 255, 255, 0.98),
      transparent 44%
    ),

    linear-gradient(
      145deg,
      rgba(255, 255, 255, 0.95),
      rgba(241, 242, 255, 0.9)
    ),

    rgba(247, 247, 255, 0.94);

  box-shadow:
    inset
    0
    1px
    0
    rgba(255, 255, 255, 1),

    0
    22px
    50px
    rgba(38, 39, 78, 0.16);

  backdrop-filter:
    blur(24px)
    saturate(150%);

  -webkit-backdrop-filter:
    blur(24px)
    saturate(150%);

  animation:
    kfCustomSelectIn
    160ms
    ease
    both;
}


.kf-custom-select__menu[hidden] {
  display: none;
}


/* =========================
   Options
   ========================= */

.kf-custom-select__option {
  width: 100%;
  min-height: 43px;

  padding:
    0
    13px;

  display: grid;

  grid-template-columns:
    minmax(0, 1fr)
    20px;

  align-items: center;
  gap: 10px;

  border: 0;
  border-radius: 13px;

  color:
    rgba(24, 24, 28, 0.72);

  background:
    transparent;

  font-family:
    var(--kf-font-body) !important;

  font-size: 14px;
  line-height: 1.2;
  font-weight: 470;

  text-align: left;

  cursor: pointer;

  transition:
    color 150ms ease,
    background 150ms ease,
    transform 150ms ease;
}


.kf-custom-select__option:hover,
.kf-custom-select__option:focus {
  color:
    #292a63;

  background:
    rgba(222, 223, 255, 0.66);

  outline: 0;

  transform:
    translateX(2px);
}


.kf-custom-select__option.is-selected {
  color:
    #3f41a7;

  background:
    linear-gradient(
      135deg,
      rgba(224, 225, 255, 0.9),
      rgba(237, 237, 255, 0.74)
    );

  font-weight: 590;
}


.kf-custom-select__option-label {
  min-width: 0;
}


/* =========================
   Selected check
   ========================= */

.kf-custom-select__check {
  display: inline-flex;

  align-items: center;
  justify-content: center;

  color:
    #5557d9;

  font-size: 14px;
  line-height: 1;

  opacity: 0;

  transform:
    scale(0.75);

  transition:
    opacity 150ms ease,
    transform 150ms ease;
}


.kf-custom-select__option.is-selected
.kf-custom-select__check {
  opacity: 1;

  transform:
    scale(1);
}


/* =========================
   Disabled Organization field
   ========================= */

.kf-custom-select.is-disabled {
  opacity: 0.56;
}


.kf-custom-select.is-disabled
.kf-custom-select__button {
  color:
    rgba(24, 24, 28, 0.44);

  background:
    rgba(244, 244, 250, 0.74);

  cursor:
    not-allowed;

  box-shadow:
    inset
    0
    1px
    0
    rgba(255, 255, 255, 0.74);
}


/* =========================
   Animation
   ========================= */

@keyframes kfCustomSelectIn {

  from {

    opacity: 0;

    transform:
      translateY(-5px)
      scale(0.985);

  }

  to {

    opacity: 1;

    transform:
      translateY(0)
      scale(1);

  }

}

/* List */

.kf-requests-list {
  color: #18181c;
}

.kf-requests-list__head,
.kf-request-row {
  display: grid;
  grid-template-columns: minmax(110px, 0.72fr) minmax(280px, 3fr) minmax(130px, 0.9fr) minmax(150px, 1fr) minmax(130px, 0.78fr);
  column-gap: 24px;
  align-items: center;
}

.kf-requests-list__head {
  padding: 0 0 14px;
  border-bottom: 1px solid rgba(24, 24, 28, 0.16);
}

.kf-requests-list__col {
  color: rgba(24, 24, 28, 0.44);
  font-size: 12.5px;
  line-height: 1;
  font-weight: 700;
  letter-spacing: 0.095em;
  text-transform: uppercase;
}

.kf-requests-list__col a {
  color: inherit;
  text-decoration: none;
}

.kf-requests-list__col a:hover {
  color: #5f61ff;
  text-decoration: none;
}

.kf-request-row {
  position: relative;

  min-height: 88px;
  padding: 20px 0;

  border-bottom: 1px solid rgba(24, 24, 28, 0.10);

  transition:
    transform 180ms ease,
    border-color 180ms ease,
    background 180ms ease;
}

.kf-request-row::before {
  content: "";
  position: absolute;
  left: 0;
  top: -1px;

  width: 42px;
  height: 2px;

  border-radius: 999px;
  background: #5f5fc4;

  opacity: 0;
  transform: scaleX(0);
  transform-origin: left center;

  transition:
    opacity 180ms ease,
    transform 180ms ease;
}

.kf-request-row:hover {
  transform: translateY(-2px);
  border-bottom-color: rgba(95, 97, 255, 0.22);
  background: linear-gradient(
    90deg,
    rgba(95, 97, 255, 0.055),
    rgba(255, 255, 255, 0)
  );
}

.kf-request-row:hover::before {
  opacity: 1;
  transform: scaleX(1);
}

.kf-request-row__cell {
  min-width: 0;

  color: rgba(24, 24, 28, 0.62);
  font-size: 15.5px;
  line-height: 1.32;
  font-weight: 450;
}

.kf-request-id-wrap {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.kf-request-id {
  color: rgba(24, 24, 28, 0.50);
  font-size: 14px;
  line-height: 1;
  font-weight: 650;
  letter-spacing: 0.01em;
}

.kf-request-subject-link {
  position: relative;

  display: inline-flex;
  align-items: center;
  max-width: 100%;
  padding-right: 28px;

  color: #34356a;
  font-size: 19px;
  line-height: 1.22;
  font-weight: 560;
  letter-spacing: -0.006em;
  text-decoration: none;

  transition:
    color 180ms ease,
    transform 180ms ease;
}

.kf-request-subject-link::after {
  content: "→";
  position: absolute;
  right: 0;
  top: 0.03em;

  color: #5f5fc4;

  opacity: 0;
  transform: translateX(-5px);

  transition:
    opacity 180ms ease,
    transform 180ms ease;
}

.kf-request-subject-text {
  min-width: 0;
  overflow: hidden;
  display: block;

  text-overflow: ellipsis;
  white-space: nowrap;
}

.kf-request-row:hover .kf-request-subject-link {
  color: #18181c;
  transform: translateX(2px);
  text-decoration: none;
}

.kf-request-row:hover .kf-request-subject-link::after {
  opacity: 1;
  transform: translateX(0);
}

/* Status pills */

.kf-request-row .request-status {
  min-height: 30px;
  padding: 0 12px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  border-radius: 999px;
  border: 1px solid transparent;

  font-size: 12.5px;
  line-height: 1;
  font-weight: 720;
  letter-spacing: 0.01em;
  white-space: nowrap;
}

/* Safer defaults, then status-specific treatments */

.kf-request-row .request-status {
  color: #2d2f8f;
  border-color: rgba(95, 97, 255, 0.18);
  background: rgba(232, 233, 255, 0.76);
}

.kf-request-row .request-status--new,
.kf-request-row .request-status--open {
  color: #ffffff;
  border-color: #5f61ff;
  background: #5f61ff;
}

.kf-request-row .request-status--pending,
.kf-request-row .request-status--hold {
  color: #0a0b2e;
  border-color: #a5a7ff;
  background: #a5a7ff;
}

.kf-request-row .request-status--answered {
  color: #2d2f8f;
  border-color: #e8e9ff;
  background: #e8e9ff;
}

.kf-request-row .request-status--solved,
.kf-request-row .request-status--closed {
  color: rgba(24, 24, 28, 0.58);
  border-color: rgba(24, 24, 28, 0.12);
  background: rgba(255, 255, 255, 0.58);
}

/* Native pagination on request list */

.kf-requests-main .pagination {
  margin: 34px 0 0;
  padding: 0;

  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;

  color: #18181c;
}

.kf-requests-main .pagination ul {
  display: flex;
  align-items: center;
  gap: 6px;

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

.kf-requests-main .pagination li {
  margin: 0;
  padding: 0;
}

.kf-requests-main .pagination a,
.kf-requests-main .pagination span {
  min-width: 36px;
  height: 36px;
  padding: 0 12px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  border-radius: 999px;

  color: rgba(24, 24, 28, 0.66);
  font-size: 14px;
  line-height: 1;
  font-weight: 560;
  text-decoration: none;

  border: 1px solid rgba(24, 24, 28, 0.10);
  background: rgba(255, 255, 255, 0.42);

  transition:
    transform 180ms ease,
    color 180ms ease,
    background 180ms ease,
    border-color 180ms ease,
    box-shadow 180ms ease;
}

.kf-requests-main .pagination a:hover,
.kf-requests-main .pagination a:focus {
  transform: translateY(-1px);

  color: #18181c;
  border-color: rgba(95, 97, 255, 0.18);
  background: rgba(255, 255, 255, 0.72);

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.72),
    0 8px 18px rgba(38, 39, 78, 0.06);

  text-decoration: none;
}

.kf-requests-main .pagination .pagination-current,
.kf-requests-main .pagination .current,
.kf-requests-main .pagination span[aria-current="page"] {
  color: #ffffff;
  border-color: rgba(255, 255, 255, 0.18);
  background: #5f61ff;

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.18),
    0 10px 22px rgba(95, 97, 255, 0.20);
}

/* Empty state */

.kf-requests-empty {
  width: min(780px, 100%);
  margin: 24px auto 0;
  padding: 34px 0 36px;

  text-align: center;

  border-top: 1px solid rgba(24, 24, 28, 0.12);
  border-bottom: 1px solid rgba(24, 24, 28, 0.12);
}

.kf-requests-empty__eyebrow {
  margin: 0 0 12px;

  color: #5f61ff;
  font-size: 12.5px;
  line-height: 1;
  font-weight: 700;
  letter-spacing: 0.095em;
  text-transform: uppercase;
}

.kf-requests-empty__title {
  margin: 0;

  color: #18181c;
  font-family: var(--kf-font-h2) !important;
  font-size: 34px;
  line-height: 1.04;
  font-weight: 300;
  letter-spacing: -0.006em;
}

.kf-requests-empty__text {
  max-width: 560px;
  margin: 14px auto 0;

  color: rgba(24, 24, 28, 0.62);
  font-size: 16.5px;
  line-height: 1.42;
  font-weight: 450;
}

/* Beta helper shell */

.kf-requests-beta-shell {
  color: #18181c;
}

/* =========================================================
   Request list — active showcase + request history
   ========================================================= */


/* =========================
   Shared section headings
   ========================= */

.kf-request-section-heading {
  margin: 0 0 24px;

  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 32px;
}

.kf-request-section-heading__eyebrow {
  margin: 0 0 10px;

  color: #5f61ff !important;

  font-size: 12.5px;
  line-height: 1;
  font-weight: 680;
  letter-spacing: 0.105em;
  text-transform: uppercase;
}

.kf-request-section-heading__title {
  margin: 0;

  color: #18181c;

  font-family: var(--kf-font-h2) !important;
  font-size: clamp(32px, 3vw, 46px);
  line-height: 1;
  font-weight: 300;
  letter-spacing: -0.012em;
}

.kf-request-section-heading__description {
  max-width: 650px;
  margin: 12px 0 0;

  color: rgba(24, 24, 28, 0.6);

  font-size: 16px;
  line-height: 1.42;
  font-weight: 440;
}

.kf-request-section-heading__count {
  flex: 0 0 auto;

  min-height: 34px;
  padding: 0 14px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  border: 1px solid rgba(24, 24, 28, 0.11);
  border-radius: 999px;

  color: rgba(24, 24, 28, 0.58);
  background: rgba(255, 255, 255, 0.44);

  font-size: 13px;
  line-height: 1;
  font-weight: 560;

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.82),
    0 8px 22px rgba(38, 39, 78, 0.035);

  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}


/* =========================
   Active requests section
   ========================= */

.kf-active-requests {
  position: relative;

  margin: 50px 0 0;
  padding: 0 0 58px;

  border-bottom: 1px solid rgba(24, 24, 28, 0.12);
}

.kf-active-requests__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 14px;
}


/* =========================
   Active request showcase
   ========================= */

.kf-active-request {
  position: relative;
  overflow: hidden;

  border: 1px solid rgba(255, 255, 255, 0.76);
  border-radius: 28px;

  color: #18181c;

  background:
    radial-gradient(
      circle at 0% 0%,
      rgba(255, 255, 255, 0.92),
      transparent 34%
    ),
    radial-gradient(
      circle at 100% 100%,
      rgba(165, 167, 255, 0.18),
      transparent 30%
    ),
    linear-gradient(
      135deg,
      rgba(255, 255, 255, 0.7),
      rgba(255, 255, 255, 0.34)
    ),
    rgba(255, 255, 255, 0.32);

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.92),
    0 18px 46px rgba(38, 39, 78, 0.065);

  backdrop-filter: blur(24px) saturate(145%);
  -webkit-backdrop-filter: blur(24px) saturate(145%);

  transition:
    transform 220ms ease,
    border-color 220ms ease,
    box-shadow 220ms ease,
    background 220ms ease;
}

.kf-active-request::before {
  content: "";

  position: absolute;
  inset: 0 auto 0 0;

  width: 4px;

  background: #5f61ff;

  pointer-events: none;
}

.kf-active-request::after {
  content: "";

  position: absolute;
  inset: 0;

  pointer-events: none;

  background:
    linear-gradient(
      135deg,
      rgba(255, 255, 255, 0.38),
      transparent 34%
    );

  opacity: 0.76;
}

.kf-active-request:hover {
  transform: translateY(-3px);

  border-color: rgba(255, 255, 255, 0.96);

  background:
    radial-gradient(
      circle at 0% 0%,
      rgba(255, 255, 255, 1),
      transparent 36%
    ),
    radial-gradient(
      circle at 100% 100%,
      rgba(165, 167, 255, 0.24),
      transparent 32%
    ),
    linear-gradient(
      135deg,
      rgba(255, 255, 255, 0.82),
      rgba(255, 255, 255, 0.42)
    ),
    rgba(255, 255, 255, 0.4);

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 1),
    0 24px 58px rgba(38, 39, 78, 0.1);
}


/* Slight status-specific accent colors */

.kf-active-request--new::before {
  background: #5f61ff;
}

.kf-active-request--open::before {
  background: #7375ed;
}

.kf-active-request--pending::before {
  background: #d49b49;
}

.kf-active-request--hold::before {
  background: #9a7bbb;
}


/* =========================
   Active request link
   ========================= */

.kf-active-request__link {
  position: relative;
  z-index: 1;

  display: block;

  padding: 25px 27px 27px;

  color: #18181c;

  text-decoration: none;
}

.kf-active-request__link:hover,
.kf-active-request__link:focus {
  color: #18181c;
  text-decoration: none;
}

.kf-active-request__link:focus-visible {
  outline: 2px solid rgba(95, 97, 255, 0.7);
  outline-offset: -4px;
  border-radius: 28px;
}


/* =========================
   Active request top line
   ========================= */

.kf-active-request__topline {
  margin-bottom: 20px;

  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
}

.kf-active-request__updated {
  color: rgba(24, 24, 28, 0.52);

  font-size: 13.5px;
  line-height: 1.2;
  font-weight: 470;
}


/* =========================
   Active request content
   ========================= */

.kf-active-request__content {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 42px;
  align-items: center;
  gap: 28px;
}

.kf-active-request__main {
  min-width: 0;
}

.kf-active-request__subject {
  max-width: 900px;
  margin: 0;

  color: #272856;

  font-family: var(--kf-font-h3) !important;
  font-size: clamp(22px, 2.1vw, 29px);
  line-height: 1.12;
  font-weight: 500;
  letter-spacing: -0.009em;

  transition:
    color 180ms ease,
    transform 180ms ease;
}

.kf-active-request:hover .kf-active-request__subject {
  color: #18181c;
  transform: translateX(2px);
}


/* =========================
   Active request metadata
   ========================= */

.kf-active-request__meta {
  margin-top: 14px;

  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 9px;

  color: rgba(24, 24, 28, 0.54);

  font-size: 14px;
  line-height: 1.3;
  font-weight: 450;
}

.kf-active-request__id {
  color: rgba(24, 24, 28, 0.68);
  font-weight: 580;
}

.kf-active-request__meta-divider {
  width: 3px;
  height: 3px;

  border-radius: 999px;

  background: rgba(24, 24, 28, 0.28);
}


/* =========================
   Active request arrow
   ========================= */

.kf-active-request__arrow {
  width: 42px;
  height: 42px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  justify-self: end;

  border: 1px solid rgba(255, 255, 255, 0.72);
  border-radius: 999px;

  color: rgba(24, 24, 28, 0.54);

  background:
    linear-gradient(
      135deg,
      rgba(255, 255, 255, 0.82),
      rgba(255, 255, 255, 0.38)
    ),
    rgba(255, 255, 255, 0.3);

  font-size: 19px;
  line-height: 1;

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.92),
    0 10px 24px rgba(38, 39, 78, 0.06);

  transition:
    transform 200ms ease,
    color 200ms ease,
    background 200ms ease,
    box-shadow 200ms ease;
}

.kf-active-request:hover .kf-active-request__arrow {
  transform: translateX(4px);

  color: #ffffff;

  background:
    linear-gradient(
      135deg,
      #7375ff,
      #4d4fcf
    );

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.24),
    0 12px 28px rgba(95, 97, 255, 0.24);
}


/* =========================
   Active status badges
   ========================= */

.kf-active-request .request-status {
  min-height: 29px;
  padding: 0 11px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  border-radius: 999px;

  font-size: 12px;
  line-height: 1;
  font-weight: 650;
  letter-spacing: 0.025em;
}

.kf-active-request .request-status--new,
.kf-active-request .request-status--open {
  color: #4446ad;

  border: 1px solid rgba(95, 97, 255, 0.2);

  background: rgba(221, 222, 255, 0.78);
}

.kf-active-request .request-status--pending {
  color: #81561b;

  border: 1px solid rgba(196, 137, 54, 0.19);

  background: rgba(255, 235, 198, 0.82);
}

.kf-active-request .request-status--hold {
  color: #684482;

  border: 1px solid rgba(135, 91, 166, 0.18);

  background: rgba(239, 222, 249, 0.82);
}

/* =========================
   Customer-facing request statuses
   ========================= */

.kf-active-request
.request-status--customer-progress {
  color: #4446ad;

  border:
    1px solid
    rgba(95, 97, 255, 0.2);

  background:
    rgba(221, 222, 255, 0.78);
}

.kf-active-request
.request-status--customer-waiting {
  color: #81561b;

  border:
    1px solid
    rgba(196, 137, 54, 0.19);

  background:
    rgba(255, 235, 198, 0.82);
}


/* =========================
   No active requests
   ========================= */

.kf-active-requests.has-no-active-requests
.kf-active-requests__grid {
  display: none;
}

.kf-active-requests.has-no-active-requests
.kf-request-section-heading__count {
  display: none;
}


/* All caught up showcase */

.kf-active-requests__empty {
  position: relative;
  overflow: hidden;

  min-height: 150px;
  padding: 28px 34px;

  display: flex;
  align-items: center;
  gap: 24px;

  border: 1px solid rgba(255, 255, 255, 0.76);
  border-radius: 28px;

  color: #18181c;

  background:
    radial-gradient(
      circle at 0% 0%,
      rgba(255, 255, 255, 0.94),
      transparent 36%
    ),
    radial-gradient(
      circle at 100% 100%,
      rgba(165, 167, 255, 0.2),
      transparent 30%
    ),
    linear-gradient(
      135deg,
      rgba(255, 255, 255, 0.72),
      rgba(255, 255, 255, 0.34)
    ),
    rgba(255, 255, 255, 0.3);

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.94),
    0 18px 46px rgba(38, 39, 78, 0.06);

  backdrop-filter: blur(24px) saturate(145%);
  -webkit-backdrop-filter: blur(24px) saturate(145%);
}

.kf-active-requests__empty::before {
  content: "";

  position: absolute;
  inset: 0;

  pointer-events: none;

  background:
    linear-gradient(
      135deg,
      rgba(255, 255, 255, 0.34),
      transparent 38%
    );

  opacity: 0.84;
}

.kf-active-requests__empty[hidden] {
  display: none;
}


/* Illustration */

.kf-active-requests__empty-icon {
  position: relative;
  z-index: 1;

  flex: 0 0 78px;

  width: 78px;
  height: 78px;

  display: flex;
  align-items: center;
  justify-content: center;
}

.kf-active-requests__empty-icon img {
  display: block;

  width: 78px;
  height: 78px;

  object-fit: contain;
}


/* Empty-state copy */

.kf-active-requests__empty > div:last-child {
  position: relative;
  z-index: 1;
}

.kf-active-requests__empty-title {
  margin: 0;

  color: #18181c;

  font-family: var(--kf-font-h3) !important;
  font-size: 24px;
  line-height: 1.12;
  font-weight: 520;
  letter-spacing: -0.008em;
}

.kf-active-requests__empty-text {
  max-width: 540px;
  margin: 8px 0 0;

  color: rgba(24, 24, 28, 0.58);

  font-size: 15.5px;
  line-height: 1.42;
  font-weight: 440;
}


/* Mobile */

@media (max-width: 650px) {

  .kf-active-requests__empty {
    min-height: 0;
    padding: 24px 22px;

    align-items: flex-start;
    gap: 18px;

    border-radius: 23px;
  }

  .kf-active-requests__empty-icon {
    flex-basis: 58px;

    width: 58px;
    height: 58px;
  }

  .kf-active-requests__empty-icon img {
    width: 58px;
    height: 58px;
  }

  .kf-active-requests__empty-title {
    font-size: 21px;
  }

}


/* =========================
   Request history
   ========================= */

.kf-request-history {
  padding-top: 56px;
}

.kf-request-section-heading--history {
  margin-bottom: 26px;
}


/* Keep history quieter than active content */

.kf-request-history .kf-requests-list {
  margin-top: 0;
}

.kf-request-history .kf-request-row {
  transition:
    background 180ms ease,
    transform 180ms ease,
    border-color 180ms ease;
}

.kf-request-history .kf-request-row:hover {
  transform: translateX(2px);

  background:
    linear-gradient(
      90deg,
      rgba(255, 255, 255, 0.56),
      rgba(255, 255, 255, 0.2)
    );
}

.kf-request-history .kf-request-subject-link {
  transition:
    color 180ms ease,
    transform 180ms ease;
}

.kf-request-history .kf-request-row:hover
.kf-request-subject-link {
  color: #18181c;
  transform: translateX(2px);
}


/* =========================
   Responsive — active requests
   ========================= */

@media (max-width: 900px) {

  .kf-request-section-heading {
    align-items: flex-start;
  }

  .kf-active-requests {
    margin-top: 40px;
    padding-bottom: 48px;
  }

  .kf-active-request__link {
    padding: 23px 24px 25px;
  }

  .kf-active-request__subject {
    font-size: 23px;
  }

  .kf-request-history {
    padding-top: 48px;
  }

}


@media (max-width: 650px) {

  .kf-request-section-heading {
    display: block;
  }

  .kf-request-section-heading__count {
    margin-top: 18px;
  }

  .kf-active-request {
    border-radius: 23px;
  }

  .kf-active-request__link {
    padding: 21px 20px 23px;
  }

  .kf-active-request__topline {
    margin-bottom: 17px;

    align-items: flex-start;
  }

  .kf-active-request__updated {
    max-width: 120px;
    text-align: right;
  }

  .kf-active-request__content {
    grid-template-columns: minmax(0, 1fr);
    gap: 18px;
  }

  .kf-active-request__subject {
    font-size: 21px;
    line-height: 1.16;
  }

  .kf-active-request__arrow {
    display: none;
  }

  .kf-active-request__meta {
    gap: 8px;
  }

  .kf-active-requests__empty {
    padding: 23px 4px;
  }

}

/* =========================
   Request list responsive
   ========================= */

@media (max-width: 1100px) {
  .kf-requests-list__head,
  .kf-request-row {
    grid-template-columns: minmax(100px, 0.7fr) minmax(260px, 2.4fr) minmax(120px, 0.85fr) minmax(120px, 0.85fr);
  }

  .kf-requests-list__col--created,
  .kf-request-row__cell--created {
    display: none;
  }
}

@media (max-width: 900px) {
  .kf-requests-page {
    padding: 12px 12px 0;
  }

  .kf-requests-hero {
    padding: 34px 26px 30px;
  }

  .kf-requests-header {
    max-width: 720px;
  }

  .kf-requests-main {
    width: calc(100vw - 48px);
    margin-top: 10px;
    padding-bottom: 70px;
  }

  .kf-requests-toolbar__inner {
    grid-template-columns: 1fr;
    gap: 14px;
  }

  .kf-requests-filter-row {
    justify-content: stretch;
  }

  .kf-requests-select {
    flex: 1 1 0;
    min-width: 0;
  }

  .kf-requests-list__head {
    display: none;
  }

  .kf-request-row {
    grid-template-columns: minmax(0, 1fr) auto;
    grid-template-areas:
      "subject status"
      "id updated";
    gap: 12px 18px;

    min-height: 0;
    padding: 22px 0;
  }

  .kf-request-row__cell--subject {
    grid-area: subject;
  }

  .kf-request-row__cell--status {
    grid-area: status;
    justify-self: end;
  }

  .kf-request-row__cell--id {
    grid-area: id;
  }

  .kf-request-row__cell--updated {
    grid-area: updated;
    justify-self: end;
  }

  .kf-request-subject-link {
    font-size: 18px;
  }

  .kf-request-row__cell--id,
  .kf-request-row__cell--updated {
    font-size: 14px;
  }
}

@media (max-width: 560px) {
  .kf-requests-hero {
    padding: 26px 20px 28px;
  }

  .kf-requests-eyebrow {
    gap: 10px;
    font-size: 12px;
    line-height: 1.25;
    margin-bottom: 12px;
    font-weight: 560;
    letter-spacing: 0.105em;
  }

  .kf-requests-title {
    font-size: clamp(38px, 12vw, 52px);
    line-height: 1;
    letter-spacing: -0.004em;
  }

  .kf-requests-description {
    font-size: 16.5px;
  }

  .kf-requests-main {
    width: calc(100vw - 36px);
    padding-bottom: 58px;
  }

  .kf-requests-tabs {
    justify-content: flex-start;
    gap: 8px;
    overflow-x: auto;
    flex-wrap: nowrap;
    scrollbar-width: none;
  }

  .kf-requests-tabs::-webkit-scrollbar {
    height: 0;
  }

  .kf-requests-tab {
    min-height: 48px;
    padding: 0 14px;
    font-size: 16px;
  }

  .kf-requests-filter-row {
    display: grid;
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .kf-request-row {
    grid-template-columns: 1fr;
    grid-template-areas:
      "status"
      "subject"
      "id"
      "updated";

    gap: 10px;
  }

  .kf-request-row__cell--status,
  .kf-request-row__cell--updated {
    justify-self: start;
  }

  .kf-request-subject-link {
    width: 100%;
    font-size: 17.5px;
  }

  .kf-request-subject-text {
    white-space: normal;
    overflow: visible;
    text-overflow: unset;
  }

  .kf-requests-main .pagination {
    flex-wrap: wrap;
    gap: 10px;
  }

  .kf-requests-main .pagination a,
  .kf-requests-main .pagination span {
    height: 34px;
    font-size: 13.5px;
  }
}

/* =========================
   Escalated request badge
   ========================= */

.escalated-cell--status-badge,
.escalated-cell--subject-badge {
  display: inline-flex;
  align-items: center;
  flex: 0 0 auto;
}

.escalated-cell--status-badge:empty,
.escalated-cell--subject-badge:empty {
  display: none;
}

.escalated-badge {
  min-height: 22px;
  padding: 0 9px 0 7px;

  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 5px;

  border-radius: 999px;
  border: 1px solid rgba(149, 255, 236, 0.48);

  color: #18181c;

  font-size: 11px;
  line-height: 1;
  font-weight: 650;
  letter-spacing: 0.025em;
  white-space: nowrap;

  background: #95ffec;
}

.escalated-badge__icon {
  width: 14px;
  height: 14px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  border-radius: 999px;

  color: #95ffec;

  font-size: 10px;
  line-height: 1;
  font-weight: 700;

  background: #18181c;
}


/* Active request: status + escalation together */

.kf-active-request__topline {
  display: flex;
  align-items: center;
  gap: 8px;
}

.kf-active-request__updated {
  margin-left: auto;
}

.kf-active-request .escalated-badge {
  min-height: 29px;
  padding: 0 11px 0 8px;

  font-size: 12px;
  font-weight: 650;
  letter-spacing: 0.025em;
}

.kf-active-request .escalated-badge__icon {
  width: 17px;
  height: 17px;

  font-size: 11px;
}


/* History request: escalation before subject */

.kf-request-subject-link {
  display: flex;
  align-items: center;
  gap: 8px;
}

.kf-request-subject-text {
  min-width: 0;
}

/* History escalation badge — slightly larger for readability */

.kf-request-history .escalated-badge {
  min-height: 26px;
  padding: 0 10px 0 8px;

  font-size: 12px;
}

.kf-request-history .escalated-badge__icon {
  width: 16px;
  height: 16px;

  font-size: 10.5px;
}

/* =========================
   Request section "show more"
   ========================= */

.kf-request-section-more {
  margin-top: 24px;
  padding-top: 20px;

  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;

  border-top: 1px solid rgba(24, 24, 28, 0.08);
}

.kf-request-section-more__summary {
  color: rgba(24, 24, 28, 0.48);

  font-size: 13.5px;
  line-height: 1;
  font-weight: 500;
}

.kf-request-section-more__button {
  min-height: 40px;
  padding: 0 17px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  border: 1px solid rgba(24, 24, 28, 0.12);
  border-radius: 999px;

  color: #18181c;

  font-size: 13.5px;
  line-height: 1;
  font-weight: 600;

  background: rgba(255, 255, 255, 0.46);

  transition:
    transform 180ms ease,
    color 180ms ease,
    background 180ms ease,
    border-color 180ms ease;
}

.kf-request-section-more__button::after {
  content: "↓";

  margin-left: 8px;

  font-size: 13px;
  line-height: 1;
}

.kf-request-section-more__button:hover,
.kf-request-section-more__button:focus {
  transform: translateY(-1px);

  color: #ffffff;

  border-color: #5f61ff;
  background: #5f61ff;
}




/* =========================================================
   Individual Request page
   ========================================================= */


/* =========================
   Page shell
   ========================= */

.kf-request-detail-page {
  min-height: 100vh;

  color: #18181c;

  background:
    linear-gradient(
      180deg,
      #fafaff 0%,
      #f6f6ff 38%,
      #ffffff 100%
    );
}


/* Hide inherited theme wrappers if they appear */

body:has(.kf-request-detail-page)
.page-heading,
body:has(.kf-request-detail-page)
.container.page-content {
  display: none !important;
}


/* =========================
   Request eyebrow
   ========================= */

.kf-request-detail-hero {
  position: relative;

  padding:
    64px
    40px
    6px;

  color: #18181c;

  background: transparent;
}


.kf-request-detail-hero::before {
  content: none;
}


.kf-request-detail-hero__inner {
  width:
    min(
      1320px,
      calc(100vw - 80px)
    );

  margin: 0 auto;
}


.kf-request-detail-hero__eyebrow {
  width: fit-content;

  margin: 0;

  display: flex;
  align-items: center;
  gap: 12px;

  color: #5f61ff !important;

  font-size: 15px;
  line-height: 1;
  font-weight: 650;

  letter-spacing: 0.12em;

  text-transform: uppercase;

  background: transparent;

  border: 0;
}


.kf-request-detail-hero__eyebrow::before {
  content: "/ / / /";

  flex: 0 0 auto;

  color: #5f61ff;

  letter-spacing: 0;
}


/* =========================
   Main layout
   ========================= */

.kf-request-detail-main {
  width:
    min(
      1320px,
      calc(100vw - 80px)
    );

  margin: 0 auto;

  padding:
    0
    0
    100px;
}


.kf-request-detail-nav {
  display: none;
}

.kf-request-detail-back {
  min-height: 42px;
  padding: 0 16px;

  display: inline-flex;

  align-items: center;

  gap: 10px;

  border:
    1px solid
    rgba(24, 24, 28, 0.1);

  border-radius: 999px;

  color:
    rgba(24, 24, 28, 0.7);

  background:
    rgba(255, 255, 255, 0.55);

  box-shadow:
    inset
    0
    1px
    0
    rgba(255, 255, 255, 0.88),

    0
    8px
    22px
    rgba(38, 39, 78, 0.035);

  font-size: 14px;
  line-height: 1;
  font-weight: 540;

  transition:
    transform 180ms ease,
    color 180ms ease,
    background 180ms ease,
    border-color 180ms ease;
}

.kf-request-detail-back:hover {
  transform:
    translateY(-1px);

  color: #34356a;

  border-color:
    rgba(95, 97, 255, 0.18);

  background:
    rgba(255, 255, 255, 0.82);

  text-decoration: none;
}

.kf-request-detail-back__arrow {
  font-size: 17px;
}

.kf-request-detail-layout {
  display: grid;

  grid-template-columns:
    minmax(0, 1fr)
    minmax(290px, 350px);

  align-items: start;

  gap: 46px;
}

/* =========================
   Request content header
   ========================= */

.kf-request-detail-content-header {
  margin:
    0
    0
    42px;

  padding:
    10px
    0
    30px;

  border-bottom:
    1px solid
    rgba(24, 24, 28, 0.12);
}


.kf-request-detail-hero__title {
  max-width: 900px;

  margin: 0;

  color: #18181c;

  font-family:
    var(--kf-font-h1) !important;

  font-size:
    clamp(34px, 3.2vw, 50px);

  line-height: 1.05;

  font-weight: 200;

  letter-spacing: -0.006em;

  overflow-wrap: anywhere;

  text-rendering: geometricPrecision;

  -webkit-font-smoothing: antialiased;
}


.kf-request-detail-hero__meta {
  margin-top: 22px;

  display: flex;
  flex-wrap: wrap;
  align-items: center;

  gap: 9px;

  color:
    rgba(24, 24, 28, 0.52);

  font-size: 14px;
  line-height: 1.3;
  font-weight: 400;
}


.kf-request-detail-hero__meta span {
  display: inline;
}


.kf-request-detail-hero__meta-divider {
  display: inline !important;

  color:
    rgba(95, 97, 255, 0.7);
}


.kf-request-detail-toolbelt {
  margin-top: 24px;

  display: flex;
  flex-wrap: wrap;

  align-items: center;

  gap: 10px;
}

.kf-request-reply {
  scroll-margin-top: 32px;
}

/* =========================
   Section heading
   ========================= */

.kf-request-detail-section-heading {
  margin-bottom: 26px;
}

.kf-request-detail-section-heading__eyebrow {
  margin: 0 0 10px;

  color: #5f61ff !important;

  font-size: 12.5px;
  line-height: 1;
  font-weight: 680;

  letter-spacing: 0.105em;

  text-transform: uppercase;
}

.kf-request-detail-section-heading__title {
  margin: 0;

  color: #18181c;

  font-family:
    var(--kf-font-h2) !important;

font-size:
  clamp(28px, 2.2vw, 36px);

  line-height: 1;

  font-weight: 300;

  letter-spacing: -0.012em;
}


/* =========================
   Conversation timeline
   ========================= */

.kf-request-thread {
  margin: 0;
  padding: 0;
  list-style: none;
}

.kf-request-message {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr);
  gap: 18px;
  align-items: start;
}

.kf-request-message + .kf-request-message {
  margin-top: 52px;
}

/* Rail: small avatar only, no connecting line/heavy ring */
.kf-request-message__rail {
  display: flex;
  justify-content: center;
  padding-top: 2px;
}

.kf-request-message__avatar {
  flex: 0 0 40px;
  width: 40px;
  height: 40px;
  overflow: hidden;

  border: 1px solid rgba(24, 24, 28, 0.08);
  border-radius: 999px;

  background: rgba(255, 255, 255, 0.6);
  box-shadow: none;
}

.kf-request-message__avatar img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
}

.kf-request-message__line {
  display: none;
}

/* Card becomes a flat, left-ruled block — no fill, no blur, no shadow */
.kf-request-message__card {
  position: relative;
  overflow: visible;

  padding: 1px 0 1px 26px;

  border: 0;
  border-left: 2px solid rgba(95, 97, 255, 0.7);
  border-radius: 0;

  color: #18181c;
  background: transparent;
  box-shadow: none;
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

.kf-request-message__card::before,
.kf-request-message__card::after {
  content: none;
}

.kf-request-message__header {
  margin-bottom: 14px;

  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: 10px;
}

.kf-request-message__author {
  color: #18181c;
  font-size: 17px;
  line-height: 1.2;
  font-weight: 620;
  text-decoration: none;
}

.kf-request-message__author:hover {
  color: #5f61ff;
  text-decoration: none;
}

.kf-request-message__time {
  margin: 0;
  color: rgba(24, 24, 28, 0.42);
  font-size: 13px;
  line-height: 1.2;
  font-weight: 450;
}

.kf-request-message__body {
  color: rgba(24, 24, 28, 0.66);
  font-size: 16px;
  line-height: 1.62;
  font-weight: 400;
  overflow-wrap: anywhere;
}

.kf-request-message__body > :first-child { margin-top: 0; }
.kf-request-message__body > :last-child { margin-bottom: 0; }

.kf-request-message__body a {
  color: #4e50c4;
  text-decoration: underline;
  text-decoration-color: rgba(78, 80, 196, 0.28);
  text-underline-offset: 3px;
}

.kf-request-message__body img {
  height: auto;
  margin-top: 16px;
  border-radius: 12px;
}

/* Attachments: quiet list, no card-in-card look */
.kf-request-message__attachments {
  margin-top: 22px;
  padding-top: 18px;
  border-top: 1px solid rgba(24, 24, 28, 0.07);
}

.kf-request-message__attachments-title {
  margin: 0 0 11px;
  color: rgba(24, 24, 28, 0.46);
  font-size: 11px;
  line-height: 1;
  font-weight: 650;
  letter-spacing: 0.095em;
  text-transform: uppercase;
}

/* Shared attachment item — used in both the conversation thread and sidebar */
.kf-request-attachment {
  min-width: 0;
  padding: 11px 12px;

  display: grid;
  grid-template-columns: 32px minmax(0, 1fr);
  align-items: center;
  gap: 10px;

  border: 1px solid rgba(24, 24, 28, 0.08);
  border-radius: 14px;

  color: rgba(24, 24, 28, 0.72);
  background: rgba(255, 255, 255, 0.56);

  transition:
    transform 180ms ease,
    border-color 180ms ease,
    background 180ms ease;
}

.kf-request-attachment:hover {
  transform: translateX(2px);
  color: #292a63;
  border-color: rgba(95, 97, 255, 0.18);
  background: rgba(238, 239, 255, 0.8);
  text-decoration: none;
}

.kf-request-attachment__icon {
  width: 32px;
  height: 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  color: #5153ce;
  background: rgba(223, 224, 255, 0.82);
  font-size: 13px;
}

.kf-request-attachment__content {
  min-width: 0;
}

.kf-request-attachment__name {
  display: block;
  overflow: hidden;
  color: inherit;
  font-size: 14px;
  line-height: 1.25;
  font-weight: 560;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.kf-request-attachment__size {
  display: block;
  margin-top: 3px;
  color: rgba(24, 24, 28, 0.45);
  font-size: 12px;
  line-height: 1.2;
}

/* Message-thread only: quieter variant to match the flat conversation redesign */
.kf-request-message__attachments .kf-request-attachment {
  border-color: rgba(24, 24, 28, 0.07);
  background: rgba(255, 255, 255, 0.4);
}

.kf-request-message__attachments .kf-request-attachment:hover {
  background: rgba(238, 239, 255, 0.6);
}

.kf-request-message__attachments .kf-request-attachment__icon {
  background: rgba(95, 97, 255, 0.14);
}


/* =========================
   Reply composer
   ========================= */

.kf-request-scroll-anchor {
  scroll-margin-top: 90px;
}

.kf-request-reply {
  margin-top: 52px;
  padding: 32px;

  border:
    1px solid
    rgba(255, 255, 255, 0.78);

  border-radius: 30px;

  background:
    radial-gradient(
      circle at 100% 0%,
      rgba(165, 167, 255, 0.18),
      transparent 32%
    ),
    linear-gradient(
      135deg,
      rgba(255, 255, 255, 0.8),
      rgba(255, 255, 255, 0.46)
    );

  box-shadow:
    inset
    0
    1px
    0
    rgba(255, 255, 255, 0.95),

    0
    22px
    54px
    rgba(38, 39, 78, 0.07);

  backdrop-filter:
    blur(22px)
    saturate(140%);

  -webkit-backdrop-filter:
    blur(22px)
    saturate(140%);
}

.kf-request-reply__heading {
  margin-bottom: 25px;
}

.kf-request-reply__eyebrow {
  margin: 0 0 10px;

  color: #5f61ff !important;

  font-size: 12px;
  line-height: 1;
  font-weight: 670;

  letter-spacing: 0.105em;

  text-transform: uppercase;
}

.kf-request-reply__title {
  margin: 0;

  color: #18181c;

  font-family:
    var(--kf-font-h2) !important;

  font-size: 34px;
  line-height: 1;

  font-weight: 300;
}

.kf-request-reply__description {
  max-width: 650px;

  margin:
    11px
    0
    0;

  color:
    rgba(24, 24, 28, 0.56);

  font-size: 15px;
  line-height: 1.42;
}

.kf-request-comment-form {
  display: grid;

  grid-template-columns:
    46px
    minmax(0, 1fr);

  gap: 18px;
}

.kf-request-comment-form__avatar
.comment-form__avatar {
  width: 46px;
  height: 46px;

  border-radius: 999px;

  box-shadow:
    0
    8px
    20px
    rgba(38, 39, 78, 0.1);
}

.kf-request-comment-form__body {
  min-width: 0;
}

.kf-request-comment-form
.form-field {
  margin: 0 0 16px;
}

.kf-request-comment-form
label {
  color:
    rgba(24, 24, 28, 0.66);
}

.kf-request-comment-form
textarea,
.kf-request-comment-form
input[type="text"] {
  border:
    1px solid
    rgba(24, 24, 28, 0.1) !important;

  border-radius: 18px !important;

  color: #18181c !important;

  background:
    rgba(255, 255, 255, 0.74) !important;

  box-shadow:
    inset
    0
    1px
    0
    rgba(255, 255, 255, 0.92) !important;
}

.kf-request-comment-form
.ck-editor,
.kf-request-comment-form
.fr-box,
.kf-request-comment-form
[contenteditable="true"] {
  border-radius: 18px;

  overflow: hidden;
}

.kf-request-comment-form__upload {
  padding: 14px 16px;

  border:
    1px dashed
    rgba(95, 97, 255, 0.22);

  border-radius: 17px;

  background:
    rgba(237, 238, 255, 0.44);
}

.kf-request-comment-form__footer {
  margin-top: 20px;

  display: flex;

  align-items: center;
  justify-content: space-between;

  gap: 22px;
}

.kf-request-comment-form__solve {
  margin: 0 !important;
}

.kf-request-comment-form__actions {
  display: flex;

  align-items: center;

  gap: 11px;
}

.kf-request-action {
  min-height: 46px;

  padding:
    0
    22px !important;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  border-radius:
    999px !important;

  font-family:
    var(--kf-font-body) !important;

  font-size: 14.5px !important;
  line-height: 1 !important;
  font-weight: 580 !important;

  text-decoration: none !important;
}

.kf-request-action--secondary {
  color:
    rgba(24, 24, 28, 0.72) !important;

  border:
    1px solid
    rgba(24, 24, 28, 0.11) !important;

  background:
    rgba(255, 255, 255, 0.58) !important;
}

.kf-request-action--secondary:hover {
  color: #31336f !important;

  border-color:
    rgba(95, 97, 255, 0.2) !important;

  background:
    rgba(237, 238, 255, 0.84) !important;
}

.kf-request-action--primary {
  color: #ffffff !important;

  border:
    1px solid
    rgba(255, 255, 255, 0.14) !important;

  background:
    linear-gradient(
      135deg,
      #7577ff,
      #5456d4
    ) !important;

  box-shadow:
    inset
    0
    1px
    0
    rgba(255, 255, 255, 0.22),

    0
    12px
    26px
    rgba(95, 97, 255, 0.22) !important;
}

/* Submit comment button hover */

.kf-request-action--primary {
  cursor: pointer;

  transition:
    transform 180ms ease,
    background 180ms ease,
    box-shadow 180ms ease,
    filter 180ms ease !important;
}

.kf-request-action--primary:hover,
.kf-request-action--primary:focus {
  transform:
    translateY(-2px)
    scale(1.02);

  background:
    linear-gradient(
      135deg,
      #8587ff,
      #484ac8
    ) !important;

  box-shadow:
    inset
    0
    1px
    0
    rgba(255, 255, 255, 0.34),

    0
    18px
    36px
    rgba(95, 97, 255, 0.36) !important;

  filter:
    saturate(1.08)
    brightness(1.04);
}

.kf-request-action--primary:active {
  transform:
    translateY(0)
    scale(0.99);

  box-shadow:
    inset
    0
    1px
    0
    rgba(255, 255, 255, 0.2),

    0
    8px
    18px
    rgba(95, 97, 255, 0.22) !important;
}

/* =========================================
   Closed request follow-up callout
   ========================================= */

.kf-follow-up-callout {
  max-width: 760px;
  margin-top: 14px;
  padding-top: 2px;
}

.kf-follow-up-callout__status {
  margin: 0 0 14px;

  color: rgba(24, 24, 28, 0.56);

  font-size: 15px;
  line-height: 1.45;
  font-weight: 450;
  letter-spacing: 0.002em;
}

.kf-follow-up-callout__link {
  width: fit-content;

  display: inline-flex;
  align-items: center;
  gap: 10px;

  color: #34356a;

  font-size: 19px;
  line-height: 1.25;
  font-weight: 620;
  letter-spacing: -0.005em;

  text-decoration: none;

  border-bottom: 2px solid #5f61ff;
  padding-bottom: 3px;

  transition:
    color 180ms ease,
    border-color 180ms ease,
    transform 180ms ease;
}

.kf-follow-up-callout__link:hover,
.kf-follow-up-callout__link:focus-visible {
  color: #5f61ff;
  border-bottom-color: #34356a;
  transform: translateX(2px);
}

.kf-follow-up-callout__link:focus-visible {
  outline: 2px solid rgba(95, 97, 255, 0.32);
  outline-offset: 6px;
  border-radius: 4px;
}

.kf-follow-up-callout__link span:last-child {
  display: inline-block;

  font-size: 20px;
  line-height: 1;

  transform: translateY(-1px);

  transition:
    transform 180ms ease;
}

.kf-follow-up-callout__link:hover span:last-child,
.kf-follow-up-callout__link:focus-visible span:last-child {
  transform:
    translateX(4px)
    translateY(-1px);
}

.kf-follow-up-callout__description {
  max-width: 700px;
  margin: 16px 0 0;

  color: rgba(24, 24, 28, 0.62);

  font-size: 15.5px;
  line-height: 1.55;
  font-weight: 420;
  letter-spacing: 0;
}


/* =========================
   Details sidebar
   ========================= */

.kf-request-sidebar {
  position: sticky;
  top: 28px;

  margin-top: 54px;
}

.kf-request-sidebar__card {
  overflow: hidden;

  border:
    1px solid
    rgba(255, 255, 255, 0.78);

  border-radius: 28px;

  background:
    radial-gradient(
      circle at 100% 0%,
      rgba(165, 167, 255, 0.18),
      transparent 32%
    ),
    linear-gradient(
      145deg,
      rgba(255, 255, 255, 0.8),
      rgba(255, 255, 255, 0.48)
    );

  box-shadow:
    inset
    0
    1px
    0
    rgba(255, 255, 255, 0.96),

    0
    22px
    54px
    rgba(38, 39, 78, 0.07);

  backdrop-filter:
    blur(22px)
    saturate(140%);

  -webkit-backdrop-filter:
    blur(22px)
    saturate(140%);
}

.kf-request-sidebar__header {
  padding:
    27px
    27px
    24px;

  border-bottom:
    1px solid
    rgba(24, 24, 28, 0.08);
}

.kf-request-sidebar__eyebrow {
  margin: 0 0 9px;

  color: #5f61ff !important;

  font-size: 11.5px;
  line-height: 1;
  font-weight: 670;

  letter-spacing: 0.105em;

  text-transform: uppercase;
}

.kf-request-sidebar__title {
  margin: 0;

  color: #18181c;

  font-family:
    var(--kf-font-h3) !important;

  font-size: 27px;
  line-height: 1;

  font-weight: 500;
}

.kf-request-sidebar__content {
  padding:
    5px
    27px
    26px;
}

.kf-request-details {
  margin: 0;
}

.kf-request-detail-field {
  margin: 0;

  padding:
    18px
    0;

  border-bottom:
    1px solid
    rgba(24, 24, 28, 0.075);
}

.kf-request-detail-field:last-child {
  border-bottom: 0;
}

.kf-request-detail-field__label {
  margin:
    0
    0
    8px;

  color:
    rgba(24, 24, 28, 0.45);

  font-size: 10.5px;
  line-height: 1;
  font-weight: 680;

  letter-spacing: 0.105em;

  text-transform: uppercase;
}

.kf-request-detail-field__value {
  margin: 0;

  color:
    rgba(24, 24, 28, 0.75);

  font-size: 14.5px;
  line-height: 1.45;
  font-weight: 500;

  overflow-wrap: anywhere;
}

.kf-request-detail-field__subvalue {
  display: block;

  margin-top: 5px;

  color:
    rgba(24, 24, 28, 0.48);

  font-size: 12.5px;
}

.kf-request-sidebar-status {
  min-height: 30px;
  padding: 0 11px;

  display: inline-flex;

  align-items: center;

  border-radius: 999px;

  font-size: 12px;
  line-height: 1;
  font-weight: 650;
}

.kf-request-sidebar-status--progress {
  color: #4446ad;

  border:
    1px solid
    rgba(95, 97, 255, 0.2);

  background:
    rgba(221, 222, 255, 0.78);
}

.kf-request-sidebar-status--waiting {
  color: #81561b;

  border:
    1px solid
    rgba(196, 137, 54, 0.19);

  background:
    rgba(255, 235, 198, 0.82);
}

.kf-request-sidebar-status--solved {
  color:
    rgba(24, 24, 28, 0.62);

  border:
    1px solid
    rgba(24, 24, 28, 0.1);

  background:
    rgba(255, 255, 255, 0.65);
}

.kf-request-organization-form
select {
  width: 100%;

  min-height: 46px;

  padding:
    0
    42px
    0
    15px;

  border:
    1px solid
    rgba(24, 24, 28, 0.1);

  border-radius: 14px;

  color:
    rgba(24, 24, 28, 0.7);

  background:
    rgba(255, 255, 255, 0.66);
}

.kf-request-collaborators {
  margin: 0;
  padding: 0;

  list-style: none;
}

.kf-request-collaborators li + li {
  margin-top: 5px;
}

.kf-request-sidebar__attachments {
  padding-top: 18px;

  border-top:
    1px solid
    rgba(24, 24, 28, 0.08);
}

.kf-request-sidebar__satisfaction {
  padding-top: 18px;
  border-top: 0;
}


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

@media (max-width: 1050px) {

  .kf-request-detail-layout {
    grid-template-columns:
      minmax(0, 1fr)
      300px;

    gap: 32px;
  }

}


@media (max-width: 850px) {

  .kf-request-detail-hero {
  padding:
    46px
    30px
    44px;
}


.kf-request-detail-hero__content {
  grid-template-columns:
    1fr;

  grid-template-areas:
    "eyebrow"
    "heading"
    "meta";

  gap: 0;

}


.kf-request-detail-hero__meta {
  min-width: 0;

  margin-top: 25px;
  padding:
    18px
    0
    0;

  display: flex;
  flex-wrap: wrap;
  gap: 8px 18px;

  border-left: 0;

  border-top:
    1px solid
    rgba(24, 24, 28, 0.09);
}

  .kf-request-detail-main {
    width:
      min(
        100% - 48px,
        760px
      );
  }

  .kf-request-detail-layout {
    grid-template-columns:
      1fr;
  }

  .kf-request-sidebar {
    position: static;

    grid-row: 1;
  }

}


@media (max-width: 600px) {

.kf-request-detail-hero {
  padding:
    38px
    22px
    36px;
}

.kf-request-detail-hero__title {
  font-size:
    clamp(30px, 9.5vw, 42px);

  line-height: 1.07;
}


.kf-request-detail-hero__meta {
  display: grid;
  gap: 7px;
}

  .kf-request-detail-main {
    width:
      calc(100% - 30px);

    padding-bottom: 70px;
  }

  .kf-request-message {
    grid-template-columns:
      38px
      minmax(0, 1fr);

    gap: 12px;
  }

  .kf-request-message__avatar {
    flex-basis: 38px;

    width: 38px;
    height: 38px;

    border-width: 2px;
  }

  .kf-request-message__card {
    padding:
      22px
      19px
      23px;

    border-radius: 22px;
  }

  .kf-request-reply {
    padding:
      25px
      20px;

    border-radius: 24px;
  }

  .kf-request-comment-form {
    grid-template-columns:
      1fr;
  }

  .kf-request-comment-form__avatar {
    display: none;
  }

  .kf-request-comment-form__footer {
    align-items: flex-start;

    flex-direction: column;
  }

  .kf-request-comment-form__actions {
    width: 100%;
  }

  .kf-request-action {
    flex: 1 1 0;
  }

}

/* =========================================================
   Request escalation modal
   ========================================================= */


/* =========================
   Modal shell
   ========================= */

.kf-escalate-modal {
  position: fixed;
  inset: 0;
  z-index: 10000;

  padding: 28px;

  display: flex;
  align-items: center;
  justify-content: center;

  opacity: 1;
  visibility: visible;

  transition:
    opacity 180ms ease,
    visibility 180ms ease;
}


/*
 * Keep the modal completely out of the page
 * until the existing escalation JavaScript
 * changes aria-hidden to false.
 */

.kf-escalate-modal[aria-hidden="true"] {
  opacity: 0;
  visibility: hidden;

  pointer-events: none;
}

.kf-escalate-modal[aria-hidden="false"] {
  opacity: 1;
  visibility: visible;

  pointer-events: auto;
}


/* =========================
   Background overlay
   ========================= */

.kf-escalate-modal__bg {
  position: absolute;
  inset: 0;

  background:
    rgba(18, 19, 31, 0.54);

  backdrop-filter:
    blur(12px)
    saturate(120%);

  -webkit-backdrop-filter:
    blur(12px)
    saturate(120%);

  cursor: pointer;
}


/* =========================
   Dialog
   ========================= */

.kf-escalate-modal__dialog {
  position: relative;
  z-index: 1;

  width: min(580px, 100%);
  max-height: calc(100vh - 56px);

  overflow-y: auto;

  padding: 38px;

  border:
    1px solid
    rgba(255, 255, 255, 0.84);

  border-radius: 30px;

  color: #18181c;

  background:
    radial-gradient(
      circle at 100% 0%,
      rgba(165, 167, 255, 0.24),
      transparent 34%
    ),
    radial-gradient(
      circle at 0% 100%,
      rgba(255, 255, 255, 0.96),
      transparent 38%
    ),
    linear-gradient(
      145deg,
      rgba(255, 255, 255, 0.96),
      rgba(242, 243, 255, 0.94)
    );

  box-shadow:
    inset
    0
    1px
    0
    rgba(255, 255, 255, 1),

    0
    34px
    90px
    rgba(17, 18, 38, 0.3);

  backdrop-filter:
    blur(28px)
    saturate(150%);

  -webkit-backdrop-filter:
    blur(28px)
    saturate(150%);

  transform:
    translateY(0)
    scale(1);

  transition:
    transform 220ms ease,
    opacity 180ms ease;
}


.kf-escalate-modal[aria-hidden="true"]
.kf-escalate-modal__dialog {
  opacity: 0;

  transform:
    translateY(14px)
    scale(0.975);
}


.kf-escalate-modal[aria-hidden="false"]
.kf-escalate-modal__dialog {
  opacity: 1;

  transform:
    translateY(0)
    scale(1);
}


/* Soft glass highlight */

.kf-escalate-modal__dialog::before {
  content: "";

  position: absolute;
  inset: 0;

  border-radius: inherit;

  pointer-events: none;

  background:
    linear-gradient(
      135deg,
      rgba(255, 255, 255, 0.54),
      transparent 36%
    );

  opacity: 0.7;
}


/*
 * Keep all actual modal content above
 * the decorative overlay.
 */

.kf-escalate-modal__dialog > * {
  position: relative;
  z-index: 1;
}


/* =========================
   Close button
   ========================= */

.kf-escalate-modal__close {
  position: absolute;
  top: 20px;
  right: 20px;
  z-index: 2;

  width: 40px;
  height: 40px;

  padding: 0;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  border:
    1px solid
    rgba(24, 24, 28, 0.1);

  border-radius: 999px;

  color:
    rgba(24, 24, 28, 0.58);

  background:
    rgba(255, 255, 255, 0.68);

  box-shadow:
    inset
    0
    1px
    0
    rgba(255, 255, 255, 0.94),

    0
    8px
    20px
    rgba(38, 39, 78, 0.06);

  font-size: 23px;
  line-height: 1;
  font-weight: 300;

  cursor: pointer;

  transition:
    color 180ms ease,
    background 180ms ease,
    transform 180ms ease,
    border-color 180ms ease;
}


.kf-escalate-modal__close:hover {
  color: #3f41a7;

  border-color:
    rgba(95, 97, 255, 0.2);

  background:
    rgba(232, 233, 255, 0.92);

  transform:
    rotate(5deg);
}

body.kf-modal-open {
  overflow: hidden;
}


/* =========================
   Heading
   ========================= */

.kf-escalate-modal__title {
  max-width: calc(100% - 54px);

  margin: 0;

  color: #18181c;

  font-family:
    var(--kf-font-h2) !important;

  font-size: 38px;
  line-height: 1;

  font-weight: 300;

  letter-spacing: -0.014em;
}


.kf-escalate-modal__subtitle {
  max-width: 460px;

  margin:
    13px
    0
    30px;

  color:
    rgba(24, 24, 28, 0.58);

  font-size: 15.5px;
  line-height: 1.45;
  font-weight: 440;
}


/* =========================
   Form layout
   ========================= */

#kf-escalate-form {
  margin: 0;
}


#kf-escalate-form
.form-field {
  margin: 0 0 22px;
}


#kf-escalate-form
label {
  display: block;

  margin: 0 0 9px;

  color:
    rgba(24, 24, 28, 0.7);

  font-size: 13.5px;
  line-height: 1.25;
  font-weight: 610;
}


/* =========================
   Select
   ========================= */

.kf-escalate-modal__select {
  width: 100% !important;

  min-height: 52px !important;

  padding:
    0
    48px
    0
    17px !important;

  border:
    1px solid
    rgba(24, 24, 28, 0.11) !important;

  border-radius:
    16px !important;

  outline: 0 !important;

  color:
    rgba(24, 24, 28, 0.76) !important;

  background:
    rgba(255, 255, 255, 0.76) !important;

  box-shadow:
    inset
    0
    1px
    0
    rgba(255, 255, 255, 0.96),

    0
    8px
    20px
    rgba(38, 39, 78, 0.035) !important;

  font-size: 14.5px !important;
  line-height: 1 !important;
  font-weight: 470 !important;

  cursor: pointer;
}


.kf-escalate-modal__select:hover {
  border-color:
    rgba(95, 97, 255, 0.24) !important;
}


.kf-escalate-modal__select:focus {
  border-color:
    rgba(95, 97, 255, 0.46) !important;

  box-shadow:
    0
    0
    0
    3px
    rgba(95, 97, 255, 0.09),

    inset
    0
    1px
    0
    rgba(255, 255, 255, 0.98) !important;
}

/* =========================
   Escalation themed dropdown
   ========================= */


/* Keep native field functional,
   but visually replace it */

.kf-escalate-native-select {
  position: absolute !important;

  width: 1px !important;
  height: 1px !important;

  margin: 0 !important;
  padding: 0 !important;

  opacity: 0 !important;

  pointer-events: none !important;
}


/* Wrapper */

.kf-escalate-custom-select {
  position: relative;

  width: 100%;
}


/* Closed field */

.kf-escalate-custom-select__button {
  position: relative;

  width: 100%;
  min-height: 52px;

  padding:
    0
    50px
    0
    17px;

  display: flex;
  align-items: center;

  border:
    1px solid
    rgba(24, 24, 28, 0.11);

  border-radius: 16px;

  color:
    rgba(24, 24, 28, 0.76);

  background:
    linear-gradient(
      135deg,
      rgba(255, 255, 255, 0.96),
      rgba(247, 247, 255, 0.8)
    );

  box-shadow:
    inset
    0
    1px
    0
    rgba(255, 255, 255, 1),

    0
    8px
    20px
    rgba(38, 39, 78, 0.04);

  font-size: 14.5px;
  line-height: 1;
  font-weight: 470;

  text-align: left;

  cursor: pointer;

  transition:
    border-color 180ms ease,
    background 180ms ease,
    box-shadow 180ms ease;
}


.kf-escalate-custom-select__button:hover {
  border-color:
    rgba(95, 97, 255, 0.28);

  background:
    linear-gradient(
      135deg,
      #ffffff,
      rgba(241, 242, 255, 0.92)
    );
}


.kf-escalate-custom-select.is-open
.kf-escalate-custom-select__button {
  border-color:
    rgba(95, 97, 255, 0.48);

  box-shadow:
    0
    0
    0
    3px
    rgba(95, 97, 255, 0.09),

    inset
    0
    1px
    0
    rgba(255, 255, 255, 1);
}


/* Arrow */

.kf-escalate-custom-select__arrow {
  position: absolute;

  top: 50%;
  right: 20px;

  width: 8px;
  height: 8px;

  border-right:
    1.5px solid
    rgba(24, 24, 28, 0.56);

  border-bottom:
    1.5px solid
    rgba(24, 24, 28, 0.56);

  transform:
    translateY(-70%)
    rotate(45deg);

  transition:
    transform 180ms ease;
}


.kf-escalate-custom-select.is-open
.kf-escalate-custom-select__arrow {
  transform:
    translateY(-25%)
    rotate(225deg);
}


/* Open menu */

.kf-escalate-custom-select__menu {
  position: absolute;

  top: calc(100% + 9px);

  left: 0;
  right: 0;

  z-index: 20;

  padding: 8px;

  overflow: hidden;

  border:
    1px solid
    rgba(255, 255, 255, 0.9);

  border-radius: 18px;

  background:
    radial-gradient(
      circle at 0% 0%,
      rgba(255, 255, 255, 1),
      transparent 46%
    ),

    linear-gradient(
      145deg,
      rgba(255, 255, 255, 0.98),
      rgba(239, 240, 255, 0.95)
    );

  box-shadow:
    inset
    0
    1px
    0
    rgba(255, 255, 255, 1),

    0
    20px
    45px
    rgba(38, 39, 78, 0.17);

  backdrop-filter:
    blur(22px)
    saturate(150%);

  -webkit-backdrop-filter:
    blur(22px)
    saturate(150%);

  animation:
    kfEscalateSelectIn
    160ms
    ease
    both;
}


.kf-escalate-custom-select__menu[hidden] {
  display: none;
}


/* Options */

.kf-escalate-custom-select__option {
  width: 100%;

  min-height: 43px;

  padding:
    0
    13px;

  display: grid;

  grid-template-columns:
    minmax(0, 1fr)
    20px;

  align-items: center;

  gap: 10px;

  border: 0;

  border-radius: 12px;

  color:
    rgba(24, 24, 28, 0.72);

  background:
    transparent;

  font-size: 14px;
  line-height: 1.2;
  font-weight: 470;

  text-align: left;

  cursor: pointer;

  transition:
    color 150ms ease,
    background 150ms ease,
    transform 150ms ease;
}


.kf-escalate-custom-select__option:hover,
.kf-escalate-custom-select__option:focus {
  color: #292a63;

  background:
    rgba(222, 223, 255, 0.68);

  outline: 0;

  transform:
    translateX(2px);
}


.kf-escalate-custom-select__option.is-selected {
  color: #3f41a7;

  background:
    linear-gradient(
      135deg,
      rgba(224, 225, 255, 0.92),
      rgba(237, 237, 255, 0.78)
    );

  font-weight: 590;
}


/* Checkmark */

.kf-escalate-custom-select__check {
  display: inline-flex;

  align-items: center;
  justify-content: center;

  color: #5557d9;

  opacity: 0;

  transform:
    scale(0.75);

  transition:
    opacity 150ms ease,
    transform 150ms ease;
}


.kf-escalate-custom-select__option.is-selected
.kf-escalate-custom-select__check {
  opacity: 1;

  transform:
    scale(1);
}


/* Animation */

@keyframes kfEscalateSelectIn {

  from {

    opacity: 0;

    transform:
      translateY(-5px)
      scale(0.985);

  }

  to {

    opacity: 1;

    transform:
      translateY(0)
      scale(1);

  }

}


/* =========================
   Comment field
   ========================= */

.kf-escalate-modal__textarea {
  width: 100% !important;
  min-height: 132px !important;

  margin: 0 !important;

  padding: 15px 17px !important;

  resize: vertical;

  border:
    1px solid
    rgba(24, 24, 28, 0.11) !important;

  border-radius:
    17px !important;

  outline: 0 !important;

  color: #18181c !important;

  background:
    rgba(255, 255, 255, 0.76) !important;

  box-shadow:
    inset
    0
    1px
    0
    rgba(255, 255, 255, 0.96) !important;

  font-size: 15px !important;
  line-height: 1.48 !important;
  font-weight: 440 !important;
}


.kf-escalate-modal__textarea::placeholder {
  color:
    rgba(24, 24, 28, 0.38);
}


.kf-escalate-modal__textarea:focus {
  border-color:
    rgba(95, 97, 255, 0.46) !important;

  box-shadow:
    0
    0
    0
    3px
    rgba(95, 97, 255, 0.09),

    inset
    0
    1px
    0
    rgba(255, 255, 255, 0.98) !important;
}


/* =========================
   Actions
   ========================= */

.kf-escalate-modal__actions {
  margin-top: 30px;

  display: flex;
  align-items: center;
  justify-content: flex-end;

  gap: 11px;
}


.kf-escalate-modal__actions
.btn {
  min-height: 46px;

  padding:
    0
    21px !important;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  border-radius:
    999px !important;

  font-size:
    14px !important;

  line-height:
    1 !important;

  font-weight:
    580 !important;
}


/* Cancel */

.kf-escalate-modal__actions
.btn--secondary {
  color:
    rgba(24, 24, 28, 0.68) !important;

  border:
    1px solid
    rgba(24, 24, 28, 0.11) !important;

  background:
    rgba(255, 255, 255, 0.64) !important;

  box-shadow:
    inset
    0
    1px
    0
    rgba(255, 255, 255, 0.9) !important;
}


.kf-escalate-modal__actions
.btn--secondary:hover {
  color: #35377d !important;

  border-color:
    rgba(95, 97, 255, 0.2) !important;

  background:
    rgba(234, 235, 255, 0.9) !important;
}


/* Submit */

.kf-escalate-modal__actions
.btn--primary {
  color:
    #ffffff !important;

  border:
    1px solid
    rgba(255, 255, 255, 0.14) !important;

  background:
    linear-gradient(
      135deg,
      #7577ff,
      #5557d8
    ) !important;

  box-shadow:
    inset
    0
    1px
    0
    rgba(255, 255, 255, 0.24),

    0
    12px
    26px
    rgba(95, 97, 255, 0.24) !important;
}


.kf-escalate-modal__actions
.btn--primary:hover {
  transform:
    translateY(-2px)
    scale(1.02);

  background:
    linear-gradient(
      135deg,
      #8587ff,
      #4a4cc9
    ) !important;

  box-shadow:
    inset
    0
    1px
    0
    rgba(255, 255, 255, 0.34),

    0
    18px
    36px
    rgba(95, 97, 255, 0.38) !important;

  filter:
    saturate(1.08)
    brightness(1.04);
}

.kf-escalate-modal__actions
.btn--primary {
  transition:
    transform 180ms ease,
    background 180ms ease,
    box-shadow 180ms ease,
    filter 180ms ease !important;
}


/* =========================
   Status message
   ========================= */

.kf-escalate-modal__status {
  min-height: 0;

  margin:
    18px
    0
    0;

  color:
    rgba(24, 24, 28, 0.66);

  font-size: 13.5px;
  line-height: 1.4;
  font-weight: 500;
}


.kf-escalate-modal__status:empty {
  display: none;
}


/* =========================
   Mobile
   ========================= */

@media (max-width: 600px) {

  .kf-escalate-modal {
    padding: 16px;

    align-items: flex-end;
  }


  .kf-escalate-modal__dialog {
    width: 100%;
    max-height:
      calc(100vh - 32px);

    padding:
      31px
      22px
      24px;

    border-radius:
      26px;
  }


  .kf-escalate-modal__title {
    font-size:
      32px;
  }


  .kf-escalate-modal__actions {
    align-items: stretch;

    flex-direction: column-reverse;
  }


  .kf-escalate-modal__actions
  .btn {
    width: 100%;
  }

}

/* =========================
   New Request page
   ========================= */

.kf-request-auth-wall {
  padding: 48px 24px;
}

.kf-anonymous-form-submit {
  margin-top: 24px;
}

.kf-anonymous-form-submit .kf-request-button {
  width: 100%;
}

.kf-request-page {
  position: relative;
  min-height: auto;
  padding: 20px;
  color: #ffffff;
  background: var(--kf-mist-white);
  overflow: visible;
}

.kf-request-page .container-divider,
.kf-request-page > .container,
.kf-request-page .sub-nav {
  display: none !important;
}

.kf-request-main {
  position: relative;
  overflow: hidden;

  width: auto;
  max-width: none;
  margin: 0;
  padding: 72px 76px 82px;

  border-radius: var(--kf-radius-page);

  background-color: #1a1825;
background-image:
  radial-gradient(
    ellipse at 42% 46%,
    rgba(170, 170, 180, 0.28) 0%,
    rgba(116, 116, 129, 0.18) 22%,
    rgba(76, 76, 91, 0.10) 38%,
    rgba(26, 24, 37, 0) 58%
  ),
  linear-gradient(
    135deg,
    rgba(170, 170, 180, 0.12) 0%,
    rgba(116, 116, 129, 0.10) 24%,
    rgba(76, 76, 91, 0.06) 42%,
    rgba(26, 24, 37, 0) 58%
  ),
  radial-gradient(circle at 0% 0%, rgba(10, 10, 18, 0.34), transparent 34%),
  radial-gradient(circle at 100% 0%, rgba(10, 10, 18, 0.38), transparent 34%),
  radial-gradient(circle at 100% 100%, rgba(10, 10, 18, 0.36), transparent 36%),
  radial-gradient(circle at 0% 100%, rgba(10, 10, 18, 0.34), transparent 34%),
  linear-gradient(
    135deg,
    #1a1825 0%,
    #232230 34%,
    #3e3e4d 58%,
    #2c2c3a 74%,
    #171626 100%
  );
}

.kf-request-main::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;

  background:
    radial-gradient(
      ellipse at 42% 48%,
      rgba(255, 255, 255, 0.11) 0%,
      rgba(170, 170, 180, 0.08) 22%,
      rgba(76, 76, 91, 0.04) 42%,
      rgba(26, 24, 37, 0) 64%
    ),
    linear-gradient(
      135deg,
      rgba(255, 255, 255, 0.055) 0%,
      rgba(170, 170, 180, 0.035) 28%,
      rgba(255, 255, 255, 0) 52%
    ),
    linear-gradient(
      90deg,
      rgba(12, 12, 20, 0.22) 0%,
      rgba(12, 12, 20, 0.02) 42%,
      rgba(12, 12, 20, 0.26) 100%
    );

  background-repeat: no-repeat;
  background-size: cover;
  opacity: 1;
}

.kf-request-shell {
  position: relative;
  z-index: 1;

  width: min(1320px, 100%);
  margin: 0 auto;

  display: grid;
  grid-template-columns: minmax(0, 0.55fr) minmax(400px, 0.45fr);
  gap: 58px;
  align-items: start;
}

/* Side/form panels */

.kf-request-form-card,
.kf-request-side-card,
.kf-request-signed-out-card {
  position: relative;
  overflow: visible;

  border: 0;
  border-radius: 0;

  color: #ffffff;
  background: transparent;
  box-shadow: none;

  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

.kf-request-side-card {
  position: sticky;
  top: 28px;

  min-height: 520px;
  padding: 0 50px 0 0;

  border-right: 0;
}

.kf-request-form-card {
  z-index: 1;
  padding-top: 34px;
  padding-left: 48px;

  border-left: 0;
}

.kf-request-form-card::before {
  content: "";
  position: absolute;

  left: -29px;

  top: 0;
  bottom: 0;

  width: 1px;
  pointer-events: none;

  background: linear-gradient(
    180deg,
    rgba(255, 255, 255, 0) 0%,
    rgba(255, 255, 255, 0.46) 50%,
    rgba(255, 255, 255, 0) 100%
  );
}

.kf-request-side-intro {
  margin: 0 0 38px;
  padding: 0;
  border-bottom: 0;
}

.kf-request-eyebrow {
  width: fit-content;
  margin: 0 0 16px;

  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 14px;

  color: #a5a7ff !important;
  font-size: 15px;
  line-height: 1;
  font-weight: 560;
  letter-spacing: 0.125em;
  text-transform: uppercase;

  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  font-synthesis: none;
}

.kf-request-eyebrow::before {
  content: "/ / / /";
  flex: 0 0 auto;
  color: #a5a7ff;
  letter-spacing: 0;
  line-height: 1;
}

.kf-request-title {
  max-width: 640px;
  margin: 0;

  font-family: var(--kf-font-h1) !important;
  font-size: clamp(52px, 5.2vw, 78px);
  line-height: 0.98;
  letter-spacing: 0.012em;
  font-weight: 200;

  color: #ffffff;

  text-rendering: geometricPrecision;
  -webkit-font-smoothing: antialiased;
  font-synthesis: none;
}

.kf-request-side-card h4 {
  margin: 0 0 14px;

  color: #ffffff;
  font-family: var(--kf-font-h4-5) !important;
  font-size: 27px;
  line-height: 1.05;
  font-weight: 560;
  letter-spacing: -0.024em;
}

.form-content-default {
  margin: 0;
  max-width: 650px;
}

/* Default Support guidance */

.form-content-default .kf-request-guidance-text {
  max-width: 620px;
  margin: 0 0 34px;

  color: #ffffff;
  font-family: var(--kf-font-body) !important;
  font-size: 18px;
  line-height: 1.56;
  font-weight: 400;
  letter-spacing: -0.006em;

  text-rendering: geometricPrecision;
  -webkit-font-smoothing: antialiased;
  font-synthesis: none;
}

/* Support side-message text */

.support-message {
  margin: 26px 0 28px;
  padding: 0 0 8px;

  border-radius: 0;
  border: 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.16);
  background: transparent;
  box-shadow: none;
}

.support-message h4 {
  margin: 0 0 10px;

  color: #ffffff;
  font-family: var(--kf-font-body) !important;
  font-size: 20px;
  line-height: 1.15;
  font-weight: 700;
  letter-spacing: -0.008em;
}

.support-message__lede {
  margin: 0 0 20px;

  color: rgba(255, 255, 255, 0.82);
  font-family: var(--kf-font-body) !important;
  font-size: 15.5px;
  line-height: 1.52;
  font-weight: 400;
}

.support-message strong,
.support-message b {
  color: #ffffff;
  font-weight: 700;
}

/* Partner Go-Live Severity 1 section */

.partner-message-post-go-live-support
.support-message {
  border-bottom: 0;
  padding-bottom: 0;
}

.support-section-label {
  margin: 0 0 10px;

  color: #a5a7ff;
  font-family: var(--kf-font-body) !important;
  font-size: 12px;
  line-height: 1;
  font-weight: 700;
  letter-spacing: 0.075em;
  text-transform: uppercase;
}

/* Match Partner Contact Instructions to Support form */

.partner-message-post-go-live-support
.support-section-label {
  margin: 0 0 10px;

  color: #a5a7ff;

  font-family:
    var(--kf-font-body) !important;

  font-size: 12px;
  line-height: 1;
  font-weight: 700;
  letter-spacing: 0.075em;
  text-transform: uppercase;
}

.support-contact-block {
  margin: 20px 0 24px;
}

.support-contact-card {
  margin: 0 0 10px;
  padding: 14px 15px;

  border-radius: 16px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: rgba(255, 255, 255, 0.065);
}

.support-contact-card:last-child {
  margin-bottom: 0;
}

.support-contact-card__time {
  display: block;
  margin: 0 0 6px;

  color: #ffffff;
  font-size: 14.5px;
  line-height: 1.25;
  font-weight: 700;
}

.support-contact-card__text {
  display: block;

  color: rgba(255, 255, 255, 0.78);
  font-size: 14.5px;
  line-height: 1.42;
  font-weight: 400;
}

.support-contact-card__text
.support-call-us-emphasis {
  color: #ffffff !important;

  font-family:
    var(--kf-font-body) !important;

  font-weight: 800 !important;
  font-synthesis: weight;

  -webkit-text-stroke:
    0.25px currentColor;
}

.support-product-list {
  margin: 10px 0 0;
  padding-left: 18px;

  color: rgba(255, 255, 255, 0.78);
  font-size: 14.5px;
  line-height: 1.42;
  font-weight: 400;
}

.support-product-list li {
  margin: 5px 0;
}

.support-message a {
  color: #ffffff;
  font-weight: 600;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

.support-message a:hover {
  color: #c5c7ff;
}

.support-severity-block {
  margin-top: 24px;
}

.support-message h5 {
  margin: 0 0 12px;

  color: #ffffff;
  font-family: var(--kf-font-body) !important;
  font-size: 17px;
  line-height: 1.2;
  font-weight: 700;
  letter-spacing: -0.004em;
}

.support-severity-list {
  margin: 0;
  padding: 0;
}

.support-severity-item {
  display: grid;
  grid-template-columns: 56px minmax(0, 1fr);
  gap: 12px;
  margin: 0;
  padding: 12px 0;

  border-top: 1px solid rgba(255, 255, 255, 0.11);
}

.support-severity-item:first-child {
  border-top: 0;
}

.support-severity-item dt {
  width: fit-content;
  min-width: 48px;
  height: 26px;
  padding: 0 10px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  border-radius: 999px;
  border: 1px solid transparent;

  font-size: 12px;
  line-height: 1;
  font-weight: 750;
  letter-spacing: -0.01em;
}

/* Sev 1 */
.support-severity-list .support-severity-item:nth-child(1) dt,
.support-severity-item--sev1 dt {
  color: #ffffff;
  background: #5f61ff; 
  border-color: #5f61ff;
}

/* Sev 2 */
.support-severity-list .support-severity-item:nth-child(2) dt {
color: #0a0b2e;
  background: #a5a7ff;
  border-color: #a5a7ff;
}

/* Sev 3 */
.support-severity-list .support-severity-item:nth-child(3) dt {
   color: #2d2f8f;
  background: #e8e9ff;
  border-color: #e8e9ff;
}

/* Sev 4 */
.support-severity-list .support-severity-item:nth-child(4) dt {
  color: #cfd0ff;
  background: transparent;
  border-color: rgba(232, 233, 255, 0.42);
}

.support-severity-item dd {
  margin: 0;

  color: rgba(255, 255, 255, 0.78);
  font-size: 14.5px;
  line-height: 1.45;
  font-weight: 400;
}

/* Request page call CTA */

.kf-request-call-card {
  position: relative;
  overflow: hidden;
  isolation: isolate;

  max-width: 660px;
  margin: 0 0 30px;
  padding: 28px 30px;

  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 26px;

  border-radius: 10px;
  border: 1px solid rgba(255, 255, 255, 0.18);

  color: #ffffff;

  background: #4c4c5b !important;
  background-color: #4c4c5b !important;
  background-image: none !important;
  background-blend-mode: normal !important;

  box-shadow: none !important;

  opacity: 1 !important;
  filter: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
}

.kf-request-call-card::before,
.kf-request-call-card::after {
  display: none !important;
  content: none !important;
  background: none !important;
  background-image: none !important;
  box-shadow: none !important;
  opacity: 0 !important;
}

.kf-request-call-card > * {
  position: relative;
  z-index: 1;
}

.kf-request-call-card:hover {
  background: #37384d !important;
  background-color: #37384d !important;
  background-image: none !important;
  border-color: rgba(255, 255, 255, 0.18);
  box-shadow: none !important;
}

.kf-request-call-card__eyebrow {
  margin: 0 0 9px;

  color: #a5a7ff !important;
  font-size: 12.5px;
  line-height: 1;
  font-weight: 650;
  letter-spacing: 0.125em;
  text-transform: uppercase;

  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  font-synthesis: none;
}

.kf-request-call-card__title {
  margin: 0;

  color: #ffffff;
  font-family: var(--kf-font-h4-5) !important;
  font-size: 25px;
  line-height: 1.06;
  font-weight: 560;
  letter-spacing: -0.026em;

  text-rendering: geometricPrecision;
  -webkit-font-smoothing: antialiased;
  font-synthesis: none;
}

.kf-request-call-card__text {
  max-width: 430px;
  margin: 12px 0 0;

  color: rgba(255, 255, 255, 0.72);
  font-size: 15px;
  line-height: 1.42;
  font-weight: 460;
}

.kf-request-call-card__button {
  min-height: 50px;
  padding: 0 24px;

  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;

  border: 0;
  border-radius: 999px;

  color: #ffffff;
  font-family: var(--kf-font-body) !important;
  font-size: 16px;
  line-height: 1;
  font-weight: 720;

  background: #5f61ff;
  box-shadow:
    inset 0 0 0 1px rgba(255, 255, 255, 0.14),
    inset 1.6px 2px 0 -2px rgba(255, 255, 255, 0.48),
    inset -2px -3px 1px -3px rgba(255, 255, 255, 0.20),
    0 12px 28px rgba(95, 97, 255, 0.28);

  cursor: pointer;

  transition:
    transform 180ms ease,
    background 180ms ease,
    box-shadow 180ms ease;
}

.kf-request-call-card__button:hover,
.kf-request-call-card__button:focus {
  transform: translateY(-1px);
  background: #6d6fff;
  box-shadow:
    inset 0 0 0 1px rgba(255, 255, 255, 0.18),
    inset 1.6px 2px 0 -2px rgba(255, 255, 255, 0.54),
    inset -2px -3px 1px -3px rgba(255, 255, 255, 0.24),
    0 16px 34px rgba(95, 97, 255, 0.36);
}

.kf-request-call-card__icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  line-height: 1;
}

.kf-request-call-card__icon img {
  display: block;
  width: 19px;
  height: 19px;
  object-fit: contain;
}

/* Keep Zendesk launcher available for JS, but visually hide the floating button.
   Zendesk injects this iframe outside .kf-request-page, so this cannot be scoped as a descendant. */

html.form-id-33707154012187 iframe[title*="Opens a widget where you can talk to one of our agents"],
html.form-id-33760936865563 iframe[title*="Opens a widget where you can talk to one of our agents"] {
  width: 1px !important;
  height: 1px !important;
  min-width: 1px !important;
  min-height: 1px !important;
  max-width: 1px !important;
  max-height: 1px !important;

  opacity: 0 !important;
  pointer-events: none !important;

  right: 0 !important;
  bottom: 0 !important;
  overflow: hidden !important;
}

@media (max-width: 1100px) {
  .kf-request-call-card {
    max-width: 760px;
  }

  .kf-request-shell {
    grid-template-columns: 1fr;
    gap: 34px;
  }

  .kf-request-side-card {
    position: relative;
    top: auto;
    min-height: 0;
    padding: 0 0 32px;
    border-right: 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.16);
  }

  .kf-request-form-card {
    padding-left: 0;
    border-left: 0;
  }
  
  .kf-request-form-card::before {
    content: none;
  }

  .kf-request-side-intro {
    max-width: 760px;
  }
}

@media (max-width: 640px) {
  .kf-request-call-card {
    grid-template-columns: 1fr;
    align-items: start;
    gap: 18px;
    padding: 24px;
  }

  .kf-request-call-card__button {
    width: 100%;
  }
}

/* Field-level validation highlight */
.kf-request-modern-form .form-field.kf-field-invalid input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]):not([type="file"]):not([type="hidden"]),
.kf-request-modern-form .form-field.kf-field-invalid textarea,
.kf-request-modern-form .form-field.kf-field-invalid select,
.kf-request-modern-form .form-field.kf-field-invalid .nesty-input {
  border-color: #ff9371 !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.10),
    0 0 0 3px rgba(255, 147, 113, 0.20),
    0 10px 26px rgba(0, 0, 0, 0.18) !important;
}

.kf-request-modern-form .form-field.kf-field-invalid > label {
  color: #ff9371;
}

/* Single summary banner near the top of the form */
.kf-form-error-banner {
  margin: 0 0 26px;
  padding: 14px 18px;

  display: flex;
  align-items: center;
  gap: 10px;

  border-radius: 14px;
  border: 1px solid rgba(255, 147, 113, 0.42);

  color: #ff9371;
  font-family: var(--kf-font-body) !important;
  font-size: 15px;
  line-height: 1.4;
  font-weight: 620;

  background: rgba(255, 147, 113, 0.12);
}

.kf-form-error-banner::before {
  content: "!";
  flex: 0 0 auto;

  width: 20px;
  height: 20px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  border-radius: 999px;
  background: #ff9371;

  color: #ffffff;
  font-size: 12px;
  font-weight: 800;
}

/* Keep the raw "Field: cannot be blank" text for screen readers only */
.kf-field-invalid .kf-raw-error {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

/* Support + Partner privacy footnote */

.form-content-default .kf-request-privacy-note,
.form-content-partner .kf-request-privacy-note {
  max-width: 560px;
  margin: 0;
  padding-top: 4px;
}

.form-content-default .kf-request-privacy-title,
.form-content-partner .kf-request-privacy-title {
  margin: 0 0 8px;

  color: rgba(255, 255, 255, 0.56);
  font-family: var(--kf-font-body) !important;
  font-size: 12.5px;
  line-height: 1.25;
  font-weight: 650;
  letter-spacing: 0.055em;
  text-transform: uppercase;

  text-rendering: geometricPrecision;
  -webkit-font-smoothing: antialiased;
  font-synthesis: none;
}

.form-content-default .kf-request-privacy-text,
.form-content-partner .kf-request-privacy-text {
  margin: 0;

  color: rgba(255, 255, 255, 0.54);
  font-family: var(--kf-font-body) !important;
  font-size: 13px;
  line-height: 1.48;
  font-weight: 430;
  letter-spacing: -0.002em;

  text-rendering: geometricPrecision;
  -webkit-font-smoothing: antialiased;
  font-synthesis: none;
}

.kf-request-side-card b,
.kf-request-side-card strong {
  color: inherit;
  font-family: var(--kf-font-body) !important;
  font-weight: 700;
}

.kf-request-side-card a:not(.kf-request-button) {
  color: #ffffff;
  font-weight: 500;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

.kf-request-side-card a:not(.kf-request-button):hover {
  color: #c5c7ff;
}

/* Customer Success / Partner side-message text */

.form-content-cs p,
.form-content-partner p {
  margin: 0 0 18px;

  color: rgba(255, 255, 255, 0.78);
  font-family: var(--kf-font-body) !important;
  font-size: 17px;
  line-height: 1.55;
  font-weight: 430;
}

.form-content-cs p:last-child,
.form-content-partner p:last-child {
  margin-bottom: 0;
}

.form-content-cs
.cs-message b,

.form-content-cs
.cs-message strong {
  color: #ffffff !important;

  font-family:
    var(--kf-font-h4-5) !important;

  font-weight: 800 !important;

  letter-spacing: 0.01em;

  -webkit-font-smoothing: antialiased;

  text-rendering: geometricPrecision;
}

.cs-message,
.partner-message {
  margin-bottom: 22px;
}

.partner-sales-note {
  margin-top: 22px !important;
  padding-top: 22px;
  border-top: 1px solid rgba(255, 255, 255, 0.16);
}

/* =========================================================
   Customer Success guidance
   ========================================================= */

.form-content-cs {
  max-width: 650px;
}


/* Intro */

.form-content-cs .kf-cs-intro {
  max-width: 620px;

  margin: 0 0 30px;

  color: #ffffff;

  font-family:
    var(--kf-font-body) !important;

  font-size: 18px;

  line-height: 1.56;

  font-weight: 400;

  letter-spacing: -0.006em;

  text-rendering: geometricPrecision;

  -webkit-font-smoothing: antialiased;

  font-synthesis: none;
}


/* Login information */

.kf-cs-login-block {
  margin: 0 0 32px;
}


.kf-cs-section-label {
  margin: 0 0 10px !important;

  color: #a5a7ff !important;

  font-family:
    var(--kf-font-body) !important;

  font-size: 12px !important;

  line-height: 1 !important;

  font-weight: 700 !important;

  letter-spacing: 0.075em;

  text-transform: uppercase;
}


.kf-cs-login-card {
  padding: 16px 17px;

  border-radius: 16px;

  border:
    1px solid
    rgba(255, 255, 255, 0.12);

  background:
    rgba(255, 255, 255, 0.065);
}


.kf-cs-login-card strong {
  display: block;

  margin: 0 0 7px;

  color: #ffffff;

  font-size: 15px;

  line-height: 1.3;

  font-weight: 700;
}


.form-content-cs
.kf-cs-login-card p {
  margin: 0;

  color:
    rgba(255, 255, 255, 0.76);

  font-size: 14.5px;

  line-height: 1.48;

  font-weight: 400;
}


.form-content-cs
.kf-cs-login-card a {
  color: #b9bbff !important;

  font-weight: 600;

  text-decoration: underline;

  text-decoration-thickness: 1px;

  text-underline-offset: 3px;

  text-decoration-color:
  rgba(185, 187, 255, 0.78);

  transition:
    color 180ms ease,
    text-decoration-color 180ms ease;
}


.form-content-cs
.kf-cs-login-card a:hover,
.form-content-cs
.kf-cs-login-card a:focus {
  color: #c5c7ff !important;

  text-decoration-color:
    #c5c7ff;
}

.form-content-cs
.kf-cs-login-card a:hover,
.form-content-cs
.kf-cs-login-card a:focus {
  color: #ffffff;

  text-decoration-color:
    rgba(255, 255, 255, 0.72);
}

/* How we can help */

.kf-cs-help-block {
  margin: 0;

  padding: 0 0 28px;

}


.kf-cs-help-block h4 {
  margin: 0 0 12px;

  color: #ffffff;

  font-family:
    var(--kf-font-h4-5) !important;

  font-size: 24px;

  line-height: 1.08;

  font-weight: 700;

  letter-spacing: -0.012em;

  text-rendering: geometricPrecision;

  -webkit-font-smoothing: antialiased;
}


.form-content-cs
.kf-cs-help-intro {
  margin: 0 0 18px;

 color:
  rgba(255, 255, 255, 0.90);

  font-size: 15.5px;

  line-height: 1.5;

  font-weight: 400;
}


/* Help list */

.kf-cs-help-list {
  list-style: none;

  margin: 0;

  padding: 0;
}


.kf-cs-help-list li {
  position: relative;

  margin: 0 0 10px;

  padding:
    3px
    12px
    3px
    38px;

  color:
  rgba(255, 255, 255, 0.90);

font-size: 15.5px;

  line-height: 1.42;

  font-weight: 500;

  border: 0;
}


.kf-cs-help-list li::before {
  content: "";

  position: absolute;

  top: 10px;

  left: 15px;

  width: 7px;

  height: 7px;

  border-radius: 999px;

  background: #a5a7ff;

  box-shadow:
    0 0 0 4px
    rgba(165, 167, 255, 0.10);
}


.kf-cs-help-list li:last-child {
  margin-bottom: 0;
}

/* Customer Success closing statement */

.kf-cs-closing {
  width: 100%;

  margin-top: 30px;

  display: grid;

  grid-template-columns:
    auto
    minmax(70px, 1fr);

  align-items: center;

  gap: 28px;
}


.kf-cs-closing__text {
  position: relative;

  margin-top: 8px;

  color: #ffffff;

  opacity: 0.85;

  font-size:
    clamp(
      12px,
      calc(10.55px + 0.45vw),
      16px
    );

  line-height: 1.25;

  font-weight: 600;

  letter-spacing: 0.08em;

  text-transform: uppercase;

  white-space: nowrap;

  text-rendering: geometricPrecision;

  -webkit-font-smoothing: antialiased;
}


.kf-cs-closing__line {
  display: block;

  width: 100%;

  height: 1px;

  transform: translateY(1px);

  background:
    linear-gradient(
      90deg,
      rgba(255, 255, 255, 0.48) 0%,
      rgba(255, 255, 255, 0.28) 42%,
      rgba(255, 255, 255, 0) 100%
    );
}

.form-content-cs
.kf-cs-help-block,

.form-content-cs
.cs-message-default {
  border-bottom: 0 !important;
}

.kf-cs-persistent {
  margin-top: 12px;
}
.form-content-cs
.cs-message-default {
  margin-bottom: 0;

  padding-bottom: 0;
}

/* Technical support message spacing */

.form-content-cs
.cs-message-technical-support
.kf-request-button {
  display: inline-flex;

  margin:
    4px
    0
    16px;
}


.form-content-cs
.cs-message-technical-support
.kf-request-button + p {
  margin-top: 0;
}

/* Customer Success privacy note */

.form-content-cs .kf-cs-privacy-note {
  max-width: 560px;
  margin-top: 20px;
  padding-top: 4px;
}

.form-content-cs .kf-cs-privacy-note .kf-request-privacy-title {
  margin: 0 0 8px;

  color: rgba(255, 255, 255, 0.56);

  font-family: var(--kf-font-body) !important;
  font-size: 12.5px;
  line-height: 1.25;
  font-weight: 650;
  letter-spacing: 0.055em;
  text-transform: uppercase;
}

.form-content-cs .kf-cs-privacy-note .kf-request-privacy-text {
  margin: 0;

  color: rgba(255, 255, 255, 0.54);

  font-family: var(--kf-font-body) !important;
  font-size: 13px;
  line-height: 1.48;
  font-weight: 430;
  letter-spacing: -0.002em;
}

@media (max-width: 700px) {

  .kf-cs-closing {
    grid-template-columns: 1fr;

    gap: 12px;
  }


  .kf-cs-closing__text {
    white-space: normal;
  }

}

/* =========================================================
   Partner Support / Enablement guidance
   ========================================================= */

.form-content-partner {
  max-width: 650px;
}


/* Intro */

.form-content-partner
.kf-partner-intro {
  max-width: 620px;

  margin: 0 0 30px;

  color: #ffffff;

  font-family:
    var(--kf-font-body) !important;

  font-size: 18px;

  line-height: 1.56;

  font-weight: 400;

  letter-spacing: -0.006em;

  text-rendering:
    geometricPrecision;

  -webkit-font-smoothing:
    antialiased;

  font-synthesis: none;
}


/* How we can help */

.kf-partner-help-block {
  margin: 0;

  padding: 0 0 28px;
}


.kf-partner-help-block h4 {
  margin: 0 0 12px;

  color: #ffffff;

  font-family:
    var(--kf-font-h4-5) !important;

  font-size: 24px;

  line-height: 1.08;

  font-weight: 700;

  letter-spacing: -0.012em;

  text-rendering:
    geometricPrecision;

  -webkit-font-smoothing:
    antialiased;
}


.form-content-partner
.kf-partner-help-intro {
  margin: 0 0 18px;

  color:
    rgba(255, 255, 255, 0.90);

  font-size: 15.5px;

  line-height: 1.5;

  font-weight: 400;
}


/* Help list */

.kf-partner-help-list {
  list-style: none;

  margin: 0;

  padding: 0;
}


.kf-partner-help-list li {
  position: relative;

  margin: 0 0 10px;

  padding:
    3px
    12px
    3px
    38px;

  color:
    rgba(255, 255, 255, 0.90);

  font-size: 15.5px;

  line-height: 1.42;

  font-weight: 500;

  border: 0;
}


.kf-partner-help-list li::before {
  content: "";

  position: absolute;

  top: 10px;

  left: 15px;

  width: 7px;

  height: 7px;

  border-radius: 999px;

  background: #a5a7ff;

  box-shadow:
    0 0 0 4px
    rgba(165, 167, 255, 0.10);
}


.kf-partner-help-list li:last-child {
  margin-bottom: 0;
}


/* Persistent Partner information */

.kf-partner-persistent {
  margin-top: 12px;
}

/* Customer Success + Partner Support Portal access below form */

.kf-cs-form-access,
.kf-partner-form-access {
  margin-top: 28px;
  padding-top: 26px;

  border-top:
    1px solid
    rgba(255, 255, 255, 0.12);
}


.kf-cs-form-access__label,
.kf-partner-form-access__label {
  margin: 0 0 10px;

  color: #a5a7ff;

  font-family:
    var(--kf-font-body) !important;

  font-size: 12px;
  line-height: 1;
  font-weight: 700;
  letter-spacing: 0.075em;
  text-transform: uppercase;
}


.kf-cs-form-access__card,
.kf-partner-form-access__card {
  padding: 17px 18px;

  border:
    1px solid
    rgba(255, 255, 255, 0.12);

  border-radius: 16px;

  background:
    rgba(255, 255, 255, 0.065);
}


.kf-cs-form-access__card strong,
.kf-partner-form-access__card strong {
  display: block;

  margin: 0 0 7px;

  color: #ffffff;

  font-size: 15px;
  line-height: 1.3;
  font-weight: 700;
}


.kf-cs-form-access__card p,
.kf-partner-form-access__card p {
  margin: 0;

  color:
    rgba(255, 255, 255, 0.76);

  font-size: 14.5px;
  line-height: 1.48;
  font-weight: 400;
}


.kf-cs-form-access__card a,
.kf-partner-form-access__card a {
  color: #b9bbff !important;

  font-weight: 600;

  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;

  text-decoration-color:
    rgba(185, 187, 255, 0.72);

  transition:
    color 180ms ease,
    text-decoration-color 180ms ease,
    text-shadow 180ms ease;
}


.kf-cs-form-access__card a:hover,
.kf-cs-form-access__card a:focus,
.kf-partner-form-access__card a:hover,
.kf-partner-form-access__card a:focus {
  color: #ffffff !important;

  text-decoration-color:
    #ffffff;

  text-shadow:
    0 0 10px
    rgba(185, 187, 255, 0.42);
}

/* Partner Support Portal access */

.kf-partner-login-block {
  margin: 0 0 32px;
}


.kf-partner-login-card {
  padding: 16px 17px;

  border-radius: 16px;

  border:
    1px solid
    rgba(255, 255, 255, 0.12);

  background:
    rgba(255, 255, 255, 0.065);
}


.kf-partner-login-card strong {
  display: block;

  margin: 0 0 7px;

  color: #ffffff;

  font-size: 15px;

  line-height: 1.3;

  font-weight: 700;
}


.form-content-partner
.kf-partner-login-card p {
  margin: 0;

  color:
    rgba(255, 255, 255, 0.76);

  font-size: 14.5px;

  line-height: 1.48;

  font-weight: 400;
}

.kf-partner-sales-block {
  margin: 0 0 32px;
}


.kf-partner-section-label {
  margin: 0 0 10px !important;

  color: #a5a7ff !important;

  font-family:
    var(--kf-font-body) !important;

  font-size: 12px !important;

  line-height: 1 !important;

  font-weight: 700 !important;

  letter-spacing: 0.075em;

  text-transform: uppercase;
}


.kf-partner-sales-card {
  position: relative;

  padding:
    4px
    0
    4px
    22px;

  border: 0;

  border-radius: 0;

  background: transparent;
}


.kf-partner-sales-card::before {
  content: "";

  position: absolute;

  top: 2px;

  bottom: 2px;

  left: 0;

  width: 3px;

  border-radius: 999px;

  background:
    linear-gradient(
      180deg,
      #a5a7ff 0%,
      rgba(165, 167, 255, 0.28) 100%
    );

  box-shadow:
    0 0 18px
    rgba(165, 167, 255, 0.18);
}


.kf-partner-sales-card strong {
  display: block;

  margin: 0 0 8px;

  color: #ffffff;

  font-size: 15.5px;

  line-height: 1.3;

  font-weight: 700;
}


.form-content-partner
.kf-partner-sales-card p {
  max-width: 590px;

  margin: 0;

  color:
    rgba(255, 255, 255, 0.72);

  font-size: 14.5px;

  line-height: 1.5;

  font-weight: 400;
}


.form-content-partner
.kf-partner-sales-card a {
  color: #b9bbff !important;

  font-weight: 600;

  text-decoration: underline;

  text-decoration-thickness: 1px;

  text-underline-offset: 3px;

  text-decoration-color:
    rgba(185, 187, 255, 0.78);

  transition:
    color 180ms ease,
    text-decoration-color 180ms ease;
}


.form-content-partner
.kf-partner-sales-card a:hover,
.form-content-partner
.kf-partner-sales-card a:focus {
  color: #c5c7ff !important;

  text-decoration-color:
    #c5c7ff;
}


/* Dynamic request-type messages */

.form-content-partner
.partner-message h4 {
  margin: 0 0 12px;

  color: #ffffff;

  font-family:
    var(--kf-font-h4-5) !important;

  font-size: 24px;

  line-height: 1.08;

  font-weight: 700;

  letter-spacing: -0.012em;
}


.form-content-partner
.partner-message-default {
  margin-bottom: 0;

  padding-bottom: 0;
}


.form-content-partner
.partner-message
.kf-request-button {
  display: inline-flex;

  margin:
    4px
    0
    16px;
}


.form-content-partner
.partner-message
.kf-request-button + p {
  margin-top: 0;
}

/* Partner alternate-routing panel */

.form-content-partner .kf-partner-other-block {
  position: relative;

  margin-top: 14px;
  padding: 22px 24px;

  overflow: hidden;

  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 20px;

  background:
    radial-gradient(
      circle at 12% 0%,
      rgba(185, 187, 255, 0.18),
      transparent 34%
    ),
    linear-gradient(
      135deg,
      rgba(255, 255, 255, 0.10),
      rgba(255, 255, 255, 0.045)
    ),
    rgba(255, 255, 255, 0.035);

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.16),
    0 16px 36px rgba(0, 0, 0, 0.14);
}

.form-content-partner .kf-partner-other-block::before {
  content: "";

  position: absolute;
  inset: 0;

  pointer-events: none;

  background:
    linear-gradient(
      135deg,
      rgba(255, 255, 255, 0.12),
      transparent 42%
    );
}

.form-content-partner .kf-partner-other-block > * {
  position: relative;
  z-index: 1;
}

.form-content-partner .kf-partner-other-block h4 {
  margin: 0 0 12px;

  color: #ffffff;

  font-size: 21px;
  line-height: 1.1;
  font-weight: 600;
}

.form-content-partner .kf-partner-other-block p {
  margin: 0;

  color: rgba(255, 255, 255, 0.74);

  font-size: 15.5px;
  line-height: 1.5;
  font-weight: 430;
}

.form-content-partner .kf-partner-other-block p + p {
  margin-top: 14px;
}

/* Shared Partner email links */

.form-content-partner
.kf-partner-other-block a,

.kf-partner-form-access__card a {
  color: #b9bbff !important;

  font-weight: 600;

  text-decoration: underline;

  text-decoration-thickness: 1px;

  text-underline-offset: 3px;

  text-decoration-color:
    rgba(185, 187, 255, 0.72);

  transition:
    color 180ms ease,
    text-decoration-color 180ms ease,
    text-shadow 180ms ease;
}


.form-content-partner
.kf-partner-other-block a:hover,

.form-content-partner
.kf-partner-other-block a:focus,

.kf-partner-form-access__card a:hover,

.kf-partner-form-access__card a:focus {
  color: #a5a7ff !important;

  text-decoration-color:
    #a5a7ff;

  text-shadow:
    0 0 10px
    rgba(185, 187, 255, 0.42);
}

/* Shared Partner email links */

.form-content-partner .kf-partner-other-block a,
.kf-partner-form-access__card a,
.partner-message-poc-support a {
  color: #b9bbff !important;
  font-weight: 600;

  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
  text-decoration-color: rgba(185, 187, 255, 0.72);

  transition:
    color 180ms ease,
    text-decoration-color 180ms ease,
    text-shadow 180ms ease;
}

.form-content-partner .kf-partner-other-block a:hover,
.form-content-partner .kf-partner-other-block a:focus,
.kf-partner-form-access__card a:hover,
.kf-partner-form-access__card a:focus,
.partner-message-poc-support a:hover,
.partner-message-poc-support a:focus {
  color: #ffffff !important;
  text-decoration-color: #ffffff;
  text-shadow: 0 0 10px rgba(185, 187, 255, 0.42);
}

.support-contact-card__text a {
  color: #b9bbff !important;
  font-weight: 600;

  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
  text-decoration-color: rgba(185, 187, 255, 0.72);

  transition:
    color 180ms ease,
    text-decoration-color 180ms ease,
    text-shadow 180ms ease;
}

.support-contact-card__text a:hover,
.support-contact-card__text a:focus {
  color: #ffffff !important;
  text-decoration-color: #ffffff;

  text-shadow:
    0 0 10px rgba(185, 187, 255, 0.42);
}


/* More space above Partner privacy note */

.form-content-partner .kf-partner-privacy-note {
  margin-top: 34px;
}

/* Customer Success + Partner closing statement */

.kf-cs-closing,
.kf-partner-closing {
  width: 100%;
  margin-top: 30px;

  display: grid;
  grid-template-columns: auto minmax(70px, 1fr);
  align-items: center;
  gap: 28px;
}

.kf-cs-closing__text,
.kf-partner-closing__text {
  position: relative;
  margin-top: 8px;

  color: #ffffff;
  opacity: 0.85;

  font-size: clamp(
    12px,
    calc(10.55px + 0.45vw),
    16px
  );

  line-height: 1.25;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  white-space: nowrap;
}

.kf-cs-closing__line,
.kf-partner-closing__line {
  display: block;
  width: 100%;
  height: 1px;

  transform: translateY(1px);

  background: linear-gradient(
    90deg,
    rgba(255, 255, 255, 0.48) 0%,
    rgba(255, 255, 255, 0.28) 42%,
    rgba(255, 255, 255, 0) 100%
  );
}

@media (max-width: 700px) {
  .kf-cs-closing,
  .kf-partner-closing {
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .kf-cs-closing__text,
  .kf-partner-closing__text {
    white-space: normal;
  }
}

/* Form */

.kf-request-form-title {
  margin: 0 0 34px;

  color: #ffffff;
  font-family: var(--kf-font-h2) !important;
  font-size: clamp(26px, 2.2vw, 34px);
  line-height: 1.04;
  font-weight: 380;
  letter-spacing: 0.01em;

  text-rendering: geometricPrecision;
  -webkit-font-smoothing: antialiased;
  font-synthesis: none;
}

.kf-request-modern-form .request-form,
.kf-request-modern-form form {
  display: block;
  margin: 0;
}

.kf-request-modern-form .form-field {
  position: relative;
  margin: 0 0 30px;
}

/* Hide fields we still need technically, but do not want visually. */
.kf-request-modern-form .request_ticket_form_id,
.kf-request-modern-form .request_custom_fields_32602123387931,
.kf-request-page .request_ticket_form_id,
.kf-request-page .request_custom_fields_32602123387931,
.kf-request-page .is-hidden {
  display: none !important;
}

.kf-request-modern-form label,
.kf-request-modern-form .form-field label {
  display: block;
  margin: 18px 0 12px;

  color: rgba(255, 255, 255, 0.9);
  font-size: 16px;
  line-height: 1.18;
  font-weight: 560;
  letter-spacing: -0.004em;

  text-rendering: geometricPrecision;
  -webkit-font-smoothing: antialiased;
  font-synthesis: none;
}

.kf-request-modern-form .optional {
  color: rgba(255, 255, 255, 0.48);
  font-weight: 480;
  margin-left: 0.28em;
}

/* Hide Zendesk's default Description helper text */
.kf-request-modern-form #request_description_hint,
.kf-request-modern-form .request_description p,
.kf-request-modern-form .request_description .form-field-hint {
  display: none !important;
}

/* Standard form fields — dark glass restyle */

.kf-request-modern-form input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]):not([type="file"]):not([type="hidden"]),
.kf-request-modern-form textarea,
.kf-request-modern-form select,
.kf-request-modern-form .nesty-input,
.kf-request-modern-form .hc-multiselect,
.kf-request-modern-form .hc-multiselect-toggle,
.kf-request-modern-form .request_cc_emails .input-group,
.kf-request-modern-form .request_ccs .input-group,
.kf-request-modern-form .request_collaborators .input-group,
.kf-request-modern-form .request_collaborators_ .input-group {
  width: 100%;
  max-width: none;
  margin: 0;

  border-radius: 14px !important;
  border: 1px solid rgba(255, 255, 255, 0.14) !important;

  color: rgba(255, 255, 255, 0.92) !important;
  font-family: var(--kf-font-body) !important;
  font-size: 16px;
  line-height: 1.35;
  font-weight: 430;

  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.085), rgba(255, 255, 255, 0.022)),
    rgba(255, 255, 255, 0.045) !important;

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.10),
    0 10px 26px rgba(0, 0, 0, 0.18) !important;
}

.kf-request-modern-form input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]):not([type="file"]):not([type="hidden"]),
.kf-request-modern-form select,
.kf-request-modern-form .nesty-input,
.kf-request-modern-form .hc-multiselect,
.kf-request-modern-form .hc-multiselect-toggle {
  height: 52px !important;
  min-height: 52px !important;
  padding: 0 22px;
}

.kf-request-modern-form input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]):not([type="file"]):not([type="hidden"]) {
  display: block;
}

.kf-request-modern-form textarea {
  min-height: 168px !important;
  padding: 18px 22px;
  resize: vertical;
  line-height: 1.45;
}

.kf-request-modern-form .nesty-input {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  padding-right: 48px;
  overflow: hidden;
  cursor: pointer;
  text-decoration: none;
}

.kf-request-modern-form .nesty-input:hover {
  color: rgba(255, 255, 255, 0.96) !important;
  text-decoration: none;
}

.kf-request-modern-form .nesty-input::after {
  right: 22px;
  border-top-color: rgba(255, 255, 255, 0.58) !important;
}

/* Placeholder text */
.kf-request-modern-form input::placeholder,
.kf-request-modern-form textarea::placeholder {
  color: rgba(255, 255, 255, 0.42) !important;
  opacity: 1;
}

/* Focus state */
.kf-request-modern-form input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]):not([type="file"]):not([type="hidden"]):focus,
.kf-request-modern-form textarea:focus,
.kf-request-modern-form select:focus,
.kf-request-modern-form .nesty-input:focus,
.kf-request-modern-form .hc-multiselect:focus,
.kf-request-modern-form .hc-multiselect:focus-within,
.kf-request-modern-form .hc-multiselect-toggle:focus,
.kf-request-modern-form .hc-multiselect-toggle:focus-within,
.kf-request-modern-form [data-hc-pills-container]:focus,
.kf-request-modern-form [data-hc-pills-container]:focus-within {
  outline: none;
  border-color: rgba(165, 167, 255, 0.65) !important;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.11), rgba(255, 255, 255, 0.03)),
    rgba(255, 255, 255, 0.065) !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.14),
    0 0 0 3px rgba(95, 97, 255, 0.28) !important;
}

/* =========================
   Custom select dropdown panel (Nesty)
   ========================= */
.nesty-panel.nesty-panel {
  padding: 8px !important;
  height: auto !important;
  max-height: 300px !important;

  border-radius: 18px !important;
  border: 1px solid rgba(255, 255, 255, 0.14) !important;

  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.10), rgba(255, 255, 255, 0.03)),
    rgba(26, 24, 37, 0.96) !important;

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.10),
    0 22px 50px rgba(0, 0, 0, 0.38) !important;

  backdrop-filter: blur(24px) saturate(160%);
  -webkit-backdrop-filter: blur(24px) saturate(160%);

  overflow: hidden !important;
}

.nesty-panel.nesty-panel ul[role="listbox"] {
  max-height: 260px !important;
  overflow-y: auto !important;
  overflow-x: hidden !important;

  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;

  background: transparent !important;
}

.nesty-panel ul[role="listbox"]::-webkit-scrollbar {
  width: 6px;
}

.nesty-panel ul[role="listbox"]::-webkit-scrollbar-thumb {
  border-radius: 999px;
  background: rgba(165, 167, 255, 0.32);
}

.nesty-panel li[role="option"] {
  display: flex !important;
  align-items: center;

  min-height: 44px;
  padding: 0 14px !important;
  margin: 2px 0 !important;

  border-radius: 12px !important;
  border: 0 !important;

  color: rgba(255, 255, 255, 0.82) !important;
  font-family: var(--kf-font-body) !important;
  font-size: 15.5px;
  font-weight: 460;
  letter-spacing: -0.004em;

  background: transparent !important;
  cursor: pointer;

  transition:
    color 160ms ease,
    background 160ms ease,
    transform 160ms ease;
}

.nesty-panel li[role="option"]:hover {
  color: #ffffff !important;
  background: rgba(95, 97, 255, 0.22) !important;
  transform: translateX(2px);
}

.nesty-panel li[role="option"].nesty-selected,
.nesty-panel li[role="option"][aria-selected="true"] {
  color: #ffffff !important;
  font-weight: 640;
  background: rgba(95, 97, 255, 0.34) !important;
}

.nesty-panel li[role="option"].nesty-selected::after,
.nesty-panel li[role="option"][aria-selected="true"]::after {
  content: "✓";
  margin-left: auto;
  color: #a5a7ff;
  font-size: 13px;
  font-weight: 700;
}

/* CC / collaborators field — recipient tray */

.kf-request-modern-form .request_cc_emails,
.kf-request-modern-form .request_ccs,
.kf-request-modern-form .request_collaborators,
.kf-request-modern-form .request_collaborators_ {
  width: 100%;
}

/* Zendesk can render the CC shell as an input-group, multiselect, or <ul data-hc-pills-container>. Style all shell possibilities consistently. */
.kf-request-modern-form .request_cc_emails .input-group,
.kf-request-modern-form .request_ccs .input-group,
.kf-request-modern-form .request_collaborators .input-group,
.kf-request-modern-form .request_collaborators_ .input-group,
.kf-request-modern-form .request_cc_emails .hc-multiselect,
.kf-request-modern-form .request_ccs .hc-multiselect,
.kf-request-modern-form .request_collaborators .hc-multiselect,
.kf-request-modern-form .request_collaborators_ .hc-multiselect,
.kf-request-modern-form .request_cc_emails .hc-multiselect-toggle,
.kf-request-modern-form .request_ccs .hc-multiselect-toggle,
.kf-request-modern-form .request_collaborators .hc-multiselect-toggle,
.kf-request-modern-form .request_collaborators_ .hc-multiselect-toggle,
.kf-request-modern-form .ccs,
.kf-request-modern-form [data-hc-pills-container] {
  width: 100% !important;
  max-width: none !important;
  min-height: 52px !important;
  margin: 0 !important;
  padding: 10px 14px 6px !important;

  display: flex !important;
  align-items: center !important;
  align-content: center !important;
  flex-wrap: wrap !important;
  gap: 8px !important;

  box-sizing: border-box !important;
  overflow: visible !important;
  list-style: none !important;

  border-radius: 14px !important;
  border: 1px solid rgba(255, 255, 255, 0.14) !important;
  color: rgba(255, 255, 255, 0.92) !important;
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.085), rgba(255, 255, 255, 0.022)),
    rgba(255, 255, 255, 0.045) !important;
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.10),
    0 10px 26px rgba(0, 0, 0, 0.18) !important;
}

/* Reset Zendesk's nested CC wrappers so there is no overlapping inner white box. */
.kf-request-modern-form .request_cc_emails .input-group > *,
.kf-request-modern-form .request_ccs .input-group > *,
.kf-request-modern-form .request_collaborators .input-group > *,
.kf-request-modern-form .request_collaborators_ .input-group > *,
.kf-request-modern-form [data-hc-pills-container] *:not([data-hc-pill]):not([data-hc-pill] *) {
  border: 0 !important;
  border-radius: 0 !important;
  outline: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  position: static !important;
  inset: auto !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  transform: none !important;
}

.kf-request-modern-form [data-hc-pills-container] > li {
  list-style: none !important;
  margin: 0 !important;
}

/* The <li> that holds the live input should read as the remaining open space inside the tray. */
.kf-request-modern-form [data-hc-pills-container] li:has(input) {
  all: unset !important;
  display: flex !important;
  align-items: center !important;
  flex: 1 1 auto !important;
  min-width: 120px !important;
}

/* CC typed text: fully transparent, no visible box of its own. */
#request_collaborators_,
.kf-request-modern-form .request_cc_emails .input-group input,
.kf-request-modern-form .request_ccs .input-group input,
.kf-request-modern-form .request_collaborators .input-group input,
.kf-request-modern-form .request_collaborators_ .input-group input,
.kf-request-modern-form .ccs input,
.kf-request-modern-form [data-hc-pills-container] input {
  all: unset !important;
  display: block !important;
  flex: 1 1 auto !important;
  width: auto !important;
  min-width: 120px !important;
  max-width: 100% !important;
  height: 30px !important;
  min-height: 30px !important;
  max-height: 30px !important;
  padding: 0 4px !important;
  color: #ffffff !important;
  font-family: inherit !important;
  font-size: 16px !important;
  line-height: 30px !important;
  font-weight: 430 !important;
  cursor: text !important;
  caret-color: #ffffff !important;
  -webkit-appearance: none !important;
  appearance: none !important;
}

#request_collaborators_::placeholder,
.kf-request-modern-form .request_cc_emails input::placeholder,
.kf-request-modern-form .request_ccs input::placeholder,
.kf-request-modern-form .request_collaborators input::placeholder,
.kf-request-modern-form .request_collaborators_ input::placeholder,
.kf-request-modern-form .ccs input::placeholder,
.kf-request-modern-form [data-hc-pills-container] input::placeholder {
  color: rgba(255, 255, 255, 0.42) !important;
  opacity: 1;
}

/* Added-recipient pills: support both the real Zendesk attribute and older .pill markup. */
.kf-request-modern-form [data-hc-pills-container] li[data-hc-pill],
.kf-request-modern-form [data-hc-pills-container] li:not(:has(input)),
.kf-request-modern-form .request_cc_emails .pill,
.kf-request-modern-form .request_ccs .pill,
.kf-request-modern-form .request_collaborators .pill,
.kf-request-modern-form .request_collaborators_ .pill,
.kf-request-modern-form .ccs .pill,
.kf-request-modern-form [data-hc-pills-container] .pill {
  all: unset !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  height: 30px !important;
  min-height: 30px !important;
  max-height: 30px !important;
  padding: 0 6px 0 12px !important;
  margin: 0 4px 4px 0 !important;
  border-radius: 999px !important;
  border: 1px solid rgba(165, 167, 255, 0.45) !important;
  color: #ffffff !important;
  background: rgba(95, 97, 255, 0.32) !important;
  font-family: var(--kf-font-body) !important;
  font-size: 13.5px !important;
  line-height: 1 !important;
  font-weight: 600 !important;
  cursor: default !important;
}

.kf-request-modern-form [data-hc-pills-container] li[data-hc-pill] *,
.kf-request-modern-form [data-hc-pills-container] li[data-hc-pill] *::before,
.kf-request-modern-form [data-hc-pills-container] li[data-hc-pill] *::after,
.kf-request-modern-form [data-hc-pills-container] li:not(:has(input)) *,
.kf-request-modern-form [data-hc-pills-container] li:not(:has(input)) *::before,
.kf-request-modern-form [data-hc-pills-container] li:not(:has(input)) *::after {
  color: #ffffff !important;
  fill: #ffffff !important;
  stroke: #ffffff !important;
  opacity: 1 !important;
  font-weight: 700 !important;
  background: transparent !important;
}

.kf-request-modern-form [data-hc-pills-container] li[data-hc-pill] button,
.kf-request-modern-form [data-hc-pills-container] li[data-hc-pill] [role="button"],
.kf-request-modern-form [data-hc-pills-container] li:not(:has(input)) button,
.kf-request-modern-form [data-hc-pills-container] li:not(:has(input)) [role="button"] {
  width: 18px !important;
  height: 18px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  border-radius: 999px !important;
  background: rgba(255, 255, 255, 0.14) !important;
}

/* Neutralize Chrome/Edge/Safari's forced autofill background inside the CC tray. */
.kf-request-modern-form [data-hc-pills-container] input:-webkit-autofill,
.kf-request-modern-form [data-hc-pills-container] input:-webkit-autofill:hover,
.kf-request-modern-form [data-hc-pills-container] input:-webkit-autofill:focus,
.kf-request-modern-form [data-hc-pills-container] input:-webkit-autofill:active {
  -webkit-text-fill-color: #ffffff !important;
  -webkit-box-shadow: 0 0 0 1000px rgba(255, 255, 255, 0.045) inset !important;
  box-shadow: 0 0 0 1000px rgba(255, 255, 255, 0.045) inset !important;
  caret-color: #ffffff !important;
  transition: background-color 9999s ease-in-out 0s;
}

/* Checkboxes/radios */
.kf-request-modern-form input[type="checkbox"],
.kf-request-modern-form input[type="radio"] {
  width: 18px;
  height: 18px;
  min-height: 0;
  margin: 0 10px 0 0;
  padding: 0;

  display: inline-block;

  accent-color: #5f61ff;
}

/* Required note / hints / errors */
.kf-request-modern-form form > p:first-child,
.kf-request-modern-form .request-form > p:first-child {
  margin: 0 0 28px;

  color: rgba(255, 255, 255, 0.86);
  font-size: 15px;
  line-height: 1.4;
  font-weight: 620;
}

.kf-request-modern-form .form-field p,
.kf-request-modern-form .form-field .notification,
.kf-request-modern-form .form-field .meta {
  margin: 9px 0 0;

  color: rgba(255, 255, 255, 0.68);
  font-size: 14px;
  line-height: 1.35;
  font-weight: 430;
}

/*
 * Only color Zendesk's actual inline
 * validation message—not every element
 * that happens to use the generic .error class.
 */

.kf-request-modern-form
.notification-error {
  color: #ffb3a7;
}

/* Suggested articles */
.kf-request-modern-form .suggestion-list {
  display: none !important;
  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* Only show the panel when Zendesk has made it actively visible */
.kf-request-modern-form .suggestion-list:not([style*="display: none"]) {
  display: block !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  margin-top: 14px !important;
  padding: 16px 18px !important;
  overflow: visible !important;

  border-radius: 14px;
  border: 1px solid rgba(165, 167, 255, 0.24) !important;
  background: rgba(255, 255, 255, 0.10) !important;
}

/* But if Zendesk leaves only empty structure behind, keep it hidden */
.kf-request-modern-form .suggestion-list:empty,
.kf-request-modern-form .suggestion-list:has(ul:empty),
.kf-request-modern-form .suggestion-list:not(:has(a[href])) {
  display: none !important;
  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  overflow: hidden !important;
  background: transparent !important;
  box-shadow: none !important;
}

.kf-request-modern-form .suggestion-list label {
  color: #ffffff;
}

.kf-request-modern-form .suggestion-list a {
  color: #c5c7ff;
  font-weight: 560;
  text-decoration: none;
}

.kf-request-modern-form .suggestion-list a:hover {
  color: #ffffff;
}

/* Extra guard for the exact ghost-box state: Zendesk sometimes leaves
   an empty UL/LI behind after it removes the article links. */
.kf-request-modern-form .suggestion-list:not(:has(a[href])),
.kf-request-modern-form .suggestion-list:has(ul:empty):not(:has(a[href])) {
  display: none !important;
  height: 0 !important;
  min-height: 0 !important;
  max-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
}

/* Upload dropzone */
.kf-request-modern-form #upload-dropzone,
.kf-request-modern-form .upload-dropzone {
  min-height: 96px;
  padding: 22px;

  border-radius: 14px;
  border: 1px dashed rgba(165, 167, 255, 0.48);

  color: rgba(255, 255, 255, 0.66);
  background: rgba(255, 255, 255, 0.10);
}

.kf-request-modern-form .upload-dropzone span,
.kf-request-modern-form .upload-dropzone a {
  color: #c5c7ff;
  font-weight: 560;
}

.kf-request-modern-form .tooltip-hover {
  position: relative;
}

.kf-request-modern-form .tooltip {
  margin-top: 12px;
  color: rgba(255, 255, 255, 0.62);
  font-size: 13.5px;
  line-height: 1.35;
}

/* Plain textarea fallback if Zendesk still renders editor markup */
.kf-request-modern-form .ck-toolbar,
.kf-request-modern-form .ck-editor__top,
.kf-request-modern-form [class*="toolbar"] {
  display: none !important;
}

.kf-request-modern-form .hc-wysiwyg,
.kf-request-modern-form .comment-container,
.kf-request-modern-form .ck-editor,
.kf-request-modern-form .ck-editor__main,
.kf-request-modern-form .ck-content,
.kf-request-modern-form .ck-editor__editable {
  width: 100% !important;
  min-height: 170px !important;

  border-radius: 11px !important;
  border: 1px solid rgba(24, 24, 28, 0.12) !important;

  color: #202230 !important;
  background: #ffffff !important;

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.92),
    0 16px 34px rgba(0, 0, 0, 0.10) !important;
}

.kf-request-modern-form .ck-editor__editable,
.kf-request-modern-form .ck-content {
  padding: 22px 28px !important;
}

/* Submit */
.kf-request-modern-form input[type="submit"],
.kf-request-modern-form button[type="submit"],
.kf-request-button {
  min-height: 52px;
  padding: 0 24px;

  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;

  border: 0;
  border-radius: 999px;

  color: #ffffff !important;
  font-size: 16px;
  line-height: 1;
  font-weight: 620;
  text-decoration: none;

  background: #7274ff;

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.18),
    0 14px 30px rgba(95, 97, 255, 0.22);

  transition:
    transform 180ms ease,
    background 180ms ease,
    box-shadow 180ms ease,
    filter 180ms ease;
  
  cursor: pointer;
}

.kf-request-modern-form input[type="submit"],
.kf-request-modern-form button[type="submit"] {
  width: 100%;
}

.kf-request-modern-form input[type="submit"]:hover,
.kf-request-modern-form button[type="submit"]:hover,
.kf-request-button:hover {
  transform: translateY(-1px);
  color: #ffffff !important;
  background: #5f61ff;
  filter: brightness(1.02);
  text-decoration: none;

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.22),
    0 16px 34px rgba(95, 97, 255, 0.30);
}

/* Signed-out */

.kf-request-signed-out-card {
  width: min(780px, 100%);
  margin: 0 auto;
  padding: 44px 46px;
  text-align: center;

  border-radius: 12px;
  border: 1px solid rgba(255, 255, 255, 0.18);

  background: rgba(255, 255, 255, 0.075);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.14),
    0 22px 70px rgba(0, 0, 0, 0.18);
}

.kf-request-signed-out-eyebrow {
  margin: 0 0 13px;

  color: #a5a7ff;
  font-size: 13px;
  line-height: 1;
  font-weight: 660;
  letter-spacing: 0.13em;
  text-transform: uppercase;
}

.kf-request-signed-out-card h2 {
  margin: 0;
  color: #ffffff;
  font-family: var(--kf-font-h2) !important;
  font-size: clamp(32px, 3.4vw, 46px);
  line-height: 1.02;
  font-weight: 300;
  letter-spacing: -0.018em;
}

.kf-request-signed-out-card p {
  max-width: 520px;
  margin: 16px auto 0;
  color: rgba(255, 255, 255, 0.74);
  font-size: 17px;
  line-height: 1.45;
}

.kf-request-signed-out-card .kf-request-button {
  margin-top: 24px;
}

/* Responsive */

@media (max-width: 1100px) {
  .kf-request-shell {
    grid-template-columns: 1fr;
    gap: 34px;
  }

  .kf-request-side-card {
    position: relative;
    top: auto;
    min-height: 0;
    padding: 0 0 32px;
    border-right: 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.16);
  }

  .kf-request-side-intro {
    max-width: 760px;
  }
}

@media (max-width: 900px) {
  .kf-request-page {
    padding: 12px;
  }

  .kf-request-main {
  margin-top: 25px;
  padding: 42px 26px 70px;
  border-radius: 34px;
}

  .kf-request-signed-out-card {
    padding: 30px 26px;
    border-radius: 14px;
  }
}

@media (max-width: 560px) {
  .kf-request-main {
  margin-top: 25px;
  padding: 34px 20px 58px;
  border-radius: 26px;
}

  .kf-request-eyebrow {
    gap: 10px;
    font-size: 12px;
    line-height: 1.25;
    margin-bottom: 16px;
    font-weight: 620;
    letter-spacing: 0.105em;
  }

  .kf-request-title {
    font-size: clamp(40px, 13vw, 56px);
    line-height: 1;
    letter-spacing: -0.026em;
  }

  .kf-request-side-intro {
    margin-bottom: 30px;
    padding-bottom: 28px;
  }

  .kf-request-modern-form .form-field {
    margin-bottom: 22px;
  }

  .kf-request-modern-form input:not([type="submit"]):not([type="checkbox"]):not([type="radio"]):not([type="file"]):not([type="hidden"]),
.kf-request-modern-form textarea,
.kf-request-modern-form select,
.kf-request-modern-form .nesty-input,
.kf-request-modern-form .hc-multiselect,
.kf-request-modern-form .hc-multiselect-toggle {
  min-height: 46px;
  padding-left: 18px;
  padding-right: 18px;
  font-size: 16px;
}

  .kf-request-modern-form textarea {
    min-height: 150px;
    padding-top: 18px;
    padding-bottom: 18px;
  }

  .kf-request-side-card h4 {
    font-size: 24px;
  }

  .kf-request-side-card p,
  .form-content-default {
    font-size: 16px;
  }
}


/* =========================================================
   Customer Success public landing page
   ========================================================= */

.kf-cs-landing-page .form-content-cs {
  display: block;
}

.kf-cs-landing-page .kf-request-form-card {
  min-width: 0;
}


/* =========================
   Sign-in content area
   ========================= */

.kf-cs-landing-form-placeholder {
  position: relative;

  min-height: 560px;
  padding: 18px 0 0;

  display: flex;
  align-items: flex-start;
}

.kf-cs-landing-access {
  width: 100%;
  padding: 42px 14px 28px;

  display: flex;
  flex-direction: column;
  align-items: flex-start;

  color: #ffffff;
}


/* =========================
   Main sign-in content
   ========================= */

.kf-cs-landing-access__eyebrow {
  margin: 0 0 12px;

  color: #a5a7ff;

  font-family: var(--kf-font-body) !important;
  font-size: 12.5px;
  line-height: 1;
  font-weight: 700;
  letter-spacing: 0.11em;
  text-transform: uppercase;

  text-rendering: geometricPrecision;
  -webkit-font-smoothing: antialiased;
}

.kf-cs-landing-access__title {
  max-width: 520px;
  margin: 0;

  color: #ffffff;

  font-family: var(--kf-font-h2) !important;
  font-size: clamp(31px, 3vw, 43px);
  line-height: 1.03;
  font-weight: 300;
  letter-spacing: -0.008em;

  text-rendering: geometricPrecision;
  -webkit-font-smoothing: antialiased;
}

.kf-cs-landing-access__text {
  max-width: 570px;
  margin: 19px 0 0;

  color: rgba(255, 255, 255, 0.72);

  font-size: 17px;
  line-height: 1.48;
  font-weight: 430;
}


/* =========================
   Sign-in button
   ========================= */

.kf-cs-landing-access__button {
  width: fit-content;
  min-width: 190px;
  margin-top: 28px;

  text-decoration: none;
}

.kf-cs-landing-access__button::after {
  content: "→";

  margin-left: 9px;

  font-size: 17px;
  line-height: 1;

  transform: translateY(-1px);

  transition: transform 180ms ease;
}

.kf-cs-landing-access__button:hover::after,
.kf-cs-landing-access__button:focus::after {
  transform: translate(3px, -1px);
}


/* =========================
   Alternative access note
   ========================= */

.kf-cs-landing-access__alternative-card {
  width: 100%;
  max-width: 590px;
  margin-top: 42px;
  padding: 22px 24px;

  border-radius: 22px;
  border: 1px solid rgba(255, 255, 255, 0.12);

  background:
    linear-gradient(
      135deg,
      rgba(255, 255, 255, 0.07),
      rgba(255, 255, 255, 0.025)
    ),
    rgba(255, 255, 255, 0.035);

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.10),
    0 12px 30px rgba(0, 0, 0, 0.08);
}

.kf-cs-landing-access__alternative-label {
  margin: 0 0 8px;

  color: #a5a7ff;

  font-size: 12px;
  line-height: 1;
  font-weight: 700;
  letter-spacing: 0.09em;
  text-transform: uppercase;
}

.kf-cs-landing-access__alternative {
  margin: 0;

  color: rgba(255, 255, 255, 0.68);

  font-size: 14.5px;
  line-height: 1.48;
  font-weight: 430;
}

.kf-cs-landing-access__alternative a {
  color: #a5a7ff;
  font-weight: 620;

  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

.kf-cs-landing-access__alternative a:hover,
.kf-cs-landing-access__alternative a:focus {
  color: #ffffff;
}


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

@media (max-width: 1100px) {
  .kf-cs-landing-form-placeholder {
    min-height: 0;
  }

  .kf-cs-landing-access {
    padding: 30px 8px 18px;
  }
}

@media (max-width: 640px) {
  .kf-cs-landing-form-placeholder {
    padding-top: 0;
  }

  .kf-cs-landing-access {
    padding: 18px 0 8px;
  }

  .kf-cs-landing-access__title {
    font-size: 31px;
  }

  .kf-cs-landing-access__text {
    font-size: 16px;
  }

  .kf-cs-landing-access__button {
    width: 100%;
  }

  .kf-cs-landing-access__alternative-card {
    margin-top: 32px;
    padding: 20px;

    border-radius: 20px;
  }
}

/* =========================================================
   Partner Support public landing page
   ========================================================= */

.kf-partner-landing-page .form-content-partner {
  display: block;
}

.kf-partner-landing-page .kf-request-form-card {
  min-width: 0;
}

/*
 * The landing page only shows the default Partner guidance.
 * Dynamic request-type messages belong to the real form page.
 */

.kf-partner-landing-page
.partner-message:not(.partner-message-default) {
  display: none !important;
}


/* =========================================================
   SEARCH RESULTS PAGE
   ========================================================= */

.kf-search-results-page {
  position: relative;
  min-height: 100vh;
  padding: 20px 20px 0;
  color: #18181c;
  background:
    linear-gradient(
      180deg,
      var(--kf-mist-white) 0%,
      #ffffff 20%,
      #eef0ff 52%,
      #ffffff 88%,
      var(--kf-mist-white) 100%
    );
}

/* Hero */

/* Standalone search area */

.kf-search-results-search {
  padding: 36px 40px 40px;
  border-bottom: 1px solid rgba(24, 24, 28, 0.1);
}

.kf-search-results-search__inner {
  width: min(820px, 100%);
  margin: 0 auto;
}


/* Miniature dynamic hero card */

.kf-search-results-hero {
  position: relative;
  overflow: hidden;
  isolation: isolate;

  width: 100%;
  min-height: 0;
  margin: 0 0 18px;
  padding: 30px 34px;

  border: 1px solid rgba(255, 255, 255, 0.88);
  border-radius: 24px;

  color: #1a1924;

background:
  linear-gradient(
    90deg,
    rgba(95, 97, 255, 0.24) 0%,
    rgba(95, 97, 255, 0.06) 50%,
    rgba(95, 97, 255, 0.24) 100%
  );

  box-shadow:
  inset 0 1px 0 rgba(255, 255, 255, 1),
  inset 0 -1px 0 rgba(213, 217, 229, 0.26),
  0 18px 42px rgba(38, 40, 75, 0.11);
  
  backdrop-filter:
  blur(22px)
  saturate(115%);

-webkit-backdrop-filter:
  blur(22px)
  saturate(115%);
}

.kf-search-results-hero::before {
  content: "";

  position: absolute;
  inset: -12%;
  z-index: -1;

  pointer-events: none;

  background:
    radial-gradient(
      ellipse at 6% 4%,
      rgba(255, 255, 255, 0.82) 0%,
      rgba(255, 255, 255, 0.38) 30%,
      transparent 58%
    ),
    radial-gradient(
      ellipse at 94% 96%,
      rgba(81, 83, 225, 0.18) 0%,
      rgba(81, 83, 225, 0.08) 34%,
      transparent 58%
    );

  filter: blur(16px);
}

.kf-search-results-hero__inner {
  width: 100%;
  margin: 0;
}

/* Dynamic Search Results hero message */

.kf-search-results-hero__message {
  grid-area: message;

  min-width: 0;

  display: grid;

  grid-template-columns:
    minmax(0, 1fr);

  align-items: center;
}


.kf-search-results-hero__text {
  min-width: 0;
}


/* =========================================================
   DYNAMIC HERO ICONS
   ========================================================= */

/* Shared icon positioning */

.kf-search-results-hero__visual {
  position: static;

  width: 104px;
  height: 104px;

  display: flex;
  align-items: center;
  justify-content: center;
  justify-self: center;

  border: 0;
  border-radius: 0;
  background: none;
  box-shadow: none;

  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

.kf-search-results-hero__visual[hidden] {
  display: none;
}

.kf-search-results-hero__visual-image {
  display: block;
  object-fit: contain;
}

.kf-search-results-hero--dynamic
.kf-search-results-eyebrow {
  margin-left: 0;
}


/* Dynamic message layout */

.kf-search-results-hero--dynamic
.kf-search-results-hero__message {
  position: relative;

  display: grid;

  grid-template-columns:
    minmax(0, 1fr)
    128px;

  column-gap: 16px;
  align-items: center;

  padding-left: 0;
}

.kf-search-results-hero--dynamic
.kf-search-results-hero__text {
  grid-column: 1;
  grid-row: 1;
}

.kf-search-results-hero--dynamic
.kf-search-results-hero__visual {
  grid-column: 2;
  grid-row: 1;
}

.kf-search-results-hero--no-results
.kf-search-results-hero__message {
  grid-template-columns: minmax(0, 1fr);
  padding-left: 0;
}


/* GitHub icon: light glass square */

.kf-search-results-hero--github
.kf-search-results-hero__visual {
  border: 1px solid rgba(255, 255, 255, 0.92);
  border-radius: 28px;

  background:
    linear-gradient(
      145deg,
      rgba(255, 255, 255, 0.82) 0%,
      rgba(246, 247, 252, 0.62) 52%,
      rgba(232, 237, 244, 0.48) 100%
    );

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 1),
    inset 0 -1px 0 rgba(205, 211, 224, 0.2),
    0 14px 30px rgba(38, 40, 75, 0.12);

  backdrop-filter:
    blur(18px)
    saturate(115%);

  -webkit-backdrop-filter:
    blur(18px)
    saturate(115%);
}


/* Ticket icon: use the new SVG exactly as uploaded */

.kf-search-results-hero--ticket
.kf-search-results-hero__visual {
  border: 0;
  border-radius: 0;
  background: none;
  box-shadow: none;

  backdrop-filter: none;
  -webkit-backdrop-filter: none;
}

.kf-search-results-hero--github
.kf-search-results-hero__visual-image {
  width: 74px;
  height: 74px;

  filter: none;
  -webkit-filter: none;

  opacity: 1;
  object-fit: contain;
}

.kf-search-results-hero--ticket
.kf-search-results-hero__visual-image {
  width: 96px;
  height: 96px;

  filter: none;
  -webkit-filter: none;

  opacity: 1;
  object-fit: contain;
}


/* =========================================================
   TABLET ICON SIZING
   ========================================================= */

@media (max-width: 991px) {
  .kf-search-results-hero--dynamic
  .kf-search-results-hero__message {
    grid-template-columns:
      minmax(0, 1fr)
      112px;

    column-gap: 14px;
  }

  .kf-search-results-hero__visual {
    width: 92px;
    height: 92px;
  }

  .kf-search-results-hero--github
  .kf-search-results-hero__visual {
    border-radius: 25px;
  }

  .kf-search-results-hero--github
  .kf-search-results-hero__visual-image {
    width: 66px;
    height: 66px;
  }

  .kf-search-results-hero--ticket
  .kf-search-results-hero__visual-image {
    width: 86px;
    height: 86px;
  }
}


/* =========================================================
   MOBILE ICON SIZING
   ========================================================= */

@media (max-width: 680px) {
  .kf-search-results-hero--dynamic
  .kf-search-results-hero__message {
    grid-template-columns:
      minmax(0, 1fr)
      86px;

    column-gap: 10px;
    row-gap: 0;
  }

  .kf-search-results-hero__visual {
    width: 72px;
    height: 72px;
  }

  .kf-search-results-hero--github
  .kf-search-results-hero__visual {
    border-radius: 21px;
  }

  .kf-search-results-hero--github
  .kf-search-results-hero__visual-image {
    width: 52px;
    height: 52px;
  }

  .kf-search-results-hero--ticket
  .kf-search-results-hero__visual-image {
    width: 68px;
    height: 68px;
  }
}

.kf-search-results-eyebrow {
  margin: 0 0 10px;
  color: #5f61ff !important;
  font-size: 12.5px;
  line-height: 1;
  font-weight: 560;
  letter-spacing: 0.125em;
  text-transform: uppercase;
}

.kf-search-results-eyebrow::before {
  content: "/ / / /";
  margin-right: 12px;
  color: #5f61ff;
  letter-spacing: 0;
}

.kf-search-results-hero__copy {
  min-width: 0;
}

.kf-search-results-title {
  max-width: 720px;
  margin: 0;

  color: #1a1924;

  font-family: var(--kf-font-h1) !important;
  font-size: clamp(28px, 3vw, 38px);
  line-height: 1.02;
  letter-spacing: -0.012em;
  font-weight: 200;

  background: none;

  -webkit-background-clip: initial;
  background-clip: initial;

  -webkit-text-fill-color: #1a1924;
}

.kf-search-results-lede {
  max-width: 720px;
  margin: 10px 0 0;

  color: rgba(26, 25, 36, 0.68);

  font-size: 15.5px;
  line-height: 1.42;
  font-weight: 430;
}

/* Dynamic Search Results hero CTA */

.kf-search-results-hero__cta {
  min-height: 40px;
margin-top: 16px;
padding: 0 17px;

  display: inline-flex;

  align-items: center;
  justify-content: center;

  gap: 8px;

  border-radius: 999px;

  border: 1px solid rgba(95, 97, 255, 0.24);


  color: #ffffff;

  font-size: 14px;
  line-height: 1;

  font-weight: 620;

  text-decoration: none;

  background: #5f61ff;


 box-shadow:
  inset 0 1px 0 rgba(255, 255, 255, 0.2),
  0 10px 24px rgba(95, 97, 255, 0.22);

  backdrop-filter:
    blur(12px)
    saturate(135%);

  -webkit-backdrop-filter:
    blur(12px)
    saturate(135%);

  transition:
    transform 180ms ease,
    color 180ms ease,
    background 180ms ease,
    border-color 180ms ease,
    box-shadow 180ms ease;
}


.kf-search-results-hero__cta[hidden] {
  display: none;
}


.kf-search-results-hero__cta::after {
  content: "→";

  transition:
    transform 180ms ease;
}


.kf-search-results-hero__cta:hover,
.kf-search-results-hero__cta:focus {
  transform: translateY(-1px);

  color: #ffffff;

  border-color: rgba(77, 79, 232, 0.3);

  background: #4d4fe8;

  text-decoration: none;

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.2),
    0 14px 30px rgba(77, 79, 232, 0.3);
}


.kf-search-results-hero__cta:hover::after,
.kf-search-results-hero__cta:focus::after {
  transform:
    translateX(3px);
}

.kf-search-header__search {
  width: 100%;
}

.kf-search-header__search form,
.kf-search-header__search .search {
  position: relative !important;
  width: 100% !important;
  max-width: none !important;
 height: 60px !important;
min-height: 60px !important;
  margin: 0 !important;
  display: flex !important;
  align-items: center !important;
  border-radius: 999px !important;
  border: 1px solid rgba(255, 255, 255, 0.82) !important;
  background: #ffffff !important;
  box-shadow:
    0 24px 58px rgba(0, 0, 0, 0.22),
    inset 0 1px 0 rgba(255, 255, 255, 0.96) !important;
  overflow: hidden !important;
}

.kf-search-header__search form::before,
.kf-search-header__search .search::before {
  content: "⌕";
  position: absolute;
  left: 25px;
  top: 50%;
  z-index: 2;
  transform: translateY(-50%);
  color: rgba(24, 24, 28, 0.40);
  font-size: 22px;
  line-height: 1;
  pointer-events: none;
}

.kf-search-header__search input[type="search"],
.kf-search-header__search input[type="text"],
.kf-search-header__search .search-field {
  width: 100% !important;
  height: 60px !important;
min-height: 60px !important;
  margin: 0 !important;
  padding: 0 24px 0 58px !important;
  border: 0 !important;
  border-radius: 999px !important;
  outline: 0 !important;
  color: #18181c !important;
  font-size: 18px !important;
  line-height: 1 !important;
  font-weight: 450 !important;
  background: transparent !important;
  box-shadow: none !important;
}

.kf-search-header__search input::placeholder {
  color: rgba(24, 24, 28, 0.46) !important;
}

.kf-search-header__search input[type="submit"],
.kf-search-header__search button[type="submit"] {
  display: none !important;
}

/* Main content */

.kf-search-results-main {
  width: min(1240px, calc(100vw - 80px));
  margin: 0 auto;
  padding: 64px 0 96px;
}

.kf-search-results-summary {
  margin: 0 0 36px;
  padding: 0 0 28px;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 28px;
  border-bottom: 1px solid rgba(24, 24, 28, 0.11);
}

.kf-search-results-summary__eyebrow,
.kf-search-filters__eyebrow,
.kf-no-results__eyebrow,
.kf-no-results__cta-eyebrow {
  margin: 0 0 10px;
  color: #5f61ff !important;
  font-size: 12.5px;
  line-height: 1;
  font-weight: 650;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.kf-search-results-summary__title {
  margin: 0;
  color: #18181c;
  font-family: var(--kf-font-h2) !important;
  font-size: clamp(30px, 3.2vw, 44px);
  line-height: 1.04;
  font-weight: 300;
  letter-spacing: -0.008em;
}

.kf-search-results-summary__scope {
  margin: 11px 0 0;
  color: rgba(24, 24, 28, 0.54);
  font-size: 15.5px;
  line-height: 1.4;
  font-weight: 440;
}

.kf-search-results-layout {
  display: grid;
  grid-template-columns: 270px minmax(0, 1fr);
  gap: 52px;
  align-items: start;
}

.kf-search-results-layout--empty {
  grid-template-columns: minmax(0, 1fr);
}

/* Filters */

.kf-search-filters {
  position: relative;
  min-width: 0;
}

.kf-search-filters__panel {
  position: sticky;
  top: 28px;
}

.kf-search-filters__intro {
  margin-bottom: 28px;
}

.kf-search-filters__intro h3,
.kf-search-filters__mobile-header h3 {
  margin: 0;
  color: #18181c;
  font-family: var(--kf-font-h3) !important;
  font-size: 25px;
  line-height: 1;
  font-weight: 520;
}

.kf-search-filters__intro > p:last-child {
  margin: 10px 0 0;
  color: rgba(24, 24, 28, 0.54);
  font-size: 14.5px;
  line-height: 1.38;
}

.kf-search-filter-group {
  padding: 24px 0;
  border-top: 1px solid rgba(24, 24, 28, 0.10);
}

.kf-search-filter-group:first-of-type {
  padding-top: 0;
  border-top: 0;
}

.kf-search-filter-group__heading {
  margin-bottom: 13px;
}

.kf-search-filter-group__heading h4 {
  margin: 0;
  color: #18181c;
  font-size: 15.5px;
  line-height: 1.15;
  font-weight: 650;
}

.kf-search-filter-group__heading p {
  margin: 5px 0 0;
  color: rgba(24, 24, 28, 0.48);
  font-size: 13.5px;
  line-height: 1.3;
}

.kf-search-select-wrap {
  position: relative;
}

.kf-search-select-wrap::after {
  content: "⌄";
  position: absolute;
  right: 15px;
  top: 50%;
  color: rgba(24, 24, 28, 0.56);
  font-size: 17px;
  line-height: 1;
  transform: translateY(-57%);
  pointer-events: none;
}

.kf-search-filters__select {
  appearance: none;
  width: 100%;
  min-height: 48px;
  padding: 0 42px 0 15px;
  border-radius: 15px;
  border: 1px solid rgba(24, 24, 28, 0.11);
  color: rgba(24, 24, 28, 0.78);
  font-size: 14.5px;
  line-height: 1;
  font-weight: 520;
  background: rgba(255, 255, 255, 0.66);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.86),
    0 7px 18px rgba(38, 39, 78, 0.035);
  cursor: pointer;
  transition: border-color 180ms ease, box-shadow 180ms ease, background 180ms ease;
}

.kf-search-filters__select:hover,
.kf-search-filters__select:focus {
  border-color: rgba(95, 97, 255, 0.38);
  background: rgba(255, 255, 255, 0.86);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.94),
    0 0 0 4px rgba(95, 97, 255, 0.075);
  outline: 0;
}

.kf-search-subfilters,
.kf-search-active-tags {
  list-style: none;
  margin: 0;
  padding: 0;
}

.kf-search-subfilters li + li {
  margin-top: 4px;
}

.kf-search-subfilters a {
  min-height: 42px;
  padding: 9px 11px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  border-radius: 12px;
  color: rgba(24, 24, 28, 0.63);
  font-size: 14px;
  line-height: 1.25;
  font-weight: 520;
  transition: color 180ms ease, background 180ms ease, transform 180ms ease;
}

.kf-search-subfilters a small {
  flex: 0 0 auto;
  min-width: 24px;
  height: 24px;
  padding: 0 7px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  color: rgba(24, 24, 28, 0.46);
  font-size: 11.5px;
  background: rgba(24, 24, 28, 0.055);
}

.kf-search-subfilters a:hover,
.kf-search-subfilters a.is-selected {
  color: #18181c;
  background: rgba(95, 97, 255, 0.08);
  transform: translateX(2px);
  text-decoration: none;
}

.kf-search-subfilters a.is-selected {
  color: #34356a;
  font-weight: 650;
}

.kf-search-subfilters__more {
  margin-top: 10px;
  padding: 0;
  border: 0;
  color: #5f61ff;
  font-size: 13.5px;
  font-weight: 620;
  background: transparent;
}

.kf-search-active-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.kf-search-active-tags a {
  min-height: 34px;
  padding: 0 11px 0 13px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border-radius: 999px;
  color: #34356a;
  font-size: 13px;
  font-weight: 590;
  background: rgba(95, 97, 255, 0.085);
}

.kf-search-active-tags a:hover {
  color: #ffffff;
  background: #5f61ff;
  text-decoration: none;
}

/* Hide the Filters trigger on desktop */

@media (min-width: 1024px) {

  .kf-search-filter-trigger {
    display: none !important;
  }

}

/* =========================
   Search filter custom dropdowns
   ========================= */

.kf-search-select-wrap.is-custom-select {
  position: relative;
}


/* Remove the old native-select arrow */

.kf-search-select-wrap.is-custom-select::after {
  content: none;
}


/* Keep the open menu above nearby filters */

.kf-search-filter-group {
  position: relative;
}


.kf-search-filter-group:has(
  .kf-search-filter-custom-select.is-open
) {
  z-index: 90;
}


/* Fit the Escalation dropdown style
   neatly inside the filter sidebar */

.kf-search-filter-custom-select
.kf-escalate-custom-select__button {
  min-height: 48px;

  padding-left: 16px;

  font-size: 14px;
}


/* Let longer source names wrap */

.kf-search-filter-custom-select
.kf-escalate-custom-select__option {
  min-height: 44px;

  padding-top: 9px;
  padding-bottom: 9px;
}


.kf-search-filter-custom-select
.kf-escalate-custom-select__option > span:first-child {
  min-width: 0;

  white-space: normal;
}

/* Result cards */

.kf-search-results-listing {
  min-width: 0;
}

.kf-search-results-list {
  display: grid;
  gap: 0;
}

.kf-search-result-card {
  position: relative;
  min-height: 0;
  padding: 30px 16px 30px 0;
  display: grid;
  grid-template-columns: minmax(0, 1fr) 42px;
  gap: 28px;
  align-items: center;
  border-top: 1px solid rgba(24, 24, 28, 0.10);
  transition: transform 200ms ease, border-color 200ms ease;
}

.kf-search-result-card:first-child {
  padding-top: 30px;
  border-top: 0;
}

.kf-search-result-card::before {
  content: "";
  position: absolute;
  inset: 10px -16px;
  z-index: 0;
  border-radius: 24px;
  opacity: 0;
  background:
    radial-gradient(circle at 6% 0%, rgba(255, 255, 255, 0.62), transparent 34%),
    linear-gradient(135deg, rgba(255, 255, 255, 0.56), rgba(255, 255, 255, 0.22)),
    rgba(255, 255, 255, 0.16);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.84),
    0 16px 38px rgba(38, 39, 78, 0.065);
  transition: opacity 200ms ease;
}

.kf-search-result-card:hover {
  transform: translateX(4px);
}

.kf-search-result-card:hover::before {
  opacity: 1;
}

.kf-search-result-card__overlay {
  position: absolute;
  inset: 0;
  z-index: 2;
}

.kf-search-result-card__content,
.kf-search-result-card__arrow {
  position: relative;
  z-index: 1;
}

.kf-search-result-card__meta {
  margin-bottom: 12px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 10px 20px;
}

.kf-search-result-card__breadcrumbs {
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 7px;
  color: #5f61ff;
  font-size: 12.5px;
  line-height: 1.2;
  font-weight: 620;
  letter-spacing: 0.045em;
  text-transform: uppercase;
}

.kf-search-result-card__breadcrumbs li {
  margin: 0 !important;
  padding: 0 !important;
  display: inline-flex;
  align-items: center;
  gap: 7px;
}

.kf-search-result-card__breadcrumbs li::before,
.kf-search-result-card__breadcrumbs li::marker {
  content: none !important;
}

.kf-search-result-card__breadcrumbs li:not(:last-child)::after {
  content: "›";
  color: rgba(95, 97, 255, 0.46);
  font-size: 14px;
}

.kf-search-result-card__breadcrumbs a {
  position: relative;
  z-index: 3;
  color: inherit;
}

.kf-search-result-card__breadcrumbs a:hover {
  color: #34356a;
  text-decoration: none;
}

.kf-search-result-card__date {
  color: rgba(24, 24, 28, 0.42);
  font-size: 12.5px;
  line-height: 1.2;
  font-weight: 480;
}

.kf-search-result-card__title {
  margin: 0;
  color: #18181c;
  font-family: var(--kf-font-h3) !important;
  font-size: clamp(20px, 1.6vw, 24px);
  line-height: 1.12;
  font-weight: 520;
  letter-spacing: -0.012em;
}

.kf-search-result-card__title a {
  position: relative;
  z-index: 3;
  color: inherit;
}

.kf-search-result-card__title a:hover {
  color: #34356a;
  text-decoration: none;
}

.kf-search-result-card__excerpt {
  max-width: 800px;
  margin-top: 13px;
  color: rgba(24, 24, 28, 0.64);
  font-size: 16px;
  line-height: 1.48;
  font-weight: 420;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.kf-search-result-card__excerpt em {
  color: #18181c;
  font-style: normal;
  font-weight: 650;
  background: linear-gradient(transparent 62%, rgba(165, 167, 255, 0.36) 62%);
}

.kf-search-result-card__arrow {
  width: 42px;
  height: 42px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  color: rgba(24, 24, 28, 0.48);
  background: rgba(255, 255, 255, 0.48);
  border: 1px solid rgba(24, 24, 28, 0.08);
  transition: color 180ms ease, background 180ms ease, transform 180ms ease, box-shadow 180ms ease;
}

.kf-search-result-card:hover .kf-search-result-card__arrow {
  color: #ffffff;
  background: #5f61ff;
  transform: translateX(3px);
  box-shadow: 0 10px 24px rgba(95, 97, 255, 0.22);
}

/* Native pagination restyle */

.kf-search-results-pagination {
  margin-top: 50px;
}

.kf-search-results-pagination .pagination {
  margin: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
}

.kf-search-results-pagination .pagination-list {
  display: flex;
  align-items: center;
  gap: 8px;
}

.kf-search-results-pagination .pagination a,
.kf-search-results-pagination .pagination span {
  min-width: 42px;
  height: 42px;
  padding: 0 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  color: rgba(24, 24, 28, 0.64);
  font-size: 14px;
  font-weight: 620;
  background: rgba(255, 255, 255, 0.48);
  border: 1px solid rgba(24, 24, 28, 0.08);
}

.kf-search-results-pagination .pagination a:hover,
.kf-search-results-pagination .pagination-current span,
.kf-search-results-pagination .pagination-current {
  color: #ffffff;
  background: #5f61ff;
  border-color: transparent;
  text-decoration: none;
}

/* No results */

.kf-no-results {
  width: min(1040px, 100%);
  margin: 0 auto;
}

.kf-no-results__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
}

.kf-no-results__card {
  position: relative;
  overflow: hidden;
  min-height: 310px;
  padding: 30px 32px;
  border-radius: 30px;
  border: 1px solid rgba(255, 255, 255, 0.64);
  background:
    radial-gradient(circle at 12% 0%, rgba(255, 255, 255, 0.62), transparent 34%),
    radial-gradient(circle at 100% 100%, rgba(165, 167, 255, 0.13), transparent 32%),
    linear-gradient(135deg, rgba(255, 255, 255, 0.50), rgba(255, 255, 255, 0.18)),
    rgba(255, 255, 255, 0.18);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.84),
    0 16px 42px rgba(38, 39, 78, 0.07);
  backdrop-filter: blur(26px) saturate(150%);
  -webkit-backdrop-filter: blur(26px) saturate(150%);
}

.kf-no-results__card h3 {
  margin: 0 0 20px;
  color: #18181c;
  font-family: var(--kf-font-h3) !important;
  font-size: 26px;
  line-height: 1.05;
  font-weight: 520;
}

.kf-no-results__card ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.kf-no-results__card li {
  position: relative;
  margin: 0;
  padding: 11px 0 11px 25px;
  color: rgba(24, 24, 28, 0.64);
  font-size: 15.5px;
  line-height: 1.38;
  border-top: 1px solid rgba(24, 24, 28, 0.075);
}

.kf-no-results__card li:first-child {
  padding-top: 0;
  border-top: 0;
}

.kf-no-results__card li::before {
  content: "→";
  position: absolute;
  left: 0;
  top: 11px;
  color: #5f61ff;
  font-weight: 650;
}

.kf-no-results__card li:first-child::before {
  top: 0;
}

.kf-no-results__suggestions a,
.kf-no-results__popular-list a {
  color: #34356a;
  font-weight: 590;
}

.kf-no-results__loading,
.kf-no-results__empty {
  color: rgba(24, 24, 28, 0.54);
  font-size: 15px;
  line-height: 1.4;
}

.kf-no-results__cta {
  margin-top: 28px;
  padding: 30px 34px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 30px;
  border-radius: 30px;
  color: #ffffff;
  background:
    radial-gradient(circle at 100% 0%, rgba(153, 255, 244, 0.18), transparent 30%),
    radial-gradient(circle at 8% 100%, rgba(95, 97, 255, 0.32), transparent 36%),
    linear-gradient(120deg, #17182d, #34356a 64%, #4c4e9a);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.16),
    0 20px 54px rgba(38, 39, 78, 0.16);
}

.kf-no-results__cta h2 {
  margin: 0;
  color: #ffffff;
  font-family: var(--kf-font-h2) !important;
  font-size: 30px;
  line-height: 1.04;
  font-weight: 300;
}

.kf-no-results__cta > div > p:last-child {
  margin: 8px 0 0;
  color: rgba(255, 255, 255, 0.68);
  font-size: 15px;
}

.kf-no-results__cta-eyebrow {
  color: #a5a7ff !important;
}

.kf-no-results__actions {
  flex: 0 0 auto;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.kf-no-results__button {
  min-height: 48px;
  padding: 0 20px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  font-size: 14.5px;
  line-height: 1;
  font-weight: 650;
  transition: transform 180ms ease, background 180ms ease, color 180ms ease;
}

.kf-no-results__button:hover {
  transform: translateY(-2px);
  text-decoration: none;
}

.kf-no-results__button--primary {
  color: #18181c;
  background: #ffffff;
}

.kf-no-results__button--primary:hover {
  color: #ffffff;
  background: #5f61ff;
}

.kf-no-results__button--secondary {
  color: #ffffff;
  border: 1px solid rgba(255, 255, 255, 0.24);
  background: rgba(255, 255, 255, 0.08);
}

.kf-no-results__button--secondary:hover {
  color: #ffffff;
  background: rgba(255, 255, 255, 0.15);
}

/* Mobile filter control */

.kf-search-filter-trigger {
  min-height: 44px;
  padding: 0 17px;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border-radius: 999px;
  border: 1px solid rgba(24, 24, 28, 0.10);
  color: #34356a;
  font-size: 14px;
  font-weight: 620;
  background: rgba(255, 255, 255, 0.62);
}

.kf-search-filter-trigger__icon {
  font-size: 17px;
}

.kf-search-filters__mobile-header {
  display: none;

  padding: 0 0 20px;
  align-items: center;
  justify-content: space-between;
  gap: 20px;

  border-bottom: 1px solid rgba(24, 24, 28, 0.10);
}

.kf-search-filters__close {
  width: 42px;
  height: 42px;
  padding: 0;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: 999px;
  border: 1px solid rgba(24, 24, 28, 0.10);
  color: #18181c;
  font-size: 27px;
  line-height: 1;
  background: rgba(255, 255, 255, 0.66);
}

.kf-search-filter-backdrop {
  position: fixed;
  inset: 0;
  z-index: 90;
  visibility: hidden;
  opacity: 0;
  background: rgba(17, 18, 31, 0.46);
  backdrop-filter: blur(4px);
  -webkit-backdrop-filter: blur(4px);
  transition: opacity 220ms ease, visibility 220ms ease;
}

body.kf-search-filters-open {
  overflow: hidden;
}

body.kf-search-filters-open .kf-search-filter-backdrop {
  visibility: visible;
  opacity: 1;
}

/* Responsive */

@media (max-width: 1080px) {

  .kf-search-results-layout {
    grid-template-columns: 240px minmax(0, 1fr);
    gap: 38px;
  }
}

@media (max-width: 991px) {
  .kf-search-results-page {
    padding: 12px 12px 0;
  }

  .kf-search-results-search {
  padding: 30px 24px 34px;
}

.kf-search-results-hero {
  padding: 28px;
  border-radius: 22px;
}

  .kf-search-results-lede {
    max-width: 660px;
  }

  .kf-search-results-main {
    width: calc(100vw - 48px);
    padding-top: 50px;
  }

  .kf-search-results-layout {
    grid-template-columns: 1fr;
  }

  .kf-search-filters__panel {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    z-index: 100;
    width: min(390px, calc(100vw - 28px));
    padding: 28px 26px 40px;
    overflow-y: auto;
    background:
      radial-gradient(circle at 10% 0%, rgba(238, 240, 255, 0.92), transparent 34%),
      #ffffff;
    box-shadow: -22px 0 70px rgba(17, 18, 31, 0.20);
    transform: translateX(104%);
    transition: transform 260ms cubic-bezier(0.2, 0.8, 0.2, 1);
  }

  body.kf-search-filters-open .kf-search-filters__panel {
    transform: translateX(0);
  }

  .kf-search-filter-group:first-of-type {
    padding-top: 24px;
  }
  
  .kf-search-filters__mobile-header {
  display: flex;
}

.kf-search-filters__intro {
  display: none;
}
  
  .kf-search-results-hero--dynamic
.kf-search-results-hero__message {
  grid-template-columns:
    minmax(0, 1fr)
    76px;

  column-gap: 18px;
}
}

@media (max-width: 680px) {
  .kf-search-results-search {
  padding: 24px 10px 28px;
}

.kf-search-results-hero {
  padding: 22px;
  border-radius: 20px;
}

  .kf-search-results-eyebrow {
    font-size: 12px;
    line-height: 1.3;
  }

  .kf-search-results-title {
    font-size: clamp(27px, 8vw, 32px);
  }

  .kf-search-results-lede {
    font-size: 15px;
  }

  .kf-search-header__search form,
  .kf-search-header__search .search,
  .kf-search-header__search input[type="search"],
  .kf-search-header__search input[type="text"],
  .kf-search-header__search .search-field {
    height: 58px !important;
    min-height: 58px !important;
  }

  .kf-search-header__search form::before,
  .kf-search-header__search .search::before {
    left: 20px;
    font-size: 19px;
  }

  .kf-search-header__search input[type="search"],
  .kf-search-header__search input[type="text"],
  .kf-search-header__search .search-field {
    padding-left: 49px !important;
    font-size: 16px !important;
  }

  .kf-search-results-main {
    width: calc(100vw - 36px);
    padding: 42px 0 68px;
  }

  .kf-search-results-summary {
    align-items: flex-start;
  }

  .kf-search-results-summary__title {
    font-size: 30px;
  }

  .kf-search-results-summary__scope {
    font-size: 14px;
  }

  .kf-search-result-card {
    padding: 25px 0;
    grid-template-columns: minmax(0, 1fr) 34px;
    gap: 15px;
  }

  .kf-search-result-card::before {
    inset: 7px -10px;
    border-radius: 20px;
  }

  .kf-search-result-card__meta {
    display: block;
  }

  .kf-search-result-card__date {
    display: block;
    margin-top: 9px;
  }

  .kf-search-result-card__title {
    font-size: 22px;
  }

  .kf-search-result-card__excerpt {
    margin-top: 11px;
    font-size: 15px;
    -webkit-line-clamp: 2;
  }

  .kf-search-result-card__arrow {
    width: 34px;
    height: 34px;
  }

  .kf-no-results__grid {
    grid-template-columns: 1fr;
  }

  .kf-no-results__card {
    min-height: 0;
    padding: 26px 24px;
    border-radius: 26px;
  }
  
  .kf-no-results__cta {
    padding: 28px 24px;
    flex-direction: column;
    align-items: flex-start;
    border-radius: 26px;
  }

  .kf-no-results__actions {
    width: 100%;
  }

  .kf-no-results__button {
    width: 100%;
  }
  
   .kf-search-results-hero--dynamic
.kf-search-results-hero__message {
  grid-template-columns:
    minmax(0, 1fr)
    64px;

  column-gap: 16px;
  row-gap: 0;
}
}

/* =========================
   Footer
   ========================= */
.kf-footer {
  background: #171717;
  color: rgba(255, 255, 255, 0.9);
}

.kf-footer__inner {
  width: min(var(--kf-max), calc(100vw - 96px));
  min-height: 76px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: auto 1fr auto;
  align-items: center;
  gap: 40px;
}

.kf-footer__logo {
  display: inline-flex;
  align-items: center;
  justify-self: start;
}

.kf-footer__logo img {
  display: block;
  width: 176px;
  max-height: 34px;
  object-fit: contain;
}

.kf-footer__meta {
  display: inline-flex;
  align-items: center;
  justify-content: flex-start;
  gap: 16px;
  color: rgba(255, 255, 255, 0.88);
  font-size: 14px;
  line-height: 1;
  font-weight: 560;
}

.kf-footer__meta a {
  color: rgba(255, 255, 255, 0.74);
  text-decoration: none;
  transition: color 180ms ease;
}

.kf-footer__meta a:hover {
  color: #ffffff;
  text-decoration: none;
}

.kf-footer__divider {
  width: 1px;
  height: 18px;
  background: rgba(255, 255, 255, 0.34);
}

.kf-footer__social {
  display: inline-flex;
  align-items: center;
  justify-content: flex-end;
  gap: 28px;
}

.kf-footer__social a {
  width: 24px;
  height: 24px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: rgba(255, 255, 255, 0.58);
  font-size: 19px;
  line-height: 1;
  font-weight: 760;
  text-decoration: none;
  transition: color 180ms ease,
    transform 180ms ease;
}

.kf-footer__social a:hover {
  color: #ffffff;
  transform: translateY(-1px);
  text-decoration: none;
}

.kf-footer__social span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

/* =========================
   Zendesk native cleanup
   ========================= */
.breadcrumbs, .sub-nav, .search-results, .article-container, .category-container, .section-container, .request-container, .profile-container, .community-enabled {
  font-family: var(--kf-font-body) !important;
}

main:not(.kf-home), .container, .article-container, .category-container, .section-container, .request-container, .profile-container {
  font-family: var(--kf-font-body) !important;
}

/* =========================
   Animations
   ========================= */
@keyframes kfHeroGradientSlide {
  from {
    background-position: 50% 0%;
  }

  to {
    background-position: 0% 0%;
  }
}

@keyframes kfHubPanelIn {
  from {
    opacity: 0;
    transform: translateY(8px);
  }

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

/* =========================
   Responsive
   ========================= */
@media (max-width: 1180px) {
  .kf-kbhub {
    padding: 76px 52px 84px;
  }

  .kf-kbhub__tab {
    flex: 0 0 auto;
  }

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

  .kf-feature-card {
    width: min(900px, calc(100vw - 110px));
  }

  .kf-feature-card.is-prev {
    transform: translateX(calc(-50% - 690px)) scale(0.86);
  }

  .kf-feature-card.is-next {
    transform: translateX(calc(-50% + 690px)) scale(0.86);
  }

  .kf-article-shell {
    width: min(100%, calc(100vw - 64px));
    grid-template-columns: minmax(220px, 270px) minmax(0, 1fr);
    gap: 26px;
  }

  .kf-article-card-header, .kf-article-card .article-content {
    padding-left: 44px;
    padding-right: 44px;
  }

  .kf-glass-header {
    padding: 0 40px;
  }

  .kf-glass-header__inner {
    width: 100%;
  }

  .kf-logo img {
    width: 206px;
  }

  .kf-submit-request, .kf-profile-menu__signin, .kf-profile-menu__button {
    padding: 0 20px;
    font-size: 14px;
  }

  .kf-glass-header--site {
    padding: 22px 40px 26px;
  }

  .kf-glass-header--site .kf-glass-header__inner {
    grid-template-columns: auto minmax(240px, 1fr) auto;
    gap: 18px;
  }

  .kf-glass-header--site .kf-logo img {
    width: 190px;
  }

  .kf-site-header-search form, .kf-site-header-search .search, .kf-site-header-search input[type="search"], .kf-site-header-search input[type="text"], .kf-site-header-search .search-field {
    height: 50px !important;
    min-height: 50px !important;
  }

  .kf-hero__inner {
    padding-top: 132px;
    grid-template-columns: minmax(0, 0.42fr) minmax(0, 0.58fr);
    column-gap: 42px;
  }

  .kf-search input[type="submit"], .kf-search button[type="submit"] {
    flex-basis: 122px !important;
    width: 122px !important;
    min-width: 122px !important;
  }
}

@media (max-width: 900px) {
  .kf-feature-carousel {
    margin-top: 58px;
  }

  .kf-feature-carousel__intro {
    margin-bottom: 26px;
  }

  .kf-feature-carousel__lede {
    font-size: 17px;
  }

  .kf-feature-carousel__tabs {
    margin-bottom: 24px;
    gap: 8px;
  }

  .kf-feature-carousel__tab {
    min-height: 48px;
    padding: 0 10px;
    font-size: 15px;
  }

  .kf-feature-carousel__stage {
    height: auto;
    width: 100%;
    left: auto;
    transform: none;
    overflow: visible;
  }

  .kf-feature-card, .kf-feature-card.is-active, .kf-feature-card.is-prev, .kf-feature-card.is-next, .kf-feature-card.is-hidden {
    position: relative;
    inset: auto;
    left: auto;
    width: 100%;
    min-height: 0;
    opacity: 1;
    transform: none;
    filter: none;
  }

  .kf-feature-card:not(.is-active) {
    display: none;
  }

  .kf-feature-card--techdays {
    height: auto;
    min-height: 0;
    top: auto;
    padding: 14px;
  }

  .kf-techdays-banner {
    min-height: 330px;
  }

  .kf-techdays-banner__top {
    padding: 24px 24px 0;
  }

  .kf-techdays-banner__bottom {
    padding: 18px 24px 24px;
    grid-template-columns: 1fr;
    gap: 14px;
  }

  .kf-techdays-banner__meta, .kf-techdays-banner__text {
    min-height: 0;
    padding-left: 0;
    border-left: 0;
  }

  .kf-techdays-banner__text {
    max-width: 620px;
    font-size: 20px;
  }

  .kf-feature-card__content {
    min-height: 340px;
    padding: 36px 30px;
    grid-template-columns: 1fr;
    gap: 24px;
  }

  .kf-feature-card__bg {
    background-image: linear-gradient(
      180deg,
      rgba(255, 255, 255, 0.98) 0%,
      rgba(255, 255, 255, 0.9) 46%,
      rgba(255, 255, 255, 0.38) 100%
    ),
    url("/hc/theming_assets/01KTQ306WYQMBZPC1SCS896B48");
    background-position: center right;
  }

  .kf-article-page {
    padding: 12px 12px 0;
  }

  .kf-article-hero {
    padding: 28px 26px 58px;
    border-radius: 32px;
  }

  .kf-article-title {
    font-size: clamp(32px, 7vw, 46px);
  }

  .kf-article-shell {
    width: calc(100vw - 48px);
    margin-top: 10px;
    grid-template-columns: 1fr;
    gap: 22px;
  }

  .kf-article-sidebar {
    position: relative;
    top: auto;
  }

  .kf-side-card {
    padding: 18px;
    border-radius: 24px;
  }

  .kf-side-card .collapsible-sidebar-toggle {
    display: flex;
  }

 .kf-article-card {
  border-radius: 0;
}

.kf-article-card-header,
.kf-article-card .article-content {
  max-width: none;
  padding-left: 0;
  padding-right: 0;
}

  .kf-article-card .article-content {
    padding-top: 44px;
  }

  .kf-article-body {
    font-size: 17px;
  }

  .kf-glass-header--site {
    top: auto;
    padding: 20px 30px 24px;
  }

  .kf-glass-header--site .kf-glass-header__inner {
    display: grid;
    grid-template-columns: 1fr;
    gap: 12px;
  }

  .kf-glass-header--site .kf-logo, .kf-glass-header--site .kf-header-actions, .kf-glass-header--site .kf-site-header-search {
    width: 100%;
  }

  .kf-glass-header--site .kf-logo {
    justify-content: center;
  }

  .kf-glass-header--site .kf-header-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  justify-content: stretch;
}

  .kf-glass-header--site .kf-submit-request, .kf-glass-header--site .kf-profile-menu, .kf-glass-header--site .kf-profile-menu__button, .kf-glass-header--site .kf-profile-menu__signin {
    width: 100%;
  }

  .kf-tile-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
    margin-top: 42px;
  }

  .kf-glass-header {
    top: 28px;
    padding: 0 30px;
  }

  .kf-glass-header__inner {
    align-items: stretch;
    gap: 14px;
  }

  .kf-logo {
    min-height: 62px;
    padding: 8px 24px;
  }

  .kf-logo img {
    width: 188px;
  }

  .kf-header-actions {
    min-height: 62px;
    padding: 8px 10px;
  }

  .kf-submit-request, .kf-profile-menu__signin, .kf-profile-menu__button {
    min-height: 44px;
    padding: 0 18px;
  }

  .kf-hero {
    background-position: center top;
  }

  .kf-hero__inner {
    grid-template-columns: 1fr;
    grid-template-areas: "eyebrow"
      "title"
      "search"
      "tiles";
    row-gap: 0;
    padding-top: 150px;
  }

  .kf-search-panel {
    width: 100%;
    max-width: 720px;
    margin-top: 30px;
    justify-self: start;
  }

  .kf-footer__inner {
    width: calc(100vw - 56px);
    min-height: 0;
    padding: 28px 0;
    grid-template-columns: 1fr;
    justify-items: center;
    gap: 18px;
    text-align: center;
  }

  .kf-footer__logo {
    justify-self: center;
  }

  .kf-footer__logo img {
    width: 170px;
  }

  .kf-footer__meta {
    justify-content: center;
    flex-wrap: wrap;
    gap: 12px;
  }

  .kf-footer__social {
    justify-content: center;
    gap: 24px;
  }
}

@media (max-width: 820px) {
  .kf-kbhub {
    margin: 14px -12px 0;
    padding: 62px 32px 70px;
    border-radius: 0;
  }

  .kf-kbhub__title {
    font-size: clamp(42px, 11vw, 62px);
  }

  .kf-kbhub__lede {
    font-size: 17px;
  }

  .kf-kbhub__signin-inner {
    align-items: flex-start;
    flex-direction: column;
    border-radius: 24px;
  }

  .kf-kbhub__signin .kf-btn {
    width: 100%;
  }

  .kf-kbhub__tabs {
    display: flex;
    width: 100%;
    overflow-x: auto;
    gap: 0;
  }

  .kf-kbhub__tab {
    flex: 0 0 auto;
    min-height: 48px;
    padding: 0 18px;
    font-size: 16px;
    font-weight: 560;
  }

  .kf-sec__hd {
    align-items: flex-start;
    flex-direction: column;
    gap: 10px;
  }

  .kf-sec__title {
    font-size: 22px;
  }
  
  .kf-home-announcement__message {
  flex-wrap: wrap;
  white-space: normal;
  line-height: 1.25;
}

  .kf-home {
    padding: 12px;
  }

  .kf-hero {
    min-height: 0;
    padding: 22px 20px 42px;
    border-radius: 32px;
  }

  .kf-glass-header {
    top: 28px;
    padding: 0 26px;
  }

  .kf-glass-header__inner {
    width: 100%;
    flex-direction: column;
    align-items: stretch;
    gap: 12px;
  }

  .kf-logo, .kf-header-actions {
    width: 100%;
    min-height: 62px;
  }

  .kf-logo {
    justify-content: center;
    padding: 8px 22px;
  }

  .kf-logo img {
    width: 190px;
  }

  .kf-header-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  justify-content: stretch;
}

  .kf-submit-request, .kf-profile-menu, .kf-profile-menu__button, .kf-profile-menu__signin {
    width: 100%;
  }

  .kf-hero__inner {
    padding-top: 220px;
  }

  .kf-hero__title {
    font-size: clamp(46px, 13vw, 70px);
  }

  .kf-search-panel {
    width: 100%;
    max-width: none;
    margin-top: 24px;
  }

  form.kf-search, .kf-search form, .search.kf-search {
    height: 68px !important;
    min-height: 68px !important;
  }

  form.kf-search::before, .kf-search form::before, .search.kf-search::before {
    left: 22px;
    font-size: 20px;
  }

  form.kf-search input[type="search"], form.kf-search input[type="text"], .kf-search form input[type="search"], .kf-search form input[type="text"], .search.kf-search .search-field {
    height: 68px !important;
    min-height: 68px !important;
    padding: 0 16px 0 50px !important;
    font-size: clamp(15px, 2.1vw, 18px) !important;
  }

  form.kf-search input[type="submit"], form.kf-search button[type="submit"], .kf-search form input[type="submit"], .kf-search form button[type="submit"], .search.kf-search input[type="submit"], .search.kf-search button[type="submit"] {
    flex-basis: 104px !important;
    width: 104px !important;
    min-width: 104px !important;
    max-width: 104px !important;
    height: 68px !important;
    min-height: 68px !important;
    padding: 0 16px !important;
    font-size: 17.5px !important;
    font-weight: 520 !important;
    letter-spacing: 0.008em !important;
  }
}

@media (max-width: 560px) {
  .kf-kbhub {
    padding: 50px 24px 58px;
  }

  .kf-cards, .kf-gridlist {
    grid-template-columns: 1fr;
  }

  .kf-card {
    min-height: 108px;
    padding: 18px;
    border-radius: 24px;
  }

  .kf-card__title {
    font-size: 17.5px;
  }

  .kf-gridlist > li {
  min-height: 0;
  padding: 0 0 28px;
  border: 0;
}

.kf-gridlist > li:nth-child(n + 4) {
  padding-top: 0;
  border-top: 0;
}

.kf-gridlist > li:nth-child(3n + 2),
.kf-gridlist > li:nth-child(3n + 3) {
  padding-left: 0;
  border-left: 0;
}

  .kf-kbhub__tabs {
    gap: 7px;
    padding: 8px;
  }

  .kf-kbhub__tab {
    min-height: 42px;
    padding: 0 14px;
    font-size: 13.5px;
    font-weight: 560;
  }

  .kf-feature-carousel {
    margin-top: 46px;
  }

  .kf-feature-carousel__intro {
    text-align: left;
    margin-bottom: 24px;
  }

  .kf-feature-carousel__eyebrow {
    font-size: 12px;
    line-height: 1.35;
    font-weight: 560;
    letter-spacing: 0.115em;
  }

  .kf-feature-carousel__title {
    font-size: 40px;
  }

  .kf-feature-carousel__lede {
    font-size: 16px;
  }

  .kf-feature-carousel__tabs {
    grid-template-columns: 1fr;
    gap: 0;
  }

  .kf-feature-carousel__tab {
    justify-content: flex-start;
    min-height: 44px;
    padding: 0;
    font-size: 16px;
  }

  .kf-feature-card {
    border-radius: 26px;
  }

  .kf-feature-card__content {
    padding: 30px 22px;
  }

  .kf-feature-card__title {
    font-size: 34px;
  }

  .kf-feature-card__text {
    font-size: 16px;
  }

  .kf-techdays-banner {
  min-height: 0;
  height: auto;
  grid-template-rows: auto auto auto;
}

  .kf-techdays-banner__meta::before, .kf-techdays-banner__text::before {
    content: none;
  }

  .kf-techdays-banner__top {
  padding: 24px 24px 20px;
  align-items: flex-start;
  flex-direction: column;
  gap: 22px;
}

  .kf-techdays-banner__logo-slot {
    font-size: 48px;
  }

  .kf-techdays-banner__button {
    min-height: 42px;
    padding: 0 20px;
    font-size: 16px;
  }

  .kf-techdays-banner__label {
    font-size: 20px;
  }

  .kf-techdays-banner__text {
    font-size: 18px;
  }

  .kf-article-hero {
    padding: 24px 20px 48px;
  }

  .kf-article-eyebrow {
    gap: 10px;
    font-size: 12px;
    line-height: 1.25;
    margin-bottom: 12px;
    font-weight: 560;
    letter-spacing: 0.105em;
  }

  .kf-article-breadcrumbs .breadcrumbs {
    gap: 7px;
    overflow: hidden;
  }

  .kf-article-breadcrumbs .breadcrumbs li {
    gap: 7px;
    min-width: 0;
  }

  .kf-article-breadcrumbs .breadcrumbs a {
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .kf-article-title {
  font-size: clamp(36px, 12vw, 48px);
  line-height: 1;
  letter-spacing: -0.004em;
}

  .kf-article-meta-row {
    align-items: flex-start;
    flex-direction: column;
    gap: 16px;
  }

  .kf-article-shell {
    width: calc(100vw - 36px);
    padding-bottom: 58px;
  }

  .kf-article-card {
  border-radius: 0;
}

.kf-article-card-header,
.kf-article-card .article-content {
  padding-left: 0;
  padding-right: 0;
}

  .kf-article-card .article-content {
    padding-top: 34px;
  }

  .kf-article-body {
    font-size: 16.5px;
    line-height: 1.58;
  }

  .kf-article-body h2 {
    font-size: 30px;
  }

  .kf-article-body h3 {
    font-size: 23px;
  }

  .kf-article-body figure.wysiwyg-table {
  overflow-x: auto;
}

.kf-article-body figure.wysiwyg-table table {
  min-width: 620px;
}

    .kf-content-tags {
    grid-template-columns: 1fr;
    gap: 12px;
  }
  
  .kf-article-relatives {
  grid-template-columns: 1fr;
}

 .kf-article-relatives section,
.kf-article-relatives .recent-articles,
.kf-article-relatives .related-articles {
  padding: 22px;
  border-radius: 24px;
}
  
  .kf-article-comments {
  max-width: 900px;
  margin-top: 44px;
  padding: 0;
  border-radius: 0;
}

.kf-article-comments .comment-overview {
  grid-template-columns: 1fr;
  gap: 8px;
}

.kf-article-comments .comment-wrapper {
  grid-template-columns: 1fr;
  padding: 0 0 22px;
}

.kf-article-comments .comment-actions-container {
  justify-content: flex-start;
}

.kf-article-comments .comment-form {
  padding: 22px 0 0;
}

.kf-article-comments .comment-form-controls {
  justify-content: stretch;
}

.kf-article-comments .comment-form input[type="submit"],
.kf-article-comments .comment-form .button {
  width: 100%;
}

  .kf-home-announcement__inner {
    width: calc(100vw - 28px);
    grid-template-columns: 1fr;
    gap: 8px;
    padding: 8px 0;
    text-align: center;
  }

  .kf-home-announcement__message {
    flex-wrap: wrap;
    justify-content: center;
    gap: 8px;
  }

  .kf-glass-header {
    top: 28px;
    padding: 0 22px;
  }

  .kf-glass-header__inner {
    gap: 10px;
  }

  .kf-logo {
    min-height: 58px;
    padding: 8px 18px;
  }

  .kf-logo img {
    width: 172px;
  }

  .kf-header-actions {
    min-height: 0;
    padding: 10px;
    flex-direction: column;
    gap: 8px;
  }

  .kf-submit-request, .kf-profile-menu__signin, .kf-profile-menu__button {
    min-height: 44px;
    padding: 0 18px;
  }

  .kf-profile-menu__dropdown {
    left: 0;
    right: 0;
    min-width: 0;
  }

  .kf-glass-header--site {
    padding: 18px 22px 22px;
  }

  .kf-site-header-search form, .kf-site-header-search .search, .kf-site-header-search input[type="search"], .kf-site-header-search input[type="text"], .kf-site-header-search .search-field {
    height: 48px !important;
    min-height: 48px !important;
  }

  .kf-site-header-search form::before, .kf-site-header-search .search::before {
    left: 18px;
    font-size: 18px;
  }

  .kf-site-header-search input[type="search"], .kf-site-header-search input[type="text"], .kf-site-header-search .search-field {
    padding-left: 46px !important;
    font-size: 15.5px !important;
  }

  .kf-hero__inner {
    padding-top: 190px;
  }

  .kf-eyebrow {
    font-size: 12px;
    line-height: 1.35;
    margin-bottom: 12px;
    font-weight: 560;
    letter-spacing: 0.115em;
  }

  .kf-search-panel {
    margin-top: 20px;
  }

  form.kf-search, .kf-search form, .search.kf-search {
    height: auto !important;
    min-height: 0 !important;
    border-radius: 24px !important;
    flex-direction: column !important;
    align-items: stretch !important;
    padding: 8px !important;
  }

  form.kf-search::before,
.kf-search form::before,
.search.kf-search::before {
  top: 36px;
  left: 21px;
  transform: translateY(-58%);
}

form.kf-search::after,
.kf-search form::after,
.search.kf-search::after {
  top: 36px;
  left: 31px;
}

 form.kf-search input[type="search"],
form.kf-search input[type="text"],
.kf-search form input[type="search"],
.kf-search form input[type="text"],
.search.kf-search .search-field {
  width: 100% !important;
  height: 56px !important;
  min-height: 56px !important;
  padding: 0 18px 0 44px !important;
  font-size: 15.5px !important;
  line-height: 1.2 !important;
  text-overflow: ellipsis;
}

  form.kf-search input[type="submit"], form.kf-search button[type="submit"], .kf-search form input[type="submit"], .kf-search form button[type="submit"], .search.kf-search input[type="submit"], .search.kf-search button[type="submit"] {
    width: 100% !important;
    min-width: 0 !important;
    max-width: none !important;
    flex-basis: auto !important;
    height: 48px !important;
    min-height: 48px !important;
    border-left: 0 !important;
    border-radius: 18px !important;
    font-size: 17px !important;
    font-weight: 520 !important;
    letter-spacing: 0.008em !important;
  }

  .kf-search-tags {
    gap: 8px;
    padding-left: 0;
  }

  .kf-pill {
    min-height: 32px;
    padding: 0 12px;
    font-size: 12px;
  }

  .kf-tile-grid {
    grid-template-columns: 1fr;
    margin-top: 30px;
  }

  .kf-tile {
    min-height: 126px;
    padding: 15px 16px;
  }

  .kf-tile__title {
    font-size: 17.5px;
    font-weight: 560;
    letter-spacing: 0.005em;
  }

  .kf-tile__text {
    font-size: 15px;
    line-height: 1.3;
  }

  .kf-tile--notice {
    padding: 18px 18px 18px 20px;
  }

  .kf-tile--notice .kf-tile__title {
    font-size: 21px;
    font-weight: 450;
    letter-spacing: 0;
  }

  .kf-tile--notice .kf-tile__text {
    font-size: 15.5px;
  }

  .kf-footer__inner {
    width: calc(100vw - 40px);
    padding: 26px 0 30px;
  }

  .kf-footer__logo img {
    width: 156px;
  }

  .kf-footer__meta {
    font-size: 13px;
    line-height: 1.25;
  }

  .kf-footer__divider {
    display: none;
  }

  .kf-footer__social {
    gap: 20px;
  }

  .kf-hero {
    background-position: center top;
    background-size: cover;
  }
}

/* =========================================================
   Floating page feedback
   ========================================================= */

.kf-feedback {
  --kf-feedback-tab-width: 54px;
  --kf-feedback-panel-width: 390px;

  position: fixed;
  z-index: 9998;

  top: 50%;
  right: 0;

  width:
    calc(
      var(--kf-feedback-panel-width) +
      var(--kf-feedback-tab-width)
    );

  height: 1px;

  font-family:
    var(--kf-font-body) !important;

  transform:
    translateY(-50%);
}


.kf-feedback,
.kf-feedback * {
  box-sizing: border-box;
}


.kf-feedback__panel-wrap {
  position: absolute;

  top: 0;
  right: 0;

  width:
    calc(
      var(--kf-feedback-panel-width) +
      var(--kf-feedback-tab-width)
    );

  display: flex;
  align-items: flex-start;

  transform:
    translateX(
      var(--kf-feedback-panel-width)
    );

  transition:
    transform 240ms
    cubic-bezier(
      0.22,
      1,
      0.36,
      1
    );

  will-change: transform;
}


.kf-feedback__panel-wrap.is-open {
  transform:
    translateX(0);
}


/* =========================
   Floating tab
   ========================= */

.kf-feedback__tab {
  position: relative;
  z-index: 2;

  flex:
    0 0
    var(--kf-feedback-tab-width);

  width:
    var(--kf-feedback-tab-width);

  min-height: 148px;

  margin-top: 26px;
  padding: 17px 0;

  display: flex;
  align-items: center;
  justify-content: center;
  gap: 11px;

  flex-direction: column;

  border:
    1px solid
    rgba(
      255,
      255,
      255,
      0.22
    );

  border-right: 0;

  border-radius:
    18px
    0
    0
    18px;

  color: #ffffff;

  background:
    radial-gradient(
      circle at 20% 0%,
      rgba(
        255,
        255,
        255,
        0.2
      ),
      transparent 42%
    ),
    linear-gradient(
      180deg,
      #7274ff 0%,
      #5f61ff 100%
    );

  box-shadow:
    inset
    0
    1px
    0
    rgba(
      255,
      255,
      255,
      0.2
    ),

    -10px
    16px
    34px
    rgba(
      56,
      58,
      158,
      0.24
    );

  cursor: pointer;

  transform:
    translateZ(0);

  transition:
    background 180ms ease,
    box-shadow 180ms ease,
    filter 180ms ease;
}


.kf-feedback__tab:hover {
  background:
    radial-gradient(
      circle at 20% 0%,
      rgba(
        255,
        255,
        255,
        0.24
      ),
      transparent 42%
    ),
    linear-gradient(
      180deg,
      #8082ff 0%,
      #686aff 100%
    );

  box-shadow:
    inset
    0
    1px
    0
    rgba(
      255,
      255,
      255,
      0.26
    ),

    -13px
    20px
    40px
    rgba(
      56,
      58,
      158,
      0.3
    );
}


.kf-feedback__tab:focus-visible {
  outline:
    3px solid
    rgba(
      153,
      255,
      244,
      0.9
    );

  outline-offset:
    4px;
}


.kf-feedback__tab-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

.kf-feedback__tab-icon img {
  display: block;
  width: 20px;
  height: 20px;

  object-fit: contain;

  filter: brightness(0) invert(1);
}


.kf-feedback__tab-text {
  font-family:
    var(--kf-font-body) !important;

  font-size: 14px;
  line-height: 1;
  font-weight: 650;

  letter-spacing: 0.045em;

  writing-mode:
    vertical-rl;

  transform:
    rotate(180deg);
}


/* =========================
   Panel
   ========================= */

.kf-feedback__panel {
  position: relative;

  width:
    var(--kf-feedback-panel-width);

  max-height:
    min(
      720px,
      calc(
        100vh -
        48px
      )
    );

  overflow-y: auto;

  border:
    1px solid
    rgba(
      255,
      255,
      255,
      0.82
    );

  border-right: 0;

  border-radius:
    28px
    0
    0
    28px;

  color: #18181c;

  background:
    radial-gradient(
      circle at 100% 0%,
      rgba(
        165,
        167,
        255,
        0.28
      ),
      transparent 38%
    ),

    radial-gradient(
      circle at 0% 100%,
      rgba(
        255,
        255,
        255,
        0.94
      ),
      transparent 42%
    ),

    linear-gradient(
      145deg,
      rgba(
        255,
        255,
        255,
        0.97
      ),
      rgba(
        241,
        242,
        255,
        0.95
      )
    );

  box-shadow:
    inset
    0
    1px
    0
    rgba(
      255,
      255,
      255,
      1
    ),

    -26px
    32px
    74px
    rgba(
      28,
      29,
      71,
      0.22
    );

  backdrop-filter:
    blur(28px)
    saturate(150%);

  -webkit-backdrop-filter:
    blur(28px)
    saturate(150%);

  scrollbar-width: thin;

  scrollbar-color:
    rgba(
      95,
      97,
      255,
      0.42
    )
    transparent;
}


.kf-feedback__panel::before {
  content: "";

  position: absolute;
  inset: 0;

  border-radius: inherit;

  pointer-events: none;

  background:
    linear-gradient(
      135deg,
      rgba(
        255,
        255,
        255,
        0.58
      ),
      transparent 36%
    );

  opacity: 0.72;
}


.kf-feedback__panel > * {
  position: relative;
  z-index: 1;
}


.kf-feedback__panel::-webkit-scrollbar {
  width: 8px;
}


.kf-feedback__panel::-webkit-scrollbar-track {
  background: transparent;
}


.kf-feedback__panel::-webkit-scrollbar-thumb {
  border-radius: 999px;

  background:
    rgba(
      95,
      97,
      255,
      0.34
    );
}


/* =========================
   Header
   ========================= */

.kf-feedback__header {
  position: relative;

 padding:
    26px
    58px
    20px
    26px;

  border-bottom:
    1px solid
    rgba(
      24,
      24,
      28,
      0.08
    );
}


.kf-feedback__eyebrow {
  margin:
    0
    0
    10px;

  display: flex;
  align-items: center;
  gap: 10px;

  color: #5f61ff;

  font-family:
    var(--kf-font-body) !important;

  font-size: 12.5px;
  line-height: 1.2;
  font-weight: 700;

  letter-spacing: 0.09em;
  text-transform: uppercase;
}


.kf-feedback__eyebrow::before {
  content: "/ / /";

  color: #7274ff;

  letter-spacing: 0;
}


.kf-feedback__title {
  margin: 0;

  color: #18181c;

  font-family:
    var(--kf-font-h3) !important;

  font-size: 31px;
  line-height: 0.98;
  font-weight: 520;

  letter-spacing: -0.022em;
}


.kf-feedback__intro {
 margin:
  10px
  0
  0;

  color:
    rgba(
      24,
      24,
      28,
      0.7
    );

  font-family:
    var(--kf-font-body) !important;

  font-size: 15.5px;
  line-height: 1.48;
  font-weight: 430;
}


.kf-feedback__close {
  position: absolute;

  top: 14px;
  right: 14px;

  width: 30px;
  height: 30px;
  padding: 0;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  border: 0;
  border-radius: 8px;

  color:
    rgba(
      24,
      24,
      28,
      0.54
    );

  font-family:
    var(--kf-font-body) !important;

  font-size: 23px;
  line-height: 1;
  font-weight: 300;

  background: transparent;
  box-shadow: none;

  cursor: pointer;

  transition:
    color 180ms ease,
    background 180ms ease,
    transform 180ms ease;
}

.kf-feedback__close:hover {
  color: #18181c;

  background:
    rgba(
      24,
      24,
      28,
      0.055
    );

  transform: none;
}

.kf-feedback__close:focus-visible {
  outline:
    2px solid
    rgba(
      95,
      97,
      255,
      0.4
    );

  outline-offset: 2px;
}


/* =========================
   Form
   ========================= */

.kf-feedback__form {
  padding:
    22px
    26px
    26px;
}


.kf-feedback__field {
  margin:
    0
    0
    16px;
}


.kf-feedback__field label {
  margin:
    0
    0
    8px;

  display: block;

  color:
    rgba(
      24,
      24,
      28,
      0.84
    );

  font-family:
    var(--kf-font-body) !important;

  font-size: 14px;
  line-height: 1.3;
  font-weight: 650;
}


.kf-feedback__field input,
.kf-feedback__field select,
.kf-feedback__field textarea {
  width: 100%;
  margin: 0;

  border:
    1px solid
    rgba(
      24,
      24,
      28,
      0.12
    );

  border-radius: 15px;

  color: #18181c;

  font-family:
    var(--kf-font-body) !important;

  font-size: 15px;
  line-height: 1.4;
  font-weight: 430;

  background:
    rgba(
      255,
      255,
      255,
      0.74
    );

  box-shadow:
    inset
    0
    1px
    0
    rgba(
      255,
      255,
      255,
      0.94
    ),

    0
    8px
    20px
    rgba(
      55,
      57,
      110,
      0.04
    );

  transition:
    border-color 180ms ease,
    background 180ms ease,
    box-shadow 180ms ease;
}


.kf-feedback__field input,
.kf-feedback__field select {
  min-height: 46px;
  padding:
    0
    14px;
}


.kf-feedback__field select {
  cursor: pointer;
}


.kf-feedback__field textarea {
  min-height: 108px;

  padding:
    14px
    15px;

  resize: vertical;
}


.kf-feedback__field input::placeholder,
.kf-feedback__field textarea::placeholder {
  color:
    rgba(
      24,
      24,
      28,
      0.43
    );
}


.kf-feedback__field input:hover,
.kf-feedback__field select:hover,
.kf-feedback__field textarea:hover {
  border-color:
    rgba(
      95,
      97,
      255,
      0.28
    );

  background:
    rgba(
      255,
      255,
      255,
      0.88
    );
}


.kf-feedback__field input:focus,
.kf-feedback__field select:focus,
.kf-feedback__field textarea:focus {
  outline: 0;

  border-color:
    rgba(
      95,
      97,
      255,
      0.72
    );

  background:
    rgba(
      255,
      255,
      255,
      0.96
    );

  box-shadow:
    0
    0
    0
    4px
    rgba(
      95,
      97,
      255,
      0.12
    ),

    inset
    0
    1px
    0
    rgba(
      255,
      255,
      255,
      1
    );
}

/* =========================
   Feedback custom dropdown
   ========================= */

.kf-feedback__select-field {
  position: relative;
  z-index: 5;
}


/*
 * Keep the real select available to the form and
 * accessibility APIs, but visually replace it.
 */

.kf-feedback__select-field
.kf-native-select--enhanced {
  position: absolute !important;

  width: 1px !important;
  height: 1px !important;

  padding: 0 !important;
  margin: -1px !important;

  overflow: hidden !important;

  clip: rect(0, 0, 0, 0) !important;
  clip-path: inset(50%) !important;

  white-space: nowrap !important;

  border: 0 !important;
}


/*
 * Adapt the site's existing custom dropdown
 * to the compact feedback form.
 */

.kf-feedback__select-field
.kf-custom-select {
  position: relative;
  width: 100%;
}


.kf-feedback__select-field
.kf-custom-select__button {
  width: 100%;
  height: 46px;
  min-height: 46px;

  padding:
    0
    46px
    0
    14px;

  border-radius: 15px;

  font-size: 15px;
}


.kf-feedback__select-field
.kf-custom-select__arrow {
  right: 17px;
}


.kf-feedback__select-field
.kf-custom-select__menu {
  top:
    calc(
      100% +
      8px
    );

  z-index: 10005;

  max-height: 250px;
  overflow-y: auto;
}


.kf-feedback__select-field
.kf-custom-select__option {
  min-height: 40px;

  font-size: 14px;
}


/* =========================
   Submit
   ========================= */

.kf-feedback__actions {
  display: flex;
  justify-content: flex-end;
}


.kf-feedback__submit,
.kf-feedback__signin {
 min-height: 44px;
padding:
  0
  20px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  border: 0;
  border-radius: 999px;

  color: #ffffff !important;

  font-family:
    var(--kf-font-body) !important;

  font-size: 15px;
  line-height: 1;
  font-weight: 650;

  text-decoration: none;

  background: #7274ff;

  box-shadow:
    inset
    0
    1px
    0
    rgba(
      255,
      255,
      255,
      0.22
    ),

    0
    14px
    30px
    rgba(
      95,
      97,
      255,
      0.24
    );

  cursor: pointer;

  transition:
    transform 180ms ease,
    background 180ms ease,
    box-shadow 180ms ease;
}


.kf-feedback__submit:hover,
.kf-feedback__signin:hover {
  color: #ffffff !important;

  background: #6264ff;

  box-shadow:
    inset
    0
    1px
    0
    rgba(
      255,
      255,
      255,
      0.26
    ),

    0
    17px
    34px
    rgba(
      95,
      97,
      255,
      0.31
    );

  transform:
    translateY(-1px);
}


.kf-feedback__submit:focus-visible,
.kf-feedback__signin:focus-visible {
  outline:
    3px solid
    rgba(
      95,
      97,
      255,
      0.28
    );

  outline-offset:
    4px;
}


.kf-feedback__submit:disabled {
  opacity: 0.58;

  cursor: wait;

  transform: none;

  box-shadow: none;
}


/* =========================
   Status messages
   ========================= */

.kf-feedback__status {
  min-height: 20px;

  margin:
    16px
    0
    0;

  color:
    rgba(
      24,
      24,
      28,
      0.66
    );

  font-family:
    var(--kf-font-body) !important;

  font-size: 13.5px;
  line-height: 1.42;
  font-weight: 520;
}


.kf-feedback__status:empty {
  display: none;
}


.kf-feedback__status.is-success {
  color: #23765b;
}


.kf-feedback__status.is-error {
  color: #a23b45;
}


/* =========================
   Signed-out state
   ========================= */

.kf-feedback__locked {
  padding: 6px 0 2px;

  display: grid;
  grid-template-columns:
    52px
    minmax(0, 1fr);

  align-items: start;
  gap: 17px;

  border: 0;
  border-radius: 0;

  background: transparent;
  box-shadow: none;
}


.kf-feedback__locked[hidden] {
  display: none;
}


.kf-feedback__locked-icon {
  width: 52px;
  height: 52px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  border: 0;
  border-radius: 0;

  color: inherit;
  background: transparent;
}


.kf-feedback__locked-icon img {
  display: block;

  width: 48px;
  height: 48px;

  object-fit: contain;
}


.kf-feedback__locked-title {
  margin:
    2px
    0
    6px;

  color: #18181c;

  font-family:
    var(--kf-font-body) !important;

  font-size: 16px;
  line-height: 1.25;
  font-weight: 700;
}


.kf-feedback__locked-text {
  margin:
    0
    0
    16px;

  color:
    rgba(
      24,
      24,
      28,
      0.67
    );

  font-family:
    var(--kf-font-body) !important;

  font-size: 14px;
  line-height: 1.45;
  font-weight: 430;
}

/* =========================================================
   Sign-in required modal
   ========================================================= */

html.kf-auth-modal-open,
html.kf-auth-modal-open body {
  overflow: hidden;
}


/* =========================
   Modal shell
   ========================= */

.kf-auth-modal {
  position: fixed;
  inset: 0;
  z-index: 12000;

  padding: 28px;

  display: flex;
  align-items: center;
  justify-content: center;

  opacity: 1;
  visibility: visible;

  transition:
    opacity 180ms ease,
    visibility 180ms ease;
}

.kf-auth-modal[aria-hidden="true"] {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

.kf-auth-modal[aria-hidden="false"] {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}


/* =========================
   Backdrop
   ========================= */

.kf-auth-modal__backdrop {
  position: absolute;
  inset: 0;

  background:
    radial-gradient(
      circle at 50% 20%,
      rgba(95, 97, 255, 0.14),
      transparent 42%
    ),
    rgba(10, 11, 46, 0.68);

  backdrop-filter:
    blur(14px)
    saturate(120%);

  -webkit-backdrop-filter:
    blur(14px)
    saturate(120%);

  cursor: pointer;
}


/* =========================
   Dialog
   ========================= */

.kf-auth-modal__dialog {
  position: relative;
  z-index: 1;

  width: min(620px, 100%);
  max-height: calc(100vh - 56px);

  overflow-y: auto;

  padding: 38px 192px 38px 42px;

  border:
    1px solid
    rgba(255, 255, 255, 0.88);

  border-radius: 30px;

  color: #18181c;

  background:
    radial-gradient(
      circle at 100% 0%,
      rgba(165, 167, 255, 0.28),
      transparent 34%
    ),
    radial-gradient(
      circle at 0% 100%,
      rgba(255, 255, 255, 0.98),
      transparent 42%
    ),
    linear-gradient(
      145deg,
      rgba(255, 255, 255, 0.98),
      rgba(240, 241, 255, 0.96)
    );

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 1),
    0 34px 90px rgba(10, 11, 46, 0.34);

  backdrop-filter:
    blur(28px)
    saturate(150%);

  -webkit-backdrop-filter:
    blur(28px)
    saturate(150%);

  transform:
    translateY(0)
    scale(1);

  transition:
    transform 220ms ease,
    opacity 180ms ease;
}

.kf-auth-modal[aria-hidden="true"]
.kf-auth-modal__dialog {
  opacity: 0;

  transform:
    translateY(16px)
    scale(0.975);
}

.kf-auth-modal[aria-hidden="false"]
.kf-auth-modal__dialog {
  opacity: 1;

  transform:
    translateY(0)
    scale(1);
}

/* Soft glass highlight */

.kf-auth-modal__dialog::before {
  content: "";

  position: absolute;
  inset: 0;

  border-radius: inherit;

  pointer-events: none;

  background:
    linear-gradient(
      135deg,
      rgba(255, 255, 255, 0.64),
      transparent 38%
    );

  opacity: 0.72;
}

.kf-auth-modal__dialog > * {
  position: relative;
  z-index: 1;
}


/* =========================
   Close button
   ========================= */

.kf-auth-modal__close {
  position: absolute;
  top: 20px;
  right: 20px;

  width: 40px;
  height: 40px;
  padding: 0;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  border:
    1px solid
    rgba(24, 24, 28, 0.09);

  border-radius: 999px;

  color: rgba(24, 24, 28, 0.68);

  background:
    rgba(255, 255, 255, 0.58);

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.9);

  cursor: pointer;

  transition:
    color 180ms ease,
    background 180ms ease,
    border-color 180ms ease,
    transform 180ms ease;
}

.kf-auth-modal__close:hover {
  color: #18181c;

  border-color:
    rgba(95, 97, 255, 0.2);

  background:
    rgba(255, 255, 255, 0.9);

  transform:
    translateY(-1px);
}

.kf-auth-modal__close:focus-visible {
  outline:
    3px solid
    rgba(95, 97, 255, 0.28);

  outline-offset: 3px;
}


/* =========================
   Icon
   ========================= */

.kf-auth-modal__icon {
  position: absolute;
  top: 50%;
  right: 34px;

  width: 112px;
  height: 112px;
  margin: 0;

  display: flex;
  align-items: center;
  justify-content: center;

  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  overflow: visible;

  transform: translateY(-50%);
}

.kf-auth-modal__icon img {
  width: 112px;
  height: 112px;

  display: block;
  object-fit: contain;
}


/* =========================
   Text
   ========================= */

.kf-auth-modal__eyebrow {
  max-width: calc(100% - 70px);
  margin: 4px 0 12px;

  color: #5f61ff;
  font-family: var(--kf-font-body) !important;
  font-size: 12px;
  line-height: 1;
  font-weight: 720;
  letter-spacing: 0.085em;
  text-align: left;
  text-transform: uppercase;
}

.kf-auth-modal__title {
  max-width: none;
  margin: 0 0 12px;

  color: #18181c;
  font-family: var(--kf-font-h3) !important;
  font-size: clamp(30px, 3.5vw, 36px);
  line-height: 1.03;
  font-weight: 560;
  letter-spacing: -0.025em;
  text-align: left;
}

.kf-auth-modal__description {
  max-width: none;
  margin: 0;

  color: rgba(24, 24, 28, 0.72);
  font-family: var(--kf-font-body) !important;
  font-size: 16.5px;
  line-height: 1.48;
  font-weight: 400;
  text-align: left;
}

.kf-auth-modal__note {
  max-width: 410px;
  margin: 22px 0 0;
  color: rgba(24, 24, 28, 0.54);
  font-family: var(--kf-font-body) !important;
  font-size: 13px;
  line-height: 1.45;
  font-weight: 400;
  text-align: left;
}


/* =========================
   Actions
   ========================= */

.kf-auth-modal__actions {
  margin: 22px 0 0;
  display: flex;
  align-items: center;
  justify-content: flex-start;
}

.kf-auth-modal__primary {
  min-height: 48px;
  padding: 0 20px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  border: 0;
  border-radius: 999px;

  color: #ffffff !important;
  font-family: var(--kf-font-body) !important;
  font-size: 15px;
  line-height: 1;
  font-weight: 680;
  text-align: center;
  text-decoration: none !important;
  white-space: nowrap;

  background:
    linear-gradient(
      135deg,
      #7274ff,
      #5f61ff
    );

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.2),
    0 14px 30px rgba(95, 97, 255, 0.25);

  cursor: pointer;

  transition:
    color 180ms ease,
    background 180ms ease,
    box-shadow 180ms ease,
    transform 180ms ease;
}

.kf-auth-modal__primary:hover,
.kf-auth-modal__primary:focus {
  color: #ffffff !important;
  text-decoration: none !important;

  background:
    linear-gradient(
      135deg,
      #7d7fff,
      #686aff
    );

  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.24),
    0 18px 36px rgba(95, 97, 255, 0.31);

  transform: translateY(-2px);
}

.kf-auth-modal__primary:focus-visible {
  outline:
    3px solid
    rgba(95, 97, 255, 0.28);

  outline-offset: 3px;
}


/* =========================================
   Urgent alert banner
   ========================================= */

.kf-urgent-alert[hidden] {
  display: none !important;
}

.kf-urgent-alert {
  position: relative;
  z-index: 20;

  width: 100%;
  overflow: hidden;

  color: #ffffff;

  background:
    radial-gradient(
      circle at 70% 115%,
      rgba(149, 255, 236, 0.2),
      transparent 34%
    ),
    radial-gradient(
      circle at 82% 95%,
      rgba(117, 174, 255, 0.14),
      transparent 42%
    ),
    linear-gradient(
      105deg,
      #0f1014 0%,
      #15182a 50%,
      #222b46 100%
    );

  border-top: 1px solid rgba(255, 255, 255, 0.06);
  border-bottom: 2px solid #95ffec;

  box-shadow:
    0 10px 28px rgba(10, 11, 46, 0.24),
    0 0 24px rgba(149, 255, 236, 0.12),
    inset 0 1px 0 rgba(255, 255, 255, 0.04);
}

/* Shared moving-glow setup */

.kf-urgent-alert::before,
.kf-urgent-alert::after {
  content: "";
  position: absolute;

  pointer-events: none;
  border-radius: 50%;

  will-change: transform;
}

/* Primary aqua glow */

.kf-urgent-alert::before {
  width: 430px;
  height: 190px;

  left: 8%;
  top: -92px;

  background:
    radial-gradient(
      ellipse,
      rgba(149, 255, 236, 0.38) 0%,
      rgba(149, 255, 236, 0.19) 34%,
      rgba(149, 255, 236, 0.07) 58%,
      transparent 76%
    );

  filter: blur(20px);

  animation:
    kf-alert-glow-drift-primary
    11s
    ease-in-out
    infinite
    alternate;
}

/* Secondary blue-aqua glow */

.kf-urgent-alert::after {
  width: 370px;
  height: 160px;

  right: 4%;
  bottom: -98px;

  background:
    radial-gradient(
      ellipse,
      rgba(117, 174, 255, 0.24) 0%,
      rgba(149, 255, 236, 0.14) 42%,
      transparent 74%
    );

  filter: blur(24px);

  animation:
    kf-alert-glow-drift-secondary
    14s
    ease-in-out
    infinite
    alternate;
}

@keyframes kf-alert-glow-drift-primary {
  0% {
    transform:
      translate3d(-8%, 0, 0)
      scale(0.96);
  }

  35% {
    transform:
      translate3d(32vw, 24px, 0)
      scale(1.08);
  }

  68% {
    transform:
      translate3d(58vw, -12px, 0)
      scale(1);
  }

  100% {
    transform:
      translate3d(76vw, 18px, 0)
      scale(1.05);
  }
}

@keyframes kf-alert-glow-drift-secondary {
  0% {
    transform:
      translate3d(4%, 0, 0)
      scale(1);
  }

  40% {
    transform:
      translate3d(-22vw, -22px, 0)
      scale(1.08);
  }

  72% {
    transform:
      translate3d(-48vw, 8px, 0)
      scale(0.96);
  }

  100% {
    transform:
      translate3d(-68vw, -14px, 0)
      scale(1.03);
  }
}

.kf-urgent-alert__inner {
  position: relative;
  z-index: 1;

  width: min(var(--kf-max), calc(100vw - 56px));
  margin: 0 auto;
}

.kf-urgent-alert__link {
  min-height: 68px;
  padding: 13px 4px;

  display: flex;
  align-items: center;
  justify-content: center;
  gap: 22px;

  color: #ffffff;
  text-decoration: none;
}

.kf-urgent-alert__link:hover,
.kf-urgent-alert__link:focus-visible {
  color: #ffffff;
  text-decoration: none;
}

.kf-urgent-alert__link:focus-visible {
  outline: 2px solid #95ffec;
  outline-offset: -5px;
  border-radius: 8px;
}

.kf-urgent-alert__badge {
  flex: 0 0 auto;

  display: inline-flex;
  align-items: center;
  gap: 10px;

  color: #ffffff;

  font-size: 12px;
  line-height: 1;
  font-weight: 800;
  letter-spacing: 0.075em;
  text-transform: uppercase;
  white-space: nowrap;
}

.kf-urgent-alert__badge::before {
  display: none;
}

.kf-urgent-alert__icon {
  width: 30px;
  height: 30px;

  display: inline-flex;
  align-items: center;
  justify-content: center;

  color: #0a0b2e;
  background: #95ffec;

  border: 1px solid rgba(255, 255, 255, 0.24);
  border-radius: 8px;

  box-shadow:
    0 0 0 4px rgba(149, 255, 236, 0.13),
    0 0 22px rgba(149, 255, 236, 0.28),
    0 7px 18px rgba(0, 0, 0, 0.22);

  font-size: 16px;
  line-height: 1;
  font-weight: 850;
}

.kf-urgent-alert__title {
  min-width: 0;

  color: #ffffff;

  font-size: 19px;
  line-height: 1.22;
  font-weight: 650;
  letter-spacing: -0.01em;
  text-align: center;
}

.kf-urgent-alert__action {
  flex: 0 0 auto;

  padding: 8px 12px;

  display: inline-flex;
  align-items: center;
  gap: 8px;

  color: #0a0b2e;
  background: #95ffec;

  border: 1px solid rgba(255, 255, 255, 0.24);
  border-radius: 6px;

  box-shadow:
    0 4px 14px rgba(149, 255, 236, 0.18);

  font-size: 14px;
  line-height: 1;
  font-weight: 800;
  white-space: nowrap;

  transition:
    transform 160ms ease,
    box-shadow 160ms ease,
    background-color 160ms ease;
}

.kf-urgent-alert__action span {
  transition: transform 160ms ease;
}

.kf-urgent-alert__link:hover
.kf-urgent-alert__action {
  transform: translateY(-1px);

  background: #b6fff2;

  box-shadow:
    0 6px 18px rgba(149, 255, 236, 0.26);
}

.kf-urgent-alert__link:hover
.kf-urgent-alert__action span {
  transform: translateX(4px);
}

.kf-urgent-alert__link:hover
.kf-urgent-alert__title {
  text-decoration: underline;
  text-decoration-color: rgba(149, 255, 236, 0.7);
  text-underline-offset: 4px;
}

/* Reduced motion */

@media (prefers-reduced-motion: reduce) {
  .kf-urgent-alert::before,
  .kf-urgent-alert::after {
    animation: none;
  }
}

/* Mobile */

@media (max-width: 767px) {
  .kf-urgent-alert__inner {
    width: 100%;
  }

  .kf-urgent-alert__link {
    min-height: 0;
    padding: 15px 18px;

    align-items: center;
    justify-content: flex-start;
    gap: 12px;
  }

  .kf-urgent-alert__badge {
    flex: 0 0 auto;
    font-size: 0;
  }

  .kf-urgent-alert__icon {
    width: 26px;
    height: 26px;

    margin-top: 0;

    font-size: 14px;
  }

  .kf-urgent-alert__title {
    flex: 1;

    font-size: 15px;
    line-height: 1.35;
    text-align: left;
  }

  .kf-urgent-alert__action {
    display: none;
  }

  .kf-urgent-alert::before {
    width: 280px;
    height: 150px;
  }

  .kf-urgent-alert::after {
    width: 250px;
    height: 130px;
  }
}


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

@media (max-width: 600px) {
  .kf-auth-modal {
    padding: 16px;
    align-items: flex-end;
  }

  .kf-auth-modal__dialog {
  width: 100%;
  max-height: calc(100vh - 32px);

  padding:
    34px
    24px
    28px;

  border-radius: 26px;
}

  .kf-auth-modal__close {
    top: 16px;
    right: 16px;
  }

  .kf-auth-modal__icon {
  position: static;

  width: 58px;
  height: 58px;
  margin: 0 0 18px;

  transform: none;
}

.kf-auth-modal__icon img {
  width: 58px;
  height: 58px;
}

  .kf-auth-modal__title {
  max-width: calc(100% - 54px);
  margin-right: 0;
  margin-left: 0;
  font-size: 32px;
}

  .kf-auth-modal__description {
    font-size: 16px;
  }

  .kf-auth-modal__actions {
    align-items: stretch;
    flex-direction: column;
  }

  .kf-auth-modal__primary {
    width: 100%;
  }
}


@media (prefers-reduced-motion: reduce) {
  .kf-auth-modal,
  .kf-auth-modal__dialog,
  .kf-auth-modal__close,
  .kf-auth-modal__primary {
    transition: none;
  }
}


/* =========================
   Mobile
   ========================= */

@media (max-width: 640px) {
  .kf-feedback {
    --kf-feedback-tab-width: 48px;
    --kf-feedback-panel-width:
      calc(
        100vw -
        var(--kf-feedback-tab-width) -
        12px
      );

    top: auto;
    bottom: 18px;

    transform: none;
  }


  .kf-feedback__panel-wrap {
    align-items: flex-end;
  }


  .kf-feedback__tab {
    min-height: 122px;

    margin-top: 0;
    margin-bottom: 20px;

    border-radius:
      16px
      0
      0
      16px;
  }


  .kf-feedback__panel {
    max-height:
      calc(
        100vh -
        36px
      );

    border-radius:
      24px
      0
      0
      24px;
  }


  .kf-feedback__header {
    padding:
      27px
      57px
      20px
      22px;
  }


  .kf-feedback__title {
    font-size: 30px;
  }


  .kf-feedback__intro {
    font-size: 14.5px;
  }


  .kf-feedback__close {
    top: 18px;
    right: 16px;

    width: 36px;
    height: 36px;
  }


  .kf-feedback__form {
    padding:
      22px
      22px
      26px;
  }


  .kf-feedback__actions {
    justify-content: stretch;
  }


  .kf-feedback__submit {
    width: 100%;
  }


  .kf-feedback__locked {
    grid-template-columns: 1fr;
  }
}


@media (prefers-reduced-motion: reduce) {
  .kf-feedback__panel-wrap,
  .kf-feedback__tab,
  .kf-feedback__close,
  .kf-feedback__submit,
  .kf-feedback__signin {
    transition: none;
  }
}

/* Keep the desktop feedback panel inside the viewport
   and position it slightly below center */
@media (min-width: 641px) {
  .kf-feedback {
    top: 58%;
  }

  .kf-feedback__panel-wrap {
    top: 50%;

    transform:
      translateX(
        var(--kf-feedback-panel-width)
      )
      translateY(-50%);
  }

  .kf-feedback__panel-wrap.is-open {
    transform:
      translateX(0)
      translateY(-50%);
  }

  .kf-feedback__panel {
    max-height:
      calc(
        100vh -
        40px
      );
  }
}