:root {
  --mainColor: #0033ff;
  --PoppinsFont: "Poppins", sans-serif;
}

html {
  scroll-behavior: smooth;
}
body {
  font-family: var(--PoppinsFont);
}

a,
a:hover {
  text-decoration: none;
}

.main_color {
  color: var(--mainColor) !important;
}

.lines-1,
.lines-2,
.lines-3,
.lines-4,
.lines-5,
.lines-6,
.lines-7,
.lines-8,
.lines-9,
.lines-10,
.lines-11,
.lines-12,
.lines-13,
.lines-14,
.lines-15 {
  display: -webkit-box !important;
  overflow: hidden;
  -webkit-box-orient: vertical;
  box-orient: vertical;
  text-overflow: unset !important;
}
.lines-1 {
  -webkit-line-clamp: 1;
  line-clamp: 1;
}
.lines-2 {
  -webkit-line-clamp: 2;
  line-clamp: 2;
}
.lines-3 {
  -webkit-line-clamp: 3;
  line-clamp: 3;
}
.lines-4 {
  -webkit-line-clamp: 4;
  line-clamp: 4;
}
.lines-5 {
  -webkit-line-clamp: 5;
  line-clamp: 5;
}
.lines-6 {
  -webkit-line-clamp: 6;
  line-clamp: 6;
}
.lines-7 {
  -webkit-line-clamp: 7;
  line-clamp: 7;
}
.lines-8 {
  -webkit-line-clamp: 8;
  line-clamp: 8;
}
.lines-9 {
  -webkit-line-clamp: 9;
  line-clamp: 9;
}
.lines-10 {
  -webkit-line-clamp: 10;
  line-clamp: 10;
}
.lines-11 {
  -webkit-line-clamp: 11;
  line-clamp: 11;
}
.lines-12 {
  -webkit-line-clamp: 12;
  line-clamp: 12;
}
.lines-13 {
  -webkit-line-clamp: 13;
  line-clamp: 13;
}
.lines-14 {
  -webkit-line-clamp: 14;
  line-clamp: 14;
}
.lines-15 {
  -webkit-line-clamp: 15;
  line-clamp: 15;
}

.scroll-progress,
body.layout-mobile .scroll-progress {
  display: none;
}
.scroll-progress .sp-left,
.scroll-progress .sp-right {
  position: fixed;
  width: 1px;
  top: 0;
  bottom: 4.5rem;
  z-index: 100;
}
.scroll-progress .sp-left {
  left: 4.5rem;
}
.scroll-progress .sp-left .sp-inner.progress {
  bottom: auto;
}
.scroll-progress .sp-right {
  right: 4.5rem;
}
.scroll-progress .sp-right .sp-inner.progress {
  top: auto;
}
.scroll-progress .sp-inner {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  background: #fff;
  opacity: 0.4;
  transition: background 0.7s cubic-bezier(0.54, 0.18, 0.36, 0.81),
    height 0.7s cubic-bezier(0.54, 0.18, 0.36, 0.81),
    opacity 0.7s cubic-bezier(0.54, 0.18, 0.36, 0.81);
}
.scroll-progress .sp-inner.progress {
  background: #fff;
  opacity: 0.7;
  height: 0;
}
@media (min-width: 1400px) {
  .scroll-progress {
    display: block;
  }
}

/* THIS CODE NOT MY OWN */
a.arrow-up {
  position: fixed;
  bottom: 4.5rem;
  right: -4.5rem;
  width: 4.5rem;
  z-index: 1000;
  color: #fff;
  text-align: center;
  line-height: 1;
  transition: color 0.7s cubic-bezier(0.54, 0.18, 0.36, 0.81),
    right 0.7s cubic-bezier(0.54, 0.18, 0.36, 0.81);
}
a.arrow-up:focus,
a.arrow-up:hover {
  color: #fff;
}
a.arrow-up span {
  display: block;
  white-space: nowrap;
  font-variant-ligatures: common-ligatures;
  font-size: 12px;
  font-weight: 400;
  letter-spacing: 0;
  transform: translate(0, -47px) rotate(-90deg);
}
a.arrow-up.is-visible {
  right: 0;
}

