.min-w-1 {
    min-width: 3.125rem;
  }
  
  .min-w-2 {
    min-width: 6.25rem;
  }
  
  .min-w-3 {
    min-width: 9.375rem;
  }
  
  .min-w-4 {
    min-width: 12.5rem;
  }
  
  .min-w-5 {
    min-width: 15.625rem;
  }
  
  .min-w-6 {
    min-width: 18.75rem;
  }
  
  .m-t-0 {
    margin-top: 0 !important;
  }
  
  .m-t-1 {
    margin-top: 0.25rem !important;
  }
  
  .m-t-2 {
    margin-top: 0.5rem !important;
  }
  
  .m-t-3 {
    margin-top: 0.75rem !important;
  }
  
  .m-t-4 {
    margin-top: 1rem !important;
  }
  
  .m-t-5 {
    margin-top: 1.25rem !important;
  }
  
  .m-t-6 {
    margin-top: 1.5rem !important;
  }
  
  .m-t-7 {
    margin-top: 1.75rem !important;
  }
  
  .m-t-8 {
    margin-top: 2rem !important;
  }
  
  .m-t-9 {
    margin-top: 2.25rem !important;
  }
  
  .m-t-10 {
    margin-top: 2.5rem !important;
  }
  
  .m-t-11 {
    margin-top: 2.75rem !important;
  }
  
  .m-t-12 {
    margin-top: 3rem !important;
  }
  
  .m-b-0 {
    margin-bottom: 0 !important;
  }
  
  .m-b-1 {
    margin-bottom: 0.25rem !important;
  }
  
  .m-b-2 {
    margin-bottom: 0.5rem !important;
  }
  
  .m-b-3 {
    margin-bottom: 0.75rem !important;
  }
  
  .m-b-4 {
    margin-bottom: 1rem !important;
  }
  
  .m-b-5 {
    margin-bottom: 1.25rem !important;
  }
  
  .m-b-6 {
    margin-bottom: 1.5rem !important;
  }
  
  .m-b-7 {
    margin-bottom: 1.75rem !important;
  }
  
  .m-b-8 {
    margin-bottom: 2rem !important;
  }
  
  .m-b-9 {
    margin-bottom: 2.25rem !important;
  }
  
  .m-b-10 {
    margin-bottom: 2.5rem !important;
  }
  
  .m-b-11 {
    margin-bottom: 2.75rem !important;
  }
  
  .m-b-12 {
    margin-bottom: 3rem !important;
  }
  
  .m-l-0 {
    margin-left: 0 !important;
  }
  
  .m-l-1 {
    margin-left: 0.25rem !important;
  }
  
  .m-l-2 {
    margin-left: 0.5rem !important;
  }
  
  .m-l-3 {
    margin-left: 0.75rem !important;
  }
  
  .m-l-4 {
    margin-left: 1rem !important;
  }
  
  .m-l-5 {
    margin-left: 1.25rem !important;
  }
  
  .m-l-6 {
    margin-left: 1.5rem !important;
  }
  
  .m-l-7 {
    margin-left: 1.75rem !important;
  }
  
  .m-l-8 {
    margin-left: 2rem !important;
  }
  
  .m-l-9 {
    margin-left: 2.25rem !important;
  }
  
  .m-l-10 {
    margin-left: 2.5rem !important;
  }
  
  .m-l-11 {
    margin-left: 2.75rem !important;
  }
  
  .m-l-12 {
    margin-left: 3rem !important;
  }
  
  .m-r-0 {
    margin-right: 0 !important;
  }
  
  .m-r-1 {
    margin-right: 0.25rem !important;
  }
  
  .m-r-2 {
    margin-right: 0.5rem !important;
  }
  
  .m-r-3 {
    margin-right: 0.75rem !important;
  }
  
  .m-r-4 {
    margin-right: 1rem !important;
  }
  
  .m-r-5 {
    margin-right: 1.25rem !important;
  }
  
  .m-r-6 {
    margin-right: 1.5rem !important;
  }
  
  .m-r-7 {
    margin-right: 1.75rem !important;
  }
  
  .m-r-8 {
    margin-right: 2rem !important;
  }
  
  .m-r-9 {
    margin-right: 2.25rem !important;
  }
  
  .m-r-10 {
    margin-right: 2.5rem !important;
  }
  
  .m-r-11 {
    margin-right: 2.75rem !important;
  }
  
  .m-r-12 {
    margin-right: 3rem !important;
  }
  
  .m-x-0 {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
  
  .m-x-1 {
    margin-left: 0.25rem !important;
    margin-right: 0.25rem !important;
  }
  
  .m-x-2 {
    margin-left: 0.5rem !important;
    margin-right: 0.5rem !important;
  }
  
  .m-x-3 {
    margin-left: 0.75rem !important;
    margin-right: 0.75rem !important;
  }
  
  .m-x-4 {
    margin-left: 1rem !important;
    margin-right: 1rem !important;
  }
  
  .m-x-5 {
    margin-left: 1.25rem !important;
    margin-right: 1.25rem !important;
  }
  
  .m-x-6 {
    margin-left: 1.5rem !important;
    margin-right: 1.5rem !important;
  }
  
  .m-x-7 {
    margin-left: 1.75rem !important;
    margin-right: 1.75rem !important;
  }
  
  .m-x-8 {
    margin-left: 2rem !important;
    margin-right: 2rem !important;
  }
  
  .m-x-9 {
    margin-left: 2.25rem !important;
    margin-right: 2.25rem !important;
  }
  
  .m-x-10 {
    margin-left: 2.5rem !important;
    margin-right: 2.5rem !important;
  }
  
  .m-x-11 {
    margin-left: 2.75rem !important;
    margin-right: 2.75rem !important;
  }
  
  .m-x-12 {
    margin-left: 3rem !important;
    margin-right: 3rem !important;
  }
  
  .m-y-0 {
    margin-top: 0 !important;
    margin-bottom: 0 !important;
  }
  
  .m-y-1 {
    margin-top: 0.25rem !important;
    margin-bottom: 0.25rem !important;
  }
  
  .m-y-2 {
    margin-top: 0.5rem !important;
    margin-bottom: 0.5rem !important;
  }
  
  .m-y-3 {
    margin-top: 0.75rem !important;
    margin-bottom: 0.75rem !important;
  }
  
  .m-y-4 {
    margin-top: 1rem !important;
    margin-bottom: 1rem !important;
  }
  
  .m-y-5 {
    margin-top: 1.25rem !important;
    margin-bottom: 1.25rem !important;
  }
  
  .m-y-6 {
    margin-top: 1.5rem !important;
    margin-bottom: 1.5rem !important;
  }
  
  .m-y-7 {
    margin-top: 1.75rem !important;
    margin-bottom: 1.75rem !important;
  }
  
  .m-y-8 {
    margin-top: 2rem !important;
    margin-bottom: 2rem !important;
  }
  
  .m-y-9 {
    margin-top: 2.25rem !important;
    margin-bottom: 2.25rem !important;
  }
  
  .m-y-10 {
    margin-top: 2.5rem !important;
    margin-bottom: 2.5rem !important;
  }
  
  .m-y-11 {
    margin-top: 2.75rem !important;
    margin-bottom: 2.75rem !important;
  }
  
  .m-y-12 {
    margin-top: 3rem !important;
    margin-bottom: 3rem !important;
  }
  
  .m-0 {
    margin: 0 !important;
  }
  
  .m-1 {
    margin: 0.25rem !important;
  }
  
  .m-2 {
    margin: 0.5rem !important;
  }
  
  .m-3 {
    margin: 0.75rem !important;
  }
  
  .m-4 {
    margin: 1rem !important;
  }
  
  .m-5 {
    margin: 1.25rem !important;
  }
  
  .m-6 {
    margin: 1.5rem !important;
  }
  
  .m-7 {
    margin: 1.75rem !important;
  }
  
  .m-8 {
    margin: 2rem !important;
  }
  
  .m-9 {
    margin: 2.25rem !important;
  }
  
  .m-10 {
    margin: 2.5rem !important;
  }
  
  .m-11 {
    margin: 2.75rem !important;
  }
  
  .m-12 {
    margin: 3rem !important;
  }
  
  .p-t-0 {
    padding-top: 0 !important;
  }
  
  .p-t-1 {
    padding-top: 0.25rem !important;
  }
  
  .p-t-2 {
    padding-top: 0.5rem !important;
  }
  
  .p-t-3 {
    padding-top: 0.75rem !important;
  }
  
  .p-t-4 {
    padding-top: 1rem !important;
  }
  
  .p-t-5 {
    padding-top: 1.25rem !important;
  }
  
  .p-t-6 {
    padding-top: 1.5rem !important;
  }
  
  .p-t-7 {
    padding-top: 1.75rem !important;
  }
  
  .p-t-8 {
    padding-top: 2rem !important;
  }
  
  .p-t-9 {
    padding-top: 2.25rem !important;
  }
  
  .p-t-10 {
    padding-top: 2.5rem !important;
  }
  
  .p-t-11 {
    padding-top: 2.75rem !important;
  }
  
  .p-t-12 {
    padding-top: 3rem !important;
  }
  
  .p-b-0 {
    padding-bottom: 0 !important;
  }
  
  .p-b-1 {
    padding-bottom: 0.25rem !important;
  }
  
  .p-b-2 {
    padding-bottom: 0.5rem !important;
  }
  
  .p-b-3 {
    padding-bottom: 0.75rem !important;
  }
  
  .p-b-4 {
    padding-bottom: 1rem !important;
  }
  
  .p-b-5 {
    padding-bottom: 1.25rem !important;
  }
  
  .p-b-6 {
    padding-bottom: 1.5rem !important;
  }
  
  .p-b-7 {
    padding-bottom: 1.75rem !important;
  }
  
  .p-b-8 {
    padding-bottom: 2rem !important;
  }
  
  .p-b-9 {
    padding-bottom: 2.25rem !important;
  }
  
  .p-b-10 {
    padding-bottom: 2.5rem !important;
  }
  
  .p-b-11 {
    padding-bottom: 2.75rem !important;
  }
  
  .p-b-12 {
    padding-bottom: 3rem !important;
  }
  
  .p-l-0 {
    padding-left: 0 !important;
  }
  
  .p-l-1 {
    padding-left: 0.25rem !important;
  }
  
  .p-l-2 {
    padding-left: 0.5rem !important;
  }
  
  .p-l-3 {
    padding-left: 0.75rem !important;
  }
  
  .p-l-4 {
    padding-left: 1rem !important;
  }
  
  .p-l-5 {
    padding-left: 1.25rem !important;
  }
  
  .p-l-6 {
    padding-left: 1.5rem !important;
  }
  
  .p-l-7 {
    padding-left: 1.75rem !important;
  }
  
  .p-l-8 {
    padding-left: 2rem !important;
  }
  
  .p-l-9 {
    padding-left: 2.25rem !important;
  }
  
  .p-l-10 {
    padding-left: 2.5rem !important;
  }
  
  .p-l-11 {
    padding-left: 2.75rem !important;
  }
  
  .p-l-12 {
    padding-left: 3rem !important;
  }
  
  .p-r-0 {
    padding-right: 0 !important;
  }
  
  .p-r-1 {
    padding-right: 0.25rem !important;
  }
  
  .p-r-2 {
    padding-right: 0.5rem !important;
  }
  
  .p-r-3 {
    padding-right: 0.75rem !important;
  }
  
  .p-r-4 {
    padding-right: 1rem !important;
  }
  
  .p-r-5 {
    padding-right: 1.25rem !important;
  }
  
  .p-r-6 {
    padding-right: 1.5rem !important;
  }
  
  .p-r-7 {
    padding-right: 1.75rem !important;
  }
  
  .p-r-8 {
    padding-right: 2rem !important;
  }
  
  .p-r-9 {
    padding-right: 2.25rem !important;
  }
  
  .p-r-10 {
    padding-right: 2.5rem !important;
  }
  
  .p-r-11 {
    padding-right: 2.75rem !important;
  }
  
  .p-r-12 {
    padding-right: 3rem !important;
  }
  
  .p-x-0 {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }
  
  .p-x-1 {
    padding-left: 0.25rem !important;
    padding-right: 0.25rem !important;
  }
  
  .p-x-2 {
    padding-left: 0.5rem !important;
    padding-right: 0.5rem !important;
  }
  
  .p-x-3 {
    padding-left: 0.75rem !important;
    padding-right: 0.75rem !important;
  }
  
  .p-x-4 {
    padding-left: 1rem !important;
    padding-right: 1rem !important;
  }
  
  .p-x-5 {
    padding-left: 1.25rem !important;
    padding-right: 1.25rem !important;
  }
  
  .p-x-6 {
    padding-left: 1.5rem !important;
    padding-right: 1.5rem !important;
  }
  
  .p-x-7 {
    padding-left: 1.75rem !important;
    padding-right: 1.75rem !important;
  }
  
  .p-x-8 {
    padding-left: 2rem !important;
    padding-right: 2rem !important;
  }
  
  .p-x-9 {
    padding-left: 2.25rem !important;
    padding-right: 2.25rem !important;
  }
  
  .p-x-10 {
    padding-left: 2.5rem !important;
    padding-right: 2.5rem !important;
  }
  
  .p-x-11 {
    padding-left: 2.75rem !important;
    padding-right: 2.75rem !important;
  }
  
  .p-x-12 {
    padding-left: 3rem !important;
    padding-right: 3rem !important;
  }
  
  .p-y-0 {
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  
  .p-y-1 {
    padding-top: 0.25rem !important;
    padding-bottom: 0.25rem !important;
  }
  
  .p-y-2 {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
  }
  
  .p-y-3 {
    padding-top: 0.75rem !important;
    padding-bottom: 0.75rem !important;
  }
  
  .p-y-4 {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }
  
  .p-y-5 {
    padding-top: 1.25rem !important;
    padding-bottom: 1.25rem !important;
  }
  
  .p-y-6 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }
  
  .p-y-7 {
    padding-top: 1.75rem !important;
    padding-bottom: 1.75rem !important;
  }
  
  .p-y-8 {
    padding-top: 2rem !important;
    padding-bottom: 2rem !important;
  }
  
  .p-y-9 {
    padding-top: 2.25rem !important;
    padding-bottom: 2.25rem !important;
  }
  
  .p-y-10 {
    padding-top: 2.5rem !important;
    padding-bottom: 2.5rem !important;
  }
  
  .p-y-11 {
    padding-top: 2.75rem !important;
    padding-bottom: 2.75rem !important;
  }
  
  .p-y-12 {
    padding-top: 3rem !important;
    padding-bottom: 3rem !important;
  }
  
  .p-0 {
    padding: 0 !important;
  }
  
  .p-1 {
    padding: 0.25rem !important;
  }
  
  .p-2 {
    padding: 0.5rem !important;
  }
  
  .p-3 {
    padding: 0.75rem !important;
  }
  
  .p-4 {
    padding: 1rem !important;
  }
  
  .p-5 {
    padding: 1.25rem !important;
  }
  
  .p-6 {
    padding: 1.5rem !important;
  }
  
  .p-7 {
    padding: 1.75rem !important;
  }
  
  .p-8 {
    padding: 2rem !important;
  }
  
  .p-9 {
    padding: 2.25rem !important;
  }
  
  .p-10 {
    padding: 2.5rem !important;
  }
  
  .p-11 {
    padding: 2.75rem !important;
  }
  
  .p-12 {
    padding: 3rem !important;
  }
  
  html {
    scroll-behavior: smooth;
  }
  
  section[id] {
    scroll-margin-top: 3.25rem;
  }
  @media (min-width: 1024px) {
    section[id] {
      scroll-margin-top: 5.5rem;
    }
  }
  
  #about {
    scroll-margin-top: 0 !important;
  }
  
  .img-fluid {
    max-width: 100%;
    height: auto;
  }
  
  .d-none {
    display: none !important;
  }
  
  @media (min-width: 1200px) {
    .d-none-x {
      display: none !important;
    }
  }
  
  .text-left {
    text-align: left !important;
  }
  
  .text-center {
    text-align: center !important;
  }
  
  .text-right {
    text-align: right !important;
  }
  
  .w-100 {
    width: 100% !important;
  }
  
  .border-radius-full {
    border-radius: 50% !important;
  }
  
  .border-radius-7 {
    border-radius: 0.75rem !important;
  }
  
  .icon-box {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 1.5rem;
    height: 1.5rem;
    font-size: 1.5rem;
  }
  
  .text-sm {
    font-size: 0.875rem;
    line-height: 1.25rem;
  }
  
  .text-lg {
    font-size: 0.875rem;
    line-height: 1.25rem;
  }
  @media (min-width: 768px) {
    .text-lg {
      font-size: 1rem;
      line-height: 1.5rem;
    }
  }
  @media (min-width: 768px) {
    .text-lg {
      font-size: 1rem;
      line-height: 1.5rem;
    }
  }
  
  .position-relative {
    position: relative !important;
  }
  
  .stretched-link::after {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 1;
    content: "";
  }
  
  .text-truncate {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  
  .text-truncate-2 {
    display: -webkit-box;
    line-clamp: 2;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }
  
  .display-1 {
    font-size: 3rem !important;
    line-height: 3.5rem !important;
  }
  
  .display-2 {
    font-size: 1.5rem !important;
    line-height: 2rem !important;
  }
  
  .display-3 {
    font-size: 1.25rem !important;
    line-height: 1.75rem !important;
  }
  
  .display-4 {
    font-size: 1.125rem !important;
    line-height: 1.5rem !important;
  }
  
  .display-5 {
    font-size: 1rem !important;
    line-height: 1.5rem !important;
  }
  
  .display-6 {
    font-size: 0.875rem !important;
    line-height: 1.25rem !important;
  }
  
  .display-7 {
    font-size: 0.75rem !important;
    line-height: 1rem !important;
  }
  
  .display-8 {
    font-size: 0.625rem !important;
    line-height: 0.875rem !important;
  }
  
  .font-weight-thin {
    font-weight: 100 !important;
  }
  
  .font-weight-extralight {
    font-weight: 200 !important;
  }
  
  .font-weight-light {
    font-weight: 300 !important;
  }
  
  .font-weight-regular {
    font-weight: 400 !important;
  }
  
  .font-weight-medium {
    font-weight: 500 !important;
  }
  
  .font-weight-semibold {
    font-weight: 600 !important;
  }
  
  .font-weight-bold {
    font-weight: bold !important;
  }
  
  .font-weight-extrabold {
    font-weight: 800 !important;
  }
  
  .font-weight-black {
    font-weight: 900 !important;
  }
  
  *,
  ::after,
  ::before {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
  }
  
  html {
    height: 100%;
    line-height: 1.15;
    -webkit-text-size-adjust: 100%;
    -webkit-tap-highlight-color: transparent;
    scroll-behavior: smooth;
    -ms-scroll-chaining: none;
    overscroll-behavior: none;
  }
  body {
    height: 100%;
    margin: 0;
    padding: 0;
    font-family: "Plus Jakarta Sans", sans-serif;
    font-size: 1rem;
    line-height: 1.5;
    font-weight: normal;
    background: #FBFBFF;
    color: #000000;
    -webkit-font-smoothing: antialiased;
    outline: none !important;
    overflow-x: hidden !important;
  }
  
  @media screen and (prefers-reduced-motion: reduce) {
    html {
      scroll-behavior: auto;
    }
  }
  main {
    display: block;
  }
  
  hr {
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    height: 0;
    overflow: visible;
  }
  
  pre {
    font-family: monospace, monospace;
    font-size: 1em;
  }
  
  a {
    background-color: transparent;
  }
  
  abbr[title] {
    border-bottom: none;
    text-decoration: underline;
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
  }
  
  b,
  strong {
    font-weight: bolder;
  }
  
  code,
  kbd,
  samp {
    font-family: monospace, monospace;
    font-size: 1em;
  }
  
  small {
    font-size: 80%;
  }
  
  sub,
  sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
  }
  
  sub {
    bottom: -0.25em;
  }
  
  sup {
    top: -0.5em;
  }
  
  img {
    border-style: none;
  }
  
  button,
  input,
  optgroup,
  select,
  textarea {
    font-family: inherit;
    font-size: 100%;
    line-height: 1.15;
    margin: 0;
  }
  
  button,
  input {
    overflow: visible;
  }
  
  button,
  select {
    text-transform: none;
  }
  
  button,
  [type=button],
  [type=reset],
  [type=submit] {
    -webkit-appearance: button;
  }
  
  button::-moz-focus-inner,
  [type=button]::-moz-focus-inner,
  [type=reset]::-moz-focus-inner,
  [type=submit]::-moz-focus-inner {
    border-style: none;
    padding: 0;
  }
  
  button:-moz-focusring,
  [type=button]:-moz-focusring,
  [type=reset]:-moz-focusring,
  [type=submit]:-moz-focusring {
    outline: 1px dotted ButtonText;
  }
  
  fieldset {
    padding: 0.35em 0.75em 0.625em;
  }
  
  legend {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    color: inherit;
    display: table;
    max-width: 100%;
    padding: 0;
    white-space: normal;
  }
  
  progress {
    vertical-align: baseline;
  }
  
  textarea {
    overflow: auto;
  }
  
  [type=checkbox],
  [type=radio] {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0;
  }
  
  [type=number]::-webkit-inner-spin-button,
  [type=number]::-webkit-outer-spin-button {
    height: auto;
  }
  
  [type=search] {
    -webkit-appearance: textfield;
    outline-offset: -2px;
  }
  
  [type=search]::-webkit-search-decoration {
    -webkit-appearance: none;
  }
  
  ::-webkit-file-upload-button {
    -webkit-appearance: button;
    font: inherit;
  }
  
  details {
    display: block;
  }
  
  summary {
    display: list-item;
  }
  
  template {
    display: none;
  }
  
  [hidden] {
    display: none;
  }
  
  .mt-1 {
    margin-top: 0.5rem !important;
  }
  
  .mt-2 {
    margin-top: 1rem !important;
  }
  
  .mt-3 {
    margin-top: 1.5rem !important;
  }
  
  .mt-4 {
    margin-top: 2rem !important;
  }
  
  .mt-5 {
    margin-top: 3rem !important;
  }
  
  .w-100 {
    width: 100% !important;
  }
  
  .header {
    background-color: #FFFFFF;
    padding: 0.75rem 0;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1000;
    -webkit-transition: padding 300ms ease, -webkit-box-shadow 300ms ease;
    transition: padding 300ms ease, -webkit-box-shadow 300ms ease;
    transition: box-shadow 300ms ease, padding 300ms ease;
    transition: box-shadow 300ms ease, padding 300ms ease, -webkit-box-shadow 300ms ease;
  }
  .header.header--scrolled {
    -webkit-box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);
  }
  @media (min-width: 1024px) {
    .header {
      padding: 1.5rem 0;
    }
  }
  .header-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
  }
  .header-logo {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-decoration: none;
  }
  .header-logo img {
    height: 2.45rem;
    width: auto;
  }
  @media (min-width: 1024px) {
    .header-logo img {
      height: 3.5rem;
    }
  }
  .header-nav {
    position: fixed;
    top: 3.25rem;
    left: 0;
    width: 100%;
    height: 0;
    background-color: #FFFFFF;
    z-index: 999;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
    gap: 2rem;
    -webkit-transition: height 350ms ease-in-out;
    transition: height 350ms ease-in-out;
    padding: 0;
    overflow: hidden;
  }
  .header-nav.active {
    height: calc(100vh - 3.25rem);
  }
  .header-nav.active .header-nav-list {
    opacity: 1;
    visibility: visible;
  }
  .header-nav.active .header-action-mobile {
    opacity: 1;
    visibility: visible;
  }
  @media (min-width: 1024px) {
    .header-nav {
      position: static;
      height: auto;
      width: auto;
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -ms-flex-direction: row;
      flex-direction: row;
      background-color: transparent;
      padding: 0;
      z-index: auto;
      overflow: visible;
    }
  }
  .header-nav-list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 2rem;
    list-style: none;
    padding: 4rem 2rem 2rem;
    margin: 0;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: opacity 200ms ease;
    transition: opacity 200ms ease;
  }
  @media (min-width: 1024px) {
    .header-nav-list {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -ms-flex-direction: row;
      flex-direction: row;
      gap: 2rem;
      padding: 0;
      opacity: 1;
      visibility: visible;
    }
  }
  .header-nav-link {
    font-size: 1.25rem;
    font-weight: 600;
    color: #212121;
    text-decoration: none;
    -webkit-transition: color 200ms ease;
    transition: color 200ms ease;
  }
  .header-nav-link:hover {
    color: #552C7E;
  }
  @media (min-width: 1024px) {
    .header-nav-link {
      font-size: 1rem;
    }
  }
  .header-action-mobile {
    width: 100%;
    max-width: 12rem;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: opacity 200ms ease;
    transition: opacity 200ms ease;
    margin-top: 1rem;
  }
  @media (min-width: 1024px) {
    .header-action-mobile {
      display: none;
    }
  }
  .header-action {
    display: none;
  }
  @media (min-width: 1024px) {
    .header-action {
      display: block;
    }
    .header-action .btn {
      padding-left: 2rem;
      padding-right: 2rem;
      min-width: 10rem;
    }
  }
  .header-hamburger {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 2.5rem;
    height: 2.5rem;
    font-size: 1.75rem;
    color: #212121;
    background: transparent;
    border: none;
    cursor: pointer;
    z-index: 1000;
  }
  @media (min-width: 1024px) {
    .header-hamburger {
      display: none;
    }
  }
  
  .d-none {
    display: none !important;
  }
  
  @media (min-width: 1024px) {
    .d-lg-block {
      display: block !important;
    }
  }
  
  .footer {
    background-color: #1E1E1E;
    padding: 2rem 0;
  }
  @media (min-width: 768px) {
    .footer {
      padding: 2.5rem 0;
    }
  }
  .footer-top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-align: center;
    gap: 1.25rem;
    padding-bottom: 1.5rem;
    border-bottom: 1px solid rgba(255, 255, 255, 0.12);
  }
  @media (min-width: 768px) {
    .footer-top {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -ms-flex-direction: row;
      flex-direction: row;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
      text-align: left;
    }
  }
  .footer-tagline {
    font-size: 0.875rem;
    line-height: 1.375rem;
    color: rgba(255, 255, 255, 0.7);
    font-weight: normal;
    max-width: 20rem;
  }
  @media (min-width: 768px) {
    .footer-tagline {
      max-width: none;
    }
  }
  .footer-links {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 1.5rem;
  }
  .footer-link {
    font-size: 0.875rem;
    line-height: 1.25rem;
    color: rgba(255, 255, 255, 0.7);
    font-weight: 500;
    text-decoration: none;
    -webkit-transition: color 200ms ease;
    transition: color 200ms ease;
  }
  .footer-link:hover {
    color: #FFFFFF;
  }
  .footer-bottom {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1.5rem;
    padding-top: 1.5rem;
  }
  @media (min-width: 768px) {
    .footer-bottom {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -ms-flex-direction: row;
      flex-direction: row;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between;
    }
  }
  .footer-copyright {
    font-size: 0.8125rem;
    line-height: 1.125rem;
    color: rgba(255, 255, 255, 0.5);
    font-weight: normal;
  }
  .footer-socials {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1rem;
  }
  .footer-social {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 2.25rem;
    height: 2.25rem;
    border-radius: 50%;
    background-color: rgba(255, 255, 255, 0.1);
    color: #FFFFFF;
    font-size: 1.25rem;
    text-decoration: none;
    -webkit-transition: background-color 200ms ease;
    transition: background-color 200ms ease;
  }
  .footer-social:hover {
    background-color: #552C7E;
  }
  
  .flex {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  
  .flex-inline {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
  }
  
  .flex-start {
    -ms-flex-pack: start;
    -webkit-box-pack: start;
    justify-content: flex-start;
    text-align: start;
  }
  
  .flex-center {
    -ms-flex-pack: center !important;
    -webkit-box-pack: center !important;
    justify-content: center !important;
    text-align: center !important;
  }
  
  .flex-end {
    -ms-flex-pack: end;
    -webkit-box-pack: end;
    justify-content: flex-end;
    text-align: end;
  }
  
  .flex-top {
    -ms-flex-align: start !important;
    -webkit-box-align: start !important;
    align-items: flex-start !important;
  }
  
  .flex-baseline {
    -webkit-box-align: baseline;
    -ms-flex-align: baseline;
    align-items: baseline;
  }
  
  .flex-middle {
    -ms-flex-align: center !important;
    -webkit-box-align: center !important;
    align-items: center !important;
  }
  
  .flex-bottom {
    -ms-flex-align: end;
    -webkit-box-align: end;
    align-items: flex-end;
  }
  
  .flex-stretch {
    -webkit-box-align: stretch;
    -ms-flex-align: stretch;
    align-items: stretch;
  }
  
  .flex-around {
    -ms-flex-pack: distribute;
    justify-content: space-around;
  }
  
  .flex-between {
    -ms-flex-pack: justify;
    -webkit-box-pack: justify;
    justify-content: space-between;
  }
  
  .flex-first {
    -ms-flex-order: -1;
    -webkit-box-ordinal-group: 0;
    order: -1;
  }
  
  .flex-last {
    -ms-flex-order: 1;
    -webkit-box-ordinal-group: 2;
    order: 1;
  }
  
  .flex-row {
    -webkit-box-orient: horizontal !important;
    -webkit-box-direction: normal !important;
    -ms-flex-direction: row !important;
    flex-direction: row !important;
  }
  
  .flex-col {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  
  .flex-wrap {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  
  .flex-wrap-reverse {
    -ms-flex-wrap: wrap-reverse;
    flex-wrap: wrap-reverse;
  }
  
  .flex-content-between {
    -ms-flex-line-pack: justify;
    align-content: space-between;
  }
  
  .flex-grow {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
  }
  
  .flex-align-right {
    margin-left: auto;
  }
  
  .flex-align-left {
    margin-right: auto;
  }
  
  .flex-align-top {
    margin-bottom: auto;
  }
  
  .flex-align-bottom {
    margin-top: auto;
  }
  
  .flex-self-baseline {
    -ms-flex-item-align: baseline;
    align-self: baseline;
  }
  
  .flex-1 {
    -webkit-box-flex: 1 !important;
    -ms-flex: 1 !important;
    flex: 1 !important;
  }
  
  .flex-2 {
    -webkit-box-flex: 2 !important;
    -ms-flex: 2 !important;
    flex: 2 !important;
  }
  
  .flex-3 {
    -webkit-box-flex: 3 !important;
    -ms-flex: 3 !important;
    flex: 3 !important;
  }
  
  .flex-4 {
    -webkit-box-flex: 4 !important;
    -ms-flex: 4 !important;
    flex: 4 !important;
  }
  
  .gutter-8 {
    margin-left: -0.25rem;
    margin-right: -0.25rem;
  }
  .gutter-8 > [class*=col-] {
    padding-right: 0.25rem;
    padding-left: 0.25rem;
  }
  
  .gutter-12 {
    margin-left: -0.375rem;
    margin-right: -0.375rem;
  }
  .gutter-12 > [class*=col-] {
    padding-right: 0.375rem;
    padding-left: 0.375rem;
  }
  
  .gutter-14 {
    margin-left: -0.438rem;
    margin-right: -0.438rem;
  }
  .gutter-14 > [class*=col-] {
    padding-right: 0.438rem;
    padding-left: 0.438rem;
  }
  
  .gutter-16 {
    margin-left: -0.5rem;
    margin-right: -0.5rem;
  }
  .gutter-16 > [class*=col-] {
    padding-right: 0.5rem;
    padding-left: 0.5rem;
  }
  
  .gutter-20 {
    margin-left: -0.625rem;
    margin-right: -0.625rem;
  }
  .gutter-20 > [class*=col-] {
    padding-right: 0.625rem;
    padding-left: 0.625rem;
  }
  
  .gutter-24 {
    margin-left: -0.75rem;
    margin-right: -0.75rem;
  }
  .gutter-24 > [class*=col-] {
    padding-right: 0.75rem;
    padding-left: 0.75rem;
  }
  
  .gutter-32 {
    margin-left: -1rem;
    margin-right: -1rem;
  }
  .gutter-32 > [class*=col-] {
    padding-right: 1rem;
    padding-left: 1rem;
  }
  
  .gutter-40 {
    margin-left: -1.25rem;
    margin-right: -1.25rem;
  }
  .gutter-40 > [class*=col-] {
    padding-right: 1.25rem;
    padding-left: 1.25rem;
  }
  
  .gutter-48 {
    margin-left: -1.5rem;
    margin-right: -1.5rem;
  }
  .gutter-48 > [class*=col-] {
    padding-right: 1.5rem;
    padding-left: 1.5rem;
  }
  
  .row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  
  .no-gutters {
    margin-right: 0;
    margin-left: 0;
  }
  
  .no-gutters > .col,
  .no-gutters > [class*=col-] {
    padding-right: 0;
    padding-left: 0;
  }
  
  .col,
  .col-1,
  .col-2,
  .col-3,
  .col-4,
  .col-5,
  .col-6,
  .col-7,
  .col-8,
  .col-9,
  .col-10,
  .col-11,
  .col-12,
  .col-auto,
  .col-lg,
  .col-lg-1,
  .col-lg-2,
  .col-lg-3,
  .col-lg-4,
  .col-lg-5,
  .col-lg-6,
  .col-lg-7,
  .col-lg-8,
  .col-lg-9,
  .col-lg-10,
  .col-lg-11,
  .col-lg-12,
  .col-lg-auto,
  .col-md,
  .col-md-1,
  .col-md-2,
  .col-md-3,
  .col-md-4,
  .col-md-5,
  .col-md-6,
  .col-md-7,
  .col-md-8,
  .col-md-9,
  .col-md-10,
  .col-md-11,
  .col-md-12,
  .col-md-auto,
  .col-sm,
  .col-sm-1,
  .col-sm-2,
  .col-sm-3,
  .col-sm-4,
  .col-sm-5,
  .col-sm-6,
  .col-sm-7,
  .col-sm-8,
  .col-sm-9,
  .col-sm-10,
  .col-sm-11,
  .col-sm-12,
  .col-sm-auto,
  .col-xl,
  .col-xl-1,
  .col-xl-2,
  .col-xl-3,
  .col-xl-4,
  .col-xl-5,
  .col-xl-6,
  .col-xl-7,
  .col-xl-8,
  .col-xl-9,
  .col-xl-10,
  .col-xl-11,
  .col-xl-12,
  .col-xl-auto {
    position: relative;
    width: 100%;
  }
  
  .col {
    -ms-flex-preferred-size: 0;
    flex-basis: 0;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    max-width: 100%;
  }
  
  .row-cols-1 > * {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }
  
  .row-cols-2 > * {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
  }
  
  .row-cols-3 > * {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 33.333333%;
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }
  
  .row-cols-4 > * {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%;
  }
  
  .row-cols-5 > * {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 20%;
    flex: 0 0 20%;
    max-width: 20%;
  }
  
  .row-cols-6 > * {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 16.666667%;
    flex: 0 0 16.666667%;
    max-width: 16.666667%;
  }
  
  .col-auto {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 auto;
    flex: 0 0 auto;
    width: auto;
    max-width: 100%;
  }
  
  .col-1 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 8.333333%;
    flex: 0 0 8.333333%;
    max-width: 8.333333%;
  }
  
  .col-2 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 16.666667%;
    flex: 0 0 16.666667%;
    max-width: 16.666667%;
  }
  
  .col-3 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 25%;
    flex: 0 0 25%;
    max-width: 25%;
  }
  
  .col-4 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 33.333333%;
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }
  
  .col-5 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 41.666667%;
    flex: 0 0 41.666667%;
    max-width: 41.666667%;
  }
  
  .col-6 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 50%;
    flex: 0 0 50%;
    max-width: 50%;
  }
  
  .col-7 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 58.333333%;
    flex: 0 0 58.333333%;
    max-width: 58.333333%;
  }
  
  .col-8 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 66.666667%;
    flex: 0 0 66.666667%;
    max-width: 66.666667%;
  }
  
  .col-9 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 75%;
    flex: 0 0 75%;
    max-width: 75%;
  }
  
  .col-10 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 83.333333%;
    flex: 0 0 83.333333%;
    max-width: 83.333333%;
  }
  
  .col-11 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 91.666667%;
    flex: 0 0 91.666667%;
    max-width: 91.666667%;
  }
  
  .col-12 {
    -webkit-box-flex: 0;
    -ms-flex: 0 0 100%;
    flex: 0 0 100%;
    max-width: 100%;
  }
  
  .order-first {
    -webkit-box-ordinal-group: 0;
    -ms-flex-order: -1;
    order: -1;
  }
  
  .order-last {
    -webkit-box-ordinal-group: 14;
    -ms-flex-order: 13;
    order: 13;
  }
  
  .order-0 {
    -webkit-box-ordinal-group: 1;
    -ms-flex-order: 0;
    order: 0;
  }
  
  .order-1 {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
  }
  
  .order-2 {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2;
  }
  
  .order-3 {
    -webkit-box-ordinal-group: 4;
    -ms-flex-order: 3;
    order: 3;
  }
  
  .order-4 {
    -webkit-box-ordinal-group: 5;
    -ms-flex-order: 4;
    order: 4;
  }
  
  .order-5 {
    -webkit-box-ordinal-group: 6;
    -ms-flex-order: 5;
    order: 5;
  }
  
  .order-6 {
    -webkit-box-ordinal-group: 7;
    -ms-flex-order: 6;
    order: 6;
  }
  
  .order-7 {
    -webkit-box-ordinal-group: 8;
    -ms-flex-order: 7;
    order: 7;
  }
  
  .order-8 {
    -webkit-box-ordinal-group: 9;
    -ms-flex-order: 8;
    order: 8;
  }
  
  .order-9 {
    -webkit-box-ordinal-group: 10;
    -ms-flex-order: 9;
    order: 9;
  }
  
  .order-10 {
    -webkit-box-ordinal-group: 11;
    -ms-flex-order: 10;
    order: 10;
  }
  
  .order-11 {
    -webkit-box-ordinal-group: 12;
    -ms-flex-order: 11;
    order: 11;
  }
  
  .order-12 {
    -webkit-box-ordinal-group: 13;
    -ms-flex-order: 12;
    order: 12;
  }
  
  .offset-1 {
    margin-left: 8.333333%;
  }
  
  .offset-2 {
    margin-left: 16.666667%;
  }
  
  .offset-3 {
    margin-left: 25%;
  }
  
  .offset-4 {
    margin-left: 33.333333%;
  }
  
  .offset-5 {
    margin-left: 41.666667%;
  }
  
  .offset-6 {
    margin-left: 50%;
  }
  
  .offset-7 {
    margin-left: 58.333333%;
  }
  
  .offset-8 {
    margin-left: 66.666667%;
  }
  
  .offset-9 {
    margin-left: 75%;
  }
  
  .offset-10 {
    margin-left: 83.333333%;
  }
  
  .offset-11 {
    margin-left: 91.666667%;
  }
  
  @media (min-width: 576px) {
    .col-sm {
      -ms-flex-preferred-size: 0;
      flex-basis: 0;
      -webkit-box-flex: 1;
      -ms-flex-positive: 1;
      flex-grow: 1;
      max-width: 100%;
    }
    .row-cols-sm-1 > * {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 100%;
      flex: 0 0 100%;
      max-width: 100%;
    }
    .row-cols-sm-2 > * {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 50%;
      flex: 0 0 50%;
      max-width: 50%;
    }
    .row-cols-sm-3 > * {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 33.333333%;
      flex: 0 0 33.333333%;
      max-width: 33.333333%;
    }
    .row-cols-sm-4 > * {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 25%;
      flex: 0 0 25%;
      max-width: 25%;
    }
    .row-cols-sm-5 > * {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 20%;
      flex: 0 0 20%;
      max-width: 20%;
    }
    .row-cols-sm-6 > * {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 16.666667%;
      flex: 0 0 16.666667%;
      max-width: 16.666667%;
    }
    .col-sm-auto {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
      flex: 0 0 auto;
      width: auto;
      max-width: 100%;
    }
    .col-sm-1 {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 8.333333%;
      flex: 0 0 8.333333%;
      max-width: 8.333333%;
    }
    .col-sm-2 {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 16.666667%;
      flex: 0 0 16.666667%;
      max-width: 16.666667%;
    }
    .col-sm-3 {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 25%;
      flex: 0 0 25%;
      max-width: 25%;
    }
    .col-sm-4 {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 33.333333%;
      flex: 0 0 33.333333%;
      max-width: 33.333333%;
    }
    .col-sm-5 {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 41.666667%;
      flex: 0 0 41.666667%;
      max-width: 41.666667%;
    }
    .col-sm-6 {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 50%;
      flex: 0 0 50%;
      max-width: 50%;
    }
    .col-sm-7 {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 58.333333%;
      flex: 0 0 58.333333%;
      max-width: 58.333333%;
    }
    .col-sm-8 {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 66.666667%;
      flex: 0 0 66.666667%;
      max-width: 66.666667%;
    }
    .col-sm-9 {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 75%;
      flex: 0 0 75%;
      max-width: 75%;
    }
    .col-sm-10 {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 83.333333%;
      flex: 0 0 83.333333%;
      max-width: 83.333333%;
    }
    .col-sm-11 {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 91.666667%;
      flex: 0 0 91.666667%;
      max-width: 91.666667%;
    }
    .col-sm-12 {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 100%;
      flex: 0 0 100%;
      max-width: 100%;
    }
    .order-sm-first {
      -webkit-box-ordinal-group: 0;
      -ms-flex-order: -1;
      order: -1;
    }
    .order-sm-last {
      -webkit-box-ordinal-group: 14;
      -ms-flex-order: 13;
      order: 13;
    }
    .order-sm-0 {
      -webkit-box-ordinal-group: 1;
      -ms-flex-order: 0;
      order: 0;
    }
    .order-sm-1 {
      -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
      order: 1;
    }
    .order-sm-2 {
      -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
      order: 2;
    }
    .order-sm-3 {
      -webkit-box-ordinal-group: 4;
      -ms-flex-order: 3;
      order: 3;
    }
    .order-sm-4 {
      -webkit-box-ordinal-group: 5;
      -ms-flex-order: 4;
      order: 4;
    }
    .order-sm-5 {
      -webkit-box-ordinal-group: 6;
      -ms-flex-order: 5;
      order: 5;
    }
    .order-sm-6 {
      -webkit-box-ordinal-group: 7;
      -ms-flex-order: 6;
      order: 6;
    }
    .order-sm-7 {
      -webkit-box-ordinal-group: 8;
      -ms-flex-order: 7;
      order: 7;
    }
    .order-sm-8 {
      -webkit-box-ordinal-group: 9;
      -ms-flex-order: 8;
      order: 8;
    }
    .order-sm-9 {
      -webkit-box-ordinal-group: 10;
      -ms-flex-order: 9;
      order: 9;
    }
    .order-sm-10 {
      -webkit-box-ordinal-group: 11;
      -ms-flex-order: 10;
      order: 10;
    }
    .order-sm-11 {
      -webkit-box-ordinal-group: 12;
      -ms-flex-order: 11;
      order: 11;
    }
    .order-sm-12 {
      -webkit-box-ordinal-group: 13;
      -ms-flex-order: 12;
      order: 12;
    }
    .offset-sm-0 {
      margin-left: 0;
    }
    .offset-sm-1 {
      margin-left: 8.333333%;
    }
    .offset-sm-2 {
      margin-left: 16.666667%;
    }
    .offset-sm-3 {
      margin-left: 25%;
    }
    .offset-sm-4 {
      margin-left: 33.333333%;
    }
    .offset-sm-5 {
      margin-left: 41.666667%;
    }
    .offset-sm-6 {
      margin-left: 50%;
    }
    .offset-sm-7 {
      margin-left: 58.333333%;
    }
    .offset-sm-8 {
      margin-left: 66.666667%;
    }
    .offset-sm-9 {
      margin-left: 75%;
    }
    .offset-sm-10 {
      margin-left: 83.333333%;
    }
    .offset-sm-11 {
      margin-left: 91.666667%;
    }
  }
  @media (min-width: 768px) {
    .col-md {
      -ms-flex-preferred-size: 0;
      flex-basis: 0;
      -webkit-box-flex: 1;
      -ms-flex-positive: 1;
      flex-grow: 1;
      max-width: 100%;
    }
    .row-cols-md-1 > * {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 100%;
      flex: 0 0 100%;
      max-width: 100%;
    }
    .row-cols-md-2 > * {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 50%;
      flex: 0 0 50%;
      max-width: 50%;
    }
    .row-cols-md-3 > * {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 33.333333%;
      flex: 0 0 33.333333%;
      max-width: 33.333333%;
    }
    .row-cols-md-4 > * {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 25%;
      flex: 0 0 25%;
      max-width: 25%;
    }
    .row-cols-md-5 > * {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 20%;
      flex: 0 0 20%;
      max-width: 20%;
    }
    .row-cols-md-6 > * {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 16.666667%;
      flex: 0 0 16.666667%;
      max-width: 16.666667%;
    }
    .col-md-auto {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
      flex: 0 0 auto;
      width: auto;
      max-width: 100%;
    }
    .col-md-1 {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 8.333333%;
      flex: 0 0 8.333333%;
      max-width: 8.333333%;
    }
    .col-md-2 {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 16.666667%;
      flex: 0 0 16.666667%;
      max-width: 16.666667%;
    }
    .col-md-3 {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 25%;
      flex: 0 0 25%;
      max-width: 25%;
    }
    .col-md-4 {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 33.333333%;
      flex: 0 0 33.333333%;
      max-width: 33.333333%;
    }
    .col-md-5 {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 41.666667%;
      flex: 0 0 41.666667%;
      max-width: 41.666667%;
    }
    .col-md-6 {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 50%;
      flex: 0 0 50%;
      max-width: 50%;
    }
    .col-md-7 {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 58.333333%;
      flex: 0 0 58.333333%;
      max-width: 58.333333%;
    }
    .col-md-8 {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 66.666667%;
      flex: 0 0 66.666667%;
      max-width: 66.666667%;
    }
    .col-md-9 {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 75%;
      flex: 0 0 75%;
      max-width: 75%;
    }
    .col-md-10 {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 83.333333%;
      flex: 0 0 83.333333%;
      max-width: 83.333333%;
    }
    .col-md-11 {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 91.666667%;
      flex: 0 0 91.666667%;
      max-width: 91.666667%;
    }
    .col-md-12 {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 100%;
      flex: 0 0 100%;
      max-width: 100%;
    }
    .order-md-first {
      -webkit-box-ordinal-group: 0;
      -ms-flex-order: -1;
      order: -1;
    }
    .order-md-last {
      -webkit-box-ordinal-group: 14;
      -ms-flex-order: 13;
      order: 13;
    }
    .order-md-0 {
      -webkit-box-ordinal-group: 1;
      -ms-flex-order: 0;
      order: 0;
    }
    .order-md-1 {
      -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
      order: 1;
    }
    .order-md-2 {
      -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
      order: 2;
    }
    .order-md-3 {
      -webkit-box-ordinal-group: 4;
      -ms-flex-order: 3;
      order: 3;
    }
    .order-md-4 {
      -webkit-box-ordinal-group: 5;
      -ms-flex-order: 4;
      order: 4;
    }
    .order-md-5 {
      -webkit-box-ordinal-group: 6;
      -ms-flex-order: 5;
      order: 5;
    }
    .order-md-6 {
      -webkit-box-ordinal-group: 7;
      -ms-flex-order: 6;
      order: 6;
    }
    .order-md-7 {
      -webkit-box-ordinal-group: 8;
      -ms-flex-order: 7;
      order: 7;
    }
    .order-md-8 {
      -webkit-box-ordinal-group: 9;
      -ms-flex-order: 8;
      order: 8;
    }
    .order-md-9 {
      -webkit-box-ordinal-group: 10;
      -ms-flex-order: 9;
      order: 9;
    }
    .order-md-10 {
      -webkit-box-ordinal-group: 11;
      -ms-flex-order: 10;
      order: 10;
    }
    .order-md-11 {
      -webkit-box-ordinal-group: 12;
      -ms-flex-order: 11;
      order: 11;
    }
    .order-md-12 {
      -webkit-box-ordinal-group: 13;
      -ms-flex-order: 12;
      order: 12;
    }
    .offset-md-0 {
      margin-left: 0;
    }
    .offset-md-1 {
      margin-left: 8.333333%;
    }
    .offset-md-2 {
      margin-left: 16.666667%;
    }
    .offset-md-3 {
      margin-left: 25%;
    }
    .offset-md-4 {
      margin-left: 33.333333%;
    }
    .offset-md-5 {
      margin-left: 41.666667%;
    }
    .offset-md-6 {
      margin-left: 50%;
    }
    .offset-md-7 {
      margin-left: 58.333333%;
    }
    .offset-md-8 {
      margin-left: 66.666667%;
    }
    .offset-md-9 {
      margin-left: 75%;
    }
    .offset-md-10 {
      margin-left: 83.333333%;
    }
    .offset-md-11 {
      margin-left: 91.666667%;
    }
  }
  @media (min-width: 992px) {
    .col-lg {
      -ms-flex-preferred-size: 0;
      flex-basis: 0;
      -webkit-box-flex: 1;
      -ms-flex-positive: 1;
      flex-grow: 1;
      max-width: 100%;
    }
    .row-cols-lg-1 > * {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 100%;
      flex: 0 0 100%;
      max-width: 100%;
    }
    .row-cols-lg-2 > * {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 50%;
      flex: 0 0 50%;
      max-width: 50%;
    }
    .row-cols-lg-3 > * {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 33.333333%;
      flex: 0 0 33.333333%;
      max-width: 33.333333%;
    }
    .row-cols-lg-4 > * {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 25%;
      flex: 0 0 25%;
      max-width: 25%;
    }
    .row-cols-lg-5 > * {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 20%;
      flex: 0 0 20%;
      max-width: 20%;
    }
    .row-cols-lg-6 > * {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 16.666667%;
      flex: 0 0 16.666667%;
      max-width: 16.666667%;
    }
    .col-lg-auto {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
      flex: 0 0 auto;
      width: auto;
      max-width: 100%;
    }
    .col-lg-1 {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 8.333333%;
      flex: 0 0 8.333333%;
      max-width: 8.333333%;
    }
    .col-lg-2 {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 16.666667%;
      flex: 0 0 16.666667%;
      max-width: 16.666667%;
    }
    .col-lg-3 {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 25%;
      flex: 0 0 25%;
      max-width: 25%;
    }
    .col-lg-4 {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 33.333333%;
      flex: 0 0 33.333333%;
      max-width: 33.333333%;
    }
    .col-lg-5 {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 41.666667%;
      flex: 0 0 41.666667%;
      max-width: 41.666667%;
    }
    .col-lg-6 {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 50%;
      flex: 0 0 50%;
      max-width: 50%;
    }
    .col-lg-7 {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 58.333333%;
      flex: 0 0 58.333333%;
      max-width: 58.333333%;
    }
    .col-lg-8 {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 66.666667%;
      flex: 0 0 66.666667%;
      max-width: 66.666667%;
    }
    .col-lg-9 {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 75%;
      flex: 0 0 75%;
      max-width: 75%;
    }
    .col-lg-10 {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 83.333333%;
      flex: 0 0 83.333333%;
      max-width: 83.333333%;
    }
    .col-lg-11 {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 91.666667%;
      flex: 0 0 91.666667%;
      max-width: 91.666667%;
    }
    .col-lg-12 {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 100%;
      flex: 0 0 100%;
      max-width: 100%;
    }
    .order-lg-first {
      -webkit-box-ordinal-group: 0;
      -ms-flex-order: -1;
      order: -1;
    }
    .order-lg-last {
      -webkit-box-ordinal-group: 14;
      -ms-flex-order: 13;
      order: 13;
    }
    .order-lg-0 {
      -webkit-box-ordinal-group: 1;
      -ms-flex-order: 0;
      order: 0;
    }
    .order-lg-1 {
      -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
      order: 1;
    }
    .order-lg-2 {
      -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
      order: 2;
    }
    .order-lg-3 {
      -webkit-box-ordinal-group: 4;
      -ms-flex-order: 3;
      order: 3;
    }
    .order-lg-4 {
      -webkit-box-ordinal-group: 5;
      -ms-flex-order: 4;
      order: 4;
    }
    .order-lg-5 {
      -webkit-box-ordinal-group: 6;
      -ms-flex-order: 5;
      order: 5;
    }
    .order-lg-6 {
      -webkit-box-ordinal-group: 7;
      -ms-flex-order: 6;
      order: 6;
    }
    .order-lg-7 {
      -webkit-box-ordinal-group: 8;
      -ms-flex-order: 7;
      order: 7;
    }
    .order-lg-8 {
      -webkit-box-ordinal-group: 9;
      -ms-flex-order: 8;
      order: 8;
    }
    .order-lg-9 {
      -webkit-box-ordinal-group: 10;
      -ms-flex-order: 9;
      order: 9;
    }
    .order-lg-10 {
      -webkit-box-ordinal-group: 11;
      -ms-flex-order: 10;
      order: 10;
    }
    .order-lg-11 {
      -webkit-box-ordinal-group: 12;
      -ms-flex-order: 11;
      order: 11;
    }
    .order-lg-12 {
      -webkit-box-ordinal-group: 13;
      -ms-flex-order: 12;
      order: 12;
    }
    .offset-lg-0 {
      margin-left: 0;
    }
    .offset-lg-1 {
      margin-left: 8.333333%;
    }
    .offset-lg-2 {
      margin-left: 16.666667%;
    }
    .offset-lg-3 {
      margin-left: 25%;
    }
    .offset-lg-4 {
      margin-left: 33.333333%;
    }
    .offset-lg-5 {
      margin-left: 41.666667%;
    }
    .offset-lg-6 {
      margin-left: 50%;
    }
    .offset-lg-7 {
      margin-left: 58.333333%;
    }
    .offset-lg-8 {
      margin-left: 66.666667%;
    }
    .offset-lg-9 {
      margin-left: 75%;
    }
    .offset-lg-10 {
      margin-left: 83.333333%;
    }
    .offset-lg-11 {
      margin-left: 91.666667%;
    }
  }
  @media (min-width: 1200px) {
    .col-xl {
      -ms-flex-preferred-size: 0;
      flex-basis: 0;
      -webkit-box-flex: 1;
      -ms-flex-positive: 1;
      flex-grow: 1;
      max-width: 100%;
    }
    .row-cols-xl-1 > * {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 100%;
      flex: 0 0 100%;
      max-width: 100%;
    }
    .row-cols-xl-2 > * {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 50%;
      flex: 0 0 50%;
      max-width: 50%;
    }
    .row-cols-xl-3 > * {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 33.333333%;
      flex: 0 0 33.333333%;
      max-width: 33.333333%;
    }
    .row-cols-xl-4 > * {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 25%;
      flex: 0 0 25%;
      max-width: 25%;
    }
    .row-cols-xl-5 > * {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 20%;
      flex: 0 0 20%;
      max-width: 20%;
    }
    .row-cols-xl-6 > * {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 16.666667%;
      flex: 0 0 16.666667%;
      max-width: 16.666667%;
    }
    .col-xl-auto {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
      flex: 0 0 auto;
      width: auto;
      max-width: 100%;
    }
    .col-xl-1 {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 8.333333%;
      flex: 0 0 8.333333%;
      max-width: 8.333333%;
    }
    .col-xl-2 {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 16.666667%;
      flex: 0 0 16.666667%;
      max-width: 16.666667%;
    }
    .col-xl-3 {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 25%;
      flex: 0 0 25%;
      max-width: 25%;
    }
    .col-xl-4 {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 33.333333%;
      flex: 0 0 33.333333%;
      max-width: 33.333333%;
    }
    .col-xl-5 {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 41.666667%;
      flex: 0 0 41.666667%;
      max-width: 41.666667%;
    }
    .col-xl-6 {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 50%;
      flex: 0 0 50%;
      max-width: 50%;
    }
    .col-xl-7 {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 58.333333%;
      flex: 0 0 58.333333%;
      max-width: 58.333333%;
    }
    .col-xl-8 {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 66.666667%;
      flex: 0 0 66.666667%;
      max-width: 66.666667%;
    }
    .col-xl-9 {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 75%;
      flex: 0 0 75%;
      max-width: 75%;
    }
    .col-xl-10 {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 83.333333%;
      flex: 0 0 83.333333%;
      max-width: 83.333333%;
    }
    .col-xl-11 {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 91.666667%;
      flex: 0 0 91.666667%;
      max-width: 91.666667%;
    }
    .col-xl-12 {
      -webkit-box-flex: 0;
      -ms-flex: 0 0 100%;
      flex: 0 0 100%;
      max-width: 100%;
    }
    .order-xl-first {
      -webkit-box-ordinal-group: 0;
      -ms-flex-order: -1;
      order: -1;
    }
    .order-xl-last {
      -webkit-box-ordinal-group: 14;
      -ms-flex-order: 13;
      order: 13;
    }
    .order-xl-0 {
      -webkit-box-ordinal-group: 1;
      -ms-flex-order: 0;
      order: 0;
    }
    .order-xl-1 {
      -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
      order: 1;
    }
    .order-xl-2 {
      -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
      order: 2;
    }
    .order-xl-3 {
      -webkit-box-ordinal-group: 4;
      -ms-flex-order: 3;
      order: 3;
    }
    .order-xl-4 {
      -webkit-box-ordinal-group: 5;
      -ms-flex-order: 4;
      order: 4;
    }
    .order-xl-5 {
      -webkit-box-ordinal-group: 6;
      -ms-flex-order: 5;
      order: 5;
    }
    .order-xl-6 {
      -webkit-box-ordinal-group: 7;
      -ms-flex-order: 6;
      order: 6;
    }
    .order-xl-7 {
      -webkit-box-ordinal-group: 8;
      -ms-flex-order: 7;
      order: 7;
    }
    .order-xl-8 {
      -webkit-box-ordinal-group: 9;
      -ms-flex-order: 8;
      order: 8;
    }
    .order-xl-9 {
      -webkit-box-ordinal-group: 10;
      -ms-flex-order: 9;
      order: 9;
    }
    .order-xl-10 {
      -webkit-box-ordinal-group: 11;
      -ms-flex-order: 10;
      order: 10;
    }
    .order-xl-11 {
      -webkit-box-ordinal-group: 12;
      -ms-flex-order: 11;
      order: 11;
    }
    .order-xl-12 {
      -webkit-box-ordinal-group: 13;
      -ms-flex-order: 12;
      order: 12;
    }
    .offset-xl-0 {
      margin-left: 0;
    }
    .offset-xl-1 {
      margin-left: 8.333333%;
    }
    .offset-xl-2 {
      margin-left: 16.666667%;
    }
    .offset-xl-3 {
      margin-left: 25%;
    }
    .offset-xl-4 {
      margin-left: 33.333333%;
    }
    .offset-xl-5 {
      margin-left: 41.666667%;
    }
    .offset-xl-6 {
      margin-left: 50%;
    }
    .offset-xl-7 {
      margin-left: 58.333333%;
    }
    .offset-xl-8 {
      margin-left: 66.666667%;
    }
    .offset-xl-9 {
      margin-left: 75%;
    }
    .offset-xl-10 {
      margin-left: 83.333333%;
    }
    .offset-xl-11 {
      margin-left: 91.666667%;
    }
  }
  .card {
    background-color: var(--color-bg);
    -webkit-box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1);
    box-shadow: 0 10px 15px -3px rgba(0, 0, 0, 0.1), 0 4px 6px -4px rgba(0, 0, 0, 0.1);
    border-radius: 1rem;
    padding: 1rem;
  }
  @media (min-width: 768px) {
    .card {
      padding: 1.5rem;
    }
  }
  .card-form {
    background-color: var(--color-card-base);
    -webkit-box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.25);
    border-radius: 1rem;
    padding: 1rem;
  }
  @media (min-width: 768px) {
    .card-form {
      padding: 2rem;
      border-radius: 1.5rem;
    }
  }
  @media (min-width: 768px) {
    .card-hover {
      -webkit-transition: -webkit-transform 200ms ease-in-out;
      transition: -webkit-transform 200ms ease-in-out;
      transition: transform 200ms ease-in-out;
      transition: transform 200ms ease-in-out, -webkit-transform 200ms ease-in-out;
    }
    .card-hover:hover {
      -webkit-transform: scale(1.05);
      -ms-transform: scale(1.05);
      transform: scale(1.05);
    }
  }
  .card-danger {
    background-color: rgba(254, 242, 242, 0.8);
    border: 1px solid rgba(254, 202, 202, 0.5);
  }
  .card-danger .card-heading-icon {
    color: var(--color-red-600);
  }
  .card-danger .card-heading-title {
    color: var(--color-text-red-900);
  }
  .card-detail-fullname {
    font-size: 1rem;
    line-height: 1.5rem;
    font-weight: 700;
    color: var(--color-gray-900);
  }
  .card-detail-info {
    font-size: 0.875rem;
    line-height: 1.25rem;
    font-weight: 500;
    color: var(--color-gray-600);
  }
  .card-list[data-grid="3"] {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 1.5rem 1fr 1.5rem 1fr;
    grid-template-columns: repeat(3, 1fr);
    -ms-grid-rows: auto;
    grid-template-rows: auto;
    gap: 1.5rem;
  }
  .card-list[data-grid="3"] > *:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .card-list[data-grid="3"] > *:nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  .card-list[data-grid="3"] > *:nth-child(3) {
    -ms-grid-row: 1;
    -ms-grid-column: 5;
  }
  .card-list[data-grid="2"] {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr;
    grid-template-columns: repeat(1, 1fr);
    -ms-grid-rows: auto;
    grid-template-rows: auto;
    gap: 1rem;
  }
  .card-list[data-grid="2"] > *:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  @media (min-width: 768px) {
    .card-list[data-grid="2"] {
      -ms-grid-columns: 1fr 1.5rem 1fr;
      grid-template-columns: repeat(2, 1fr);
      -ms-grid-rows: auto;
      grid-template-rows: auto;
      gap: 1.5rem;
    }
    .card-list[data-grid="2"] > *:nth-child(1) {
      -ms-grid-row: 1;
      -ms-grid-column: 1;
    }
    .card-list[data-grid="2"] > *:nth-child(2) {
      -ms-grid-row: 1;
      -ms-grid-column: 3;
    }
  }
  .card-header {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-bottom: 1rem;
  }
  .card-header-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    text-decoration: none;
  }
  .card-header-action {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 0.375rem;
    background-color: var(--color-bg);
    border-radius: 0.75rem;
    -webkit-box-shadow: 0 4px 6px -2px rgba(0, 0, 0, 0.1), 0 2px 4px -3px rgba(0, 0, 0, 0.1);
    box-shadow: 0 4px 6px -2px rgba(0, 0, 0, 0.1), 0 2px 4px -3px rgba(0, 0, 0, 0.1);
    cursor: pointer;
    -webkit-transition: all 200ms ease-in-out;
    transition: all 200ms ease-in-out;
    text-decoration: none;
  }
  @media (min-width: 768px) {
    .card-header-action {
      padding: 0.375rem;
    }
  }
  .card-header-action:hover {
    -webkit-transform: translateY(-2px);
    -ms-transform: translateY(-2px);
    transform: translateY(-2px);
    -webkit-box-shadow: 0 8px 12px -3px rgba(0, 0, 0, 0.12);
    box-shadow: 0 8px 12px -3px rgba(0, 0, 0, 0.12);
  }
  .card-header-action .ph {
    display: inline-block;
    font-size: 1.25rem;
    line-height: 1.25rem;
    padding: 2px;
    background: var(--main-gradient);
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    margin-bottom: 0.125rem;
  }
  .card-header-action span {
    font-size: 0.625rem;
    line-height: 0.75rem;
    font-weight: 500;
    color: var(--color-gray-600);
  }
  .card-heading {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 1rem;
  }
  .card-heading-icon {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 1.25rem;
    height: 1.25rem;
    font-size: 1.25rem;
    font-weight: 700;
    color: var(--color-text-blue);
    margin-right: 0.5rem;
  }
  .card-heading-title {
    font-size: 1.125rem;
    line-height: 1.75rem;
    font-weight: 700;
    color: var(--color-gray-900);
    margin: 0;
  }
  .card-detail {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .card-detail-account {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
  }
  .card-avatar {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 3rem;
    height: 3rem;
    font-size: 1.5rem;
    border-radius: 50%;
    background: var(--main-gradient);
    margin-right: 0.75rem;
  }
  .card-info {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .card-info-item {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-bottom: 0.5rem;
  }
  .card-info-item:last-child {
    margin-bottom: 0;
  }
  .card-info-item.is-expandable {
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
  }
  .card-info-label {
    font-size: 0.875rem;
    line-height: 1.25rem;
    color: var(--color-gray-600);
  }
  .card-info-value {
    max-width: 12.5rem;
    font-size: 0.875rem;
    line-height: 1.25rem;
    color: var(--color-gray-900);
    font-weight: 600;
    text-align: right;
  }
  .card-info-value.expandable-value {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end;
  }
  .card-info-value.expandable-value .expandable-content {
    display: block;
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
    max-width: 100%;
    text-align: right;
  }
  .card-info-value.expandable-value .expandable-toggle {
    margin-top: 0.25rem;
    cursor: pointer;
    font-weight: 500;
  }
  .card-info-value.expandable-value.is-expanded .expandable-content {
    white-space: normal;
    word-break: break-word;
  }
  .card-action-full {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr 0.5rem 1fr;
    grid-template-columns: repeat(2, 1fr);
    -ms-grid-rows: auto;
    grid-template-rows: auto;
    gap: 0.5rem;
  }
  .card-action-full > *:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .card-action-full > *:nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  
  .container {
    width: 100%;
    margin: 0 auto;
    padding: 0 1rem;
  }
  @media (min-width: 1280px) {
    .container {
      max-width: 1248px;
      margin: 0 auto;
      padding: 0;
    }
  }
  
  .base-container {
    min-height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    padding-top: 3.25rem !important;
  }
  @media (min-width: 1024px) {
    .base-container {
      padding-top: 5.5rem !important;
    }
  }
  
  .page-container {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
  }
  
  .btn {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    border: 0 solid transparent;
    text-decoration: none !important;
    text-align: center;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-transition: background-color 200ms ease-in-out, color 200ms ease-in-out, border-color 200ms ease-in-out, -webkit-transform 200ms ease-in-out;
    transition: background-color 200ms ease-in-out, color 200ms ease-in-out, border-color 200ms ease-in-out, -webkit-transform 200ms ease-in-out;
    transition: background-color 200ms ease-in-out, color 200ms ease-in-out, border-color 200ms ease-in-out, transform 200ms ease-in-out;
    transition: background-color 200ms ease-in-out, color 200ms ease-in-out, border-color 200ms ease-in-out, transform 200ms ease-in-out, -webkit-transform 200ms ease-in-out;
  }
  .btn:focus {
    outline: 0 !important;
    -webkit-box-shadow: none;
    box-shadow: none;
  }
  .btn-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  .btn-primary {
    background-color: #552C7E;
    color: #FFFFFF;
  }
  .btn-white {
    background-color: #FFFFFF;
    color: #552C7E;
    font-size: 1rem;
    line-height: 1.5rem;
    font-weight: 700;
    border-radius: 2rem;
    padding: 0.75rem 1.75rem;
  }
  .btn-white:hover {
    background-color: #F8F8FF;
    color: #552C7E;
  }
  .btn-md {
    font-size: 1rem;
    line-height: 1.5rem;
    font-weight: 600;
    border-radius: 2rem;
    padding: 0.75rem 1.5rem;
  }
  .btn-lg {
    border-radius: 1rem;
    padding: 1rem 2.5rem;
    font-weight: 600;
  }
  .btn-lg .btn-icon {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 1.25rem;
    height: 1.25rem;
    font-size: 1.25rem;
    font-weight: 700;
  }
  .btn-lg .btn-label {
    font-size: 1rem;
    line-height: 1.5rem;
    font-weight: 700;
  }
  .btn-fluid {
    display: block;
    width: 100%;
  }
  .btn-rounded {
    border-radius: 50rem !important;
  }
  .btn-accent {
    background-color: #FFA500;
    color: #FFFFFF;
    box-shadow: 0 10px 25px rgba(255, 165, 0, 0.35);
  }
  .btn-accent:hover {
    background-color: #F59300;
    color: #FFFFFF;
  }
  
  .modal-backdrop {
    position: fixed;
    inset: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    background-color: rgba(0, 0, 0, 0.4);
    backdrop-filter: blur(4px);
    padding: 1rem;
    opacity: 0;
    visibility: hidden;
    -webkit-transition: opacity 300ms ease, visibility 300ms ease;
    transition: opacity 300ms ease, visibility 300ms ease;
    z-index: 2000;
  }
  
  .modal-backdrop.modal-show {
    opacity: 1;
    visibility: visible;
  }
  
  .modal {
    max-height: 90vh;
    position: relative;
    background-color: #552C7E;
    border-radius: 2rem;
    padding: 2.5rem 2rem;
    -webkit-box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.4);
    box-shadow: 0 25px 50px -12px rgba(0, 0, 0, 0.4);
    opacity: 0;
    -webkit-transform: translateY(-20px);
    -ms-transform: translateY(-20px);
    transform: translateY(-20px);
    -webkit-transition: all 400ms cubic-bezier(0.16, 1, 0.3, 1);
    transition: all 400ms cubic-bezier(0.16, 1, 0.3, 1);
    overflow-y: auto;
    width: 100%;
    max-width: 30rem;
  }
  .modal .modal-close {
    position: absolute;
    top: 0.75rem;
    right: 0.75rem;
    width: 2.25rem;
    height: 2.25rem;
    background-color: rgba(255, 255, 255, 0.15);
    backdrop-filter: blur(5px);
    border-radius: 50%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    color: #FFFFFF;
    font-size: 1.125rem;
    cursor: pointer;
    opacity: 1;
    z-index: 10;
    -webkit-transition: background-color 200ms, -webkit-transform 200ms;
    transition: background-color 200ms, -webkit-transform 200ms;
    transition: background-color 200ms, transform 200ms;
    transition: background-color 200ms, transform 200ms, -webkit-transform 200ms;
  }
  @media (min-width: 768px) {
    .modal .modal-close {
      top: 1.25rem;
      right: 1.25rem;
      width: 2.75rem;
      height: 2.75rem;
      font-size: 1.5rem;
    }
  }
  .modal .modal-close:hover {
    background-color: rgba(255, 255, 255, 0.25);
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg);
  }
  .modal-body {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 2rem;
  }
  .modal-contact-title {
    color: #FFFFFF;
    font-size: 1.75rem;
    font-weight: 700;
    text-align: center;
    margin: 0;
  }
  .modal-contact-form {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 1rem;
  }
  .modal-contact-form .form-field {
    width: 100%;
  }
  .modal-contact-form .form-control {
    width: 100%;
    height: 3.25rem;
    background-color: #FFFFFF !important;
    border: 2px solid transparent;
    border-radius: 0.75rem;
    padding: 0 1.25rem;
    font-size: 1rem;
    color: #616161;
    -webkit-transition: border-color 200ms ease, -webkit-box-shadow 200ms ease;
    transition: border-color 200ms ease, -webkit-box-shadow 200ms ease;
    transition: border-color 200ms ease, box-shadow 200ms ease;
    transition: border-color 200ms ease, box-shadow 200ms ease, -webkit-box-shadow 200ms ease;
  }
  .modal-contact-form .form-control::-webkit-input-placeholder {
    color: #BDBDBD;
  }
  .modal-contact-form .form-control::-moz-placeholder {
    color: #BDBDBD;
  }
  .modal-contact-form .form-control:-ms-input-placeholder {
    color: #BDBDBD;
  }
  .modal-contact-form .form-control::-ms-input-placeholder {
    color: #BDBDBD;
  }
  .modal-contact-form .form-control::placeholder {
    color: #BDBDBD;
  }
  .modal-contact-form .form-control:focus {
    outline: none;
    border-color: #FFC107;
    -webkit-box-shadow: 0 0 0 4px rgba(255, 193, 7, 0.1);
    box-shadow: 0 0 0 4px rgba(255, 193, 7, 0.1);
  }
  .modal-contact-form .btn-submit {
    height: 3.5rem;
    background-color: #FFFFFF;
    color: #552C7E;
    border-radius: 50rem;
    font-size: 1.25rem;
    font-weight: 700;
    border: none;
    cursor: pointer;
    width: 100%;
    -webkit-transition: opacity 200ms, -webkit-transform 200ms;
    transition: opacity 200ms, -webkit-transform 200ms;
    transition: transform 200ms, opacity 200ms;
    transition: transform 200ms, opacity 200ms, -webkit-transform 200ms;
    margin-top: 0.5rem;
  }
  .modal-contact-form .btn-submit:hover {
    opacity: 0.9;
    -webkit-transform: scale(0.98);
    -ms-transform: scale(0.98);
    transform: scale(0.98);
  }
  
  .modal-backdrop.modal-show .modal {
    opacity: 1;
    -webkit-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
  }
  
  .modal.step-disabled {
    display: none;
  }
  
  .section-title {
    font-size: 1.5rem;
    line-height: 2rem;
    color: var(--color-gray-900);
    font-weight: 700;
  }
  @media (min-width: 768px) {
    .section-title {
      font-size: 1.875rem;
      line-height: 2.25rem;
    }
  }
  .section-description {
    font-size: 0.875rem;
    line-height: 1.25rem;
    color: var(--color-gray-600);
    font-weight: 500;
  }
  @media (min-width: 768px) {
    .section-description {
      font-size: 1rem;
      line-height: 1.5rem;
    }
  }
  
  /* ========== Section Heading (reusable) ========== */
  .section-heading {
    margin-bottom: 2rem;
  }
  @media (min-width: 768px) {
    .section-heading {
      margin-bottom: 3rem;
    }
  }
  .section-heading-title {
    font-size: 1.75rem;
    line-height: 2.25rem;
    font-weight: 700;
    color: #212121;
    margin: 0 0 0.75rem 0;
  }
  @media (min-width: 768px) {
    .section-heading-title {
      font-size: 2.25rem;
      line-height: 2.75rem;
    }
  }
  @media (min-width: 1024px) {
    .section-heading-title {
      font-size: 2.5rem;
      line-height: 3rem;
    }
  }
  .section-heading-highlight {
    color: #FFD166;
  }
  .section-heading-subtitle {
    font-size: 0.9375rem;
    line-height: 1.625rem;
    color: #616161;
    font-weight: normal;
    margin: 0;
    max-width: 40rem;
  }
  @media (min-width: 768px) {
    .section-heading-subtitle {
      font-size: 1rem;
      line-height: 1.75rem;
    }
  }
  .section-heading.text-center {
    text-align: center;
  }
  .section-heading.text-center .section-heading-subtitle {
    margin-left: auto;
    margin-right: auto;
  }
  
  /* ===================== HERO SECTION ===================== */
  .section-main {
    background-color: #FBFBFF;
    padding: 7rem 0 3rem;
    /* ---------- Stats ---------- */
  }
  @media (min-width: 768px) {
    .section-main {
      padding: 8rem 0 4rem;
    }
  }
  @media (min-width: 1024px) {
    .section-main {
      padding: 10rem 0 5rem;
    }
  }
  .section-main-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 2.5rem;
  }
  @media (min-width: 1024px) {
    .section-main-container {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -ms-flex-direction: row;
      flex-direction: row;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      gap: 3rem;
    }
  }
  .section-main-content {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  @media (min-width: 1024px) {
    .section-main-content {
      max-width: 50%;
    }
  }
  .section-main-media {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
  }
  @media (min-width: 1024px) {
    .section-main-media {
      -webkit-box-pack: end;
      -ms-flex-pack: end;
      justify-content: flex-end;
    }
  }
  .section-main-image-wrapper {
    position: relative;
    border-radius: 1.5rem;
    overflow: hidden;
    -webkit-box-shadow: 0 20px 40px -8px rgba(0, 0, 0, 0.12);
    box-shadow: 0 20px 40px -8px rgba(0, 0, 0, 0.12);
    max-width: 32rem;
    width: 100%;
  }
  @media (min-width: 1024px) {
    .section-main-image-wrapper {
      max-width: 100%;
    }
  }
  .section-main-image {
    width: 100%;
    display: block;
    -o-object-fit: cover;
    object-fit: cover;
  }
  .section-main-image-overlay {
    position: absolute;
    inset: 0;
    background: rgba(85, 44, 126, 0.3);
    border-radius: 1.5rem;
  }
  .section-main-title {
    font-size: 2rem;
    line-height: 2.5rem;
    font-weight: 700;
    color: #212121;
    margin: 0 0 1.25rem 0;
  }
  @media (min-width: 768px) {
    .section-main-title {
      font-size: 2.5rem;
      line-height: 3rem;
    }
  }
  @media (min-width: 1024px) {
    .section-main-title {
      font-size: 3rem;
      line-height: 3.75rem;
    }
  }
  .section-main-title-highlight {
    color: #FFD166;
  }
  .section-main-title-accent {
    color: #552C7E;
  }
  .section-main-description {
    font-size: 0.9375rem;
    line-height: 1.625rem;
    color: #616161;
    font-weight: normal;
    margin: 0 0 2rem 0;
    max-width: 28rem;
  }
  @media (min-width: 768px) {
    .section-main-description {
      font-size: 1rem;
      line-height: 1.75rem;
    }
  }
  .section-main-cta {
    margin-bottom: 2.5rem;
  }
  @media (min-width: 768px) {
    .section-main-cta {
      margin-bottom: 3rem;
    }
  }
  .section-main-stats {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    gap: 2rem;
  }
  @media (min-width: 768px) {
    .section-main-stats {
      gap: 3rem;
    }
  }
  .section-main-stat {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .section-main-stat-label {
    font-size: 0.8125rem;
    line-height: 1.125rem;
    color: #616161;
    font-weight: 500;
    margin-bottom: 0.25rem;
  }
  @media (min-width: 768px) {
    .section-main-stat-label {
      font-size: 0.875rem;
      line-height: 1.25rem;
    }
  }
  .section-main-stat-value {
    font-size: 1.5rem;
    line-height: 2rem;
    font-weight: 800;
    color: #552C7E;
  }
  @media (min-width: 768px) {
    .section-main-stat-value {
      font-size: 1.75rem;
      line-height: 2.25rem;
    }
  }
  
  /* ===================== INFO SECTION ===================== */
  .section-info {
    background-color: #FBFBFF;
    padding: 3rem 0;
  }
  @media (min-width: 768px) {
    .section-info {
      padding: 4rem 0;
    }
  }
  @media (min-width: 1024px) {
    .section-info {
      padding: 5rem 0;
    }
  }
  .section-info-grid {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 1.25rem;
  }
  @media (min-width: 640px) {
    .section-info-grid {
      -ms-grid-columns: (1fr)[2];
      grid-template-columns: repeat(2, 1fr);
    }
  }
  @media (min-width: 1024px) {
    .section-info-grid {
      -ms-grid-columns: 1fr 1.5rem 1fr 1.5rem 1fr;
      grid-template-columns: repeat(3, 1fr);
      gap: 1.5rem;
    }
  }
  .section-info-card {
    background-color: #FFFFFF;
    border-radius: 1rem;
    padding: 1.5rem;
    -webkit-transition: -webkit-transform 200ms ease, -webkit-box-shadow 200ms ease;
    transition: -webkit-transform 200ms ease, -webkit-box-shadow 200ms ease;
    transition: transform 200ms ease, box-shadow 200ms ease;
    transition: transform 200ms ease, box-shadow 200ms ease, -webkit-transform 200ms ease, -webkit-box-shadow 200ms ease;
  }
  @media (min-width: 768px) {
    .section-info-card {
      padding: 2rem;
    }
  }
  .section-info-card:hover {
    -webkit-transform: translateY(-4px);
    -ms-transform: translateY(-4px);
    transform: translateY(-4px);
    -webkit-box-shadow: 0 12px 24px -6px rgba(0, 0, 0, 0.1);
    box-shadow: 0 12px 24px -6px rgba(0, 0, 0, 0.1);
  }
  .section-info-card-icon {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 3rem;
    height: 3rem;
    border-radius: 50%;
    background-color: #552C7E;
    color: #FFFFFF;
    font-size: 1.5rem;
    margin-bottom: 1.25rem;
  }
  .section-info-card-title {
    font-size: 1.125rem;
    line-height: 1.5rem;
    font-weight: 700;
    color: #212121;
    margin: 0 0 0.5rem 0;
  }
  @media (min-width: 768px) {
    .section-info-card-title {
      font-size: 1.25rem;
      line-height: 1.75rem;
    }
  }
  .section-info-card-description {
    font-size: 0.875rem;
    line-height: 1.5rem;
    color: #616161;
    font-weight: normal;
    margin: 0;
  }
  
  /* ===================== COURSES SECTION ===================== */
  .section-courses {
    padding: 3rem 0;
    /* ---------- Featured (left) ---------- */
    /* ---------- List (right) ---------- */
    /* ---------- Course card (horizontal) ---------- */
  }
  @media (min-width: 768px) {
    .section-courses {
      padding: 4rem 0;
    }
  }
  @media (min-width: 1024px) {
    .section-courses {
      padding: 5rem 0;
    }
  }
  .section-courses-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 1.5rem;
  }
  @media (min-width: 1024px) {
    .section-courses-container {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -ms-flex-direction: row;
      flex-direction: row;
      gap: 2rem;
    }
  }
  .section-courses-featured {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
  }
  @media (min-width: 1024px) {
    .section-courses-featured {
      max-width: 50%;
    }
  }
  .section-courses-featured-card {
    position: relative;
    border-radius: 1.25rem;
    overflow: hidden;
    height: 100%;
    min-height: 20rem;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
  }
  @media (min-width: 768px) {
    .section-courses-featured-card {
      min-height: 28rem;
    }
  }
  .section-courses-featured-image {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
  }
  .section-courses-featured-overlay {
    position: absolute;
    inset: 0;
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(85, 44, 126, 0.3)), to(rgba(85, 44, 126, 0.85)));
    background: linear-gradient(180deg, rgba(85, 44, 126, 0.3) 0%, rgba(85, 44, 126, 0.85) 100%);
  }
  .section-courses-featured-content {
    position: relative;
    z-index: 1;
    padding: 1.5rem;
  }
  @media (min-width: 768px) {
    .section-courses-featured-content {
      padding: 2rem;
    }
  }
  .section-courses-featured-title {
    font-size: 1.25rem;
    line-height: 1.75rem;
    font-weight: 700;
    color: #FFFFFF;
    margin: 0 0 0.625rem 0;
  }
  @media (min-width: 768px) {
    .section-courses-featured-title {
      font-size: 1.5rem;
      line-height: 2rem;
    }
  }
  .section-courses-featured-description {
    font-size: 0.875rem;
    line-height: 1.375rem;
    color: rgba(255, 255, 255, 0.85);
    font-weight: normal;
    margin: 0;
  }
  .section-courses-list {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 1.25rem;
  }
  @media (min-width: 1024px) {
    .section-courses-list {
      max-width: 50%;
    }
  }
  .section-courses-card {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    background-color: #FFFFFF;
    border-radius: 1rem;
    overflow: hidden;
    -webkit-box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
    -webkit-transition: -webkit-transform 200ms ease, -webkit-box-shadow 200ms ease;
    transition: -webkit-transform 200ms ease, -webkit-box-shadow 200ms ease;
    transition: transform 200ms ease, box-shadow 200ms ease;
    transition: transform 200ms ease, box-shadow 200ms ease, -webkit-transform 200ms ease, -webkit-box-shadow 200ms ease;
  }
  @media (min-width: 640px) {
    .section-courses-card {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -ms-flex-direction: row;
      flex-direction: row;
    }
  }
  .section-courses-card:hover {
    -webkit-transform: translateY(-2px);
    -ms-transform: translateY(-2px);
    transform: translateY(-2px);
    -webkit-box-shadow: 0 8px 20px rgba(0, 0, 0, 0.1);
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.1);
  }
  .section-courses-card-media {
    position: relative;
    -ms-flex-negative: 0;
    flex-shrink: 0;
    width: 100%;
    height: 10rem;
    overflow: hidden;
  }
  @media (min-width: 640px) {
    .section-courses-card-media {
      width: 11rem;
      height: auto;
    }
  }
  .section-courses-card-image {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
  }
  .section-courses-card-overlay {
    position: absolute;
    inset: 0;
    background: rgba(85, 44, 126, 0.35);
  }
  .section-courses-card-badge {
    position: absolute;
    top: 0.75rem;
    left: 0.75rem;
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    padding: 0.25rem 0.75rem;
    border-radius: 2rem;
    background-color: #FFD166;
    color: #FFFFFF;
    font-size: 0.75rem;
    line-height: 1rem;
    font-weight: 600;
  }
  .section-courses-card-body {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    padding: 1rem;
  }
  @media (min-width: 768px) {
    .section-courses-card-body {
      padding: 1.25rem;
    }
  }
  .section-courses-card-title {
    font-size: 0.9375rem;
    line-height: 1.375rem;
    font-weight: 700;
    color: #212121;
    margin: 0 0 0.375rem 0;
  }
  @media (min-width: 768px) {
    .section-courses-card-title {
      font-size: 1rem;
      line-height: 1.5rem;
    }
  }
  .section-courses-card-description {
    font-size: 0.8125rem;
    line-height: 1.25rem;
    color: #616161;
    font-weight: normal;
    margin: 0 0 0.75rem 0;
  }
  .section-courses-card-footer {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-top: auto;
  }
  .section-courses-card-stats {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 1rem;
  }
  .section-courses-card-stat {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.75rem;
    line-height: 1rem;
    color: #616161;
    font-weight: 500;
  }
  .section-courses-card-stat i {
    font-size: 0.875rem;
    color: #552C7E;
  }
  
  /* ---------- Outlined button variant ---------- */
  .btn-outline-primary {
    background-color: transparent;
    border: 1.5px solid #552C7E;
    color: #552C7E;
    font-size: 0.8125rem;
    line-height: 1.125rem;
    font-weight: 600;
    border-radius: 2rem;
    padding: 0.5rem 1.25rem;
    -webkit-transition: background-color 200ms ease, color 200ms ease;
    transition: background-color 200ms ease, color 200ms ease;
  }
  .btn-outline-primary:hover {
    background-color: #552C7E;
    color: #FFFFFF;
  }
  
  /* ===================== TEAMS SECTION ===================== */
  .section-teams {
    background-color: #FBFBFF;
    padding: 3rem 0;
    /* Wave shape between image and info */
    /* ---------- Slider Navigation ---------- */
  }
  @media (min-width: 768px) {
    .section-teams {
      padding: 4rem 0;
    }
  }
  @media (min-width: 1024px) {
    .section-teams {
      padding: 5rem 0;
    }
  }
  .section-teams-slider {
    position: relative;
    overflow: hidden;
    padding: 0.5rem 0;
    margin: -0.5rem 0;
  }
  .section-teams-card {
    position: relative;
    text-align: center;
    background-color: #FFFFFF;
    border-radius: 1.25rem;
    overflow: hidden;
    border: 1px solid rgba(0, 0, 0, 0.05);
  }
  .section-teams-card-image-wrapper {
    position: relative;
    width: 100%;
    overflow: hidden;
  }
  .section-teams-card-image {
    width: 100%;
    aspect-ratio: 1/1.15;
    -o-object-fit: cover;
    object-fit: cover;
    display: block;
  }
  .section-teams-card-wave {
    position: absolute;
    bottom: -1px;
    left: 0;
    width: 100%;
    z-index: 2;
  }
  .section-teams-card-wave svg {
    display: block;
    width: 100%;
    height: auto;
  }
  .section-teams-card-info {
    position: relative;
    padding: 1rem 1rem 1.25rem;
    background-color: #FFFFFF;
  }
  .section-teams-card-pattern {
    position: absolute;
    z-index: 1;
    pointer-events: none;
    opacity: 0.7;
  }
  .section-teams-card-pattern--left {
    bottom: 0;
    left: -0.5rem;
    width: 5rem;
    height: auto;
  }
  .section-teams-card-pattern--right {
    bottom: 0;
    right: -0.5rem;
    width: 5rem;
    height: auto;
  }
  .section-teams-card-name {
    font-size: 1rem;
    line-height: 1.5rem;
    font-weight: 700;
    color: #212121;
    margin: 0 0 0.125rem 0;
  }
  @media (min-width: 768px) {
    .section-teams-card-name {
      font-size: 1.125rem;
      line-height: 1.75rem;
    }
  }
  .section-teams-card-role {
    font-size: 0.8125rem;
    line-height: 1.125rem;
    color: #616161;
    font-weight: 500;
    display: block;
  }
  .section-teams-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 1.5rem;
    max-width: 960px;
    margin: 0 auto;
  }
  .section-teams-grid--single {
    grid-template-columns: minmax(0, 280px);
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    max-width: none;
  }
  .section-teams-card-linkedin {
    display: -webkit-inline-box;
    display: -ms-inline-flexbox;
    display: inline-flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    position: relative;
    z-index: 2;
    margin-top: 0.75rem;
    width: 2rem;
    height: 2rem;
    border-radius: 50%;
    background-color: rgba(85, 44, 126, 0.1);
    color: #552C7E;
    font-size: 1.1rem;
    text-decoration: none;
    transition: all 200ms ease;
  }
  .section-teams-card-linkedin:hover {
    background-color: #552C7E;
    color: #FFFFFF;
  }
  .section-teams-advisor {
    margin-top: 3rem;
    text-align: center;
  }
  .section-teams-advisor-label {
    display: inline-block;
    margin-bottom: 1.5rem;
    padding: 0.4rem 1.25rem;
    border-radius: 50rem;
    background-color: rgba(85, 44, 126, 0.1);
    color: #552C7E;
    font-size: 0.875rem;
    font-weight: 700;
    letter-spacing: 0.5px;
    text-transform: uppercase;
  }
  @media (max-width: 767px) {
    .section-teams-grid {
      grid-template-columns: 1fr;
      max-width: 320px;
    }
  }
  @media (min-width: 480px) and (max-width: 767px) {
    .section-teams-grid {
      grid-template-columns: repeat(2, 1fr);
      max-width: 480px;
    }
    .section-teams-grid--single {
      grid-template-columns: minmax(0, 280px);
    }
  }
  .section-teams-nav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    gap: 1rem;
    margin-top: 1.5rem;
  }
  @media (min-width: 768px) {
    .section-teams-nav {
      margin-top: 2rem;
    }
  }
  .section-teams-btn-prev, .section-teams-btn-next {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 50%;
    border: 1.5px solid #552C7E;
    background-color: transparent;
    color: #552C7E;
    font-size: 1.125rem;
    cursor: pointer;
    -webkit-transition: all 200ms ease;
    transition: all 200ms ease;
  }
  @media (min-width: 768px) {
    .section-teams-btn-prev, .section-teams-btn-next {
      width: 3rem;
      height: 3rem;
      font-size: 1.25rem;
    }
  }
  .section-teams-btn-prev:hover, .section-teams-btn-next:hover {
    background-color: #552C7E;
    color: #FFFFFF;
  }
  .section-teams-btn-prev.swiper-button-disabled, .section-teams-btn-next.swiper-button-disabled {
    opacity: 0.35;
    cursor: default;
    pointer-events: none;
  }
  
  /* ===================== HOW IT WORKS SECTION ===================== */
  .section-how-it-works {
    padding: 2rem 0 !important;
    overflow: hidden;
  }
  @media (min-width: 1024px) {
    .section-how-it-works {
      padding: 3rem 0 !important;
    }
  }
  .section-how-it-works-header {
    text-align: center;
    margin-bottom: 1.5rem !important;
  }
  @media (min-width: 1024px) {
    .section-how-it-works-header {
      margin-bottom: 2rem !important;
    }
  }
  .section-how-it-works-title {
    font-size: 2.25rem;
    font-weight: 700;
    color: #212121;
    margin: 0 0 0.5rem 0 !important;
  }
  .section-how-it-works-title .highlight {
    color: #FFD166;
  }
  @media (min-width: 1024px) {
    .section-how-it-works-title {
      font-size: 3rem;
    }
  }
  .section-how-it-works-subtitle {
    font-size: 1rem;
    color: #616161;
    max-width: 32rem;
    margin: 0 auto !important;
  }
  .section-how-it-works-grid {
    display: -ms-grid;
    display: grid;
    -ms-grid-columns: 1fr;
    grid-template-columns: 1fr;
    gap: 2rem;
  }
  @media (min-width: 768px) {
    .section-how-it-works-grid {
      -ms-grid-columns: (1fr)[2];
      grid-template-columns: repeat(2, 1fr);
    }
  }
  @media (min-width: 1024px) {
    .section-how-it-works-grid {
      -ms-grid-columns: (1fr)[3];
      grid-template-columns: repeat(3, 1fr);
    }
  }
  
  .how-card {
    background-color: #FFFFFF;
    padding: 2.25rem 2rem;
    border-radius: 1.25rem;
    -webkit-box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.05);
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 1rem;
    -webkit-transition: -webkit-transform 300ms ease;
    transition: -webkit-transform 300ms ease;
    transition: transform 300ms ease;
    transition: transform 300ms ease, -webkit-transform 300ms ease;
  }
  .how-card:hover {
    -webkit-transform: translateY(-5px);
    -ms-transform: translateY(-5px);
    transform: translateY(-5px);
  }
  .how-card-number {
    font-size: 2.5rem;
    font-weight: 700;
    line-height: 1;
    margin-bottom: 0.75rem;
  }
  .how-card-number.color-purple {
    color: #552C7E;
  }
  .how-card-number.color-orange {
    color: #FFD166;
  }
  .how-card-number.color-blue {
    color: #2D9CDB;
  }
  .how-card-title {
    font-size: 1.5rem;
    font-weight: 700;
    color: #212121;
    margin: 0;
  }
  .how-card-text {
    font-size: 0.9375rem;
    color: #616161;
    line-height: 1.6;
    margin: 0;
  }
  
  /* ===================== CONTACTS SECTION ===================== */
  .section-contacts {
    background-color: #F1F0FF;
    padding: 3rem 0;
    position: relative;
  }
  @media (min-width: 768px) {
    .section-contacts {
      padding: 4rem 0;
    }
  }
  @media (min-width: 1024px) {
    .section-contacts {
      padding: 6rem 0;
    }
  }
  .section-contacts-container {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 2rem;
  }
  @media (min-width: 1024px) {
    .section-contacts-container {
      -webkit-box-orient: horizontal;
      -webkit-box-direction: normal;
      -ms-flex-direction: row;
      flex-direction: row;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      gap: 3rem;
    }
  }
  .section-contacts-info {
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
  }
  @media (min-width: 1024px) {
    .section-contacts-info {
      max-width: 45%;
    }
  }
  .section-contacts-title {
    font-size: 2rem;
    line-height: 2.5rem;
    font-weight: 700;
    color: #212121;
    margin: 0 0 1.25rem 0;
  }
  @media (min-width: 768px) {
    .section-contacts-title {
      font-size: 2.75rem;
      line-height: 3.25rem;
    }
  }
  @media (min-width: 1024px) {
    .section-contacts-title {
      font-size: 3.25rem;
      line-height: 3.75rem;
    }
  }
  .section-contacts-description {
    font-size: 1rem;
    line-height: 1.75rem;
    color: #616161;
    font-weight: normal;
    margin: 0;
    max-width: 32rem;
  }
  @media (min-width: 768px) {
    .section-contacts-description {
      font-size: 1.125rem;
      line-height: 1.875rem;
    }
  }
  .section-contacts-form-card {
    background-color: #552C7E;
    border-radius: 1.25rem;
    padding: 2rem 1.5rem;
    width: 100%;
  }
  @media (min-width: 768px) {
    .section-contacts-form-card {
      padding: 2.5rem 2rem;
    }
  }
  @media (min-width: 1024px) {
    .section-contacts-form-card {
      max-width: 28rem;
      margin-left: auto;
    }
  }
  .section-contacts-form-title {
    font-size: 1.25rem;
    line-height: 1.75rem;
    font-weight: 700;
    color: #FFFFFF;
    margin: 0 0 1.5rem 0;
    text-align: center;
  }
  @media (min-width: 768px) {
    .section-contacts-form-title {
      font-size: 1.5rem;
      line-height: 2rem;
    }
  }
  .section-contacts-form {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 0.875rem;
  }
  .section-contacts-input {
    width: 100%;
    padding: 0.75rem 1rem;
    border-radius: 0.5rem;
    border: none;
    font-size: 0.875rem;
    line-height: 1.25rem;
    font-family: inherit;
    font-weight: normal;
    color: #212121;
    outline: none;
    -webkit-transition: -webkit-box-shadow 200ms ease;
    transition: -webkit-box-shadow 200ms ease;
    transition: box-shadow 200ms ease;
    transition: box-shadow 200ms ease, -webkit-box-shadow 200ms ease;
  }
  .section-contacts-input::-webkit-input-placeholder {
    color: #616161;
  }
  .section-contacts-input::-moz-placeholder {
    color: #616161;
  }
  .section-contacts-input:-ms-input-placeholder {
    color: #616161;
  }
  .section-contacts-input::-ms-input-placeholder {
    color: #616161;
  }
  .section-contacts-input::placeholder {
    color: #616161;
  }
  .section-contacts-input:focus {
    -webkit-box-shadow: 0 0 0 2px #FFD166;
    box-shadow: 0 0 0 2px #FFD166;
  }
  
  .breadcrumb {
    padding: 1.5rem 0;
  }
  .breadcrumb-nav {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 0.75rem;
    font-size: 0.875rem;
    font-weight: 500;
  }
  .breadcrumb-link {
    color: #212121;
    text-decoration: none;
    -webkit-transition: color 200ms ease;
    transition: color 200ms ease;
  }
  .breadcrumb-link:hover {
    color: #552C7E;
  }
  .breadcrumb-separator {
    color: #616161;
  }
  .breadcrumb-current {
    color: #552C7E;
  }
  
  .section-course-banner {
    margin-bottom: 3rem;
  }
  .section-course-banner .course-banner-wrapper {
    width: 100%;
    height: 250px;
    border-radius: 1.5rem;
    overflow: hidden;
  }
  @media (min-width: 768px) {
    .section-course-banner .course-banner-wrapper {
      height: 400px;
    }
  }
  @media (min-width: 1024px) {
    .section-course-banner .course-banner-wrapper {
      height: 500px;
    }
  }
  .section-course-banner .course-banner-img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
  }
  
  .section-course-details {
    padding-bottom: 5rem;
  }
  .section-course-details .course-details-content {
    max-width: 900px;
  }
  .section-course-details .course-details-block {
    margin-bottom: 3rem;
  }
  .section-course-details .course-details-title {
    font-size: 1.5rem;
    line-height: 2.25rem;
    font-weight: 700;
    color: #212121;
    margin-bottom: 1.5rem;
  }
  @media (min-width: 768px) {
    .section-course-details .course-details-title {
      font-size: 1.75rem;
    }
  }
  .section-course-details .course-details-text {
    font-size: 1rem;
    line-height: 1.75rem;
    color: #616161;
    margin-bottom: 1rem;
  }
  .section-course-details .course-details-actions {
    margin-top: 4rem;
  }
  .section-course-details .course-details-actions .btn {
    min-width: 12rem;
  }

  .header-actions-wrapper {
    display: flex;
    align-items: center;
    gap: 1.25rem;
  }

  .header-lang-select {
    border: 1px solid #e0e0e0;
    border-radius: 0.375rem;
    padding: 0.3rem 0.5rem;
    font-size: 0.75rem;
    font-weight: 600;
    color: #552C7E;
    background: #fff;
    cursor: pointer;
    outline: none;
  }

  .header-phone-link {
    font-size: 0.875rem;
    font-weight: 600;
    color: #212121;
    text-decoration: none;
    white-space: nowrap;
  }

  .header-phone-link .ph {
    margin-right: 0.2rem;
  }

  .header-cta-btn {
    white-space: nowrap;
  }

  .section-info-grid-corporate {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    gap: 1.5rem;
    max-width: 900px;
    margin: 0 auto;
  }

  @media (min-width: 768px) {
    .section-info-grid-corporate {
      grid-template-columns: repeat(2, 1fr);
    }
  }

  .section-partners {
    padding: 5rem 0;
    background-color: #FAFAFA;
  }
  .partners-grid {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    gap: 3rem;
    margin-bottom: 4rem;
  }
  .partner-logo-img {
    height: 2.5rem;
    width: auto;
    filter: grayscale(100%);
    opacity: 0.7;
    transition: all 300ms ease;
  }
  .partner-logo-img:hover {
    filter: grayscale(0%);
    opacity: 1;
  }
  .testimonials-grid {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    gap: 2rem;
    max-width: 1000px;
    margin: 0 auto;
  }
  @media (min-width: 768px) {
    .testimonials-grid {
      grid-template-columns: repeat(2, 1fr);
    }
  }
  .testimonial-card {
    background: #FFFFFF;
    border: 1px solid #EAEAEA;
    border-radius: 1rem;
    padding: 2.5rem;
    box-shadow: 0 10px 30px rgba(0,0,0,0.03);
    display: flex;
    flex-direction: column;
    justify-content: space-between;
  }
  .testimonial-quote {
    font-size: 1.125rem;
    font-style: italic;
    color: #212121;
    line-height: 1.75rem;
    margin-bottom: 1.5rem;
  }
  .testimonial-author {
    font-size: 0.938rem;
    font-weight: 700;
    color: #552C7E;
  }
  .testimonial-author-role {
    font-size: 0.875rem;
    color: #616161;
    font-weight: normal;
  }

  .form-row-grid {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    gap: 0.875rem;
  }
  @media (min-width: 600px) {
    .form-row-grid {
      grid-template-columns: repeat(2, 1fr);
    }
  }

  .section-blog-header {
    padding: 10rem 0 4rem;
    background-color: #FAFAFA;
    border-bottom: 1px solid #EAEAEA;
  }
  .blog-featured-card {
    background: #FFFFFF;
    border: 1px solid #EAEAEA;
    border-radius: 1rem;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0,0,0,0.03);
    margin: 4rem 0;
    display: flex;
    flex-direction: column;
  }
  @media (min-width: 992px) {
    .blog-featured-card {
      flex-direction: row;
    }
  }
  .blog-featured-media {
    width: 100%;
    min-height: 20rem;
    position: relative;
  }
  @media (min-width: 992px) {
    .blog-featured-media {
      width: 55%;
    }
  }
  .blog-featured-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
    position: absolute;
    top: 0;
    left: 0;
  }
  .blog-featured-content {
    padding: 3rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
  @media (min-width: 992px) {
    .blog-featured-content {
      width: 45%;
    }
  }
  .blog-badge {
    display: inline-block;
    padding: 0.35rem 0.875rem;
    background-color: rgba(85, 44, 126, 0.1);
    color: #552C7E;
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1px;
    border-radius: 50px;
    margin-bottom: 1rem;
    align-self: flex-start;
  }
  .blog-featured-title {
    font-size: 1.75rem;
    font-weight: 800;
    color: #212121;
    line-height: 2.375rem;
    margin-bottom: 1rem;
    text-decoration: none;
  }
  .blog-featured-title:hover {
    color: #552C7E;
  }
  .blog-featured-excerpt {
    font-size: 1rem;
    color: #616161;
    line-height: 1.625rem;
    margin-bottom: 1.5rem;
  }
  .blog-meta {
    display: flex;
    align-items: center;
    gap: 1.5rem;
    font-size: 0.875rem;
    color: #9E9E9E;
  }
  .blog-meta-item {
    display: flex;
    align-items: center;
    gap: 0.35rem;
  }
  .blog-grid {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    gap: 2rem;
    margin-bottom: 5rem;
  }
  @media (min-width: 768px) {
    .blog-grid {
      grid-template-columns: repeat(2, 1fr);
    }
  }
  @media (min-width: 1024px) {
    .blog-grid {
      grid-template-columns: repeat(3, 1fr);
    }
  }
  .blog-card {
    background: #FFFFFF;
    border: 1px solid #EAEAEA;
    border-radius: 1rem;
    overflow: hidden;
    box-shadow: 0 10px 30px rgba(0,0,0,0.03);
    display: flex;
    flex-direction: column;
  }
  .blog-card-media {
    position: relative;
    height: 14rem;
    width: 100%;
  }
  .blog-card-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .blog-card-body {
    padding: 2rem;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
  }
  .blog-card-title {
    font-size: 1.25rem;
    font-weight: 700;
    color: #212121;
    line-height: 1.75rem;
    margin-bottom: 1rem;
    text-decoration: none;
  }
  .blog-card-title:hover {
    color: #552C7E;
  }
  .article-header {
    padding: 10rem 0 4rem;
    text-align: center;
    max-width: 800px;
    margin: 0 auto;
  }
  .article-header-title {
    font-size: 2.25rem;
    font-weight: 800;
    color: #212121;
    line-height: 3rem;
    margin: 1.5rem 0;
  }
  @media (min-width: 768px) {
    .article-header-title {
      font-size: 2.75rem;
      line-height: 3.625rem;
    }
  }
  .article-cover-wrapper {
    width: 100%;
    max-height: 35rem;
    border-radius: 1rem;
    overflow: hidden;
    margin-bottom: 4rem;
  }
  .article-cover-image {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  .article-body {
    max-width: 760px;
    margin: 0 auto 5rem;
    font-size: 1.125rem;
    line-height: 2rem;
    color: #424242;
  }
  .article-body h2 {
    font-size: 1.75rem;
    font-weight: 700;
    color: #212121;
    margin: 3rem 0 1.5rem;
  }
  .article-body p {
    margin-bottom: 1.5rem;
  }
  .article-body blockquote {
    border-left: 4px solid #552C7E;
    padding-left: 1.5rem;
    margin: 2.5rem 0;
    font-size: 1.25rem;
    font-style: italic;
    color: #212121;
  }
  .share-container {
    padding-top: 3rem;
    border-top: 1px solid #EAEAEA;
    display: flex;
    align-items: center;
    justify-content: space-between;
  }
  .share-buttons {
    display: flex;
    align-items: center;
    gap: 1rem;
  }
  .share-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 2.5rem;
    height: 2.5rem;
    border-radius: 50%;
    background-color: #FAFAFA;
    border: 1px solid #EAEAEA;
    color: #212121;
    text-decoration: none;
    font-size: 1.25rem;
    transition: all 200ms ease;
  }
  .share-btn:hover {
    background-color: #552C7E;
    color: #FFFFFF;
    border-color: #552C7E;
  }

  /* Course Hero (ESP and other course pages) */
  .section-course-hero {
    position: relative;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    padding: 6rem 0;
    overflow: hidden;
  }
  .section-course-hero-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(105deg, rgba(20, 6, 38, 0.92) 0%, rgba(30, 9, 56, 0.78) 45%, rgba(85, 44, 126, 0.45) 100%);
  }
  .section-course-hero .container {
    position: relative;
    z-index: 1;
  }
  .section-course-hero-content {
    max-width: 640px;
  }
  .section-course-hero-title {
    color: #FFFFFF;
    font-size: 2.75rem;
    font-weight: 800;
    line-height: 1.15;
    margin: 0 0 1.25rem;
  }
  .section-course-hero-subtitle {
    color: rgba(255, 255, 255, 0.82);
    font-size: 1.125rem;
    line-height: 1.7;
    margin: 0 0 2rem;
  }
  .section-course-hero-highlights {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem 1.75rem;
    list-style: none;
    margin: 0 0 2.25rem;
    padding: 0;
  }
  .section-course-hero-highlight {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    color: #FFFFFF;
    font-size: 1rem;
    font-weight: 600;
  }
  .section-course-hero-highlight i {
    color: #FFA500;
    font-size: 1.35rem;
  }
  .section-course-hero-cta {
    display: flex;
  }

  @media (max-width: 767px) {
    .section-course-hero {
      padding: 4rem 0;
    }
    .section-course-hero-title {
      font-size: 2rem;
    }
    .section-course-hero-subtitle {
      font-size: 1rem;
    }
    .section-course-hero-highlights {
      gap: 0.75rem 1.25rem;
    }
  }

  /* What You'll Learn */
  .section-course-learn {
    padding: 5rem 0;
  }
  .course-learn-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 1.25rem 2rem;
    list-style: none;
    margin: 0;
    padding: 0;
  }
  .course-learn-item {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1.25rem 1.5rem;
    background-color: #FAFAFA;
    border: 1px solid #EAEAEA;
    border-radius: 1rem;
    transition: all 200ms ease;
  }
  .course-learn-item:hover {
    border-color: #552C7E;
    box-shadow: 0 10px 25px rgba(85, 44, 126, 0.08);
  }
  .course-learn-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    width: 3rem;
    height: 3rem;
    border-radius: 0.75rem;
    background-color: rgba(85, 44, 126, 0.1);
    color: #552C7E;
    font-size: 1.5rem;
  }
  .course-learn-text {
    color: #212121;
    font-size: 1.0625rem;
    font-weight: 600;
  }

  @media (max-width: 767px) {
    .section-course-learn {
      padding: 3.5rem 0;
    }
    .course-learn-grid {
      grid-template-columns: 1fr;
    }
  }

  /* Training Program (accordion) */
  .section-course-program {
    padding: 5rem 0;
    background-color: #FAFAFA;
  }
  .course-program-accordion {
    display: flex;
    flex-direction: column;
    gap: 1rem;
    max-width: 800px;
    margin: 0 auto;
  }
  .course-program-item {
    background: #FFFFFF;
    border: 1px solid #EAEAEA;
    border-radius: 1rem;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
    overflow: hidden;
    transition: all 0.3s ease;
  }
  .course-program-item[open] {
    border-color: #552C7E;
  }
  .course-program-summary {
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 1.25rem 1.5rem;
    cursor: pointer;
    list-style: none;
    outline: none;
  }
  .course-program-summary::-webkit-details-marker {
    display: none;
  }
  .course-program-number {
    flex-shrink: 0;
    font-size: 1.125rem;
    font-weight: 800;
    color: #552C7E;
  }
  .course-program-name {
    flex: 1;
    font-size: 1.0625rem;
    font-weight: 600;
    color: #212121;
  }
  .course-program-caret {
    flex-shrink: 0;
    color: #552C7E;
    font-size: 1.25rem;
    transition: transform 0.3s ease;
  }
  .course-program-item[open] .course-program-caret {
    transform: rotate(180deg);
  }
  .course-program-body {
    padding: 0 1.5rem 1.5rem 3.25rem;
  }
  .course-program-topics {
    margin: 0;
    padding-left: 1.25rem;
    color: #666666;
    font-size: 1rem;
    line-height: 1.8;
  }
  .course-program-topics li {
    margin-bottom: 0.25rem;
  }
  .course-program-text {
    margin: 0;
    color: #666666;
    font-size: 1rem;
    line-height: 1.7;
  }

  @media (max-width: 767px) {
    .section-course-program {
      padding: 3.5rem 0;
    }
    .course-program-body {
      padding-left: 1.5rem;
    }
  }

  /* Technologies You'll Use */
  .section-course-tech {
    padding: 5rem 0;
  }
  .course-tech-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 2rem;
    max-width: 1080px;
    margin: 0 auto;
  }
  .course-tech-box {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    aspect-ratio: 1 / 1;
    padding: 2.5rem 2rem;
    background-color: #FAFAFA;
    border: 1px solid #EAEAEA;
    border-radius: 1.5rem;
    transition: all 200ms ease;
  }
  .course-tech-box:hover {
    border-color: #552C7E;
    box-shadow: 0 12px 30px rgba(85, 44, 126, 0.1);
  }
  .course-tech-logo {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 4.5rem;
    height: 4.5rem;
    margin-bottom: 1.25rem;
    padding: 0.5rem;
    border-radius: 1rem;
    background-color: #FFFFFF;
    border: 1px solid #EAEAEA;
    color: #552C7E;
    font-size: 2.25rem;
    overflow: hidden;
  }
  .course-tech-logo img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
  }
  .course-tech-name {
    font-size: 1.375rem;
    font-weight: 700;
    color: #212121;
    margin: 0 0 0.5rem;
  }
  .course-tech-tagline {
    font-size: 0.9375rem;
    font-weight: 600;
    color: #552C7E;
    margin: 0 0 1.25rem;
  }
  .course-tech-points {
    margin: 0;
    padding-left: 1.25rem;
    text-align: left;
    color: #666666;
    font-size: 1rem;
    line-height: 1.8;
  }
  .course-tech-points li {
    margin-bottom: 0.25rem;
  }

  @media (max-width: 767px) {
    .section-course-tech {
      padding: 3.5rem 0;
    }
    .course-tech-grid {
      grid-template-columns: 1fr;
    }
    .course-tech-box {
      aspect-ratio: auto;
    }
  }

  /* International Certificates */
  .section-course-certs {
    padding: 5rem 0;
    background-color: #FAFAFA;
  }
  .course-certs-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    gap: 1.5rem;
  }
  .course-cert-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 2rem 1.5rem;
    background-color: #FFFFFF;
    border: 1px solid #EAEAEA;
    border-radius: 1.25rem;
    transition: all 200ms ease;
  }
  .course-cert-card:hover {
    border-color: #552C7E;
    box-shadow: 0 12px 30px rgba(85, 44, 126, 0.1);
    transform: translateY(-4px);
  }
  .course-cert-logo {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 6rem;
    height: 3.75rem;
    margin-bottom: 1rem;
    padding: 0.5rem;
    border-radius: 0.75rem;
    background-color: #FFFFFF;
    border: 1px solid #EAEAEA;
    color: #552C7E;
    font-size: 2rem;
    overflow: hidden;
  }
  .course-cert-logo img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
  }
  .course-cert-vendor {
    font-size: 1.125rem;
    font-weight: 700;
    color: #212121;
    margin: 0 0 0.5rem;
  }
  .course-cert-names {
    font-size: 0.9375rem;
    line-height: 1.6;
    color: #666666;
    margin: 0;
  }

  @media (max-width: 767px) {
    .section-course-certs {
      padding: 3.5rem 0;
    }
    .course-certs-grid {
      grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
    }
  }

  /* Career Opportunities */
  .section-course-careers {
    padding: 5rem 0;
  }
  .course-careers-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: 1.5rem;
  }
  .course-career-card {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 2rem 1.5rem;
    background-color: #FAFAFA;
    border: 1px solid #EAEAEA;
    border-radius: 1.25rem;
    transition: all 200ms ease;
  }
  .course-career-card:hover {
    border-color: #552C7E;
    box-shadow: 0 12px 30px rgba(85, 44, 126, 0.1);
    transform: translateY(-4px);
  }
  .course-career-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 4rem;
    height: 4rem;
    margin-bottom: 1.25rem;
    border-radius: 50%;
    background-color: rgba(85, 44, 126, 0.1);
    color: #552C7E;
    font-size: 2rem;
  }
  .course-career-name {
    font-size: 1.125rem;
    font-weight: 700;
    color: #212121;
    margin: 0 0 0.625rem;
  }
  .course-career-desc {
    font-size: 0.9375rem;
    line-height: 1.6;
    color: #666666;
    margin: 0;
  }

  @media (max-width: 767px) {
    .section-course-careers {
      padding: 3.5rem 0;
    }
    .course-careers-grid {
      grid-template-columns: 1fr;
    }
  }