/* Font Google Imported */
@import url("https://fonts.googleapis.com/css2?family=Poppins:wght@100;200;300;400;500;600;700;800;900&family=Volkhov:wght@400;700&display=swap");

/* CSS Variable */
:root {
  --primary-color: rgb(23, 111, 253);
  --font-color: #2c2c2c;
  --bg-dark: #292929;
  --hover-color: rgb(18, 87, 199);
}

/* CSS Reset */
*,
*::before,
*::after {
  padding: 0;
  margin: 0;
  outline: none;
  border: none;
  box-sizing: border-box;
  list-style: none;
  text-decoration: none;
}

/* Html and Body tag Styling */

html {
  scroll-behavior: smooth;
}

body {
  color: var(--font-color);
  background-color: #fff;
  transition: 300ms ease-in-out;
  font-family: "Poppins", sans-serif;
  overflow-x: hidden !important;
  overflow-y: hidden;
}

.dark body {
  background-color: var(--bg-dark);
  color: #fff;
}

/* Scrollbar Style */
/* Firefox */
* {
  scrollbar-width: thin;
  scrollbar-color: var(--primary-color) hsla(186, 100%, 69%, 1) 100%;
}

/* Chrome, Edge and Safari */
*::-webkit-scrollbar {
  height: 10px;
  width: 10px;
}
*::-webkit-scrollbar-track {
  border-radius: 20px;
  background-color: transparent;
}

*::-webkit-scrollbar-thumb {
  border-radius: 10px;
  background: hsla(217, 100%, 50%, 1);
  background: linear-gradient(
    90deg,
    hsla(217, 100%, 50%, 1) 0%,
    hsla(186, 100%, 69%, 1) 100%
  );
  background: -moz-linear-gradient(
    90deg,
    hsla(217, 100%, 50%, 1) 0%,
    hsla(186, 100%, 69%, 1) 100%
  );
  background: -webkit-linear-gradient(
    90deg,
    hsla(217, 100%, 50%, 1) 0%,
    hsla(186, 100%, 69%, 1) 100%
  );
}

/* Button Back To Top */
.button-backtop {
  position: fixed;
  bottom: 15px;
  right: 15px;
  width: 40px;
  height: 40px;
  border-radius: 100%;
  text-align: center;
  border: 2px solid white;
  cursor: pointer;
  display: none;
  box-shadow: 0 0 0 1.5px rgb(73, 73, 73);
  background: var(--primary-color);
  z-index: 999;
}

.dark .button-backtop {
  border: 2px solid #000;
  box-shadow: 0 0 0 1.5px rgb(255, 255, 255);
}

.button-backtop i {
  color: white;
  font-size: 1.5rem;
  line-height: 35px;
}

/* Loading Screen Styling */
.loading-container {
  width: 100vw;
  height: 100vh;
  background-color: #fff;
  z-index: 999999999;
  display: flex;
  justify-content: center;
  align-items: center;
  position: fixed;
  top: 0;
  left: 0;
}

.dark .loading-container {
  background-color: #000;
}

.loading-screen {
  width: 50px;
  height: 50px;
  display: grid;
  animation: s4 4s infinite;
}
.loading-screen::before,
.loading-screen::after {    
  content:"";
  grid-area: 1/1;
  border:8px solid;
  border-radius: 50%;
  border-color: var(--primary-color) var(--primary-color) #0000 #0000;
  mix-blend-mode: darken;
  animation: s4 1s infinite linear;
}
.loading-screen::after {
  border-color:#0000 #0000 #E4E4ED #E4E4ED;
  animation-direction: reverse;
}

@keyframes s4{ 
  100%{transform: rotate(1turn)}
}

/* Header Section Styling */

/* Mobile View Reponsive */
.navbar {
  display: flex;
  justify-content: space-between;
  align-items: center;
  position: fixed;
  top: 0;
  width: 100%;
  height: 90px;
  padding: 0.5rem 2rem;
  background-color: #fff;
  z-index: 999;
  box-shadow: 0 0 8px 0 rgba(0, 0, 0, 0.3);
  transition: 300ms ease-in-out;
}

.dark .navbar {
  background-color: var(--bg-dark);
}

.navbar .nav-brand {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.8rem;
  color: var(--font-color);
}

