/* ==========================================================================
   DESIGN SYSTEM - LIFERAY
   ========================================================================== */

@import url('./fonts.css');
@import url('https://fonts.googleapis.com/css2?family=Material+Symbols+Rounded');
@import url('https://fonts.googleapis.com/icon?family=Material+Icons');
@import url('https://fonts.googleapis.com/css2?family=Roboto:wght@300;400;500;700&display=swap');

/* ==========================================================================
   DESIGN TOKENS
   ========================================================================== */

:root {
  /* Cores Projeto */
  --ds-lfa-color-primary: #004EFF;
  --ds-lfa-color-primary-opacity: #436CFF4D;
  --ds-lfa-color-secondary: #1818B7;
  --ds-lfa-color-accent: #83FB71;
  --ds-lfa-color-neutral-dark: #001728;
  --ds-lfa-color-neutral-dark-opacity: #0017281F;
  --ds-lfa-color-neutral-900: #00172899;
  --ds-lfa-color-neutral-800: #00172880;
  --ds-lfa-color-neutral-700: #818D9C;
  --ds-lfa-color-neutral-600: #15151599;
  --ds-lfa-color-neutral-500: #CAD5E2;
  --ds-lfa-color-neutral-400: #90A1B9;
  --ds-lfa-color-neutral-350: #45556C;
  --ds-lfa-color-neutral-340: #364153;
  --ds-lfa-color-neutral-330: #1D293D;
  --ds-lfa-color-neutral-300: #62748E;
  --ds-lfa-color-neutral-200: #1515150A;
  --ds-lfa-color-neutral-100: #F1F5F9;
  --ds-lfa-color-neutral-50: #E0F1EF;
  --ds-lfa-color-neutral-50-opacity: #E0F1EF29;
  --ds-lfa-color-accent-hover: #6ACC5C;
  --ds-lfa-color-white: #FFFFFFCC;
  --ds-lfa-color-white-solid: #FFFFFF;
  --ds-lfa-color-white-90: #FFFFFFE5;
  --ds-lfa-color-white-80: #F9FBFC;
  --ds-lfa-color-white-70: #FFFFFFB2;
  --ds-lfa-color-white-20: #FFFFFF33;
  --ds-lfa-color-white-14: #FFFFFF14;
  --ds-lfa-color-white-5: #FFFFFF0D;
  --ds-lfa-color-hover: rgba(0, 78, 255, 0.1);
  --ds-lfa-color-active: rgba(24, 24, 183, 0.2);
  --ds-lfa-color-disabled: rgba(0, 23, 40, 0.3);
  --ds-lfa-color-ghost-hover: #00172814;
  --ds-lfa-color-gradient-start: #1A244799;
  --ds-lfa-color-gradient-end: #0D142899;
  --ds-lfa-color-blue-dark: #1B1B96;
  --ds-lfa-color-neutral-teal: #33585A;
  --ds-lfa-color-badge: #0017281A;
  --ds-lfa-color-blue-light: #DBEAFE;
  --ds-lfa-color-blue-lighter: #EFF6FF;
  
  /* Tipografia */
  --ds-lfa-font-primary: 'B3 Sans Display', 'Roboto', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --ds-lfa-font-secondary: 'B3 Sans Text', 'Roboto', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  --ds-lfa-font-text:  'Roboto', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; 
  
  --ds-lfa-font-weight-light: 300;
  --ds-lfa-font-weight-regular: 400;
  --ds-lfa-font-weight-medium: 500;
  --ds-lfa-font-weight-bold: 700;
  --ds-lfa-font-weight-black: 900;

  --ds-lfa-font-size-xs: 12px;
  --ds-lfa-font-size-sm: 14px;
  --ds-lfa-font-size-base: 16px;
  --ds-lfa-font-size-lg: 18px;
  --ds-lfa-font-size-xl: 20px;
  --ds-lfa-font-size-2xl: 24px;
  --ds-lfa-font-size-2xxl: 28px;
  --ds-lfa-font-size-3xl: 32px;
  --ds-lfa-font-size-4xl: 48px;
  --ds-lfa-font-size-5xl: 50px;
  
  --ds-lfa-line-height-tight: 1.0;
  --ds-lfa-line-height-snug: 1.15;
  --ds-lfa-line-height-form: 36px;
  --ds-lfa-line-height-normal: 1.5;
  --ds-lfa-line-height-relaxed: 1.625;
  --ds-lfa-line-height-button: 20px;
  --ds-lfa-line-height-full: 100%;
  --ds-lfa-line-height-mobile-h3: 32px;
  --ds-lfa-line-height-text-bold: 24px;
  --ds-lfa-line-height-heading-small: 28px;

  --ds-lfa-letter-spacing-tight: -1.5%;
  --ds-lfa-letter-spacing-normal: 0%;
  --ds-lfa-letter-spacing-zero: 0px;
  --ds-lfa-letter-spacing-narrow: 0.2%;
  --ds-lfa-letter-spacing-wide: 2%;
  --ds-lfa-letter-spacing-button: 0.32px;
  --ds-lfa-letter-spacing-text-bold: -0.31px;
  --ds-lfa-letter-spacing-img-desc: 0.2px;

  /* Espaçamento */
  --ds-lfa-spacing-xs: 4px;
  --ds-lfa-spacing-xxs: 6px;
  --ds-lfa-spacing-sm: 8px;
  --ds-lfa-spacing-ssm: 10px;
  --ds-lfa-spacing-md: 16px;
  --ds-lfa-spacing-lg: 24px;
  --ds-lfa-spacing-xl: 32px;
  --ds-lfa-spacing-1xl: 44px;
  --ds-lfa-spacing-2xl: 48px;
  --ds-lfa-spacing-3xl: 64px;
  --ds-lfa-spacing-4xl: 80px;
  --ds-lfa-spacing-5xl: 160px;

  --ds-lfa-container-padding: 24px;
  --ds-lfa-container-max-width: 1366px;

  --ds-lfa-radius-sm: 4px;
  --ds-lfa-radius-md: 8px;
  --ds-lfa-radius-lg: 12px;
  --ds-lfa-radius-xl: 16px;
  --ds-lfa-radius-2xl: 24px;
  --ds-lfa-radius-full: 100px;
  
  /* Breakpoints */
  --ds-lfa-breakpoint-sm: 640px;
  --ds-lfa-breakpoint-md: 768px;
  --ds-lfa-breakpoint-lg: 1024px;
  --ds-lfa-breakpoint-xl: 1280px;
  --ds-lfa-breakpoint-2xl: 1536px;
  
  /* Transições e Sombras */
  --ds-lfa-transition-fast: 150ms ease-in-out;
  --ds-lfa-transition-base: 300ms ease-in-out;
  --ds-lfa-transition-slow: 500ms ease-in-out;
  --ds-lfa-shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
  --ds-lfa-shadow-md: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
  --ds-lfa-shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, 0.1);
  --ds-lfa-shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, 0.1);
  
  /* Cores DS legadas - Legacy */
  --ds-lfa-solid-yellow-50: #fffae8;
  --ds-lfa-solid-yellow-100: #ffeeb6;
  --ds-lfa-solid-yellow-200: #ffe693;
  --ds-lfa-solid-yellow-300: #ffdb62;
  --ds-lfa-solid-yellow-400: #ffd443;
  --ds-lfa-solid-yellow-500: #ffc914;
  --ds-lfa-solid-yellow-600: #e8b712;
  --ds-lfa-solid-yellow-700: #b58f0e;
  --ds-lfa-solid-yellow-800: #8c6f0b;
  --ds-lfa-solid-yellow-900: #6b5408;
  --ds-lfa-solid-gold-50: #faf9ea;
  --ds-lfa-solid-gold-100: #efecbf;
  --ds-lfa-solid-gold-200: #e7e39f;
  --ds-lfa-solid-gold-300: #dbd774;
  --ds-lfa-solid-gold-400: #d5cf59;
  --ds-lfa-solid-gold-500: #cac32f;
  --ds-lfa-solid-gold-600: #b8b12b;
  --ds-lfa-solid-gold-700: #8f8a21;
  --ds-lfa-solid-gold-800: #6f6b1a;
  --ds-lfa-solid-gold-900: #555214;
  --ds-lfa-solid-pink-50: #ffecf5;
  --ds-lfa-solid-pink-100: #ffc4e0;
  --ds-lfa-solid-pink-200: #ffa7d1;
  --ds-lfa-solid-pink-300: #ff7fbd;
  --ds-lfa-solid-pink-400: #ff66b0;
  --ds-lfa-solid-pink-500: #ff409c;
  --ds-lfa-solid-pink-600: #e83a8e;
  --ds-lfa-solid-pink-700: #b52d6f;
  --ds-lfa-solid-pink-800: #8c2356;
  --ds-lfa-solid-pink-900: #6b1b42;
  --ds-lfa-solid-green-light-50: #eef7e9;
  --ds-lfa-solid-green-light-100: #cae7bb;
  --ds-lfa-solid-green-light-200: #b0dc9a;
  --ds-lfa-solid-green-light-300: #8ccc6c;
  --ds-lfa-solid-green-light-400: #75c250;
  --ds-lfa-solid-green-light-500: #53b324;
  --ds-lfa-solid-green-light-600: #4ca321;
  --ds-lfa-solid-green-light-700: #3b7f1a;
  --ds-lfa-solid-green-light-800: #2e6214;
  --ds-lfa-solid-green-light-900: #234b0f;
  --ds-lfa-solid-green-50: #e6f3ee;
  --ds-lfa-solid-green-100: #b0dac9;
  --ds-lfa-solid-green-200: #8ac8af;
  --ds-lfa-solid-green-300: #54af8a;
  --ds-lfa-solid-green-400: #339f73;
  --ds-lfa-solid-green-500: #008750;
  --ds-lfa-solid-green-600: #007b49;
  --ds-lfa-solid-green-700: #006039;
  --ds-lfa-solid-green-800: #004a2c;
  --ds-lfa-solid-green-900: #003922;
  --ds-lfa-solid-oxford-blue-50: #e7e9ec;
  --ds-lfa-solid-oxford-blue-100: #b3bbc4;
  --ds-lfa-solid-oxford-blue-200: #8e9aa8;
  --ds-lfa-solid-oxford-blue-300: #5b6c80;
  --ds-lfa-solid-oxford-blue-400: #3b4f68;
  --ds-lfa-solid-oxford-blue-500: #0a2342;
  --ds-lfa-solid-oxford-blue-600: #09203c;
  --ds-lfa-solid-oxford-blue-700: #07192f;
  --ds-lfa-solid-oxford-blue-800: #061324;
  --ds-lfa-solid-oxford-blue-900: #040f1c;
  --ds-lfa-solid-flame-50: #fceeea;
  --ds-lfa-solid-flame-100: #f7cbbe;
  --ds-lfa-solid-flame-200: #f3b29f;
  --ds-lfa-solid-flame-300: #ed8e73;
  --ds-lfa-solid-flame-400: #e97958;
  --ds-lfa-solid-flame-500: #e4572e;
  --ds-lfa-solid-flame-600: #cf4f2a;
  --ds-lfa-solid-flame-700: #a23e21;
  --ds-lfa-solid-flame-800: #7d3019;
  --ds-lfa-solid-flame-900: #602513;
  --ds-lfa-solid-white-50: #ffffff;
  --ds-lfa-solid-white-100: #fefefe;
  --ds-lfa-solid-white-200: #fdfdfd;
  --ds-lfa-solid-white-300: #fcfcfc;
  --ds-lfa-solid-white-400: #fbfbfb;
  --ds-lfa-solid-white-500: #fafafa;
  --ds-lfa-solid-white-600: #f9f9f9;
  --ds-lfa-solid-white-700: #f8f8f8;
  --ds-lfa-solid-white-800: #f7f7f7;
  --ds-lfa-solid-white-900: #f6f6f6;
  --ds-lfa-solid-blue-deep-50: #e9ebf0;
  --ds-lfa-solid-blue-deep-100: #bcc0d1;
  --ds-lfa-solid-blue-deep-200: #9ba1ba;
  --ds-lfa-solid-blue-deep-300: #6e769b;
  --ds-lfa-solid-blue-deep-400: #515c87;
  --ds-lfa-solid-blue-deep-500: #263369;
  --ds-lfa-solid-blue-deep-600: #232e60;
  --ds-lfa-solid-blue-deep-700: #1b244b;
  --ds-lfa-solid-blue-deep-800: #151c3a;
  --ds-lfa-solid-blue-deep-900: #10152c;
  --ds-lfa-solid-purple-50: #ede6f1;
  --ds-lfa-solid-purple-100: #c7b0d4;
  --ds-lfa-solid-purple-200: #ac8abf;
  --ds-lfa-solid-purple-300: #8654a2;
  --ds-lfa-solid-purple-400: #6e3390;
  --ds-lfa-solid-purple-500: #4a0074;
  --ds-lfa-solid-purple-600: #43006a;
  --ds-lfa-solid-purple-700: #350052;
  --ds-lfa-solid-purple-800: #290040;
  --ds-lfa-solid-purple-900: #1f0031;
  --ds-lfa-solid-black-50: #e6e6e6;
  --ds-lfa-solid-black-100: #b0b0b0;
  --ds-lfa-solid-black-200: #8a8a8a;
  --ds-lfa-solid-black-300: #545454;
  --ds-lfa-solid-black-400: #333333;
  --ds-lfa-solid-black-500: #0F172B;
  --ds-lfa-solid-black-600: #000000;
  --ds-lfa-solid-black-700: #000000;
  --ds-lfa-solid-black-800: #000000;
  --ds-lfa-solid-black-900: #000000;
  --ds-lfa-solid-red-50: #faece6;
  --ds-lfa-solid-red-100: #efc1b0;
  --ds-lfa-solid-red-200: #e7a28a;
  --ds-lfa-solid-red-300: #dc7854;
  --ds-lfa-solid-red-400: #d55d33;
  --ds-lfa-solid-red-500: #cc3300;
  --ds-lfa-solid-red-600: #ba2e00;
  --ds-lfa-solid-red-700: #912400;
  --ds-lfa-solid-red-800: #701c00;
  --ds-lfa-solid-red-900: #561500;
  --ds-lfa-solid-orange-50: #fff5e6;
  --ds-lfa-solid-orange-100: #ffdeb0;
  --ds-lfa-solid-orange-200: #ffce8a;
  --ds-lfa-solid-orange-300: #ffb754;
  --ds-lfa-solid-orange-400: #ffa933;
  --ds-lfa-solid-orange-500: #ff9400;
  --ds-lfa-solid-orange-600: #e88700;
  --ds-lfa-solid-orange-700: #b56900;
  --ds-lfa-solid-orange-800: #8c5100;
  --ds-lfa-solid-orange-900: #6b3e00;
  --ds-lfa-plated-light-green-light-50: rgba(83, 179, 36, 0.04);
  --ds-lfa-plated-light-green-light-100: rgba(83, 179, 36, 0.08);
  --ds-lfa-plated-light-green-light-200: rgba(83, 179, 36, 0.12);
  --ds-lfa-plated-light-green-light-300: rgba(83, 179, 36, 0.16);
  --ds-lfa-plated-light-green-light-400: rgba(83, 179, 36, 0.2);
  --ds-lfa-plated-light-green-light-500: rgba(83, 179, 36, 0.24);
  --ds-lfa-plated-light-green-light-600: rgba(83, 179, 36, 0.32);
  --ds-lfa-plated-light-green-light-700: rgba(83, 179, 36, 0.38);
  --ds-lfa-plated-light-green-light-710: rgba(83, 179, 36, 0.1);
  --ds-lfa-plated-light-green-light-800: rgba(83, 179, 36, 0.46);
  --ds-lfa-plated-light-green-light-900: rgba(83, 179, 36, 0.6);
  --ds-lfa-plated-yellow-light-50: rgba(255, 201, 20, 0.04);
  --ds-lfa-plated-yellow-light-100: rgba(255, 201, 20, 0.08);
  --ds-lfa-plated-yellow-light-200: rgba(255, 201, 20, 0.12);
  --ds-lfa-plated-yellow-light-300: rgba(255, 201, 20, 0.16);
  --ds-lfa-plated-yellow-light-400: rgba(255, 201, 20, 0.2);
  --ds-lfa-plated-yellow-light-500: rgba(255, 201, 20, 0.24);
  --ds-lfa-plated-yellow-light-600: rgba(255, 201, 20, 0.32);
  --ds-lfa-plated-yellow-light-700: rgba(255, 201, 20, 0.38);
  --ds-lfa-plated-yellow-light-800: rgba(255, 201, 20, 0.46);
  --ds-lfa-plated-yellow-light-900: rgba(255, 201, 20, 0.6);
  --ds-lfa-plated-yellow-dark-50: rgba(255, 201, 20, 0.04);
  --ds-lfa-plated-yellow-dark-100: rgba(255, 201, 20, 0.08);
  --ds-lfa-plated-yellow-dark-200: rgba(255, 201, 20, 0.12);
  --ds-lfa-plated-yellow-dark-300: rgba(255, 201, 20, 0.16);
  --ds-lfa-plated-yellow-dark-400: rgba(255, 201, 20, 0.2);
  --ds-lfa-plated-yellow-dark-500: rgba(255, 201, 20, 0.24);
  --ds-lfa-plated-yellow-dark-600: rgba(255, 201, 20, 0.32);
  --ds-lfa-plated-yellow-dark-700: rgba(255, 201, 20, 0.38);
  --ds-lfa-plated-yellow-dark-800: rgba(255, 201, 20, 0.46);
  --ds-lfa-plated-yellow-dark-900: rgba(255, 201, 20, 0.6);
  --ds-lfa-transparent-black-50: rgba(0, 0, 0, 0.04);
  --ds-lfa-transparent-black-100: rgba(0, 0, 0, 0.08);
  --ds-lfa-transparent-black-200: rgba(0, 0, 0, 0.12);
  --ds-lfa-transparent-black-300: rgba(0, 0, 0, 0.16);
  --ds-lfa-transparent-black-400: rgba(0, 0, 0, 0.2);
  --ds-lfa-transparent-black-500: rgba(0, 0, 0, 0.24);
  --ds-lfa-transparent-black-600: rgba(0, 0, 0, 0.32);
  --ds-lfa-transparent-black-700: rgba(0, 0, 0, 0.38);
  --ds-lfa-transparent-black-800: rgba(0, 0, 0, 0.46);
  --ds-lfa-transparent-black-900: rgba(0, 0, 0, 0.6);
  --ds-lfa-transparent-white-50: rgba(255, 255, 255, 0.04);
  --ds-lfa-transparent-white-100: rgba(255, 255, 255, 0.08);
  --ds-lfa-transparent-white-200: rgba(255, 255, 255, 0.12);
  --ds-lfa-transparent-white-300: rgba(255, 255, 255, 0.16);
  --ds-lfa-transparent-white-400: rgba(255, 255, 255, 0.2);
  --ds-lfa-transparent-white-500: rgba(255, 255, 255, 0.24);
  --ds-lfa-transparent-white-600: rgba(255, 255, 255, 0.32);
  --ds-lfa-transparent-white-700: rgba(255, 255, 255, 0.38);
  --ds-lfa-transparent-white-800: rgba(255, 255, 255, 0.46);
  --ds-lfa-transparent-white-900: rgba(255, 255, 255, 0.6);
}

