@import "./variables.css";

/* Header */
header {
  width: 100%;
  background: var(--light);
  padding: 10px 0;
  position: sticky;
  top: 0;
  z-index: 9;
  transition: 0.5s ease all;
}
header.sticky {
  padding: 0;
}
header {
  width: 100%;
  background: var(--light);
  padding: 5px 0;
}
header .navbar {
  padding-left: 0;
  padding-right: 0;
}
header .navbar-brand span {
  font-size: 25px;
  color: var(--dark);
  font-weight: 500;
}
header .navbar-brand span b {
  font-weight: 700;
  color: var(--primary);
}
header .nav-item {
  margin-left: 10px;
}
header .nav-item .nav-link {
  font-size: 18px;
  font-weight: 500 !important;
  color: var(--dark-alt) !important;
}
header .nav-item.active .nav-link {
  color: var(--primary) !important;
}
.navbar-light .navbar-toggler {
  background: var(--primary);
  color: var(--light);
}

/* Hero Section */
.hero {
  min-height: 90vh;
  position: relative;
  background: url(../images/hero-1.jpg);
  background-position: bottom;
  background-size: cover;
  width: 100%;
  overflow: hidden;
}
.hero::after {
  content: url(../images/pattern.png);
  position: absolute;
  bottom: -15px;
  left: 0;
  max-width: 100%;
  z-index: 3;
}
.hero::before {
  content: "";
  background: linear-gradient(to right, var(--dark), var(--secondary));
  width: 100%;
  height: 100%;
  z-index: 1;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0.1;
}
.hero .container {
  position: relative;
  z-index: 3;
  height: 100%;
}
.hero h2 {
  font-size: 45px;
  font-weight: 700;
  line-height: 150%;
  margin: 100px 0 0;
  color: var(--light);
  text-shadow: 0 0px 10px #0003;
}
.hero .image img {
  width: 70%;
}

