$color-primary: #221DAF;
$color-primary-90: #3430B6;
$color-primary-80: #4642BC;
$color-primary-70: #5955C3;
$color-primary-60: #6B67C9;
$color-primary-50: #7d7ad0;

$color-secondary: #669DF9;
$color-secondary-90: #72a5f9;
$color-secondary-80: #7fadfa;
$color-secondary-70: #8bb5fa;
$color-secondary-60: #98bdfb;
$color-secondary-50: #a4c5fb;

$color-link-hover: #ecf3fb;

$text-color: #4D4D4D;
$border-color: #c0cbe0;

$box-shadow: 0px 0px 10px #ededee;

$border-radius: 37px;
$border-radius-high: 72px;

html {
  font-size: 16px;
}

* {
  padding: 0;
  margin: 0;
  list-style: none;
  text-decoration: none;
  outline: 0;
  box-sizing: border-box;
  font-family: Roboto;
}

sup {
  font-size: 50%;
  font-weight: 600;
}

.bold {
  font-weight: bold;
}

.color-primary {
  color: $color-primary !important;
}

.color-secondary {
  color: $color-secondary !important;
}

.row {
  display: flex;
  flex-direction: row!important;
  gap: 10px;
}
.row-reverse {
  display: flex;
  flex-direction: row-reverse!important;
  gap: 10px;
}
.column {
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.col-1 {
  width: 10%;
}

.col-2 {
  width: 20%;
}

.col-3 {
  width: 30%;
}

.col-4 {
  width: 40%;
}

.col-5 {
  width: 50%;
}

.col-6 {
  width: 60%;
}

.col-7 {
  width: 70%;
}

.col-8 {
  width: 80%;
}

.col-9 {
  width: 90%;
}

.col-10 {
  width: 100%;
}

.black {
  color: black !important;
}


.btn-blue {
  background: linear-gradient(to bottom, #66a3ff, #0000cc);
  border: none;
  border-radius: 50px;
  padding: 5px 20px;
  color: white;
  font-size: 0.92rem;
  cursor: pointer;
  font-weight: 600;
  outline: none;
  box-shadow: $box-shadow;
  margin: 3px 0;
  transition: 100ms all ease;

  i {
    font-weight: 700;
    margin-left: 10px;
  }

  &:hover {
    background: linear-gradient(to bottom, #80b3ff, #0000e6);
  }

  &:active {
    transform: scale(0.98);
  }

}

.btn-link {
  background: transparent;
  color: #151168;
  font-weight: normal;
  padding: 0;
  box-shadow: none;
  border: none;

  i {
    display: none;
  }

  &:hover {
    background: transparent;
  }

  &:active {
    transform: scale(1);
  }
}

h1, h2, h3, h4, h5, h6 {
  color: $color-primary;
}

.btn-secondary {
  background: $color-secondary;
  border: none;
  border-radius: 50px;
  padding: 5px 20px 6px;
  width: max-content;
  color: white;
  font-size: 0.72rem;
  cursor: pointer;
  font-weight: normal;
  outline: none;
  box-shadow: $box-shadow;
  margin: 3px 0;
  transition: 100ms all ease;

  &:hover {
    background-color: $color-secondary;
    background: $color-secondary;
  }

  &:active {
    transform: scale(0.98);
  }
}

.uppercase {
  text-transform: uppercase;
}

.white {
  color: #fff !important;
}

.bottom-fade-out {
  -webkit-mask-image: -webkit-linear-gradient(top, rgba(0, 0, 0, 1) 80%, rgba(0, 0, 0, 0.1) 100%);
  mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 1) 80%, rgba(0, 0, 0, 0.1) 100%);
}

.container-fluid {
  display: flex;
  flex-direction: column;
  width: 100%;
}

.container {
  display: flex;
  flex-direction: column;
  margin: auto;
  width: 75vw;
}


p {
  color: $text-color;
}

header {
  margin-bottom: 100px;
}

#header {
  flex-direction: row;
  align-items: stretch;
  height: 100px;
  display: flex;
  z-index: 10;
  background-color: rgba(255, 255, 255, 0.97);
  top: 0;
  position: fixed;
  border-bottom: 1px solid $border-color;

  .logo {
    width: 12.5vw;
    text-align: center;

    img {
      height: 100%;
      max-width: 120px;
    }
  }

  .menu {
    width: 75vw;
    position: relative;
    z-index: 1000;
    //margin: 0 95px;


  }

  .logo ul {
    display: flex;
    flex-direction: row;
    justify-content: right;
  }

  .menu ul, .logo ul {
    display: flex;
    height: 100%;
    margin: 0;
    padding: 0;
    list-style: none;

    li.cat-list {
      display: flex;
      align-items: center;
      height: auto;
      position: relative;
      margin: 0;
      padding: 0;

      > label {
        cursor: pointer;
        height: 100%;
        display: flex;
        align-items: center;
        margin: 0;
        //padding: 0 20px;
        position: relative;
        z-index: 1001;

        a {
          color: #000;
          padding: 0 20px;
          height: 100%;
          width: 100%;
          display: flex;
          align-items: center;
          transition: 100ms all;
          font-weight: normal;
          font-size: 1.1rem;

          &:hover {
            background-color: $color-link-hover;
            font-weight: 600;
            text-decoration: underline;
            text-underline-offset: 3px;
            color: $color-primary;
          }

          &.chemplan {
            &:hover {
              font-weight: normal;
              color: #000;

            }
          }

          i {
            font-weight: 800;
            color: $color-primary;
          }
        }
      }

      .close-submenu {
        display: none;
        position: absolute;
        top: 10px;
        left: 10px;
        cursor: pointer;
        font-size: 2rem;
        z-index: 1002;
        background: none;
        border: none;
        color: #888;
        transition: color 0.2s;

        &:hover {
          color: #d00;
        }
      }

      .submenu {
        position: fixed;
        top: 100px;
        left: 10%;
        width: 80vw;
        background-color: white;
        border-bottom: 4px solid $border-color;
        box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
        z-index: 1000;
        opacity: 0;
        transform: translateY(-20px);
        transition: all 0.3s ease;
        display: none;
        pointer-events: auto;
        //padding: 20px;
        box-sizing: border-box;

        .row {
          display: flex;
          width: 100%;
          margin: 0;

          .submenu-list {
            width: 380px;
            //padding: 20px;
            border-right: 1px solid $border-color;

            .submenu-list-title {
              color: #999;
              font-size: 1.15rem;
              margin: 0 0 1rem 0;
              padding: 20px 20px 0;
              //padding: 0;
            }

            ul {
              flex-direction: column;
              margin-bottom: 70px;

              li {
                padding: 0;
                margin: 0;
                position: relative;

                a {
                  display: flex;
                  flex-direction: column;
                  align-items: flex-start;
                  justify-content: center;
                  text-align: left;
                  min-height: 70px;
                  padding: 10px;
                  //border-radius: 4px;
                  transition: all 0.2s ease;

                  &:hover {
                    background-color: $color-link-hover;
                    //font-weight: normal;
                    text-decoration: none;

                    .title {
                    }
                  }

                  .title {
                    color: $color-primary;
                    font-size: 1.2rem;
                    margin: 0 0 5px 0;
                    transition: color 0.2s ease;
                  }

                  .sub-desc {
                    color: $color-secondary;
                    font-size: 0.9rem;
                    margin: 0;
                  }
                }

                .desc {
                  display: none;
                  position: absolute;
                  left: 100%;
                  top: 0;
                  z-index: 555;
                  background-color: #fff;
                }
              }
            }
          }

          #default-desc,
          .desc {
            //flex: 0 0 66.666%;
            width: 700px;
            padding: 20px;
            opacity: 1;
            transition: opacity 0.3s ease;

            .top {
              display: flex;
              margin-bottom: 30px;

              > div:first-child {
                flex: 0 0 60%;
                max-width: 60%;
                padding-right: 20px;

                h3 {
                  font-size: 1.3rem;
                  color: $color-primary;
                  margin: 0 0 10px 0;
                }

                .sub-desc {
                  font-size: 0.9rem;
                  color: $color-secondary;
                  margin: 0 0 20px 0;
                }

                .btn-secondary {
                  margin-right: 10px;
                  margin-bottom: 10px;
                  display: block;
                  font-size: 0.9rem;
                }
              }

              .top-image {
                flex: 0 0 40%;
                max-width: 40%;
                display: flex;
                justify-content: flex-end;
                align-items: flex-start;

                img { 
                  max-width: 80px;
                  height: auto;
                }
              }
            }

            .featrue {
              margin-top: 30px;

              ul {
                display: flex;
                flex-wrap: wrap;
                margin: -10px;

                li {
                  flex: 0 0 50%;
                  max-width: 50%;
                  padding: 10px;
                  display: flex;
                  align-items: flex-start;

                  .featrue-image {
                    margin-right: 10px;

                    img {
                      width: 40px;
                      height: 40px;
                    }
                  }

                  .featrue-desc {
                    .title {
                      color: $color-primary;
                      font-size: 1.1rem;
                      margin: 0 0 5px 0;
                    }

                    .subtitle {
                      color: $color-secondary;
                      font-size: 0.85rem;
                      margin: 0;
                    }
                  }
                }
              }
            }
          }
        }
      }

      input[type="radio"]:checked ~ .submenu {
        opacity: 1;
        transform: translateY(0);
        display: block;
      }
    }
  }

  .menu-overlay {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.01);
    z-index: 999;
    cursor: default;
  }

  input#menu-toggle-none:checked ~ .menu-overlay {
    display: none;
  }

  input[type="radio"]:checked:not(#menu-toggle-none) ~ .menu-overlay {
    display: block;
  }
}