.fly_call {
  position: fixed;
  bottom: 1.5rem;
  left: 1.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  background-color: #000;
  color: #fff;
  border: 1px solid #fff;
  border-radius: 50%;
  z-index: 9999;
  padding: 0.6rem;
  z-index: 1;
}
.fly_call:after {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  top: 0;
  content: "";
  background-color: transparent;
  border-radius: 50%;
  border: 1px solid rgba(255, 255, 255, 0.5);
  opacity: 0.5;
  animation: ring-circle-anim 1.2s infinite ease-in-out;
  transition: all 0.5s;
  transform-origin: 50% 50%;
  z-index: -1;
}
.fly_call:before {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  top: 0;
  content: "";
  background-color: rgba(255, 255, 255, 0.5);
  border-radius: 50%;
  border: none;
  animation: ring-circle-fill-anim 2.3s infinite ease-in-out;
  transition: all 0.5s;
  transform-origin: 50% 50%;
  z-index: -1;
}
.fly_call .osc-rotation {
  box-sizing: border-box;
  animation: oscillate-rotation 1s infinite ease-in-out;
  transform-origin: 50% 50%;
}
@keyframes ring-circle-anim {
  0% {
    transform: rotate(0) scale(1.1) skew(0deg);
    opacity: 0;
  }
  30% {
    transform: rotate(0) scale(1.5) skew(0deg);
    opacity: 0.5;
  }
  100% {
    transform: rotate(0) scale(1.7) skew(0deg);
    opacity: 0.1;
  }
}
@keyframes ring-circle-fill-anim {
  0% {
    transform: rotate(0) scale(1) skew(0deg);
    opacity: 0.2;
  }
  50% {
    transform: rotate(0) scale(1.4) skew(0deg);
    opacity: 0.2;
  }
  100% {
    transform: rotate(0) scale(1.1) skew(0deg);
    opacity: 0.2;
  }
}
@keyframes oscillate-rotation {
  0% {
    transform: rotate(0) scale(1) skew(0deg);
  }
  10% {
    transform: rotate(-25deg) scale(1) skew(0deg);
  }
  20% {
    transform: rotate(25deg) scale(1) skew(0deg);
  }
  30% {
    transform: rotate(-25deg) scale(1) skew(0deg);
  }
  40% {
    transform: rotate(25deg) scale(1) skew(0deg);
  }
  50% {
    transform: rotate(0) scale(1) skew(0deg);
  }
  100% {
    transform: rotate(0) scale(1) skew(0deg);
  }
}
/* $ => Header */
header {
  transition: all 0.3s ease-in-out;
}
.header_logo img {
  max-width: 280px;
  transition: all 0.3s linear;
}
nav a {
  color: #fff;
  font-size: 18px;
  transition: all 0.3s linear;
}
nav a::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: var(--mainColor);
  transition: all 0.5s ease-in-out;
  opacity: 0;
}
nav a:hover::after {
  opacity: 1;
}

*::selection,
a::selection {
  background-color: transparent !important;
}

.toggle-menu {
  position: relative;
  height: 16px; /* Reduced height */
  width: 22px; /* Reduced width */
  cursor: pointer;
  display: none;
}

.toggle-menu .line-top,
.toggle-menu .line-middle,
.toggle-menu .line-bottom {
  position: absolute;
  display: block;
  height: 2px; /* Adjusted height */
  width: 22px; /* Adjusted width */
  border-radius: 2px;
  background: #fff;
}

.toggle-menu .line-top {
  top: 0;
  transform-origin: 25px 1px; /* Adjusted transform origin */
}

.toggle-menu .line-middle {
  top: 7px; /* Adjusted position */
  transition: opacity 200ms linear;
}

.toggle-menu .line-bottom {
  bottom: 0;
  transform-origin: 25px 1px; /* Adjusted transform origin */
}