/* About Section */
.about .about-info {
  position: relative;
  width: 90%;
  max-width: 500px;
  margin: auto;
}
.about .dash {
  height: 420px;
  width: 420px;
  border-radius: 420px;
  border: 5px dashed var(--secondary);
  flex-direction: column;
  display: flex;
  justify-content: center;
  align-items: center;
}
.about .image {
  width: 400px;
  height: 400px;
  padding: 10px;
  border-radius: 50%;
  overflow: hidden;
  background: var(--primary);
  position: relative;
  margin: auto;
}
.about .image img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.about .tag {
  position: absolute;
  bottom: 150px;
  right: 0%;
  padding: 10px 15px;
  background: var(--primary);
  border-radius: 5px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.about .tag b {
  font-size: 35px;
  color: var(--light);
  margin-right: 15px;
}
.about .tag span {
  font-size: 18px;
  color: var(--light-alt);
}
.about .tag-alt {
  position: absolute;
  bottom: 5%;
  right: 0%;
  padding: 10px 15px;
  background: var(--dark);
  border-radius: 5px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.about .tag-alt span {
  font-size: 16px;
  font-weight: 600;
  color: var(--light-alt);
  line-height: 30px;
}
.about h6 {
  font-size: 18px;
}

/* Points Section */
.points {
  border-radius: 100px 0;
  width: 100%;
  background: url(../images/background.jpg) !important;
  background-position: center !important;
  background-size: cover !important;
  position: relative;
  overflow: hidden;
}
.points::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  background: var(--primary-50);
  width: 60%;
  height: 100%;
  border-radius: 0 0 200px;
  box-shadow: 0 0 10px 5px #0003;
}
.points .heading {
  color: var(--light);
}
.points .heading b {
  color: var(--dark);
}
.points p {
  color: var(--light);
}
.points .button {
  background: var(--dark);
  border: 2px solid var(--dark);
}
.points ul li {
  display: flex;
  margin-bottom: 15px;
  font-size: 16px;
  color: var(--light);
}
.points ul li::before {
  content: "\f054";
  font-family: "Font Awesome 5 Pro";
  font-weight: 400;
  margin-right: 10px;
  color: var(--dark);
  margin-top: 3px;
}
.points .item {
  background: var(--light);
  padding: 20px;
  border-radius: 5px;
  margin-bottom: 30px;
  min-height: 170px;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  flex-direction: column;
  box-shadow: #0001 0px 0.5rem 1rem;
}
.points .item:last-child {
  margin-bottom: 0;
}
.points .item.item-mt {
  margin-top: 50px;
}
.points .item .icon {
  margin-bottom: 15px;
}
.points .item .icon i {
  font-size: 35px;
  color: var(--primary);
}
.points .item .text h5 {
  font-size: 20px;
}

/* Online Section */
.online .nav {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 30px !important;
}
.online .nav li {
  margin: 0 5px;
}
.online .nav li a {
  background: var(--light-alt);
  color: var(--primary);
  font-weight: 500;
  font-size: 18px;
  transition: 0.5s ease all;
}
.online .nav li a.active {
  background: var(--primary);
  color: var(--light);
}
.online .card h5 {
  font-size: 25px;
  font-weight: 600;
  color: var(--dark);
  margin-bottom: 20px;
}
.online .card ul li {
  display: flex;
  margin-bottom: 10px;
  font-size: 16px;
  color: var(--dark);
}
.online .card ul li::before {
  content: "\f192";
  font-family: "Font Awesome 5 Pro";
  font-weight: 400;
  font-size: 16px;
  margin-right: 10px;
  color: var(--primary);
  margin-top: 0px;
}

/* Price List */
.price-list {
  border-radius: 100px 0;
  width: 100%;
}
.price-list .owl-item:nth-child(even) .box {
  margin-top: 70px;
}
.price-list .box {
  position: relative;
  text-align: center;
}
.price-list .box .icon {
  border-radius: 50%;
  border: 3px dashed var(--secondary);
  width: 200px;
  height: 200px;
  margin: auto;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 5px;
  cursor: pointer;
}
.price-list .box .icon .amount {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  background: var(--primary);
  width: 100%;
  height: 100%;
  border-radius: 50%;
}
.price-list .box .icon .amount b {
  font-size: 40px;
  font-weight: 700;
  color: var(--light);
}
.price-list .box .icon .amount b i {
  font-weight: 300;
  font-style: normal;
}
.price-list .box .icon .amount span {
  font-size: 18px;
  font-weight: 400;
  color: var(--light);
}
.price-list .box .text {
  margin-top: 15px;
  cursor: pointer;
}
.price-list .box .text h5 {
  font-size: 22px;
  font-weight: 600;
  color: var(--dark);
  margin-bottom: 10px;
}
.price-list .owl-nav {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 30px;
}
.price-list .owl-nav button {
  width: 50px;
  height: 50px;
  border-radius: 50px !important;
  background: var(--light) !important;
  color: var(--dark) !important;
  font-size: 25px !important;
}

.pointsModal {
  background: #0004;
}
.pointsModal .modal-content {
  position: relative;
  top: 100px;
}
.pointsModal .modal-body {
  background: var(--light);
  margin: 10px;
  border: 3px dashed var(--secondary);
  padding: 10px !important;
}
.pointsModal button.close {
  position: absolute;
  top: 40px;
  right: 40px;
  width: 20px;
  height: 20px;
  line-height: 10px;
  z-index: 3;
  border-radius: 3px;
  background: transparent;
  opacity: 1;
  border: 0;
  outline: 0;
  margin: 0;
  transition: 0.5s ease all;
  color: var(--dark);
  text-shadow: none;
}
.pointsModal button.close:hover {
  background: var(--light-alt);
  color: var(--primary);
  opacity: 1 !important;
}
.pointsModal button.close i {
  font-size: 20px;
}
.pointsModal .content {
  background: var(--light-alt);
  width: 100%;
  height: 100%;
  border-radius: 5px;
  overflow: hidden;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: row;
}
.pointsModal .content .icon {
  width: 35%;
  height: 300px;
  background: var(--primary);
  padding: 15px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}
.pointsModal .content .icon span,
.pointsModal .content .icon p {
  font-size: 25px;
  font-weight: 600;
  color: var(--light);
  text-transform: capitalize;
  text-align: center;
}
.pointsModal .content .icon b {
  font-size: 40px;
  font-weight: 700;
  color: var(--dark);
  margin: 10px 0;
}
.pointsModal .content .text {
  width: 62%;
  height: 100%;
  margin-left: 3%;
}
.pointsModal .content .text ul li {
  margin-bottom: 10px;
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  font-size: 16px;
  font-weight: 500;
}
.pointsModal .content .text ul li i {
  content: "\f138";
  font-family: "Font Awesome 5 Pro";
  font-weight: 900;
  font-size: 16px;
  color: var(--primary);
  margin: 5px 10px 0 0;
  height: 100%;
  display: inline-block;
}
.pointsModal button.button {
  background: transparent;
  margin-left: 10px;
  color: var(--primary);
  box-shadow: none;
}

/* Testimonial Section */
.testimonial .item {
  width: 100%;
  background: var(--light);
  border-radius: 5px;
  border: 3px dashed var(--secondary);
  padding: 10px;
}
.testimonial .item .box {
  background: var(--light-alt);
  border-radius: 5px;
  padding: 10px;
  box-shadow: #0001 0px 0.5rem 1rem;
}
.testimonial .item .box .text p {
  color: var(--dark);
  font-size: 16px;
  font-weight: 300;
}
.testimonial .item .box .image {
  display: flex;
  flex-direction: row-reverse;
  justify-content: flex-end;
  align-items: center;
  margin-top: 15px;
}
.testimonial .item .box .image img {
  width: 100px;
  border-radius: 50px;
  padding: 5px;
  border: 2px dotted var(--secondary);
  margin-right: 15px;
}
.testimonial .item .box .image h5 {
  font-size: 18px;
  font-weight: 600;
  color: var(--dark);
}
.testimonial .item .box .image h5 span {
  color: var(--dark-alt);
  font-weight: 400;
  font-size: 16px;
}
.testimonial .owl-nav {
  margin-top: 30px;
}
.testimonial .owl-nav button {
  width: 40px;
  height: 40px;
  border-radius: 40px;
  line-height: 40px;
  text-align: center;
  background: var(--primary) !important;
  color: var(--light) !important;
  font-size: 25px !important;
  transition: 0.5s ease all;
}
.testimonial .owl-nav button:hover {
  background: var(--dark) !important;
}

/* Blog Section */
.blog {
  border-radius: 100px 0;
  width: 100%;
}
.blog .card {
  height: 100%;
}
.blog .card-body {
  padding: 10px;
}
.blog .image {
  position: relative;
  width: 100%;
  height: 250px;
}
.blog .image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.blog .image span {
  position: absolute;
  bottom: 10px;
  right: 10px;
  background: var(--primary);
  padding: 8px 20px;
  font-size: 15px;
  font-weight: 600;
  color: var(--light);
  border-radius: 50px;
}
.blog .text h5 {
  margin: 10px 0;
}
.blog .text h5 a {
  font-size: 20px;
  font-weight: 600;
  color: var(--primary);
}
.blog .text a {
  display: inline-block;
  font-weight: 400;
  color: var(--primary);
}
.blog .pagination {
  display: flex;
  align-items: center;
  justify-content: center;
}
.blog .pagination li a {
  padding: 10px 15px;
  color: var(--dark);
  transition: 0.5s ease all;
}
.blog .pagination li.active a {
  background-color: var(--primary);
  border-color: var(--primary);
}

/* Price List Page */
.price-list-alt .card {
  background: var(--light);
  padding: 10px;
  height: 100%;
}
.price-list-alt .card .card-body {
  border: 2px dashed var(--primary);
}
.price-list-alt .text h5 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 20px;
}
.price-list-alt .text h5 span {
  font-size: 20px;
  font-weight: 600;
  color: var(--dark);
}
.price-list-alt .text h5 span i {
  display: block;
  font-size: 16px;
  margin-top: 5px;
  font-weight: 600;
  color: var(--secondary);
}
.price-list-alt .text h5 b {
  color: var(--primary);
  font-size: 25px;
  font-weight: 800;
}
.price-list-alt .text ul {
  margin-bottom: 30px;
}
.price-list-alt .text ul li {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  line-height: 120%;
  margin-bottom: 10px;
}
.price-list-alt .text ul li i {
  color: var(--primary);
  margin-top: 3px;
  margin-right: 10px;
}