#our-services-slider{
  margin: 3rem 0;
  .page-title{
    p{
      margin: 1rem 0;
    }
    margin-bottom: 2rem;
  }
}

.services-carousel{

  .swiper-slide{
    //height: 400px!important;
    width: 100% !important;
    margin:0!important;

  }
  .slide{
    display: flex;
    flex-direction: row;
    margin: 0 0.5rem;
    position: relative;
    .slide-image{
      width: 70%;
      height: 630px;
      margin-right: 12%;
      img{
        height: 100%;
        width: auto;
      }
    }
    .slide-content{
      display: flex;
      flex-direction: column;
      padding: 30px;
      justify-content: space-between;
      position: absolute;
      gap: 15px;
      width: 50%;
      background-color: white;
      //box-shadow: $box-shadow;
      box-shadow: 0px 0px 10px #cbcbcb;;
      right: 0;
      height: 80%;
      top: 10%;
      bottom: 10%;

      h3{
        font-size: 2.4rem;
      }

      .slide-buttons{
        display: flex;
        justify-content: center;
        align-items: center;
        .btn-secondary{
          font-size: 1.2rem;
        }
      }
    }



    &.slide-reverse{

      flex-direction: row-reverse!important;
      .slide-image {
        margin-right: 0!important;
        margin-left: 12%;

      }

      .slide-content {
        right: unset!important;
        left: 0;
        height: 80%;
        top: 10%;
        bottom: 10%;
      }
    }
  }


}