/* ==========================================================================
   RESET & BASE
   ========================================================================== */

*,
*::before,
*::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html {
  font-size: 16px;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

body {
  font-family: var(--ds-lfa-font-primary);
  font-weight: var(--ds-lfa-font-weight-regular);
  font-size: var(--ds-lfa-font-size-base);
  line-height: var(--ds-lfa-line-height-normal);
  color: var(--ds-lfa-color-neutral-dark);
}

body,
h1,
h2,
h3,
h4,
h5,
p,
figure,
blockquote,
dl,
dd {
  margin: 0;
  padding: 0;
}

button,
a {
  cursor: pointer;
  margin: 0;
  padding: 0;
  border: 0;
  width: auto;
  overflow: visible;

  background: transparent;

  color: inherit;
}

a:hover {
  text-decoration: none;
  color: unset;
}

ul,
ol,
li {
  list-style: none;
  margin: initial;
  padding: initial;
}

/* ==========================================================================
   ACESSIBILIDADE
   ========================================================================== */

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border-width: 0;
}

/* ==========================================================================
   TIPOGRAFIA
   ========================================================================== */

.ds-lfa-heading-1 {
  font-family: var(--ds-lfa-font-primary);
  font-weight: var(--ds-lfa-font-weight-black);
  font-size: var(--ds-lfa-font-size-5xl);
  line-height: var(--ds-lfa-line-height-snug);
  letter-spacing: var(--ds-lfa-letter-spacing-tight);
  text-transform: uppercase;
}