/* Blog Post */
.post .image {
  width: 100%;
  height: 500px;
  overflow: hidden;
}
.post .image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.post .info {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  margin-top: 15px;
  margin-bottom: 30px;
}
.post .info span {
  font-size: 16px;
  font-weight: 600;
  margin-right: 50px;
}
.post .info span i {
  font-size: 15px;
  color: var(--light);
  margin-right: 5px;
  background: var(--primary);
  width: 25px;
  height: 25px;
  line-height: 25px;
  text-align: center;
}
.post .side-post {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  margin-bottom: 15px;
  height: 100px;
  overflow: hidden;
}
.post .side-post:last-child {
  margin-bottom: 0;
}
.post .side-post .image {
  width: 25%;
  height: 100%;
}
.post .side-post .image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.post .side-post .text {
  width: 70%;
  height: 100%;
  margin-left: 5%;
}
.post .side-post .text a {
  color: var(--primary);
  font-size: 18px;
  font-weight: 600;
}
.post .side-post .text p {
  font-size: 14px;
  line-height: normal;
}

/* Footer Section */
footer {
  padding-top: 150px !important;
  background: #1d1e2a !important;
  position: relative;
  width: 100%;
  overflow: hidden;
}
footer::before {
  content: url(../images/pattern-alt.png);
  position: absolute;
  width: 100%;
  top: -7px;
  left: 0;
}
footer h1 {
  font-size: 30px;
  color: var(--light);
  font-weight: 500;
}
footer h1 b {
  font-weight: 700;
  color: var(--primary);
}
footer ul {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
footer ul li {
  margin-left: 20px;
}
footer ul li a {
  font-size: 18px;
  font-weight: 400;
  color: var(--light-alt);
  transition: 0.5s ease all;
}
footer ul li a:hover {
  color: var(--light-alt);
}
footer hr {
  background: var(--light);
  opacity: 0.1;
  margin: 70px 0;
}
footer h6 {
  font-size: 20px;
  font-weight: 600;
  color: var(--primary);
  margin-bottom: 25px;
}
footer address {
  font-size: 16px;
  font-weight: 400;
  color: var(--light);
}
footer .mt-5 p {
  margin-bottom: 10px;
  font-size: 16px;
}
footer .mt-5 p i {
  width: 50px;
  height: 50px;
  line-height: 50px;
  text-align: center;
  margin-right: 15px;
  background: var(--primary);
  color: var(--light);
  font-size: 20px;
}
footer .mt-5 p a {
  color: var(--light);
}
footer form input,
footer form textarea {
  width: 100%;
  padding: 10px 15px;
  background: #181724;
  border: 1px solid var(--primary);
  margin-bottom: 10px;
  color: var(--light);
  transition: 0.5s ease all;
}
footer form input::placeholder,
footer form textarea::placeholder {
  color: var(--light);
  opacity: 0.5;
}
footer form input:focus,
footer form textarea:focus {
  border: 1px solid var(--light);
}
.footer-bottom {
  padding: 30px 0;
  background: #181724;
}
.footer-bottom p {
  font-size: 16px;
  color: var(--light-alt);
}
.footer-bottom p a {
  color: var(--primary);
  transition: 0.5s ease all;
}
.footer-bottom p a:hover {
  color: var(--primary);
}

/* Page Title */
.page-title {
  padding: 150px 0 200px;
  position: relative;
  background: url(../images/page-title.jpg);
  background-position: bottom;
  background-size: cover;
  width: 100%;
  overflow: hidden;
  z-index: 1;
}
.page-title::after {
  content: url(../images/pattern.png);
  position: absolute;
  bottom: -15px;
  left: 0;
  max-width: 100%;
  z-index: 3;
}
.page-title::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(to right, #000000, #004d40);
  opacity: 0.5;
  z-index: 1;
}
.page-title .container {
  position: relative;
  z-index: 5;
}
.page-title .heading {
  font-size: 40px;
}
.page-title .page-nav {
  display: inline-flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
  margin-top: 20px;
  font-size: 18px;
  background: #0003;
  padding: 15px;
  border-radius: 5px;
  width: auto;
}
.page-title .page-nav li::before {
  content: "\f054";
  font-family: "Font Awesome 5 Pro";
  font-weight: 400;
  margin: 0 15px;
  color: var(--secondary);
}
.page-title .page-nav li:first-child:before {
  display: none;
}
.page-title .page-nav li {
  font-weight: 600;
}
.page-title .page-nav li a {
  color: var(--light);
}
.page-title .page-nav li span {
  color: var(--primary);
}

/* Points Alternate Section */
.points-alt {
  border-radius: 100px 0;
  width: 100%;
}
.points-alt ul li {
  display: flex;
  margin-bottom: 15px;
  font-size: 16px;
  color: var(--dark);
}
.points-alt ul li::before {
  content: "\f054";
  font-family: "Font Awesome 5 Pro";
  font-weight: 400;
  margin-right: 10px;
  color: var(--primary);
  margin-top: 3px;
}
.points-alt .image {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.points-alt .image img {
  width: 80%;
}

/* Contact Page */
.contact form label,
.payment form label {
  font-size: 16px;
  font-weight: 500;
  color: var(--dark);
}
.contact form label span,
.payment form label span {
  color: var(--danger);
}
.contact form .form-control,
.payment form .form-control,
.payment .custom-select{
  height: auto;
  padding: 8px 15px;
  font-size: 16px;
  outline: 0;
  border: 2px solid #cdcdcd;
  transition: 0.5s ease all;
}
.contact form .form-control:focus,
.payment form .form-control:focus,
.payment .custom-select:focus{
  box-shadow: none;
  border: 2px solid var(--primary);
}
.contact h5,
.payment h5 {
  font-size: 25px;
  font-weight: 600;
  color: var(--primary);
}
.contact .social {
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.contact .social a {
  display: inline-block;
  margin-right: 20px;
  font-size: 25px;
  color: var(--dark);
}
.contact p {
  display: flex;
  justify-content: flex-start;
  align-items: center;
}
.contact p i {
  width: 50px;
  height: 50px;
  line-height: 50px;
  text-align: center;
  background: var(--dark);
  color: var(--light);
  border-radius: 50px;
  margin-right: 15px;
}
.contact p span {
  font-size: 18px;
}
#queryModal .modal-body {
  background: var(--light);
  margin: 10px;
  border: 3px dashed var(--secondary);
  padding: 30px !important;
  position: relative;
}
#queryModal form label {
  font-size: 16px;
  font-weight: 500;
  color: var(--dark);
}
#queryModal form label span {
  color: var(--danger);
}
#queryModal form .form-control {
  height: auto;
  padding: 8px 15px;
  font-size: 16px;
  outline: 0;
  border: 2px solid #cdcdcd;
  transition: 0.5s ease all;
}
#queryModal form .form-control:focus {
  box-shadow: none;
  border: 2px solid var(--primary);
}
#queryModal .button-close {
  background: var(--primary);
  color: var(--light);
  border: 0;
  outline: 0;
  border-radius: 50%;
  width: 40px;
  height: 40px;
  text-align: center;
  line-height: 40px;
  position: absolute;
  top: 20px;
  right: 20px;
  font-size: 20px;
}