.toggle-menu.is-open .line-top {
  -webkit-animation: line-top-out 600ms linear normal;
  animation: line-top-out 600ms linear normal;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.toggle-menu.is-open .line-middle {
  opacity: 0;
}

.toggle-menu.is-open .line-bottom {
  -webkit-animation: line-bot-out 600ms linear normal;
  animation: line-bot-out 600ms linear normal;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.toggle-menu.is-closed .line-top {
  -webkit-animation: line-top-in 600ms linear normal;
  animation: line-top-in 600ms linear normal;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

.toggle-menu.is-closed .line-middle {
  transition-delay: 200ms;
}

.toggle-menu.is-closed .line-bottom {
  -webkit-animation: line-bot-in 600ms linear normal;
  animation: line-bot-in 600ms linear normal;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
}

@-webkit-keyframes line-top-in {
  0% {
    left: -5px;
    bottom: 0;
    transform: rotate(-45deg);
  }
  20% {
    left: -5px;
    bottom: 0;
    transform: rotate(-60deg);
  }
  80% {
    left: 0;
    bottom: 0;
    transform: rotate(15deg);
  }
  100% {
    left: 0;
    bottom: 1px;
    transform: rotate(0deg);
  }
}
@keyframes line-top-in {
  0% {
    left: -5px;
    bottom: 0;
    transform: rotate(-45deg);
  }
  20% {
    left: -5px;
    bottom: 0;
    transform: rotate(-60deg);
  }
  80% {
    left: 0;
    bottom: 0;
    transform: rotate(15deg);
  }
  100% {
    left: 0;
    bottom: 1px;
    transform: rotate(0deg);
  }
}
@-webkit-keyframes line-top-out {
  0% {
    left: 0;
    top: 0;
    transform: rotate(0deg);
  }
  20% {
    left: 0;
    top: 0;
    transform: rotate(15deg);
  }
  80% {
    left: -5px;
    top: 0;
    transform: rotate(-60deg);
  }
  100% {
    left: -5px;
    top: -5px;
    transform: rotate(-45deg);
  }
}
@keyframes line-top-out {
  0% {
    left: 0;
    top: 0;
    transform: rotate(0deg);
  }
  20% {
    left: 0;
    top: 0;
    transform: rotate(15deg);
  }
  80% {
    left: -5px;
    top: 0;
    transform: rotate(-60deg);
  }
  100% {
    left: -5px;
    top: -5px;
    transform: rotate(-45deg);
  }
}
@-webkit-keyframes line-bot-in {
  0% {
    left: -5px;
    transform: rotate(45deg);
  }
  20% {
    left: -5px;
    bottom: 0;
    transform: rotate(60deg);
  }
  80% {
    left: 0;
    bottom: 0;
    transform: rotate(-15deg);
  }
  100% {
    left: 0;
    transform: rotate(0deg);
  }
}
@keyframes line-bot-in {
  0% {
    left: -5px;
    transform: rotate(45deg);
  }
  20% {
    left: -5px;
    bottom: 0;
    transform: rotate(60deg);
  }
  80% {
    left: 0;
    bottom: 0;
    transform: rotate(-15deg);
  }
  100% {
    left: 0;
    transform: rotate(0deg);
  }
}
@-webkit-keyframes line-bot-out {
  0% {
    left: 0;
    transform: rotate(0deg);
  }
  20% {
    left: 0;
    transform: rotate(-15deg);
  }
  80% {
    left: -5px;
    transform: rotate(60deg);
  }
  100% {
    left: -5px;
    transform: rotate(45deg);
  }
}
@keyframes line-bot-out {
  0% {
    left: 0;
    transform: rotate(0deg);
  }
  20% {
    left: 0;
    transform: rotate(-15deg);
  }
  80% {
    left: -5px;
    transform: rotate(60deg);
  }
  100% {
    left: -5px;
    transform: rotate(45deg);
  }
}

.btn_primary {
  display: inline-block;
  position: relative;
  z-index: 1;
  width: 130px;
  height: 45px;
  border-radius: 25px;
  text-align: center;
  color: #fff;
}
.btn_primary span {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  inset: 50%;
  width: 100%;
  height: 100%;
  transform: translate(-50%, -50%);
  z-index: 1;
  transition: all 0.3s ease;
}
.btn_primary::before {
  content: "";
  position: absolute;
  inset: 50%;
  transform: translate(-50%, -50%);
  width: 100%;
  height: 100%;
  border: 2px solid var(--mainColor);
  border-radius: 25px;
  transition: all 0.3s ease;
  z-index: -1;
}
.btn_primary:hover::before {
  width: 91%;
  height: 91%;
  border: 0;
  background-color: var(--mainColor);
}

.btn_primary.c_1::before {
  border: 1px solid #ca0814;
}
.btn_primary.c_1:hover::before {
  background-color: #ca0814;
}
.btn_primary.c_2::before {
  border: 1px solid #662d8f;
}
.btn_primary.c_2:hover::before {
  background-color: #662d8f;
}
.btn_primary.c_3::before {
  border: 1px solid #39b34a;
}
.btn_primary.c_3:hover::before {
  background-color: #39b34a;
}
.btn_primary.c_4::before {
  border: 1px solid #fc4622;
}
.btn_primary.c_4:hover::before {
  background-color: #fc4622;
}

.btn_primary2:hover span {
  transform: translate(-50%, -50%) scale(1.1);
}

.h-60 {
  height: 60% !important;
}

header.header-hidden {
  position: fixed !important;
  top: -100px !important;
  transition: all 0.3s ease-in-out;
}
header.header-sticky {
  transition: all 0.3s ease-in-out;
  position: fixed !important;
  background-color: #000;
  padding-top: 0.8rem !important;
  padding-bottom: 0.8rem !important;
}
header.header-sticky .header_logo img {
  max-width: 200px;
}
header.header-sticky nav a {
  font-size: 16px;
}
header.header-sticky .btn_primary {
  font-size: 14px;
}
/* # => Header */

.section-full {
  position: relative;
  /* min-height: 911px; */
}
.section-full.fp-section.fp-table {
  /* height: 100vh !important; */
}
.portfolio_section,
.fp-tableCell,
.fp-section.fp-table,
.fp-slide.fp-table {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 100%;
  height: 100%;
  table-layout: initial;
}

.section-full.section_clients {
  display: flex !important;
  align-items: flex-end !important;
  justify-content: flex-end !important;
}
.section-full.section_clients .fp-tableCell,
.section-full.section_clients .fp-section.fp-table,
.section-full.section_clients .fp-slide.fp-table {
  align-items: flex-end !important;
  justify-content: flex-end !important;
}

/* $ => Banner */
.section-full.fp-section.fp-table.home-banner {
  height: 100vh !important;
  min-height: initial !important;
}
video {
  min-width: 100%;
  max-width: 100%;
  width: 100%;
  min-height: 100%;
  max-height: 100%;
  height: 100%;
}
.footer_section video {
  position: absolute;
  top: 0;
  left: 0;
}
video.intro_vid {
  position: static;
}
/* # => Banner */

/* $ => Intro */
.section-full.intro_section .fp-scroller {
  height: 100%;
}
.title_section strong {
  font-size: 28px;
}
.title_section h1 {
  font-size: 70px;
  line-height: 0.8;
  font-weight: 800;
  padding: 0 2rem;
}
.companies_section .title_section h1 {
  font-size: 60px;
}
/* .title_section h1::after {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  width: 20px;
  height: 20px;
  background-color: var(--mainColor);
  border-radius: 50%;
} */
/* # => Intro */

/* $ => Meet */
.bg_style {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center;
}
.overlay_section {
  position: relative;
  z-index: 1;
}
.overlay_section::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  z-index: -1;
}
.overlay_section2::before {
  background-color: rgba(0, 0, 0, 0.85);
}

.txt_style {
  font-size: 17px;
  text-align: justify;
  text-align-last: center;
  max-width: 76%;
  margin: auto;
}
/* # => Meet */

/* $ => What We Do? */
.wwd-swiper {
  margin-top: 10rem;
}
.icon_wwd {
  height: 70px;
  overflow: hidden;
}
.icon_wwd img {
  width: 100%;
  height: 100%;
  object-position: center center;
  object-fit: contain;
}
.wwd-slide h6 {
  font-size: 14px;
}
/* # => What We Do? */

/* $ => Companies */
.bg_style2 {
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  background-repeat: no-repeat;
  background-size: 100%;
  background-position: center center;
  height: 287px;
  z-index: -1;
  pointer-events: none;
  user-select: none;
  opacity: 0.45;
}
.title_section.title_animate img {
  position: absolute;
  top: 50%;
  left: -30px;
  z-index: -1;
  transform: translateY(-50%);
  transition: left 0.5s ease, transform 0.5s ease;
}
.title_section.title_animate:hover h1 span.main_color {
  color: #fff !important;
  transition: color 1s ease, color 1s ease;
}
.title_section.title_animate:hover img {
  left: calc(100% - 160px);
  transform: translateY(-50%) rotate(540deg);
}

.companies_items {
  margin-top: 12rem;
}
.item_company .img_company {
  height: 70px;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 0.8rem;
}
.item_company .img_company img {
  height: 100%;
  object-fit: contain;
  object-position: center center;
}
.item_company h6 {
  font-size: 16px;
  line-height: 1.3;
  font-weight: 200;
}
.item_company .btn_primary {
  border-radius: 18px;
}
.item_company .btn_primary::before {
  border-radius: 18px;
}
/* # => Companies */

/* $ => Clients */
.title_section.title_animate2 h1 {
  transition: all 0.3s ease-in-out;
}
.title_section.title_animate2:hover h1 {
  transform: scale(0.9);
}
.title_section.title_animate2 img {
  left: 50%;
  transform: translate(-50%, -50%) rotate(180deg);
}
.title_section.title_animate2:hover img {
  left: 50%;
  transform: translate(-50%, -50%) rotate(720deg);
}

.clients_sliders {
  margin-top: 5rem;
  position: relative;
}
.client-item {
  background-color: #000;
}

.swiper-button-next,
.swiper-rtl .swiper-button-prev {
  right: -50px;
}
.swiper-button-prev,
.swiper-rtl .swiper-button-next {
  left: -50px;
}
.custom_arrows:after {
  color: #fff;
}
.custom_arrows:hover::after {
  color: var(--mainColor);
}
/* # => Clients */

/* $ => Portfolio */
.mt_5rem {
  margin-top: 7rem;
}
.title_section.title_animate3 h1 {
  transition: all 0.3s linear;
}
.title_section.title_animate3:hover h1 {
  transform: translateX(8px);
}
.title_section.title_animate3 img {
  left: 0;
  transform: translate(-50%, -50%) rotate(0deg);
}
.title_section.title_animate3:hover img {
  left: 0;
  transform: translate(-50%, -50%) rotate(360deg);
}
.portfolio_section .btn_primary {
  width: 180px;
  height: 60px;
  border-radius: 50px;
}
.portfolio_section h5 {
  font-size: 22px;
}

.portfolio_slides::before {
  /* content: ""; */
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.3);
  z-index: 2;
  pointer-events: none;
  user-select: none;
}
.portfolio-swiper .swiper-slide {
  background-size: cover;
  background-repeat: no-repeat;
}

.pattern_portfolio {
  right: -200px;
  height: 100%;
  opacity: 0.35;
}
.pattern_portfolio img {
  height: 100%;
}
/* # => Portfolio */

/* $ => Footer */
.footer_section .fp-tableCell {
  padding-bottom: 4rem;
}
.title_section.title_animate4 {
  margin-bottom: 16rem;
}
.title_section.title_animate4 h1 {
  font-size: 120px;
  z-index: 1;
}
.title_section.title_animate4:hover h1 {
  transform: translateX(0px);
  font-size: 118px;
}
.title_section.title_animate4 h1 strong {
  font-size: 65px;
  transition: all 0.2s linear;
}
.title_section.title_animate4:hover h1 strong {
  transform: translateX(105px);
}
.title_section.title_animate4 img {
  width: 320px;
  left: 210px;
  transform: translate(-50%, -50%) rotate(0deg);
}
.title_section.title_animate4:hover img {
  left: 210px;
  transform: translate(-50%, -50%) rotate(360deg);
}

.portfolio_section .btn_primary {
  width: 180px;
  height: 60px;
  border-radius: 50px;
}

.footer-content h4 {
  color: var(--mainColor);
  font-weight: bold;
  margin-bottom: 10px;
}
.footer-content p {
  color: #888;
}
.footer-content a {
  color: #fff;
}
.footer-content a:hover {
  color: #ddd;
}
.logo-footer {
  position: relative;
  display: block;
  height: 140px;
}
.logo-footer img {
  height: 100%;
  transition: all 0.3s ease-in-out;
  position: absolute;
  top: 0;
  left: 0;
}
.logo-footer .logo_hover {
  opacity: 0;
}
.logo-footer:hover .logo_main {
  opacity: 0;
}
.logo-footer:hover .logo_hover {
  opacity: 1;
}

.contacts_footer p {
  color: #7a7a7a;
  margin-bottom: 5px;
}
.social_links a {
  color: #fff;
}
.social_links a:hover {
  color: var(--mainColor);
}
/* # => Footer */

/* $ => * */
/* # => * */

/* $ => Header */
/* # => Header */
.video-no-interact {
  pointer-events: none;
}
/**************************************************************/
/**************************************************************/
/**************************************************************/
/**************************************************************/
/**************************************************************/
/**************************************************************/
/**************************************************************/
/**************************************************************/
/**************************************************************/

.btn_backhome {
  color: #fff;
}
.btn_backhome:hover {
  color: var(--mainColor);
}

/* $ => Pages */
.inner_banner {
  height: 100vh;
  padding: 0;
}
.btn_playvid {
  background: #fff;
  width: 100px;
  height: 100px;
  border-radius: 50%;
}
.btn_playvid:hover {
  background-color: var(--mainColor);
}
.btn_playvid:hover svg path {
  fill: #fff;
}

.inner_banner .background-video {
  opacity: 0;
  z-index: 1;
}
.inner_banner #play-button {
  z-index: 2;
}