.page-content {
  display: flex;
  flex-direction: column;

  .square-blue-list {

    li {
      color: $text-color;
      margin: 0.5rem 0;
      display: flex; /* استفاده از flexbox برای کنار هم قرار دادن آیکن و متن */
      align-items: flex-start; /* تنظیم تراز عمودی */

      span {
        // white-space: nowrap;
        margin-right: 4px;
      }

      &::before {
        content: "■";
        color: #669DF9;
        width: 1rem;

        flex-shrink: 0;
      }
    }
  }


  .page-title {
    display: flex;
    flex-direction: column;
    background-color: #f4f8fd ;
    padding: 2rem;

    h2 {
      font-size: 3.6rem;
      margin: 1rem 0 1.8rem 0;
      font-weight: 300;
    }

    p {
      font-size: 1.4rem;
      padding: 0.2rem 0;

    }
  }

  .image {
    width: 100%;
    position: relative;

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

    .image-content {
      position: absolute;
      top: 0;
      right: 0;
      left: 0;
      padding: 4rem;
    }

    .fluid-box-blue {
      position: absolute;
      width: 435px;
      right: 0;
      background-color: $color-primary;
      color: #fff;
      padding: 2.6rem;
      font-size: 1rem;
      border-radius: $border-radius;
      box-shadow: 0 0 10px #000;
      line-height: 22px;

      p {
        color: #fff;
      }
    }


  }

  .items-list {
    display: flex;
    flex-direction: column;
    width: 100%;

    &.items-knowledge-center{
     .item{
       flex-direction: row;

       .title{
         width: auto;
       }
       .title-icon {
         width: 200px !important;
         align-items: flex-start !important;
       }
       .desc{
         margin:0;
       }
     }
    }


    .item {
      display: flex;
      flex-direction: column;
      width: 100%;
      gap: 25px;
      margin: 4rem 0 0;

      .title {
        display: flex;
        flex-direction: row;
        gap: 1.5rem;
        width: 100%;

        .title-icon {

          width: 70px;
          max-height: 50px;
          display: flex;
          justify-content: center;
          align-items: center;

          img {
            width: 100%;
          }
        }

        .title-text {
          display: flex;
          gap: 8px;
          flex-direction: column;

          h3 {
            font-size: 2.4rem;
          }
        }
      }

      .desc {
        p {
          color: $text-color;
        }
      }

      .desc, .square-blue-list {
        margin-left: 95px;
      }

    }
  }

  .blue-section {
    background-color: $color-primary;
    padding: 2rem 0;
    margin: 2rem 0 0;

    .container {
      display: flex;
      flex-direction: column;
      gap: 20px
    }
    h3 {
      color: #fff;
      font-size: 2.4rem;
    }
    h2 {
      color: #fff;
      font-size: 3rem;
    }

    p {
      color: #fff;

    }
  }

  .light-blue-section {
    background-color: #F4F8FD;
    padding: 2rem 0 2rem;

  }

  .talk-to-an-expert {
    display: flex;
    flex-direction: row;
    margin-top: 50px;
    gap: 20px;
    padding: 40px;


    img {
      width: 100px;
    }

    p {
      color: $text-color;
    }

    h3 {
      font-size: 1.84rem;
      color: $color-primary;
      font-weight: 400;
    }
  }

  .services {
    display: flex;
    flex-direction: column;
      gap: 2rem;

    margin: 2rem 0;
    .service {
      display: flex;
      flex-direction: row;


    &.row-reverse{
      .service-desc {
        padding-right: 2rem;
        padding-left: 12.5vw;
      }

      .service-icon {
        padding-left: 2rem;
        padding-right: 12.5vw;
      }
      }


      &.active{
        .service-desc {
          background-color: $color-primary;
          p,h2{
            color: #fff !important;
          }
        }
      }

      .service-desc {
        display: flex;
        flex-direction: column;
        width: 70%;
        padding: 2rem;
        padding-right: 12.5vw;
        background-color: #f4f8fd;

        h2 {
          font-size: 3rem;
          font-weight: 400;
        }
      }

      .service-icon {
        width: 30%;
        padding: 2rem;
        display: flex;
        justify-content: center;
        align-items: center;
        padding-left: 12.5vw;

        img {
          width: 75%;
          height: auto;

        }
      }
    }
  }
}