.ds-lfa-heading-2 {
  font-family: var(--ds-lfa-font-primary);
  font-weight: var(--ds-lfa-font-weight-bold);
  font-size: var(--ds-lfa-font-size-2xl);
  line-height: 1.2;
  letter-spacing: -1.2%;
  text-align: center;
  text-transform: uppercase;
}

.ds-lfa-heading-3 {
  font-family: var(--ds-lfa-font-primary);
  font-weight: var(--ds-lfa-font-weight-bold);
  font-size: var(--ds-lfa-font-size-3xl);
  line-height: var(--ds-lfa-line-height-snug);
  letter-spacing: var(--ds-lfa-letter-spacing-tight);
  text-transform: uppercase;
}

.ds-lfa-subtitle {
  font-family: var(--ds-lfa-font-primary);
  font-weight: var(--ds-lfa-font-weight-regular);
  font-size: var(--ds-lfa-font-size-base);
  line-height: var(--ds-lfa-line-height-snug);
  letter-spacing: var(--ds-lfa-letter-spacing-normal);
}

.ds-lfa-banner-title {
  font-family: var(--ds-lfa-font-primary);
  font-weight: var(--ds-lfa-font-weight-bold);
  font-size: var(--ds-lfa-font-size-3xl);
  line-height: var(--ds-lfa-line-height-full);
  letter-spacing: var(--ds-lfa-letter-spacing-zero);
  text-align: center;
}

.ds-lfa-subtitle-banner {
  font-family: var(--ds-lfa-font-primary);
  font-weight: var(--ds-lfa-font-weight-regular);
  font-style: normal;
  font-size: 20px;
  line-height: 24px;
  letter-spacing: 0%;
}

.ds-lfa-content-text {
  font-family: var(--ds-lfa-font-primary);
  font-weight: var(--ds-lfa-font-weight-regular);
  font-size: var(--ds-lfa-font-size-xl);
  line-height: var(--ds-lfa-line-height-form);
  letter-spacing: var(--ds-lfa-letter-spacing-normal);
  text-align: start;
}

.ds-lfa-banner-desc {
  font-family: var(--ds-lfa-font-primary);
  font-weight: var(--ds-lfa-font-weight-regular);
  font-size: var(--ds-lfa-font-size-base);
  line-height: var(--ds-lfa-line-height-snug);
  letter-spacing: var(--ds-lfa-letter-spacing-normal);
}

.ds-lfa-card-title {
  font-family: var(--ds-lfa-font-primary);
  font-weight: var(--ds-lfa-font-weight-regular);
  font-size: var(--ds-lfa-font-size-xl);
  line-height: 30px;
  letter-spacing: var(--ds-lfa-letter-spacing-normal);
}

.ds-lfa-card-subtitle {
  font-family: var(--ds-lfa-font-primary);
  font-weight: var(--ds-lfa-font-weight-regular);
  font-size: var(--ds-lfa-font-size-sm);
  line-height: 22.75px;
  letter-spacing: var(--ds-lfa-letter-spacing-normal);
}