.navbar .nav-brand span {
  background: hsla(217, 100%, 50%, 1);
  background: linear-gradient(
    90deg,
    hsla(217, 100%, 50%, 1) 0%,
    hsla(186, 100%, 69%, 1) 100%
  );
  background: -moz-linear-gradient(
    90deg,
    hsla(217, 100%, 50%, 1) 0%,
    hsla(186, 100%, 69%, 1) 100%
  );
  background: -webkit-linear-gradient(
    90deg,
    hsla(217, 100%, 50%, 1) 0%,
    hsla(186, 100%, 69%, 1) 100%
  );

  color: transparent;

  /* Vendor Prefixes */
  -webkit-background-clip: text;
  -moz-background-clip: text;
  -o-background-clip: text;
  -ms-background-clip: text;
}

.dark .navbar .nav-brand {
  color: #fff;
}

.navbar .nav-brand h1 {
  font-size: 1.4rem;
}

.navbar .nav-brand img {
  width: 3rem;
}

.navbar .dropdown {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 2.5rem;
  flex-direction: column;
  position: fixed;
  left: 0;
  top: 0;
  background-color: #fff;
  padding: 1rem 2rem;
  width: 100vw;
  height: 100vh;
  z-index: 999;
  transform: translateX(-1000px);
  transition: 300ms ease-in-out;
}

.navbar .dropdown.active {
  transform: translateX(0);
}

.dark .navbar .dropdown {
  background-color: var(--bg-dark);
}

.navbar .dropdown .github {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0.5rem;
  font-size: 1rem;
  padding: 0.5rem 1rem;
  background-color: var(--bg-dark);
  color: #fff;
  border-radius: 3rem;
  cursor: pointer;
}

.dark .navbar .dropdown .github {
  background-color: rgb(170, 170, 170);
  color: var(--bg-dark);
}

.navbar .dropdown li a {
  position: relative;
  color: var(--font-color);
  font-size: 1.1rem;
  text-transform: uppercase;
  transition: 300ms ease-in-out;
}

.navbar .dropdown li a:hover {
  color: var(--primary-color);
}

.dark .navbar .dropdown li a:hover {
  background: hsla(217, 100%, 50%, 1);
  background: linear-gradient(
    90deg,
    hsla(217, 100%, 50%, 1) 0%,
    hsla(186, 100%, 69%, 1) 100%
  );
  background: -moz-linear-gradient(
    90deg,
    hsla(217, 100%, 50%, 1) 0%,
    hsla(186, 100%, 69%, 1) 100%
  );
  background: -webkit-linear-gradient(
    90deg,
    hsla(217, 100%, 50%, 1) 0%,
    hsla(186, 100%, 69%, 1) 100%
  );

  color: transparent;

  /* Vendor Prefixes */
  -webkit-background-clip: text;
  -moz-background-clip: text;
  -o-background-clip: text;
  -ms-background-clip: text;
}

.navbar .dropdown li a::before {
  content: "";
  position: absolute;
  width: 3.1rem;
  height: 3px;
  bottom: 5px;
  left: 0;
  opacity: 0;
  background: hsla(217, 100%, 50%, 1);
  background: linear-gradient(
    90deg,
    hsla(217, 100%, 50%, 1) 0%,
    hsla(186, 100%, 69%, 1) 100%
  );
  background: -moz-linear-gradient(
    90deg,
    hsla(217, 100%, 50%, 1) 0%,
    hsla(186, 100%, 69%, 1) 100%
  );
  background: -webkit-linear-gradient(
    90deg,
    hsla(217, 100%, 50%, 1) 0%,
    hsla(186, 100%, 69%, 1) 100%
  );
  transition: 300ms ease-in-out;
}

.navbar .dropdown li a:hover::before {
  bottom: -7px;
  opacity: 1;
}

.navbar .dropdown li:nth-child(2) a::before {
  width: 5rem;
}

.navbar .dropdown li:nth-child(3) a::before {
  width: 3.5rem;
}

.navbar .dropdown li:nth-child(4) a::before {
  width: 4.4rem;
}

.navbar .dropdown li:nth-child(5) a::before {
  width: 7.3rem;
}

.dark .navbar .dropdown li a {
  color: #fff;
}

/* Right Menu Class Styling */

.navbar .right-menu {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1.8rem;
}

.navbar .right-menu .github {
  display: none;
  justify-content: center;
  align-items: center;
  gap: 0.5rem;
  font-size: 1rem;
  padding: 0.5rem 1rem;
  background-color: var(--bg-dark);
  color: #fff;
  border-radius: 3rem;
  cursor: pointer;
}

.dark .navbar .right-menu .github {
  background-color: rgb(170, 170, 170);
  color: var(--bg-dark);
}

/* Hamburger menu and dark toggle */

.navbar .hamburger-menu {
  position: relative;
  z-index: 9999;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 0.5rem;
  cursor: pointer;
}