.page_content {
  padding: 5rem 0;
}
.page_content .content {
  padding-right: 11rem;
}
.page_content .content h4 {
  text-align: justify;
  font-size: 18px;
}

.pattern_inner {
  height: 100%;
  right: -3px;
  pointer-events: none;
  user-select: none;
}
.pattern_inner img {
  height: 100%;
}

.color_1 {
  color: #ca0814;
}
.color_2 {
  color: #662d8f;
}
.color_3 {
  color: #39b34a;
}
.color_4 {
  color: #fc4622;
}

.title_section.title_inner {
  margin-top: 9rem;
  margin-bottom: 8rem;
}
.title_section.title_inner h1 {
  font-size: 100px;
}
.title_section.title_inner:hover h1 {
  font-size: 98px;
}
.title_section.title_inner img {
  width: 300px;
  left: 240px;
}
.title_section.title_inner:hover img {
  left: 240px;
}
.title_section.title_inner h1 strong {
  font-size: 50px;
}
.title_section.title_animate4:hover h1 strong {
  transform: translateX(120px);
}
/* # => Pages */

@media only screen and (min-width: 1440px) and (max-width: 1440px) and (min-height: 900px) and (max-height: 900px) {
  .footer_section .title_section.title_animate4 {
    margin-bottom: 10rem;
  }
  .footer_section .title_section.title_animate4 img {
    width: 250px;
  }
  .footer_section .title_section.title_animate4 h1 {
    font-size: 100px;
  }
  .footer_section .title_section.title_animate4 h1 strong {
    font-size: 55px;
  }
}