.ds-lfa-card-btn-label {
  font-family: var(--ds-lfa-font-primary);
  font-weight: var(--ds-lfa-font-weight-regular);
  font-size: var(--ds-lfa-font-size-sm);
  line-height: 22.75px;
  letter-spacing: var(--ds-lfa-letter-spacing-normal);
}

.ds-lfa-btn-label {
  font-family: var(--ds-lfa-font-text);
  font-weight: var(--ds-lfa-font-weight-medium);
  font-size: var(--ds-lfa-font-size-sm);
  line-height: 20px;
  letter-spacing: var(--ds-lfa-letter-spacing-wide);
  text-align: center;
  vertical-align: middle;
}

.ds-lfa-card-highlight {
  font-family: var(--ds-lfa-font-primary);
  font-weight: var(--ds-lfa-font-weight-bold);
  font-size: var(--ds-lfa-font-size-4xl);
  line-height: 57.6px;
  letter-spacing: var(--ds-lfa-letter-spacing-normal);
  vertical-align: middle;
}

.ds-lfa-card-highlight-subtitle {
  font-family: var(--ds-lfa-font-primary);
  font-weight: var(--ds-lfa-font-weight-regular);
  font-size: var(--ds-lfa-font-size-base);
  line-height: 22.4px;
  letter-spacing: var(--ds-lfa-letter-spacing-normal);
  vertical-align: middle;
}

.ds-lfa-card-title-alt {
  font-family: var(--ds-lfa-font-primary);
  font-weight: var(--ds-lfa-font-weight-bold);
  font-size: var(--ds-lfa-font-size-xl);
  line-height: var(--ds-lfa-line-height-tight);
  letter-spacing: var(--ds-lfa-letter-spacing-normal);
  text-transform: uppercase;
}

.ds-lfa-card-subtitle-alt {
  font-family: var(--ds-lfa-font-primary);
  font-weight: var(--ds-lfa-font-weight-regular);
  font-size: var(--ds-lfa-font-size-sm);
  line-height: var(--ds-lfa-line-height-tight);
  letter-spacing: var(--ds-lfa-letter-spacing-normal);
}

.ds-lfa-card-title-tertiary {
  font-family: var(--ds-lfa-font-primary);
  font-weight: var(--ds-lfa-font-weight-regular);
  font-size: var(--ds-lfa-font-size-xl);
  line-height: 24px;
  letter-spacing: var(--ds-lfa-letter-spacing-normal);
  text-align: center;
}

.ds-lfa-footer-link {
  font-family: var(--ds-lfa-font-primary);
  font-weight: var(--ds-lfa-font-weight-light);
  font-size: var(--ds-lfa-font-size-sm);
  line-height: var(--ds-lfa-line-height-normal);
  letter-spacing: var(--ds-lfa-letter-spacing-normal);
  color: var(--ds-lfa-color-neutral-600);
  text-decoration: none;
  transition: color var(--ds-lfa-transition-fast);
}

.ds-lfa-footer-link:hover {
  color: var(--ds-lfa-color-primary);
}

.ds-lfa-footer-data {
  font-family: var(--ds-lfa-font-primary);
  font-weight: var(--ds-lfa-font-weight-regular);
  font-size: var(--ds-lfa-font-size-base);
  line-height: var(--ds-lfa-line-height-tight);
  letter-spacing: var(--ds-lfa-letter-spacing-normal);
  vertical-align: middle;
}

.ds-lfa-form-field {
  font-family: var(--ds-lfa-font-text);
  font-weight: var(--ds-lfa-font-weight-regular);
  font-size: var(--ds-lfa-font-size-sm);
  line-height: 1.1;
  letter-spacing: var(--ds-lfa-letter-spacing-normal);
}

.ds-lfa-form-placeholder {
  font-family: var(--ds-lfa-font-text);
  font-weight: var(--ds-lfa-font-weight-regular);
  font-size: var(--ds-lfa-font-size-sm);
  line-height: 20px;
  letter-spacing: var(--ds-lfa-letter-spacing-normal);
  vertical-align: middle;
  color: var(--ds-lfa-color-neutral-400);
}

.ds-lfa-form-contact {
  font-family: var(--ds-lfa-font-primary);
  font-weight: var(--ds-lfa-font-weight-medium);
  font-size: var(--ds-lfa-font-size-lg);
  line-height: var(--ds-lfa-line-height-tight);
  letter-spacing: var(--ds-lfa-letter-spacing-normal);
}

.ds-lfa-form-title {
  font-family: var(--ds-lfa-font-primary);
  font-weight: var(--ds-lfa-font-weight-bold);
  font-size: var(--ds-lfa-font-size-2xxl);
  line-height: var(--ds-lfa-line-height-form);
  letter-spacing: var(--ds-lfa-letter-spacing-normal);
}

.ds-lfa-desc-highlight {
  font-family: var(--ds-lfa-font-primary);
  font-weight: var(--ds-lfa-font-weight-regular);
  font-size: var(--ds-lfa-font-size-base);
  line-height: var(--ds-lfa-line-height-snug);
  letter-spacing: var(--ds-lfa-letter-spacing-normal);
  vertical-align: middle;
}

.ds-lfa-text-bold {
  font-family: var(--ds-lfa-font-text);
  font-weight: var(--ds-lfa-font-weight-bold);
  font-size: var(--ds-lfa-font-size-base);
  line-height: var(--ds-lfa-line-height-text-bold);
  letter-spacing: var(--ds-lfa-letter-spacing-text-bold);
}

.ds-lfa-img-desc {
  font-family: var(--ds-lfa-font-primary);
  font-weight: var(--ds-lfa-font-weight-medium);
  font-size: var(--ds-lfa-font-size-base);
  line-height: var(--ds-lfa-line-height-button);
  letter-spacing: var(--ds-lfa-letter-spacing-img-desc);
}

.ds-lfa-heading-black {
  font-family: var(--ds-lfa-font-secondary);
  font-weight: var(--ds-lfa-font-weight-black);
  font-size: var(--ds-lfa-font-size-3xl);
  line-height: var(--ds-lfa-line-height-form);
  letter-spacing: var(--ds-lfa-letter-spacing-zero);
}

.ds-lfa-heading-small-black {
  font-family: var(--ds-lfa-font-secondary);
  font-weight: var(--ds-lfa-font-weight-black);
  font-size: var(--ds-lfa-font-size-xl);
  line-height: var(--ds-lfa-line-height-heading-small);
}

.ds-lfa-text-medium {
  font-family: var(--ds-lfa-font-text);
  font-weight: var(--ds-lfa-font-weight-medium);
  font-size: var(--ds-lfa-font-size-sm);
  line-height: var(--ds-lfa-line-height-button);
  letter-spacing: var(--ds-lfa-letter-spacing-narrow);
}

/* ==========================================================================
   CORES
   ========================================================================== */

.ds-lfa-text-primary { color: var(--ds-lfa-color-primary); }
.ds-lfa-text-primary-opacity { color: var(--ds-lfa-color-primary-opacity); }
.ds-lfa-text-secondary { color: var(--ds-lfa-color-secondary); }
.ds-lfa-text-accent { color: var(--ds-lfa-color-accent); }
.ds-lfa-text-dark { color: var(--ds-lfa-color-neutral-dark); }
.ds-lfa-text-gray-900 { color: var(--ds-lfa-color-neutral-900); }
.ds-lfa-text-gray-700 { color: var(--ds-lfa-color-neutral-700); }
.ds-lfa-text-gray-800 { color: var(--ds-lfa-color-neutral-800); }
.ds-lfa-text-gray-600 { color: var(--ds-lfa-color-neutral-600); }
.ds-lfa-text-gray-400 { color: var(--ds-lfa-color-neutral-400); }
.ds-lfa-text-white { color: var(--ds-lfa-color-white); }
.ds-lfa-text-white-solid { color: var(--ds-lfa-color-white-solid); }
.ds-lfa-text-white-light { color: var(--ds-lfa-color-white-70); }