.navbar .right-menu #dark-toggle {
  font-size: 1.8rem;
  cursor: pointer;
}

.navbar .hamburger-menu span {
  width: 2rem;
  height: 3px;
  background-color: var(--font-color);
  transition: 300ms ease-in-out;
}

.dark .navbar .hamburger-menu span {
  background-color: #fff;
}

/* When not added active class */

.navbar .hamburger-menu span:first-child {
  transform-origin: top right;
}

.navbar .hamburger-menu span:nth-child(2) {
  transform: scale(1);
}

.navbar .hamburger-menu span:last-child {
  transform-origin: bottom right;
}

/* When Class Active Added */

.navbar .hamburger-menu.active span:first-child {
  transform: rotate(-45deg);
}

.navbar .hamburger-menu.active span:nth-child(2) {
  transform: scale(0);
}

.navbar .hamburger-menu.active span:last-child {
  transform: rotate(45deg);
}

/* Tablet View Responsive */

@media (min-width: 768px) {
  .navbar {
    padding: 0.5rem 3.5rem;
    height: 100px;
  }

  .navbar .nav-brand h1 {
    font-size: 1.5rem;
  }

  .navbar .right-menu {
    gap: 2.3rem;
  }
}

/* Desktop View Responsive */

@media (min-width: 1024px) {
  .navbar .nav-brand h1 {
    font-size: 1.7rem;
  }

  .navbar .nav-brand img {
    width: 3.5rem;
  }

  .navbar .hamburger-menu {
    display: none;
  }

  .navbar .dropdown {
    flex-direction: row;
    width: auto;
    height: auto;
    position: static;
    transform: translateX(0);
  }

  .navbar .dropdown .github {
    display: none;
  }

  .navbar .right-menu .github {
    display: flex;
  }

  .navbar .right-menu #dark-toggle {
    transform: translateY(0.2rem);
  }
}

/* Hero section styling */

/* Mobile View Responsive */
#hero {
  margin-top: 10rem;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column-reverse;
  padding: 0.5rem 2rem;
  gap: 2rem;
}

#hero img {
  width: 350px;
  position: relative;
  z-index: 88;
}

#hero .hero-desc {
  margin: 2rem 0;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  flex-direction: column;
}

#hero .hero-desc .core-desc h3 {
  font-size: 0.8rem;
  color: var(--primary-color);
}

#hero .hero-desc .core-desc h1 {
  font-family: "Volkhov", serif;
  font-size: 2.7rem;
  line-height: 2.9rem;
  margin: 0.8rem 0;
}

#hero .hero-desc .core-desc p {
  font-size: 0.8rem;
  margin-bottom: 1.5rem;
}

.btn {
  background-color: var(--primary-color);
  padding: 0.8rem 1.5rem;
  color: #fff;
  border-radius: 0.8rem;
  transition: 300ms ease-in-out;
}

.btn:hover {
  background-color: var(--hover-color);
}

/* Tablet View Responsive */
@media (min-width: 768px) {
  #hero {
    padding: 0.5rem 3.5rem;
  }

  #hero img {
    width: 550px;
  }

  #hero .hero-desc .core-desc h3 {
    font-size: 1.5rem;
  }

  #hero .hero-desc .core-desc h1 {
    font-size: 4.9rem;
    line-height: 5.1rem;
  }

  #hero .hero-desc .core-desc p {
    font-size: 1.15rem;
  }
}

/* Desktop View Responsive */
@media (min-width: 1024px) {
  #hero {
    flex-direction: row;
    justify-content: space-between;
  }

  #hero img {
    width: 600px;
  }

  #hero .hero-desc .core-desc h3 {
    font-size: 1.5rem;
  }

  #hero .hero-desc .core-desc h1 {
    font-size: 5.7rem;
    line-height: 6rem;
  }

  #hero .hero-desc .core-desc p {
    font-size: 1.2rem;
    margin-bottom: 1.5rem;
  }

  #hero .hero-desc .btn-start {
    padding: 1rem 1.5rem;
  }
}

/* Services section styling */

/* Mobile View Responsive */
#services {
  margin-top: 5rem;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  padding: 0.5rem 2rem;
}

#services .title-service {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
}

#services .title-service h1 {
  color: var(--primary-color);
  font-size: 1.6rem;
  font-family: "Volkhov", serif;
}

#services .title-service p {
  font-size: 1.1rem;
  color: var(--font-color);
}

.dark #services .title-service p {
  color: #fff;
}