/* Media query specifically for MacBook Pro 13-inch (1440px x 900px) */
@media only screen and (min-width: 1280px) and (max-width: 1440px) and (min-height: 600px) and (max-height: 899px) {
  .section-full.fp-section .fp-tableCell,
  .section-full.fp-section.fp-table {
    height: 100vh !important;
  }

  .footer_section.section-full.fp-section .fp-tableCell,
  .footer_section.section-full.fp-section.fp-table {
    height: auto !important;
  }
  .footer_section {
    padding-top: 10rem;
  }
  .footer_section .title_section.title_animate4 {
    margin-bottom: 10rem;
  }
  .footer_section .title_section.title_animate4 img {
    width: 250px;
  }
  .footer_section .title_section.title_animate4 h1 {
    font-size: 100px;
  }
  .footer_section .title_section.title_animate4 h1 strong {
    font-size: 55px;
  }
}

@media screen and (max-width: 1199px) {
  .title_section.title_inner h1 {
    font-size: 72px;
  }
  .title_section.title_inner:hover h1 {
    font-size: 70px;
  }
  .title_section.title_inner h1 strong {
    font-size: 30px;
  }
  .title_section.title_animate4:hover h1 strong {
    transform: translateX(95px);
  }
  .title_section.title_inner img {
    width: 212px;
    left: 177px;
  }
  .title_section.title_inner:hover img {
    left: 177px;
  }
}