.ds-lfa-bg-primary { background-color: var(--ds-lfa-color-primary); }
.ds-lfa-bg-primary-opacity { background-color: var(--ds-lfa-color-primary-opacity); }
.ds-lfa-bg-secondary { background-color: var(--ds-lfa-color-secondary); }
.ds-lfa-bg-accent { background-color: var(--ds-lfa-color-accent); }
.ds-lfa-bg-dark { background-color: var(--ds-lfa-color-neutral-dark); }
.ds-lfa-bg-gray-200 { background-color: var(--ds-lfa-color-neutral-200); }
.ds-lfa-bg-gray-100 { background-color: var(--ds-lfa-color-neutral-100); }
.ds-lfa-bg-white { background-color: var(--ds-lfa-color-white-solid); }
.ds-lfa-bg-white-solid { background-color: var(--ds-lfa-color-white-solid); }
.ds-lfa-bg-white-light { background-color: var(--ds-lfa-color-white-70); }

.ds-lfa-bg-gradient-dark {
  background: linear-gradient(135deg, var(--ds-lfa-color-gradient-start) 0%, var(--ds-lfa-color-gradient-end) 100%);
}

/* ==========================================================================
   LAYOUT
   ========================================================================== */

/* Prevenir overflow horizontal no body/html */
body {
  overflow-x: hidden;
}

.ds-lfa-container {
  width: 100%;
  max-width: var(--ds-lfa-container-max-width);
  margin-left: auto;
  margin-right: auto;
  padding-left: var(--ds-lfa-container-padding);
  padding-right: var(--ds-lfa-container-padding);
}

/* Centralizar os banners e conteúdos, e o banner ocupar a largura total da tela */
.ds-lfa-center-banner {
  width: 100vw;
  position: relative;
  left: 50%;
  right: 50%;
  margin-left: -50vw;
  margin-right: -50vw;
  padding-left: var(--ds-lfa-container-padding);
  padding-right: var(--ds-lfa-container-padding);
  box-sizing: border-box;
  display: flex;
  justify-content: center;
}

/* Limitar a largura do conteúdo para funcionar a centralização dos banners */
.ds-lfa-limit-width {
  max-width: var(--ds-lfa-container-max-width);
  width: 100%;
}

/* ==========================================================================
   CONTENT SPACING
   ========================================================================== */

.ds-lfa-tight-content-spacing {
  padding-right: var(--ds-lfa-spacing-4xl);
  padding-left: var(--ds-lfa-spacing-4xl);
}

.ds-lfa-short-content-spacing {
  padding-right: var(--ds-lfa-spacing-5xl);
  padding-left: var(--ds-lfa-spacing-5xl);
}

/* ==========================================================================
   GRID & FLEXBOX
   ========================================================================== */

.ds-lfa-grid-sm {
  display: grid;
  gap: var(--ds-lfa-spacing-sm);
}

.ds-lfa-grid {
  display: grid;
  gap: var(--ds-lfa-spacing-lg);
}

.ds-lfa-grid-xl {
  display: grid;
  gap: var(--ds-lfa-spacing-xl);
}

.ds-lfa-grid-cols-1 { grid-template-columns: repeat(1, minmax(0, 1fr)); }
.ds-lfa-grid-cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.ds-lfa-grid-cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.ds-lfa-grid-cols-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }

.ds-lfa-flex { display: flex; }
.ds-lfa-flex-col { flex-direction: column; }
.ds-lfa-flex-wrap { flex-wrap: wrap; }
.ds-lfa-items-center { align-items: center; }
.ds-lfa-items-start { align-items: flex-start; }
.ds-lfa-items-end { align-items: flex-end; }
.ds-lfa-justify-center { justify-content: center; }
.ds-lfa-justify-between { justify-content: space-between; }
.ds-lfa-justify-around { justify-content: space-around; }
.ds-lfa-gap-sm { gap: var(--ds-lfa-spacing-sm); }
.ds-lfa-gap-md { gap: var(--ds-lfa-spacing-md); }
.ds-lfa-gap-lg { gap: var(--ds-lfa-spacing-lg); }

.ds-lfa-m-0 { margin: 0; }
.ds-lfa-mt-sm { margin-top: var(--ds-lfa-spacing-sm); }
.ds-lfa-mt-md { margin-top: var(--ds-lfa-spacing-md); }
.ds-lfa-mt-lg { margin-top: var(--ds-lfa-spacing-lg); }
.ds-lfa-mt-xl { margin-top: var(--ds-lfa-spacing-xl); }
.ds-lfa-mt-2xl { margin-top: var(--ds-lfa-spacing-2xl); }
.ds-lfa-mb-sm { margin-bottom: var(--ds-lfa-spacing-sm); }
.ds-lfa-mb-md { margin-bottom: var(--ds-lfa-spacing-md); }
.ds-lfa-mb-lg { margin-bottom: var(--ds-lfa-spacing-lg); }
.ds-lfa-mb-xl { margin-bottom: var(--ds-lfa-spacing-xl); }
.ds-lfa-mb-2xl { margin-bottom: var(--ds-lfa-spacing-2xl); }

.ds-lfa-p-0 { padding: 0; }
.ds-lfa-p-sm { padding: var(--ds-lfa-spacing-sm); }
.ds-lfa-p-md { padding: var(--ds-lfa-spacing-md); }
.ds-lfa-p-lg { padding: var(--ds-lfa-spacing-lg); }
.ds-lfa-p-xl { padding: var(--ds-lfa-spacing-xl); }

/* ==========================================================================
   BOTÕES
   ========================================================================== */

.ds-lfa-btn-primary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 12px var(--ds-lfa-spacing-md);
  gap: var(--ds-lfa-spacing-xs);
  background-color: var(--ds-lfa-color-secondary);
  color: var(--ds-lfa-color-white-solid);
  border: none;
  border-radius: var(--ds-lfa-radius-2xl);
  font-family: var(--ds-lfa-font-text);
  font-weight: var(--ds-lfa-font-weight-medium);
  font-size: var(--ds-lfa-font-size-base);
  line-height: var(--ds-lfa-line-height-button);
  letter-spacing: var(--ds-lfa-letter-spacing-button);
  text-decoration: none;
  word-wrap: break-word;
  cursor: pointer;
  opacity: 1;
  transition: all var(--ds-lfa-transition-base);
}

.ds-lfa-btn-primary:hover {
  color: var(--ds-lfa-color-white-solid);
  background-color: var(--ds-lfa-color-neutral-dark);
}

.ds-lfa-btn-secondary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 12px var(--ds-lfa-spacing-md);
  gap: var(--ds-lfa-spacing-xs);
  background-color: var(--ds-lfa-color-white-solid);
  color: var(--ds-lfa-color-secondary);
  border: none;
  border-radius: var(--ds-lfa-radius-2xl);
  font-family: var(--ds-lfa-font-text);
  font-weight: var(--ds-lfa-font-weight-medium);
  font-size: var(--ds-lfa-font-size-base);
  line-height: var(--ds-lfa-line-height-button);
  letter-spacing: var(--ds-lfa-letter-spacing-button);
  text-decoration: none;
  word-wrap: break-word;
  cursor: pointer;
  opacity: 1;
  transition: all var(--ds-lfa-transition-base);
}

.ds-lfa-btn-secondary:hover {
  background-color: var(--ds-lfa-color-neutral-50);
  color: var(--ds-lfa-color-secondary);
}

.ds-lfa-btn-tertiary {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: var(--ds-lfa-spacing-md) var(--ds-lfa-spacing-md);
  gap: var(--ds-lfa-spacing-xs);
  background-color: var(--ds-lfa-color-accent);
  color: var(--ds-lfa-color-neutral-dark);
  border: none;
  border-radius: var(--ds-lfa-radius-2xl);
  font-family: var(--ds-lfa-font-text);
  font-weight: var(--ds-lfa-font-weight-medium);
  font-size: var(--ds-lfa-font-size-base);
  line-height: var(--ds-lfa-line-height-button);
  letter-spacing: var(--ds-lfa-letter-spacing-button);
  text-decoration: none;
  word-wrap: break-word;
  cursor: pointer;
  opacity: 1;
  transition: all var(--ds-lfa-transition-base);
}