/* Payment Section */
.payment .details p,
.payment .details h6 {
  font-size: 18px;
  font-weight: 500;
  color: var(--dark-alt);
  margin-bottom: 5px;
}
.payment .details p b,
.payment .details h6 b {
  color: var(--dark);
}
.payment .details hr {
  margin: 20px 0;
}
.payment .table td {
  width: 400px;
  font-weight: 500;
}

/* Status Page */
.status-page h4 {
  font-size: 25px;
  font-weight: 600;
  color: var(--primary);
}

/* Auth Section */
.auth .image {
  width: 100%;
  height: 100%;
}
.auth .image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}
.auth .card {
  border-left: 10px solid var(--primary) !important;
  border-radius: 0 !important;
}
.auth .input-group {
  margin-bottom: 15px;
}
.auth .input-group .input-group-prepend {
  border-color: var(--primary) !important;
  padding: 0;
}
.auth .input-group .input-group-text {
  width: 50px;
  text-align: center;
  border: 2px solid var(--primary) !important;
  background: var(--primary);
  border-radius: 0 !important;
  color: var(--light);
}
.auth .input-group .input-group-text i {
  font-size: 20px;
}
.auth .form-control {
  border-radius: 0;
  height: auto !important;
  padding: 12px 15px;
  font-size: 16px;
  outline: 0;
  border: 2px solid var(--primary) !important;
  border-left: 0 !important;
  background: var(--light) !important;
  transition: 0.5s ease all;
}
.auth .form-control:focus {
  box-shadow: none;
  border: 2px solid var(--primary) !important;
  border-left: 0 !important;
}
.auth .form-control:focus {
  box-shadow: none;
  border: 2px solid var(--primary) !important;
  border-left: 0 !important;
}
.auth .social-login a {
  display: block;
  width: 250px;
}