@media screen and (max-width: 991px) {
  .header_logo img {
    max-width: 200px;
  }
  .toggle-menu {
    display: block;
  }
  header nav {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #000;
    z-index: -1;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    background-image: url(../imgs/pattern-menu.png);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center center;
    transition: all 0.4s cubic-bezier(0.6, -0.28, 0.735, 0.045);

    opacity: 0;
    pointer-events: none;
    user-select: none;
    visibility: hidden;
    transform: translateY(-20px);
  }
  header nav.showing {
    opacity: 1;
    pointer-events: all;
    user-select: all;
    visibility: visible;
    transform: translateY(0px);
  }
  header nav::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.8);
  }
  header nav ul.gap-4 {
    flex-direction: column;
    gap: 4rem !important;
    width: 100%;
    justify-content: center;
  }
  header nav ul a {
    font-size: 30px !important;
    display: block;
  }
  header nav .btn_primary {
    margin-top: 4rem;
  }

  .v-c.h-75 {
    height: 60% !important;
  }

  .title_section h1 {
    font-size: 50px;
  }
  .title_section.title_animate img {
    width: 128px;
  }

  .companies_items {
    margin-top: 5rem;
  }
  .item_company {
    margin-bottom: 1rem;
  }
  .item_company .img_company {
    height: 60px;
  }
  .item_company h6 {
    font-size: 13px;
  }
  .companies_section .title_section h1 {
    font-size: 40px;
  }

  .title_section strong {
    font-size: 24px;
  }
  .title_section h1 {
    font-size: 40px;
  }
  .title_section p {
    width: auto !important;
    font-size: 14px;
  }

  .portfolio_section {
    overflow: hidden;
  }
  .portfolio_section .title_section.title_animate3 img {
    width: 120px;
  }
  .pattern_portfolio {
    right: -555px;
  }

  .title_section.title_animate4 h1 strong {
    font-size: 32px;
  }
  .title_section.title_animate4:hover h1 strong {
    transform: translateX(40px);
  }
  .title_section.title_animate4 {
    margin-top: 4rem;
    margin-bottom: 4rem;
  }
  .title_section.title_animate4 h1 {
    font-size: 60px;
  }
  .title_section.title_animate4:hover h1 {
    font-size: 58px;
  }
  .title_section.title_animate4 img {
    left: 100px;
  }
  .title_section.title_animate4:hover img {
    left: 100px;
  }

  .footer-content > .row > div:not(:last-child) {
    margin-bottom: 3rem;
  }
  .footer_section .fp-tableCell {
    padding-bottom: 2rem;
  }
  .social_links a svg {
    width: 18px;
  }

  .meet_section {
    height: auto;
    min-height: initial;
    padding: 9rem 0;
    display: flex;
    align-items: center;
    justify-content: center;
  }
  .section-full.section_clients,
  .companies_section,
  .wwd_section {
    padding: 4rem 0;
    height: auto;
    min-height: initial;
  }
  .section-full.section_clients,
  .companies_section {
    padding-top: 0;
    padding-bottom: 0;
  }

  .section-full.section_clients {
    display: block !important;
  }

  .pattern_inner {
    height: 100%;
    right: -1px;
  }
}