.ds-lfa-btn-tertiary:hover {
  background-color: var(--ds-lfa-color-accent-hover);
  color: var(--ds-lfa-color-neutral-dark);
}

.ds-lfa-btn-ghost {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: var(--ds-lfa-spacing-md) var(--ds-lfa-spacing-md);
  gap: var(--ds-lfa-spacing-xs);
  background-color: transparent;
  color: var(--ds-lfa-color-white-solid);
  border: 1px solid var(--ds-lfa-color-white-solid);
  border-radius: var(--ds-lfa-radius-2xl);
  font-family: var(--ds-lfa-font-text);
  font-weight: var(--ds-lfa-font-weight-medium);
  font-size: var(--ds-lfa-font-size-base);
  line-height: var(--ds-lfa-line-height-button);
  letter-spacing: var(--ds-lfa-letter-spacing-button);
  text-decoration: none;
  word-wrap: break-word;
  cursor: pointer;
  opacity: 1;
  transition: all var(--ds-lfa-transition-base);
}

.ds-lfa-btn-ghost:hover {
  background-color: var(--ds-lfa-color-neutral-50-opacity);
  border: 1px solid var(--ds-lfa-color-neutral-50);
  color: var(--ds-lfa-color-neutral-50);
}

.ds-lfa-btn-light {
  display: inline-flex;
  align-items: center;
  padding: 12px 0;
  background-color: transparent;
  color: var(--ds-lfa-color-primary);
  border: none;
  border-radius: var(--ds-lfa-radius-2xl);
  font-family: var(--ds-lfa-font-text);
  font-weight: var(--ds-lfa-font-weight-medium);
  font-size: var(--ds-lfa-font-size-base);
  line-height: var(--ds-lfa-line-height-button);
  letter-spacing: var(--ds-lfa-letter-spacing-button);
  text-decoration: none;
  word-wrap: break-word;
  cursor: pointer;
  opacity: 1;
  transition: all var(--ds-lfa-transition-base);
}

.ds-lfa-btn-light:hover {
  padding: 12px var(--ds-lfa-spacing-md);
  background-color: var(--ds-lfa-color-ghost-hover);
}

.ds-lfa-btn-dark {
  display: inline-flex;
  align-items: center;
  padding: 12px 0;
  background-color: transparent;
  color: var(--ds-lfa-color-white-solid);
  border: none;
  border-radius: var(--ds-lfa-radius-2xl);
  font-family: var(--ds-lfa-font-text);
  font-weight: var(--ds-lfa-font-weight-medium);
  font-size: var(--ds-lfa-font-size-base);
  line-height: var(--ds-lfa-line-height-button);
  letter-spacing: var(--ds-lfa-letter-spacing-button);
  text-decoration: none;
  word-wrap: break-word;
  cursor: pointer;
  opacity: 1;
  transition: all var(--ds-lfa-transition-base);
}

.ds-lfa-btn-dark:hover {
  padding: 12px var(--ds-lfa-spacing-md);
  background-color: var(--ds-lfa-color-white-14);
  color: var(--ds-lfa-color-white-solid);
}

.ds-lfa-btn-sm {
  padding: 8px 16px;
  font-size: var(--ds-lfa-font-size-xs);
}

.ds-lfa-btn-lg {
  padding: 16px 32px;
  font-size: var(--ds-lfa-font-size-base);
}

.ds-lfa-btn-disabled,
.ds-lfa-btn-primary:disabled,
.ds-lfa-btn-secondary:disabled,
.ds-lfa-btn-tertiary:disabled,
.ds-lfa-btn-outline:disabled,
.ds-lfa-btn-ghost:disabled,
.ds-lfa-btn-light:disabled,
.ds-lfa-btn-dark:disabled {
  opacity: 0.5;
  cursor: not-allowed;
  pointer-events: none;
}

.ds-lfa-btn-full {
  width: 100%;
}

/* ==========================================================================
    BADGES & TAGS
   ========================================================================== */

.ds-lfa-badge {
  background-color: var(--ds-lfa-color-badge);
  color: var(--ds-lfa-color-neutral-dark);
  font-family: var(--ds-lfa-font-primary);
  font-weight: var(--ds-lfa-font-weight-regular);
  font-size: var(--ds-lfa-font-size-xs);
  line-height: var(--ds-lfa-line-height-full);
  padding: var(--ds-lfa-spacing-xxs) var(--ds-lfa-spacing-ssm);
  border-radius: var(--ds-lfa-radius-full);
  text-transform: uppercase;
  width: fit-content;
}

/* ==========================================================================
    AUXILIARY CLASSES
   ========================================================================== */
   
.ds-lfa-point {
  width: var(--ds-lfa-spacing-xs);
  height: var(--ds-lfa-spacing-xs);
  background-color: var(--ds-lfa-color-neutral-500);
  border-radius: 50%;
  align-self: center;
}

/* ==========================================================================
   MEDIA QUERIES
   ========================================================================== */

@media (max-width: 768px) {
  .ds-lfa-heading-3 {
    font-family: var(--ds-lfa-font-primary);
    font-weight: var(--ds-lfa-font-weight-bold);
    font-size: var(--ds-lfa-font-size-2xl);
    line-height: var(--ds-lfa-line-height-mobile-h3);
    letter-spacing: -1.2%;
    text-align: center;
    text-transform: uppercase;
  }

  .ds-lfa-tight-content-spacing {
    padding-right: 0;
    padding-left: 0;
  }

  .ds-lfa-short-content-spacing {
    padding-right: 0;
    padding-left: 0;
  }
}

@media (min-width: 768px) {  
  .ds-lfa-grid-md-cols-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .ds-lfa-grid-md-cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

@media (min-width: 1024px) {
  .ds-lfa-grid-lg-cols-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .ds-lfa-grid-lg-cols-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
}

/* DS COMPONENTS */

.percent {
  color: rgba(102, 110, 122, 0.4);
  font-size: var(--b3-caption-size);
  font-weight: 700;
  line-height: var(--b3-line-hgt-sm);
  letter-spacing: var(--b3-le-spa-lg);
  text-transform: uppercase;
  position: absolute;
  left: 97%;
  transform: translateY(-145%);
}
.nav-link {
  color: #40444d;
  font-weight: 700;
  font-size: 0.75rem;
  border-top-left-radius: 0.1875rem;
  border-top-right-radius: 0.1875rem;
  padding: 0.4375rem 1.5rem;
  line-height: 1.875rem;
  letter-spacing: 0.09375rem;
  margin-right: 1.25rem;

  position: relative;

  transition: 0.4s all;

  text-transform: uppercase;
  cursor: pointer;

  display: flex;
  align-items: center;
}

.nav-link:hover {
  background: rgba(0, 176, 230, 0.2);

  transition: 0.3ms ease-in-out;
}

.nav-link::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 100%;

  border-bottom: 1px solid #e3e5e7;

  transition: all 0.2s linear;
}

.open .nav-link {
  background: rgba(0, 176, 230, 0.2);
}

.open .nav-link::before {
  border-bottom: 3px solid #00b0e6;
}

.nav-link.disable:hover {
  background: transparent;
}

.nav-item {
  list-style: none;
}

.nav-link ds-lfa-icon {
  display: inline-block;
  width: 20px;
  height: 20px;
  margin-right: 0.375rem;
}

#root-inner b3-modal {
  display: flex;
  height: auto;
  width: 100%;
  min-width: 800px;
  min-height: 300px;
}

#root-inner b3-modal #modal {
  height: 100%;
}

#root-inner .modal__content {
  width: 600px;
}