#services .box-grid {
  display: grid;
  place-items: center;
  grid-template-columns: repeat(1, 1fr);
  gap: 2rem;
  margin-top: 2.5rem;
}

.box-grid .field-service {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  text-align: center;
  gap: 0.5rem;
  background-color: #fff;
  border-radius: 1rem;
  padding: 1rem;
  box-shadow: 0 0 6px 0 rgba(0, 0, 0, 0.3);
  transition: 300ms ease-in-out;
}

.box-grid .field-service:hover {
  transform: translateY(-5px);
  cursor: default;
}

.dark .box-grid .field-service {
  background-color: #181818;
  color: #fff;
  box-shadow: 0 0 6px 0 rgba(255, 255, 255, 0.5);
}

.box-grid .field-service img {
  width: 100px;
}

.box-grid .field-service .title {
  font-weight: 600;
  font-size: 1.2rem;
}

.box-grid .field-service p {
  font-size: 0.9rem;
}

/* Tablet View Responsive */
@media (min-width: 768px) {
  #services {
    padding: 0.5rem 3.5rem;
    margin-top: 6rem;
  }

  #services .title-service h1 {
    font-size: 2rem;
  }

  #services .title-service p {
    font-size: 1.3rem;
  }

  #services .box-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 3rem;
    margin-top: 3rem;
  }
}

/* Desktop View Responsive */
@media (min-width: 1024px) {
  #services {
    margin-top: 8rem;
  }

  #services .title-service h1 {
    font-size: 2.5rem;
  }

  #services .box-grid {
    grid-template-columns: repeat(3, 1fr);
    gap: 3.5rem;
  }

  .box-grid .field-service .title {
    font-size: 1.4rem;
  }

  .box-grid .field-service p {
    font-size: 1rem;
  }
}

/* Destinations section styling */

/* Mobile View Responsive */
#destinations {
  margin-top: 6rem;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  gap: 1rem;
  padding: 0.5rem 2rem;
}

#destinations .title-dest {
  text-align: center;
}

#destinations .title-dest h1 {
  color: var(--primary-color);
  font-size: 1.8rem;
  font-family: "Volkhov", serif;
}

#destinations .container-dest {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  justify-content: space-between;
  gap: 3rem;
  margin-top: 1.5rem;
}

#destinations .container-dest .field-dest {
  border-radius: 1.3rem 1.3rem 0.7rem 0.7rem;
  background-color: #fff;
  overflow: hidden;
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  flex-direction: column;
  padding: 0 0 1.5rem;
  box-shadow: 0 6px 6px 0 rgba(0, 0, 0, 0.1);
  background-color: #fff;
  transition: 300ms ease-in-out;
}

#destinations .container-dest .field-dest:hover {
  transform: scale(1.03);
  cursor: default;
}

.dark #destinations .container-dest .field-dest {
  box-shadow: 0 6px 6px 0 rgba(255, 255, 255, 0.1);
  background-color: #181818;
}

#destinations .container-dest .field-dest img {
  width: 300px;
  height: 300px;
}

#destinations .container-dest .field-dest .description {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  flex-direction: column;
  gap: 1rem;
  padding: 1.1rem 1rem 0;
  position: relative;
}

#destinations .container-dest .field-dest .description .top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 260px;
}

#destinations .container-dest .field-dest .description .bot {
  display: flex;
  align-items: center;
  justify-content: center;
  align-self: flex-start;
  gap: 0.5rem;
}

#destinations .container-dest .field-dest .description .bot i {
  font-size: 1.5rem;
}

/* Tablet View Responsive */
@media (min-width: 768px) {
  #destinations {
    margin-top: 8rem;
    padding: 0.5rem 3.5rem;
  }

  #destinations .title-dest h1 {
    font-size: 2rem;
  }

  #destinations .title-dest p {
    font-size: 1.3rem;
  }

  #destinations .container-dest {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* Desktop View Responsive */
@media (min-width: 1024px) {
  #destinations .title-dest h1 {
    font-size: 2.5rem;
  }

  #destinations .container-dest {
    grid-template-columns: repeat(3, 1fr);
  }

  #destinations .container-dest {
    gap: 6rem;
  }

  #destinations .container-dest .field-dest img {
    width: 350px;
    height: 350px;
  }

  #destinations .container-dest .field-dest .description {
    padding: 1rem 1.5rem 0;
  }

  #destinations .container-dest .field-dest .description p {
    font-size: 1.2rem;
  }

  #destinations .container-dest .field-dest .description .top {
    width: 300px;
  }
}

/* About section styling */