@media screen and (max-width: 767px) {
  header.py-5 {
    padding-top: 1.5rem !important;
    padding-bottom: 1.5rem !important;
  }
  header.header-sticky {
    padding-top: 1rem !important;
    padding-bottom: 1rem !important;
  }
  header .header_logo img,
  header.header-sticky .header_logo img {
    max-width: 140px;
  }

  .section-full.home-banner {
    height: 50vh !important;
    min-height: 50vh;
  }

  .section-full.intro_section {
    padding-top: 0 !important;
  }

  .wwd-swiper .swiper-wrapper {
    padding-bottom: 3rem;
  }
  .custom_pagination.swiper-pagination-bullets {
    bottom: 0;
  }
  .custom_pagination .swiper-pagination-bullet {
    width: 14px;
    height: 14px;
    background: #ccc;
  }
  .custom_pagination.swiper-pagination-bullets-dynamic
    .swiper-pagination-bullet-active-prev {
    transform: scale(0.8);
  }
  .custom_pagination .swiper-pagination-bullet-active {
    background: #ffffff;
  }

  .item_company {
    margin-bottom: 4rem;
  }
  .item_company h6 {
    font-size: 16px;
  }

  .title_section.title_animate img {
    width: 90px;
  }

  .portfolio_section {
    min-height: initial;
    height: 53vh;
  }
  .section-full.portfolio_section > div {
    width: 100%;
  }

  .portfolio_section .title_section.title_animate3 img {
    width: 100px;
  }

  .title_section.title_animate4 h1 {
    font-size: 50px;
  }
  .title_section.title_animate4:hover h1 {
    font-size: 48px;
  }
  .title_section.title_animate4 h1 strong {
    font-size: 23px;
  }
  .title_section.title_animate4 img {
    left: 70px;
  }
  .title_section.title_animate4:hover img {
    left: 70px;
  }

  .copyright-txt {
    font-size: 15px !important;
  }

  .pattern_inner {
    right: -100px;
  }
  .page_content .content {
    padding-right: 3rem;
  }
  .inner_content ul li,
  .page_content .content h4 {
    font-size: 13px !important;
    text-align: left;
    line-height: 1.6;
  }

  .companies_section {
    padding-top: 4rem;
  }

  .footer_section {
    padding-top: 4rem;
    padding-bottom: 2rem;
    overflow: hidden;
    min-height: initial;
    height: auto;
  }
  .footer_section video {
    top: 50%;
    left: 40px;
    transform: translate(-50%, -50%);
    min-width: initial;
    max-width: initial;
    width: 200%;
    min-height: initial;
    max-height: initial;
    height: 100%;
  }
  .logo-footer {
    height: 100px;
  }

  .bg_style2 {
    opacity: 0.4;
  }

  .txt_style {
    font-size: 14px;
    text-align: center;
    max-width: 100%;
    margin: auto;
  }

  .pattern_portfolio {
    display: none;
  }
  .title_section h1 {
    font-size: 37px;
  }
  .portfolio_section .title_section h1 {
    /* font-size: 33px; */
  }
  .companies_section .title_section h1 {
    font-size: 33px;
  }
  .portfolio_section .mt_5rem {
    margin-top: 3rem;
  }
  .portfolio_section h5 {
    font-size: 16px;
    font-weight: 400 !important;
  }

  .swiper-button-next,
  .swiper-rtl .swiper-button-prev {
    right: -10px;
  }
  .swiper-button-prev,
  .swiper-rtl .swiper-button-next {
    left: -10px;
  }
}

