@layer globals {
  /* =====================
    SECTION: Top Bar
    ====================== */

  /* =====================
      SECTION: Header
      ====================== */

  header.sticky-lg-top {
    z-index: 1021;
  }

  .menu__bar {
    background: var(--primary-color);
  }

  .menu__bar .dropdown {
    position: initial;
  }

  .menu__bar .nav-link {
    color: var(--bs-light);
  }

  .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(--primary-color-rgb));
  }

  .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(--secondary-color);
    text-decoration: none;
  }

  footer a {
    transition: 0.3s ease-in-out;
  }

  footer a:hover {
    color: var(--secondary-color);
    transition: 0.3s ease-in-out;
  }

  
  .footer_ql {
    color: #fff;
    box-shadow: inset 0px 0px 0px 20px rgb(255 255 255 / 6%);
    padding: 10px 15px;
    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(--primary-color-rgb), 0.7),
        rgba(var(--primary-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);
  }

  .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: var(--bs-light);
    transition: color 250ms ease-in-out;
  }

  .btn-main:hover {
    color: var(--bs-white);
  } */

  .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-main {
    position: relative;
    padding: 10px 22px;
    border-radius: 6px;
    border-radius: 50px;
    border: none;
    color: #fff;
    cursor: pointer;
    background-color: var(--primary-color);
    transition: all 0.2s ease;
  }

  .btn-main:hover {
    background-color: var(--primary-color);
    color: #fff;
  }

  .btn-main:active {
    transform: scale(0.96);
    background: var(--primary-color) !important;
    color: #fff !important;
  }

  .btn-main:before,
  .btn-main:after {
    position: absolute;
    content: "";
    width: 150%;
    left: 50%;
    height: 100%;
    transform: translateX(-50%);
    z-index: 1;
    background-repeat: no-repeat;
  }

  .btn-main:hover:before {
    top: -70%;
    background-image: radial-gradient(
        circle,
        var(--primary-color) 20%,
        transparent 20%
      ),
      radial-gradient(
        circle,
        transparent 20%,
        var(--primary-color) 20%,
        transparent 30%
      ),
      radial-gradient(circle, var(--primary-color) 20%, transparent 20%),
      radial-gradient(circle, var(--primary-color) 20%, transparent 20%),
      radial-gradient(
        circle,
        transparent 10%,
        var(--primary-color) 15%,
        transparent 20%
      ),
      radial-gradient(circle, var(--primary-color) 20%, transparent 20%),
      radial-gradient(circle, var(--primary-color) 20%, transparent 20%),
      radial-gradient(circle, var(--primary-color) 20%, transparent 20%),
      radial-gradient(circle, var(--primary-color) 20%, transparent 20%);
    background-size: 10% 10%, 20% 20%, 15% 15%, 20% 20%, 18% 18%, 10% 10%,
      15% 15%, 10% 10%, 18% 18%;
    background-position: 50% 120%;
    animation: greentopBubbles 0.6s ease;
  }

  @keyframes greentopBubbles {
    0% {
      background-position: 5% 90%, 10% 90%, 10% 90%, 15% 90%, 25% 90%, 25% 90%,
        40% 90%, 55% 90%, 70% 90%;
    }

    50% {
      background-position: 0% 80%, 0% 20%, 10% 40%, 20% 0%, 30% 30%, 22% 50%,
        50% 50%, 65% 20%, 90% 30%;
    }

    100% {
      background-position: 0% 70%, 0% 10%, 10% 30%, 20% -10%, 30% 20%, 22% 40%,
        50% 40%, 65% 10%, 90% 20%;
      background-size: 0% 0%, 0% 0%, 0% 0%, 0% 0%, 0% 0%, 0% 0%;
    }
  }

  .btn-main:hover::after {
    bottom: -70%;
    background-image: radial-gradient(
        circle,
        var(--primary-color) 20%,
        transparent 20%
      ),
      radial-gradient(circle, var(--primary-color) 20%, transparent 20%),
      radial-gradient(
        circle,
        transparent 10%,
        var(--primary-color) 15%,
        transparent 20%
      ),
      radial-gradient(circle, var(--primary-color) 20%, transparent 20%),
      radial-gradient(circle, var(--primary-color) 20%, transparent 20%),
      radial-gradient(circle, var(--primary-color) 20%, transparent 20%),
      radial-gradient(circle, var(--primary-color) 20%, transparent 20%);
    background-size: 15% 15%, 20% 20%, 18% 18%, 20% 20%, 15% 15%, 20% 20%,
      18% 18%;
    background-position: 50% 0%;
    animation: greenbottomBubbles 0.6s ease;
  }

  @keyframes greenbottomBubbles {
    0% {
      background-position: 10% -10%, 30% 10%, 55% -10%, 70% -10%, 85% -10%,
        70% -10%, 70% 0%;
    }

    50% {
      background-position: 0% 80%, 20% 80%, 45% 60%, 60% 100%, 75% 70%, 95% 60%,
        105% 0%;
    }

    100% {
      background-position: 0% 90%, 20% 90%, 45% 70%, 60% 110%, 75% 80%, 95% 70%,
        110% 10%;
      background-size: 0% 0%, 0% 0%, 0% 0%, 0% 0%, 0% 0%, 0% 0%;
    }
  }

  /*  */
  /*  */

  .btn-alt {
    position: relative;
    padding: 10px 22px;
    border-radius: 6px;
    border-radius: 50px;
    border: none;
    color: #fff;
    cursor: pointer;
    background-color: var(--secondary-color);
    transition: all 0.2s ease;
  }

  .btn-alt:hover {
    background-color: var(--secondary-color);
    color: #fff;
  }

  .btn-alt:active {
    transform: scale(0.96);
    background: var(--secondary-color) !important;
    color: #fff !important;
  }

  .btn-alt:before,
  .btn-alt:after {
    position: absolute;
    content: "";
    width: 150%;
    left: 50%;
    height: 100%;
    transform: translateX(-50%);
    z-index: 1000;
    background-repeat: no-repeat;
  }

  .btn-alt:hover:before {
    top: -70%;
    background-image: radial-gradient(
        circle,
        var(--secondary-color) 20%,
        transparent 20%
      ),
      radial-gradient(
        circle,
        transparent 20%,
        var(--secondary-color) 20%,
        transparent 30%
      ),
      radial-gradient(circle, var(--secondary-color) 20%, transparent 20%),
      radial-gradient(circle, var(--secondary-color) 20%, transparent 20%),
      radial-gradient(
        circle,
        transparent 10%,
        var(--secondary-color) 15%,
        transparent 20%
      ),
      radial-gradient(circle, var(--secondary-color) 20%, transparent 20%),
      radial-gradient(circle, var(--secondary-color) 20%, transparent 20%),
      radial-gradient(circle, var(--secondary-color) 20%, transparent 20%),
      radial-gradient(circle, var(--secondary-color) 20%, transparent 20%);
    background-size: 10% 10%, 20% 20%, 15% 15%, 20% 20%, 18% 18%, 10% 10%,
      15% 15%, 10% 10%, 18% 18%;
    background-position: 50% 120%;
    animation: greentopBubbles 0.6s ease;
  }

  @keyframes greentopBubbles {
    0% {
      background-position: 5% 90%, 10% 90%, 10% 90%, 15% 90%, 25% 90%, 25% 90%,
        40% 90%, 55% 90%, 70% 90%;
    }

    50% {
      background-position: 0% 80%, 0% 20%, 10% 40%, 20% 0%, 30% 30%, 22% 50%,
        50% 50%, 65% 20%, 90% 30%;
    }

    100% {
      background-position: 0% 70%, 0% 10%, 10% 30%, 20% -10%, 30% 20%, 22% 40%,
        50% 40%, 65% 10%, 90% 20%;
      background-size: 0% 0%, 0% 0%, 0% 0%, 0% 0%, 0% 0%, 0% 0%;
    }
  }

  .btn-alt:hover::after {
    bottom: -70%;
    background-image: radial-gradient(
        circle,
        var(--secondary-color) 20%,
        transparent 20%
      ),
      radial-gradient(circle, var(--secondary-color) 20%, transparent 20%),
      radial-gradient(
        circle,
        transparent 10%,
        var(--secondary-color) 15%,
        transparent 20%
      ),
      radial-gradient(circle, var(--secondary-color) 20%, transparent 20%),
      radial-gradient(circle, var(--secondary-color) 20%, transparent 20%),
      radial-gradient(circle, var(--secondary-color) 20%, transparent 20%),
      radial-gradient(circle, var(--secondary-color) 20%, transparent 20%);
    background-size: 15% 15%, 20% 20%, 18% 18%, 20% 20%, 15% 15%, 20% 20%,
      18% 18%;
    background-position: 50% 0%;
    animation: greenbottomBubbles 0.6s ease;
  }

  @keyframes greenbottomBubbles {
    0% {
      background-position: 10% -10%, 30% 10%, 55% -10%, 70% -10%, 85% -10%,
        70% -10%, 70% 0%;
    }

    50% {
      background-position: 0% 80%, 20% 80%, 45% 60%, 60% 100%, 75% 70%, 95% 60%,
        105% 0%;
    }

    100% {
      background-position: 0% 90%, 20% 90%, 45% 70%, 60% 110%, 75% 80%, 95% 70%,
        110% 10%;
      background-size: 0% 0%, 0% 0%, 0% 0%, 0% 0%, 0% 0%, 0% 0%;
    }
  }

  /* =====================
    SECTION: Custom
    ====================== */
  body.tox-fullscreen :not([class*="tox"]) {
    position: static !important;
  }

  .section-title {
    position: relative;
    font-weight: 700;
    font-family: var(--heading-font);
    font-size: var(--fs-large-banner);

    z-index: 1;
  }

  .section-title::after {
    content: "";
    position: absolute;
    bottom: -20px;
    left: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 30%;
    height: 4px;
    border-radius: 50vw;
    background: linear-gradient(
      90deg,
      var(--primary-color) 10%,
      transparent 10%,
      transparent 15%,
      var(--primary-color) 15%,
      var(--primary-color) 35%,
      transparent 35%,
      transparent 40%,
      var(--primary-color) 40%
    );
  }

  .section-title-alt {
    position: relative;
    font-weight: 700;
    font-family: var(--heading-font);
    font-size: var(--fs-large-banner);

    z-index: 1;
  }

  .section-title-alt::after {
    content: "";
    position: absolute;
    bottom: -20px;
    left: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 30%;
    height: 4px;
    border-radius: 50vw;
    background: linear-gradient(
      90deg,
      var(--secondary-color) 10%,
      transparent 10%,
      transparent 15%,
      var(--secondary-color) 15%,
      var(--secondary-color) 35%,
      transparent 35%,
      transparent 40%,
      var(--secondary-color) 40%
    );
  }

  /* ABSTRACT */
  .abs_cta {
    width: 300px;
    height: 300px;
    position: absolute;
    right: -140px;
    bottom: -150px;
  }
  .abs_cta::before {
    content: "";
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background-color: var(--secondary-color);
    position: absolute;
    top: 0;
    right: 0;
    transform: scale(0);
    z-index: 1;
    animation: zoom-shape1 4s linear infinite;
    animation-delay: 1s;
  }
  .abs_cta::after {
    content: "";
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background-color: var(--secondary-color);
    position: absolute;
    top: 0;
    right: 0;
    transform: scale(0);
    animation: zoom-shape2 4s linear infinite;
    opacity: 0.71;
  }
  @keyframes zoom-shape1 {
    100% {
      transform: scale(1);
      opacity: 0;
    }
  }
  @keyframes zoom-shape2 {
    100% {
      transform: scale(1);
      opacity: 0;
    }
  }

  /*  */
  .dental {
    position: absolute;
    bottom: 0;
    right: 0;
    animation: jump 7s linear infinite;
  }

  @keyframes jump {
    0% {
      transform: translateY(0);
    }
    40% {
      transform: translateY(-30px);
    }
    100% {
      transform: translateY(0);
    }
  }

  /*  */

  /* .line-text {
    color: var(--secondary-color);
    font-weight: 400;
    position: relative;
  }

  .line-text:after {
    content: "";
    height: 22px;
    width: 100%;
    background: url(../images/abstract/line.webp);
    background-size: 288px 22px;
    background-repeat: repeat-x;
    position: absolute;
    bottom: -16px;
    left: 0;
    -webkit-animation: linee 3s linear infinite;
    animation: linee 3s linear infinite;
  }

  @keyframes linee {
    0% {
      width: 0;
    }
    80% {
      width: 100%;
    }
    100% {
      width: 100%;
    }
  } */

  .about__section .shape1 {
    position: absolute;
    left: 25px;
    bottom: 35px;
    animation: spin 10s linear infinite;
  }

  @keyframes spin {
    0% {
      transform: rotate(0);
    }

    100% {
      transform: rotate(360deg);
    }
  }
}