/* Dashboard */
.dashboard .sidebar {
  background: var(--light);
  margin-bottom: 15px;
}
.dashboard .sidebar ul {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
}
.dashboard .sidebar ul li {
  padding: 0;
  margin: 0 10px 10px 0;
  border: 2px solid var(--primary) !important;
  overflow: hidden;
  border-radius: 5px;
}
.dashboard .sidebar ul li.active {
  border-color: var(--primary);
  background-color: var(--primary);
}
.dashboard .sidebar ul li.active a {
  background: var(--primary);
  color: var(--light);
  font-size: 18px;
  font-weight: 600;
}
.dashboard .sidebar ul li.active a::after {
  color: var(--light-alt) !important;
  background: var(--primary);
}
.dashboard .sidebar ul li a {
  display: block;
  padding: 13px 20px;
  background: var(--light-alt);
  font-size: 16px;
  font-weight: 400;
  color: var(--dark);
  transition: 0.5s ease all;
}
.dashboard .profile p {
  padding: 5px 0;
  font-size: 18px;
  border-bottom: 1px solid #0002;
}
.dashboard .profile p:last-child {
  border-bottom: 0;
}
.dashboard .profile p b {
  font-weight: 500;
  width: 120px;
  display: inline-block;
}
.dashboard .profile form .form-group {
  margin-bottom: 25px;
}
.dashboard .profile form label {
  font-size: 14px;
  font-weight: 600;
  color: var(--dark);
}
.dashboard .profile form label span {
  color: var(--secondary);
}
.dashboard .profile form input,
.dashboard .profile form textarea {
  border: 1px solid #0003;
  border-radius: 0;
  outline: none;
  padding: 10px !important;
  background: var(--light);
  transition: 0.5s ease all;
  height: auto;
}
.dashboard .profile form .form-control:focus,
.custom-file-input:focus ~ .custom-file-label {
  border: 1px solid var(--primary);
  box-shadow: none !important;
}
.dashboard .profile form .custom-file-label,
.dashboard .profile form .custom-file-input {
  height: auto;
  border: 1px solid #0003;
  border-radius: 0;
  outline: none;
  padding: 10px !important;
  background: var(--light);
  transition: 0.5s ease all;
}
.dashboard .profile form .custom-file-label::after {
  height: 100%;
  line-height: 30px;
}
.dashboard .table thead th,
.table-bordered td,
.table-bordered th {
  border: 1px solid #bababa !important;
  font-size: 16px;
}
.dashboard .pagination {
  border-radius: 0 !important;
}
.dashboard .pagination .active a {
  background: var(--primary) !important;
  border: 1px solid var(--primary) !important;
  color: var(--light) !important;
  padding-left: 15px;
  padding-right: 15px;
}
.dashboard .pagination a {
  color: var(--dark);
  transition: 0.5s ease all;
}
.dashboard .pagination a:hover {
  background: var(--light);
  color: var(--primary);
}
.dashboard .profile .list .card {
  background: var(--light);
  padding: 10px;
  height: 100%;
}
.dashboard .profile .list .card .card-body {
  border: 2px dashed var(--primary);
}
.dashboard .profile .list .text h5 {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 20px;
}
.dashboard .profile .list .text h5 span {
  font-size: 20px;
  font-weight: 600;
  color: var(--dark);
}
.dashboard .profile .list .text h5 span i {
  display: block;
  font-size: 16px;
  margin-top: 5px;
  font-weight: 600;
  color: var(--secondary);
}
.dashboard .profile .list .text h5 b {
  color: var(--primary);
  font-size: 25px;
  font-weight: 800;
}
.dashboard .profile .list .text ul {
  margin-bottom: 30px;
}
.dashboard .profile .list .text ul li {
  display: flex;
  align-items: flex-start;
  justify-content: flex-start;
  line-height: 120%;
  margin-bottom: 10px;
}
.dashboard .profile .list .text ul li i {
  color: var(--primary);
  margin-top: 3px;
  margin-right: 10px;
}
.dashboard .profile .search {
  display: flex;
  justify-content: flex-end;
  align-items: stretch;
}
.dashboard .profile .search input {
  width: 250px;
  padding: 5px 10px;
  border: 2px solid var(--primary);
  outline: none;
}
.dashboard .profile .search button {
  background: var(--primary);
  color: var(--light);
  padding: 5px 10px;
  border: 0;
  outline: none;
}