@media screen and (max-width: 580px) {
  .inner_banner {
    height: 60vh;
  }
  .title_section.title_inner {
    margin-top: 3rem;
    margin-bottom: 3rem;
  }
  .pattern_inner {
    right: -1px;
  }
  .page_content {
    padding-bottom: 1rem;
  }
  .page_content .content {
    padding-right: 7rem;
  }
  .page_content .content h1 {
    font-size: 1.5rem;
  }

  .title_section.title_animate4 h1 strong {
    font-size: 14px;
  }
  .title_section.title_animate4:hover h1 {
    font-size: 1.6rem;
  }
  .title_section.title_animate img {
    width: 70px;
  }

  .contacts_footer p {
    font-size: 0.9rem;
  }

  .portfolio_section {
    height: 36vh;
  }
  .portfolio_section .title_section.title_animate3 img {
    width: 60px;
  }
  .portfolio_section .mt_5rem {
    margin-top: 2rem;
  }
  .portfolio_section h5 {
    font-size: 14px;
  }
  .portfolio_section .btn_primary {
    width: 150px;
    height: 45px;
    font-size: 14px;
  }

  .swiper-button-next,
  .swiper-rtl .swiper-button-prev {
    right: 0px;
  }
  .swiper-button-prev,
  .swiper-rtl .swiper-button-next {
    left: 0px;
  }
  .custom_arrows:after {
    font-size: 18px;
  }
}

@media screen and (max-width: 440px) {
}