/* Mobile View Responsive */
#about {
  margin-top: 6rem;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  gap: 2rem;
  padding: 0.5rem 2rem;
}

#about img {
  width: 300px;
}

#about .content-about {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  flex-direction: column;
  gap: 0.7rem;
  margin-top: 1rem;
}

#about .content-about .title-content h3 {
  font-weight: 600;
  font-size: 1rem;
  transform: translateY(2px);
}

#about .content-about .title-content h1 {
  font-weight: 700;
}

#about .content-about .title-content h1 span {
  color: var(--primary-color);
}

#about .content-about p {
  font-size: 0.9rem;
  margin-bottom: 1rem;
}

/* Tablet View Responsive */
@media (min-width: 768px) {
  #about {
    margin-top: 8rem;
    padding: 0.5rem 3.5rem;
  }

  #about img {
    width: 500px;
  }

  #about .content-about .title-content h3 {
    font-size: 1.3rem;
    transform: translateY(5px);
  }

  #about .content-about .title-content h1 {
    font-size: 2.5rem;
  }

  #about .content-about p {
    font-size: 1rem;
  }
}

/* Desktop View Responsive */
@media (min-width: 1024px) {
  #about {
    margin-top: 10rem;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: row;
    gap: 2rem;
  }

  #about img {
    width: 1000px;
  }

  #about .content-about .title-content h3 {
    font-size: 1.5rem;
  }

  #about .content-about .title-content h1 {
    font-size: 2.8rem;
  }

  #about .content-about p {
    font-size: 1.2rem;
  }
}

/* Pricing section styling */

/* Mobile View Responsive */
#pricing {
  margin-top: 6rem;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  gap: 2rem;
  padding: 0.5rem 2rem;
}

#pricing .title-pricing {
  text-align: center;
}

#pricing .title-pricing h1 {
  color: var(--primary-color);
  font-size: 1.6rem;
  font-family: "Volkhov", serif;
}

.plan-container {
  display: grid;
  place-items: center;
  grid-template-columns: repeat(1, 1fr);
  gap: 2rem;
}

.plan-container .pricing-box {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  flex-direction: column;
  gap: 1rem;
  padding: 1.5rem;
  border-radius: 0.5rem;
  background-color: #fff;
  box-shadow: 0 0 6px 0 rgba(0, 0, 0, 0.3);
  transition: 300ms ease-in-out;
}

.plan-container .pricing-box:hover {
  cursor: default;
}

.plan-container .pricing-box:hover .head-price i {
  transform: scale(1.2);
}

.dark .plan-container .pricing-box {
  background-color: #000;
  box-shadow: 0 0 6px 0 rgba(255, 255, 255, 0.3);
}

.plan-container .pricing-box i {
  color: var(--primary-color);
  font-size: 2.5rem;
  transition: 300ms ease-in-out;
}

.plan-container .pricing-box .head-price {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 1rem;
  margin-bottom: 1rem;
}

.plan-container .pricing-box .head-price .desc h2 {
  color: #727171;
}

.plan-container .pricing-box .head-price .desc h2 span {
  color: #a7a7a7;
}

.dark .plan-container .pricing-box .head-price .desc h2 {
  color: #bebebe;
}

.dark .plan-container .pricing-box .head-price .desc h2 span {
  color: #969696;
}

.plan-container .pricing-box .benefit {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  flex-direction: column;
  gap: 0.5rem;
}

.plan-container .pricing-box .benefit .bft {
  border-left: 5px solid;
  padding: 0.5rem 1rem;
  border-color: var(--primary-color);
}

.plan-container .pricing-box .btn-plan {
  padding: 1rem 2rem;
  border-radius: 2rem;
  color: #fff;
  font-weight: 600;
  background-color: var(--primary-color);
  transition: 300ms ease-in-out;
  align-self: center;
  margin-top: 1.2rem;
  cursor: pointer;
}

.plan-container .pricing-box .btn-plan:hover {
  background-color: var(--hover-color);
}

/* Tablet View Responsive */
@media (min-width: 768px) {
  #pricing {
    margin-top: 8rem;
    padding: 0.5rem 3.5rem;
  }

  #pricing .title-pricing h1 {
    font-size: 2rem;
  }

  #pricing .title-pricing p {
    font-size: 1.3rem;
  }

  .plan-container {
    gap: 3rem;
    grid-template-columns: repeat(2, 1fr);
  }
}