#footer {
  border-top: 1.44mm solid $color-primary;

  .top {
    background-color: #f4f8fd;
    padding: 30px 0;
  }

  .bottom {
    background-color: $color-primary;
  }

  a, p {
    font-size: 0.92rem;
    color: #151168;
  }

  img#logo {
    width: 48px;
  }

  h3 {
    font-weight: 500;
    font-size: 2.33rem;
    color: $color-primary;
    margin-bottom: -10px;
  }

  .footer-title {
    font-weight: 600;
    margin-bottom: 10px;
  }

  li {
    ul {
      margin-left: 15px;
      margin-bottom: 15px;
    }
  }
}



@media only screen and (max-width: 1024px){

  .slide {
    .slide-image{
      display: none!important;
    }
    .slide-content{
      position: relative!important;
      width: 100% !important;
      margin: 1rem 0 !important;
    }
  }

    .container{
    width: 85vw!important;
  }
  header {
    margin: 0;
  }
  #header{
    display: none;
  }
  .leading-global-database{
    &.row{
      //flex-direction: column !important;
      .card{
        width: calc(33% - 40px) !important;
      }
    }
  }
}

@media only screen and (max-width: 768px) {
  .talk-to-an-expert{
    padding: 0!important;
    gap: 0!important;
    margin-bottom: 3rem;
    img{
      display: none;
    }
  }

  .text-float{
    display: none!important;
  }

  .fluid-box-blue{
    display: none;
  }

  .items-list{
    .item{
      .title{
        display: flex;
        flex-direction: column!important;
        .title-icon{
         display: none!important;
        }
        h3{
          //font-size: 2rem!important;
        }

      }
      .desc,.square-blue-list{
        margin: auto !important;
      }
    }
  }

  .why-choose{
    .item{
      width: calc(100% - 40px) !important;
      margin: 1.5rem 0!important;

    }
  }

  .services{
    .service-icon{
      display: none!important;
    }
    .service-desc{
      width: 100% !important ;
    }
  }

  .leadership{
    .leader{
      flex-direction: column !important;
      justify-content: center;
      align-items: center;
      .col-2{
        width: 60% !important;
      }

    }
  }

  .footer-columns{
    flex-wrap: wrap;
    justify-content: space-evenly;
    div{
      width: 40% !important;
    }
  }
}

@media only screen and (max-width: 600px){
  .leading-global-database{
    &.row{
      .card{
        img{
          width: 35% !important;
        }
        width: 100% !important;
      }
    }
  }
}