* {
  padding: 0px;
  margin: 0px;
  box-sizing: border-box;
}
html {
  font-size: 62.5%;
}
body {
  font-family: "IRANYekan", Sans-serif;
}
/**************************/
/* reset */
/**************************/
a {
  text-decoration: none;
}
li {
  list-style: none;
}
/**************************/
/* GENRAL REUSABLE COMPONENTS */
/**************************/
.custom-container {
  max-width: 120rem;
  padding: 0 3rem;
  margin: 0 auto;
}
.object-position-top {
  object-position: top;
}
.mb-20 {
  margin-bottom: 2rem !important;
}
.mt-50 {
  margin-top: 5rem !important;
}

.title-lined {
  opacity: 0;
  transform: translateY(30px);
  animation: fadeInUp 0.8s ease-out forwards;
  animation-delay: 0.3s;
}
@keyframes fadeInUp {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.title-lined__heading {
  color: #4e74a1;
  font-size: 2.5rem;
  font-weight: 600;
  line-height: 1.2;
}

/* ############################################### */
/**************************/
/* HEADER */
/**************************/
.header {
  background-color: #1b3566;
}

.login {
  color: white;
  font-size: 1.2rem;
  line-height: 1.6;
}
.header-icon {
  height: 1.6rem;
  fill: white;
}

.number-phone {
  font-size: 1.2rem;
  line-height: 1.6;
  cursor: pointer;
}
.number-phone__link:link,
.number-phone__link:visited {
  color: white;
}

.media-icon {
  padding: 0.4rem 0.6rem;
  border-radius: 2px;
}
.header__reset-btn-search {
  border: 0rem;
  background-color: transparent;
}
.header__search-btn {
  height: 1.6rem;
  fill: aliceblue;
  border: none;
}
.header__placeholder-search:focus {
  box-shadow: none;
}
.header__placeholder-search::placeholder {
  color: #8f9dc0;
}
.header__placeholder-search:placeholder-shown {
  color: white;
}

.header-btn {
  background-color: #22a455;
  color: white;
  font-size: 1.6rem;
  line-height: 1;
  padding: 0.8rem 2rem !important;
}
.header-btn:hover,
.header-btn:active {
  transition: all 0.4s;
  background-color: #54ab60;
  color: white;
}

/* Sticky Header */
.stick-header {
  background-color: #2663aa;
  margin-bottom: -0.2rem;
}
.logo {
  margin-left: auto;
  padding: 1.5rem 2rem;
}
/**************************/
/* MAIN SLIDER */
/**************************/
.carousel-item__img-box {
  max-height: 50rem;
}
.carousel-item-crop-img {
  aspect-ratio: 21 / 9;
  max-height: 50rem;
  width: 100%;
  overflow: hidden;
}

.carousel-item__bg-img {
  height: 1.2rem;
  background-image: url(../img/main-slider/download.jpg);
  background-position: center;
}

.carousel-item.active .carousel-item__btn-img {
  font-family: "Vazir";
  font-size: 1.3rem;
  color: white;
  background-color: #1b9af7;
  border-radius: 5px;
  font-weight: 600;
  top: 65%;
  right: 38%;
  padding: 1rem 4.5rem;
  opacity: 0;
  animation: fadeIn 1.2s ease-out forwards;
  animation-delay: 0.3s;
}
@keyframes fadeIn {
  to {
    opacity: 1;
  }
}
.carousel__btn {
  padding: 1.8rem;
}
.carousel-next-btn,
.carousel-prev-btn {
  width: 10%;
}
/* pagination */
.carousel-indicators [data-bs-target] {
  width: 2rem;
}
/**************************/
/* Navigation Boxes */
/**************************/
.navigation-boxes {
  border-radius: 0px 13px 13px 13px !important;
  box-shadow: 0 0 12px rgb(0, 0, 0, 0.18) !important;
  transition: all 0.4s;

  opacity: 0;
  transform: translateY(-30px);
  animation: fadeInDown 0.8s ease-out forwards;
  animation-delay: 0.3s;
}
@keyframes fadeInDown {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.navigation-boxes:hover,
.navigation-boxes:active {
  box-shadow: 0 0 20px rgb(0, 0, 0, 0.28) !important;
}

/**************************/
/* Content-Columns */
/**************************/
/* General */
.content-columns {
  border-radius: 15px;
  box-shadow: 0 0 10px rgb(0, 0, 0, 0.5);
  padding: 0;
  overflow: hidden;
}
.content-columns__title-box {
  background-image: url("../img/Content-Columns/bg_title_box.jpg");
}
.content-columns__main-title {
  font-size: 1.5rem;
  line-height: 1.4;
  font-weight: 600;
  color: white;
  padding: 1.1rem 3.2rem 1.1rem 0.9rem;
}
.content-columns__items-title {
  font-family: Vazir;
  font-size: 1.3rem;
  font-weight: 600;
  line-height: 1.7;
  margin-bottom: 1.3rem;
  color: rgb(4, 92, 180);
}
.content-columns__items-title:hover {
  color: hsla(210, 96%, 36%, 0.85);
}
.content-columns__items-date {
  font-family: Vazir;
  color: #adadad;
  display: block;
  margin-bottom: 1.3rem;
  line-height: 1.3;
}
.content-columns__archive-btn {
  background-color: #4055b2;
  padding: 1.2rem;
}
.content-columns__title-archive-btn {
  font-family: Vazir;
  font-weight: 500;
  font-size: 1.4rem;
  line-height: 1.2;
  color: white;
}
.content-columns-crop-img {
  aspect-ratio: 4 / 3;
  overflow: hidden;
  border-radius: 10px;
}
/* News-Column */
.news-items {
  padding: 1.7rem 1.3rem 1.3rem 1.3rem;
}
/* Jurisprudence-Column*/
.content-columns__title-article {
  font-family: Vazir;
  font-size: 1.8rem;
  line-height: 1;
  font-weight: 600;
  color: rgb(78, 116, 161);
}

.content-columns__archive-items-btn {
  transform: rotate(270deg);
  top: 48%;
  left: -6%;
}
.content-columns__title-archive-btn {
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.2;
  color: white;
  background-color: #4055b2;
}
/* Research */
.jurisprudence-crop-img {
  aspect-ratio: 4 / 3.7;
  overflow: hidden;
  border-radius: 10px;
}
.jurisprudence__item-title-font {
  font-size: 1.5rem;
  line-height: 1.7;
}

/**************************/
/* Archive-Section */
/**************************/
.archive {
  background-image: url("../img/archive-section/bg.png");
  background-color: #f1f3f5;
  margin-top: 1rem;
  padding: 2rem 0rem 5rem 0rem;
}

.archive-cards {
  border-radius: 20px;
  overflow: hidden;
  box-shadow: 0px 0px 30px 0px rgba(0, 0, 0, 0.08);
}
.archive-cards_img-box {
  height: 20rem;
  overflow: hidden;
}
.archive-cards_img {
  object-fit: cover;
  transition: all 1.3s;
}
.archive-cards:hover .archive-cards_img {
  transform: scale(1.2);
  filter: brightness(75%);
}
.archive-cards__title-box {
  background-color: #4054b2;
  height: 10rem;
}
.archive-cards__title {
  font-family: "Vazir";
  word-spacing: 0.12rem;
  color: #fff;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.8;
}

/**************************/
/* Schools-Section */
/**************************/
.schools {
  padding: 5.6rem 0rem 8rem 0rem;
}

.schools-cards--orange-bg {
  background-color: #fef3d5;
}
.schools-cards--green-bg {
  background-color: #f2f9e7;
}
.schools-cards--gray-bg {
  background-color: #e9ecf1;
}
.schools-cards {
  border-radius: 3rem;
  transition: all 0.4s;
}
.schools-cards:hover,
.schools-cards:active {
  box-shadow: 0 0 23px rgb(0, 0, 0, 0.29);
}
.schools-cards__icon-box {
  color: #fff;
  border-radius: 75% 25% 43% 57% / 46% 29% 71% 54%;
  overflow: hidden;
  transform: translateY(-18%);
  position: relative;
}
.schools-cards__icon-box--orange-bg {
  background-color: #ffb400;
  border: 1px solid #ffb400;
  padding: 4.2rem;
}
.schools-cards__icon-box--green-bg {
  background-color: #abd96d;
  border: 1px solid #abd96d;
  padding: 4.5rem;
}
.schools-cards__icon-box--gray-bg {
  background-color: #758aa2;
  border: 1px solid #758aa2;
  padding: 3.5rem;
}
.schools-cards__icon-box::before {
  content: "";
  position: absolute;
  top: -100%;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: white;
  z-index: 1;
  transition: top 0.4s ease;
  pointer-events: none;
}
.schools-cards:hover .schools-cards__icon-box::before {
  top: 0;
}

.schools-cards__icon {
  width: 4.8rem;
  position: relative;
  z-index: 2;
}
.schools-cards__content {
  border-radius: 3rem;
  padding-bottom: 3rem;
}
.schools-cards__title {
  font-family: "Vazir";
  font-size: 1.9rem;
  font-weight: 700;
  line-height: 1.2;
  margin-bottom: 1.5rem;
}
.schools-cards__title--orang {
  color: rgb(243, 172, 0);
}
.schools-cards__title--green {
  color: rgb(171, 217, 109);
}
.schools-cards__title--gray {
  color: rgb(106, 86, 166);
}
.schools-cards__more-details {
  font-family: "Vazir";
  font-size: 1.2rem;
  color: rgb(33, 33, 33);
  line-height: 1.6;
  margin-bottom: 2rem;
}
.schools-cards__login {
  font-family: "Vazir";
  font-size: 1.2rem;
  color: rgb(4, 92, 180);
  line-height: 1.6;
}
/**************************/
/* Gallery */
/**************************/
.gallery {
  margin-bottom: 7rem;
}
.gallery-title {
  color: #4e74a1;
  font-size: 2.5rem;
  font-weight: 600;
  line-height: 1.2;
}
.gallery-img {
  border-radius: 5px;
  aspect-ratio: 4 / 2.8;
}

.gallery-prev-btn {
  width: 5%;
}
.gallery__btn {
  padding: 1.5em;
}
.custom-carousel-indicators {
  position: absolute;
  top: 105%;
}
.gallery-pagination {
  background-color: #797979 !important;
  width: 0.8rem !important;
  height: 0.8rem !important;
  border-radius: 50% !important;
}
/**************************/
/* FOOTER */
/**************************/
.footer {
  background-color: #222;
}
/* footer__title */
.footer__title {
  font-family: "Vazir";
  font-size: 1.7rem;
  font-weight: 600;
  color: white;
}
.footer__title-divider {
  height: 0.3rem;
  width: 10rem;
  position: relative;
  margin-left: 2.7rem;
  background: rgb(37, 117, 252);
  border-radius: 2px;
}
.footer__title-divider::before {
  content: "";
  position: absolute;
  left: -2.7rem;
  top: 0rem;
  display: inline-block;
  height: 0.4rem;
  width: 0.4rem;
  background-color: rgb(12, 90, 219);
  box-shadow: rgb(12, 90, 219) 9px 0px 0px 0px,
    rgb(12, 90, 219) 18px 0px 0px 0px;
  border-radius: 50%;
}
/* about-us */
.footer__content {
  font-family: "Vazir";
  font-size: 1.3rem;
  color: white;
  font-weight: 300;
  line-height: 1.9;
  text-align: justify;
}

/* latest-posts */
.latest-posts__items-title {
  font-family: Vazir;
  font-size: 1.2rem;
  font-weight: 300;
  line-height: 1.7;
  margin-bottom: 1.3rem;
  color: #aaaaaa;
  transition: all 0.4s;
}
.latest-posts__items-title:hover,
.latest-posts__items-title:active {
  color: rgb(229, 26, 45);
}

/* social-media */
.footer__social-media-box {
  padding: 0.95rem;
  background-color: #252b2b;
  box-shadow: 0 0 1px #aaaaaa;
}
.footer__social-media {
  width: 1.9rem;
  height: 1.9rem;
  fill: white;
  transition: fill 0.4s;
}
.footer__social-media:hover,
.footer__social-media:active {
  fill: #64bb63;
}

/* address */
.footer__address {
  font-family: "Vazir";
  color: white;
  font-size: 1.3rem;
  line-height: 1.9;
  text-align: justify;
}

.footer__phone-number {
  font-family: "IRANYekan";
  color: rgb(97, 206, 112);
}

.footer__email {
  color: #61ce70;
  text-decoration: underline;
}

/* section-divider */
.footer__section-divider-box {
  padding: 2rem 0;
}
.footer__section-divider {
  border-top: 1px solid #383838;
}

/* navigation-section */
.footer__developer {
  font-family: "Vazir";
  color: white;
  font-size: 1.3rem;
  line-height: 1.9;
}
.footer__nav-link {
  font-size: 1.5rem;
  color: white;
  transition: color 0.4s;
}
.footer__nav-link:hover,
.footer__nav-link:active {
  color: #61ce70;
}
.footer__nav-link.active {
  color: #61ce70;
}
/* copyright*/
.footer__copyright {
  background-color: #000;
}
.footer__copyright-text {
  font-family: "Vazir";
  color: white;
  font-size: 1.3rem;
  line-height: 1.9;
}