/* Desktop View Responsive */
@media (min-width: 1024px) {
  #pricing {
    margin-top: 10rem;
  }

  #pricing .title-pricing h1 {
    font-size: 2.5rem;
  }

  .plan-container {
    gap: 3.5rem;
    grid-template-columns: repeat(3, 1fr);
  }

  .plan-container {
    gap: 6rem;
  }
}

/* Testimonials section styling */

/* Mobile View Responsive */
#testimonials {
  margin-top: 6rem;
  padding: 0.5rem 2rem;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  gap: 1rem;
}

#testimonials .title-testimonials {
  text-align: center;
}

#testimonials .title-testimonials h1 {
  color: var(--primary-color);
  font-size: 1.6rem;
  font-family: "Volkhov", serif;
}

.testi-container {
  display: grid;
  grid-template-columns: repeat(1, 1fr);
  gap: 2rem;
  margin-top: 1rem;
}

.card-testimoni {
  box-shadow: 0 0 6px 0 rgba(0, 0, 0, 0.3);
  padding: 1rem;
  transition: 300ms ease-in-out;
}

.dark .card-testimoni {
  background-color: #000;
  box-shadow: 0 0 6px 0 rgba(0, 0, 0, 0.3);
  padding: 1rem;
}

.card-testimoni:hover {
  background-color: var(--primary-color);
  cursor: default;
}

.card-testimoni:hover i,
.card-testimoni:hover .desc,
.card-testimoni:hover h1 {
  color: #fff !important;
}

.dark .card-testimoni:hover i,
.dark .card-testimoni:hover .desc,
.dark .card-testimoni:hover h1 {
  color: var(--bg-dark) !important;
}

.dark .card-testimoni:hover img,
.card-testimoni:hover img {
  border-color: var(--primary-color);
}

.card-testimoni:hover img {
  box-shadow: 0 0 0 4px #fff;
}

.dark .card-testimoni:hover img {
  box-shadow: 0 0 0 4px var(--bg-dark);
}

.card-testimoni img {
  width: 60px;
  height: 60px;
  border-radius: 100%;
  border: 3px solid #fff;
  box-shadow: 0 0 0 4px var(--primary-color);
}

.dark .card-testimoni img {
  border-color: #000;
}

.card-testimoni .desc {
  font-size: 0.9rem;
}

.testi-container .card-testimoni > i {
  font-size: 1.5rem;
  color: var(--primary-color);
  font-weight: 300;
}

.card-testimoni .bot-desc {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 1rem;
}

.card-testimoni .bot-desc .name-people h1 {
  font-size: 1.2rem;
}

.card-testimoni .bot-desc .name-people h1:nth-child(2) {
  color: var(--primary-color);
  font-size: 1.1rem;
}

.card-testimoni .bot-desc .name-people i {
  color: var(--primary-color);
}

.card-testimoni .bot-desc .star-box {
  margin-top: 0.5rem;
}

/* Tablet View Responsive */
@media (min-width: 768px) {
  #testimonials {
    margin-top: 8rem;
    padding: 0.5rem 3.5rem;
  }

  #testimonials .title-testimonials h1 {
    font-size: 2rem;
  }

  #testimonials .title-testimonials p {
    font-size: 1.3rem;
  }

  .testi-container {
    grid-template-columns: repeat(2, 1fr);
    margin-top: 2rem;
  }

  .card-testimoni .desc {
    font-size: 1rem;
  }

  .testi-container .card-testimoni > i {
    font-size: 2rem;
  }
}

/* Desktop View Responsive */
@media (min-width: 1024px) {
  #testimonials {
    margin-top: 10rem;
  }

  #testimonials .title-testimonials h1 {
    font-size: 2.5rem;
  }

  .testi-container {
    grid-template-columns: repeat(3, 1fr);
  }

  .card-testimoni .desc {
    font-size: 1.1rem;
  }

  .card-testimoni img {
    border: 4px solid #fff;
  }

  .card-testimoni .bot-desc img {
    width: 80px;
    height: 80px;
  }

  .card-testimoni .bot-desc .name-people h1 {
    font-size: 1.4rem;
  }

  .card-testimoni .bot-desc .name-people h1:nth-child(2) {
    font-size: 1.3rem;
  }
}

/* Contact section styling */

/* Mobile View Responsive */
#contact {
  margin: 6rem 0;
  padding: 0.5rem 2rem;
}

#contact article {
  text-align: center;
}

#contact article h1 {
  font-size: 1rem;
  font-weight: 400;
}

#contact article h3 {
  font-size: 1.6rem;
  font-weight: 600;
  color: var(--primary-color);
  font-family: "Volkhov", serif;
}

#contact .contact-container {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  gap: 2rem;
}