/* Responsive */
@media (min-width: 1200px) {
  .container {
    max-width: 85% !important;
  }
}
@media (max-width: 1024px) {
  header .navbar-brand span {
    font-size: 20px;
  }
  header .nav-item .nav-link {
    font-size: 16px;
  }
  .page-title {
    padding: 100px 0 !important;
  }
  .section {
    padding: 70px 0;
  }
  .heading {
    font-size: 30px;
  }
  .hero {
    min-height: 50vh;
  }
  .about .about-info {
    margin-bottom: 30px;
  }
  .points::before {
    width: 70%;
  }
  footer ul {
    margin-top: 30px;
    justify-content: flex-start;
  }
  footer ul li:first-child {
    margin-left: 0;
  }
}
@media (max-width: 990px) {
  .navbar-nav {
    margin-top: 15px;
    border-top: 1px solid #0003;
  }
  header .nav-item {
    margin-left: 0;
  }
  .points::before {
    width: 100%;
    border-radius: 0;
  }
  .online .nav li {
    margin: 5px;
  }
  .price-list .col-lg-3:nth-child(2n) .box {
    margin: 30px 0;
  }
  footer ul {
    flex-wrap: wrap;
  }
  footer ul li {
    margin-left: 0;
    margin-right: 20px;
    margin-bottom: 10px;
  }
  footer hr {
    margin: 30px 0;
  }
  footer .social {
    justify-content: flex-start;
  }
  footer .social a {
    margin-left: 0;
    margin-right: 15px;
  }
  .contact .text-center {
    text-align: left !important;
  }
  .pointsModal .content .icon span,
  .pointsModal .content .icon p {
    font-size: 20px;
  }
  .pointsModal .content .icon b {
    font-size: 30px;
  }
  .page-title .heading {
    font-size: 30px;
  }
  .page-title .page-nav {
    padding: 8px 15px;
    font-size: 16px;
  }
  .contact .social {
    margin-bottom: 50px;
  }
}
@media (max-width: 767px) {
  .about .image {
    width: 300px;
    height: 300px;
  }
  .about .dash {
    width: 320px;
    height: 320px;
  }
  .about .tag,
  .about .tag-alt {
    position: relative;
    bottom: auto;
    top: auto;
    left: auto;
    right: auto;
    justify-content: flex-start;
    width: auto;
    margin: 5px;
  }
  .hero {
    min-height: 90vh;
  }
  .hero h2 {
    font-size: 25px;
  }
  .pointsModal .content {
    flex-direction: column;
  }
  .pointsModal .content .icon {
    width: 100%;
    height: auto;
    margin-bottom: 30px;
  }
  .pointsModal .content .text {
    margin: 0;
    width: 100%;
    padding: 10px;
  }
  .footer-bottom .text-right {
    text-align: left !important;
  }
  .heading {
    font-size: 25px;
  }
  .post .info {
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
  }
  .post .info span {
    margin: 5px 0;
  }
  footer h1 {
    font-size: 25px !important;
  }
}
