@layer globals {

  /* =====================
    SECTION: Top Bar
    ====================== */
  .top__bar {
    background: linear-gradient(75deg, var(--primary-color) calc(33% - 1px), white calc(33% - 1px), white calc(33.3% - 1px), var(--secondary-color) calc(33.3% - 1px));
    background: var(--secondary-color);
    color: var(--bs-light);
    font-size: 0.875rem;
    position: relative;

    &::before {
      content: '';
      position: absolute;
      height: 100%;
      width: 100%;
      background: var(--primary-color);
      left: -72%;
      border-inline-end: 0.25rem solid var(--bs-light);
      transform: skewX(25deg);
    }

    & a {
      color: var(--bs-light);
      text-decoration: none;
    }

    & .btn {
      background: color-mix(in srgb, var(--secondary-color) 100%, black 50%);
      color: var(--bs-light);
      padding: calc(var(--button-padding-y) * 2) calc(var(--button-padding-x) * 2);
    }

  }


  /* =====================
    SECTION: Header
    ====================== */
  header {
    z-index: 2222;
  }

  .menu__bar {
    background: var(--bs-body-bg);
  }

  .menu__bar .dropdown {
    position: initial;
  }

  .menu__bar .nav-link {
    color: var(--bs-body-color);
  }

  .menu__bar .dropdown-menu {
    padding: 0.5rem;
    border: none;
    border-radius: 0;
    top: 100%;
    left: inherit;
    min-width: 270px;
  }

  @media (hover: hover) {
    .menu__bar .dropdown-menu {
      display: block;
      opacity: 0;
      transform: scaleY(0);
      transform-origin: top;
      transition: 300ms ease-in-out;
      transition-delay: 150ms;
    }

    .menu__bar .dropdown:hover>.dropdown-menu {
      transition-delay: 0s;
      opacity: 1;
      transform: scaleY(1);
    }
  }

  .menu__bar .mega-menu .dropdown-menu {
    left: 0.5rem;
    width: calc(100% - 1rem);
  }

  .menu__bar .dropdown-toggle::after {
    font-family: "bootstrap-icons";
    content: "\F282";
    border: none;
    vertical-align: middle;
    font-size: 0.625rem;
    font-weight: bold;
  }

  .menu__bar .dropdown-item {
    font-size: 0.875rem;
    color: var(--primary-color);
    font-weight: 500;
    padding-block: 0.75rem;
    margin-block: 0.25rem;
    transition: 300ms ease-in-out;
    position: relative;
    white-space: inherit;
  }

  .menu__bar .dropend .dropdown-toggle {
    color: inherit;
    text-decoration: none;
  }

  .menu__bar .dropend .dropdown-toggle::after {
    content: "\F285";
  }

  @media (hover: hover) {
    .menu__bar .dropend .dropdown-menu {
      transform: scaleX(0);
      transform-origin: left center;
      top: 0;
      right: auto;
      left: 100%;
      z-index: 1111;
    }

    .menu__bar .dropend:hover>.dropdown-menu {
      transform: scaleX(1);
      opacity: 1;
    }
  }

  .logo__type {
    & span {
      display: block;
    }

    & .brand__name {
      color: var(--primary-color);
      font-size: var(--fs-small-banner);
      font-family: 'Crimson Text', 'Times New Roman', Times, serif;
      font-weight: 600;
      text-transform: uppercase;
      line-height: 1;
    }

    & .brand__tagline {
      font-size: var(--fs-small);
      color: var(--bs-secondary);
    }
  }

  /* =====================
      SECTION: Header
      ====================== */

  header.sticky-lg-top {
    z-index: 1021;
  }


  .menu__bar .dropdown {
    position: initial;
  }

  .menu__bar .nav-link {
    color: var(--bs-dark);
  }

  .menu__bar .dropdown-menu {
    padding: 0.5rem;
    border: none;
    border-radius: 0;
    top: 100%;
    left: inherit;
    min-width: 270px;
  }

  @media (hover: hover) {
    .menu__bar .dropdown-menu {
      display: block;
      opacity: 0;
      transform: scaleY(0);
      transform-origin: top;
      transition: 300ms ease-in-out;
      transition-delay: 150ms;
    }

    .menu__bar .dropdown:hover>.dropdown-menu {
      transition-delay: 0s;
      opacity: 1;
      transform: scaleY(1);
    }
  }

  .menu__bar .mega-menu .dropdown-menu {
    left: 0.5rem;
    width: calc(100% - 1rem);
  }

  .menu__bar .dropdown-toggle::after {
    font-family: "bootstrap-icons";
    content: "\F282";
    border: none;
    vertical-align: middle;
    font-size: 0.625rem;
    font-weight: bold;
  }

  .menu__bar .dropdown-item {
    font-size: 0.875rem;
    color: var(--primary-color);
    font-weight: 500;
    padding-block: 0.75rem;
    margin-block: 0.25rem;
    position: relative;
    white-space: inherit;
    border-bottom: 1px solid #eee;
  }

  .menu__bar li:last-child .dropdown-item {
    border-bottom: 0px;
  }

  .menu__bar .dropdown-item:hover {
    background: var(--secondary-color);
    color: var(--bs-light);
    transition: 300ms ease-in-out;
  }

  .menu__bar :is(.dropend, .dropstart) .dropdown-toggle {
    color: inherit;
    text-decoration: none;
  }

  .menu__bar .dropend .dropdown-toggle::after {
    font-family: "bootstrap-icons";
    content: "\F285";
    border: none;
    vertical-align: middle;
    font-size: 0.625rem;
    font-weight: bold;
  }

  .menu__bar .dropstart .dropdown-toggle::before {
    font-family: "bootstrap-icons";
    content: "\F284";
    border: none;
    vertical-align: middle;
    font-size: 0.625rem;
    font-weight: bold;
  }

  @media (hover: hover) {
    .menu__bar .dropend .dropdown-menu {
      transform: scaleX(0);
      transform-origin: left center;
      top: 0;
      right: auto;
      left: 100%;
      z-index: 1111;
    }

    .menu__bar .dropstart .dropdown-menu {
      transform: scaleX(0);
      transform-origin: right center;
      top: 0;
      right: 100%;
      left: auto;
      z-index: 1111;
    }

    .menu__bar .dropend:hover>.dropdown-menu {
      transform: scaleX(1);
      opacity: 1;
    }

    .menu__bar .dropstart:hover>.dropdown-menu {
      transform: scaleX(1);
      opacity: 1;
    }
  }

  /* =====================
      SECTION: Footer
      ====================== */
  footer {
    margin-top: auto;
    background: rgb(var(--secondary-color-rgb));
    color: var(--bs-light) !important;
    position: relative;
    isolation: isolate;
  }

  footer {
    &::before {
      position: absolute;
      content: "";
      inset: 0;
      background: url(../images/footer_bg.webp);
      background-size: cover;
      background-repeat: no-repeat;
      z-index: -1;
      opacity: 0.1;
    }
  }

  footer p {
    color: var(--bs-light);
  }

  .footer__container {
    position: relative;
  }

  /* .footer__container .container {
    border-bottom: 1px solid rgb(255 255 255 / 27%);
  } */

  .footer__info .list-group {
    --bs-list-group-bg: transparent;
    --bs-list-group-border-color: color-mix(in srgb,
        var(--primary-color) 75%,
        var(--bs-body-bg) 25%);
    margin-top: 1rem;
  }

  .footer__info .list-group .bi {
    color: var(--bs-light);
  }

  .footer__widget .footer__title {
    color: #fff;
  }

  .footer__cpr {
    color: var(--bs-light);
  }

  .footer__container .nav-item {
    padding: 6px 8px;
  }

  .footer__container .nav-link {
    color: #fff;
  }

  .footer__cpr a {
    color: var(--accent-color);
    font-weight: 700;
    text-decoration: none;
  }

  .footer__cpr {
    background: var(--secondary-color);
    color: var(--bs-light);
  }

  .footer_ql {
    color: #fff;
    padding: 0px 15px;
    /*box-shadow: inset 0px 0px 0px 20px rgb(255 255 255 / 6%);
    border-radius: 30px;
    border: 1px solid rgba(255, 255, 255, 0.29);
    font-weight: normal;
    display: inline-block;
    margin-bottom: 10px; */
  }

  /* =====================
      SECTION: Breadcrumb
      ====================== */
  .breadcrumb__sc {
    background: linear-gradient(rgba(var(--secondary-color-rgb), 0.7),
        rgba(var(--secondary-color-rgb), 0.7)),
      url("../images/breadcrumb-bg.webp") no-repeat center/cover;
    padding-block: clamp(3rem, calc(3rem + 1.5vw), 5rem);
    position: relative;
    color: #fff;
  }

  .breadcrumb__sc .breadcrumb {
    background: var(--bs-body-bg);
    width: max-content;
    display: inline-flex;
    padding: 0.5rem 2rem;
    border-radius: 50vw;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translate(-50%, 50%);
  }

  .breadcrumb__sc .breadcrumb-item {
    color: var(--primary-color);
  }

  .breadcrumb__sc .breadcrumb-item a {
    color: var(--primary-color);
    text-decoration: none;
    font-weight: 600;
  }

  /* =====================
    SECTION: Buttons
    ====================== */
  .btn {
    padding: var(--button-padding-y) var(--button-padding-x);
    border-radius: 0;
  }

  .btn-lg {
    padding: calc(var(--button-padding-y) * 1.25) calc(var(--button-padding-x) * 2);
  }

  .btn-sm {
    padding: calc(var(--button-padding-y) / 2) calc(var(--button-padding-x) / 2);
  }


  .btn-main {
    background: var(--primary-color);
    color: #fff;
    transition: color 250ms ease-in-out;
    position: relative;
    overflow: hidden;
    isolation: isolate;
    transition: 150ms ease-in-out;
  }

  .btn-main::before {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    background: var(--secondary-color);
    bottom: -100%;
    left: -100%;
    transition: 150ms ease-in-out;
    z-index: -1;
  }

  .btn-main:hover {
    color: rgba(255, 255, 255, 0.5);
    box-shadow: 4px 4px var(--primary-color);
  }


  .btn-main:hover::before {
    bottom: 0;
    left: 0;
  }

  .btn-main-outline {
    color: var(--primary-color);
    transition: 250ms ease-in-out;
    border: 2px solid currentColor;
  }

  .btn-main-outline:hover {
    color: #fff;
    background: var(--primary-color);
  }

  .btn-alt {
    background: var(--secondary-color);
    color: var(--bs-light);
    border-color: var(--secondary-color);
  }

  .btn-alt:hover {
    background: rgba(var(--secondary-color-rgb), 0.85);
    border-color: rgba(var(--secondary-color-rgb), 0.85);
  }


  .btn-cta {
    background: var(--primary-color);
    color: var(--bs-light) !important;
    color: var(--bs-light);
    position: relative;
    border-radius: 0;
    font-size: 14px !important;

    &::before,
    &::after {
      all: unset;
      --distance: 2px;
      content: '';
      position: absolute;
      border: 0.5rem solid var(--secondary-color);
    }

    &::before {
      border-right-color: transparent;
      border-bottom-color: transparent;
      left: calc(var(--distance) * -1);
      top: calc(var(--distance) * -1);
    }

    &::after {
      border-left-color: transparent;
      border-top-color: transparent;
      right: calc(var(--distance) * -1);
      bottom: calc(var(--distance) * -1);
    }

    &:hover::before {
      left: 0;
      top: 0;
    }

    &:hover::after {
      right: 0;
      bottom: 0;
    }
  }

  /* =====================
    SECTION: Custom
    ====================== */
  body.tox-fullscreen :not([class*="tox"]) {
    position: static !important;
  }
}