#contact .contact-container img {
  width: 300px;
}

#contact aside {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 1.5rem;
}

#contact aside form {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  background-color: #fff;
  box-shadow: 0.5px 0.5px 6px 0.5px rgba(0, 0, 0, 0.3);
  padding: 1rem 1.5rem;
  border-radius: 0.7rem;
  transition: 300ms ease-in-out;
}

.dark #contact aside form {
  box-shadow: 0.5px 0.5px 6px 0.5px rgba(255, 255, 255, 0.3);
  background-color: #141414;
}

#form-contact .input-field {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  gap: 0.5rem;
  flex-direction: column;
  margin-bottom: 1rem;
  width: 100%;
}

#form-contact .input-field label {
  font-size: 1rem;
}

#form-contact .input-field input {
  border-radius: 0.5rem;
  border: 1px solid #d1d1d1;
  background-color: #fff;
  padding: 0.8rem 1.5rem 0.8rem 1rem;
  width: 100%;
  transition: 300ms ease-in-out;
}

.dark #form-contact .input-field input {
  background-color: #000;
  color: #fff;
}

#form-contact .input-field textarea {
  border-radius: 0.5rem;
  border: 1px solid #d1d1d1;
  background-color: #fff;
  padding: 0.8rem 1.5rem 0.8rem 1rem;
  width: 100%;
  font-family: "Poppins", sans-serif;
  transition: 300ms ease-in-out;
}

.dark #form-contact .input-field textarea {
  background-color: #000;
  color: #fff;
}

#form-contact .btn-submit {
  padding: 0.5rem 1.5rem;
  border-radius: 0.5rem;
  background-color: var(--primary-color);
  color: #fff;
  cursor: pointer;
  outline: none;
  border: none;
  align-self: flex-end;
}

#message {
  resize: none;
}

/* Tablet View Responsive */
@media (min-width: 768px) {
  #contact {
    margin: 8rem 0;
    padding: 0.5rem 3rem;
  }

  #contact .contact-container img {
    width: 500px;
  }

  #contact article h1 {
    font-size: 1.3rem;
  }

  #contact article h3 {
    font-size: 2rem;
  }

  #contact aside {
    margin-top: 2rem;
  }

  #contact aside form {
    width: 400px;
  }
}

/* Desktop View Responsive */
@media (min-width: 1024px) {
  #contact {
    margin: 10rem 0;
  }

  #contact .contact-container {
    gap: 8rem;
  }

  #contact .contact-container img {
    width: 600px;
  }

  #contact .contact-container {
    flex-direction: row-reverse;
  }

  #form-contact .btn-submit {
    padding: 0.7rem 1.5rem;
  }
  #contact article h3 {
    font-size: 2.5rem;
  }

  #contact aside {
    margin-top: 2.5rem;
  }

  #contact aside form {
    width: 600px;
  }
}