.modal {
  position: absolute;
  top: 0;
  left: 0;

  width: 100%;
  height: 100vh;

  padding: 0 2.22rem;

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

.modal__background {
  position: absolute;
  top: 0;
  left: 0;

  background-color: rgba(102, 110, 122, 0.4);
  width: 100%;
  height: 100%;
}

.modal__content {
  border-radius: 12px;
  padding: 24px;
  z-index: 1;

  overflow: hidden;
}

.modal__content.light {
  background-color: var(--b3-white);
}

.modal__content.dark {
  background-color: var(--b3-brand);
}

.modal__content.trader {
  background-color: #1e2023;
}

.modal__header {
  display: flex;
  justify-content: space-between;
  align-items: center;

  padding-bottom: 0.75rem;
  border-bottom: 1px solid #e3e5e7;
}

.slot-header {
  flex: 1;
}

.modal__close {
  cursor: pointer;
}

.modal__close ds-lfa-icon {
  width: 40px;
  height: 40px;

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

  border-radius: 50%;

  transition-duration: 400ms;
}

.modal__close.light ds-lfa-icon:hover {
  background-color: #00b0e633;
}

.modal__close.dark ds-lfa-icon:hover {
  background-color: #007fb6ad;
}

.modal__title {
  font: var(--b3-header-4);
}

.modal__body {
  padding-top: 0.75rem;
}

.modal__header.light,
.modal__body.light {
  color: #666e7a;
}

.modal__header.dark,
.modal__body.dark,
.modal__header.trader,
.modal__body.trader {
  color: #ffffff;
}

/* animation: line--animation__focus 0.8s linear;
animation: line--animation__blur 0.7s linear; */

@keyframes line--animation__focus {
  0% {
    width: 0%;
  }
  50% {
    width: 100%;
  }
}

@keyframes line--animation__blur {
  0% {
    width: 100%;
  }
  50% {
    width: 0%;
  }
}

.ds-lfa-skeleton--container {
  width: 100%;
  z-index: 10;
}

.ds-lfa-skeleton--container__light {
  background-color: var(--b3-white);
}

.ds-lfa-skeleton--container__dark {
  background-color: var(--b3-dodger-blue-200);
}

.ds-lfa-skeleton--container__trader {
  background-color: var(--b3-black-100);
}

.ds-lfa-skeleton--content {
  z-index: 9;
  width: 100%;
  display: flex;
  height: 168px;
  flex-direction: column;
  align-items: start;
  justify-content: space-around;
}

.ds-lfa-skeleton-line {
  position: relative;
  width: 100%;
  height: 16px;
  overflow: hidden;
}

.ds-lfa-skeleton-circle {
  position: relative;
  box-sizing: border-box;
  height: 80px;
  width: 80px;
  border-radius: 50%;
  overflow: hidden;
}

.ds-lfa-skeleton-line--light,
.ds-lfa-skeleton-circle--light {
  background-color: var(--b3-white-300);
}

.ds-lfa-skeleton-line--dark,
.ds-lfa-skeleton-circle--dark {
  background-color: rgb(38, 75, 122);
}

.ds-lfa-skeleton-line--trader,
.ds-lfa-skeleton-circle--trader {
  background-color: rgb(64, 65, 68);
}

.ds-lfa-skeleton-circle__slider {
  position: absolute;
  z-index: 1;
  left: -100%;
  height: 80px;
  width: 80px;
  animation: 1.2s slide-circle infinite ease-in-out;
}

.ds-lfa-skeleton-circle__slider--line {
  left: -100%;
  height: 16px;
  width: 100%;
  animation: 1.2s slide-line infinite ease-in-out;
}

.ds-lfa-skeleton-circle__slider--light,
.ds-lfa-skeleton-circle__slider--line__light {
  background: linear-gradient(
    90deg,
    rgba(255, 255, 255, 0),
    #f6f6f7,
    rgba(255, 255, 255, 0)
  );
}

.ds-lfa-skeleton-circle__slider--dark,
.ds-lfa-skeleton-circle__slider--line__dark {
  background: linear-gradient(
    90deg,
    rgba(255, 255, 255, 0),
    rgba(255, 255, 255, 0.25),
    rgba(255, 255, 255, 0)
  );
}

.ds-lfa-skeleton-circle__slider--trader,
.ds-lfa-skeleton-circle__slider--line__trader {
  background: linear-gradient(
    90deg,
    rgba(255, 255, 255, 0),
    rgba(255, 255, 255, 0.25),
    rgba(255, 255, 255, 0)
  );
}

@keyframes slide-circle {
  from {
    transform: translateX(-80px);
  }

  to {
    transform: translateX(160px);
  }
}

@keyframes slide-line {
  from {
    transform: translateX(-100%);
  }

  to {
    transform: translateX(100%);
  }
}

/* ==========================================================================
   ICON FONTS - FANTASTICON
   ========================================================================== */

@font-face {
    font-display: block;
    font-family: "ds-lfa-icons";
    src: url("./../../documents/d/guest/ds-lfa-icons-ttf") format("truetype"),
    url("./../../documents/d/guest/ds-lfa-icons-woff") format("woff"),
    url("./../../documents/d/guest/ds-lfa-icons-woff2") format("woff2");
}

i[class^="ds-lfa-icon-"]:before, i[class*=" ds-lfa-icon-"]:before {
  font-family: ds-lfa-icons !important;
  font-style: normal;
  font-weight: normal !important;
  font-variant: normal;
  text-transform: none;
  line-height: 1;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  display: flex;
  align-items: center;
}

/* ==========================================================================
   ICON BACKGROUNDS - Círculos e outlines para ícones
   ========================================================================== */

/* Background circular padrão - Fundo claro com ícone azul */
.ds-lfa-icon-with-circle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background-color: var(--ds-lfa-color-neutral-50);
    color: var(--ds-lfa-color-primary, #004EFF);
}

/* Variante: Outline (apenas borda) */
.ds-lfa-icon-with-outline {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    border: 1px solid var(--ds-lfa-color-neutral-50);
    background-color: transparent;
    color: var(--ds-lfa-color-white-solid, #FFFFFF);
}

/* Variante: Footer - Fundo cinza com padding */
.ds-lfa-icon-circle-footer {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
    border-radius: var(--ds-lfa-radius-full);
    background-color: var(--ds-lfa-color-ghost-hover);
    padding: var(--ds-lfa-spacing-md);
    gap: var(--ds-lfa-spacing-xs);
    opacity: 1;
}

/* Tamanhos alternativos */
.ds-lfa-icon-circle-sm {
    font-size: 16px;
}

.ds-lfa-icon-circle-lg {
    font-size: 32px;
}

.ds-lfa-icon-circle-xl {
    font-size: 40px;
}

/* ==========================================================================
    Estilização aplicada apenas em listas ordenadas
    ========================================================================== */

.ds-lfa-sorting-list-content ol {
  list-style: none;
  counter-reset: item;
  padding-left: 0;
  margin: var(--ds-lfa-spacing-xl) 0;
}

.ds-lfa-sorting-list-content ol li {
  counter-increment: item;
  display: grid;
  grid-template-columns: auto 1fr;
  margin-bottom: var(--ds-lfa-spacing-lg);
  position: relative;
  font-family: var(--ds-lfa-font-primary);
  font-weight: var(--ds-lfa-font-weight-regular);
  font-size: var(--ds-lfa-font-size-xl);
  line-height: var(--ds-lfa-line-height-text-bold);
  letter-spacing: var(--ds-lfa-letter-spacing-normal);
  color: var(--ds-lfa-color-neutral-350);
}

.ds-lfa-sorting-list-content ol li::before {
  content: counter(item);
  font-family: 'Inter', var(--ds-lfa-font-text);
  font-weight: var(--ds-lfa-font-weight-bold);
  font-size: var(--ds-lfa-font-size-sm);
  line-height: var(--ds-lfa-line-height-button);
  letter-spacing: -0.15px;
  color: var(--ds-lfa-color-primary);
  margin-right: var(--ds-lfa-spacing-md);
  
  /* Círculo de fundo */
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: var(--ds-lfa-spacing-xl);
  width: var(--ds-lfa-spacing-xl);
  height: var(--ds-lfa-spacing-xl);
  border-radius: 50%;
  background-color: var(--ds-lfa-color-blue-lighter);
  border: 1px solid var(--ds-lfa-color-blue-light);
  flex-shrink: 0;
  grid-column: 1;
  grid-row: 1;
}

/* Pseudo-elemento vazio para ocupar coluna 1 nas próximas linhas */
.ds-lfa-sorting-list-content ol li::after {
  content: '';
  grid-column: 1;
  grid-row: 2;
}

.ds-lfa-sorting-list-content ol li strong,
.ds-lfa-sorting-list-content ol li b {
  font-family: var(--ds-lfa-font-primary);
  font-weight: var(--ds-lfa-font-weight-bold);
  font-size: var(--ds-lfa-font-size-xl);
  line-height: 120%;
  letter-spacing: var(--ds-lfa-letter-spacing-normal);
  color: var(--ds-lfa-color-neutral-dark);
  display: block;
  grid-column: 2;
  grid-row: 1;
}

.ds-lfa-sorting-list-content ol li p {
  font-family: var(--ds-lfa-font-primary);
  font-weight: var(--ds-lfa-font-weight-regular);
  font-size: var(--ds-lfa-font-size-xl);
  line-height: var(--ds-lfa-line-height-text-bold);
  letter-spacing: var(--ds-lfa-letter-spacing-normal);
  color: var(--ds-lfa-color-neutral-350);
  margin: 0;
  grid-column: 2;
  grid-row: 2;
}

/* Remove espaçamento extra do último item */
.ds-lfa-sorting-list-content ol li:last-child {
  margin-bottom: 0;
}

/* ==========================================================================
    Estilização aplicada para listas não ordenadas
    ========================================================================== */

.ds-lfa-sorting-list-content ul {
  list-style: none;
  padding-left: 0;
  margin: var(--ds-lfa-spacing-xl) 0;
}

.ds-lfa-sorting-list-content ul li {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: var(--ds-lfa-spacing-md);
  margin-bottom: var(--ds-lfa-spacing-md);
  font-family: var(--ds-lfa-font-primary);
  font-weight: var(--ds-lfa-font-weight-regular);
  font-size: var(--ds-lfa-font-size-xl);
  line-height: var(--ds-lfa-line-height-text-bold);
  letter-spacing: var(--ds-lfa-letter-spacing-normal);
  color: var(--ds-lfa-color-neutral-350);
}

.ds-lfa-sorting-list-content ul li::before {
  content: '';
  display: block;
  width: var(--ds-lfa-spacing-sm);
  height: var(--ds-lfa-spacing-sm);
  border-radius: 50%;
  background-color: var(--ds-lfa-color-neutral-dark);
  margin-top: var(--ds-lfa-spacing-sm);
  flex-shrink: 0;
}

.ds-lfa-sorting-list-content ul li strong,
.ds-lfa-sorting-list-content ul li b {
  font-family: var(--ds-lfa-font-primary);
  font-weight: var(--ds-lfa-font-weight-bold);
  font-size: var(--ds-lfa-font-size-xl);
  line-height: 120%;
  letter-spacing: var(--ds-lfa-letter-spacing-normal);
  color: var(--ds-lfa-color-neutral-dark);
}

.ds-lfa-sorting-list-content ul li p {
  font-family: var(--ds-lfa-font-primary);
  font-weight: var(--ds-lfa-font-weight-regular);
  font-size: var(--ds-lfa-font-size-xl);
  line-height: var(--ds-lfa-line-height-text-bold);
  letter-spacing: var(--ds-lfa-letter-spacing-normal);
  color: var(--ds-lfa-color-neutral-350);
  margin: 0;
}

/* Remove espaçamento extra do último item */
.ds-lfa-sorting-list-content ul li:last-child {
  margin-bottom: 0;
}

/* ==========================================================================
   ICON DEFINITIONS - Mapeamento de caracteres Unicode
   ========================================================================== */

.ds-lfa-icon-account-balance:before {
    content: "\f101";
}
.ds-lfa-icon-admin-panel-settings:before {
    content: "\f102";
}
.ds-lfa-icon-article:before {
    content: "\f103";
}
.ds-lfa-icon-assured-workload:before {
    content: "\f104";
}
.ds-lfa-icon-b3-logo:before {
    content: "\f105";
}
.ds-lfa-icon-badge-dollar-sign:before {
    content: "\f106";
}
.ds-lfa-icon-banknote-arrow-up:before {
    content: "\f107";
}
.ds-lfa-icon-brain:before {
    content: "\f108";
}
.ds-lfa-icon-chart-no-axes-column:before {
    content: "\f109";
}
.ds-lfa-icon-check-small:before {
    content: "\f10a";
}
.ds-lfa-icon-clipboard-clock:before {
    content: "\f10b";
}
.ds-lfa-icon-cloud-check:before {
    content: "\f10c";
}
.ds-lfa-icon-distance:before {
    content: "\f10d";
}
.ds-lfa-icon-facebook:before {
    content: "\f10e";
}
.ds-lfa-icon-factory:before {
    content: "\f10f";
}
.ds-lfa-icon-gpp-good:before {
    content: "\f110";
}
.ds-lfa-icon-graph-bar:before {
    content: "\f111";
}
.ds-lfa-icon-graph-line:before {
    content: "\f112";
}
.ds-lfa-icon-grid-2x2-check:before {
    content: "\f113";
}
.ds-lfa-icon-headset:before {
    content: "\f114";
}
.ds-lfa-icon-insert-chart:before {
    content: "\f115";
}
.ds-lfa-icon-instagram:before {
    content: "\f116";
}
.ds-lfa-icon-insurance-home:before {
    content: "\f117";
}
.ds-lfa-icon-insurance-shield:before {
    content: "\f118";
}
.ds-lfa-icon-linkedin:before {
    content: "\f119";
}
.ds-lfa-icon-map-plus:before {
    content: "\f11a";
}
.ds-lfa-icon-mark-email-read:before {
    content: "\f11b";
}
.ds-lfa-icon-microscope-solid:before {
    content: "\f11c";
}
.ds-lfa-icon-note-icon-small:before {
    content: "\f11d";
}
.ds-lfa-icon-open-email-small:before {
    content: "\f11e";
}
.ds-lfa-icon-phone-forwarded:before {
    content: "\f11f";
}
.ds-lfa-icon-prevention-check:before {
    content: "\f120";
}
.ds-lfa-icon-prevention-group:before {
    content: "\f121";
}
.ds-lfa-icon-prevention-organ:before {
    content: "\f122";
}
.ds-lfa-icon-query-stats:before {
    content: "\f123";
}
.ds-lfa-icon-question-solid:before {
    content: "\f124";
}
.ds-lfa-icon-rating-star:before {
    content: "\f125";
}
.ds-lfa-icon-shield-alert:before {
    content: "\f126";
}
.ds-lfa-icon-shield-check:before {
    content: "\f127";
}
.ds-lfa-icon-shield-solid:before {
    content: "\f128";
}
.ds-lfa-icon-sm-graph:before {
    content: "\f129";
}
.ds-lfa-icon-sm-q:before {
    content: "\f12a";
}
.ds-lfa-icon-sm:before {
    content: "\f12b";
}
.ds-lfa-icon-sparkles:before {
    content: "\f12c";
}
.ds-lfa-icon-square-check-big:before {
    content: "\f12d";
}
.ds-lfa-icon-star-small:before {
    content: "\f12e";
}
.ds-lfa-icon-trending-up:before {
    content: "\f12f";
}
.ds-lfa-icon-user-check:before {
    content: "\f130";
}
.ds-lfa-icon-user-msg-small:before {
    content: "\f131";
}
.ds-lfa-icon-users-effect:before {
    content: "\f132";
}
.ds-lfa-icon-users:before {
    content: "\f133";
}
.ds-lfa-icon-vehicles-car:before {
    content: "\f134";
}
.ds-lfa-icon-vehicles-truck:before {
    content: "\f135";
}
.ds-lfa-icon-vehicles-van:before {
    content: "\f136";
}
.ds-lfa-icon-x-social-media:before {
    content: "\f137";
}
.ds-lfa-icon-youtube:before {
  content: "\f138";
}