/* Footer section styling */
footer {
  position: relative;
  background: #140b5c;
  width: 100%;
  bottom: 0;
  left: 0;
}
footer::before {
  content: "";
  position: absolute;
  left: 0;
  top: 100px;
  height: 1px;
  width: 100%;
  background: #afafb6;
}
footer .content {
  max-width: 1250px;
  margin: auto;
  padding: 30px 40px 40px 40px;
}
footer .content .top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 50px;
}
.content .top .logo-details {
  color: #fff;
  font-size: 30px;
}
.content .top .logo-details h1 {
  font-size: 2rem;
}
.content .top .logo-details h1 span {
  background: hsla(217, 100%, 50%, 1);
  background: linear-gradient(
    90deg,
    hsla(217, 100%, 50%, 1) 0%,
    hsla(186, 100%, 69%, 1) 100%
  );
  background: -moz-linear-gradient(
    90deg,
    hsla(217, 100%, 50%, 1) 0%,
    hsla(186, 100%, 69%, 1) 100%
  );
  background: -webkit-linear-gradient(
    90deg,
    hsla(217, 100%, 50%, 1) 0%,
    hsla(186, 100%, 69%, 1) 100%
  );

  color: transparent;

  /* Vendor Prefixes */
  -webkit-background-clip: text;
  -moz-background-clip: text;
  -o-background-clip: text;
  -ms-background-clip: text;
}
.content .top .media-icons {
  display: flex;
}
.content .top .media-icons a {
  height: 40px;
  width: 40px;
  margin: 0 8px;
  border-radius: 50%;
  text-align: center;
  color: #fff;
  font-size: 1.5rem;
  text-decoration: none;
  transition: all 0.4s ease;
  display: flex;
  justify-content: center;
  align-items: center;
}
.top .media-icons a:nth-child(1) {
  background: #4267b2;
}
.top .media-icons a:nth-child(1):hover {
  color: #4267b2;
  background: #fff;
}
.top .media-icons a:nth-child(2) {
  background: #1da1f2;
}
.top .media-icons a:nth-child(2):hover {
  color: #1da1f2;
  background: #fff;
}
.top .media-icons a:nth-child(3) {
  background: #e1306c;
}
.top .media-icons a:nth-child(3):hover {
  color: #e1306c;
  background: #fff;
}
.top .media-icons a:nth-child(4) {
  background: #0077b5;
}
.top .media-icons a:nth-child(4):hover {
  color: #0077b5;
  background: #fff;
}
.top .media-icons a:nth-child(5) {
  background: #ff0000;
}
.top .media-icons a:nth-child(5):hover {
  color: #ff0000;
  background: #fff;
}
footer .content .link-boxes {
  width: 100%;
  display: flex;
  justify-content: space-between;
}
footer .content .link-boxes .box {
  width: calc(100% / 5 - 10px);
}
.content .link-boxes .box .link-name {
  color: #fff;
  font-size: 18px;
  font-weight: 400;
  margin-bottom: 10px;
  position: relative;
}
.link-boxes .box .link-name::before {
  content: "";
  position: absolute;
  left: 0;
  bottom: -2px;
  height: 2px;
  width: 35px;
  background: #fff;
}
.content .link-boxes .box li {
  margin: 6px 0;
  list-style: none;
}
.content .link-boxes .box li a {
  color: #fff;
  font-size: 14px;
  font-weight: 400;
  text-decoration: none;
  opacity: 0.8;
  transition: all 0.4s ease;
}
.content .link-boxes .box li a:hover {
  opacity: 1;
  text-decoration: underline;
}
.content .link-boxes .input-box {
  margin-right: 55px;
}
.link-boxes .input-box input {
  height: 40px;
  width: calc(100% + 55px);
  outline: none;
  border: 2px solid #afafb6;
  background: #140b5c;
  border-radius: 4px;
  padding: 0 15px;
  font-size: 15px;
  color: #fff;
  margin-top: 5px;
}
.link-boxes .input-box input::placeholder {
  color: #afafb6;
  font-size: 16px;
}
.link-boxes .input-box input[type="button"] {
  background: #fff;
  color: #140b5c;
  border: none;
  font-size: 18px;
  font-weight: 500;
  margin: 4px 0;
  opacity: 0.8;
  cursor: pointer;
  transition: all 0.4s ease;
}
.input-box input[type="button"]:hover {
  opacity: 1;
}
footer .bottom-details {
  width: 100%;
  background: #0f0844;
  display: flex;
  justify-content: center;
  align-items: center;
}
footer .bottom-details .bottom-text {
  max-width: 1250px;
  margin: auto;
  padding: 20px 40px;
  display: flex;
  justify-content: space-between;
}
.bottom-details .bottom-text span,
.bottom-details .bottom-text a {
  font-size: 14px;
  font-weight: 300;
  color: #fff;
  opacity: 0.8;
  text-decoration: none;
}
.bottom-details .bottom-text a:hover {
  opacity: 1;
  text-decoration: underline;
}
.bottom-details .bottom-text a {
  margin-right: 10px;
}
@media (max-width: 900px) {
  footer .content .link-boxes {
    flex-wrap: wrap;
  }
  footer .content .link-boxes .input-box {
    width: 40%;
    margin-top: 10px;
  }
}

/* Tablet View Responsive */
@media (max-width: 700px) {
  footer {
    position: relative;
  }
  .content .top .logo-details {
    font-size: 26px;
  }
  .content .top .media-icons a {
    height: 35px;
    width: 35px;
    font-size: 1.3rem;
  }
  footer .content .link-boxes .box {
    width: calc(100% / 3 - 10px);
  }
  footer .content .link-boxes .input-box {
    width: 60%;
  }
  .bottom-details .bottom-text span,
  .bottom-details .bottom-text a {
    font-size: 12px;
  }
}

/* Mobile View Responsive */
@media (max-width: 520px) {
  footer::before {
    top: 145px;
  }
  footer .content .top {
    flex-direction: column;
  }
  .content .top .media-icons {
    margin-top: 16px;
  }
  footer .content .link-boxes .box {
    width: calc(100% / 2 - 10px);
  }
  footer .content .link-boxes .input-box {
    width: 100%;
  }
}
