@charset "UTF-8";

/*-----------------------------------------------------------------------------------

    Theme Name: Uifolio
    Theme URI: http://
    Description: Creative Agency & Portfolio
    Author: UI-ThemeZ
    Author URI: http://themeforest.net/user/UI-ThemeZ
    Version: 1.0

-----------------------------------------------------------------------------------*/
/* Variables
-----------------------------------------------------------------*/
:root {
  --base-color: #0011FF;
  --white: #ffffff;
  --black: #000000;
  --alt-black: #111111;
  --red: #dc3131;
  --light-red: #feedec;
  --light-yellow: #F9FFE3;
  --light-green: #D3F4DA;
  --green: #2ebb79;
  --crusoe-green: #AFFF54;
  --yellow: #F9DB57;
  --dark-gray: #232323;
  --medium-gray: #717580;
  --extra-medium-gray: #BEBEBE;
  --light-gray: #a8a8a8;
  --very-light-gray: #f7f7f7;
  --light-medium-gray: #eaeaeb;
  --charcoal-blue: #202329;
  --slate-blue: #262b35;
  --medium-slate-blue: #374162;
  --extra-medium-slate-blue: #23262d;
  --dark-slate-blue: #1f232c;
  --extra-dark-slate-blue: #121418;
  --extra-very-slate-blue: #1b1b1b;
  --tussock-yellow: #FDE133;
  --aluminium-grey: #80858F;
  --solitude-blue: #f0f4fd;
  --golden-yellow: #fd961e;
  --selago: #eaedff;
  --white-ice: #d8f5ef;
  --cornflower-blue: #445fed;
  --jade: #00AF6B;
  --orange: #ef991f;
  --majorelle-blue: #8088E6;
  --light-majorelle-blue: #f2edfe;
  --spring-wood: #f9f6f3;
  --tropical-blue: #2A51E6;
  --camarone: #85EE00;
  --seal-brown: #0e0708;
  --Wasabi: #8ea63a;
}

/* ===================================
    03. Reset
====================================== */
html {
  font-size: 16px;
}

body {
  font-family: "Poppins", sans-serif;
  font-size: 16px;
  line-height: 1.2;
  font-weight: 400;
  background: #fff;
  color: #1f1f1f;
  -moz-osx-font-smoothing: grayscale;
  word-break: break-word;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden !important;
}

body .sub-bg {
  background: #faf7f9;
}

body.creative-agency {
  font-family: "Inter", sans-serif;
  color: #283841;
}

body.creative-agency h1,
body.creative-agency h2,
body.creative-agency h3,
body.creative-agency h4,
body.creative-agency h5,
body.creative-agency h6 {
  font-family: "Boldonse", system-ui;
  line-height: 1.4;
}

body.creative-agency p {
  color: #344249;
}

body.design-agency .main-color,
body.marketing-agency .main-color,
body.creative-portfolio .main-color,
body.freelancer .main-color {
  color: #FF6A3A;
}

body.design-agency .bg-main-color,
body.marketing-agency .bg-main-color,
body.creative-portfolio .bg-main-color,
body.freelancer .bg-main-color {
  background: #FF6A3A;
}

body.creative-portfolio h1,
body.creative-portfolio h2,
body.creative-portfolio h3,
body.creative-portfolio h4,
body.creative-portfolio h5,
body.creative-portfolio h6,
body.freelancer h1,
body.freelancer h2,
body.freelancer h3,
body.freelancer h4,
body.freelancer h5,
body.freelancer h6 {
  font-family: "Bricolage Grotesque", sans-serif;
}

body.design-agency,
body.freelancer {
  font-family: "Sora", sans-serif;
}

body.startup-agency {
  font-family: "Unbounded", sans-serif;
}

body.startup-agency .main-color {
  color: #FF6A3A;
}

body.startup-agency .bg-main-color {
  background: #FF6A3A;
}

body.startup-agency .sm-title-dot:before {
  background: #FF6A3A;
}

body.startup-agency p {
  font-family: "Poppins", sans-serif;
}

body .lines {
  position: fixed;
  top: 0;
  height: 100%;
  width: 90%;
  left: 5%;
  border-right: 1px solid rgba(0, 0, 0, 0.1);
  border-left: 1px solid rgba(0, 0, 0, 0.1);
  opacity: .3;
}

body .lines:after,
body .lines:before {
  content: '';
  position: absolute;
  top: 0;
  left: 20%;
  width: 20%;
  height: 100%;
  border-right: 1px solid rgba(0, 0, 0, 0.1);
  border-left: 1px solid rgba(0, 0, 0, 0.1);
  z-index: -1;
  pointer-events: none;
}

body .lines:before {
  left: auto;
  right: 20%;
}

body .blur-div {
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  bottom: 0;
  -webkit-box-flex: 0;
  -ms-flex: none;
  flex: none;
  height: 100px;
  left: 0;
  -webkit-mask: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), to(black)) add;
  -webkit-mask: -webkit-linear-gradient(top, rgba(0, 0, 0, 0) 0%, black 100%) add;
  mask: -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), to(black)) add;
  mask: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, black 100%) add;
  overflow: visible;
  position: fixed;
  right: 0;
  pointer-events: none;
  z-index: 999;
}

.play-text {
  font-family: "Playfair Display", serif;
  font-style: italic;
  font-weight: 400;
}

section {
  padding-top: 120px;
  padding-bottom: 120px;
}

section.half-section {
  padding-top: 70px;
  padding-bottom: 70px;
}

section.big-section {
  padding-top: 140px;
  padding-bottom: 140px;
}

section.extra-big-section {
  padding-top: 160px;
  padding-bottom: 160px;
}

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

ul li {
  list-style: none;
}

ul.rest {
  margin: 0;
  padding: 0;
}

video {
  background-size: cover;
  display: table-cell;
  vertical-align: middle;
  width: 100%;
}

.accordion,
.accordion-item {
  color: inherit !important;
}

:focus-visible {
  outline: none;
}

.form-control.is-invalid,
.was-validated .form-control:invalid {
  border-color: #dc3545 !important;
}

.g-recaptcha.is-invalid iframe {
  border: 1px solid #dc3545 !important;
}

@media (min-width: 1400px) {

  .container,
  .container-lg,
  .container-md,
  .container-sm,
  .container-xl,
  .container-xxl {
    max-width: 1200px;
  }
}

.social-icon-circle a:hover {
  background: #fff;
  color: #171717;
}

/* ====================================================================================
    03. Loop - Padding, margin, position, font weight, min height, opacity and z-index
======================================================================================= */
/* Padding and margin */
.p-5px {
  padding: 5px !important;
}

.p-10px {
  padding: 10px !important;
}

.p-15px {
  padding: 15px !important;
}

.p-20px {
  padding: 20px !important;
}

.p-25px {
  padding: 25px !important;
}

.p-30px {
  padding: 30px !important;
}

.p-35px {
  padding: 35px !important;
}

.p-40px {
  padding: 40px !important;
}

.p-45px {
  padding: 45px !important;
}

.p-50px {
  padding: 50px !important;
}

.p-55px {
  padding: 55px !important;
}

.p-60px {
  padding: 60px !important;
}

.p-65px {
  padding: 65px !important;
}

.p-70px {
  padding: 70px !important;
}

.p-75px {
  padding: 75px !important;
}

.p-80px {
  padding: 80px !important;
}

.p-1 {
  padding: 1% !important;
}

.p-2 {
  padding: 2% !important;
}

.p-3 {
  padding: 3% !important;
}

.p-4 {
  padding: 4% !important;
}

.p-5 {
  padding: 5% !important;
}

.p-6 {
  padding: 6% !important;
}

.p-7 {
  padding: 7% !important;
}

.p-8 {
  padding: 8% !important;
}

.p-9 {
  padding: 9% !important;
}

.p-10 {
  padding: 10% !important;
}

.p-11 {
  padding: 11% !important;
}

.p-12 {
  padding: 12% !important;
}

.p-13 {
  padding: 13% !important;
}

.p-14 {
  padding: 14% !important;
}

.p-15 {
  padding: 15% !important;
}

.p-16 {
  padding: 16% !important;
}

.p-17 {
  padding: 17% !important;
}

.p-18 {
  padding: 18% !important;
}

.p-19 {
  padding: 19% !important;
}

.p-20 {
  padding: 20% !important;
}

.p-21 {
  padding: 21% !important;
}

.p-22 {
  padding: 22% !important;
}

.p-23 {
  padding: 23% !important;
}

.p-24 {
  padding: 24% !important;
}

.p-25 {
  padding: 25% !important;
}

.p-26 {
  padding: 26% !important;
}

.p-27 {
  padding: 27% !important;
}

.p-28 {
  padding: 28% !important;
}

.p-29 {
  padding: 29% !important;
}

.p-30 {
  padding: 30% !important;
}

.pt-5px {
  padding-top: 5px !important;
}

.pt-10px {
  padding-top: 10px !important;
}

.pt-15px {
  padding-top: 15px !important;
}

.pt-20px {
  padding-top: 20px !important;
}

.pt-25px {
  padding-top: 25px !important;
}

.pt-30px {
  padding-top: 30px !important;
}

.pt-35px {
  padding-top: 35px !important;
}

.pt-40px {
  padding-top: 40px !important;
}

.pt-45px {
  padding-top: 45px !important;
}

.pt-50px {
  padding-top: 50px !important;
}

.pt-55px {
  padding-top: 55px !important;
}

.pt-60px {
  padding-top: 60px !important;
}

.pt-65px {
  padding-top: 65px !important;
}

.pt-70px {
  padding-top: 70px !important;
}

.pt-75px {
  padding-top: 75px !important;
}

.pt-80px {
  padding-top: 80px !important;
}

.pt-1 {
  padding-top: 1% !important;
}

.pt-2 {
  padding-top: 2% !important;
}

.pt-3 {
  padding-top: 3% !important;
}

.pt-4 {
  padding-top: 4% !important;
}

.pt-5 {
  padding-top: 5% !important;
}

.pt-6 {
  padding-top: 6% !important;
}

.pt-7 {
  padding-top: 7% !important;
}

.pt-8 {
  padding-top: 8% !important;
}

.pt-9 {
  padding-top: 9% !important;
}

.pt-10 {
  padding-top: 10% !important;
}

.pt-11 {
  padding-top: 11% !important;
}

.pt-12 {
  padding-top: 12% !important;
}

.pt-13 {
  padding-top: 13% !important;
}

.pt-14 {
  padding-top: 14% !important;
}

.pt-15 {
  padding-top: 15% !important;
}

.pt-16 {
  padding-top: 16% !important;
}

.pt-17 {
  padding-top: 17% !important;
}

.pt-18 {
  padding-top: 18% !important;
}

.pt-19 {
  padding-top: 19% !important;
}

.pt-20 {
  padding-top: 20% !important;
}

.pt-21 {
  padding-top: 21% !important;
}

.pt-22 {
  padding-top: 22% !important;
}

.pt-23 {
  padding-top: 23% !important;
}

.pt-24 {
  padding-top: 24% !important;
}

.pt-25 {
  padding-top: 25% !important;
}

.pt-26 {
  padding-top: 26% !important;
}

.pt-27 {
  padding-top: 27% !important;
}

.pt-28 {
  padding-top: 28% !important;
}

.pt-29 {
  padding-top: 29% !important;
}

.pt-30 {
  padding-top: 30% !important;
}

.pr-5px {
  padding-right: 5px !important;
}

.pr-10px {
  padding-right: 10px !important;
}

.pr-15px {
  padding-right: 15px !important;
}

.pr-20px {
  padding-right: 20px !important;
}

.pr-25px {
  padding-right: 25px !important;
}

.pr-30px {
  padding-right: 30px !important;
}

.pr-35px {
  padding-right: 35px !important;
}

.pr-40px {
  padding-right: 40px !important;
}

.pr-45px {
  padding-right: 45px !important;
}

.pr-50px {
  padding-right: 50px !important;
}

.pr-55px {
  padding-right: 55px !important;
}

.pr-60px {
  padding-right: 60px !important;
}

.pr-65px {
  padding-right: 65px !important;
}

.pr-70px {
  padding-right: 70px !important;
}

.pr-75px {
  padding-right: 75px !important;
}

.pr-80px {
  padding-right: 80px !important;
}

.pr-1 {
  padding-right: 1% !important;
}

.pr-2 {
  padding-right: 2% !important;
}

.pr-3 {
  padding-right: 3% !important;
}

.pr-4 {
  padding-right: 4% !important;
}

.pr-5 {
  padding-right: 5% !important;
}

.pr-6 {
  padding-right: 6% !important;
}

.pr-7 {
  padding-right: 7% !important;
}

.pr-8 {
  padding-right: 8% !important;
}

.pr-9 {
  padding-right: 9% !important;
}

.pr-10 {
  padding-right: 10% !important;
}

.pr-11 {
  padding-right: 11% !important;
}

.pr-12 {
  padding-right: 12% !important;
}

.pr-13 {
  padding-right: 13% !important;
}

.pr-14 {
  padding-right: 14% !important;
}

.pr-15 {
  padding-right: 15% !important;
}

.pr-16 {
  padding-right: 16% !important;
}

.pr-17 {
  padding-right: 17% !important;
}

.pr-18 {
  padding-right: 18% !important;
}

.pr-19 {
  padding-right: 19% !important;
}

.pr-20 {
  padding-right: 20% !important;
}

.pr-21 {
  padding-right: 21% !important;
}

.pr-22 {
  padding-right: 22% !important;
}

.pr-23 {
  padding-right: 23% !important;
}

.pr-24 {
  padding-right: 24% !important;
}

.pr-25 {
  padding-right: 25% !important;
}

.pr-26 {
  padding-right: 26% !important;
}

.pr-27 {
  padding-right: 27% !important;
}

.pr-28 {
  padding-right: 28% !important;
}

.pr-29 {
  padding-right: 29% !important;
}

.pr-30 {
  padding-right: 30% !important;
}

.pb-5px {
  padding-bottom: 5px !important;
}

.pb-10px {
  padding-bottom: 10px !important;
}

.pb-15px {
  padding-bottom: 15px !important;
}

.pb-20px {
  padding-bottom: 20px !important;
}

.pb-25px {
  padding-bottom: 25px !important;
}

.pb-30px {
  padding-bottom: 30px !important;
}

.pb-35px {
  padding-bottom: 35px !important;
}

.pb-40px {
  padding-bottom: 40px !important;
}

.pb-45px {
  padding-bottom: 45px !important;
}

.pb-50px {
  padding-bottom: 50px !important;
}

.pb-55px {
  padding-bottom: 55px !important;
}

.pb-60px {
  padding-bottom: 60px !important;
}

.pb-65px {
  padding-bottom: 65px !important;
}

.pb-70px {
  padding-bottom: 70px !important;
}

.pb-75px {
  padding-bottom: 75px !important;
}

.pb-80px {
  padding-bottom: 80px !important;
}

.pb-1 {
  padding-bottom: 1% !important;
}

.pb-2 {
  padding-bottom: 2% !important;
}

.pb-3 {
  padding-bottom: 3% !important;
}

.pb-4 {
  padding-bottom: 4% !important;
}

.pb-5 {
  padding-bottom: 5% !important;
}

.pb-6 {
  padding-bottom: 6% !important;
}

.pb-7 {
  padding-bottom: 7% !important;
}

.pb-8 {
  padding-bottom: 8% !important;
}

.pb-9 {
  padding-bottom: 9% !important;
}

.pb-10 {
  padding-bottom: 10% !important;
}

.pb-11 {
  padding-bottom: 11% !important;
}

.pb-12 {
  padding-bottom: 12% !important;
}

.pb-13 {
  padding-bottom: 13% !important;
}

.pb-14 {
  padding-bottom: 14% !important;
}

.pb-15 {
  padding-bottom: 15% !important;
}

.pb-16 {
  padding-bottom: 16% !important;
}

.pb-17 {
  padding-bottom: 17% !important;
}

.pb-18 {
  padding-bottom: 18% !important;
}

.pb-19 {
  padding-bottom: 19% !important;
}

.pb-20 {
  padding-bottom: 20% !important;
}

.pb-21 {
  padding-bottom: 21% !important;
}

.pb-22 {
  padding-bottom: 22% !important;
}

.pb-23 {
  padding-bottom: 23% !important;
}

.pb-24 {
  padding-bottom: 24% !important;
}

.pb-25 {
  padding-bottom: 25% !important;
}

.pb-26 {
  padding-bottom: 26% !important;
}

.pb-27 {
  padding-bottom: 27% !important;
}

.pb-28 {
  padding-bottom: 28% !important;
}

.pb-29 {
  padding-bottom: 29% !important;
}

.pb-30 {
  padding-bottom: 30% !important;
}

.pl-5px {
  padding-left: 5px !important;
}

.pl-10px {
  padding-left: 10px !important;
}

.pl-15px {
  padding-left: 15px !important;
}

.pl-20px {
  padding-left: 20px !important;
}

.pl-25px {
  padding-left: 25px !important;
}

.pl-30px {
  padding-left: 30px !important;
}

.pl-35px {
  padding-left: 35px !important;
}

.pl-40px {
  padding-left: 40px !important;
}

.pl-45px {
  padding-left: 45px !important;
}

.pl-50px {
  padding-left: 50px !important;
}

.pl-55px {
  padding-left: 55px !important;
}

.pl-60px {
  padding-left: 60px !important;
}

.pl-65px {
  padding-left: 65px !important;
}

.pl-70px {
  padding-left: 70px !important;
}

.pl-75px {
  padding-left: 75px !important;
}

.pl-80px {
  padding-left: 80px !important;
}

.pl-1 {
  padding-left: 1% !important;
}

.pl-2 {
  padding-left: 2% !important;
}

.pl-3 {
  padding-left: 3% !important;
}

.pl-4 {
  padding-left: 4% !important;
}

.pl-5 {
  padding-left: 5% !important;
}

.pl-6 {
  padding-left: 6% !important;
}

.pl-7 {
  padding-left: 7% !important;
}

.pl-8 {
  padding-left: 8% !important;
}

.pl-9 {
  padding-left: 9% !important;
}

.pl-10 {
  padding-left: 10% !important;
}

.pl-11 {
  padding-left: 11% !important;
}

.pl-12 {
  padding-left: 12% !important;
}

.pl-13 {
  padding-left: 13% !important;
}

.pl-14 {
  padding-left: 14% !important;
}

.pl-15 {
  padding-left: 15% !important;
}

.pl-16 {
  padding-left: 16% !important;
}

.pl-17 {
  padding-left: 17% !important;
}

.pl-18 {
  padding-left: 18% !important;
}

.pl-19 {
  padding-left: 19% !important;
}

.pl-20 {
  padding-left: 20% !important;
}

.pl-21 {
  padding-left: 21% !important;
}

.pl-22 {
  padding-left: 22% !important;
}

.pl-23 {
  padding-left: 23% !important;
}

.pl-24 {
  padding-left: 24% !important;
}

.pl-25 {
  padding-left: 25% !important;
}

.pl-26 {
  padding-left: 26% !important;
}

.pl-27 {
  padding-left: 27% !important;
}

.pl-28 {
  padding-left: 28% !important;
}

.pl-29 {
  padding-left: 29% !important;
}

.pl-30 {
  padding-left: 30% !important;
}

.m-5px {
  margin: 5px !important;
}

.m-10px {
  margin: 10px !important;
}

.m-15px {
  margin: 15px !important;
}

.m-20px {
  margin: 20px !important;
}

.m-25px {
  margin: 25px !important;
}

.m-30px {
  margin: 30px !important;
}

.m-35px {
  margin: 35px !important;
}

.m-40px {
  margin: 40px !important;
}

.m-45px {
  margin: 45px !important;
}

.m-50px {
  margin: 50px !important;
}

.m-55px {
  margin: 55px !important;
}

.m-60px {
  margin: 60px !important;
}

.m-65px {
  margin: 65px !important;
}

.m-70px {
  margin: 70px !important;
}

.m-75px {
  margin: 75px !important;
}

.m-80px {
  margin: 80px !important;
}

.m-1 {
  margin: 1% !important;
}

.m-2 {
  margin: 2% !important;
}

.m-3 {
  margin: 3% !important;
}

.m-4 {
  margin: 4% !important;
}

.m-5 {
  margin: 5% !important;
}

.m-6 {
  margin: 6% !important;
}

.m-7 {
  margin: 7% !important;
}

.m-8 {
  margin: 8% !important;
}

.m-9 {
  margin: 9% !important;
}

.m-10 {
  margin: 10% !important;
}

.m-11 {
  margin: 11% !important;
}

.m-12 {
  margin: 12% !important;
}

.m-13 {
  margin: 13% !important;
}

.m-14 {
  margin: 14% !important;
}

.m-15 {
  margin: 15% !important;
}

.m-16 {
  margin: 16% !important;
}

.m-17 {
  margin: 17% !important;
}

.m-18 {
  margin: 18% !important;
}

.m-19 {
  margin: 19% !important;
}

.m-20 {
  margin: 20% !important;
}

.m-21 {
  margin: 21% !important;
}

.m-22 {
  margin: 22% !important;
}

.m-23 {
  margin: 23% !important;
}

.m-24 {
  margin: 24% !important;
}

.m-25 {
  margin: 25% !important;
}

.m-26 {
  margin: 26% !important;
}

.m-27 {
  margin: 27% !important;
}

.m-28 {
  margin: 28% !important;
}

.m-29 {
  margin: 29% !important;
}

.m-30 {
  margin: 30% !important;
}

.mt-5px {
  margin-top: 5px !important;
}

.mt-10px {
  margin-top: 10px !important;
}

.mt-15px {
  margin-top: 15px !important;
}

.mt-20px {
  margin-top: 20px !important;
}

.mt-25px {
  margin-top: 25px !important;
}

.mt-30px {
  margin-top: 30px !important;
}

.mt-35px {
  margin-top: 35px !important;
}

.mt-40px {
  margin-top: 40px !important;
}

.mt-45px {
  margin-top: 45px !important;
}

.mt-50px {
  margin-top: 50px !important;
}

.mt-55px {
  margin-top: 55px !important;
}

.mt-60px {
  margin-top: 60px !important;
}

.mt-65px {
  margin-top: 65px !important;
}

.mt-70px {
  margin-top: 70px !important;
}

.mt-75px {
  margin-top: 75px !important;
}

.mt-80px {
  margin-top: 80px !important;
}

.mt-1 {
  margin-top: 1% !important;
}

.mt-2 {
  margin-top: 2% !important;
}

.mt-3 {
  margin-top: 3% !important;
}

.mt-4 {
  margin-top: 4% !important;
}

.mt-5 {
  margin-top: 5% !important;
}

.mt-6 {
  margin-top: 6% !important;
}

.mt-7 {
  margin-top: 7% !important;
}

.mt-8 {
  margin-top: 8% !important;
}

.mt-9 {
  margin-top: 9% !important;
}

.mt-10 {
  margin-top: 10% !important;
}

.mt-11 {
  margin-top: 11% !important;
}

.mt-12 {
  margin-top: 12% !important;
}

.mt-13 {
  margin-top: 13% !important;
}

.mt-14 {
  margin-top: 14% !important;
}

.mt-15 {
  margin-top: 15% !important;
}

.mt-16 {
  margin-top: 16% !important;
}

.mt-17 {
  margin-top: 17% !important;
}

.mt-18 {
  margin-top: 18% !important;
}

.mt-19 {
  margin-top: 19% !important;
}

.mt-20 {
  margin-top: 20% !important;
}

.mt-21 {
  margin-top: 21% !important;
}

.mt-22 {
  margin-top: 22% !important;
}

.mt-23 {
  margin-top: 23% !important;
}

.mt-24 {
  margin-top: 24% !important;
}

.mt-25 {
  margin-top: 25% !important;
}

.mt-26 {
  margin-top: 26% !important;
}

.mt-27 {
  margin-top: 27% !important;
}

.mt-28 {
  margin-top: 28% !important;
}

.mt-29 {
  margin-top: 29% !important;
}

.mt-30 {
  margin-top: 30% !important;
}

.mr-5px {
  margin-right: 5px !important;
}

.mr-10px {
  margin-right: 10px !important;
}

.mr-15px {
  margin-right: 15px !important;
}

.mr-20px {
  margin-right: 20px !important;
}

.mr-25px {
  margin-right: 25px !important;
}

.mr-30px {
  margin-right: 30px !important;
}

.mr-35px {
  margin-right: 35px !important;
}

.mr-40px {
  margin-right: 40px !important;
}

.mr-45px {
  margin-right: 45px !important;
}

.mr-50px {
  margin-right: 50px !important;
}

.mr-55px {
  margin-right: 55px !important;
}

.mr-60px {
  margin-right: 60px !important;
}

.mr-65px {
  margin-right: 65px !important;
}

.mr-70px {
  margin-right: 70px !important;
}

.mr-75px {
  margin-right: 75px !important;
}

.mr-80px {
  margin-right: 80px !important;
}

.mr-1 {
  margin-right: 1% !important;
}

.mr-2 {
  margin-right: 2% !important;
}

.mr-3 {
  margin-right: 3% !important;
}

.mr-4 {
  margin-right: 4% !important;
}

.mr-5 {
  margin-right: 5% !important;
}

.mr-6 {
  margin-right: 6% !important;
}

.mr-7 {
  margin-right: 7% !important;
}

.mr-8 {
  margin-right: 8% !important;
}

.mr-9 {
  margin-right: 9% !important;
}

.mr-10 {
  margin-right: 10% !important;
}

.mr-11 {
  margin-right: 11% !important;
}

.mr-12 {
  margin-right: 12% !important;
}

.mr-13 {
  margin-right: 13% !important;
}

.mr-14 {
  margin-right: 14% !important;
}

.mr-15 {
  margin-right: 15% !important;
}

.mr-16 {
  margin-right: 16% !important;
}

.mr-17 {
  margin-right: 17% !important;
}

.mr-18 {
  margin-right: 18% !important;
}

.mr-19 {
  margin-right: 19% !important;
}

.mr-20 {
  margin-right: 20% !important;
}

.mr-21 {
  margin-right: 21% !important;
}

.mr-22 {
  margin-right: 22% !important;
}

.mr-23 {
  margin-right: 23% !important;
}

.mr-24 {
  margin-right: 24% !important;
}

.mr-25 {
  margin-right: 25% !important;
}

.mr-26 {
  margin-right: 26% !important;
}

.mr-27 {
  margin-right: 27% !important;
}

.mr-28 {
  margin-right: 28% !important;
}

.mr-29 {
  margin-right: 29% !important;
}

.mr-30 {
  margin-right: 30% !important;
}

.mb-5px {
  margin-bottom: 5px !important;
}

.mb-10px {
  margin-bottom: 10px !important;
}

.mb-15px {
  margin-bottom: 15px !important;
}

.mb-20px {
  margin-bottom: 20px !important;
}

.mb-25px {
  margin-bottom: 25px !important;
}

.mb-30px {
  margin-bottom: 30px !important;
}

.mb-35px {
  margin-bottom: 35px !important;
}

.mb-40px {
  margin-bottom: 40px !important;
}

.mb-45px {
  margin-bottom: 45px !important;
}

.mb-50px {
  margin-bottom: 50px !important;
}

.mb-55px {
  margin-bottom: 55px !important;
}

.mb-60px {
  margin-bottom: 60px !important;
}

.mb-65px {
  margin-bottom: 65px !important;
}

.mb-70px {
  margin-bottom: 70px !important;
}

.mb-75px {
  margin-bottom: 75px !important;
}

.mb-80px {
  margin-bottom: 80px !important;
}

.mb-1 {
  margin-bottom: 1% !important;
}

.mb-2 {
  margin-bottom: 2% !important;
}

.mb-3 {
  margin-bottom: 3% !important;
}

.mb-4 {
  margin-bottom: 4% !important;
}

.mb-5 {
  margin-bottom: 5% !important;
}

.mb-6 {
  margin-bottom: 6% !important;
}

.mb-7 {
  margin-bottom: 7% !important;
}

.mb-8 {
  margin-bottom: 8% !important;
}

.mb-9 {
  margin-bottom: 9% !important;
}

.mb-10 {
  margin-bottom: 10% !important;
}

.mb-11 {
  margin-bottom: 11% !important;
}

.mb-12 {
  margin-bottom: 12% !important;
}

.mb-13 {
  margin-bottom: 13% !important;
}

.mb-14 {
  margin-bottom: 14% !important;
}

.mb-15 {
  margin-bottom: 15% !important;
}

.mb-16 {
  margin-bottom: 16% !important;
}

.mb-17 {
  margin-bottom: 17% !important;
}

.mb-18 {
  margin-bottom: 18% !important;
}

.mb-19 {
  margin-bottom: 19% !important;
}

.mb-20 {
  margin-bottom: 20% !important;
}

.mb-21 {
  margin-bottom: 21% !important;
}

.mb-22 {
  margin-bottom: 22% !important;
}

.mb-23 {
  margin-bottom: 23% !important;
}

.mb-24 {
  margin-bottom: 24% !important;
}

.mb-25 {
  margin-bottom: 25% !important;
}

.mb-26 {
  margin-bottom: 26% !important;
}

.mb-27 {
  margin-bottom: 27% !important;
}

.mb-28 {
  margin-bottom: 28% !important;
}

.mb-29 {
  margin-bottom: 29% !important;
}

.mb-30 {
  margin-bottom: 30% !important;
}

.ml-5px {
  margin-left: 5px !important;
}

.ml-10px {
  margin-left: 10px !important;
}

.ml-15px {
  margin-left: 15px !important;
}

.ml-20px {
  margin-left: 20px !important;
}

.ml-25px {
  margin-left: 25px !important;
}

.ml-30px {
  margin-left: 30px !important;
}

.ml-35px {
  margin-left: 35px !important;
}

.ml-40px {
  margin-left: 40px !important;
}

.ml-45px {
  margin-left: 45px !important;
}

.ml-50px {
  margin-left: 50px !important;
}

.ml-55px {
  margin-left: 55px !important;
}

.ml-60px {
  margin-left: 60px !important;
}

.ml-65px {
  margin-left: 65px !important;
}

.ml-70px {
  margin-left: 70px !important;
}

.ml-75px {
  margin-left: 75px !important;
}

.ml-80px {
  margin-left: 80px !important;
}

.ml-1 {
  margin-left: 1% !important;
}

.ml-2 {
  margin-left: 2% !important;
}

.ml-3 {
  margin-left: 3% !important;
}

.ml-4 {
  margin-left: 4% !important;
}

.ml-5 {
  margin-left: 5% !important;
}

.ml-6 {
  margin-left: 6% !important;
}

.ml-7 {
  margin-left: 7% !important;
}

.ml-8 {
  margin-left: 8% !important;
}

.ml-9 {
  margin-left: 9% !important;
}

.ml-10 {
  margin-left: 10% !important;
}

.ml-11 {
  margin-left: 11% !important;
}

.ml-12 {
  margin-left: 12% !important;
}

.ml-13 {
  margin-left: 13% !important;
}

.ml-14 {
  margin-left: 14% !important;
}

.ml-15 {
  margin-left: 15% !important;
}

.ml-16 {
  margin-left: 16% !important;
}

.ml-17 {
  margin-left: 17% !important;
}

.ml-18 {
  margin-left: 18% !important;
}

.ml-19 {
  margin-left: 19% !important;
}

.ml-20 {
  margin-left: 20% !important;
}

.ml-21 {
  margin-left: 21% !important;
}

.ml-22 {
  margin-left: 22% !important;
}

.ml-23 {
  margin-left: 23% !important;
}

.ml-24 {
  margin-left: 24% !important;
}

.ml-25 {
  margin-left: 25% !important;
}

.ml-26 {
  margin-left: 26% !important;
}

.ml-27 {
  margin-left: 27% !important;
}

.ml-28 {
  margin-left: 28% !important;
}

.ml-29 {
  margin-left: 29% !important;
}

.ml-30 {
  margin-left: 30% !important;
}

/* Position */
.top-0px {
  top: 0px;
}

.top-1px {
  top: 1px;
}

.top-2px {
  top: 2px;
}

.top-3px {
  top: 3px;
}

.top-4px {
  top: 4px;
}

.top-5px {
  top: 5px;
}

.top-6px {
  top: 6px;
}

.top-7px {
  top: 7px;
}

.top-8px {
  top: 8px;
}

.top-9px {
  top: 9px;
}

.top-10px {
  top: 10px;
}

.top-11px {
  top: 11px;
}

.top-12px {
  top: 12px;
}

.top-13px {
  top: 13px;
}

.top-14px {
  top: 14px;
}

.top-15px {
  top: 15px;
}

.top-16px {
  top: 16px;
}

.top-17px {
  top: 17px;
}

.top-18px {
  top: 18px;
}

.top-19px {
  top: 19px;
}

.top-20px {
  top: 20px;
}

.top-21px {
  top: 21px;
}

.top-22px {
  top: 22px;
}

.top-23px {
  top: 23px;
}

.top-24px {
  top: 24px;
}

.top-25px {
  top: 25px;
}

.top-26px {
  top: 26px;
}

.top-27px {
  top: 27px;
}

.top-28px {
  top: 28px;
}

.top-29px {
  top: 29px;
}

.top-30px {
  top: 30px;
}

.top-40px {
  top: 40px;
}

.top-50px {
  top: 50px;
}

.top-60px {
  top: 60px;
}

.top-70px {
  top: 70px;
}

.top-80px {
  top: 80px;
}

.top-90px {
  top: 90px;
}

.top-100px {
  top: 100px;
}

.top-110px {
  top: 110px;
}

.top-120px {
  top: 120px;
}

.top-130px {
  top: 130px;
}

.top-140px {
  top: 140px;
}

.top-150px {
  top: 150px;
}

.right-0px {
  right: 0px;
}

.right-1px {
  right: 1px;
}

.right-2px {
  right: 2px;
}

.right-3px {
  right: 3px;
}

.right-4px {
  right: 4px;
}

.right-5px {
  right: 5px;
}

.right-6px {
  right: 6px;
}

.right-7px {
  right: 7px;
}

.right-8px {
  right: 8px;
}

.right-9px {
  right: 9px;
}

.right-10px {
  right: 10px;
}

.right-11px {
  right: 11px;
}

.right-12px {
  right: 12px;
}

.right-13px {
  right: 13px;
}

.right-14px {
  right: 14px;
}

.right-15px {
  right: 15px;
}

.right-16px {
  right: 16px;
}

.right-17px {
  right: 17px;
}

.right-18px {
  right: 18px;
}

.right-19px {
  right: 19px;
}

.right-20px {
  right: 20px;
}

.right-21px {
  right: 21px;
}

.right-22px {
  right: 22px;
}

.right-23px {
  right: 23px;
}

.right-24px {
  right: 24px;
}

.right-25px {
  right: 25px;
}

.right-26px {
  right: 26px;
}

.right-27px {
  right: 27px;
}

.right-28px {
  right: 28px;
}

.right-29px {
  right: 29px;
}

.right-30px {
  right: 30px;
}

.right-40px {
  right: 40px;
}

.right-50px {
  right: 50px;
}

.right-60px {
  right: 60px;
}

.right-70px {
  right: 70px;
}

.right-80px {
  right: 80px;
}

.right-90px {
  right: 90px;
}

.right-100px {
  right: 100px;
}

.right-110px {
  right: 110px;
}

.right-120px {
  right: 120px;
}

.right-130px {
  right: 130px;
}

.right-140px {
  right: 140px;
}

.right-150px {
  right: 150px;
}

.bottom-0px {
  bottom: 0px;
}

.bottom-1px {
  bottom: 1px;
}

.bottom-2px {
  bottom: 2px;
}

.bottom-3px {
  bottom: 3px;
}

.bottom-4px {
  bottom: 4px;
}

.bottom-5px {
  bottom: 5px;
}

.bottom-6px {
  bottom: 6px;
}

.bottom-7px {
  bottom: 7px;
}

.bottom-8px {
  bottom: 8px;
}

.bottom-9px {
  bottom: 9px;
}

.bottom-10px {
  bottom: 10px;
}

.bottom-11px {
  bottom: 11px;
}

.bottom-12px {
  bottom: 12px;
}

.bottom-13px {
  bottom: 13px;
}

.bottom-14px {
  bottom: 14px;
}

.bottom-15px {
  bottom: 15px;
}

.bottom-16px {
  bottom: 16px;
}

.bottom-17px {
  bottom: 17px;
}

.bottom-18px {
  bottom: 18px;
}

.bottom-19px {
  bottom: 19px;
}

.bottom-20px {
  bottom: 20px;
}

.bottom-21px {
  bottom: 21px;
}

.bottom-22px {
  bottom: 22px;
}

.bottom-23px {
  bottom: 23px;
}

.bottom-24px {
  bottom: 24px;
}

.bottom-25px {
  bottom: 25px;
}

.bottom-26px {
  bottom: 26px;
}

.bottom-27px {
  bottom: 27px;
}

.bottom-28px {
  bottom: 28px;
}

.bottom-29px {
  bottom: 29px;
}

.bottom-30px {
  bottom: 30px;
}

.bottom-40px {
  bottom: 40px;
}

.bottom-50px {
  bottom: 50px;
}

.bottom-60px {
  bottom: 60px;
}

.bottom-70px {
  bottom: 70px;
}

.bottom-80px {
  bottom: 80px;
}

.bottom-90px {
  bottom: 90px;
}

.bottom-100px {
  bottom: 100px;
}

.bottom-110px {
  bottom: 110px;
}

.bottom-120px {
  bottom: 120px;
}

.bottom-130px {
  bottom: 130px;
}

.bottom-140px {
  bottom: 140px;
}

.bottom-150px {
  bottom: 150px;
}

.left-0px {
  left: 0px;
}

.left-1px {
  left: 1px;
}

.left-2px {
  left: 2px;
}

.left-3px {
  left: 3px;
}

.left-4px {
  left: 4px;
}

.left-5px {
  left: 5px;
}

.left-6px {
  left: 6px;
}

.left-7px {
  left: 7px;
}

.left-8px {
  left: 8px;
}

.left-9px {
  left: 9px;
}

.left-10px {
  left: 10px;
}

.left-11px {
  left: 11px;
}

.left-12px {
  left: 12px;
}

.left-13px {
  left: 13px;
}

.left-14px {
  left: 14px;
}

.left-15px {
  left: 15px;
}

.left-16px {
  left: 16px;
}

.left-17px {
  left: 17px;
}

.left-18px {
  left: 18px;
}

.left-19px {
  left: 19px;
}

.left-20px {
  left: 20px;
}

.left-21px {
  left: 21px;
}

.left-22px {
  left: 22px;
}

.left-23px {
  left: 23px;
}

.left-24px {
  left: 24px;
}

.left-25px {
  left: 25px;
}

.left-26px {
  left: 26px;
}

.left-27px {
  left: 27px;
}

.left-28px {
  left: 28px;
}

.left-29px {
  left: 29px;
}

.left-30px {
  left: 30px;
}

.left-40px {
  left: 40px;
}

.left-50px {
  left: 50px;
}

.left-60px {
  left: 60px;
}

.left-70px {
  left: 70px;
}

.left-80px {
  left: 80px;
}

.left-90px {
  left: 90px;
}

.left-100px {
  left: 100px;
}

.left-110px {
  left: 110px;
}

.left-120px {
  left: 120px;
}

.left-130px {
  left: 130px;
}

.left-140px {
  left: 140px;
}

.left-150px {
  left: 150px;
}

.top-minus-0px {
  top: -0px;
}

.top-minus-1px {
  top: -1px;
}

.top-minus-2px {
  top: -2px;
}

.top-minus-3px {
  top: -3px;
}

.top-minus-4px {
  top: -4px;
}

.top-minus-5px {
  top: -5px;
}

.top-minus-6px {
  top: -6px;
}

.top-minus-7px {
  top: -7px;
}

.top-minus-8px {
  top: -8px;
}

.top-minus-9px {
  top: -9px;
}

.top-minus-10px {
  top: -10px;
}

.top-minus-11px {
  top: -11px;
}

.top-minus-12px {
  top: -12px;
}

.top-minus-13px {
  top: -13px;
}

.top-minus-14px {
  top: -14px;
}

.top-minus-15px {
  top: -15px;
}

.top-minus-16px {
  top: -16px;
}

.top-minus-17px {
  top: -17px;
}

.top-minus-18px {
  top: -18px;
}

.top-minus-19px {
  top: -19px;
}

.top-minus-20px {
  top: -20px;
}

.top-minus-21px {
  top: -21px;
}

.top-minus-22px {
  top: -22px;
}

.top-minus-23px {
  top: -23px;
}

.top-minus-24px {
  top: -24px;
}

.top-minus-25px {
  top: -25px;
}

.top-minus-26px {
  top: -26px;
}

.top-minus-27px {
  top: -27px;
}

.top-minus-28px {
  top: -28px;
}

.top-minus-29px {
  top: -29px;
}

.top-minus-30px {
  top: -30px;
}

.top-minus-40px {
  top: -40px;
}

.top-minus-50px {
  top: -50px;
}

.top-minus-60px {
  top: -60px;
}

.top-minus-70px {
  top: -70px;
}

.top-minus-80px {
  top: -80px;
}

.top-minus-90px {
  top: -90px;
}

.top-minus-100px {
  top: -100px;
}

.top-minus-110px {
  top: -110px;
}

.top-minus-120px {
  top: -120px;
}

.top-minus-130px {
  top: -130px;
}

.top-minus-140px {
  top: -140px;
}

.top-minus-150px {
  top: -150px;
}

.right-minus-0px {
  right: -0px;
}

.right-minus-1px {
  right: -1px;
}

.right-minus-2px {
  right: -2px;
}

.right-minus-3px {
  right: -3px;
}

.right-minus-4px {
  right: -4px;
}

.right-minus-5px {
  right: -5px;
}

.right-minus-6px {
  right: -6px;
}

.right-minus-7px {
  right: -7px;
}

.right-minus-8px {
  right: -8px;
}

.right-minus-9px {
  right: -9px;
}

.right-minus-10px {
  right: -10px;
}

.right-minus-11px {
  right: -11px;
}

.right-minus-12px {
  right: -12px;
}

.right-minus-13px {
  right: -13px;
}

.right-minus-14px {
  right: -14px;
}

.right-minus-15px {
  right: -15px;
}

.right-minus-16px {
  right: -16px;
}

.right-minus-17px {
  right: -17px;
}

.right-minus-18px {
  right: -18px;
}

.right-minus-19px {
  right: -19px;
}

.right-minus-20px {
  right: -20px;
}

.right-minus-21px {
  right: -21px;
}

.right-minus-22px {
  right: -22px;
}

.right-minus-23px {
  right: -23px;
}

.right-minus-24px {
  right: -24px;
}

.right-minus-25px {
  right: -25px;
}

.right-minus-26px {
  right: -26px;
}

.right-minus-27px {
  right: -27px;
}

.right-minus-28px {
  right: -28px;
}

.right-minus-29px {
  right: -29px;
}

.right-minus-30px {
  right: -30px;
}

.right-minus-40px {
  right: -40px;
}

.right-minus-50px {
  right: -50px;
}

.right-minus-60px {
  right: -60px;
}

.right-minus-70px {
  right: -70px;
}

.right-minus-80px {
  right: -80px;
}

.right-minus-90px {
  right: -90px;
}

.right-minus-100px {
  right: -100px;
}

.right-minus-110px {
  right: -110px;
}

.right-minus-120px {
  right: -120px;
}

.right-minus-130px {
  right: -130px;
}

.right-minus-140px {
  right: -140px;
}

.right-minus-150px {
  right: -150px;
}

.bottom-minus-0px {
  bottom: -0px;
}

.bottom-minus-1px {
  bottom: -1px;
}

.bottom-minus-2px {
  bottom: -2px;
}

.bottom-minus-3px {
  bottom: -3px;
}

.bottom-minus-4px {
  bottom: -4px;
}

.bottom-minus-5px {
  bottom: -5px;
}

.bottom-minus-6px {
  bottom: -6px;
}

.bottom-minus-7px {
  bottom: -7px;
}

.bottom-minus-8px {
  bottom: -8px;
}

.bottom-minus-9px {
  bottom: -9px;
}

.bottom-minus-10px {
  bottom: -10px;
}

.bottom-minus-11px {
  bottom: -11px;
}

.bottom-minus-12px {
  bottom: -12px;
}

.bottom-minus-13px {
  bottom: -13px;
}

.bottom-minus-14px {
  bottom: -14px;
}

.bottom-minus-15px {
  bottom: -15px;
}

.bottom-minus-16px {
  bottom: -16px;
}

.bottom-minus-17px {
  bottom: -17px;
}

.bottom-minus-18px {
  bottom: -18px;
}

.bottom-minus-19px {
  bottom: -19px;
}

.bottom-minus-20px {
  bottom: -20px;
}

.bottom-minus-21px {
  bottom: -21px;
}

.bottom-minus-22px {
  bottom: -22px;
}

.bottom-minus-23px {
  bottom: -23px;
}

.bottom-minus-24px {
  bottom: -24px;
}

.bottom-minus-25px {
  bottom: -25px;
}

.bottom-minus-26px {
  bottom: -26px;
}

.bottom-minus-27px {
  bottom: -27px;
}

.bottom-minus-28px {
  bottom: -28px;
}

.bottom-minus-29px {
  bottom: -29px;
}

.bottom-minus-30px {
  bottom: -30px;
}

.bottom-minus-40px {
  bottom: -40px;
}

.bottom-minus-50px {
  bottom: -50px;
}

.bottom-minus-60px {
  bottom: -60px;
}

.bottom-minus-70px {
  bottom: -70px;
}

.bottom-minus-80px {
  bottom: -80px;
}

.bottom-minus-90px {
  bottom: -90px;
}

.bottom-minus-100px {
  bottom: -100px;
}

.bottom-minus-110px {
  bottom: -110px;
}

.bottom-minus-120px {
  bottom: -120px;
}

.bottom-minus-130px {
  bottom: -130px;
}

.bottom-minus-140px {
  bottom: -140px;
}

.bottom-minus-150px {
  bottom: -150px;
}

.left-minus-0px {
  left: -0px;
}

.left-minus-1px {
  left: -1px;
}

.left-minus-2px {
  left: -2px;
}

.left-minus-3px {
  left: -3px;
}

.left-minus-4px {
  left: -4px;
}

.left-minus-5px {
  left: -5px;
}

.left-minus-6px {
  left: -6px;
}

.left-minus-7px {
  left: -7px;
}

.left-minus-8px {
  left: -8px;
}

.left-minus-9px {
  left: -9px;
}

.left-minus-10px {
  left: -10px;
}

.left-minus-11px {
  left: -11px;
}

.left-minus-12px {
  left: -12px;
}

.left-minus-13px {
  left: -13px;
}

.left-minus-14px {
  left: -14px;
}

.left-minus-15px {
  left: -15px;
}

.left-minus-16px {
  left: -16px;
}

.left-minus-17px {
  left: -17px;
}

.left-minus-18px {
  left: -18px;
}

.left-minus-19px {
  left: -19px;
}

.left-minus-20px {
  left: -20px;
}

.left-minus-21px {
  left: -21px;
}

.left-minus-22px {
  left: -22px;
}

.left-minus-23px {
  left: -23px;
}

.left-minus-24px {
  left: -24px;
}

.left-minus-25px {
  left: -25px;
}

.left-minus-26px {
  left: -26px;
}

.left-minus-27px {
  left: -27px;
}

.left-minus-28px {
  left: -28px;
}

.left-minus-29px {
  left: -29px;
}

.left-minus-30px {
  left: -30px;
}

.left-minus-40px {
  left: -40px;
}

.left-minus-50px {
  left: -50px;
}

.left-minus-60px {
  left: -60px;
}

.left-minus-70px {
  left: -70px;
}

.left-minus-80px {
  left: -80px;
}

.left-minus-90px {
  left: -90px;
}

.left-minus-100px {
  left: -100px;
}

.left-minus-110px {
  left: -110px;
}

.left-minus-120px {
  left: -120px;
}

.left-minus-130px {
  left: -130px;
}

.left-minus-140px {
  left: -140px;
}

.left-minus-150px {
  left: -150px;
}

/* Font weight */
.fw-100 {
  font-weight: 100 !important;
}

.fw-200 {
  font-weight: 200 !important;
}

.fw-300 {
  font-weight: 300 !important;
}

.fw-400 {
  font-weight: 400 !important;
}

.fw-500 {
  font-weight: 500 !important;
}

.fw-600 {
  font-weight: 600 !important;
}

.fw-700 {
  font-weight: 700 !important;
}

.fw-800 {
  font-weight: 800 !important;
}

.fw-900 {
  font-weight: 900 !important;
}

/* Min height */
.min-h-100px {
  min-height: 100px !important;
}

.min-h-150px {
  min-height: 150px !important;
}

.min-h-200px {
  min-height: 200px !important;
}

.min-h-250px {
  min-height: 250px !important;
}

.min-h-300px {
  min-height: 300px !important;
}

.min-h-350px {
  min-height: 350px !important;
}

.min-h-400px {
  min-height: 400px !important;
}

.min-h-450px {
  min-height: 450px !important;
}

.min-h-500px {
  min-height: 500px !important;
}

.min-h-550px {
  min-height: 550px !important;
}

.min-h-600px {
  min-height: 600px !important;
}

.min-h-650px {
  min-height: 650px !important;
}

.min-h-700px {
  min-height: 700px !important;
}

.min-h-750px {
  min-height: 750px !important;
}

.min-h-800px {
  min-height: 800px !important;
}

.min-h-850px {
  min-height: 850px !important;
}

.min-h-900px {
  min-height: 900px !important;
}

.min-h-950px {
  min-height: 950px !important;
}

/* Opacity */
.opacity-0 {
  opacity: .0;
}

.opacity-1 {
  opacity: .1;
}

.opacity-2 {
  opacity: .2;
}

.opacity-3 {
  opacity: .3;
}

.opacity-4 {
  opacity: .4;
}

.opacity-5 {
  opacity: .5;
}

.opacity-6 {
  opacity: .6;
}

.opacity-7 {
  opacity: .7;
}

.opacity-8 {
  opacity: .8;
}

.opacity-9 {
  opacity: .9;
}

/* Z-index */
.z-index-0 {
  z-index: 0;
}

.z-index-1 {
  z-index: 1;
}

.z-index-2 {
  z-index: 2;
}

.z-index-3 {
  z-index: 3;
}

.z-index-4 {
  z-index: 4;
}

.z-index-5 {
  z-index: 5;
}

.z-index-6 {
  z-index: 6;
}

.z-index-7 {
  z-index: 7;
}

.z-index-8 {
  z-index: 8;
}

.z-index-9 {
  z-index: 9;
}

.z-index-minus-1 {
  z-index: -1;
}

.z-index-minus-2 {
  z-index: -2;
}

/* ===================================
    04. General
====================================== */
.rotate-circle {
  -webkit-animation-name: rotateCircle;
  animation-name: rotateCircle;
  -webkit-animation-duration: 20s;
  animation-duration: 20s;
  -webkit-animation-iteration-count: infinite;
  animation-iteration-count: infinite;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear;
}

@-webkit-keyframes rotateCircle {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }

  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

@keyframes rotateCircle {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }

  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

.text-light {
  color: #fff;
}

.text-light p {
  color: #c2c2c2;
}

/* border line */
.line-top {
  border-top: 1px solid;
}

.line-bottom {
  border-bottom: 1px solid;
}

.line-right {
  border-right: 1px solid;
}

.line-left {
  border-left: 1px solid;
}

/* Separator line */
.separator-line-1px {
  height: 1px;
}

.separator-line-2px {
  height: 2px;
}

.separator-line-3px {
  height: 3px;
}

.separator-line-4px {
  height: 4px;
}

.separator-line-5px {
  height: 5px;
}

/* Separator line size */
.separator-line-small {
  width: 35px;
  height: 1px;
  display: inline-block;
  margin-right: 7px;
}

.separator-line-extra-small {
  width: 18px;
  height: 1px;
  display: inline-block;
  margin-right: 8px;
  vertical-align: middle;
}

.separator-line-very-small {
  width: 12px;
  height: 1px;
  display: inline-block;
  margin-right: 9px;
  vertical-align: middle;
}

/* Opacity */
.opacity-very-light,
.opacity-light,
.opacity-extra-medium,
.opacity-medium,
.opacity-full,
.opacity-full-dark {
  position: absolute;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
}

.opacity-very-light {
  opacity: 0.2;
}

.opacity-light {
  opacity: 0.3;
}

.opacity-extra-medium {
  opacity: 0.5;
}

.opacity-medium {
  opacity: 0.75;
}

.opacity-full {
  opacity: 0.8;
}

.opacity-full-dark {
  opacity: 0.9;
}

/* social-icon-circle */
.social-icon-circle a {
  width: 40px;
  height: 40px;
  line-height: 40px;
  text-align: center;
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 50%;
  font-size: 14px;
}

.social-icon-circle.border-dark a {
  border-color: rgba(0, 0, 0, 0.1);
}

.social-icon-circle.vertical {
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
  text-orientation: mixed;
}

.social-icon-circle.vertical span {
  font-size: 12px;
  text-transform: uppercase;
  margin-top: 15px;
}

/* social-icon-square */
.social-icon-square a {
  width: 40px;
  height: 40px;
  line-height: 40px;
  text-align: center;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 2px;
  font-size: 12px;
}

.social-icon-square.border-dark a {
  border-color: rgba(0, 0, 0, 0.1);
}

/* section lines */
.lines-top {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  -webkit-transform: translateY(-100%);
  -ms-transform: translateY(-100%);
  transform: translateY(-100%);
}

.lines-top.bottom {
  -webkit-transform: translateY(100%) rotate(180deg);
  -ms-transform: translateY(100%) rotate(180deg);
  transform: translateY(100%) rotate(180deg);
  top: auto;
  bottom: 0;
}

.lines-top span {
  width: 100%;
  display: block;
  height: 2px;
  margin-bottom: 10px;
  background: #0f130f;
}

.lines-top span:nth-of-type(2) {
  height: 4px;
  margin-bottom: 8px;
}

.lines-top span:nth-of-type(3) {
  height: 6px;
  margin-bottom: 6px;
}

.lines-top span:nth-of-type(4) {
  height: 8px;
  margin-bottom: 4px;
}

.lines-top span:nth-of-type(5) {
  height: 10px;
  margin-bottom: 2px;
}

/* Tabs */
.tab-content {
  display: none;
}

.tab-content.current {
  display: block;
}

/* Accordion */
.accordion-item {
  border: 0;
  border-radius: 0;
}

.accordion-button,
.accordion-button:not(.collapsed) {
  color: inherit;
  background: transparent;
  -webkit-box-shadow: none;
  box-shadow: none;
  width: 100%;
  padding: 0;
  border: 0;
  border-radius: 0;
}

.accordion-button .row,
.accordion-button:not(.collapsed) .row {
  width: 100%;
}

.accordion-button:after,
.accordion-button:not(.collapsed):after {
  display: none;
}

/* Marquee */
.main-marq.standerd {
  position: relative;
}

.main-marq.standerd:after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: -webkit-gradient(linear, left top, right top, from(#fff), color-stop(transparent), to(#fff));
  background: -webkit-linear-gradient(left, #fff, transparent, #fff);
  background: -o-linear-gradient(left, #fff, transparent, #fff);
  background: linear-gradient(to right, #fff, transparent, #fff);
}

.main-marq.standerd .item-marq {
  padding: 0 50px;
}

.main-marq.standerd .item-marq h2 {
  font-size: 100px;
}

.list-dot {
  margin: 0;
  padding: 0;
}

.list-dot li {
  position: relative;
}

.list-dot li:before {
  content: '';
  position: relative;
  width: 5px;
  height: 5px;
  background: #0f130f;
  border-radius: 50%;
  margin-right: 10px;
  display: inline-block;
}

.list-dot.dark-style li:before {
  background: #000000;
}

.nowrap {
  white-space: nowrap;
}

.text-indent {
  text-indent: 15%;
}

.o-hidden {
  overflow: hidden;
}

.d-block {
  display: block;
}

.d-inline {
  display: inline-block;
}

.d-flex {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.ml-auto {
  margin-left: auto;
}

.invert-icon {
  -webkit-filter: invert(1);
  filter: invert(1);
}

/* Skrollr */
.skrollr-parallax {
  position: relative;
  background-size: cover;
  background-attachment: fixed;
  -o-transition-timing-function: none;
  transition-timing-function: none;
  -webkit-transition-timing-function: none;
  -o-transition-duration: 0s;
  transition-duration: 0s;
  -webkit-transition-duration: 0s;
}

.skrollr-zoom {
  -webkit-transition: none;
  -o-transition: none;
  transition: none;
}

.blur-box {
  backdrop-filter: blur(5px);
  -webkit-backdrop-filter: blur(3px);
}

/* Transform */
.transform-origin-right {
  -webkit-transform-origin: right;
  -ms-transform-origin: right;
  transform-origin: right;
}

.transform-origin-left {
  -webkit-transform-origin: left;
  -ms-transform-origin: left;
  transform-origin: left;
}

/* Transition */
.transition {
  -webkit-transition: all 400ms cubic-bezier(0.37, 0, 0.63, 1);
  -o-transition: all 400ms cubic-bezier(0.37, 0, 0.63, 1);
  transition: all 400ms cubic-bezier(0.37, 0, 0.63, 1);
}

.transition-inner-all * {
  -webkit-transition: all 400ms cubic-bezier(0.37, 0, 0.63, 1);
  -o-transition: all 400ms cubic-bezier(0.37, 0, 0.63, 1);
  transition: all 400ms cubic-bezier(0.37, 0, 0.63, 1);
}

.no-transition {
  -webkit-transition: 0s;
  -o-transition: 0s;
  transition: 0s;
}

/* Pointer events */
.pointer-events-none {
  pointer-events: none;
}

.pointer-events-all {
  pointer-events: all;
}

.underline {
  text-decoration: underline;
}

/* Users */
.users-style1 .fit-img {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  overflow: hidden;
  margin-left: -15px;
}

.users-style1 .fit-img:first-of-type {
  margin-left: 0;
}

.users-style1 h6 {
  font-size: 12px;
  text-transform: uppercase;
  padding: 12px 25px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  background: rgba(255, 255, 255, 0.05);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  border-radius: 30px;
  margin-left: 15px;
}

.users-style2 span,
.users-style2 .fit-img {
  width: 40px;
  height: 40px !important;
  border-radius: 50%;
  overflow: hidden;
  margin-left: -15px;
  display: inline-block;
  border: 1px solid rgba(251, 251, 251, 0.5);
}

.users-style2 span:first-of-type,
.users-style2 .fit-img:first-of-type {
  margin-left: 0;
}

.users-style2 span:last-of-type,
.users-style2 .fit-img:last-of-type {
  color: #000;
  background: #fff;
  line-height: 40px;
  text-align: center;
  position: relative;
  z-index: 3;
}

.users-style3 .users .fit-img,
.users-style3 .users span {
  width: 40px;
  height: 40px;
  line-height: 40px;
  text-align: center;
  border-radius: 5px;
  border: 1px solid #fff;
  overflow: hidden;
  margin-left: -25px;
}

.users-style3 .users .fit-img:first-of-type,
.users-style3 .users span:first-of-type {
  margin-left: 0;
}

.users-style3 .users .text {
  background: #141414;
  color: #fff;
  font-size: 12px;
}

/* progress */
.progress-style1 .skill-progress {
  height: 8px;
  border-radius: 10px;
  background: rgba(111, 111, 111, 0.1);
}

.progress-style1 .skill-progress .progres {
  border-radius: 10px;
}

.progress-style1 .skill-progress .progres:after {
  padding: 5px 15px;
  border-radius: 30px;
  background: #141414;
  color: #fff;
  top: -40px;
  right: -20px;
}

/* accordion */
.accordion-style1 .accordion-item {
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  padding: 30px 0;
  background: transparent;
}

.accordion-style1 .accordion-item .icon-arrow {
  width: 40px;
  height: 40px;
  line-height: 40px;
  border: 1px solid transparent;
  border-radius: 50%;
  padding: 10px;
}

.accordion-style1 .accordion-item .accordion-button:not(.collapsed) .icon-arrow {
  border-color: rgba(0, 0, 0, 0.2);
}

.accordion-style1 .accordion-header .tags a {
  padding: 10px 20px;
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 30px;
  margin: 0 -5px;
}

.accordion-style1.bord-style2 .accordion-item {
  border-color: rgba(255, 255, 255, 0.1);
}

.accordion-style1.bord-style2 .accordion-item .accordion-button:not(.collapsed) .arrow {
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
}

.accordion-style1.bord-style2 .accordion-body {
  padding: 0;
}

.accordion-style2 .accordion-item {
  padding: 25px;
  background: rgba(255, 255, 255, 0.5);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  border-radius: 15px;
  -webkit-box-shadow: 0px 10px 50px rgba(0, 0, 0, 0.03);
  box-shadow: 0px 10px 50px rgba(0, 0, 0, 0.03);
  border: 0;
}

.accordion-style2 .accordion-item .accordion-button:not(.collapsed) .arrow {
  -webkit-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
}

.accordion-style2 .accordion-item.active h6 {
  font-weight: 600;
}

.accordion-style2 .accordion-item .accordion-body {
  padding: 15px 0 0;
}

/* Overflow */
.overflow-visible {
  overflow: visible;
}

.overflow-x-hidden {
  overflow-x: hidden;
}

.overflow-y-hidden {
  overflow-y: hidden;
}

/* Overlap section */
.overlap-section {
  position: relative;
}

.overlap-height {
  -webkit-transition: .3s height;
  -o-transition: .3s height;
  transition: .3s height;
}

/* Tags */
.tags-style1 {
  font-size: 14px;
}

.tags-style1 span,
.tags-style1 a {
  padding: 12px 25px;
  background: rgba(255, 255, 255, 0.05);
  border-radius: 30px;
  margin-top: 5px;
}

.lines-bg {
  background-image: -webkit-linear-gradient(315deg, transparent 45%, rgba(255, 255, 255, 0.1) 45%, rgba(255, 255, 255, 0.1) 55%, transparent 0);
  background-image: -o-linear-gradient(315deg, transparent 45%, rgba(255, 255, 255, 0.1) 45%, rgba(255, 255, 255, 0.1) 55%, transparent 0);
  background-image: linear-gradient(135deg, transparent 45%, rgba(255, 255, 255, 0.1) 45%, rgba(255, 255, 255, 0.1) 55%, transparent 0);
  background-size: 5px 5px;
}

.v-align-between {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}

/* CSS filter */
.filter-mix-100 {
  -webkit-filter: grayscale(100%) invert(100%);
  filter: grayscale(100%) invert(100%);
}

.filter-grayscale-100 {
  -webkit-filter: grayscale(100%);
  filter: grayscale(100%);
}

/* Input */
input,
select,
textarea,
.form-control,
.form-select {
  padding: 12px 25px;
  width: 100%;
  max-width: 100%;
  resize: none;
  outline: none;
  font-size: 16px;
  border: 1px solid #e4e4e4;
  color: var(--medium-gray);
  line-height: inherit;
  word-break: normal;
}

.form-select {
  color: var(--medium-gray);
}

.form-select:focus {
  border-color: #dfdfdf;
}

input:focus,
select:focus,
textarea:focus,
.form-control:focus {
  border: 1px solid #c2c2c2;
  -webkit-box-shadow: none;
  box-shadow: none;
  color: var(--medium-gray);
}

.search-error {
  border-color: var(--red);
}

/* Select */
.select {
  position: relative;
}

.select:after {
  content: "\e842";
  font-family: feather !important;
  right: 20px;
  top: 50%;
  height: 34px;
  position: absolute;
  pointer-events: none;
  font-size: 22px;
  margin-top: -15px;
}

/* Input size */
.input-small,
.textarea-small,
.select-small {
  padding: 7px 15px;
  font-size: 12px;
}

.input-medium,
.textarea-medium,
.select-medium {
  padding: 14px 28px;
}

.input-large {
  padding: 16px 32px;
}

.form-control.is-invalid:focus {
  -webkit-box-shadow: none;
  box-shadow: none;
}

.main-marq {
  position: relative;
  padding: 0;
  overflow: hidden !important;
}

.main-marq .box h2,
.main-marq .box h3,
.main-marq .box h4,
.main-marq .box h5 {
  white-space: nowrap;
}

.main-marq .slide-har {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.main-marq .box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.slide-har {
  position: relative;
}

.slide-har.st1 .box {
  position: relative;
  -webkit-animation: slide-har 80s linear infinite;
  animation: slide-har 80s linear infinite;
}

.slide-har.st2 .box {
  position: relative;
  -webkit-animation: slide-har-revers 80s linear infinite;
  animation: slide-har-revers 80s linear infinite;
}

@-webkit-keyframes slide-har {
  0% {
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
  }

  100% {
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
  }
}

@keyframes slide-har {
  0% {
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
  }

  100% {
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
  }
}

@-webkit-keyframes slide-har-revers {
  100% {
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
  }

  0% {
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
  }
}

@keyframes slide-har-revers {
  100% {
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
  }

  0% {
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
  }
}

/* Stroke Text */
.stroke-light {
  -webkit-text-fill-color: transparent;
  -webkit-text-stroke-width: .5px;
  -webkit-text-stroke-color: #fff;
}

.stroke {
  -webkit-text-fill-color: transparent;
  -webkit-text-stroke-width: .5px;
  -webkit-text-stroke-color: #000;
}

/* Swiper controls */
.swiper-contr-style1 {
  position: relative;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  display: inline-block;
  padding: 5px 15px;
  border-radius: 40px;
  background: rgba(0, 0, 0, 0.02);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}

.swiper-contr-style1 .swiper-pagination {
  position: static;
  margin: -4px 15px 0;
}

.swiper-contr-style1 .swiper-pagination span {
  margin: 0 8px;
  width: 6px;
  height: 6px;
  border-radius: 50%;
}

.swiper-contr-style1 .swiper-pagination .swiper-pagination-bullet-active {
  background: #111;
}

.swiper-contr-style1 .swiper-button-prev,
.swiper-contr-style1 .swiper-button-next {
  position: static;
  margin: 0;
  width: auto;
  height: auto;
  display: inline-block;
  color: inherit;
}

.swiper-contr-style1 .swiper-button-prev:after,
.swiper-contr-style1 .swiper-button-next:after {
  font-size: 13px;
}

.swiper-contr-style2 {
  position: relative;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  display: inline-block;
  padding: 8px 15px;
  border-radius: 40px;
  border: 1px solid rgba(0, 0, 0, 0.2);
}

.swiper-contr-style2 .swiper-pagination {
  position: static;
  margin: 0px 15px 0;
  font-size: 14px;
}

.swiper-contr-style2 .swiper-pagination span {
  margin: 0 8px;
  width: 6px;
  height: 6px;
  border-radius: 50%;
}

.swiper-contr-style2 .swiper-pagination .swiper-pagination-bullet-active {
  background: #111;
}

.swiper-contr-style2 .swiper-pagination .swiper-pagination-current {
  position: relative;
  padding-right: 30px;
}

.swiper-contr-style2 .swiper-pagination .swiper-pagination-current:after {
  content: '/';
  position: absolute;
  right: 0;
  top: -1px;
}

.swiper-contr-style2 .swiper-button-prev,
.swiper-contr-style2 .swiper-button-next {
  position: static;
  margin: 0;
  width: auto;
  height: auto;
  display: inline-block;
  color: inherit;
}

.swiper-contr-style2 .swiper-button-prev:after,
.swiper-contr-style2 .swiper-button-next:after {
  font-size: 13px;
}

.swiper-contr-style3 {
  position: relative;
}

.swiper-contr-style3 .swiper-pagination {
  position: static;
  margin: -4px 15px 0;
}

.swiper-contr-style3 .swiper-pagination span {
  margin: 0 8px;
  width: 6px;
  height: 6px;
  border-radius: 50%;
}

.swiper-contr-style3 .swiper-pagination .swiper-pagination-bullet-active {
  background: #111;
}

.swiper-contr-style3 .swiper-button-prev,
.swiper-contr-style3 .swiper-button-next {
  position: static;
  margin: 0;
  width: 50px;
  height: 50px;
  line-height: 50px;
  text-align: center;
  border-radius: 50%;
  border: 1px solid rgba(0, 0, 0, 0.1);
  display: inline-block;
  color: inherit;
}

.swiper-contr-style3 .swiper-button-prev:after,
.swiper-contr-style3 .swiper-button-next:after {
  font-size: 13px;
}

.swiper-contr-style3 .swiper-button-prev:hover,
.swiper-contr-style3 .swiper-button-next:hover {
  background: #000000;
  color: #ffffff;
}

/* Swiper width auto */
.swiper-width-auto .swiper-slide {
  width: auto;
}

/* Full screen */
.full-screen {
  height: 100vh;
}

.full-screen.top-space-margin {
  height: calc(100vh - 96px);
}

.pattern-overlay {
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  pointer-events: none;
}

/* Will change */
.will-change-transform * {
  will-change: transform;
}

.will-change-inherit * {
  will-change: inherit;
}

.animation-rotation {
  -webkit-animation: rotation 8s infinite linear;
}

@-webkit-keyframes rotation {
  from {
    -webkit-transform: rotate(0deg);
  }

  to {
    -webkit-transform: rotate(359deg);
  }
}

/* Float animation */
.animation-float {
  -webkit-animation: float 2000ms linear 500ms infinite alternate both;
  animation: float 2000ms linear 500ms infinite alternate both;
}

@-webkit-keyframes float {
  0% {
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
  }

  50% {
    -webkit-transform: translateY(15px);
    transform: translateY(15px);
  }

  100% {
    -webkit-transform: translateY(30px);
    transform: translateY(30px);
  }
}

@keyframes float {
  0% {
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
  }

  50% {
    -webkit-transform: translateY(15px);
    transform: translateY(15px);
  }

  100% {
    -webkit-transform: translateY(30px);
    transform: translateY(30px);
  }
}

.animation-float-small {
  -webkit-animation: float 2000ms linear 500ms infinite alternate both;
  animation: float 2000ms linear 500ms infinite alternate both;
}

@keyframes float {
  0% {
    -webkit-transform: translateY(0px);
    transform: translateY(0px);
  }

  50% {
    -webkit-transform: translateY(5px);
    transform: translateY(5px);
  }

  100% {
    -webkit-transform: translateY(10px);
    transform: translateY(10px);
  }
}

/* Zoom animation */
.animation-zoom {
  -webkit-animation: zoom-in-zoom-out 2000ms linear 500ms infinite alternate both;
  animation: zoom-in-zoom-out 2000ms linear 500ms infinite alternate both;
}

@-webkit-keyframes zoom-in-zoom-out {
  0% {
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
  }

  50% {
    -webkit-transform: scale(1.2, 1.2);
    transform: scale(1.2, 1.2);
  }

  100% {
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
  }
}

@keyframes zoom-in-zoom-out {
  0% {
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
  }

  50% {
    -webkit-transform: scale(1.2, 1.2);
    transform: scale(1.2, 1.2);
  }

  100% {
    -webkit-transform: scale(1, 1);
    transform: scale(1, 1);
  }
}

/* ===================================
    06. Background and border
====================================== */
/* Background color */
.bg-base-color {
  background-color: var(--base-color);
}

.bg-dark-gray,
.bg-dark-gray:focus {
  background-color: var(--dark-gray);
}

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

.bg-alt-black {
  background-color: var(--alt-black);
  color: #fff;
}

.bg-medium-gray {
  background-color: var(--medium-gray);
}

.bg-light-medium-gray {
  background-color: var(--light-medium-gray);
}

.bg-extra-medium-gray {
  background-color: var(--extra-medium-gray);
}

.bg-light-gray {
  background-color: var(--light-gray);
}

.bg-very-light-gray {
  background-color: var(--very-light-gray);
}

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

.bg-light-red {
  background-color: var(--light-red);
}

.bg-light-yellow {
  background-color: var(--light-yellow);
}

.bg-light-green {
  background-color: var(--light-green);
}

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

.bg-crusoe-green {
  background-color: var(--crusoe-green);
}

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

.bg-charcoal-blue {
  background-color: var(--charcoal-blue);
}

.bg-slate-blue {
  background-color: var(--slate-blue);
}

.bg-medium-slate-blue {
  background-color: var(--medium-slate-blue);
}

.bg-extra-medium-slate-blue {
  background-color: var(--extra-medium-slate-blue);
}

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

.bg-extra-dark-slate-blue {
  background-color: var(--extra-dark-slate-blue);
}

.bg-extra-very-slate-blue {
  background-color: var(--extra-very-slate-blue);
  color: #fff;
}

.bg-tussock-yellow {
  background-color: var(--tussock-yellow);
}

.bg-solitude-blue {
  background-color: var(--solitude-blue);
}

.bg-aluminium-grey {
  background-color: var(--aluminium-grey);
}

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

.bg-white-ice {
  background-color: var(--white-ice);
}

.bg-golden-yellow {
  background-color: var(--golden-yellow);
}

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

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

.bg-light-majorelle-blue {
  background-color: var(--light-majorelle-blue);
}

.bg-majorelle-blue {
  background-color: var(--majorelle-blue);
}

.bg-spring-wood {
  background-color: var(--spring-wood);
}

.bg-tropical-blue {
  background-color: var(--tropical-blue);
}

.bg-cornflower-blue {
  background-color: var(--cornflower-blue);
}

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

.bg-seal-brown {
  background-color: var(--seal-brown);
}

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

.bg-dark-gray-transparent {
  background-color: rgba(35, 35, 35, 0.8);
}

.bg-dark-gray-transparent-light {
  background-color: rgba(35, 35, 35, 0.2);
}

.bg-dark-gray-transparent-medium {
  background-color: rgba(35, 35, 35, 0.4);
}

.bg-medium-gray-transparent {
  background-color: rgba(111, 111, 111, 0.1);
}

.bg-light-gray-transparent {
  background-color: #fbfbfb;
}

.bg-medium-gray-transparent {
  background-color: rgba(136, 136, 136, 0.3);
}

.bg-black-transparent-light {
  background-color: rgba(0, 0, 0, 0.2);
}

.bg-black-transparent-medium {
  background-color: rgba(0, 0, 0, 0.5);
}

.bg-black-transparent {
  background-color: rgba(0, 0, 0, 0.8);
}

.bg-white-transparent-extra-light,
.bg-white-transparent-extra-light:focus {
  background-color: rgba(255, 255, 255, 0.1);
}

.bg-white-transparent-very-light {
  background-color: rgba(255, 255, 255, 0.2);
}

.bg-white-transparent-light {
  background-color: rgba(255, 255, 255, 0.4);
}

.bg-white-transparent {
  background-color: rgba(255, 255, 255, 0.7);
}

/* Background image */
.bg-img {
  background-size: cover !important;
}

.contain-background {
  background-size: contain !important;
}

.cover-background {
  background-repeat: no-repeat;
  background-size: cover;
  overflow: hidden;
  background-position: center center;
}

.fix-background {
  position: relative;
  background-size: cover;
  background-position: center center;
  background-repeat: no-repeat;
  background-attachment: fixed;
}

.fit-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center;
}

.background-size-inherit {
  background-size: inherit;
}

.background-attachment-inherit {
  background-attachment: inherit;
}

.background-position-left {
  background-position: left center;
}

.background-position-left-bottom {
  background-position: left bottom;
}

.background-position-left-center {
  background-position: left center;
}

.background-position-right {
  background-position: right center;
}

.background-position-right-top {
  background-position: right top;
}

.background-position-center-top {
  background-position: center top;
}

.background-position-left-top {
  background-position: left top;
}

.background-position-right-bottom {
  background-position: right bottom;
}

.background-position-center-bottom {
  background-position: center bottom;
}

.background-repeat {
  background-repeat: repeat;
}

.background-no-repeat {
  background-repeat: no-repeat;
}

.background-no-repeat-y {
  background-repeat-y: no-repeat;
}

.background-position-center {
  background-position: center;
}

/* Background size */
.background-size-100 {
  background-size: 100%;
}

.background-size-auto-100 {
  background-size: auto 100%;
}

/* Border style */
.border-dotted {
  border-style: dotted;
}

.border-dashed {
  border-style: dashed;
}

.border-solid {
  border-style: solid;
}

.border-double {
  border-style: double;
}

.border-groove {
  border-style: groove;
}

.border-ridge {
  border-style: ridge;
}

.border-inset {
  border-style: inset;
}

.border-outset {
  border-style: outset;
}

.border-none {
  border-style: none;
}

.border-hidden {
  border-style: hidden;
}

/* Border color */
.border-color-base-color {
  border-color: var(--base-color);
}

.border-color-white {
  border-color: var(--white);
}

.border-color-dark-gray {
  border-color: var(--dark-gray);
}

.border-color-medium-gray {
  border-color: var(--medium-gray);
}

.border-color-light-gray {
  border-color: var(--light-gray);
}

.border-color-very-light-gray {
  border-color: var(--very-light-gray);
}

.border-color-light-medium-gray {
  border-color: var(--light-medium-gray);
}

.border-color-extra-medium-gray {
  border-color: var(--extra-medium-gray);
}

.border-color-yellow {
  border-color: var(--yellow);
}

.border-color-orange {
  border-color: var(--orange);
}

.border-color-red {
  border-color: var(--red);
}

.border-color-transparent-dark-very-light {
  border-color: rgba(35, 35, 35, 0.1);
}

.border-color-transparent-dark-light {
  border-color: rgba(35, 35, 35, 0.2);
}

.border-color-transparent-white-very-light {
  border-color: rgba(255, 255, 255, 0.3);
}

.border-color-transparent-white-light {
  border-color: rgba(0, 0, 0, 0.1);
}

.border-color-transparent-white {
  border-color: rgba(255, 255, 255, 0.6);
}

.border-color-transparent {
  border-color: transparent;
}

.border-color-transparent-on-hover:hover {
  border-color: transparent;
}

/* Border radius */
.border-radius-0px {
  border-radius: 0;
}

.border-radius-1px {
  border-radius: 1px;
}

.border-radius-2px {
  border-radius: 2px;
}

.border-radius-3px {
  border-radius: 3px;
}

.border-radius-4px {
  border-radius: 4px;
}

.border-radius-5px {
  border-radius: 5px;
}

.border-radius-6px {
  border-radius: 6px;
}

.border-radius-7px {
  border-radius: 7px;
}

.border-radius-8px {
  border-radius: 8px;
}

.border-radius-9px {
  border-radius: 9px;
}

.border-radius-10px {
  border-radius: 10px;
}

.border-radius-15px {
  border-radius: 15px;
}

.border-radius-18px {
  border-radius: 18px;
}

.border-radius-20px {
  border-radius: 20px;
}

.border-radius-22px {
  border-radius: 22px;
}

.border-radius-24px {
  border-radius: 24px;
}

.border-radius-26px {
  border-radius: 26px;
}

.border-radius-30px {
  border-radius: 30px;
}

.border-radius-40px {
  border-radius: 40px;
}

.border-radius-50px {
  border-radius: 50px;
}

.border-radius-80px {
  border-radius: 80px;
}

.border-radius-100px {
  border-radius: 100px;
}

.border-radius-50 {
  border-radius: 50%;
}

.border-radius-100 {
  border-radius: 100%;
}

.no-border-radius {
  border-radius: 0;
}

.border-radius-top-left {
  border-radius: 10px 0 0 10px;
}

/* Parallax background */
.parallax {
  position: relative;
  background-size: cover;
  overflow: hidden;
  background-attachment: fixed;
  -o-transition-timing-function: none;
  transition-timing-function: none;
  -webkit-transition-timing-function: none;
  -o-transition-duration: 0s;
  transition-duration: 0s;
  -webkit-transition-duration: 0s;
}

/* ===================================
    07. Width
====================================== */
.w-1px {
  width: 1px;
}

.w-2px {
  width: 2px;
}

.w-3px {
  width: 3px;
}

.w-4px {
  width: 4px;
}

.w-5px {
  width: 5px;
}

.w-6px {
  width: 6px;
}

.w-7px {
  width: 7px;
}

.w-8px {
  width: 8px;
}

.w-9px {
  width: 9px;
}

.w-10px {
  width: 10px;
}

.w-15px {
  width: 15px;
}

.w-20px {
  width: 20px;
}

.w-25px {
  width: 25px;
}

.w-30px {
  width: 30px;
}

.w-35px {
  width: 35px;
}

.w-40px {
  width: 40px;
}

.w-45px {
  width: 45px;
}

.w-50px {
  width: 50px;
}

.w-55px {
  width: 55px;
}

.w-60px {
  width: 60px;
}

.w-65px {
  width: 65px;
}

.w-70px {
  width: 70px;
}

.w-75px {
  width: 75px;
}

.w-80px {
  width: 80px;
}

.w-85px {
  width: 85px;
}

.w-90px {
  width: 90px;
}

.w-95px {
  width: 95px;
}

.w-100px {
  width: 100px;
}

.w-110px {
  width: 110px;
}

.w-120px {
  width: 120px;
}

.w-130px {
  width: 130px;
}

.w-140px {
  width: 140px;
}

.w-150px {
  width: 150px;
}

.w-160px {
  width: 160px;
}

.w-170px {
  width: 170px;
}

.w-180px {
  width: 180px;
}

.w-190px {
  width: 190px;
}

.w-200px {
  width: 200px;
}

.w-210px {
  width: 210px;
}

.w-220px {
  width: 220px;
}

.w-230px {
  width: 230px;
}

.w-240px {
  width: 240px;
}

.w-250px {
  width: 250px;
}

.w-260px {
  width: 260px;
}

.w-270px {
  width: 270px;
}

.w-280px {
  width: 280px;
}

.w-290px {
  width: 290px;
}

.w-300px {
  width: 300px;
}

.w-310px {
  width: 310px;
}

.w-320px {
  width: 320px;
}

.w-330px {
  width: 330px;
}

.w-340px {
  width: 340px;
}

.w-350px {
  width: 350px;
}

.w-360px {
  width: 360px;
}

.w-370px {
  width: 370px;
}

.w-380px {
  width: 380px;
}

.w-390px {
  width: 390px;
}

.w-400px {
  width: 400px;
}

.w-450px {
  width: 450px;
}

.w-500px {
  width: 500px;
}

.w-550px {
  width: 550px;
}

.w-600px {
  width: 600px;
}

.w-650px {
  width: 650px;
}

.w-700px {
  width: 700px;
}

.w-750px {
  width: 750px;
}

.w-800px {
  width: 800px;
}

.w-850px {
  width: 850px;
}

.w-900px {
  width: 900px;
}

.w-950px {
  width: 950px;
}

.w-1000px {
  width: 1000px;
}

.w-10 {
  width: 10%;
}

.w-15 {
  width: 15%;
}

.w-20 {
  width: 20%;
}

.w-25 {
  width: 25%;
}

.w-30 {
  width: 30%;
}

.w-35 {
  width: 35%;
}

.w-40 {
  width: 40%;
}

.w-45 {
  width: 45%;
}

.w-50 {
  width: 50%;
}

.w-55 {
  width: 55%;
}

.w-60 {
  width: 60%;
}

.w-65 {
  width: 65%;
}

.w-70 {
  width: 70%;
}

.w-75 {
  width: 75%;
}

.w-80 {
  width: 80%;
}

.w-85 {
  width: 85%;
}

.w-90 {
  width: 90%;
}

.w-95 {
  width: 95%;
}

.w-100 {
  width: 100%;
}

.w-auto {
  width: auto;
}

/* ===================================
    08. Height
====================================== */
.h-1px {
  height: 1px;
}

.h-2px {
  height: 2px;
}

.h-3px {
  height: 3px;
}

.h-4px {
  height: 4px;
}

.h-5px {
  height: 5px;
}

.h-6px {
  height: 6px;
}

.h-7px {
  height: 7px;
}

.h-8px {
  height: 8px;
}

.h-9px {
  height: 9px;
}

.h-10px {
  height: 10px;
}

.h-11px {
  height: 11px;
}

.h-12px {
  height: 12px;
}

.h-13px {
  height: 13px;
}

.h-14px {
  height: 14px;
}

.h-15px {
  height: 15px;
}

.h-20px {
  height: 20px;
}

.h-25px {
  height: 25px;
}

.h-30px {
  height: 30px;
}

.h-35px {
  height: 35px;
}

.h-40px {
  height: 40px;
}

.h-42px {
  height: 42px;
}

.h-45px {
  height: 45px;
}

.h-50px {
  height: 50px;
}

.h-55px {
  height: 55px;
}

.h-60px {
  height: 60px;
}

.h-65px {
  height: 65px;
}

.h-70px {
  height: 70px;
}

.h-75px {
  height: 75px;
}

.h-80px {
  height: 80px;
}

.h-85px {
  height: 85px;
}

.h-90px {
  height: 90px;
}

.h-95px {
  height: 95px;
}

.h-100px {
  height: 100px;
}

.h-110px {
  height: 110px;
}

.h-120px {
  height: 120px;
}

.h-130px {
  height: 130px;
}

.h-140px {
  height: 140px;
}

.h-150px {
  height: 150px;
}

.h-160px {
  height: 160px;
}

.h-170px {
  height: 170px;
}

.h-180px {
  height: 180px;
}

.h-190px {
  height: 190px;
}

.h-200px {
  height: 200px;
}

.h-210px {
  height: 210px;
}

.h-220px {
  height: 220px;
}

.h-230px {
  height: 230px;
}

.h-240px {
  height: 240px;
}

.h-250px {
  height: 250px;
}

.h-260px {
  height: 260px;
}

.h-270px {
  height: 270px;
}

.h-280px {
  height: 280px;
}

.h-290px {
  height: 290px;
}

.h-300px {
  height: 300px;
}

.h-350px {
  height: 350px;
}

.h-400px {
  height: 400px;
}

.h-450px {
  height: 450px;
}

.h-480px {
  height: 480px;
}

.h-500px {
  height: 500px;
}

.h-550px {
  height: 550px;
}

.h-580px {
  height: 580px;
}

.h-600px {
  height: 600px;
}

.h-650px {
  height: 650px;
}

.h-700px {
  height: 700px;
}

.h-750px {
  height: 750px;
}

.h-800px {
  height: 800px;
}

.h-850px {
  height: 850px;
}

.h-auto {
  height: auto;
}

/* Screen height */
.extra-very-small-screen {
  height: 250px;
}

.extra-small-screen {
  height: 300px;
}

.small-screen {
  height: 400px;
}

.one-half-screen {
  height: 600px;
}

.one-third-screen {
  height: 700px;
}

.one-fourth-screen {
  height: 800px;
}

.one-fifth-screen {
  height: 900px;
}

.one-sixth-screen {
  height: 1000px;
}

.one-seventh-screen {
  height: 1200px;
}

@media (prefers-reduced-motion: no-preference) {
  :root {
    scroll-behavior: auto;
  }
}

/* overlay dark&light */
[data-overlay-dark],
[data-overlay-light] {
  position: relative;
}

[data-overlay-dark] .container,
[data-overlay-dark] .container-xxl,
[data-overlay-light] .container-xxl,
[data-overlay-light] .container {
  position: relative;
  z-index: 7;
}

[data-overlay-dark]:before,
[data-overlay-light]:before {
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 1;
  pointer-events: none;
}

[data-overlay-dark]:before {
  background: #141414;
}

[data-overlay-light]:before {
  background: #fff;
}

[data-overlay-dark],
[data-overlay-dark] h1,
[data-overlay-dark] h2,
[data-overlay-dark] h3,
[data-overlay-dark] h4,
[data-overlay-dark] h5,
[data-overlay-dark] h6,
[data-overlay-dark] span,
.bg-dark h1,
.bg-dark h2,
.bg-dark h3,
.bg-dark h4,
.bg-dark h5,
.bg-dark h6,
.bg-dark span,
.bg-color h1,
.bg-color h2,
.bg-color h3,
.bg-color h4,
.bg-color h5,
.bg-color h6,
.bg-color span {
  color: #fff;
}

[data-overlay-dark="0"]:before,
[data-overlay-light="0"]:before {
  opacity: 0;
}

[data-overlay-dark="1"]:before,
[data-overlay-light="1"]:before {
  opacity: .1;
}

[data-overlay-dark="2"]:before,
[data-overlay-light="2"]:before {
  opacity: .2;
}

[data-overlay-dark="3"]:before,
[data-overlay-light="3"]:before {
  opacity: .3;
}

[data-overlay-dark="4"]:before,
[data-overlay-light="4"]:before {
  opacity: .4;
}

[data-overlay-dark="5"]:before,
[data-overlay-light="5"]:before {
  opacity: .5;
}

[data-overlay-dark="6"]:before,
[data-overlay-light="6"]:before {
  opacity: .6;
}

[data-overlay-dark="7"]:before,
[data-overlay-light="7"]:before {
  opacity: .7;
}

[data-overlay-dark="8"]:before,
[data-overlay-light="8"]:before {
  opacity: .8;
}

[data-overlay-dark="9"]:before,
[data-overlay-light="9"]:before,
[data-overlay-color="9"]:before {
  opacity: .9;
}

[data-overlay-dark="10"]:before,
[data-overlay-light="10"]:before {
  opacity: 1;
}

/* Grid */
.row.sm-marg {
  margin-left: -5px;
  margin-right: -5px;
}

.row.sm-marg>* {
  padding-left: 5px;
  padding-right: 5px;
}

.row.stand-marg {
  margin-left: -20px;
  margin-right: -20px;
}

.row.stand-marg>* {
  padding-left: 20px;
  padding-right: 20px;
}

.row.md-marg {
  margin-left: -25px;
  margin-right: -25px;
}

.row.md-marg>* {
  padding-left: 25px;
  padding-right: 25px;
}

.row.lg-marg {
  margin-left: -40px;
  margin-right: -40px;
}

.row.lg-marg>* {
  padding-left: 40px;
  padding-right: 40px;
}

.row.xlg-marg {
  margin-left: -50px;
  margin-right: -50px;
}

.row.xlg-marg>* {
  padding-left: 50px;
  padding-right: 50px;
}

.row.xxlg-marg {
  margin-left: -80px;
  margin-right: -80px;
}

.row.xxlg-marg>* {
  padding-left: 80px;
  padding-right: 80px;
}

.container-xxl {
  max-width: 1440px;
}

.container {
  max-width: 1320px;
}

/* ===================================
    06. Typography
====================================== */
/* Heading */
h1,
.h1 {
  font-size: 64px;
}

h2,
.h2 {
  font-size: 48px;
}

h3,
.h3 {
  font-size: 36px;
}

h4 {
  font-size: 32px;
}

h5 {
  font-size: 28px;
}

h6 {
  font-size: 22px;
}

h6.regular {
  font-size: 18px;
}

.lg-text {
  font-size: 96px;
}

.md-text {
  font-size: 54px;
}

.sm-text {
  font-size: 20px;
}

.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
  margin-top: 0;
  margin-bottom: 0;
  line-height: 1.2;
  font-weight: 500;
}

p {
  color: #4a4a4b;
  font-size: 17px;
  line-height: 1.5;
  margin-bottom: 0;
}

span,
a {
  display: inline-block;
}

a {
  text-decoration: none;
  color: inherit;
}

a:hover,
a:focus,
a:active {
  color: inherit;
}

/* Font custom */
.font-style-italic {
  font-style: italic;
}

.hover-text {
  display: none;
}

b,
strong {
  font-weight: 700;
}

.text-white-space-nowrap {
  white-space: nowrap;
}

.text-white-space-normal {
  white-space: normal;
}

.text-transform-none {
  text-transform: none !important;
}

.text-uppercase-inherit {
  text-transform: inherit !important;
}

.text-uppercase {
  text-transform: uppercase;
}

.word-break-normal {
  word-break: normal;
}

.vertical-align-top {
  vertical-align: top;
}

.text-align-left {
  text-align: left;
}

.text-align-right {
  text-align: right;
}

.text-align-center {
  text-align: center;
}

/* Font size */
.fs-0 {
  font-size: 0 !important;
}

.fs-9 {
  font-size: 9px !important;
}

.fs-10 {
  font-size: 10px !important;
}

.fs-11 {
  font-size: 11px !important;
}

.fs-12 {
  font-size: 12px !important;
}

.fs-13 {
  font-size: 13px !important;
}

.fs-14 {
  font-size: 14px !important;
}

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

.fs-16 {
  font-size: 16px !important;
}

.fs-17 {
  font-size: 17px !important;
}

.fs-18 {
  font-size: 18px !important;
}

.fs-19 {
  font-size: 19px !important;
}

.fs-20 {
  font-size: 20px !important;
}

.fs-22 {
  font-size: 22px !important;
}

.fs-24 {
  font-size: 24px !important;
  line-height: 32px;
}

.fs-26 {
  font-size: 26px !important;
}

.fs-28 {
  font-size: 28px !important;
}

.fs-30 {
  font-size: 30px !important;
}

.fs-32 {
  font-size: 32px !important;
}

.fs-40 {
  font-size: 40px !important;
}

.fs-45 {
  font-size: 45px !important;
}

.fs-50 {
  font-size: 50px !important;
}

.fs-55 {
  font-size: 55px !important;
}

.fs-60 {
  font-size: 60px !important;
}

.fs-65 {
  font-size: 65px !important;
}

.fs-70 {
  font-size: 70px !important;
}

.fs-75 {
  font-size: 75px !important;
}

.fs-80 {
  font-size: 80px !important;
}

.fs-85 {
  font-size: 85px !important;
}

.fs-90 {
  font-size: 90px !important;
}

.fs-95 {
  font-size: 95px !important;
}

.fs-100 {
  font-size: 100px !important;
}

.fs-110 {
  font-size: 6.875rem;
}

.fs-120 {
  font-size: 7.5rem;
}

.fs-130 {
  font-size: 8.125rem;
}

.fs-140 {
  font-size: 8.75rem;
}

.fs-150 {
  font-size: 9.375rem;
}

.fs-160 {
  font-size: 10rem;
}

.fs-170 {
  font-size: 10.625rem;
}

.fs-180 {
  font-size: 11.25rem;
}

.fs-190 {
  font-size: 11.875rem;
}

.fs-200 {
  font-size: 12.5rem;
}

.fs-225 {
  font-size: 14.063rem;
}

.fs-250 {
  font-size: 15.625rem;
}

.fs-275 {
  font-size: 17.188rem;
}

.fs-300 {
  font-size: 18.75rem;
}

.fs-350 {
  font-size: 21.875rem;
}

.fs-400 {
  font-size: 25rem;
}

/* Line height */
.lh-0px {
  line-height: 0px;
}

.lh-10 {
  line-height: 10px;
}

.lh-11 {
  line-height: 11px;
}

.lh-12 {
  line-height: 12px;
}

.lh-13 {
  line-height: 13px;
}

.lh-14 {
  line-height: 14px;
}

.lh-15 {
  line-height: 15px;
}

.lh-16 {
  line-height: 16px;
}

.lh-18 {
  line-height: 18px;
}

.lh-19 {
  line-height: 19px;
}

.lh-20 {
  line-height: 20px;
}

.lh-22 {
  line-height: 22px;
}

.lh-24 {
  line-height: 24px;
}

.lh-26 {
  line-height: 26px;
}

.lh-28 {
  line-height: 28px;
}

.lh-30 {
  line-height: 30px;
}

.lh-32 {
  line-height: 2rem;
}

.lh-34 {
  line-height: 2.125rem;
}

.lh-36 {
  line-height: 2.25rem;
}

.lh-38 {
  line-height: 2.375rem;
}

.lh-40 {
  line-height: 2.5rem;
}

.lh-42 {
  line-height: 2.625rem;
}

.lh-44 {
  line-height: 2.75rem;
}

.lh-46 {
  line-height: 2.875rem;
}

.lh-48 {
  line-height: 3rem;
}

.lh-50 {
  line-height: 3.125rem;
}

.lh-55 {
  line-height: 3.438rem;
}

.lh-60 {
  line-height: 3.75rem;
}

.lh-65 {
  line-height: 4.063rem;
}

.lh-70 {
  line-height: 4.375rem;
}

.lh-75 {
  line-height: 4.688rem;
}

.lh-80 {
  line-height: 5rem;
}

.lh-85 {
  line-height: 5.313rem;
}

.lh-90 {
  line-height: 5.625rem;
}

.lh-95 {
  line-height: 5.938rem;
}

.lh-100 {
  line-height: 6.25rem;
}

.lh-105 {
  line-height: 6.563rem;
}

.lh-110 {
  line-height: 6.875rem;
}

.lh-115 {
  line-height: 7.188rem;
}

.lh-120 {
  line-height: 7.5rem;
}

.lh-0 {
  line-height: 0;
}

.lh-normal {
  line-height: normal;
}

.lh-initial {
  line-height: initial;
}

.lh-inherit {
  line-height: inherit;
}

/* Text stroke width */
.text-outline-width-1px {
  -webkit-text-stroke-width: 1px;
}

.text-outline-width-2px {
  -webkit-text-stroke-width: 2px;
}

.text-outline-width-3px {
  -webkit-text-stroke-width: 3px;
}

.text-outline-width-4px {
  -webkit-text-stroke-width: 4px;
}

.text-outline-width-5px {
  -webkit-text-stroke-width: 5px;
}

/* Letter spacing */
.ls-0px {
  letter-spacing: 0px !important;
}

.ls-05px {
  letter-spacing: .5px !important;
}

.ls-1px {
  letter-spacing: 1px !important;
}

.ls-2px {
  letter-spacing: 2px !important;
}

.ls-3px {
  letter-spacing: 3px !important;
}

.ls-4px {
  letter-spacing: 4px !important;
}

.ls-5px {
  letter-spacing: 5px !important;
}

.ls-6px {
  letter-spacing: 6px !important;
}

.ls-7px {
  letter-spacing: 7px !important;
}

.ls-8px {
  letter-spacing: 8px !important;
}

.ls-9px {
  letter-spacing: 9px !important;
}

.ls-10px {
  letter-spacing: 10px !important;
}

.ls-minus-05px {
  letter-spacing: -0.50px !important;
}

.ls-minus-1px {
  letter-spacing: -1px !important;
}

.ls-minus-2px {
  letter-spacing: -2px !important;
}

.ls-minus-3px {
  letter-spacing: -3px !important;
}

.ls-minus-4px {
  letter-spacing: -4px !important;
}

.ls-minus-5px {
  letter-spacing: -5px !important;
}

.ls-minus-6px {
  letter-spacing: -6px !important;
}

.ls-minus-7px {
  letter-spacing: -7px !important;
}

.ls-minus-8px {
  letter-spacing: -8px !important;
}

.ls-minus-9px {
  letter-spacing: -9px !important;
}

.ls-minus-10px {
  letter-spacing: -10px !important;
}

/* Icon size */
.icon-extra-double-large {
  font-size: 80px;
}

.icon-double-large {
  font-size: 60px;
}

.icon-extra-large {
  font-size: 50px;
}

.icon-large {
  font-size: 42px;
}

.icon-medium {
  font-size: 34px;
}

.icon-very-medium {
  font-size: 28px;
}

.icon-extra-medium {
  font-size: 24px;
}

.icon-small {
  font-size: 18px;
}

.icon-very-small {
  font-size: 14px;
}

/* ===================================
    Buttons
====================================== */
.butn {
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s;
}

.butn.butn-md {
  padding: 15px 35px;
}

.butn.butn-lg {
  padding: 18px 40px;
}

.butn.butn-full {
  padding: 14px 30px;
  width: 100%;
  text-align: center;
}

.butn.bg-light {
  background: #fff;
  border: 1px solid transparent;
  color: #000;
}

.butn.bg-light:hover {
  background: transparent !important;
  border-color: rgba(255, 255, 255, 0.5);
  color: inherit;
}

.butn.butn-line-light {
  padding: 0 0 10px;
  border-bottom: 1px solid #fff;
  width: 100%;
}

.butn.butn-line-dark {
  padding: 0 0 10px;
  border-bottom: 1px solid #666;
  width: 100%;
}

.butn.butn-line-dark img {
  -webkit-filter: invert(1);
  filter: invert(1);
}

.butn.butn-line {
  padding: 0 0 10px;
  border-bottom: 1px solid #000;
  width: 100%;
}

.butn.butn-circle-md {
  width: 70px;
  height: 70px;
  border-radius: 50%;
  line-height: 70px;
  text-align: center;
}

.butn.butn-circle-md img {
  width: 20px;
}

.butn.bord-light {
  border: 1px solid #fff;
}

.butn.bord-gray {
  border: 1px solid #999 !important;
}

.butn.hover-light:hover {
  background: #fff;
  border-color: #fff;
  color: #1d1d1d;
}

.butn.hover-light2:hover {
  background: #eee;
  border-color: #eee;
  color: #1d1d1d;
}

.butn.hover-dark:hover {
  background: #1d1d1d;
  border-color: #1d1d1d;
  color: #fff;
}

.butn.butn-blur {
  color: #fff;
  background: rgba(0, 0, 0, 0.03);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  padding: 10px 15px;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 30px;
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s;
}

.butn.butn-blur:hover {
  background: #fff;
  color: #1d1d1d;
}

.butn.butn-blur:hover span {
  color: #1d1d1d;
}

.butn.butn-blur:hover img {
  -webkit-filter: invert(1);
  filter: invert(1);
}

.butn.bord-icon {
  border: 1px solid rgba(0, 0, 0, 0.1);
  padding: 7px 10px 7px 20px;
  border-radius: 30px;
}

.butn.bord-icon .icon {
  padding: 8px 10px;
  border-radius: 5px;
  background: rgba(0, 0, 0, 0.03);
  margin-left: 10px;
}

.butn.bord-icon.light-bord {
  border-color: rgba(255, 255, 255, 0.1);
}

.butn.bord-icon.light-bord .icon {
  background: rgba(255, 255, 255, 0.05);
}

.butn.butn-cirle-lg-icon>div {
  display: inline-block;
  width: 160px;
  height: 160px;
  line-height: 170px;
  text-align: center;
  border: 1px solid #1d1d1d;
  border-radius: 50%;
  margin: 0 -10px;
  font-size: 22px;
  text-transform: uppercase;
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s;
}

.butn.butn-cirle-lg-icon>div span {
  line-height: 1.2;
}

.butn.butn-cirle-lg-icon>div:last-of-type {
  background: #1d1d1d;
}

.butn.butn-cirle-lg-icon:hover>div {
  -webkit-transform: translateX(100%);
  -ms-transform: translateX(100%);
  transform: translateX(100%);
  margin: 0 10px;
}

.butn.butn-cirle-lg-icon:hover>div:last-of-type {
  -webkit-transform: translateX(-100%);
  -ms-transform: translateX(-100%);
  transform: translateX(-100%);
}

.butn.butn-arrow {
  padding: 10px 20px;
  background: #1d1d1d;
  border-radius: 30px;
  color: #fff;
}

.butn.butn-arrow span {
  margin: 0 3px;
}

.butn.butn-arrow img {
  width: 15px;
}

.butn.butn-arrow.bord {
  background: transparent;
  border: 1px solid rgba(0, 0, 0, 0.5);
  color: inherit;
}

.butn.standerd {
  padding: 14px 30px;
}

.butn-arrow {
  width: 60px;
  height: 60px;
  line-height: 60px;
  text-align: center;
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 50%;
}

.butn-arrow:hover {
  background: #fff;
  color: #000;
}

.butn-arrow:hover img {
  -webkit-filter: invert(1);
  filter: invert(1);
}

.circle-button {
  position: relative;
  display: inline-block;
}

.circle-button .icon {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translateX(-50%) translateY(-50%);
  -ms-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
}

.circle-button svg {
  width: 250px;
  fill: inherit;
}

.butn-circle {
  width: 180px;
  height: 180px;
  border: 1px solid #141414;
  border-radius: 50%;
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s;
}

.butn-circle.butn-dark {
  color: #fff;
  background: #141414;
}

.butn-circle.butn-light {
  color: #fff;
  border-color: rgba(255, 255, 255, 0.2);
}

.butn-circle.butn-light:hover {
  background: #fff;
  color: #141414;
}

.butn-circle.butn-light:hover .text {
  color: #141414;
}

.butn-circle.butn-light:hover svg path {
  stroke: #141414;
}

.butn-circle svg path {
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s;
}

.butn-circle:hover {
  background: #141414;
  color: #fff;
}

.butn-circle:hover svg path {
  stroke: #fff;
}

.butn-circle:hover .text-dark {
  color: #fff !important;
}

.more-arrow {
  overflow: hidden;
}

.more-arrow span {
  text-indent: -110px;
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s;
}

.more-arrow:hover span {
  text-indent: 0;
}

.butn-bord-space {
  height: 45px;
  width: 120px;
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 40px;
  position: relative;
}

.butn-bord-space span {
  position: absolute;
  height: 45px;
  width: 45px;
  line-height: 40px;
  text-align: center;
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 50%;
  top: 0;
  right: 0;
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s;
}

.butn-bord-space:hover span {
  right: calc(100% - 45px);
}

.butn-arrow-circle {
  padding: 4px 4px 4px 20px;
  border: 1px solid rgba(0, 0, 0, 0.5);
  border-radius: 30px;
}

.butn-arrow-circle .icon {
  width: 30px;
  height: 30px;
  line-height: 30px;
  text-align: center;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.05);
  color: #000000;
  margin-left: 20px;
}

.butn-icon-circle span {
  width: 35px;
  height: 35px;
  line-height: 35px;
  text-align: center;
  border-radius: 50%;
  background: #000;
}

.butn-icon-circle.icon-light span {
  background: #fff;
}

.view-all {
  text-decoration: underline;
}

/* Cursor
-----------------------------------------------------------------*/
.hover-this .hover-anim {
  pointer-events: none;
  -webkit-transition: -webkit-transform 0.2s linear;
  transition: -webkit-transform 0.2s linear;
  -o-transition: transform 0.2s linear;
  transition: transform 0.2s linear;
  transition: transform 0.2s linear, -webkit-transform 0.2s linear;
}

.cursor {
  pointer-events: none;
  position: fixed;
  padding: 0.3rem;
  background-color: #fff;
  border-radius: 50%;
  mix-blend-mode: difference;
  -webkit-transition: opacity 0.4s ease, -webkit-transform 0.3s ease;
  transition: opacity 0.4s ease, -webkit-transform 0.3s ease;
  -o-transition: transform 0.3s ease, opacity 0.4s ease;
  transition: transform 0.3s ease, opacity 0.4s ease;
  transition: transform 0.3s ease, opacity 0.4s ease, -webkit-transform 0.3s ease;
  z-index: 99999;
}

.cursor-active {
  -webkit-transform: translate(-50%, -50%) scale(8);
  -ms-transform: translate(-50%, -50%) scale(8);
  transform: translate(-50%, -50%) scale(8);
  opacity: .1;
}

.rolling-text {
  display: inline-block;
  overflow: hidden;
  line-height: 50px;
  height: 50px;
}

.rolling-text.butn {
  padding: 0 35px;
}

.social-text .rolling-text {
  line-height: 30px;
  height: 30px;
}

.rolling-text:hover .letter,
.rolling-text.play .letter {
  -webkit-transform: translateY(-100%);
  -ms-transform: translateY(-100%);
  transform: translateY(-100%);
}

.rolling-text .letter {
  display: inline-block;
  -webkit-transition: -webkit-transform 0.5s cubic-bezier(0.76, 0, 0.24, 1);
  transition: -webkit-transform 0.5s cubic-bezier(0.76, 0, 0.24, 1);
  -o-transition: transform 0.5s cubic-bezier(0.76, 0, 0.24, 1);
  transition: transform 0.5s cubic-bezier(0.76, 0, 0.24, 1);
  transition: transform 0.5s cubic-bezier(0.76, 0, 0.24, 1), -webkit-transform 0.5s cubic-bezier(0.76, 0, 0.24, 1);
}

.letter:nth-child(1) {
  -webkit-transition-delay: 0s;
  -o-transition-delay: 0s;
  transition-delay: 0s;
}

.letter:nth-child(2) {
  -webkit-transition-delay: 0.015s;
  -o-transition-delay: 0.015s;
  transition-delay: 0.015s;
}

.letter:nth-child(3) {
  -webkit-transition-delay: 0.03s;
  -o-transition-delay: 0.03s;
  transition-delay: 0.03s;
}

.letter:nth-child(4) {
  -webkit-transition-delay: 0.045s;
  -o-transition-delay: 0.045s;
  transition-delay: 0.045s;
}

.letter:nth-child(5) {
  -webkit-transition-delay: 0.06s;
  -o-transition-delay: 0.06s;
  transition-delay: 0.06s;
}

.letter:nth-child(6) {
  -webkit-transition-delay: 0.075s;
  -o-transition-delay: 0.075s;
  transition-delay: 0.075s;
}

.letter:nth-child(7) {
  -webkit-transition-delay: 0.09s;
  -o-transition-delay: 0.09s;
  transition-delay: 0.09s;
}

.letter:nth-child(8) {
  -webkit-transition-delay: 0.105s;
  -o-transition-delay: 0.105s;
  transition-delay: 0.105s;
}

.letter:nth-child(9) {
  -webkit-transition-delay: 0.12s;
  -o-transition-delay: 0.12s;
  transition-delay: 0.12s;
}

.letter:nth-child(10) {
  -webkit-transition-delay: 0.135s;
  -o-transition-delay: 0.135s;
  transition-delay: 0.135s;
}

.letter:nth-child(11) {
  -webkit-transition-delay: 0.15s;
  -o-transition-delay: 0.15s;
  transition-delay: 0.15s;
}

.letter:nth-child(12) {
  -webkit-transition-delay: 0.165s;
  -o-transition-delay: 0.165s;
  transition-delay: 0.165s;
}

.letter:nth-child(13) {
  -webkit-transition-delay: 0.18s;
  -o-transition-delay: 0.18s;
  transition-delay: 0.18s;
}

.letter:nth-child(14) {
  -webkit-transition-delay: 0.195s;
  -o-transition-delay: 0.195s;
  transition-delay: 0.195s;
}

.letter:nth-child(15) {
  -webkit-transition-delay: 0.21s;
  -o-transition-delay: 0.21s;
  transition-delay: 0.21s;
}

.letter:nth-child(16) {
  -webkit-transition-delay: 0.225s;
  -o-transition-delay: 0.225s;
  transition-delay: 0.225s;
}

.letter:nth-child(17) {
  -webkit-transition-delay: 0.24s;
  -o-transition-delay: 0.24s;
  transition-delay: 0.24s;
}

.letter:nth-child(18) {
  -webkit-transition-delay: 0.255s;
  -o-transition-delay: 0.255s;
  transition-delay: 0.255s;
}

.letter:nth-child(19) {
  -webkit-transition-delay: 0.27s;
  -o-transition-delay: 0.27s;
  transition-delay: 0.27s;
}

.letter:nth-child(20) {
  -webkit-transition-delay: 0.285s;
  -o-transition-delay: 0.285s;
  transition-delay: 0.285s;
}

.letter:nth-child(21) {
  -webkit-transition-delay: 0.3s;
  -o-transition-delay: 0.3s;
  transition-delay: 0.3s;
}

.progress-wrap {
  position: fixed;
  bottom: 30px;
  right: 30px;
  height: 44px;
  width: 44px;
  cursor: pointer;
  display: block;
  border-radius: 50px;
  z-index: 100;
  opacity: 0;
  visibility: hidden;
  -webkit-transform: translateY(20px);
  -ms-transform: translateY(20px);
  transform: translateY(20px);
  -webkit-transition: all 400ms linear;
  -o-transition: all 400ms linear;
  transition: all 400ms linear;
  mix-blend-mode: difference;
}

.progress-wrap.active-progress {
  opacity: 1;
  visibility: visible;
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
}

.progress-wrap::after {
  position: absolute;
  font-family: 'Font Awesome 5 Free';
  content: '\f077';
  text-align: center;
  line-height: 44px;
  font-size: 13px;
  font-weight: 900;
  color: #ccc;
  left: 0;
  top: 0;
  height: 44px;
  width: 44px;
  cursor: pointer;
  display: block;
  z-index: 1;
  -webkit-transition: all 400ms linear;
  -o-transition: all 400ms linear;
  transition: all 400ms linear;
}

.progress-wrap svg path {
  fill: none;
}

.progress-wrap svg.progress-circle path {
  stroke: #ccc;
  stroke-width: 4;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-transition: all 400ms linear;
  -o-transition: all 400ms linear;
  transition: all 400ms linear;
}

/* Extra
-----------------------------------------------------------------*/
.d-rotate {
  -webkit-perspective: 1000px;
  perspective: 1000px;
}

.d-rotate .rotate-text {
  display: block;
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
  -webkit-transition: all .8s;
  -o-transition: all .8s;
  transition: all .8s;
  -webkit-transform-origin: 50% 0%;
  -ms-transform-origin: 50% 0%;
  transform-origin: 50% 0%;
  -webkit-transform: translate3d(0px, 50px, -50px) rotateX(-45deg) scale(0.95);
  transform: translate3d(0px, 50px, -50px) rotateX(-45deg) scale(0.95);
  opacity: 0;
  -webkit-transition-delay: .5s;
  -o-transition-delay: .5s;
  transition-delay: .5s;
}

.d-rotate.animated .rotate-text {
  -webkit-transform: translate3d(0px, 0px, 0px) rotateX(0deg) scale(1);
  transform: translate3d(0px, 0px, 0px) rotateX(0deg) scale(1);
  opacity: 1;
}

.d-slideup .sideup-text {
  overflow: hidden;
  display: block;
}

.d-slideup .sideup-text:first-of-type .up-text {
  -webkit-transition-delay: .2s;
  -o-transition-delay: .2s;
  transition-delay: .2s;
}

.d-slideup .sideup-text:nth-of-type(2) .up-text {
  -webkit-transition-delay: .6s;
  -o-transition-delay: .6s;
  transition-delay: .6s;
}

.d-slideup .sideup-text:nth-of-type(3) .up-text {
  -webkit-transition-delay: 1s;
  -o-transition-delay: 1s;
  transition-delay: 1s;
}

.d-slideup .sideup-text:nth-of-type(4) .up-text {
  -webkit-transition-delay: 1.4s;
  -o-transition-delay: 1.4s;
  transition-delay: 1.4s;
}

.d-slideup .sideup-text:nth-of-type(5) .up-text {
  -webkit-transition-delay: 1.8s;
  -o-transition-delay: 1.8s;
  transition-delay: 1.8s;
}

.d-slideup .sideup-text .up-text {
  -webkit-transform: translateY(100%);
  -ms-transform: translateY(100%);
  transform: translateY(100%);
  -webkit-transition: all .8s;
  -o-transition: all .8s;
  transition: all .8s;
}

.d-slideup.animated .up-text {
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
}

.main-marq {
  position: relative;
  padding: 0;
}

.main-marq:after {
  position: absolute;
  top: -30px;
  bottom: -30px;
  left: -30px;
  right: -30px;
  pointer-events: none;
  background: -webkit-linear-gradient(right, #181818, rgba(255, 255, 255, 0) 220px, rgba(255, 255, 255, 0) calc(100% - 220px), #181818);
  background: -o-linear-gradient(right, #181818, rgba(255, 255, 255, 0) 220px, rgba(255, 255, 255, 0) calc(100% - 220px), #181818);
  background: linear-gradient(to left, #181818, rgba(255, 255, 255, 0) 220px, rgba(255, 255, 255, 0) calc(100% - 220px), #181818);
}

.main-marq.md-text .box .item h4 {
  font-size: 40px;
}

.main-marq.lrg .box .item h4 {
  font-size: 5vw;
}

.main-marq.xlrg .box .item {
  padding: 0 30px;
}

.main-marq.xlrg .box .item h4 {
  font-size: 10vw;
}

.main-marq .slide-har {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.main-marq .strok .item h4 {
  color: transparent !important;
  -webkit-text-stroke: 0.5px #1d1d1d;
}

.main-marq .strok .item h4 a {
  color: transparent !important;
  -webkit-text-stroke: 0.5px #1d1d1d;
}

.main-marq .non-strok .item h4 {
  color: #1d1d1d !important;
  -webkit-text-stroke: 0 !important;
}

.main-marq .non-strok .item h4 a {
  color: #1d1d1d !important;
  -webkit-text-stroke: 0 !important;
}

.main-marq .box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.main-marq .box .item {
  padding: 0 30px;
}

.main-marq .box .item h4 {
  white-space: nowrap;
  margin: 0;
}

.main-marq .box .item h4 .icon {
  margin-bottom: -15px;
}

.main-marq .box .item h2 {
  margin: 0;
}

.main-marq .box .item:nth-of-type(even) h4 {
  color: transparent;
  -webkit-text-stroke: 0.5px #1d1d1d;
}

.main-marq .box .item:nth-of-type(even) h4 a {
  color: transparent;
  -webkit-text-stroke: 0.5px #1d1d1d;
}

.main-marq .box:last-of-type .item:nth-of-type(even) h4 {
  color: #1d1d1d;
  -webkit-text-stroke: 0;
}

.main-marq .box:last-of-type .item:nth-of-type(even) h4 a {
  color: #1d1d1d;
  -webkit-text-stroke: 0;
}

.main-marq .box:last-of-type .item:nth-of-type(odd) h4 {
  color: transparent;
  -webkit-text-stroke: 1px #1d1d1d;
}

.main-marq .box:last-of-type .item:nth-of-type(odd) h4 a {
  color: transparent;
  -webkit-text-stroke: 1px #1d1d1d;
}

.slide-har {
  position: relative;
}

.slide-har.st1 .box {
  position: relative;
  -webkit-animation: slide-har 100s linear infinite;
  animation: slide-har 100s linear infinite;
}

.slide-har.st2 .box {
  position: relative;
  -webkit-animation: slide-har-revers 100s linear infinite;
  animation: slide-har-revers 100s linear infinite;
}

@keyframes slide-har {
  0% {
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
  }

  100% {
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
  }
}

@keyframes slide-har-revers {
  100% {
    -webkit-transform: translateX(0%);
    transform: translateX(0%);
  }

  0% {
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
  }
}

.imago {
  -webkit-clip-path: polygon(0 0, 0% 0, 0% 100%, 0 100%);
  clip-path: polygon(0 0, 0% 0, 0% 100%, 0 100%);
  -webkit-transform: scale(1.2);
  -ms-transform: scale(1.2);
  transform: scale(1.2);
  -webkit-filter: blur(5px);
  filter: blur(5px);
  -webkit-transition: -webkit-clip-path .8s ease-in-out .3s, -webkit-transform .8s ease-in-out 1.1s, -webkit-filter .5s ease-in-out 1.1s;
  transition: -webkit-clip-path .8s ease-in-out .3s, -webkit-transform .8s ease-in-out 1.1s, -webkit-filter .5s ease-in-out 1.1s;
  -o-transition: clip-path .8s ease-in-out .3s, transform .8s ease-in-out 1.1s, filter .5s ease-in-out 1.1s;
  transition: clip-path .8s ease-in-out .3s, transform .8s ease-in-out 1.1s, filter .5s ease-in-out 1.1s;
  transition: clip-path .8s ease-in-out .3s, transform .8s ease-in-out 1.1s, filter .5s ease-in-out 1.1s, -webkit-clip-path .8s ease-in-out .3s, -webkit-transform .8s ease-in-out 1.1s, -webkit-filter .5s ease-in-out 1.1s;
  position: relative;
}

.imago.animated {
  -webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
  clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
  -webkit-filter: blur(0px);
  filter: blur(0px);
}

.imago.simpl {
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
  -webkit-filter: blur(0px);
  filter: blur(0px);
}

/* Preloader
-----------------------------------------------------------------*/
body.loaded {
  overflow: hidden !important;
  height: 100% !important;
}

.loader-wrap {
  position: fixed;
  z-index: 10;
  height: 100vh;
  width: 100%;
  left: 0;
  top: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  overflow: hidden;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  background: transparent;
  z-index: 99999999999999;
}

.loader-wrap svg {
  position: absolute;
  top: 0;
  width: 100vw;
  height: 110vh;
  fill: #1d1d1d;
}

.loader-wrap .loader-wrap-heading .load-text {
  color: #fff;
  font-size: 60px;
  font-weight: 200;
  letter-spacing: 5px;
  text-transform: uppercase;
  z-index: 20;
}

.load-text span {
  -webkit-animation: loading 1s infinite alternate;
  animation: loading 1s infinite alternate;
}

.load-text span:nth-child(1) {
  -webkit-animation-delay: 0s;
  animation-delay: 0s;
}

.load-text span:nth-child(2) {
  -webkit-animation-delay: 0.1s;
  animation-delay: 0.1s;
}

.load-text span:nth-child(3) {
  -webkit-animation-delay: 0.2s;
  animation-delay: 0.2s;
}

.load-text span:nth-child(4) {
  -webkit-animation-delay: 0.3s;
  animation-delay: 0.3s;
}

.load-text span:nth-child(5) {
  -webkit-animation-delay: 0.4s;
  animation-delay: 0.4s;
}

.load-text span:nth-child(6) {
  -webkit-animation-delay: 0.5s;
  animation-delay: 0.5s;
}

.load-text span:nth-child(7) {
  -webkit-animation-delay: 0.6s;
  animation-delay: 0.6s;
}

@-webkit-keyframes loading {
  0% {
    opacity: 1;
  }

  100% {
    opacity: 0;
  }
}

@keyframes loading {
  0% {
    opacity: 1;
  }

  100% {
    opacity: 0;
  }
}

/* ====================== [ Start Overlay ] ====================== */
[data-overlay-dark],
[data-overlay-light] {
  position: relative;
}

[data-overlay-dark] .container,
[data-overlay-dark] .container-xxl,
[data-overlay-light] .container-xxl,
[data-overlay-light] .container {
  position: relative;
  z-index: 7;
}

[data-overlay-dark]:before,
[data-overlay-light]:before {
  content: '';
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  z-index: 1;
  pointer-events: none;
}

[data-overlay-dark]:before {
  background: #1d1d1d;
}

[data-overlay-light]:before {
  background: #fff;
}

[data-overlay-dark],
[data-overlay-dark] h1,
[data-overlay-dark] h2,
[data-overlay-dark] h3,
[data-overlay-dark] h4,
[data-overlay-dark] h5,
[data-overlay-dark] h6,
[data-overlay-dark] span,
.bg-dark h1,
.bg-dark h2,
.bg-dark h3,
.bg-dark h4,
.bg-dark h5,
.bg-dark h6,
.bg-dark span,
.bg-color h1,
.bg-color h2,
.bg-color h3,
.bg-color h4,
.bg-color h5,
.bg-color h6,
.bg-color span {
  color: #fff;
}

[data-overlay-dark="0"]:before,
[data-overlay-light="0"]:before {
  opacity: 0;
}

[data-overlay-dark="1"]:before,
[data-overlay-light="1"]:before {
  opacity: .1;
}

[data-overlay-dark="2"]:before,
[data-overlay-light="2"]:before {
  opacity: .2;
}

[data-overlay-dark="3"]:before,
[data-overlay-light="3"]:before {
  opacity: .3;
}

[data-overlay-dark="4"]:before,
[data-overlay-light="4"]:before {
  opacity: .4;
}

[data-overlay-dark="5"]:before,
[data-overlay-light="5"]:before {
  opacity: .5;
}

[data-overlay-dark="6"]:before,
[data-overlay-light="6"]:before {
  opacity: .6;
}

[data-overlay-dark="7"]:before,
[data-overlay-light="7"]:before {
  opacity: .7;
}

[data-overlay-dark="8"]:before,
[data-overlay-light="8"]:before {
  opacity: .8;
}

[data-overlay-dark="9"]:before,
[data-overlay-light="9"]:before,
[data-overlay-color="9"]:before {
  opacity: .9;
}

[data-overlay-dark="10"]:before,
[data-overlay-light="10"]:before {
  opacity: 1;
}

/* ====================== [ End Overlay ] ====================== */
/* Menu
-----------------------------------------------------------------*/
.navbar {
  position: absolute;
  left: 0;
  top: 0;
  padding: 0;
  margin: 0;
  width: 100%;
  background: transparent;
  border-bottom: 2px solid transparent;
  z-index: 999;
}

.navbar.static {
  position: relative;
}

.navbar.bord {
  border-color: rgba(0, 0, 0, 0.05);
}

.navbar.blur {
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
}

.navbar.nav-scroll {
  border-color: rgba(0, 0, 0, 0.05);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  padding: 0;
  position: fixed;
  top: -80px;
  -webkit-transition: -webkit-transform .8s;
  transition: -webkit-transform .8s;
  -o-transition: transform .8s;
  transition: transform .8s;
  transition: transform .8s, -webkit-transform .8s;
  -webkit-transform: translateY(80px);
  -ms-transform: translateY(80px);
  transform: translateY(80px);
}

.navbar .icon-bar {
  color: #1f1f1f;
}

.navbar .navbar-nav .nav-link {
  text-transform: uppercase;
  letter-spacing: 1px;
  font-size: 12px;
  font-weight: 500;
  color: #1f1f1f;
  padding: 20px 5px 15px 5px;
  margin: 0 1px;
  transition: 0.5s;
}

.navbar .navbar-nav .nav-item:hover .nav-link {
  color: #f96b01;
}

.navbar .navbar-nav .nav-link .rolling-text {
  height: 30px;
  line-height: 30px;
}

.navbar .navbar-nav.light .nav-link {
  color: #fff;
}

.navbar .navbar-nav .dropdown-menu {
  padding: 10px 5px;
  border: 1px solid #eee;
}

.navbar .dropdown-menu {
  display: block;
  position: absolute;
  top: 75px;
  opacity: 0;
  visibility: hidden;
  border-radius: 0;
  color: #1f1f1f;
  background: #fff;
  border: 1px solid #eee;
  border-radius: 5px;
  min-width: 255px;
  -webkit-transform: translateY(20px);
  -ms-transform: translateY(20px);
  transform: translateY(20px);
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s;
}

.navbar .dropdown-menu.show {
  opacity: 1;
  visibility: visible;
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
}

.navbar .dropdown-menu.show-left .dropdown-item .dropdown-side {
  left: auto;
  right: 248px;
}

.navbar .dropdown-menu .dropdown-item {
  font-size: 14px;
  color: #1f1f1f;
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s;
  padding: 10px 25px;
  position: relative;
}

.navbar .dropdown-menu .dropdown-item .dropdown-side {
  position: absolute;
  left: 248px;
  top: -15px;
  display: block;
  opacity: 0;
  visibility: hidden;
  border: 1px solid #eee;
  border-radius: 5px;
  background: #fff;
  width: 240px;
  padding: 20px 0px;
  -webkit-transform: translateY(20px);
  -ms-transform: translateY(20px);
  transform: translateY(20px);
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s;
}

.navbar .dropdown-menu .dropdown-item .dropdown-side.show {
  opacity: 1;
  visibility: visible;
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
}

.navbar .dropdown-menu .dropdown-item .icon-arrow {
  position: absolute;
  right: 15px;
}

.navbar .dropdown-menu .dropdown-item:after {
  content: '';
  width: 0px;
  height: 1px;
  background: #000;
  position: absolute;
  left: 10px;
  top: 18px;
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s;
}

.navbar .dropdown-menu .dropdown-item:hover {
  padding-left: 30px;
  background: transparent;
  color: #f96b01;
}

.navbar .dropdown-menu .dropdown-item:hover:after {
  width: 10px;
}

.navbar .no-relative {
  position: static;
}

.navbar .dropdown {
  position: static;
}

.navbar .mega-menu {
  width: 100%;
  position: absolute;
  left: 0;
  top: 75px;
  overflow: hidden;
  padding: 0 !important;
  border: 0 !important;
  background: transparent;
}

.navbar .mega-menu .container {
  padding: 40px !important;
  border: 1px solid #393939;
  background: #252424;
  border-radius: 5px;
}

.navbar .mega-menu .title {
  margin-bottom: 20px;
}

.navbar .mega-menu .title .sub-title {
  font-weight: 600;
}

.navbar .mega-menu .item-img .img {
  border-radius: 5px;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, 0.05);
}

.navbar .logo {
  position: relative;
}

.navbar .contact-button {
  position: relative;
}

.navbar .contact-button .butn {
  background: #1d1d1d;
  color: #ffffff;
  border: 1px solid rgba(0, 0, 0, 0.1);
  padding: 12px 25px;
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s;
}

.navbar .contact-button .butn:hover {
  background: transparent;
  color: #1d1d1d;
}

.navbar .menu-icon {
  padding: 25px 30px;
}

.navbar .dropdown-toggle:after {
  margin-left: 5px;
  vertical-align: 12px;
}

/* Titles
-----------------------------------------------------------------*/
.sec-head {
  padding-bottom: 60px;
  position: relative;
}

.sec-head:after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 50%;
  border-left: 1px solid #000;
  height: 40px;
  opacity: .3;
}

.sm-title-dot {
  position: relative;
}

.sm-title-dot:before {
  content: '';
  position: relative;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #000;
  display: inline-block;
  margin-right: 20px;
}

.sm-title-numb {
  color: #888;
  font-weight: 300;
}

.sm-title-numb span {
  position: relative;
  padding-right: 60px;
}

.sm-title-numb span:after {
  content: '';
  width: 20px;
  border-bottom: 1px solid #888;
  position: absolute;
  left: 30px;
  top: 50%;
}

.sec-head-line {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.sec-head-line span {
  padding: 14px 30px;
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 30px;
  background: #ffffff;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translateX(-50%) translateY(-50%);
  -ms-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
  z-index: 3;
}

/* About Intro
-----------------------------------------------------------------*/
.intro-style1 .container-full {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
}

.intro-style1 .rectangle {
  background: #d2d7d3;
  height: 500px;
  width: 25%;
  border-radius: 15px;
  margin: 0 5px;
}

.intro-style2 .fs-250 {
  position: relative;
  display: inline-block;
  line-height: 1;
}

.intro-style2 .fs-250 span {
  position: absolute;
  top: 40px;
  right: -30px;
  font-size: 30px;
}

.img-bord-color {
  border-bottom: 10px solid #FF6A3A;
}

.skills .sub-bg {
  padding: 20px 10px;
  text-align: center;
}

.skills .tag {
  padding: 5px 10px;
  border-radius: 30px;
  background: rgba(255, 255, 255, 0.05);
  font-size: 12px;
  margin: 4px 0;
}

/* Blog
-----------------------------------------------------------------*/
.blog-style1 .item {
  position: relative;
  border: 1px solid #e8e5e5;
  padding: 5px 12px;
  border-radius: 5px 5px 10px 10px;
}

.blog-style1 .item:hover .date {
  opacity: 0;
}

.blog-style1 .item:hover .icon span {
  opacity: 1;
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
}

.blog-style1 .item .fit-img {
  position: relative;
}

.blog-style1 .item .date {
  position: absolute;
  bottom: -6px;
  right: -6px;
  width: 90px;
  height: 90px;
  padding: 15px;
  color: #000;
  z-index: 4;
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s;
}

.blog-style1 .item .date div {
  width: 60px;
  height: 60px;
  text-align: center;
  background: rgba(255, 255, 255, 0.05);
  border-radius: 50%;
  font-size: 12px;
}

.blog-style1 .item .date div i {
  display: block;
  font-size: 18px;
  font-weight: 500;
}

.blog-style1 .item .icon {
  position: absolute;
  bottom: -6px;
  right: -6px;
  width: 90px;
  height: 90px;
  background: #fff;
  border-top-left-radius: 50%;
  padding: 15px;
}

.blog-style1 .item .icon:before {
  position: absolute;
  content: "";
  bottom: 6px;
  left: -20px;
  background: transparent;
  width: 20px;
  height: 20px;
  border-bottom-right-radius: 20px;
  -webkit-box-shadow: 6px 6px 0 6px #fff;
  box-shadow: 6px 6px 0 6px #fff;
}

.blog-style1 .item .icon:after {
  position: absolute;
  content: "";
  top: -20px;
  right: 6px;
  background: transparent;
  width: 20px;
  height: 20px;
  border-bottom-right-radius: 20px;
  -webkit-box-shadow: 6px 6px 0 6px #fff;
  box-shadow: 6px 6px 0 6px #fff;
}

.blog-style1 .item .icon span {
  width: 60px;
  height: 60px;
  line-height: 60px;
  text-align: center;
  background: #000;
  border-radius: 50%;
  opacity: 0;
  -webkit-transform: scale(0);
  -ms-transform: scale(0);
  transform: scale(0);
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s;
}

.blog-style1 .item .icon span svg {
  width: 15px;
  fill: #fff;
}

.blog-style1 .item .text {
  padding: 17px 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  text-align: center;
}

.blog-style1 .item .text h6 {
  font-size: 18px;
}

.blog-style1 .item .date-show {
  position: absolute;
  top: 20px;
  right: 20px;
  background: #fff;
  color: #171717;
  text-align: center;
  padding: 15px 10px;
  border-radius: 5px;
}

.blog-style1 .item .date-show span {
  font-size: 30px;
  font-weight: 500;
  display: block;
}

.blog-style2 .item .text {
  padding-left: 30px;
  border-left: 1px solid rgba(255, 255, 255, 0.1);
}

.sidebar .search-box {
  position: relative;
}

.sidebar .search-box input {
  color: #fff;
  padding: 15px;
  border: 1px solid rgba(255, 255, 255, 0.4);
  border-radius: 5px;
  width: 100%;
  background: transparent;
}

.sidebar .search-box input:focus {
  border-color: #fff;
}

.sidebar .search-box .icon {
  position: absolute;
  top: 50%;
  right: 15px;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}

.sidebar .widget {
  margin-bottom: 30px;
  padding: 30px;
  border: 1px solid rgba(255, 255, 255, 0.05);
}

.sidebar .widget .title-widget {
  margin-bottom: 30px;
  text-transform: uppercase;
  letter-spacing: 1px;
  font-size: 17px;
}

.sidebar .widget.catogry li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 15px;
  padding: 10px 20px;
  border-radius: 30px;
}

.sidebar .widget.catogry li:last-of-type {
  margin-bottom: 0;
}

.sidebar .widget.catogry li:hover {
  background: rgba(255, 255, 255, 0.02);
}

.sidebar .widget.last-post-thum .item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 30px;
}

.sidebar .widget.last-post-thum .item:last-of-type {
  margin-bottom: 0;
}

.sidebar .widget.last-post-thum .item:hover .img a .date {
  opacity: 1;
}

.sidebar .widget.last-post-thum .item .img {
  width: 90px;
  height: 100px;
  border-radius: 5px;
  overflow: hidden;
}

.sidebar .widget.last-post-thum .item .img a {
  width: 100%;
  height: 100%;
  position: relative;
}

.sidebar .widget.last-post-thum .item .img a .date {
  position: absolute;
  top: 50%;
  left: 50%;
  font-size: 12px;
  width: 60px;
  height: 60px;
  text-align: center;
  background: rgba(0, 0, 0, 0.1);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  border-radius: 50%;
  -webkit-transform: translateX(-50%) translateY(-50%);
  -ms-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
  z-index: 3;
  opacity: 0;
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s;
}

.sidebar .widget.last-post-thum .item .img a .date span {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translateX(-50%) translateY(-50%);
  -ms-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
  line-height: 1;
}

.sidebar .widget.last-post-thum .item .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.sidebar .widget.last-post-thum .item .cont {
  padding-left: 25px;
}

.sidebar .widget.last-post-thum .item .cont h6 {
  font-size: 17px;
}

.sidebar .widget.last-post-thum .item .cont .tag {
  font-size: 12px;
  padding: 5px 15px;
  border-radius: 30px;
  background: rgba(255, 255, 255, 0.03);
  margin-bottom: 10px;
}

.sidebar .widget.tags a {
  padding: 8px 15px;
  border-radius: 5px;
  background: rgba(255, 255, 255, 0.02);
  margin: 2px 0;
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s;
}

.sidebar .widget.tags a:hover {
  background: #6250EB;
}

.blog-main .item .content {
  margin-top: 40px;
}

.blog-main .item .content .post-date {
  padding: 7px 15px;
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 30px;
  font-size: 12px;
  color: #ddd;
  text-transform: uppercase;
  margin-right: 15px;
}

.blog-header .tag a {
  padding: 8px 20px;
  background: #6250EB;
  border-radius: 30px;
}

.blog-header .background {
  height: 400px;
}

.main-post .spec-letter {
  font-size: 60px;
  line-height: 50px;
  padding-right: 10px;
  float: left;
}

.main-post .post-qoute {
  position: relative;
  padding: 40px;
  padding-left: 120px;
  border: 1px solid rgba(255, 255, 255, 0.15);
}

.main-post .post-qoute h6 {
  position: relative;
}

.main-post .post-qoute h6:before {
  content: '“';
  position: absolute;
  top: 80px;
  left: -100px;
  font-size: 180px;
  font-family: Poppins;
  line-height: 0;
}

.main-post .iner-img {
  height: 400px;
}

.main-post .iner-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  -o-object-position: center;
  object-position: center;
}

.main-post .unorder-list li,
.main-post .order-list li {
  margin-top: 10px;
  opacity: .7;
  padding-left: 15px;
  position: relative;
}

.main-post .unorder-list li:before,
.main-post .order-list li:before {
  content: '';
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #ccc;
  position: absolute;
  left: 0;
  top: 10px;
}

.main-post .order-list li {
  padding-left: 0;
}

.main-post .order-list li:before {
  display: none;
}

.main-post .order-list li span {
  font-size: 13px;
}

.main-post .info-area {
  border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.main-post .info-area .tags span,
.main-post .info-area .share-icon span {
  font-size: 14px;
  margin-right: 5px;
  opacity: .7;
}

.main-post .info-area .tags a,
.main-post .info-area .share-icon a {
  padding: 7px 20px;
  font-size: 13px;
  background: rgba(255, 255, 255, 0.02);
  border-radius: 30px;
  margin-right: 5px;
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s;
}

.main-post .info-area .tags a:hover,
.main-post .info-area .share-icon a:hover {
  background: #6250EB;
  color: #fff;
}

.main-post .info-area .share-icon a {
  width: 35px;
  height: 35px;
  line-height: 35px;
  font-size: 11px;
  text-align: center;
  padding: 0;
}

.main-post .author-area {
  padding: 40px;
  background: rgba(255, 255, 255, 0.02);
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  -webkit-backdrop-filter: blur(2px);
  backdrop-filter: blur(2px);
}

.main-post .author-area .author-img .img {
  width: 100px;
  height: 100px;
  border-radius: 10px;
  overflow: hidden;
}

.main-post .next-prv-post .thumb-post {
  width: 100%;
  padding: 40px;
  position: relative;
  overflow: hidden;
  z-index: 2;
}

.main-post .next-prv-post .thumb-post:after {
  content: '';
  background: #1a1a1a;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  border: 1px solid rgba(255, 255, 255, 0.1);
  z-index: -1;
  opacity: .7;
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s;
}

.main-post .next-prv-post .thumb-post:first-of-type {
  margin-right: 15px;
}

.main-post .next-prv-post .thumb-post:last-of-type {
  margin-left: 15px;
}

.comments-post .item-box {
  position: relative;
}

.comments-post .item-box p {
  font-size: 14px;
  width: 80%;
}

.comments-post .item-box.replayed {
  margin-left: 30px;
}

.comments-post .item-box .replay-butn {
  position: absolute;
  top: 15px;
  right: 15px;
}

.comments-post .item-box .replay-butn a {
  font-size: 13px;
  padding: 8px 20px;
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 30px;
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s;
}

.comments-post .item-box .replay-butn a:hover {
  background: var(--maincolor);
  color: #1d1d1d;
}

.comments-from input,
.comments-from textarea {
  width: 100%;
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 5px;
  background: transparent;
  color: #fff;
  padding: 15px;
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s;
}

.comments-from input:focus,
.comments-from textarea:focus {
  border-color: #fff;
}

.comments-from textarea {
  min-height: 180px;
}

.comments-from button {
  padding: 15px 35px;
  width: 100%;
  background: rgba(255, 255, 255, 0.02);
  -webkit-backdrop-filter: blur(2px);
  backdrop-filter: blur(2px);
  color: #fff;
  text-transform: uppercase;
  font-size: 13px;
  letter-spacing: 1px;
  position: relative;
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 5px;
  overflow: hidden;
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s;
}

.comments-from button .text {
  position: relative;
  z-index: 4;
}

.comments-from button:hover {
  color: #1d1d1d;
  background: #fff;
}

/* Clients
-----------------------------------------------------------------*/
.clients-ds .item {
  position: relative;
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 80px;
  height: 100%;
  padding: 50px 30px;
}

.clients-ds .item .text-center {
  width: 100%;
}

.clients-ds .item .img {
  max-width: 100px;
  margin: auto;
  opacity: .5;
}

.clients-ds .item p {
  margin-top: 30px;
}

.clients-ds .item:hover .img {
  opacity: 1;
}

.marq-brand .item-marq {
  padding: 0;
  text-align: center;
}

.marq-brand .item-marq a {
  width: 320px;
  height: 180px;
  line-height: 180px;
  background: rgba(0, 0, 0, 0.05);
  border: 1px solid transparent;
  border-radius: 10px;
  margin: 5px;
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s;
}

.marq-brand .item-marq a img {
  vertical-align: middle;
  width: 120px;
  opacity: .5;
  -webkit-transition: all .5s;
  -o-transition: all .5s;
  transition: all .5s;
}

.marq-brand .item-marq a:hover {
  background: transparent;
  border-color: rgba(0, 0, 0, 0.1);
}

.marq-brand .item-marq a:hover img {
  opacity: 1;
}

.marq-brand .item {
  padding: 0 50px !important;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.marq-brand a {
  width: 100px;
}

.marq-brand a:hover img {
  opacity: 1;
}

.marq-brand a img {
  vertical-align: middle;
  opacity: .5;
  -webkit-transition: all .5s;
  -o-transition: all .5s;
  transition: all .5s;
}

/* Contact
-----------------------------------------------------------------*/
.contact input,
.contact textarea {
  width: 100%;
  border: 0;
  border-bottom: 1px solid rgba(0, 0, 0, 0.2);
  background: transparent;
  color: #000000;
  padding: 15px 0;
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s;
}

.contact input:focus,
.contact textarea:focus {
  border-color: #000000;
}

.contact textarea {
  min-height: 300px;
}

.contact button {
  border-radius: 30px;
  border: 0;
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s;
}

.contact button:hover {
  background: #FF6A3A;
  color: #fff;
}

.contact .info-box {
  padding: 80px 40px;
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 30px;
  position: relative;
  overflow: hidden;
}

.contact .info-box:after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: url(../imgs/map.html);
  background-size: cover;
  opacity: .3;
  z-index: -1;
}

.contact .info-box .phone {
  color: #FF6A3A;
}

.contact .form2 input,
.contact .form2 textarea {
  padding: 15px 30px;
  border: 1px solid rgba(0, 0, 0, 0.08);
  border-radius: 30px;
}

.google-map {
  height: 450px;
  width: 100%;
  position: relative;
  -webkit-filter: grayscale(100%);
  filter: grayscale(100%);
}

.google-map iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* Pricing
-----------------------------------------------------------------*/
.price-style1 .item {
  padding: 40px;
  border: 1px solid rgba(0, 0, 0, 0.1);
}

.price-style1 .item .info {
  padding-bottom: 40px;
  margin-bottom: 40px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.price-style1 .item .info span {
  opacity: .7;
}

.price-style1 .item ul {
  padding: 0;
}

.price-style1 .item li {
  position: relative;
  margin: 15px 0;
  padding-left: 30px;
}

.price-style1 .item li:before {
  content: '';
  position: absolute;
  top: 40%;
  left: 0;
  width: 5px;
  height: 5px;
  background: #fff;
  border-radius: 50%;
}

.price-style1 .butn {
  background: #000000;
  border: 1px solid rgba(0, 0, 0, 0.2);
  color: #ffffff;
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s;
}

.price-style1 .butn.active {
  background: #FF6A3A;
  color: #fff;
}

.price-style1 .butn:hover {
  background: transparent;
  color: #000000;
}

/* Footer
-----------------------------------------------------------------*/
.call-action-style2 {
  position: relative;
}

.call-action-style2:hover .butn-call {
  opacity: 1;
}

.call-action-style2 .butn-call {
  background: #FF6A3A;
  width: 200px;
  height: 200px;
  line-height: 200px;
  text-align: center;
  border-radius: 50%;
  position: absolute;
  top: -50px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s;
  opacity: 0;
}

.call-action-style2 .lg-text .item-marq {
  padding: 0 50px;
}

.call-action-style2 .lg-text .item-marq:nth-of-type(odd) h2 {
  -webkit-text-fill-color: #000;
}

.call-action-style2 .lg-text h2 {
  font-size: 14vw;
  color: #000;
  -webkit-text-fill-color: transparent;
  -webkit-text-stroke-width: 1px;
  -webkit-text-stroke-color: #000;
  width: 120%;
  text-align: center;
  line-height: 1;
}

.footer-style1 {
  padding-top: 120px;
}

.footer-style1 .links a {
  margin-right: 30px;
}

.footer-style1 .links a:last-of-type {
  margin-right: 0;
}

.footer-style1 .email-contact,
.footer-style1 .links a {
  opacity: .7;
}

.footer-style1 .email-contact:hover,
.footer-style1 .links a:hover {
  opacity: 1;
}

.footer-style1 .social-line .item {
  padding-bottom: 20px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
  width: 100%;
  position: relative;
}

.footer-style1 .social-line .item:after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0;
  border-bottom: 1px solid #000;
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s;
}

.footer-style1 .social-line .item:hover:after {
  width: 100%;
}

.footer-style1 .lg-text {
  overflow: hidden;
  text-align: center;
  margin-top: 80px;
}

.footer-style1 .lg-text h2 {
  font-size: 30vw;
  text-transform: uppercase;
  line-height: 1;
  margin-bottom: -200px;
}

.footer-style2 {
  position: relative;
}

.footer-style2 .bg-gr {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: -1;
  pointer-events: none;
}

.footer-style2 .social-icon-circle a:hover {
  background: #000;
  color: #fff;
}

.footer-style2 .call-action-style2 .butn-call {
  background: #000;
}

footer .social-icon-circle.hover-light a:hover {
  background: #000;
  color: #fff;
}

footer .social-icon-circle a {
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s;
}

footer .social-icon-circle a:hover {
  background: #000;
  color: #fff;
}

.digital-agency .call-action-style2 .butn-call {
  background: #2d03ff;
}

.digital-agency .social-icon-circle a:hover {
  background: #2d03ff;
}

/* Headers
-----------------------------------------------------------------*/
.hero-style1 {
  position: relative;
  padding: 40px 0 120px;
  z-index: 10;
}

.hero-style1 .lg-text h1 {
  font-size: 12.4vw;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: -.5rem;
  line-height: .8;
  background: linear-gradient(120deg, var(--gk-dark) 20%, var(--gk-orange) 50%, var(--gk-dark) 80%);
  background-size: 200% auto;
  color: transparent;
  -webkit-background-clip: text;
  background-clip: text;
}

.hero-style1 .wrapper-imgs {
  position: relative;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
  z-index: 9;
}

.hero-style1 .wrapper-imgs .fit-img {
  width: 80px;
  height: 350px;
  border-radius: 60px;
  margin: 0 5px;
  overflow: hidden;
  -webkit-box-flex: 1;
  -ms-flex-positive: 1;
  flex-grow: 1;
}

.hero-style1 .wrapper-imgs .fit-img .info {
  color: #fff;
  position: absolute;
  left: 10px;
  bottom: 10px;
  border-radius: 10px;
  width: calc(100% - 20px);
  padding: 20px 30px;
  background: rgba(0, 0, 0, 0.1);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  z-index: 5;
  opacity: 0;
}

.hero-style1 .cards-wrapper {
  position: relative;
  height: 350px;
}

.hero-style1 .cards-wrapper .fit-img {
  height: 450px;
  overflow: hidden;
  position: relative;
}

.hero-style1 .cards-wrapper .fit-img .info {
  color: #fff;
  position: absolute;
  left: 10px;
  bottom: 10px;
  border-radius: 10px;
  width: calc(100% - 20px);
  padding: 20px 30px;
  background: rgba(0, 0, 0, 0.1);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  z-index: 5;
}

.hero-style2 {
  padding: 200px 0 0;
  position: relative;
}

.hero-style2:before {
  content: '';
  position: absolute;
  top: 0;
  left: -6%;
  height: 600px;
  width: 600px;
  -webkit-filter: blur(70px);
  filter: blur(70px);
  display: inline-block;
  background-color: rgba(5, 45, 146, 0.6);
  border-radius: 30%;
  pointer-events: none;
}

.hero-style3 {
  padding: 120px 0 120px;
}

.hero-style3 .caption {
  border-top: 1px solid rgba(0, 0, 0, 0.1);
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.hero-style3 .container {
  border-left: 1px solid rgba(0, 0, 0, 0.1);
  border-right: 1px solid rgba(0, 0, 0, 0.1);
  position: relative;
}

.hero-style3 .container:after,
.hero-style3 .container:before {
  content: '';
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #000000;
  position: absolute;
  top: 0;
  left: -2px;
}

.hero-style3 .container:after {
  top: auto;
  bottom: 0;
}

.hero-style3 h1 {
  font-size: 90px;
}

.hero-style3 .exp {
  margin-right: 80px;
  width: 100%;
}

.hero-style3 .exp h2 {
  font-size: 300px;
  line-height: 1;
  white-space: nowrap;
  position: relative;
}

.hero-style3 .exp h2 span {
  font-size: 14px;
  padding: 14px 30px;
  border-radius: 30px;
  background: #FF6A3A;
  color: #000;
  position: absolute;
  bottom: 60px;
  right: -20px;
  -webkit-transform: rotate(10deg);
  -ms-transform: rotate(10deg);
  transform: rotate(10deg);
}

.hero-style3 .box1,
.hero-style3 .box2,
.hero-style3 .box3,
.hero-style3 .box4 {
  border-right: 1px solid rgba(0, 0, 0, 0.1);
  position: relative;
}

.hero-style3 .box1:after,
.hero-style3 .box1:before,
.hero-style3 .box2:after,
.hero-style3 .box2:before,
.hero-style3 .box3:after,
.hero-style3 .box3:before,
.hero-style3 .box4:after,
.hero-style3 .box4:before {
  content: '';
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: #000000;
  position: absolute;
  top: 0;
  right: -2px;
}

.hero-style3 .box1:after,
.hero-style3 .box2:after,
.hero-style3 .box3:after,
.hero-style3 .box4:after {
  top: auto;
  bottom: 0;
}

.hero-style3 .box3:after {
  right: auto;
  left: -2px;
  bottom: auto;
  top: 0;
}

.hero-style3 .box4:before {
  right: auto;
  left: -2px;
  top: auto;
  bottom: 0;
}

.hero-style3 .box2,
.hero-style3 .box4 {
  border-right: 0;
}

.hero-style3 .box3,
.hero-style3 .box4 {
  border-top: 1px solid rgba(0, 0, 0, 0.1);
}

.hero-style3 .lg-text {
  font-size: 22vw;
  line-height: .8;
  position: relative;
}

.hero-style3 .lg-text .img1 {
  width: 160px;
  height: 220px;
  border-radius: 15px;
  position: absolute;
  top: 0;
  left: 15%;
  -webkit-transform: rotate(-10deg);
  -ms-transform: rotate(-10deg);
  transform: rotate(-10deg);
  z-index: -1;
  overflow: hidden;
}

.hero-style3 .lg-text .img2 {
  width: 160px;
  height: 220px;
  border-radius: 15px;
  position: absolute;
  bottom: 0;
  right: 10%;
  -webkit-transform: rotate(30deg);
  -ms-transform: rotate(30deg);
  transform: rotate(30deg);
  overflow: hidden;
}

.hero-style3 .lg-text .img3 {
  width: 160px;
  height: 220px;
  border-radius: 15px;
  position: absolute;
  top: -100px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  overflow: hidden;
  z-index: -1;
  -webkit-filter: blur(10px);
  filter: blur(10px);
}

.hero-style4 {
  padding: 220px 0 60px;
  position: relative;
}

.hero-style4 h1 {
  font-size: 10vw;
  letter-spacing: -4px;
}

.hero-style4.f-style:after {
  content: '';
  width: 750px;
  height: 750px;
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 50%;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translateX(-50%) translateY(-50%);
  -ms-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
  z-index: -1;
}

.hero-style5 {
  padding: 200px 0 0;
}

.hero-style5 .links>div {
  position: relative;
  overflow: hidden;
  padding: 10px 0;
}

.hero-style5 .links>div:after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 0;
  background: #FF6A3A;
  z-index: -1;
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s;
}

.hero-style5 .links>div:hover:after {
  width: 100%;
}

.hero-style5 .links>div:hover a {
  -webkit-transform: scale(1.4);
  -ms-transform: scale(1.4);
  transform: scale(1.4);
  -webkit-transform-origin: 0%;
  -ms-transform-origin: 0%;
  transform-origin: 0%;
}

.hero-style5 .links a {
  font-size: 80px;
  line-height: .8;
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s;
}

.hero-style5 .caption h1 {
  font-size: 7.8vw;
  text-transform: uppercase;
  letter-spacing: -2px;
}

.hero-style6 {
  padding: 200px 0 60px;
}

.hero-style6 .tags li {
  display: inline-block;
}

.hero-style6 .tags a {
  padding: 14px 30px;
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 30px;
  margin: 4px 2px;
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s;
}

.hero-style6 .tags a:hover {
  background: #000000;
  color: #ffffff;
}

.hero-style6 .circle-button svg {
  fill: #000000;
}

.content__img {
  width: 225px;
  height: 170px;
  border-radius: 10px;
  position: absolute;
  top: 170px;
  left: 0px;
  opacity: 0;
  overflow: hidden;
  will-change: transform, filter;
}

.content__img-inner {
  background-position: 50% 50%;
  width: calc(100% + 20px);
  height: calc(100% + 20px);
  background-size: cover;
  position: absolute;
  top: calc(-1 * 20px / 2);
  left: calc(-1 * 20px / 2);
}

.pg-hero {
  padding: 200px 0 0;
}

.pg-hero h1 {
  letter-spacing: -2px;
}

.pg-hero .main-marq {
  margin-bottom: -50px;
}

.pg-hero .main-marq h4 {
  text-transform: uppercase;
  line-height: 1;
  font-size: 12vw !important;
  font-weight: 500;
}

/* Faqs
-----------------------------------------------------------------*/
.faq-style1 .accordion-item {
  background: transparent;
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 30px;
  padding: 30px;
}

.faq-style1 .accordion-item h6 {
  font-weight: 300;
}

.faq-style1 .accordion-item.active {
  background: rgba(0, 0, 0, 0.02);
}

.faq-style1 .accordion-item.active h6 {
  font-weight: 500;
}

/* Portfolio
-----------------------------------------------------------------*/
.work-style1 .item .fit-img img {
  height: 100%;
}

.work-style2 {
  position: relative;
  padding-top: 240px !important;
  z-index: 4;
}

.work-style2 .sec-head-crev {
  position: absolute;
  top: 0;
  width: 100%;
  z-index: -1;
}

.work-style3 .item:hover img {
  -webkit-transform: scale(1.1);
  -ms-transform: scale(1.1);
  transform: scale(1.1);
}

.work-style3 .item:hover .fit-img .icon-arrow {
  opacity: 1;
}

.work-style3 .item img {
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s;
}

.work-style3 .item .fit-img {
  position: relative;
}

.work-style3 .item .fit-img .icon-arrow {
  width: 150px;
  height: 150px;
  line-height: 170px;
  text-align: center;
  background: rgba(0, 0, 0, 0.05);
  -webkit-backdrop-filter: blur(10px);
  backdrop-filter: blur(10px);
  border-radius: 50%;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translateX(-50%) translateY(-50%);
  -ms-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s;
  opacity: 0;
}

.work-style3 .item .fit-img .icon-arrow svg {
  width: 40px;
  color: #fff;
}

.portfolio-crev .work-boxs {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.portfolio-crev .item {
  width: 33.333%;
  max-height: 90vh;
  height: 600px;
  margin: 0 4px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  cursor: pointer;
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s;
}

.portfolio-crev .item .bg-img {
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center center;
  position: relative;
  border-radius: 10px;
  overflow: hidden;
}

.portfolio-crev .item .bg-img .cont {
  position: absolute;
  left: 30px;
  bottom: 30px;
  right: 30px;
  padding: 20px;
  border-radius: 10px;
  background: #fff;
  color: #0f0f0f;
  opacity: 0;
  visibility: hidden;
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s;
}

.portfolio-crev .item .bg-img .cont.dark-st h5,
.portfolio-crev .item .bg-img .cont.dark-st span {
  background: #0f0f0f;
}

.portfolio-crev .item .bg-img .cont h5,
.portfolio-crev .item .bg-img .cont span {
  -webkit-transform: translateY(15px);
  -ms-transform: translateY(15px);
  transform: translateY(15px);
  opacity: 0;
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s;
  -webkit-transition-delay: 0;
  -o-transition-delay: 0;
  transition-delay: 0;
}

.portfolio-crev .item .bg-img .cont h5 {
  text-decoration: underline;
  margin-bottom: 10px;
}

.portfolio-crev .item .bg-img .cont span {
  color: #494949;
}

.portfolio-crev .item.active {
  width: calc(100vw - 140px*3);
}

.portfolio-crev .item.active .bg-img .cont {
  opacity: 1;
  visibility: visible;
}

.portfolio-crev .item.active .bg-img .cont h5,
.portfolio-crev .item.active .bg-img .cont span {
  -webkit-transform: none;
  -ms-transform: none;
  transform: none;
  opacity: 1;
}

.portfolio-crev .item.active .bg-img .cont h5 {
  -webkit-transition-delay: .3s;
  -o-transition-delay: .3s;
  transition-delay: .3s;
}

.portfolio-crev .item.active .bg-img .cont span {
  -webkit-transition-delay: .6s;
  -o-transition-delay: .6s;
  transition-delay: .6s;
}

.portfolio-elegant .work-boxs {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.portfolio-elegant .item {
  width: 25%;
  max-height: 70vh;
  height: 500px;
  margin: 0 10px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  cursor: pointer;
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s;
}

.portfolio-elegant .item .bg-img {
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center center;
  position: relative;
  overflow: hidden;
}

.portfolio-elegant .item .cont {
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s;
}

.portfolio-elegant .item .cont h6 {
  font-size: 18px;
}

.portfolio-elegant .item .cont span {
  opacity: 0;
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s;
  color: #1c1c1c;
}

.portfolio-elegant .item.active {
  width: calc(100vw - 140px*3);
}

.portfolio-elegant .item.active .cont span {
  opacity: 1;
}

.parallax-slider-wrapper {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100vh;
}

.parallax-slider-wrapper .parallax-sliders {
  position: absolute;
  top: 0;
  left: 0;
  width: 3800px;
  height: 100%;
}

.parallax-slider-wrapper .parallax-slider-inner {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  height: 80%;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 30px;
  left: 70px;
  margin-top: 15px;
}

.parallax-slider-wrapper .parallax-item {
  position: relative;
  width: 500px;
  height: 100%;
  overflow: hidden;
}

.parallax-slider-wrapper .parallax-item:hover .parallax-content {
  bottom: 0;
  opacity: 1;
  visibility: visible;
}

.parallax-slider-wrapper .parallax-item:hover .parallax-img::after {
  opacity: 1;
  height: 100%;
  visibility: visible;
}

.parallax-slider-wrapper .parallax-content {
  position: absolute;
  bottom: -100px;
  left: 0;
  z-index: 55;
  overflow: hidden;
  opacity: 0;
  visibility: hidden;
  margin: 40px 40px 30px 35px;
  -webkit-transition: .4s;
  -o-transition: .4s;
  transition: .4s;
}

.parallax-slider-wrapper .parallax-content span {
  font-size: 18px;
  text-transform: uppercase;
  line-height: 1;
  display: block;
  margin-bottom: 10px;
}

.parallax-slider-wrapper .parallax-content h4 {
  font-size: 40px;
  line-height: 1;
  padding-bottom: 10px;
  letter-spacing: -2px;
}

.parallax-slider-wrapper .parallax-img {
  position: absolute;
  height: 100%;
  width: 800px;
  background-size: cover;
  background-position: center;
  margin-left: -100px;
}

.parallax-slider-wrapper .parallax-img::after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: '';
  opacity: 0;
  visibility: hidden;
  -webkit-transition: .4s;
  -o-transition: .4s;
  transition: .4s;
  background-color: rgba(0, 0, 0, 0.3);
}

.showcase-full {
  position: relative;
}

.showcase-full .parallax-slider-full .caption {
  position: relative;
}

.showcase-full .parallax-slider-full .caption h1 {
  font-size: 110px;
  position: relative;
  line-height: 1.2;
}

.showcase-full .parallax-slider-full .swiper-slide-active .caption .discover {
  opacity: 1;
  -webkit-transition: all .7s;
  -o-transition: all .7s;
  transition: all .7s;
}

.showcase-full .swiper-slide {
  position: relative;
  overflow: hidden;
  width: 100%;
  min-height: 100vh;
  padding: 80px 0;
}

.showcase-full .swiper-slide .bg-img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-size: cover;
  background-position: center center;
}

.showcase-full .caption h6 {
  font-size: 20px;
  font-weight: 400;
}

.showcase-full .slider-contro {
  position: absolute;
  bottom: 60px;
  left: 80px;
  width: calc(100% - 160px);
}

.showcase-full .slider-contro i {
  margin: 0 10px;
  color: #fff;
}

.showcase-full .slider-contro span {
  color: #fff;
  white-space: nowrap;
}

.showcase-full .dots {
  bottom: 50px;
  z-index: 1;
}

.showcase-full .dots span {
  background: #fff;
  width: 5px;
  height: 5px;
  margin: 0 7px !important;
  border-radius: 50% !important;
}

.showcase-full .dots span.swiper-pagination-bullet-active {
  position: relative;
}

.showcase-full .dots span.swiper-pagination-bullet-active:after {
  content: '';
  position: absolute;
  top: -5px;
  left: -5px;
  right: -5px;
  bottom: -5px;
  border: 1px solid #fff;
  border-radius: 50%;
}

.showcase-full .swiper-button-next:after,
.showcase-full .swiper-button-prev:after {
  display: none;
}

.inter-links-center {
  position: relative;
  min-height: 100vh;
  padding: 120px 0;
  overflow: auto;
}

.inter-links-center::-webkit-scrollbar {
  width: 0;
}

.inter-links-center::-webkit-scrollbar-track {
  background: transparent;
}

.inter-links-center::-webkit-scrollbar-thumb {
  background: #999;
  border-radius: 10px;
}

.inter-links-center::-webkit-scrollbar-thumb:hover {
  background: #555;
}

.inter-links-center .links-text li {
  padding: 30px 0;
  position: relative;
  z-index: 9;
}

.inter-links-center .links-text li .text {
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s;
  -webkit-text-stroke: 1px transparent;
}

.inter-links-center .links-text li.no-active {
  opacity: .3;
}

.inter-links-center .links-text li.no-active .text {
  color: transparent;
  -webkit-text-stroke: 1px #fff;
}

.inter-links-center .links-text li h2 {
  font-weight: 700;
  font-size: 80px;
}

.inter-links-center .links-text li h2 a .tag {
  font-size: 14px;
  display: block;
  font-weight: 400;
}

.inter-links-center .links-text li h2 .num {
  font-size: 14px;
  font-weight: 600;
  opacity: .7;
  margin-right: 15px;
}

.inter-links-center .links-img {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  overflow: hidden;
}

.inter-links-center .links-img:after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.1);
}

.inter-links-center .links-img .img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  -webkit-transform: scale(1.1, 1.1);
  -ms-transform: scale(1.1, 1.1);
  transform: scale(1.1, 1.1);
  -webkit-transition: all .7s;
  -o-transition: all .7s;
  transition: all .7s;
}

.inter-links-center .links-img .img.current {
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
  opacity: 1;
}

.inter-links-center .links-img .img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.link-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* Services
-----------------------------------------------------------------*/
.serv-style1 .item {
  padding-bottom: 40px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}

.serv-style1 .item .img {
  -webkit-clip-path: polygon(0.057% 7.915%, 0.057% 7.915%, 0.016% 6.68%, 0.093% 5.491%, 0.278% 4.367%, 0.561% 3.328%, 0.933% 2.394%, 1.384% 1.586%, 1.906% 0.922%, 2.489% 0.423%, 3.122% 0.109%, 3.798% 0%, 96.169% 0%, 96.169% 0%, 96.847% 0.11%, 97.484% 0.427%, 98.068% 0.93%, 98.591% 1.599%, 99.043% 2.414%, 99.415% 3.354%, 99.696% 4.4%, 99.878% 5.531%, 99.951% 6.726%, 99.905% 7.966%, 92.486% 94.172%, 92.486% 94.172%, 92.361% 95.151%, 92.165% 96.067%, 91.903% 96.911%, 91.582% 97.673%, 91.208% 98.344%, 90.786% 98.915%, 90.323% 99.375%, 89.825% 99.716%, 89.298% 99.927%, 88.749% 100%, 10.856% 100%, 10.856% 100%, 10.303% 99.927%, 9.774% 99.713%, 9.274% 99.369%, 8.809% 98.904%, 8.386% 98.328%, 8.011% 97.65%, 7.691% 96.881%, 7.43% 96.03%, 7.236% 95.107%, 7.115% 94.122%, 0.057% 7.915%);
  clip-path: polygon(0.057% 7.915%, 0.057% 7.915%, 0.016% 6.68%, 0.093% 5.491%, 0.278% 4.367%, 0.561% 3.328%, 0.933% 2.394%, 1.384% 1.586%, 1.906% 0.922%, 2.489% 0.423%, 3.122% 0.109%, 3.798% 0%, 96.169% 0%, 96.169% 0%, 96.847% 0.11%, 97.484% 0.427%, 98.068% 0.93%, 98.591% 1.599%, 99.043% 2.414%, 99.415% 3.354%, 99.696% 4.4%, 99.878% 5.531%, 99.951% 6.726%, 99.905% 7.966%, 92.486% 94.172%, 92.486% 94.172%, 92.361% 95.151%, 92.165% 96.067%, 91.903% 96.911%, 91.582% 97.673%, 91.208% 98.344%, 90.786% 98.915%, 90.323% 99.375%, 89.825% 99.716%, 89.298% 99.927%, 88.749% 100%, 10.856% 100%, 10.856% 100%, 10.303% 99.927%, 9.774% 99.713%, 9.274% 99.369%, 8.809% 98.904%, 8.386% 98.328%, 8.011% 97.65%, 7.691% 96.881%, 7.43% 96.03%, 7.236% 95.107%, 7.115% 94.122%, 0.057% 7.915%);
  height: 250px;
  overflow: hidden;
}

.serv-style1 .item ul {
  margin: 0;
}

.serv-style1 .item ul li {
  margin-bottom: 20px;
}

.serv-style2 {
  background-color: #fff;
}

.serv-style2 h3 {
  position: relative;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
}

.serv-style2 h3 .fit-img {
  position: absolute;
  top: 50%;
  height: 70px;
  right: -130px;
  width: 0;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s;
}

.serv-style2 .item:hover h3 .fit-img {
  width: 100px;
}

.serv-style3 .accordion-item {
  border-top: 1px solid rgba(0, 0, 0, 0.1);
  padding: 50px 0 0;
  background: transparent;
}

.serv-style3 .accordion-item .icon-arrow {
  width: 40px;
  height: 40px;
  line-height: 40px;
  text-align: center;
  border: 1px solid transparent;
  border-radius: 50%;
}

.serv-style3 .accordion-item.active .icon-arrow {
  border-color: rgba(0, 0, 0, 0.5);
}

.serv-style3 .accordion-header h6 {
  color: #FF6A3A;
}

.serv-style3 .accordion-collapse {
  border-radius: 0;
}

.serv-style3 .accordion-body {
  padding: 0;
}

.serv-style3 .tags a {
  display: block;
  margin-bottom: 10px;
}

.serv-style4 {
  border-top: 1px solid rgba(0, 0, 0, 0.1);
  border-bottom: 1px solid rgba(0, 0, 0, 0.1);
}

.serv-style4 .item {
  padding: 80px 40px;
  border-right: 1px solid rgba(0, 0, 0, 0.1);
}

.serv-style4 .item:last-of-type {
  border-right: 0;
}

.serv-style4 .item .text {
  opacity: 0;
  -webkit-transform: translateY(50px);
  -ms-transform: translateY(50px);
  transform: translateY(50px);
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s;
}

.serv-style4 .item:hover .text {
  opacity: 1;
  -webkit-transform: translate(0);
  -ms-transform: translate(0);
  transform: translate(0);
}

.serv-style5 .item {
  padding: 60px 40px 0;
}

.serv-style5 .item .img {
  border-radius: 15px 15px 0 0;
  overflow: hidden;
}

.process .item {
  padding: 25px 25px;
  border: 1px solid rgba(0, 0, 0, 0.1);
  border-radius: 15px;
  height: 100%;
}

.process .item span {
  color: #FF6A3A;
}

.process .item h6 {
  font-size: 24px;
}

.process .item p {
  font-family: "Unbounded", sans-serif;
  font-weight: 300;
  font-size: 14px;
}

/* Team
-----------------------------------------------------------------*/
.team-mp .item {
  /* background: #eee; */
  background: #ffe6c5;
  border-radius: 15px;
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s;
}

.team-mp .item:hover {
  background: #2d03ff;
}

.team-mp .item .img {
  width: 270px;
  height: 176px;
  overflow: hidden;
}

.team-mp .item .img img {
  /* -webkit-filter: grayscale(1);
  filter: grayscale(1); */
}

.team-mp .item .cont {
  padding: 20px 0 0 6px;
}

.team-mp .item .cont span {
  font-size: 11px;
  line-height: 14px;
  color: #1f1f1f;
  margin-top: 3px;
}

.team-mp .item .social-icon {
  padding: 30px 30px 0 0;
}

.team-mp .item .social-icon a {
  width: 45px;
  height: 45px;
  line-height: 45px;
  text-align: center;
  border: 1px solid rgba(0, 0, 0, 0.2);
  border-radius: 50%;
  font-size: 14px;
  margin: 0 5px;
}

.team-mp .item .social-icon a:hover {
  background: #fff;
  color: #212121;
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s;
}

.team-mp.style2 .item:hover {
  background: linear-gradient(90deg, #ff7a50, var(--gk-orange-1));
}

.team-style1 .item {
  position: relative;
  z-index: 3;
}

.team-style1 .item:after {
  content: '';
  width: 100vw;
  height: 70px;
  background: rgba(255, 255, 255, 0.1);
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translateX(-50%) translateY(-50%);
  -ms-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s;
  z-index: -1;
  opacity: 0;
}

.team-style1 .item .fit-img {
  position: absolute;
  top: -50px;
  left: 100px;
  width: 200px;
  height: 220px;
  -webkit-transform: translateY(40px);
  -ms-transform: translateY(40px);
  transform: translateY(40px);
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s;
  opacity: 0;
}

.team-style1 .item:hover .fit-img {
  opacity: 1;
  -webkit-transform: translateY(0);
  -ms-transform: translateY(0);
  transform: translateY(0);
}

.team-style1 .item:hover:after {
  opacity: 1;
}

.team-style2 .caption h2 {
  font-size: 12vw;
  line-height: 1;
}

.team-style2 .gallery__item {
  margin-top: -225px;
  position: relative;
}

.team-style2 .gallery__item a {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.team-style2 .item .fit-img {
  position: relative;
}

.team-style2 .item .fit-img:after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: -webkit-gradient(linear, left top, left bottom, from(transparent), to(#1f1f1f));
  background: -webkit-linear-gradient(transparent, #1f1f1f);
  background: -o-linear-gradient(transparent, #1f1f1f);
  background: linear-gradient(transparent, #1f1f1f);
  opacity: 0;
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s;
}

.team-style2 .item .fit-img .cont {
  position: absolute;
  bottom: 40px;
  left: 0;
  width: 100%;
  text-align: center;
  z-index: 3;
  opacity: 0;
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s;
}

.team-style2 .item .fit-img:hover:after,
.team-style2 .item .fit-img:hover .cont {
  opacity: 1;
}

.team-style3 {
  position: relative;
  padding-top: 340px !important;
  z-index: 4;
}

.team-style3.no-pad {
  padding-top: 120px !important;
}

.team-style3 .sec-head-crev {
  position: absolute;
  top: 120px;
  width: 100%;
  z-index: -1;
}

.team-style3 .sec-head-crev h2 {
  letter-spacing: -4px;
}

.team-style3 .item {
  width: 100%;
  position: relative;
  overflow: hidden;
}

.team-style3 .item.mt-mins {
  margin-top: -100px;
}

.team-style3 .item:after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: -webkit-gradient(linear, left top, left bottom, from(transparent), to(#1f1f1f));
  background: -webkit-linear-gradient(transparent, #1f1f1f);
  background: -o-linear-gradient(transparent, #1f1f1f);
  background: linear-gradient(transparent, #1f1f1f);
  opacity: 0;
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s;
}

.team-style3 .item .cont {
  color: #fff;
  position: absolute;
  bottom: 40px;
  left: 0;
  width: 100%;
  text-align: center;
  z-index: 3;
  opacity: 0;
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s;
}

.team-style3 .item:hover:after,
.team-style3 .item:hover .cont {
  opacity: 1;
}

/* Testimonials
-----------------------------------------------------------------*/
.testimonials-ds .qoute-icon {
  position: relative;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
}

.testimonials-ds .qoute-icon .text {
  width: 240px;
}

.testimonials-ds .qoute-icon .icon {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translateX(-50%) translateY(-50%);
  -ms-transform: translateX(-50%) translateY(-50%);
  transform: translateX(-50%) translateY(-50%);
  width: 100px;
}

.testimonials-ds .item .info {
  border-top: 1px solid rgba(0, 0, 0, 0.1);
}

.testimonials-ds .item .info .img-author {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  overflow: hidden;
}

.testimonials-ds .item .info .info-text {
  padding-left: 20px;
}

.testimonials-ds .item .info .info-text p {
  font-size: 14px;
  color: #323232;
  margin-top: 5px;
}

.testimonials-ds .swiper {
  position: relative;
}

.testimonials-ds .swiper .swiper-pagination {
  position: absolute;
  bottom: 0;
  right: 0;
  left: auto !important;
  width: -webkit-max-content !important;
  width: -moz-max-content !important;
  width: max-content !important;
  padding: 5px 15px;
  border-radius: 30px;
  border: 1px solid rgba(0, 0, 0, 0.1);
}

.testimonials-ds .swiper .swiper-pagination .swiper-pagination-bullet {
  margin: 0 7px;
  background: #313131;
}

.testimonials-ds .swiper .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background: #2d03ff;
}

.box-lyars {
  background: #eee;
  border-radius: 15px;
  padding: 100px 80px;
  position: relative;
}

.box-lyars .layers {
  position: absolute;
  top: 5px;
  left: 30px;
  right: 30px;
  bottom: -10px;
  background: #eee;
  border-radius: 15px;
  opacity: .7;
  z-index: -1;
}

.box-lyars .layers:after {
  content: '';
  position: absolute;
  top: 5px;
  left: 20px;
  right: 20px;
  bottom: -10px;
  background: #eee;
  border-radius: 15px;
  opacity: .7;
  z-index: -1;
}

.testim-style1 {
  position: relative;
}

.testim-style1 .testim-sliders {
  position: relative;
}

.testim-style1 .testim-sliders .main-slider {
  position: relative;
  overflow: hidden;
}

.testim-style1 .testim-sliders .main-slider .swiper-pagination {
  position: absolute;
  bottom: 0;
  right: 0;
  left: auto;
  width: auto;
  font-size: 14px;
}

.testim-style1 .testim-sliders .main-slider .swiper-pagination span {
  margin: 0 8px;
  width: 6px;
  height: 6px;
  border-radius: 50%;
}

.testim-style1 .testim-sliders .main-slider .swiper-pagination .swiper-pagination-bullet-active {
  background: #111;
}

.testim-style1 .testim-sliders .thumb-slider {
  position: relative;
  overflow: hidden;
}

.testim-style1 .thumb-side {
  text-align: center;
}

.testim-style1 .thumb-side .swiper-button-prev,
.testim-style1 .thumb-side .swiper-button-next {
  position: static;
  margin: 0 5px;
  display: inline-block;
  color: inherit;
  width: 50px;
  height: 50px;
  line-height: 50px;
  text-align: center;
  border: 1px solid rgba(0, 0, 0, 0.5);
  border-radius: 50%;
}

.testim-style1 .thumb-side .swiper-button-prev:after,
.testim-style1 .thumb-side .swiper-button-next:after {
  font-size: 13px;
}

.testim-style1 .thumb-side .swiper-button-prev:hover,
.testim-style1 .thumb-side .swiper-button-next:hover {
  background: #000;
  color: #fff;
}

.testim-style2 .swiper-slide {
  padding: 20px 20px 30px;
  background: #1f1f1f;
  position: relative;
  -webkit-transform: rotate(-5deg);
  -ms-transform: rotate(-5deg);
  transform: rotate(-5deg);
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s;
}

.testim-style2 .swiper-slide p {
  color: #bababa;
}

.testim-style2 .swiper-slide:hover {
  z-index: 3;
  -webkit-transform: rotate(0) !important;
  -ms-transform: rotate(0) !important;
  transform: rotate(0) !important;
}

.testim-style2 .swiper-slide:nth-of-type(even) {
  -webkit-transform: rotate(5deg);
  -ms-transform: rotate(5deg);
  transform: rotate(5deg);
}

.testim-style2 .bg-light,
.testim-style2 .bg-main-color {
  color: #000;
}

.testim-style2 .bg-light p,
.testim-style2 .bg-main-color p {
  color: #4d4d4d;
}

.testim-style3 .testim-swiper {
  padding: 0 120px;
  position: relative;
}

.testim-style3 .swiper-slide {
  padding: 50px;
  border-radius: 15px;
  background: #252525;
  color: #fff;
  position: relative;
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s;
}

.testim-style3 .swiper-slide p {
  color: #bababa;
  font-size: 14px;
  text-align: justify;
}

.testim-style3 .bg-light,
.testim-style3 .bg-main-color {
  color: #000;
}

.testim-style3 .bg-light p,
.testim-style3 .bg-main-color p {
  color: #4d4d4d;
}

.testim-style3 .swiper-controls {
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  z-index: 4;
}

/* Awards
-----------------------------------------------------------------*/
.award-style1 .item {
  padding: 30px 0;
  border-top: 1px solid rgba(0, 0, 0, 0.05);
  -webkit-transition: all .4s;
  -o-transition: all .4s;
  transition: all .4s;
}

.award-style1 .item:last-of-type {
  border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}

.award-style1 .item:hover {
  padding: 30px;
  background: rgba(0, 0, 0, 0.05);
}

.thecontainer {
  width: 300%;
  height: 100vh;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: nowrap;
  flex-wrap: nowrap;
}

.panel {
  width: 100%;
  height: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  position: relative;
}

/* ====================== [ Start Responsive ] ====================== */
@media screen and (max-width: 992px) {
  .md-mb10 {
    margin-bottom: 10px;
  }

  .md-mb15 {
    margin-bottom: 15px;
  }

  .md-mb20 {
    margin-bottom: 20px;
  }

  .md-mb30 {
    margin-bottom: 30px;
  }

  .md-mb40 {
    margin-bottom: 40px;
  }

  .md-mb50 {
    margin-bottom: 50px !important;
  }

  .md-mb80 {
    margin-bottom: 80px;
  }

  .md-no-mrg {
    margin: 0 !important;
  }

  .md-pb10 {
    padding-bottom: 10px;
  }

  .md-pb20 {
    padding-bottom: 20px;
  }

  .md-pb30 {
    padding-bottom: 30px;
  }

  .md-pb40 {
    padding-bottom: 40px;
  }

  .md-pb50 {
    padding-bottom: 50px;
  }

  .md-pb60 {
    padding-bottom: 60px;
  }

  .md-pb70 {
    padding-bottom: 70px;
  }

  .md-pb80 {
    padding-bottom: 80px;
  }

  .md-pt80 {
    padding-top: 80px !important;
  }

  .md-no-pad {
    padding: 0 !important;
  }

  .md-center {
    text-align: center !important;
  }

  .md-order-1 {
    -webkit-box-ordinal-group: 2 !important;
    -ms-flex-order: 1 !important;
    order: 1 !important;
  }

  .md-order-2 {
    -webkit-box-ordinal-group: 3 !important;
    -ms-flex-order: 2 !important;
    order: 2 !important;
  }

  .md-order-3 {
    -webkit-box-ordinal-group: 4 !important;
    -ms-flex-order: 3 !important;
    order: 3 !important;
  }

  .md-order-4 {
    -webkit-box-ordinal-group: 5 !important;
    -ms-flex-order: 4 !important;
    order: 4 !important;
  }

  .md-hide {
    display: none;
  }

  .justify-end {
    -webkit-box-pack: start !important;
    -ms-flex-pack: start !important;
    justify-content: flex-start !important;
  }

  .justify-end .vew-all {
    margin-left: 25px;
    margin-top: 25px;
  }

  .justify-end .swiper-controls {
    margin-top: 30px;
  }

  .justify-end .ml-auto {
    margin-left: 0;
    margin-top: 30px;
  }

  .row.sm-marg {
    margin-left: -15px;
    margin-right: -15px;
  }

  .row.sm-marg>* {
    padding-left: 15px;
    padding-right: 15px;
  }

  .row.stand-marg {
    margin-left: -15px;
    margin-right: -15px;
  }

  .row.stand-marg>* {
    padding-left: 15px;
    padding-right: 15px;
  }

  .row.md-marg {
    margin-left: -15px;
    margin-right: -15px;
  }

  .row.md-marg>* {
    padding-left: 15px;
    padding-right: 15px;
  }

  .row.lg-marg {
    margin-left: -15px;
    margin-right: -15px;
  }

  .row.lg-marg>* {
    padding-left: 15px;
    padding-right: 15px;
  }

  .row.xlg-marg {
    margin-left: -15px;
    margin-right: -15px;
  }

  .row.xlg-marg>* {
    padding-left: 15px;
    padding-right: 15px;
  }

  .row.xxlg-marg {
    margin-left: -15px;
    margin-right: -15px;
  }

  .row.xxlg-marg>* {
    padding-left: 15px;
    padding-right: 15px;
  }

  h1 {
    font-size: 50px;
  }

  h2 {
    font-size: 40px;
  }

  h3 {
    font-size: 30px;
  }

  h4 {
    font-size: 28px;
  }

  h5 {
    font-size: 23px;
  }

  h6 {
    font-size: 20px;
  }

  .fz-120 {
    font-size: 90px !important;
  }

  .fz-80 {
    font-size: 60px !important;
  }

  .fz-70 {
    font-size: 50px !important;
  }

  .navbar .logo:after {
    display: none;
  }

  .navbar .contact-button {
    display: none;
  }

  .navbar .mega-menu .item-img .img {
    display: none;
  }

  .navbar {
    padding-top: 15px;
    padding-bottom: 15px;
  }

  .navbar .navbar-collapse {
    max-height: 440px;
    overflow: auto;
  }

  .navbar .navbar-collapse::-webkit-scrollbar {
    display: none;
  }

  .navbar.nav-scroll {
    padding-top: 15px;
    padding-bottom: 15px;
  }

  .navbar .container {
    padding: 0;
    width: 100%;
    max-width: 100%;
  }

  .navbar .mega-menu .container {
    padding: 20px 10px !important;
  }

  .navbar .logo {
    max-width: 120px !important;
    margin-left: 20px;
  }

  .navbar .navbar-collapse {
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    margin-top: 15px;
  }

  .navbar .navbar-toggler {
    font-size: 20px;
    border-radius: 0;
    padding: 0;
    margin-right: 30px;
  }

  .navbar .navbar-toggler:focus {
    -webkit-box-shadow: none;
    box-shadow: none;
    border: 0;
    outline: none;
  }

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

  .navbar .dropdown-menu.show {
    display: block;
    position: static;
  }

  .navbar .dropdown-menu .dropdown-item .dropdown-side {
    display: none;
    position: static;
    width: 100%;
    margin-top: 15px;
  }

  .navbar .dropdown-menu .dropdown-item .dropdown-side.show {
    display: block;
  }

  .navbar .navbar-nav .nav-link {
    padding: 15px 30px 10px;
    margin: 0;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  }

  .navbar .navbar-nav .nav-item:last-of-type .nav-link {
    padding-bottom: 0;
    border-bottom: 0;
  }

  .navbar .navbar-nav .mega-menu {
    width: auto;
    position: static;
    padding: 0;
  }

  .navbar .navbar-nav .mega-menu .item-img {
    font-size: 14px;
    color: #fff;
    -webkit-transition: all .4s;
    -o-transition: all .4s;
    transition: all .4s;
    padding: 10px 25px;
    position: relative;
  }

  .navbar .navbar-nav .mega-menu .item-img .mt-15 {
    margin-top: 0 !important;
  }

  .navbar .navbar-nav .mega-menu .item-img:after {
    content: '';
    width: 0px;
    height: 1px;
    background: #fff;
    position: absolute;
    left: 10px;
    top: 18px;
    -webkit-transition: all .4s;
    -o-transition: all .4s;
    transition: all .4s;
  }

  .navbar .navbar-nav .mega-menu .item-img:hover {
    padding-left: 30px;
    background: transparent;
  }

  .navbar .navbar-nav .mega-menu .item-img:hover:after {
    width: 10px;
  }

  .blur-div {
    display: none;
  }

  .intro-style1 {
    display: none;
  }

  .hero-style2 .fs-80 {
    font-size: 60px !important;
  }

  .cards-wrapper {
    height: auto !important;
  }

  .hero-style1 {
    padding-bottom: 0;
  }

  .hero-style4 {
    padding: 160px 0 0;
  }

  .hero-style4 .fs-20 {
    font-size: 16px !important;
  }

  .hero-style4 h1 {
    letter-spacing: normal;
  }

  .hero-style5 .links a {
    font-size: 40px;
  }

  .hero-style5 .caption h1 {
    font-size: 8.8vw;
  }

  .hero-style3 .container:after,
  .hero-style3 .container:before,
  .hero-style3 .box1:after,
  .hero-style3 .box1:before,
  .hero-style3 .box2:after,
  .hero-style3 .box2:before,
  .hero-style3 .box3:after,
  .hero-style3 .box3:before,
  .hero-style3 .box4:after,
  .hero-style3 .box4:before,
  .hero-style3 .box4 {
    display: none !important;
  }

  .hero-style3 .lg-text .img1,
  .hero-style3 .lg-text .img2,
  .hero-style3 .lg-text .img3 {
    width: 100px;
    height: 150px;
  }

  .portfolio-elegant .work-boxs,
  .portfolio-crev .work-boxs {
    display: block !important;
  }

  .portfolio-elegant .item,
  .portfolio-elegant .item.active,
  .portfolio-crev .item,
  .portfolio-crev .item.active {
    width: 100%;
    height: 400px;
    min-height: 400px;
    margin-bottom: 15px;
  }

  .portfolio-elegant .item,
  .portfolio-elegant .item.active {
    height: auto;
    min-height: auto;
    margin: 0 0 50px !important;
  }

  .portfolio-elegant .item .bg-img,
  .portfolio-elegant .item.active .bg-img {
    height: 400px;
  }

  .team-mp .item .img {
    width: 280px;
  }

  .team-mp .item h2 {
    font-size: 30px;
    line-height: 1.2;
  }

  .team-style2 {
    padding: 120px 0 !important;
  }

  .team-style2 .gallery-wrap {
    display: none !important;
  }

  .team-style3 .item.mt-mins {
    margin-top: 40px !important;
  }

  .sec-head-crev .fs-75 {
    font-size: 50px !important;
  }

  .serv-style1 .item ul li {
    display: inline-block;
    margin: 10px !important;
  }

  .serv-style4 {
    border-bottom: 0;
  }

  .serv-style4 .item {
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  }

  .testim-style3 .swiper-controls {
    top: auto;
    bottom: -50px;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
  }

  .showcase-full .parallax-slider-full .caption h1 {
    font-size: 80px;
  }

  .parallax-slider-wrapper .parallax-slider-inner {
    left: 40px;
  }

  .slider .parallax-slider-full .swiper-slide .bg-img {
    background-position: center center !important;
  }

  .inter-links-center .links-text li h2 {
    font-size: 64px;
  }

  .pg-hero .fs-100 {
    font-size: 80px !important;
  }

  footer .social-icon-circle,
  footer .item {
    margin-bottom: 30px;
  }

  .footer-style1 .lg-text h2 {
    margin-bottom: 0;
  }

  .footer-style1 .links a {
    margin-right: 15px;
  }

  .footer-style1 .justify-content-end {
    -webkit-box-pack: start !important;
    -ms-flex-pack: start !important;
    justify-content: flex-start !important;
    margin-top: 30px;
  }
}

@media screen and (max-width: 768px) {
  .sm-mb10 {
    margin-bottom: 10px;
  }

  .sm-mb20 {
    margin-bottom: 20px;
  }

  .sm-mb30 {
    margin-bottom: 30px;
  }

  .sm-mb40 {
    margin-bottom: 40px;
  }

  .sm-mb50 {
    margin-bottom: 50px;
  }

  .sm-mb80 {
    margin-bottom: 80px;
  }

  .sm-pb10 {
    padding-bottom: 10px;
  }

  .sm-pb20 {
    padding-bottom: 20px;
  }

  .sm-pb30 {
    padding-bottom: 30px;
  }

  .sm-pb40 {
    padding-bottom: 40px;
  }

  .sm-pb50 {
    padding-bottom: 50px;
  }

  .sm-pb60 {
    padding-bottom: 60px;
  }

  .sm-pb70 {
    padding-bottom: 70px;
  }

  .sm-pb80 {
    padding-bottom: 80px;
  }

  .sm-hide {
    display: none;
  }

  .fz-70 {
    font-size: 40px !important;
  }

  h1 {
    font-size: 46px;
  }

  h2 {
    font-size: 30px;
  }

  h3 {
    font-size: 24px;
  }

  h4 {
    font-size: 22px;
  }

  h5 {
    font-size: 20px;
  }

  h6 {
    font-size: 18px;
  }

  .progress-wrap {
    display: none;
  }

  .loader-wrap .loader-wrap-heading .load-text {
    font-size: 20px;
  }

  .hamenu .logo {
    left: 25px;
  }

  .hamenu .close-menu {
    top: 25px;
    right: 25px;
  }

  .hamenu .menu-links .main-menu>li .link {
    font-size: 30px;
  }

  .hamenu .menu-links .main-menu>li .sub-dmenu {
    font-size: 24px;
  }

  .hamenu .menu-links .main-menu .sub-menu li,
  .hamenu .menu-links .main-menu .sub-menu2 li {
    font-size: 20px;
  }

  .hero-style2 .fs-80 {
    font-size: 35px !important;
  }

  .hero-style1 .fs-80 {
    font-size: 45px !important;
  }

  .hero-style3 {
    padding-bottom: 80px;
  }

  .hero-style3 .p-40px {
    padding: 30px 20px !important;
  }

  .hero-style3 h1 {
    font-size: 50px;
  }

  .hero-style3 .box3 {
    display: block !important;
  }

  .hero-style3 .exp {
    margin: 0;
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
  }

  .hero-style3 .exp h2 {
    font-size: 220px;
  }

  .hero-style6 .fs-90 {
    font-size: 50px !important;
  }

  .sec-head-crev .fs-75 {
    font-size: 30px !important;
  }

  .sec-head-modern .fs-60 {
    font-size: 40px !important;
  }

  .sec-head-crev .fs-75 {
    font-size: 50px !important;
  }

  .sec-head-crev .fs-65 {
    font-size: 40px !important;
  }

  .sec-head-stand .fs-65 {
    font-size: 40px !important;
  }

  .sec-head-stand .fs-50 {
    font-size: 34px !important;
  }

  .img-bord-color .h-600px {
    height: 400px;
  }

  .work-style2 {
    padding-top: 120px !important;
  }

  .intro-style6 .h-600px,
  .work-style3 .item .fit-img {
    height: 400px !important;
  }

  .box-lyars {
    padding: 100px 20px;
  }

  .testimonials-ds .qoute-icon .text {
    width: 160px;
  }

  .testim-style1 .info-text {
    display: block !important;
  }

  .intro-style2 .fs-60,
  .intro-style3 .fs-60 {
    font-size: 34px !important;
  }

  .team-mp .item {
    padding: 30px;
  }

  .team-mp .item .d-flex {
    display: block !important;
  }

  .team-mp .item .img {
    width: auto;
    height: auto;
    background: rgba(255, 255, 255, 0.1);
    border-radius: 15px;
    overflow: hidden;
  }

  .team-mp .item .cont {
    padding: 30px 0 0;
    text-align: center;
  }

  .team-mp .item .ml-auto {
    width: -webkit-max-content;
    width: -moz-max-content;
    width: max-content;
    margin: auto !important;
  }

  .team-mp .item .social-icon {
    padding: 0;
    margin-top: 30px;
  }

  .testim-style2 .swiper-slide {
    -webkit-transform: rotate(0) !important;
    -ms-transform: rotate(0) !important;
    transform: rotate(0) !important;
  }

  .testim-style3 .testim-swiper {
    padding: 0;
  }

  .testim-style3 .swiper-slide {
    padding: 50px 30px;
  }

  .award-style1 .d-flex {
    display: block !important;
  }

  .marq-brand .item-marq a {
    width: 200px;
    height: 130px;
    line-height: 130px;
  }

  .skills .item {
    -webkit-box-align: center !important;
    -ms-flex-align: center !important;
    align-items: center !important;
  }

  .bg-img.h-600px {
    height: 480px;
  }

  footer .call-action-style2 .butn-call {
    width: 100px;
    height: 100px;
    line-height: 100px;
  }

  footer .call-action-style2 .butn-call img {
    width: 30px !important;
  }

  footer .mt-80px {
    text-align: center;
    margin-top: 30px !important;
  }

  footer .mt-80px p {
    margin-bottom: 15px;
  }

  .showcase-full .parallax-slider-full .caption h1 {
    font-size: 45px;
  }

  .showcase-full .dots {
    display: none;
  }

  .parallax-slider-wrapper .parallax-slider-inner {
    left: 20px;
  }

  .inter-links-center .links-text li h2 {
    font-size: 30px;
  }

  .pg-hero .fs-100 {
    font-size: 50px !important;
  }

  .blog-header .fz-55 {
    font-size: 30px !important;
  }

  .blog-header .info {
    display: block !important;
  }

  .blog-header .date {
    margin-left: 30px !important;
  }

  .blog-header .right-info {
    margin: 30px 0 0;
  }

  .main-post .fz-60 {
    display: none;
  }

  .main-post .post-qoute {
    padding: 30px 15px;
  }

  .main-post .post-qoute h6:before {
    position: relative;
    left: 0;
  }

  .main-post .info-area {
    display: block !important;
  }

  .main-post .info-area .tags {
    margin-bottom: 30px;
  }

  .main-post .author-area .flex {
    display: block;
  }

  .main-post .author-area .author-img {
    margin: 0 0 30px 0;
  }

  .main-post .author-area .author-img .img {
    width: 80px;
    height: 80px;
  }

  .main-post .next-prv-post {
    display: block;
  }

  .main-post .next-prv-post .thumb-post {
    margin: 0 !important;
  }

  .main-post .next-prv-post .text-right {
    text-align: left;
    margin-top: 30px !important;
  }

  .comments-post .item-box .flex {
    display: block;
  }

  .comments-post .item-box .user-img {
    margin: 0 0 15px 0;
  }

  .comments-post .item-box .replay-post {
    margin: 15px 0 0 0;
  }

  .comments-post .item-box.replayed {
    margin-left: 0;
  }

  .main-post .post-qoute h6:before {
    top: 70px;
  }

  .pg-project .fs-60 {
    font-size: 28px !important;
  }
}

/* Packages */

:root {
  --gk-dark: #3b0918;
  --gk-orange: #f05a22;
  --gk-orange-grad: linear-gradient(135deg, #fb8c00, #e64a19);
}


.xt-crs-wrapper {
  /* font-family: 'Inter', sans-serif; */
  background-color: #fbfbfb;
  background-image: radial-gradient(rgba(59, 9, 24, 0.04) 1px, transparent 1px);
  background-size: 40px 40px;
  color: var(--gk-dark);
  padding: 100px 0;
  position: relative;
  overflow: hidden;
  background: rgba(255, 255, 255, 0.08);
  backdrop-filter: blur(8px) saturate(150%);
  -webkit-backdrop-filter: blur(8px) saturate(150%);
}

/* --- ABSTRACT ANIMATED BACKGROUND SHAPES --- */
.xt-crs-bg-shapes {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 0;
}

.xt-crs-shape {
  position: absolute;
  border-radius: 50%;
  filter: blur(120px);
  opacity: 0.6;
  will-change: transform;
}

.xt-crs-shape-1 {
  width: 600px;
  height: 600px;
  background: rgba(240, 90, 34, 0.15);
  top: -10%;
  left: -10%;
  animation: xt-float-1 25s infinite ease-in-out alternate;
}

.xt-crs-shape-2 {
  width: 700px;
  height: 700px;
  background: rgba(59, 9, 24, 0.12);
  bottom: -20%;
  right: -10%;
  animation: xt-float-2 30s infinite ease-in-out alternate;
}

.xt-crs-shape-3 {
  width: 500px;
  height: 500px;
  background: rgba(251, 140, 0, 0.12);
  top: 40%;
  left: 30%;
  animation: xt-float-3 20s infinite ease-in-out alternate;
}

@keyframes xt-float-1 {
  0% {
    transform: translate(0, 0) scale(1);
  }

  100% {
    transform: translate(15vw, 10vh) scale(1.2);
  }
}

@keyframes xt-float-2 {
  0% {
    transform: translate(0, 0) scale(1);
  }

  100% {
    transform: translate(-10vw, -15vh) scale(1.1);
  }
}

@keyframes xt-float-3 {
  0% {
    transform: translate(0, 0) scale(0.8);
  }

  100% {
    transform: translate(-20vw, 20vh) scale(1.3);
  }
}

/* --- SUBTLE ANIMATED BACKGROUND VECTOR SHAPES --- */
.xt-crs-abstract-shape {
  position: absolute;
  pointer-events: none;
  z-index: 1;
  will-change: transform, opacity;
  opacity: 0.75;
}

.xt-crs-abs-1 {
  top: 12%;
  left: 5%;
  animation: float-slow-rot 15s infinite ease-in-out alternate;
}

.xt-crs-abs-2 {
  top: 48%;
  left: 8%;
  animation: float-slow-rot-rev 22s infinite ease-in-out alternate;
}

.xt-crs-abs-3 {
  top: 85%;
  left: 4%;
  animation: float-pulse 10s infinite ease-in-out alternate;
}

.xt-crs-abs-4 {
  top: 20%;
  right: 6%;
  animation: float-slow 18s infinite ease-in-out alternate;
}

.xt-crs-abs-5 {
  top: 75%;
  right: 10%;
  animation: float-slow-rot 20s infinite ease-in-out alternate;
}

@keyframes float-slow {
  0% {
    transform: translate(0, 0);
  }

  100% {
    transform: translate(25px, 35px);
  }
}

@keyframes float-slow-rot {
  0% {
    transform: translate(0, 0) rotate(0deg) scale(0.9);
  }

  100% {
    transform: translate(35px, -25px) rotate(180deg) scale(1.1);
  }
}

@keyframes float-slow-rot-rev {
  0% {
    transform: translate(0, 0) rotate(0deg) scale(1.05);
  }

  100% {
    transform: translate(-25px, 30px) rotate(-180deg) scale(0.9);
  }
}

@keyframes float-pulse {

  0%,
  100% {
    transform: translate(0, 0) scale(1);
    opacity: 0.55;
  }

  50% {
    transform: translate(15px, 15px) scale(1.2);
    opacity: 0.85;
  }
}

.xt-crs-container {
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 40px;
  display: flex;
  gap: 60px;
  align-items: stretch;
  /* Forces left column to stretch to match right column height */
}

/* --- LEFT SIDE --- */
.xt-crs-left-container {
  width: 40%;
  position: relative;
  z-index: 10;
}

.xt-crs-left {
  display: flex;
  flex-direction: column;
  gap: 5px;
  position: relative;
  will-change: transform;
}

.xt-crs-header-group {
  display: flex;
  flex-direction: column;
}

.xt-crs-subtitle-badge {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 8px 20px;
  background: rgba(240, 90, 34, 0.08);
  border: 1px solid rgba(240, 90, 34, 0.2);
  border-radius: 50px;
  color: var(--gk-orange);
  font-size: 0.85rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 2px;
  margin-bottom: 25px;
  width: fit-content;
  box-shadow: 0 4px 15px rgba(240, 90, 34, 0.05);
}

.xt-crs-subtitle-badge svg {
  width: 16px;
  height: 16px;
  fill: currentColor;
  animation: spin-slow 6s linear infinite;
}

@keyframes spin-slow {
  100% {
    transform: rotate(360deg);
  }
}

.xt-crs-title {
  margin: 0;
  line-height: 1;
  text-transform: uppercase;
  display: flex;
  flex-direction: column;
}

.xt-crs-title-outline {
  font-size: clamp(3rem, 5.4vw, 6rem);
  font-weight: 900;
  color: transparent;
  -webkit-text-stroke: 2px var(--gk-dark);
  letter-spacing: 1px;
  margin-bottom: -9px;
  margin-left: -2px;
}

.xt-crs-title-solid {
  font-size: clamp(3.5rem, 5.4vw, 7.5rem);
  font-weight: 800;
  letter-spacing: -0.03em;
  background: linear-gradient(120deg, var(--gk-dark) 20%, var(--gk-orange) 50%, var(--gk-dark) 80%);
  background-size: 200% auto;
  color: transparent;
  -webkit-background-clip: text;
  background-clip: text;
  animation: shine-main-heading 6s cubic-bezier(0.4, 0, 0.2, 1) infinite alternate;
}

@keyframes shine-main-heading {
  0% {
    background-position: 0% center;
  }

  100% {
    background-position: 200% center;
  }
}

.xt-crs-left-desc {
  font-size: 1.1rem;
  line-height: 1.7;
  color: #444;
  margin: 10px 0 0 0;
  font-weight: 400;
  /* max-width: 95%; */
  position: relative;
  padding: 20px 25px;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.9), rgba(255, 255, 255, 0.4));
  backdrop-filter: blur(10px);
  border: 1px solid rgba(0, 0, 0, 0.03);
  border-left: 4px solid var(--gk-orange) !important;
  border-radius: 0 16px 16px 0;
  box-shadow: 5px 15px 30px rgba(0, 0, 0, 0.03);
}

.xt-crs-left-desc strong {
  color: var(--gk-dark);
  font-weight: 700;
}

.xt-crs-view-all {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 140px;
  height: 140px;
  border: 1px solid #ddd;
  border-radius: 50%;
  text-decoration: none;
  color: var(--gk-dark);
  background: #fff;
  margin-top: 10px;
  transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

.xt-crs-view-all:hover {
  border-color: var(--gk-orange);
  background: var(--gk-orange-grad);
  color: #fff;
  box-shadow: 0 10px 25px rgba(240, 90, 34, 0.3);
  transform: translateY(-8px);
}

.xt-crs-arrow {
  font-size: 1.5rem;
  margin-bottom: 5px;
  transition: transform 0.3s ease;
}

.xt-crs-view-all:hover .xt-crs-arrow {
  transform: translate(4px, -4px);
}

.xt-crs-view-text {
  font-size: 0.8rem;
  font-weight: 600;
  text-align: center;
  line-height: 1.2;
  text-transform: uppercase;
}

/* --- RIGHT SIDE (JS BASED SCROLLABLE COURSES) --- */
.xt-crs-right {
  width: 60%;
  display: block;
  position: relative;
}

/* Wrappers create the invisible scroll boundaries for each card */
.xt-crs-card-wrapper {
  width: 100%;
  height: 120vh;
  /* Gives scroll room to feel the card sticking */
  position: relative;
}

.xt-crs-card-wrapper.last-wrapper {
  height: 100vh;
  /* Last card holds on screen for a full view */
  padding-bottom: 5vh;
}

/* The actual visual cards */
.xt-crs-card {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 5px;
  background: #ffffff;
  padding: 20px 23px;
  border-radius: 20px;
  border: 1px solid rgba(0, 0, 0, 0.04);
  background: rgba(255, 255, 255, 0.08);
  backdrop-filter: blur(8px) saturate(150%);
  -webkit-backdrop-filter: blur(8px) saturate(150%);

  height: calc(100vh - 160px);
  min-height: 500px;

  box-shadow: 0 -15px 40px rgba(0, 0, 0, 0.06);
  transition: box-shadow 0.5s cubic-bezier(0.25, 1, 0.5, 1), border-color 0.5s cubic-bezier(0.25, 1, 0.5, 1), background-color 0.5s cubic-bezier(0.25, 1, 0.5, 1);

  position: relative;
  will-change: transform;
  overflow: hidden;
  /* Clips the rotating glow */
}

@keyframes border-rotate {
  100% {
    transform: rotate(360deg);
  }
}

.xt-crs-card.is-active-card {
  border-color: transparent !important;
  box-shadow: 0 15px 35px rgba(255, 153, 0, 0.08), 0 0 15px rgba(255, 138, 52, 0.05);
}

/* Traveling pill/capsule light border element */
.xt-crs-card.is-active-card::before {
  content: '';
  position: absolute;
  top: -50%;
  left: -50%;
  width: 200%;
  height: 200%;
  background: conic-gradient(from 0deg,
      transparent 60%,
      rgba(255, 153, 0, 0.1) 70%,
      rgba(255, 153, 0, 0.6) 82%,
      rgba(255, 138, 52, 0.85) 92%,
      rgba(255, 153, 0, 0.6) 97%,
      transparent 100%);
  animation: border-rotate 4s linear infinite;
  z-index: -2;
}

/* Inner card background mask to form the 1px outline */
.xt-crs-card.is-active-card::after {
  content: '';
  position: absolute;
  top: 1px;
  left: 1px;
  right: 1px;
  bottom: 1px;
  background: rgba(255, 255, 255, 0.08);
  backdrop-filter: blur(8px) saturate(150%);
  -webkit-backdrop-filter: blur(8px) saturate(150%);
  border-radius: 19px;
  z-index: -1;
  transition: background-color 0.5s ease;
}

.xt-crs-card.is-active-card:hover::after {
  background: rgba(255, 255, 255, 0.14);
}

.xt-crs-card:hover {
  box-shadow: 0 20px 50px rgba(255, 153, 0, 0.12);
  border-color: rgba(255, 153, 0, 0.25);
  background: rgba(255, 255, 255, 0.14);
}

.xt-crs-card:hover .xt-crs-parallax-inner img {
  transform: scale(1.04);
}

/* Image Links */
.xt-crs-img-link {
  display: block;
  text-decoration: none;
  overflow: hidden;
  border-radius: 12px;
  flex-shrink: 0;
  position: relative;
  z-index: 2;
}

.xt-crs-img-wrapper {
  width: 100%;
  height: 46vh;
  min-height: 286px;
  background-color: #f3f3f3;
  position: relative;
  cursor: none;
  overflow: hidden;
}

.xt-crs-parallax-inner {
  width: 100%;
  height: 130%;
  position: absolute;
  top: -15%;
  left: 0;
  will-change: transform;
}

.serv-style1 {
  padding: 60px 0 40px;
}

.xt-crs-parallax-inner img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.6s cubic-bezier(0.25, 1, 0.5, 1);
  object-position: center;
}

.xt-crs-img-link:hover .xt-crs-parallax-inner img {
  transform: scale(1.05);
}

/* Course Details Content */
.xt-crs-content-row {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  gap: 20px;
  margin-top: auto;
  margin-bottom: auto;
  position: relative;
  z-index: 2;
}

.xt-crs-info-main {
  flex: 1;
}

.xt-crs-title-link {
  text-decoration: none;
  display: inline-block;
  margin: 0 0 12px 0;
  transition: transform 0.3s ease;
}

.xt-crs-title-link:hover {
  transform: translateX(6px);
}

.xt-crs-course-title {
  font-size: 1.8rem;
  font-weight: 800;
  margin: 0;
  line-height: 1.2;
  background: linear-gradient(to right, var(--gk-dark) 0%, var(--gk-orange) 50%, var(--gk-dark) 100%);
  background-size: 200% auto;
  color: transparent;
  -webkit-background-clip: text;
  background-clip: text;
  animation: shine-text 4s linear infinite;
}

@keyframes shine-text {
  to {
    background-position: 200% center;
  }
}

.xt-crs-course-desc {
  font-size: 0.9rem;
  color: #555;
  line-height: 1.6;
  margin: 0 0 20px 0;
  max-width: 95%;
}

/* --- 3D ICONS & META STYLES --- */
.xt-crs-meta {
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  gap: 8px;
}

@keyframes float-3d {

  0%,
  100% {
    transform: translateY(0) rotate(0deg);
  }

  50% {
    transform: translateY(-4px) rotate(3deg);
  }
}

.xt-crs-3d-icon {
  width: 20px;
  height: 20px;
  animation: float-3d 3s ease-in-out infinite;
  flex-shrink: 0;
}

.xt-crs-rating,
.xt-crs-support {
  background: #f8f8f8;
  border: 1px solid #eee;
  padding: 4px 10px;
  border-radius: 50px;
  font-size: 0.8rem;
  font-weight: 600;
  display: flex;
  align-items: center;
  gap: 4px;
  color: var(--gk-dark);
  box-shadow: inset 0 2px 4px rgba(255, 255, 255, 0.8), 0 2px 8px rgba(0, 0, 0, 0.03);
  white-space: nowrap;
  flex-shrink: 0;
}

.xt-crs-support {
  background: rgba(240, 90, 34, 0.05);
  border-color: rgba(240, 90, 34, 0.1);
}

.xt-crs-price {
  font-size: 1.25rem;
  font-weight: 800;
  color: var(--gk-dark);
  display: flex;
  align-items: center;
  gap: 4px;
  margin-left: 2px;
  white-space: nowrap;
  flex-shrink: 0;
}

.xt-crs-original-price {
  font-size: 0.9rem;
  color: #888;
  text-decoration: line-through;
  font-weight: 500;
  margin-left: 2px;
}

/* Enhanced Enroll Button */
.xt-crs-enroll-btn {
  position: relative;
  background: var(--gk-orange-grad);
  color: #fff;
  padding: 9px 17px;
  border-radius: 50px;
  font-size: 0.85rem;
  text-align: center;
  font-weight: 700;
  border: none;
  cursor: pointer;
  transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  white-space: nowrap;
  box-shadow: 0 6px 20px rgba(240, 90, 34, 0.25);
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  z-index: 1;
  text-decoration: none;
  margin-top: 10px;
  backdrop-filter: blur(16px) saturate(130%);
  -webkit-backdrop-filter: blur(16px) saturate(130%);
  background: linear-gradient(145deg, var(--glass-color-light) 0%, var(--glass-color-mid) 50%, var(--glass-color-dark) 100%);
  box-shadow: inset 0 -2px 5px rgba(0, 0, 0, 0.2), inset 0 -1px 1px var(--glass-edge-bottom), inset 0 4px 12px var(--glass-surface-glare), inset 0 1px 1px var(--glass-edge-top), inset 0 0 20px rgba(255, 255, 255, 0.25), 0 0px 2px -5px var(--glass-ambient-glow), 0 10px 20px -10px var(--glass-drop-shadow), 0 4px 8px -2px rgba(0, 0, 0, 0.15);
  border: 1px solid rgba(255, 255, 255, 0.25);
}

.xt-crs-enroll-btn::after {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 50%;
  height: 100%;
  background: linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.3) 50%, rgba(255, 255, 255, 0) 100%);
  transform: skewX(-25deg);
  animation: shimmer-btn 3s infinite;
  z-index: -1;
}

@keyframes shimmer-btn {
  0% {
    left: -100%;
  }

  20% {
    left: 200%;
  }

  100% {
    left: 200%;
  }
}

.xt-crs-enroll-btn:hover {
  background: var(--gk-dark);
  transform: translateY(-5px) scale(1.02);
  box-shadow: 0 10px 25px rgba(59, 9, 24, 0.4);
  color: #fff;
  backdrop-filter: blur(16px) saturate(130%);
  -webkit-backdrop-filter: blur(16px) saturate(130%);
  background: linear-gradient(145deg, rgba(55, 12, 20, 0.85) 0%, rgba(43, 10, 18, 0.85) 50%, rgba(21, 4, 8, 0.98) 100%);
  box-shadow:
    inset 0 -2px 5px rgba(0, 0, 0, 0.6),
    inset 0 -1px 1px rgba(255, 255, 255, 0.05),
    inset 0 4px 12px rgba(255, 255, 255, 0.12),
    inset 0 1px 1px rgba(255, 255, 255, 0.25),
    inset 0 0 20px rgba(255, 255, 255, 0.05),
    0 0px 2px -5px rgba(55, 12, 20, 0.4),
    0 10px 20px -10px rgba(10, 2, 4, 0.6),
    0 4px 8px -2px rgba(0, 0, 0, 0.4);
}

.xt-crs-btn-arrow {
  transition: transform 0.3s ease;
  font-size: 1rem;
}

.xt-crs-enroll-btn:hover .xt-crs-btn-arrow {
  transform: translateX(6px);
}

/* --- CUSTOM CURSOR --- */
.xt-crs-custom-cursor {
  position: fixed;
  top: 0;
  left: 0;
  width: 100px;
  height: 100px;
  background: var(--gk-dark);
  color: #fff;
  border-radius: 50%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  pointer-events: none;
  z-index: 9999;
  transform: translate(-50%, -50%) scale(0);
  opacity: 0;
  transition: transform 0.3s cubic-bezier(0.25, 1, 0.5, 1), opacity 0.3s ease, background 0.3s ease;
  text-align: center;
  box-shadow: 0 10px 30px rgba(59, 9, 24, 0.4);
}

.xt-crs-custom-cursor.active {
  transform: translate(-50%, -50%) scale(1);
  opacity: 1;
}

.xt-crs-custom-cursor.active-hover {
  background: var(--gk-orange);
  transform: translate(-50%, -50%) scale(0.9);
}

.xt-crs-cursor-text {
  font-size: 0.8rem;
  font-weight: 600;
  line-height: 1.2;
  text-transform: uppercase;
}

/* --- SCROLL ANIMATIONS --- */
.xt-crs-animate-up {
  opacity: 0;
  transform: translateY(40px);
  transition: opacity 0.8s cubic-bezier(0.16, 1, 0.3, 1), transform 0.8s cubic-bezier(0.16, 1, 0.3, 1);
}

.xt-crs-animate-up.is-visible {
  opacity: 1;
  transform: translateY(0);
}

.xt-crs-header-group.xt-crs-animate-up {
  transition-delay: 0.1s;
}

.xt-crs-left-desc.xt-crs-animate-up {
  transition-delay: 0.2s;
}

.xt-crs-view-all.xt-crs-animate-up {
  transition-delay: 0.3s;
}

/* --- RESPONSIVE DESIGN --- */
@media (max-width: 1200px) {
  .xt-crs-container {
    padding: 0 30px;
    gap: 40px;
  }

  .xt-crs-title {
    font-size: clamp(3rem, 6vw, 5rem);
  }
}

@media (max-width: 992px) {
  .xt-crs-wrapper {
    padding: 80px 0;
  }

  .xt-crs-container {
    flex-direction: column;
    gap: 5px;
  }

  .xt-crs-left-container {
    width: 100%;
    height: auto;
    margin-bottom: 20px;
  }

  .xt-crs-left {
    gap: 6px;
    position: relative;
    top: initial;
  }

  .xt-crs-left-desc {
    max-width: 100%;
  }

  .xt-crs-view-all {
    margin-top: 20px;
  }

  .xt-crs-right {
    width: 100%;
  }

  .xt-crs-card-wrapper {
    height: auto !important;
    margin-bottom: 40px;
  }

  .xt-crs-card-wrapper.last-wrapper {
    height: auto !important;
    padding-bottom: 0;
    margin-bottom: 0;
  }

  .xt-crs-card {
    height: auto !important;
    min-height: auto !important;
    padding: 25px 20px;
  }

  .xt-crs-img-wrapper {
    cursor: pointer;
    height: auto;
    aspect-ratio: 16/9;
  }

  .xt-crs-custom-cursor {
    display: none !important;
  }
}

@media (max-width: 768px) {
  .xt-crs-wrapper {
    padding: 60px 0;
  }

  .xt-crs-container {
    padding: 0 10px;
  }

  .xt-crs-card {
    padding: 20px;
  }

  .xt-crs-course-title {
    font-size: 1.5rem;
  }
}

@media (max-width: 600px) {
  .xt-crs-card {
    padding: 16px;
    gap: 16px;
  }

  .xt-crs-content-row {
    flex-direction: column;
    gap: 15px;
  }

  .xt-crs-price {
    margin-left: 0;
    font-size: 1.3rem;
  }

  .xt-crs-enroll-btn {
    width: 100%;
    justify-content: center;
    padding: 14px 20px;
  }

  .xt-crs-course-desc {
    max-width: 100%;
    font-size: 0.95rem;
    margin-bottom: 15px;
  }

  .xt-crs-meta {
    gap: 10px;
    flex-wrap: wrap;
  }

  .xt-crs-title {
    font-size: 3rem;
  }
}

/* Counter */

/* Container for the entire counter section */
#edu-stats-section {
  width: 100%;
  max-width: 1400px;
  /* Increased max-width for full width coverage */
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 15px 0 50px;
  overflow: hidden;
}

.edu-stats-wrapper {
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
  width: 100%;
}

/* Individual Circle Styling - Venn Diagram Effect */
.edu-stat-circle {
  width: 350px;
  /* Much larger circles */
  height: 350px;
  border-radius: 50%;
  background-color: transparent;
  /* Crucial for the border overlap effect */
  border: 1px solid #e0e0e0;
  /* Thin crisp border */
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  margin-left: -50px;
  /* Deep overlap */
  position: relative;
  transition: transform 0.4s cubic-bezier(0.25, 1, 0.5, 1), border-color 0.3s ease;
  opacity: 0;
  /* Hidden initially for animation */
  transform: translateY(-20px);
}

/* Bounce Animation (Light & Premium) */
@keyframes subtleBounceIn {
  0% {
    opacity: 0;
    transform: translateY(-30px);
  }

  50% {
    opacity: 1;
    transform: translateY(10px);
  }

  80% {
    transform: translateY(-5px);
  }

  100% {
    opacity: 1;
    transform: translateY(0);
  }
}

.animate-bounce {
  animation: subtleBounceIn 0.8s cubic-bezier(0.34, 1.56, 0.64, 1) forwards;
}

/* Staggered animation delays */
#edu-circle-1.animate-bounce {
  animation-delay: 0.1s;
}

#edu-circle-2.animate-bounce {
  animation-delay: 0.25s;
}

#edu-circle-3.animate-bounce {
  animation-delay: 0.4s;
}

#edu-circle-4.animate-bounce {
  animation-delay: 0.55s;
}

/* First circle shouldn't have negative left margin */
#edu-circle-1 {
  margin-left: 0;
}

/* Z-index layering doesn't block borders because background is transparent, 
           but keeps text/icons clickable on top */
#edu-circle-1 {
  z-index: 4;
}

#edu-circle-2 {
  z-index: 3;
}

#edu-circle-3 {
  z-index: 2;
}

#edu-circle-4 {
  z-index: 1;
}

/* Inner Content Styling */
.edu-stat-content {
  text-align: center;
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 20px;
  /* Ensures text stays above the overlapping borders */
  z-index: 10;
  background-color: transparent;
}

.edu-stat-number {
  font-size: 3.5rem;
  /* Larger font size */
  font-weight: 700;
  margin-bottom: 5px;
  line-height: 1.1;
  letter-spacing: -1.5px;
  /* GyanKamao Theme: Orange to Maroon Gradient */
  background: linear-gradient(90deg, #FF7B00, #4A0E0E);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  color: #FF7B00;
  /* Fallback */
}

.edu-stat-title {
  font-size: 1.1rem;
  font-weight: 600;
  color: #4b5563;
  /* Dark clean grey */
  margin-bottom: 25px;
  text-transform: capitalize;
}

/* Premium Icon Styling */
.edu-stat-icon {
  display: flex;
  justify-content: center;
  align-items: center;
}

.edu-stat-icon svg {
  width: 72px;
  /* Increased size to show off detailed icons */
  height: 72px;
  transition: transform 0.4s cubic-bezier(0.34, 1.56, 0.64, 1), filter 0.3s ease;
  filter: drop-shadow(0px 8px 10px rgba(74, 14, 14, 0.08));
  /* Soft premium shadow */
}

/* Hover effect (Premium & Subtle) */
.edu-stat-circle:hover {
  transform: translateY(-5px);
  z-index: 20 !important;
  /* Bring everything in this circle to front */
  border-color: #FF7B00;
  /* Subtle orange border highlight on hover */
  background: rgba(255, 255, 255, 0.08);
  backdrop-filter: blur(8px) saturate(150%);
  -webkit-backdrop-filter: blur(8px) saturate(150%);
  backdrop-filter: blur(16px) saturate(130%);
  -webkit-backdrop-filter: blur(16px) saturate(130%);
  background: linear-gradient(145deg, rgba(255, 255, 255, 0.85) 0%, rgba(255, 255, 255, 0.65) 50%, rgba(255, 255, 255, 0.45) 100%);
  box-shadow:
    inset 0 -2px 5px rgba(0, 0, 0, 0.05),
    inset 0 -1px 1px rgba(255, 255, 255, 0.4),
    inset 0 4px 12px rgba(255, 255, 255, 0.8),
    inset 0 1px 1px rgba(255, 255, 255, 1),
    inset 0 0 20px rgba(255, 255, 255, 0.6),
    0 0px 2px -5px rgba(255, 255, 255, 0.5),
    0 10px 20px -10px rgba(0, 0, 0, 0.1),
    0 4px 8px -2px rgba(0, 0, 0, 0.05);
}

.edu-stat-circle:hover .edu-stat-icon svg {
  transform: scale(1.15) translateY(-5px);
  filter: drop-shadow(0px 12px 15px rgba(255, 123, 0, 0.2));
  /* Orange glowing shadow on hover */
}

/* Responsive Design */
@media (max-width: 1200px) {
  .edu-stat-circle {
    width: 280px;
    height: 280px;
    margin-left: -50px;
  }

  .edu-stat-number {
    font-size: 3.2rem;
  }

  .edu-stat-icon svg {
    width: 56px;
    height: 56px;
  }
}

@media (max-width: 950px) {
  .edu-stats-wrapper {
    flex-wrap: wrap;
    max-width: 650px;
    gap: 20px;
    margin-left: 0;
  }

  .edu-stat-circle {
    margin-left: 0;
    /* Remove horizontal overlap */
    background-color: transparent;
  }

  #edu-circle-1,
  #edu-circle-2,
  #edu-circle-3,
  #edu-circle-4 {
    margin-left: 0;
  }
}

@media (max-width: 600px) {
  .edu-stats-wrapper {
    flex-direction: column;
    gap: 0;
  }

  .edu-stat-circle {
    margin-left: 0;
    margin-top: -60px;
    /* Vertical Venn overlap for mobile */
  }

  #edu-circle-1 {
    margin-top: 0;
  }
}

/* testimonials */

/* 1st Card & Repeats (1, 4, 7...): Dark Color */
.testim-swiper .swiper-slide:nth-child(3n + 1) {
  background-color: #252525;
  color: #ffffff;
  backdrop-filter: blur(16px) saturate(130%);
  -webkit-backdrop-filter: blur(16px) saturate(130%);
  background: linear-gradient(145deg, rgba(55, 12, 20, 0.85) 0%, rgba(43, 10, 18, 0.85) 50%, rgba(21, 4, 8, 0.98) 100%);
  box-shadow:
    inset 0 -2px 5px rgba(0, 0, 0, 0.6),
    inset 0 -1px 1px rgba(255, 255, 255, 0.05),
    inset 0 4px 12px rgba(255, 255, 255, 0.12),
    inset 0 1px 1px rgba(255, 255, 255, 0.25),
    inset 0 0 20px rgba(255, 255, 255, 0.05),
    0 0px 2px -5px rgba(55, 12, 20, 0.4),
    0 10px 20px -10px rgba(10, 2, 4, 0.6),
    0 4px 8px -2px rgba(0, 0, 0, 0.4);
}

/* 2nd Card & Repeats (2, 5, 8...): Primary Saffron */
.testim-swiper .swiper-slide:nth-child(3n + 2) {
  background-color: #FF6A3A;
  color: #ffffff;
  /* White text for readability */
  backdrop-filter: blur(16px) saturate(130%);
  -webkit-backdrop-filter: blur(16px) saturate(130%);
  background: linear-gradient(145deg, var(--glass-color-light) 0%, var(--glass-color-mid) 50%, var(--glass-color-dark) 100%);
  box-shadow: inset 0 -2px 5px rgba(0, 0, 0, 0.2), inset 0 -1px 1px var(--glass-edge-bottom), inset 0 4px 12px var(--glass-surface-glare), inset 0 1px 1px var(--glass-edge-top), inset 0 0 20px rgba(255, 255, 255, 0.25), 0 0px 2px -5px var(--glass-ambient-glow), 0 10px 20px -10px var(--glass-drop-shadow), 0 4px 8px -2px rgba(0, 0, 0, 0.15);
  /* border: 1px solid rgba(255, 255, 255, 0.25); */
}

/* 3rd Card & Repeats (3, 6, 9...): Light Grey Color */
.testim-swiper .swiper-slide:nth-child(3n + 3) {
  background-color: #f8f9fa;
  color: #333333;
  /* Dark text for readability */
  backdrop-filter: blur(16px) saturate(130%);
  -webkit-backdrop-filter: blur(16px) saturate(130%);
  background: linear-gradient(145deg, rgba(255, 255, 255, 0.95) 0%, rgba(255, 255, 255, 0.85) 50%, rgba(255, 255, 255, 0.70) 100%);
  box-shadow:
    inset 0 -2px 5px rgba(0, 0, 0, 0.03),
    inset 0 -1px 1px rgba(255, 255, 255, 0.5),
    inset 0 4px 12px rgba(255, 255, 255, 0.9),
    inset 0 1px 1px rgba(255, 255, 255, 1),
    inset 0 0 20px rgba(255, 255, 255, 0.8),
    0 0px 2px -5px rgba(255, 255, 255, 0.6),
    0 10px 20px -10px rgba(0, 0, 0, 0.08),
    0 4px 8px -2px rgba(0, 0, 0, 0.04);
}

/* Dynamic SVG Icon Color */
/* currentColor automatically inherits the text color of the parent card */
.testim-swiper .swiper-slide .quote-icon path.quote-path {
  fill: currentColor;
}

/* Ensure all text inside inherits the correct color smoothly */
.testim-swiper .swiper-slide p,
.testim-swiper .swiper-slide h6 {
  color: inherit;
}

/* Team */
.gk-team-card {
  background-color: #ffffff;
  border-radius: 20px;
  border: 1px solid #eef0f2;
  position: relative;
  max-width: 350px;
  margin: 0 auto 30px auto;
  display: flex;
  flex-direction: column;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.03);
  transition: transform 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275), box-shadow 0.4s ease;
}

/* The 3D Lift effect on card hover */
.gk-team-card:hover {
  transform: translateY(-10px);
  box-shadow: 0 20px 40px rgba(56, 16, 18, 0.08);
}

.gk-team-img-wrap {
  position: relative;
  height: 360px;
  width: 100%;
  border-radius: 20px 20px 0 0;
  overflow: hidden;
  /* The magic trick for the exact circular cutout! */
  -webkit-mask-image: radial-gradient(circle at 75px 100%, transparent 38px, black 39px);
  mask-image: radial-gradient(circle at 75px 100%, transparent 38px, black 39px);
}

.gk-team-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top center;
  transition: transform 0.7s cubic-bezier(0.4, 0, 0.2, 1);
}

/* Cinematic Zoom effect on image */
.gk-team-card:hover .gk-team-img {
  transform: scale(1.08);
}

/* Orange gradient overlay on hover matching logo */
.gk-team-overlay {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 70%;
  background: linear-gradient(to top, rgba(242, 101, 34, 0.95) 0%, rgba(242, 101, 34, 0.4) 50%, transparent 100%);
  opacity: 0;
  transition: opacity 0.5s ease;
  pointer-events: none;
}

.gk-team-card:hover .gk-team-overlay {
  opacity: 1;
}

/* Text Info Area */
.gk-team-info {
  padding: 40px 25px 25px 25px;
  position: relative;
  background-color: #ffffff;
  border-radius: 0 0 20px 20px;
}

.gk-team-name {
  font-size: 21px;
  font-weight: 800;
  color: #381012;
  /* Dark maroon from logo */
  margin-bottom: 0px;
  /* letter-spacing: -0.5px; */
  margin-top: 0;
  position: relative;
  display: inline-block;
}

/* Animated Underline for the Name */
.gk-team-name::after {
  content: '';
  position: absolute;
  left: 0;
  bottom: -2px;
  width: 0;
  height: 3px;
  background-color: #f26522;
  /* Vibrant Orange */
  border-radius: 2px;
  transition: width 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.gk-team-card:hover .gk-team-name::after {
  width: 100%;
}

/* Interactive Role Badge Styling */
.gk-team-role {
  display: inline-block;
  background: rgba(242, 101, 34, 0.08);
  /* Super light orange */
  color: #f26522;
  padding: 5px 14px;
  border-radius: 20px;
  font-size: 11px;
  font-weight: 600;
  margin-top: 10px;
  letter-spacing: 0.5px;
  text-transform: uppercase;
  transition: all 0.4s ease;
}

/* Role Badge flips colors on hover */
.gk-team-card:hover .gk-team-role {
  background: #f26522;
  color: #ffffff;
  box-shadow: 0 4px 12px rgba(242, 101, 34, 0.25);
  transform: translateX(4px);
  backdrop-filter: blur(16px) saturate(130%);
  -webkit-backdrop-filter: blur(16px) saturate(130%);
  background: linear-gradient(145deg, var(--glass-color-light) 0%, var(--glass-color-mid) 50%, var(--glass-color-dark) 100%);
  box-shadow: inset 0 -2px 5px rgba(0, 0, 0, 0.2), inset 0 -1px 1px var(--glass-edge-bottom), inset 0 4px 12px var(--glass-surface-glare), inset 0 1px 1px var(--glass-edge-top), inset 0 0 20px rgba(255, 255, 255, 0.25), 0 0px 2px -5px var(--glass-ambient-glow), 0 10px 20px -10px var(--glass-drop-shadow), 0 4px 8px -2px rgba(0, 0, 0, 0.15);
  border: 1px solid rgba(255, 255, 255, 0.25);
}

/* The Expanding Pill Button Wrapper */
.gk-team-btn-wrapper {
  position: absolute;
  left: 75px;
  top: 0;
  z-index: 10;
}

.gk-team-btn-pill {
  position: absolute;
  left: -32px;
  bottom: -32px;
  width: 64px;
  height: 64px;
  background-color: #381012;
  /* Dark maroon from logo */
  border-radius: 32px;
  overflow: hidden;
  transition: height 0.5s cubic-bezier(0.4, 0, 0.2, 1);
  display: flex;
  flex-direction: column;
  align-items: center;
  box-shadow: 0 5px 15px rgba(56, 16, 18, 0.25);
  backdrop-filter: blur(16px) saturate(130%);
  -webkit-backdrop-filter: blur(16px) saturate(130%);
  background: linear-gradient(145deg, rgba(55, 12, 20, 0.85) 0%, rgba(43, 10, 18, 0.85) 50%, rgba(21, 4, 8, 0.98) 100%);
  box-shadow:
    inset 0 -2px 5px rgba(0, 0, 0, 0.6),
    inset 0 -1px 1px rgba(255, 255, 255, 0.05),
    inset 0 4px 12px rgba(255, 255, 255, 0.12),
    inset 0 1px 1px rgba(255, 255, 255, 0.25),
    inset 0 0 20px rgba(255, 255, 255, 0.05),
    0 0px 2px -5px rgba(55, 12, 20, 0.4),
    0 10px 20px -10px rgba(10, 2, 4, 0.6),
    0 4px 8px -2px rgba(0, 0, 0, 0.4);
}

/* Hover effect triggers the pill to expand UPWARD */
.gk-team-card:hover .gk-team-btn-pill {
  height: 220px;
}

/* Static Share Icon */
.gk-team-share-icon {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 64px;
  height: 64px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  font-size: 20px;
  transition: opacity 0.3s ease, transform 0.3s ease;
}

/* Pulse Radar Animation behind the share icon */
@keyframes gk-pulse-ring {
  0% {
    transform: scale(0.8);
    opacity: 0.5;
  }

  100% {
    transform: scale(1.6);
    opacity: 0;
  }
}

.gk-team-share-icon::before {
  content: '';
  position: absolute;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background-color: rgba(255, 255, 255, 0.25);
  z-index: -1;
  animation: gk-pulse-ring 2s infinite;
}

.gk-team-card:hover .gk-team-share-icon {
  opacity: 0;
  visibility: hidden;
  transform: scale(0.5);
}

/* Social Icons inside the pill */
.gk-team-socials {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: flex-start;
  padding-top: 25px;
  gap: 18px;
  visibility: hidden;
}

.gk-team-card:hover .gk-team-socials {
  visibility: visible;
}

/* Bouncy Staggered Icon Entrance */
.gk-team-socials a {
  color: #ffffff;
  font-size: 18px;
  text-decoration: none;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 50%;

  /* Animation starting state */
  transform: translateY(20px) scale(0.5);
  opacity: 0;
  transition: color 0.2s ease, transform 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275), opacity 0.4s ease;
}

/* Final state on hover */
.gk-team-card:hover .gk-team-socials a {
  transform: translateY(0) scale(1);
  opacity: 1;
}

/* Staggering the animation delay so they pop up one by one */
.gk-team-card:hover .gk-team-socials a:nth-child(1) {
  transition-delay: 0.10s;
}

.gk-team-card:hover .gk-team-socials a:nth-child(2) {
  transition-delay: 0.15s;
}

.gk-team-card:hover .gk-team-socials a:nth-child(3) {
  transition-delay: 0.20s;
}

.gk-team-card:hover .gk-team-socials a:nth-child(4) {
  transition-delay: 0.25s;
}

.gk-team-socials a:hover {
  color: #f26522;
  /* Orange highlight on hover matching logo */
}

/* faqs section */
.gk-faq-master-container {
  --gk-primary: #3b0a0a;
  /* Deep maroon from logo */
  --gk-secondary: #555555;
  --gk-accent: #f78c1e;
  /* Vibrant orange */
  --gk-accent-gradient: linear-gradient(135deg, #f78c1e 0%, #ffb347 50%, #d45d00 100%);
  --gk-bg-color: #fafafa;
  background-color: var(--gk-bg-color);
  color: var(--gk-primary);
  position: relative;
  /* Using clip prevents horizontal scrollbars without breaking sticky */
  overflow: clip !important;
  padding: 10px 0 30px;
  width: 100%;
}

/* Enforce box-sizing only inside our component to prevent layout breaking */
.gk-faq-master-container *,
.gk-faq-master-container *::before,
.gk-faq-master-container *::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

.gk-faq-bg-wrapper {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  pointer-events: none;
}

.gk-faq-shape {
  position: absolute;
}

.gk-faq-shape-dots {
  top: 10%;
  right: 5%;
  opacity: 0.6;
  animation: gkFloatShape 8s infinite linear alternate;
}

@keyframes gkFloatShape {
  from {
    transform: translateY(0px) translateX(0px);
  }

  to {
    transform: translateY(20px) translateX(-10px);
  }
}

/* CSS Grid for maximum sticky compatibility */
.gk-faq-wrapper {
  max-width: 1200px;
  margin: 0 auto;
  padding: 40px 24px;
  display: grid;
  grid-template-columns: 1fr;
  gap: 60px;
  position: relative;
  z-index: 1;
}

@media (min-width: 992px) {
  .gk-faq-wrapper {
    grid-template-columns: 450px 1fr;
    gap: 50px;
    padding: 60px 40px 15px;
    /* align-items: start stops the right column from stretching the left one */
    align-items: start;
  }

  .gk-faq-left-col {
    position: -webkit-sticky !important;
    position: sticky !important;
    top: 120px !important;
    z-index: 10;
    width: 100%;
    /* CRITICAL STICKY FIXES: */
    align-self: start;
    height: max-content;
  }
}

.gk-faq-left-col {
  position: relative;
}

.gk-faq-shape-ring {
  position: absolute;
  top: 6%;
  left: -80px;
  width: 380px;
  height: 380px;
  border: 2px dashed rgba(59, 10, 10, 0.15);
  border-radius: 50%;
  animation: gkRotateShape 40s infinite linear;
  z-index: -1;
  pointer-events: none;
}

@keyframes gkRotateShape {
  from {
    transform: rotate(0deg);
  }

  to {
    transform: rotate(360deg);
  }
}

.gk-faq-subtitle {
  font-size: 14px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1px;
  margin-bottom: 20px;
  display: flex;
  align-items: center;
  gap: 8px;
}

.gk-faq-subtitle::before {
  content: "//";
  color: var(--gk-accent);
}

.gk-faq-title {
  font-size: clamp(40px, 5vw, 64px);
  font-weight: 800;
  line-height: 1.1;
  letter-spacing: -1.5px;
  margin-bottom: 25px;
}

.gk-faq-image-group {
  position: relative;
  margin-top: 0px;
  display: inline-flex;
  align-items: center;
}

.gk-faq-img-circle {
  width: 325px;
  height: 325px;
  border-radius: 50%;
  position: relative;
  z-index: 2;
  box-shadow: 0 10px 40px rgba(0, 0, 0, 0.08);
  overflow: hidden;
}

.gk-faq-img-circle img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.gk-faq-img-circle::after {
  content: '';
  position: absolute;
  inset: 0;
  background: rgba(247, 140, 30, 0.15);
  mix-blend-mode: multiply;
  pointer-events: none;
}

.gk-faq-accent-pill {
  position: relative;
  margin-left: 0;
  width: 160px;
  height: 320px;
  background: var(--gk-accent-gradient);
  background-size: 200% 200%;
  border-top-right-radius: 160px;
  border-bottom-right-radius: 160px;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 1;
  box-shadow: 10px 10px 40px rgba(247, 140, 30, 0.3);
  animation: gkAnimateGradient 4s ease infinite;
  backdrop-filter: blur(16px) saturate(130%);
  -webkit-backdrop-filter: blur(16px) saturate(130%);
  background: linear-gradient(145deg, var(--glass-color-light) 0%, var(--glass-color-mid) 50%, var(--glass-color-dark) 100%);
  box-shadow: inset 0 -2px 5px rgba(0, 0, 0, 0.2), inset 0 -1px 1px var(--glass-edge-bottom), inset 0 4px 12px var(--glass-surface-glare), inset 0 1px 1px var(--glass-edge-top), inset 0 0 20px rgba(255, 255, 255, 0.25), 0 0px 2px -5px var(--glass-ambient-glow), 0 10px 20px -10px var(--glass-drop-shadow), 0 4px 8px -2px rgba(0, 0, 0, 0.15);
}

@keyframes gkAnimateGradient {
  0% {
    background-position: 0% 50%;
  }

  50% {
    background-position: 100% 50%;
  }

  100% {
    background-position: 0% 50%;
  }
}

.gk-faq-pill-text {
  transform: rotate(-90deg);
  white-space: nowrap;
  font-weight: 800;
  font-size: 20px;
  line-height: 1.2;
  letter-spacing: -0.5px;
  color: #ffffff;
  text-align: center;
  text-shadow: 1px 1px 4px rgba(0, 0, 0, 0.25);
}

.gk-faq-doodle {
  position: absolute;
  bottom: -50px;
  right: 10px;
  width: 60px;
  opacity: 0.8;
  z-index: 3;
}

@media (max-width: 768px) {
  .gk-faq-image-group {
    transform: scale(0.85);
    transform-origin: left center;
    flex-direction: column;
  }

  .gk-faq-accent-pill {
    transform: rotate(90deg);
    transform-origin: top center;
    border-radius: 160px 160px 0 0;
    width: 320px;
    height: 160px;
    margin-top: -160px;
    z-index: 0;
  }

  .gk-faq-pill-text {
    transform: rotate(0);
    margin-top: 80px;
  }

  .gk-faq-doodle {
    bottom: -20px;
    right: -40px;
    transform: rotate(-90deg);
  }
}

.gk-faq-right-col {
  width: 100%;
  max-width: 100%;
  height: 100vh;
  overflow-y: scroll;
}

.gk-faq-item {
  background-color: #ffffff;
  border-radius: 16px;
  margin-bottom: 20px;
  position: relative;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04);
  transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
  transform: translateY(0);
  z-index: 1;
}

.gk-faq-item::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 5px;
  background: var(--gk-accent-gradient);
  background-size: 200% 200%;
  border-radius: 16px 0 0 16px;
  opacity: 0;
  transition: opacity 0.4s ease;
  animation: gkAnimateGradient 4s ease infinite;
}

.gk-faq-item:hover {
  box-shadow: 0 12px 32px rgba(0, 0, 0, 0.08);
  transform: translateY(-3px);
}

.gk-faq-btn {
  width: 100%;
  text-align: left;
  padding: 15px 30px 10px;
  background: none;
  border: none;
  cursor: pointer;
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-family: inherit;
  font-size: 18px;
  font-weight: 700;
  color: var(--gk-primary);
  transition: color 0.3s ease;
  outline: none;
}

.gk-faq-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background-color: #f7f7f7;
  transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
  flex-shrink: 0;
  margin-left: 20px;
  position: relative;
  overflow: hidden;
  backdrop-filter: blur(16px) saturate(130%);
  -webkit-backdrop-filter: blur(16px) saturate(130%);
  background: linear-gradient(145deg, rgba(255, 255, 255, 0.85) 0%, rgba(255, 255, 255, 0.65) 50%, rgba(255, 255, 255, 0.45) 100%);
  box-shadow:
    inset 0 -2px 5px rgba(0, 0, 0, 0.05),
    inset 0 -1px 1px rgba(255, 255, 255, 0.4),
    inset 0 4px 12px rgba(255, 255, 255, 0.8),
    inset 0 1px 1px rgba(255, 255, 255, 1),
    inset 0 0 20px rgba(255, 255, 255, 0.6),
    0 0px 2px -5px rgba(255, 255, 255, 0.5),
    0 10px 20px -10px rgba(0, 0, 0, 0.1),
    0 4px 8px -2px rgba(0, 0, 0, 0.05);
}

.gk-faq-icon span {
  position: absolute;
  background-color: var(--gk-primary);
  border-radius: 2px;
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.gk-faq-icon-h {
  width: 16px;
  height: 2px;
}

/* Horizontal line */
.gk-faq-icon-v {
  width: 2px;
  height: 16px;
}

/* Vertical line */

.gk-faq-item:hover .gk-faq-icon {
  background-color: #f0f0f0;
  transform: scale(1.05);
}

.gk-faq-answer-box {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.5s cubic-bezier(0.4, 0, 0.2, 1);
}

.gk-faq-answer-inner {
  overflow: hidden;
}

.gk-faq-answer-text {
  padding: 0 30px 28px 30px;
  color: var(--gk-secondary);
  font-size: 16px;
  line-height: 1.7;
  opacity: 0;
  transform: translateY(-10px);
  transition: opacity 0.5s ease, transform 0.5s ease;
}

.gk-faq-item.is-active {
  box-shadow: 0 15px 40px rgba(247, 140, 30, 0.12);
  background: linear-gradient(to right, #ffffff, #fffdfa);
}

.gk-faq-item.is-active::before {
  opacity: 1;
}

.gk-faq-item.is-active .gk-faq-answer-box {
  grid-template-rows: 1fr;
}

.gk-faq-item.is-active .gk-faq-answer-text {
  opacity: 1;
  transform: translateY(0);
  transition-delay: 0.1s;
}

.gk-faq-item.is-active .gk-faq-icon {
  background: var(--gk-accent-gradient);
  background-size: 200% 200%;
  animation: gkAnimateGradient 4s ease infinite;
  backdrop-filter: blur(16px) saturate(130%);
  -webkit-backdrop-filter: blur(16px) saturate(130%);
  background: linear-gradient(145deg, var(--glass-color-light) 0%, var(--glass-color-mid) 50%, var(--glass-color-dark) 100%);
  box-shadow: inset 0 -2px 5px rgba(0, 0, 0, 0.2), inset 0 -1px 1px var(--glass-edge-bottom), inset 0 4px 12px var(--glass-surface-glare), inset 0 1px 1px var(--glass-edge-top), inset 0 0 20px rgba(255, 255, 255, 0.25), 0 0px 2px -5px var(--glass-ambient-glow), 0 10px 20px -10px var(--glass-drop-shadow), 0 4px 8px -2px rgba(0, 0, 0, 0.15);
  border: 1px solid rgba(255, 255, 255, 0.25);
}

.gk-faq-item.is-active .gk-faq-icon-h {
  background-color: #ffffff;
  transform: rotate(180deg);
}

.gk-faq-item.is-active .gk-faq-icon-v {
  background-color: #ffffff;
  transform: rotate(90deg);
  /* Turns vertical into horizontal */
}

/* Certification */

.gk-cert-section {
  --gk-cream: #fff8ef;
  --gk-cream-deep: #fbe9d2;
  --gk-ink: #2b0a10;
  --gk-ink-soft: #4a1620;
  --gk-orange-1: #ffb347;
  --gk-orange-2: #f4741e;
  --gk-orange-3: #d94a1a;
  --gk-gold: #c99a3d;
  position: relative;
  width: 100%;
  isolation: isolate;
  background: linear-gradient(180deg, #fffaf3 0%, #fdeedb 45%, #fbe4c9 100%);
  padding: 55px 24px 65px;
  overflow: hidden;
}

/* ---------------- Animated background ---------------- */
.gk-cert-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: hidden;
  pointer-events: none;
}

.gk-cert-blob {
  position: absolute;
  border-radius: 50%;
  filter: blur(60px);
  opacity: 0.45;
  animation: gkDrift 16s ease-in-out infinite;
}

.gk-cert-blob--1 {
  width: 420px;
  height: 420px;
  top: -140px;
  left: -120px;
  background: radial-gradient(circle, var(--gk-orange-1), transparent 70%);
  animation-duration: 18s;
}

.gk-cert-blob--2 {
  width: 380px;
  height: 380px;
  bottom: -160px;
  right: -100px;
  background: radial-gradient(circle, var(--gk-orange-3), transparent 70%);
  animation-duration: 22s;
  animation-delay: -4s;
}

.gk-cert-blob--3 {
  width: 300px;
  height: 300px;
  top: 30%;
  left: 45%;
  background: radial-gradient(circle, var(--gk-gold), transparent 70%);
  opacity: 0.28;
  animation-duration: 20s;
  animation-delay: -8s;
}

@keyframes gkDrift {

  0%,
  100% {
    transform: translate(0, 0) scale(1);
  }

  33% {
    transform: translate(30px, -25px) scale(1.08);
  }

  66% {
    transform: translate(-25px, 20px) scale(0.95);
  }
}

/* faint fabric-like grain so the gradient doesn't look flat */
.gk-cert-grain {
  position: absolute;
  inset: 0;
  opacity: 0.05;
  background-image: radial-gradient(circle, #2b0a10 1px, transparent 1px);
  background-size: 22px 22px;
}

.gk-cert-star {
  position: absolute;
  color: var(--gk-gold);
  opacity: 0.5;
  animation: gkTwinkle 3.4s ease-in-out infinite;
}

.gk-cert-star--1 {
  top: 12%;
  left: 7%;
  font-size: 20px;
  animation-delay: 0s;
}

.gk-cert-star--2 {
  top: 22%;
  right: 10%;
  font-size: 14px;
  animation-delay: 0.6s;
}

.gk-cert-star--3 {
  bottom: 18%;
  left: 12%;
  font-size: 16px;
  animation-delay: 1.2s;
}

.gk-cert-star--4 {
  bottom: 28%;
  right: 16%;
  font-size: 22px;
  animation-delay: 1.8s;
}

.gk-cert-star--5 {
  top: 48%;
  left: 3%;
  font-size: 12px;
  animation-delay: 2.4s;
}

@keyframes gkTwinkle {

  0%,
  100% {
    opacity: 0.2;
    transform: scale(0.85) rotate(0deg);
  }

  50% {
    opacity: 0.75;
    transform: scale(1.15) rotate(12deg);
  }
}

/* ---------------- Container / Header ---------------- */
.gk-cert-container {
  position: relative;
  z-index: 1;
  max-width: 1320px;
  margin: 0 auto;
}

.gk-cert-header {
  text-align: center;
  max-width: 850px;
  margin: 0 auto 60px;
}

.gk-cert-eyebrow {
  display: inline-block;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--gk-orange-3);
  margin-bottom: 14px;
}

.gk-cert-heading {
  font-size: clamp(32px, 4.5vw, 50px);
  line-height: 1.12;
  margin: 0 0 16px;
  font-weight: 700;
  background: linear-gradient(100deg, var(--gk-ink) 0%, var(--gk-ink-soft) 45%, var(--gk-orange-3) 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.gk-cert-desc {
  font-size: 16px;
  line-height: 1.75;
  color: #6b5148;
  margin: 0;
  font-family: "Unbounded", sans-serif !important;
}

/* scroll-reveal: hidden until .is-visible is added by JS */
.gk-cert-reveal {
  opacity: 0;
  transform: translateY(28px);
  transition: opacity 0.7s ease var(--gk-delay, 0s), transform 0.7s ease var(--gk-delay, 0s);
}

.gk-cert-reveal.is-visible {
  opacity: 1;
  transform: translateY(0);
}

/* ---------------- Track / Cards ---------------- */
.gk-cert-track {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  gap: 72px;
  position: relative;
}

.gk-cert-track::before {
  content: "";
  position: absolute;
  top: 62px;
  left: 12%;
  right: 12%;
  height: 0;
  border-top: 2px dashed rgba(201, 154, 61, 0.5);
  z-index: 0;
}

.gk-cert-card {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  flex: 0 0 auto;
  transition: transform 0.4s ease;
}

.gk-cert-card:hover {
  transform: translateY(-8px);
}

.gk-cert-seal {
  position: relative;
  width: 170px;
  height: 170px;
  border-radius: 50%;
  background: linear-gradient(145deg, #ffffff, var(--gk-cream-deep));
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow:
    0 12px 26px rgba(217, 74, 26, 0.2),
    0 2px 6px rgba(43, 10, 16, 0.08),
    inset 0 0 0 1px rgba(255, 255, 255, 0.6);
  isolation: isolate;
  animation: gkFloat 5s ease-in-out infinite;
  animation-delay: var(--gk-delay, 0s);
}

@keyframes gkFloat {

  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-8px);
  }
}

.gk-cert-seal-ring {
  position: absolute;
  inset: -9px;
  border-radius: 50%;
  border: 2px dashed transparent;
  background:
    linear-gradient(var(--gk-cream), var(--gk-cream)) padding-box,
    conic-gradient(from 0deg, var(--gk-orange-1), var(--gk-orange-2), var(--gk-orange-3), var(--gk-gold), var(--gk-orange-1)) border-box;
  -webkit-mask: linear-gradient(#000 0 0) padding-box, linear-gradient(#000 0 0);
  mask-composite: exclude;
  -webkit-mask-composite: xor;
  animation: gkSpin 14s linear infinite;
  opacity: 0.85;
  backdrop-filter: blur(16px) saturate(130%);
  -webkit-backdrop-filter: blur(16px) saturate(130%);
  background: linear-gradient(145deg, rgba(255, 255, 255, 0.85) 0%, rgba(255, 255, 255, 0.65) 50%, rgba(255, 255, 255, 0.45) 100%);
  box-shadow:
    inset 0 -2px 5px rgba(0, 0, 0, 0.05),
    inset 0 -1px 1px rgba(255, 255, 255, 0.4),
    inset 0 4px 12px rgba(255, 255, 255, 0.8),
    inset 0 1px 1px rgba(255, 255, 255, 1),
    inset 0 0 20px rgba(255, 255, 255, 0.6),
    0 0px 2px -5px rgba(255, 255, 255, 0.5),
    0 10px 20px -10px rgba(0, 0, 0, 0.1),
    0 4px 8px -2px rgba(0, 0, 0, 0.05);
}

.gk-cert-card:hover .gk-cert-seal-ring {
  animation-duration: 4s;
}

@keyframes gkSpin {
  to {
    transform: rotate(360deg);
  }
}

/* periodic light sweep across each seal */
.gk-cert-seal-shine {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  overflow: hidden;
  pointer-events: none;
}

.gk-cert-seal-shine::after {
  content: "";
  position: absolute;
  top: -50%;
  left: -180%;
  width: 60%;
  height: 200%;
  background: linear-gradient(100deg, transparent 20%, rgba(255, 255, 255, 0.75) 50%, transparent 80%);
  transform: rotate(20deg);
  animation: gkSweep 5s ease-in-out infinite;
  animation-delay: calc(var(--gk-delay, 0s) + 1s);
}

@keyframes gkSweep {
  0% {
    left: -180%;
  }

  35% {
    left: 180%;
  }

  100% {
    left: 180%;
  }
}

.gk-cert-img {
  width: 140px;
  height: 140px;
  object-fit: contain;
  filter: drop-shadow(0 2px 3px rgba(0, 0, 0, 0.08));
  position: relative;
  z-index: 1;
}

.gk-cert-label {
  margin-top: 20px;
  font-size: 15px;
  font-weight: 700;
  color: var(--gk-ink-soft);
  letter-spacing: 0.01em;
  text-align: center;
  white-space: nowrap;
}

.gk-cert-sub {
  margin-top: 4px;
  font-size: 12.5px;
  color: #8a6f64;
  text-align: center;
}

/* dots hidden on desktop */
.gk-cert-dots {
  display: none;
}

/* ---------------- Responsive: Mobile auto-scroll slider ---------------- */
@media (max-width: 720px) {
  .gk-cert-section {
    padding: 84px 0 68px;
  }

  .gk-cert-container {
    padding: 0 20px;
  }

  .gk-cert-header {
    margin-bottom: 46px;
  }

  .gk-cert-track {
    display: flex;
    justify-content: flex-start;
    gap: 0;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    padding: 8px 0 4px;
    margin: 0 -20px;
  }

  .gk-cert-track::-webkit-scrollbar {
    display: none;
  }

  .gk-cert-track::before {
    display: none;
  }

  .gk-cert-card {
    flex: 0 0 100%;
    scroll-snap-align: center;
    padding: 0 20px;
  }

  .gk-cert-seal {
    width: 148px;
    height: 148px;
  }

  .gk-cert-img {
    width: 82px;
    height: 82px;
  }

  .gk-cert-dots {
    display: flex;
    justify-content: center;
    gap: 10px;
    margin-top: 32px;
  }

  .gk-cert-dot {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    border: none;
    background: rgba(217, 74, 26, 0.25);
    padding: 0;
    cursor: pointer;
    transition: background 0.25s ease, transform 0.25s ease;
  }

  .gk-cert-dot.is-active {
    background: linear-gradient(90deg, var(--gk-orange-2), var(--gk-orange-3));
    transform: scale(1.3);
  }
}

@media (prefers-reduced-motion: reduce) {

  .gk-cert-seal-ring,
  .gk-cert-seal,
  .gk-cert-blob,
  .gk-cert-star,
  .gk-cert-seal-shine::after {
    animation: none !important;
  }

  .gk-cert-card,
  .gk-cert-reveal {
    transition: none !important;
    opacity: 1 !important;
    transform: none !important;
  }
}

/* Download App */
.gk-appdl {
  /* ---- design tokens (scoped to this section only) ---- */
  --gk-cream: #FFF6EA;
  --gk-cream-2: #FFEBD2;
  --gk-orange: #FF8A34;
  --gk-orange-deep: #EF5A0C;
  --gk-maroon: #2B0A12;
  --gk-ink: #4A2A1B;
  --gk-gold: #FFC24B;
  --gk-white: #FFFFFF;
  --gk-line: rgba(43, 10, 18, 0.10);
  position: relative;
  overflow: hidden;
  isolation: isolate;
  background:
    radial-gradient(120% 140% at 88% 8%, #FFE3BE 0%, transparent 55%),
    linear-gradient(180deg, var(--gk-cream) 0%, var(--gk-cream-2) 100%);
  padding: 3rem 1.5rem;
  color: var(--gk-ink);
  box-sizing: border-box;
}

.gk-appdl *,
.gk-appdl *::before,
.gk-appdl *::after {
  box-sizing: border-box;
}

/* ---------- ambient background decor ---------- */
.gk-appdl__decor {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
}

.gk-appdl__blob {
  position: absolute;
  border-radius: 50%;
  filter: blur(60px);
  opacity: 0.55;
}

.gk-appdl__blob--a {
  width: 34rem;
  height: 34rem;
  top: -12rem;
  right: -8rem;
  background: radial-gradient(circle, var(--gk-orange) 0%, transparent 70%);
}

.gk-appdl__blob--b {
  width: 22rem;
  height: 22rem;
  bottom: -8rem;
  left: -6rem;
  background: radial-gradient(circle, var(--gk-gold) 0%, transparent 70%);
  opacity: 0.35;
}

.gk-appdl__grid {
  position: absolute;
  inset: 0;
  background-image: radial-gradient(rgba(43, 10, 18, 0.09) 1.4px, transparent 1.4px);
  background-size: 26px 26px;
  mask-image: radial-gradient(ellipse 60% 55% at 20% 40%, black 10%, transparent 75%);
  opacity: 0.6;
}

/* rising coin motif — the section's signature element */
.gk-appdl__coin {
  position: absolute;
  width: 2.1rem;
  height: 2.1rem;
  border-radius: 50%;
  display: grid;
  place-items: center;
  font-family: var(--gk-font-mono);
  font-weight: 700;
  font-size: 0.95rem;
  color: #8A4B0B;
  background: linear-gradient(155deg, #FFE9B8 0%, var(--gk-gold) 55%, #F2A93B 100%);
  box-shadow: 0 4px 10px rgba(180, 110, 20, 0.35), inset 0 1px 2px rgba(255, 255, 255, 0.8);
  opacity: 0;
  animation: gk-coin-rise linear infinite;
}

.gk-appdl__coin--1 {
  left: 6%;
  bottom: -5%;
  animation-duration: 9s;
  animation-delay: 0.2s;
}

.gk-appdl__coin--2 {
  left: 46%;
  bottom: -5%;
  animation-duration: 11s;
  animation-delay: 2.4s;
  width: 1.5rem;
  height: 1.5rem;
  font-size: 0.7rem;
}

.gk-appdl__coin--3 {
  left: 68%;
  bottom: -5%;
  animation-duration: 8s;
  animation-delay: 1.1s;
}

.gk-appdl__coin--4 {
  left: 30%;
  bottom: -5%;
  animation-duration: 12s;
  animation-delay: 3.6s;
  width: 1.6rem;
  height: 1.6rem;
  font-size: 0.75rem;
}

.gk-appdl__coin--5 {
  left: 85%;
  bottom: -5%;
  animation-duration: 10s;
  animation-delay: 0.8s;
}

@keyframes gk-coin-rise {
  0% {
    transform: translateY(0) rotate(0deg);
    opacity: 0;
  }

  8% {
    opacity: 0.9;
  }

  85% {
    opacity: 0.7;
  }

  100% {
    transform: translateY(-115vh) rotate(340deg);
    opacity: 0;
  }
}

/* ---------- layout ---------- */
.gk-appdl__container {
  position: relative;
  z-index: 1;
  max-width: 1180px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1.02fr 1fr;
  align-items: center;
  gap: 3rem;
}

/* ---------- left content ---------- */
.gk-appdl__content {
  max-width: 34rem;
}

.gk-appdl__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  font-family: var(--gk-font-mono);
  font-size: 0.72rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--gk-orange-deep);
  background: rgba(255, 138, 52, 0.12);
  border: 1px solid rgba(255, 138, 52, 0.3);
  padding: 0.4rem 0.8rem;
  border-radius: 100px;
  opacity: 0;
  animation: gk-fade-up 0.7s ease forwards;
}

.gk-appdl__eyebrow::before {
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--gk-orange-deep);
  display: inline-block;
}

.gk-appdl__heading {
  font-family: var(--gk-font-display);
  font-weight: 600;
  font-size: clamp(2.2rem, 3.6vw + 1rem, 3.4rem);
  line-height: 1.1;
  letter-spacing: -0.01em;
  color: var(--gk-maroon);
  margin: 1.1rem 0 1.1rem;
  opacity: 0;
  animation: gk-fade-up 0.7s ease forwards;
  animation-delay: 0.08s;
}

.gk-appdl__heading em {
  font-style: italic;
  color: var(--gk-orange-deep);
  position: relative;
  white-space: nowrap;
}

.gk-appdl__heading em svg {
  position: absolute;
  left: 0;
  bottom: -0.32em;
  width: 100%;
  height: 0.3em;
}

.gk-appdl__subtext {
  font-size: 1.08rem;
  line-height: 1.6;
  color: var(--gk-ink);
  opacity: 0;
  max-width: 30rem;
  animation: gk-fade-up 0.7s ease forwards;
  animation-delay: 0.16s;
}

.gk-appdl__subtext strong {
  color: var(--gk-maroon);
  font-weight: 700;
}

/* stat chips row */
.gk-appdl__stats {
  display: flex;
  gap: 1.6rem;
  margin: 1.9rem 0 2.1rem;
  opacity: 0;
  animation: gk-fade-up 0.7s ease forwards;
  animation-delay: 0.24s;
}

.gk-appdl__stat {
  display: flex;
  flex-direction: column;
  gap: 0.1rem;
}

.gk-appdl__stat strong {
  font-family: var(--gk-font-display);
  font-size: 1.5rem;
  color: var(--gk-maroon);
  font-weight: 700;
}

.gk-appdl__stat span {
  font-family: var(--gk-font-mono);
  font-size: 0.68rem;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: rgba(74, 42, 27, 0.7);
}

.gk-appdl__stats::before,
.gk-appdl__divider {
  display: none;
}

.gk-appdl__stat+.gk-appdl__stat {
  padding-left: 1.6rem;
  border-left: 1px solid var(--gk-line);
}

/* store badges */
.gk-appdl__badges {
  display: flex;
  flex-wrap: wrap;
  gap: 0.9rem;
  opacity: 0;
  animation: gk-fade-up 0.7s ease forwards;
  animation-delay: 0.32s;
}

.gk-appdl__badge {
  display: inline-flex;
  align-items: center;
  gap: 0.65rem;
  padding: 0.7rem 1.3rem;
  border-radius: 14px;
  background: var(--gk-maroon);
  color: var(--gk-white);
  text-decoration: none;
  line-height: 1.15;
  box-shadow: 0 8px 20px rgba(43, 10, 18, 0.22);
  transition: transform 0.25s cubic-bezier(.2, .8, .2, 1), box-shadow 0.25s ease, background 0.25s ease;
  border: 1px solid rgba(255, 255, 255, 0.06);
  backdrop-filter: blur(16px) saturate(130%);
  -webkit-backdrop-filter: blur(16px) saturate(130%);
  background: linear-gradient(145deg, rgba(55, 12, 20, 0.85) 0%, rgba(43, 10, 18, 0.85) 50%, rgba(21, 4, 8, 0.98) 100%);
  box-shadow:
    inset 0 -2px 5px rgba(0, 0, 0, 0.6),
    inset 0 -1px 1px rgba(255, 255, 255, 0.05),
    inset 0 4px 12px rgba(255, 255, 255, 0.12),
    inset 0 1px 1px rgba(255, 255, 255, 0.25),
    inset 0 0 20px rgba(255, 255, 255, 0.05),
    0 0px 2px -5px rgba(55, 12, 20, 0.4),
    0 10px 20px -10px rgba(10, 2, 4, 0.6),
    0 4px 8px -2px rgba(0, 0, 0, 0.4);
}

.gk-appdl__badge:hover {
  transform: translateY(-4px);
  box-shadow: 0 14px 28px rgba(43, 10, 18, 0.3);
  background: #3a1220;
}

.gk-appdl__badge:active {
  transform: translateY(-1px);
}

.gk-appdl__badge svg {
  width: 1.55rem;
  height: 1.55rem;
  flex-shrink: 0;
}

.gk-appdl__badge-text {
  display: flex;
  flex-direction: column;
}

.gk-appdl__badge-text small {
  font-size: 0.62rem;
  letter-spacing: 0.03em;
  opacity: 0.75;
  text-transform: uppercase;
  color: #fff;
}

.gk-appdl__badge-text strong {
  font-size: 1rem;
  font-weight: 700;
  color: #fff;
}

/* ---------- right visual ---------- */
.gk-appdl__visual {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  min-height: 30rem;
}

.gk-appdl__glow {
  position: absolute;
  width: 26rem;
  height: 26rem;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 138, 52, 0.45) 0%, transparent 68%);
  filter: blur(10px);
  animation: gk-pulse 5s ease-in-out infinite;
  z-index: 0;
}

@keyframes gk-pulse {

  0%,
  100% {
    transform: scale(1);
    opacity: 0.9;
  }

  50% {
    transform: scale(1.08);
    opacity: 1;
  }
}

.gk-appdl__phone-wrap {
  position: relative;
  z-index: 2;
  opacity: 0;
  animation: gk-fade-scale 0.85s cubic-bezier(.2, .8, .2, 1) forwards, gk-float 6s ease-in-out infinite;
  animation-delay: 0.15s, 1s;
  max-width: 26rem;
  width: 100%;
}

.gk-appdl__phones {
  display: block;
  width: 100%;
  height: auto;
  filter: drop-shadow(0 30px 45px rgba(43, 10, 18, 0.28));
}

/* floating info chips over the mockup */
.gk-appdl__chip {
  position: absolute;
  z-index: 3;
  display: flex;
  align-items: center;
  gap: 0.4rem;
  background: rgba(255, 255, 255, 0.9);
  backdrop-filter: blur(6px);
  border: 1px solid rgba(43, 10, 18, 0.08);
  padding: 0.5rem 0.85rem;
  border-radius: 100px;
  font-size: 0.74rem;
  font-weight: 700;
  color: var(--gk-maroon);
  box-shadow: 0 10px 24px rgba(43, 10, 18, 0.14);
  opacity: 0;
  animation: gk-chip-in 0.6s ease forwards, gk-float-chip 4.5s ease-in-out infinite;
}

.gk-appdl__chip--rating {
  top: 6%;
  left: -6%;
  animation-delay: 0.7s, 2.2s;
}

.gk-appdl__chip--edu {
  top: 46%;
  right: -18%;
  animation-delay: 0.95s, 1.4s;
}

.gk-appdl__chip--earn {
  bottom: 8%;
  left: -4%;
  animation-delay: 1.2s, 0.6s;
  background: var(--gk-maroon);
  color: var(--gk-cream);
  backdrop-filter: blur(16px) saturate(130%);
  -webkit-backdrop-filter: blur(16px) saturate(130%);
  background: linear-gradient(145deg, rgba(82, 24, 38, 0.85) 0%, rgba(62, 16, 26, 0.8) 50%, rgba(43, 10, 18, 0.95) 100%);
  box-shadow:
    inset 0 -2px 5px rgba(0, 0, 0, 0.4),
    inset 0 -1px 1px rgba(255, 255, 255, 0.1),
    inset 0 4px 12px rgba(255, 255, 255, 0.2),
    inset 0 1px 1px rgba(255, 255, 255, 0.4),
    inset 0 0 20px rgba(255, 255, 255, 0.1),
    0 0px 2px -5px rgba(82, 24, 38, 0.45),
    0 10px 20px -10px rgba(20, 4, 8, 0.4),
    0 4px 8px -2px rgba(0, 0, 0, 0.25);
}

@keyframes gk-chip-in {
  from {
    opacity: 0;
    transform: translateY(10px) scale(0.9);
  }

  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

@keyframes gk-float-chip {

  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-8px);
  }
}

@keyframes gk-float {

  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-14px);
  }
}

@keyframes gk-fade-up {
  from {
    opacity: 0;
    transform: translateY(16px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes gk-fade-scale {
  from {
    opacity: 0;
    transform: translateY(24px) scale(0.94);
  }

  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

/* ---------- responsive ---------- */
@media (max-width: 980px) {
  .gk-appdl__container {
    grid-template-columns: 1fr;
    text-align: center;
    gap: 2.5rem;
  }

  .gk-appdl__content {
    max-width: 100%;
    margin: 0 auto;
  }

  .gk-appdl__subtext {
    margin-left: auto;
    margin-right: auto;
  }

  .gk-appdl__stats {
    justify-content: center;
  }

  .gk-appdl__badges {
    justify-content: center;
  }

  .gk-appdl__visual {
    min-height: 24rem;
    margin-top: 1rem;
  }

  .gk-appdl__chip--rating {
    left: 2%;
  }

  .gk-appdl__chip--edu {
    right: 2%;
  }

  .gk-appdl__chip--earn {
    left: 2%;
  }
}

@media (max-width: 560px) {
  .gk-appdl {
    padding: 4rem 1.25rem;
  }

  .gk-appdl__stat+.gk-appdl__stat {
    padding-left: 1rem;
  }

  .gk-appdl__stats {
    gap: 1rem;
  }

  .gk-appdl__chip {
    font-size: 0.62rem;
    padding: 0.4rem 0.65rem;
  }

  .gk-appdl__chip--rating,
  .gk-appdl__chip--edu,
  .gk-appdl__chip--earn {
    position: static;
    display: inline-flex;
    margin: 0.3rem;
    opacity: 1;
    animation: none;
  }

  .gk-appdl__chips-row {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    margin-top: 1rem;
  }

  .gk-appdl__coin--4,
  .gk-appdl__coin--5 {
    display: none;
  }
}

/* ---------- accessibility ---------- */
@media (prefers-reduced-motion: reduce) {

  .gk-appdl__eyebrow,
  .gk-appdl__heading,
  .gk-appdl__subtext,
  .gk-appdl__stats,
  .gk-appdl__badges,
  .gk-appdl__phone-wrap,
  .gk-appdl__chip {
    animation: none !important;
    opacity: 1 !important;
    transform: none !important;
  }

  .gk-appdl__coin,
  .gk-appdl__glow {
    animation: none !important;
    opacity: 0.4 !important;
  }
}

.gk-appdl__badge:focus-visible {
  outline: 3px solid var(--gk-orange);
  outline-offset: 3px;
}

/* Product section */
/* ===== Product Price Row ===== */
.prod-price-row {
  display: flex;
  align-items: center;
  gap: 10px;
  margin-top: 13px;
  justify-content: center;
}

.prod-price-discounted {
  font-size: 20px;
  font-weight: 700;
  color: #2b0a0a;
  transition: color 0.3s ease;
}

.prod-price-original {
  font-size: 15px;
  font-weight: 400;
  color: #a89b96;
  text-decoration: line-through;
}

.prod-price-badge {
  font-size: 12px;
  font-weight: 600;
  color: #fff;
  background: linear-gradient(135deg, #ff9a00, #ff5e00);
  padding: 3px 10px;
  border-radius: 20px;
  animation: prodBadgePulse 2s infinite;
}

@keyframes prodBadgePulse {
  0% {
    transform: scale(1);
  }

  50% {
    transform: scale(1.08);
  }

  100% {
    transform: scale(1);
  }
}

/* ===== Quantity + Add to Cart Row ===== */
.prod-action-row {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-top: 14px;
  flex-wrap: wrap;
  justify-content: center;
}

/* Quantity Box */
.prod-qty-box {
  display: flex;
  align-items: center;
  border: 1px solid #e8ddd6;
  border-radius: 30px;
  overflow: hidden;
  transition: border-color 0.3s ease;
}

.prod-qty-box:hover {
  border-color: #ff8000;
}

.prod-qty-btn {
  background: transparent;
  border: none;
  width: 32px;
  height: 32px;
  font-size: 16px;
  cursor: pointer;
  color: #2b0a0a;
  transition: background 0.25s ease, transform 0.2s ease;
}

.prod-qty-btn:hover {
  background: #fff1e0;
  color: #ff5e00;
  transform: scale(1.1);
}

.prod-qty-btn:active {
  transform: scale(0.9);
}

.prod-qty-input {
  width: 34px;
  text-align: center;
  border: none;
  outline: none;
  font-size: 15px;
  font-weight: 700;
  background: transparent;
  color: #2b0a0a !important;
  -webkit-text-fill-color: #2b0a0a;
  opacity: 1;
}

/* Add to Cart Button */
.prod-add-cart-btn {
  display: flex;
  align-items: center;
  gap: 8px;
  background: linear-gradient(135deg, #ff9a00, #ff5e00);
  color: #fff;
  border: none;
  padding: 9px 14px;
  border-radius: 30px;
  font-size: 12px;
  font-weight: 500;
  cursor: pointer;
  position: relative;
  overflow: hidden;
  transition: background 0.35s ease, transform 0.25s ease, box-shadow 0.35s ease;
  backdrop-filter: blur(16px) saturate(130%);
  -webkit-backdrop-filter: blur(16px) saturate(130%);
  background: linear-gradient(145deg, var(--glass-color-light) 0%, var(--glass-color-mid) 50%, var(--glass-color-dark) 100%);
  box-shadow: inset 0 -2px 5px rgba(0, 0, 0, 0.2), inset 0 -1px 1px var(--glass-edge-bottom), inset 0 4px 12px var(--glass-surface-glare), inset 0 1px 1px var(--glass-edge-top), inset 0 0 20px rgba(255, 255, 255, 0.25), 0 0px 2px -5px var(--glass-ambient-glow), 0 10px 20px -10px var(--glass-drop-shadow), 0 4px 8px -2px rgba(0, 0, 0, 0.15);
  border: 1px solid rgba(255, 255, 255, 0.25);
}

.prod-add-cart-btn::before {
  content: "";
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0.2);
  transition: left 0.5s ease;
}

.prod-add-cart-btn:hover::before {
  left: 100%;
}

.prod-add-cart-btn:hover {
  background: linear-gradient(135deg, #2b0a0a, #4a1414);
  box-shadow: 0 8px 20px rgba(43, 10, 10, 0.35);
  transform: translateY(-3px);
}

.prod-add-cart-btn:active {
  transform: translateY(0);
}

.prod-cart-icon {
  display: flex;
  align-items: center;
  transition: transform 0.3s ease;
}

.prod-add-cart-btn:hover .prod-cart-icon {
  transform: rotate(-10deg) scale(1.15);
}

/* Card entry animation */
.prod-price-row,
.prod-action-row {
  opacity: 0;
  animation: prodFadeUp 0.6s ease forwards;
}

.prod-action-row {
  animation-delay: 0.15s;
}

@keyframes prodFadeUp {
  from {
    opacity: 0;
    transform: translateY(12px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.prod-action-row .prod-qty-box input.prod-qty-input {
  width: 34px !important;
  height: 32px !important;
  line-height: 32px !important;
  text-align: center !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  font-family: inherit !important;
  background: transparent !important;
  background-color: transparent !important;
  color: #2b0a0a !important;
  -webkit-text-fill-color: #2b0a0a !important;
  -webkit-appearance: none !important;
  appearance: none !important;
  opacity: 1 !important;
  padding: 0 !important;
  margin: 0 !important;
  display: inline-block !important;
  visibility: visible !important;
}

/* Common Buttons */
/* ===== Common Button Style (reusable) ===== */
.btn-common {
  display: inline-flex;
  align-items: center;
  border: none;
  background: linear-gradient(135deg, #ff9a00, #ff5e00) !important;
  position: relative;
  overflow: hidden;
  transition: background 0.35s ease, transform 0.25s ease, box-shadow 0.35s ease !important;
}

.btn-common::before {
  content: "";
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: rgba(255, 255, 255, 0.2) !important;
  transition: left 0.5s ease !important;
}

.btn-common:hover::before {
  left: 100% !important;
}

.btn-common:hover {
  background: linear-gradient(135deg, #2b0a0a, #4a1414) !important;
  box-shadow: 0 8px 20px rgba(43, 10, 10, 0.35) !important;
  transform: translateY(-3px) !important;
  color: #fff !important;
}

.btn-common:active {
  transform: translateY(0) !important;
}

.gk-headline-arrow {
  position: absolute;
  top: 2%;
  right: 34px;
  width: 55px;
  height: 55px;
  opacity: 0;
  animation: gkRise .7s ease forwards .55s;
}

.gk-sub {
  font-size: 14px;
  text-align: justify;
  font-weight: 300;
  line-height: 1.5;
  color: rgba(255, 255, 255, .72);
  /* max-width: 421px; */
  margin: 0 0 20px;
  opacity: 0;
  animation: gkRise .7s ease forwards .6s;
  font-family: "Unbounded", sans-serif !important;
  letter-spacing: 0.5px;
}

.gk-cta {
  display: flex;
  align-items: center;
  gap: 16px;
  opacity: 0;
  animation: gkRise .7s ease forwards .75s;
}

.gk-btn-primary {
  background: linear-gradient(90deg, var(--gk-orange-3), var(--gk-orange-1));
  color: #fff;
  border: none;
  padding: 16px 30px;
  border-radius: 999px;
  font-weight: 700;
  font-size: 14.5px;
  text-decoration: none;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  box-shadow: 0 14px 30px rgba(255, 92, 0, .35);
  transition: transform .25s ease, box-shadow .25s ease;
}

.gk-btn-primary:hover {
  transform: translateY(-2px);
  box-shadow: 0 18px 36px rgba(255, 92, 0, .45);
  color: #fff;
}

.gk-btn-circle {
  width: 54px;
  height: 54px;
  border-radius: 50%;
  border: 1.5px solid rgba(255, 255, 255, .35);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  transition: background .25s ease, border-color .25s ease, transform .25s ease;
}

.gk-btn-circle:hover {
  background: rgba(255, 255, 255, .1);
  border-color: #fff;
  transform: translateY(-2px) rotate(45deg);
}

.gk-btn-circle svg {
  width: 20px;
  height: 20px;
}

@keyframes gkRise {
  from {
    opacity: 0;
    transform: translateY(10px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes gkLineUp {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* ---------- ORBIT VISUAL — floats centered ON THE SEAM, overlapping both panels ---------- */
.gk-orbit-center {
  position: absolute;
  left: 34%;
  top: 46%;
  transform: translate(-50%, -50%);
  z-index: 20;
  width: 340px;
  height: 340px;
  opacity: 0;
  animation: gkRise .9s ease forwards .3s;
}

/* soft glass backdrop so rings/icons stay legible over either the photo or the dark panel */
.gk-orbit-backdrop {
  position: absolute;
  inset: -10px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 255, 255, .14), rgba(255, 255, 255, .02) 60%, transparent 75%);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
}

.gk-orbit-wrap {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  perspective: 1000px;
  transition: transform .3s ease-out;
}

.gk-ring {
  position: absolute;
  border-radius: 50%;
  border: 2px dashed rgba(255, 255, 255, .6);
}

.gk-ring.r-out {
  width: 320px;
  height: 320px;
  animation: gkSpinSlow 90s linear infinite;
}

.gk-ring.r-mid {
  width: 240px;
  height: 240px;
  border-color: rgba(255, 255, 255, .5);
  animation: gkSpinSlow 70s linear infinite reverse;
}

@keyframes gkSpinSlow {
  to {
    transform: rotate(360deg);
  }
}

/* center hub: 3D graduation cap (restored) */
.gk-hub {
  position: relative;
  z-index: 3;
  width: 120px;
  height: 120px;
  border-radius: 50%;
  background: linear-gradient(150deg, #ffffff, #fff2e2);
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow:
    inset 0 2px 3px rgba(255, 255, 255, .9),
    inset 0 -6px 10px rgba(42, 14, 12, .06),
    0 24px 46px rgba(0, 0, 0, .30),
    0 3px 10px rgba(0, 0, 0, .14);
  animation: gkFloat 6s ease-in-out infinite;
}

@keyframes gkFloat {

  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-10px);
  }
}

.gk-node-float {
  position: absolute;
  z-index: 4;
  animation: gkBob 6s ease-in-out infinite;
}

.gk-node-float.n1 {
  top: -4%;
  left: 50%;
  margin-left: -31px;
  animation-duration: 6.2s;
}

.gk-node-float.n2 {
  top: 19%;
  right: -7%;
  animation-duration: 7s;
  animation-delay: .3s;
}

.gk-node-float.n3 {
  bottom: 6%;
  right: 5%;
  animation-duration: 6.6s;
  animation-delay: .7s;
}

.gk-node-float.n4 {
  bottom: 6%;
  left: 5%;
  animation-duration: 7.4s;
  animation-delay: .5s;
}

.gk-node-float.n5 {
  top: 19%;
  left: -7%;
  animation-duration: 6.8s;
  animation-delay: .2s;
}

@keyframes gkBob {

  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-9px);
  }
}

.gk-node-shadow {
  width: 40px;
  height: 11px;
  margin: 0 auto;
  border-radius: 50%;
  background: radial-gradient(ellipse, rgba(0, 0, 0, .35), transparent 72%);
  filter: blur(3px);
  transition: transform .35s ease, opacity .35s ease;
  transform: translateY(2px) scale(1);
}

.gk-node-float:has(.gk-node-tilt:hover) .gk-node-shadow {
  transform: translateY(8px) scale(1.3);
  opacity: .5;
}

.gk-node-tilt {
  width: 60px;
  height: 60px;
  border-radius: 18px;
  margin-bottom: 6px;
  background: linear-gradient(150deg, #ffffff 0%, #fff2e2 60%, #ffe4c2 100%);
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: inset 0 2px 2px rgba(255, 255, 255, .95), inset 0 -5px 8px rgba(42, 14, 12, .07),
    0 14px 24px rgba(0, 0, 0, .26), 0 2px 6px rgba(0, 0, 0, .14);
  border: 1px solid rgba(255, 255, 255, .6);
  transform-style: preserve-3d;
  transition: transform .35s cubic-bezier(.2, .9, .3, 1.2), box-shadow .35s ease;
  cursor: pointer;
}

.gk-node-tilt:hover {
  transform: translateZ(26px) rotateX(-14deg) rotateY(14deg) scale(1.1);
  box-shadow: inset 0 2px 2px rgba(255, 255, 255, .95), inset 0 -5px 8px rgba(42, 14, 12, .07),
    0 22px 34px rgba(0, 0, 0, .34), 0 6px 12px rgba(0, 0, 0, .18);
}

.gk-node-tilt svg {
  width: 32px;
  height: 32px;
  overflow: visible;
}

/* seam accent dot */
.gk-seam-dot {
  position: absolute;
  left: 50%;
  top: 14%;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: var(--gk-white);
  z-index: 19;
  transform: translate(-50%, -50%);
  box-shadow: 0 0 0 5px rgba(255, 255, 255, .18);
}

@media (max-width:900px) {
  .gk-split {
    flex-direction: column;
    min-height: auto;
  }

  .gk-panel-left {
    min-height: 280px;
  }

  .gk-panel-right {
    padding: 220px 24px 60px;
    text-align: center;
  }

  .gk-tags {
    justify-content: center;
  }

  .gk-sub {
    margin-left: auto;
    margin-right: auto;
  }

  .gk-cta {
    justify-content: center;
  }

  .gk-orbit-center {
    top: auto;
    bottom: -170px;
    left: 50%;
    width: 280px;
    height: 280px;
  }

  .gk-seam-dot {
    display: none;
  }
}

@media (prefers-reduced-motion: reduce) {
  .gk-hero-top * {
    animation: none !important;
    opacity: 1 !important;
    transform: none !important;
  }
}

.serv-style3 {
  padding: 50px 0 35px;
}

.testim-style3 {
  padding: 75px 0 60px;
}

.team-mp {
  padding: 50px 0 80px;
}

.blog-style1 {
  padding-bottom: 70px;
}

.process {
  padding: 25px 0 50px;
  background: #ffffffab;
}

.footer-style p {
  font-family: "Unbounded", sans-serif !important;
  font-size: 12px;
  color: #000;
}

.footer-style .contact-dtls p i {
  color: #f76300;
}

.copyright p a {
  background: linear-gradient(90deg, #FF7B00, #4A0E0E);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  color: #FF7B00;
}

/* Hero section */

:root {
  --hp-navy: #2c0f08;
  --hp-orange: #ff6a00;
  --hp-purple: #ff8a00;
  --hp-purple2: #ffcf4d;
  --hp-yellow: #ffb238;
  --hp-cream1: #fff8ef;
  --hp-cream2: #fff1de;
  --hp-text: #6d5a50;
  --hp-white: #ffffff;
  --hp-glass-bg: rgba(255, 255, 255, .28);
  --hp-glass-border: rgba(255, 255, 255, .55);
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

.hp-hero {
  position: relative;
  width: 100%;
  min-height: 100vh;
  overflow: hidden;
  background: linear-gradient(120deg, var(--hp-cream1) 0%, var(--hp-cream2) 55%, #ffe6c2 100%);
  padding: 100px 4vw 33px;
}

/* ---------- floating ambient blobs ---------- */
.hp-blob {
  position: absolute;
  border-radius: 50%;
  filter: blur(60px);
  opacity: .35;
  z-index: 0;
  animation: hp-blob-float 9s ease-in-out infinite;
}

.hp-blob-a {
  width: 260px;
  height: 260px;
  background: var(--hp-orange);
  top: -60px;
  left: 10%;
  animation-delay: 0s;
}

.hp-blob-b {
  width: 220px;
  height: 220px;
  background: var(--hp-purple2);
  bottom: -40px;
  right: 8%;
  animation-delay: 2s;
}

@keyframes hp-blob-float {

  0%,
  100% {
    transform: translate(0, 0) scale(1);
  }

  50% {
    transform: translate(20px, -30px) scale(1.15);
  }
}

/* ---------- decorative floating icon chips scattered on page (3D glossy badges) ---------- */
.hp-chip {
  position: absolute;
  width: 58px;
  height: 58px;
  border-radius: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  animation: hp-chip-float 4.5s ease-in-out infinite;
  z-index: 3;
  user-select: none;
  box-shadow:
    0 16px 28px rgba(40, 15, 5, .28),
    inset 0 2px 3px rgba(255, 255, 255, .6),
    inset 0 -7px 10px rgba(0, 0, 0, .2);
}

.hp-chip::before {
  content: "";
  position: absolute;
  top: 9%;
  left: 16%;
  width: 44%;
  height: 30%;
  background: rgba(255, 255, 255, .65);
  border-radius: 50%;
  filter: blur(4px);
  pointer-events: none;
}

.hp-chip svg {
  width: 26px;
  height: 26px;
  position: relative;
  z-index: 1;
  filter: drop-shadow(0 2px 2px rgba(0, 0, 0, .3));
}

.hp-chip-1 {
  top: 15%;
  left: 2%;
  background: linear-gradient(150deg, #5a2a17, #2c0f08);
  animation-delay: .2s;
}

.hp-chip-2 {
  top: 14%;
  right: 14%;
  background: linear-gradient(150deg, #ffab4d, #ff6a00);
  animation-delay: 1.1s;
}

.hp-chip-3 {
  bottom: 30%;
  right: 2%;
  background: linear-gradient(150deg, #ffe08a, #ffb238);
  animation-delay: .6s;
}

.hp-chip-4 {
  bottom: 8%;
  right: 18%;
  background: linear-gradient(150deg, #ff9a4d, #e85d00);
  animation-delay: 1.6s;
}

.hp-chip-5 {
  top: 22%;
  left: 49%;
  background: linear-gradient(150deg, #fff0c9, #ffcf4d);
  animation-delay: 2.1s;
}

@keyframes hp-chip-float {

  0%,
  100% {
    transform: translateY(0) rotate(0deg);
  }

  50% {
    transform: translateY(-16px) rotate(8deg);
  }
}

/* ---------- layout ---------- */
.hp-container {
  position: relative;
  z-index: 2;
  max-width: 1200px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  align-items: center;
  gap: 40px;
}

/* ---------- left column ---------- */
.hp-left {
  opacity: 0;
  transform: translateX(-40px);
  animation: hp-slide-in .9s ease forwards .2s;
}

@keyframes hp-slide-in {
  to {
    opacity: 1;
    transform: translateX(0);
  }
}

.hp-heading {
  font-weight: 800;
  font-size: clamp(34px, 4.2vw, 54px);
  line-height: 1.25;
  color: var(--hp-navy);
  letter-spacing: -1px;
}

.hp-highlight {
  position: relative;
  display: inline-block;
  color: var(--hp-orange);
  background: linear-gradient(180deg, transparent 62%, rgba(255, 122, 26, .18) 62%);
}

.hp-highlight-box {
  position: absolute;
  left: -8px;
  right: -10px;
  top: -10px;
  bottom: -6px;
  border: 2px dashed var(--hp-orange);
  border-radius: 10px;
  animation: hp-dash-pulse 2.6s linear infinite;
  pointer-events: none;
}

@keyframes hp-dash-pulse {
  0% {
    opacity: .4;
    stroke-dashoffset: 0;
  }

  50% {
    opacity: 1;
  }

  100% {
    opacity: .4;
  }
}

.hp-swirl {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-left: 6px;
  vertical-align: middle;
}

.hp-swirl span {
  width: 26px;
  height: 6px;
  border-radius: 4px;
  background: linear-gradient(90deg, var(--hp-purple), var(--hp-orange));
  display: inline-block;
  animation: hp-swirl-grow 2s ease-in-out infinite;
}

.hp-swirl-dot {
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: radial-gradient(circle at 35% 35%, var(--hp-purple2), var(--hp-navy));
  animation: hp-spin-slow 4s linear infinite;
}

@keyframes hp-swirl-grow {

  0%,
  100% {
    transform: scaleX(1);
  }

  50% {
    transform: scaleX(1.3);
  }
}

.hp-desc {
  margin-top: 18px;
  max-width: 541px;
  color: var(--hp-text);
  font-size: 15.5px;
  line-height: 1.7;
  font-family: "Unbounded", sans-serif !important;
  text-align: justify;
}

.hp-cta-group {
  margin-top: 23px;
  display: flex;
  gap: 16px;
  flex-wrap: wrap;
  padding-bottom: 30px;
}

.hp-btn {
  position: relative;
  overflow: hidden;
  border: none;
  cursor: pointer;
  font-weight: 600;
  font-size: 14.5px;
  padding: 16px 32px;
  border-radius: 40px;
  backdrop-filter: blur(16px) saturate(180%);
  -webkit-backdrop-filter: blur(16px) saturate(180%);
  transition: transform .3s ease, box-shadow .3s ease, background .3s ease;
}

.hp-btn:hover {
  transform: translateY(-4px);
}

.hp-btn:active {
  transform: translateY(-1px) scale(.97);
}

/* glass shine sweep */
.hp-btn::before {
  content: "";
  position: absolute;
  top: 0;
  left: -60%;
  width: 35%;
  height: 100%;
  background: linear-gradient(120deg, transparent, rgba(255, 255, 255, .65), transparent);
  transform: skewX(-20deg);
  transition: left .65s ease;
  pointer-events: none;
}

.hp-btn:hover::before {
  left: 130%;
}

.hp-btn-primary {
  background: linear-gradient(135deg, rgba(255, 106, 0, .78), rgba(255, 178, 56, .7));
  border: 1px solid rgba(255, 255, 255, .55);
  color: #fff;
  text-shadow: 0 1px 3px rgba(120, 40, 0, .25);
  box-shadow: 0 14px 30px rgba(255, 106, 0, .32), inset 0 1px 0 rgba(255, 255, 255, .45);
}

.hp-btn-primary:hover {
  box-shadow: 0 18px 38px rgba(255, 106, 0, .45), inset 0 1px 0 rgba(255, 255, 255, .5);
  background: linear-gradient(135deg, rgba(255, 106, 0, .88), rgba(255, 178, 56, .8));
}

.hp-btn-secondary {
  background: var(--hp-glass-bg);
  color: var(--hp-navy);
  border: 1px solid var(--hp-glass-border);
  box-shadow: 0 10px 26px rgba(120, 80, 40, .14), inset 0 1px 0 rgba(255, 255, 255, .5);
}

.hp-btn-secondary:hover {
  background: rgba(255, 255, 255, .45);
  border-color: rgba(255, 178, 56, .8);
  box-shadow: 0 14px 30px rgba(120, 80, 40, .18), inset 0 1px 0 rgba(255, 255, 255, .6);
}

.hp-ripple {
  position: absolute;
  border-radius: 50%;
  background: rgba(255, 255, 255, .55);
  transform: scale(0);
  animation: hp-ripple-anim .6s ease-out forwards;
  pointer-events: none;
}

@keyframes hp-ripple-anim {
  to {
    transform: scale(3.2);
    opacity: 0;
  }
}

.hp-trusted {
  position: relative;
  margin-top: 44px;
  display: flex;
  align-items: center;
  gap: 18px;
  flex-wrap: wrap;
}

/* ---------- decorative wave line connecting photo to Trusted-By row ---------- */
.hp-wave-svg-main {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  overflow: visible;
  pointer-events: none;
  z-index: 0;
}

.hp-wave-path {
  fill: none;
  stroke: var(--hp-yellow);
  stroke-width: 2.5;
  stroke-linecap: round;
  stroke-dasharray: 2200;
  stroke-dashoffset: 2200;
  animation: hp-wave-draw 2.4s cubic-bezier(.4, .2, .2, 1) forwards 1.3s;
}

@keyframes hp-wave-draw {
  to {
    stroke-dashoffset: 0;
  }
}

.hp-wave-dot {
  opacity: 0;
  animation: hp-wave-dot-in .5s ease forwards 1.5s;
}

@keyframes hp-wave-dot-in {
  to {
    opacity: 1;
  }
}

.hp-wave-dot-core {
  animation: hp-wave-dot-pulse 2.4s ease-in-out infinite 2s;
  transform-origin: center;
  transform-box: fill-box;
  fill: #e8960f;
}

.hp-wave-dot-ring {
  animation: hp-wave-dot-ring 2.4s ease-out infinite 2s;
  transform-origin: center;
  transform-box: fill-box;
  stroke: #e8960f;
}

@keyframes hp-wave-dot-pulse {

  0%,
  100% {
    transform: scale(1);
  }

  50% {
    transform: scale(1.18);
  }
}

@keyframes hp-wave-dot-ring {
  0% {
    r: 7;
    opacity: .6;
  }

  100% {
    r: 18;
    opacity: 0;
  }
}

.hp-wave-label {
  font-weight: 700;
  font-size: 13px;
  fill: #e8960f;
  opacity: 0;
  animation: hp-wave-dot-in .5s ease forwards 1.6s;
}

@media (max-width:900px) {
  .hp-wave-svg-main {
    display: none;
  }
}

.hp-trusted-label {
  font-size: 13px;
  font-weight: 600;
  color: var(--hp-text);
}

.hp-trusted-icons {
  display: flex;
  gap: 14px;
}

.hp-trusted-icons span {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .2px;
  color: var(--hp-navy);
  box-shadow: 0 6px 14px rgba(120, 80, 40, .14);
  transition: transform .3s ease;
  backdrop-filter: blur(16px) saturate(130%);
  -webkit-backdrop-filter: blur(16px) saturate(130%);
  background: linear-gradient(145deg, rgba(255, 255, 255, 0.85) 0%, rgba(255, 255, 255, 0.65) 50%, rgba(255, 255, 255, 0.45) 100%);
  box-shadow:
    inset 0 -2px 5px rgba(0, 0, 0, 0.05),
    inset 0 -1px 1px rgba(255, 255, 255, 0.4),
    inset 0 4px 12px rgba(255, 255, 255, 0.8),
    inset 0 1px 1px rgba(255, 255, 255, 1),
    inset 0 0 20px rgba(255, 255, 255, 0.6),
    0 0px 2px -5px rgba(255, 255, 255, 0.5),
    0 10px 20px -10px rgba(0, 0, 0, 0.1),
    0 4px 8px -2px rgba(0, 0, 0, 0.05);
}

.hp-trusted-icons span svg {
  width: 18px;
  height: 18px;
}

.hp-trusted-icons span:hover {
  transform: translateY(-5px) scale(1.08);
  color: var(--hp-orange);
}

/* ---------- right column: orbit visual ---------- */
.hp-right {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 520px;
  opacity: 0;
  animation: hp-fade-in 1s ease forwards .4s;
}

@keyframes hp-fade-in {
  to {
    opacity: 1;
  }
}

.hp-orbit-ring {
  position: absolute;
  width: 500px;
  height: 500px;
  border-radius: 50%;
  border: 2px solid var(--hp-yellow);
  animation: hp-spin-slow 18s linear infinite;
}

.hp-orbit-ring::before,
.hp-orbit-ring::after {
  content: "";
  position: absolute;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: var(--hp-yellow);
  box-shadow: 0 0 12px var(--hp-yellow);
}

.hp-orbit-ring::before {
  top: -7px;
  left: 50%;
  transform: translateX(-50%);
}

.hp-orbit-ring::after {
  bottom: 19px;
  right: 126px;
}

@keyframes hp-spin-slow {
  from {
    transform: rotate(0deg);
  }

  to {
    transform: rotate(360deg);
  }
}

.hp-dashed-circle {
  position: absolute;
  width: 410px;
  height: 410px;
  border-radius: 50%;
  border: 2px dashed #f0b97a;
  animation: hp-spin-rev 26s linear infinite;
}

@keyframes hp-spin-rev {
  from {
    transform: rotate(360deg);
  }

  to {
    transform: rotate(0deg);
  }
}

.hp-photo-disc {
  position: relative;
  width: 335px;
  height: 335px;
  border-radius: 50%;
  background: radial-gradient(circle at 30% 25%, var(--hp-yellow), #ffdf8a 70%);
  display: flex;
  align-items: flex-end;
  justify-content: center;
  overflow: hidden;
  box-shadow: 0 30px 60px rgba(255, 178, 56, .35);
  animation: hp-pulse-scale 4s ease-in-out infinite;
  webkit-backdrop-filter: blur(16px) saturate(130%);
  background: linear-gradient(145deg, var(--glass-color-light) 0%, var(--glass-color-mid) 50%, var(--glass-color-dark) 100%);
  box-shadow: inset 0 -2px 5px rgba(0, 0, 0, 0.2), inset 0 -1px 1px var(--glass-edge-bottom), inset 0 4px 12px var(--glass-surface-glare), inset 0 1px 1px var(--glass-edge-top), inset 0 0 20px rgba(255, 255, 255, 0.25), 0 0px 2px -5px var(--glass-ambient-glow), 0 10px 20px -10px var(--glass-drop-shadow), 0 4px 8px -2px rgba(0, 0, 0, 0.15);
}

@keyframes hp-pulse-scale {

  0%,
  100% {
    transform: scale(1);
  }

  50% {
    transform: scale(1.02);
  }
}

.hp-photo {
  width: 350px;
  display: block;
  object-fit: cover;
  border-radius: 50% 50% 0 0;
  filter: saturate(1.05);
}

.hp-badge-card {
  position: absolute;
  bottom: -14%;
  left: 50%;
  transform: translateX(-50%);
  background: #fff;
  border-radius: 18px;
  padding: 14px 22px 14px 14px;
  display: flex;
  align-items: center;
  gap: 10px;
  box-shadow: 0 20px 40px rgba(90, 60, 140, .2);
  animation: hp-badge-bob 3.4s ease-in-out infinite;
  z-index: 5;
}

@keyframes hp-badge-bob {

  0%,
  100% {
    transform: translateX(-50%) translateY(0);
  }

  50% {
    transform: translateX(-50%) translateY(-10px);
  }
}

.hp-badge-icon {
  position: relative;
  width: 40px;
  height: 40px;
  border-radius: 12px;
  background: linear-gradient(150deg, #ffab4d, #ff6a00);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  box-shadow:
    0 10px 18px rgba(255, 106, 0, .35),
    inset 0 2px 3px rgba(255, 255, 255, .6),
    inset 0 -5px 8px rgba(0, 0, 0, .18);
}

.hp-badge-icon::before {
  content: "";
  position: absolute;
  top: 10%;
  left: 16%;
  width: 42%;
  height: 28%;
  background: rgba(255, 255, 255, .6);
  border-radius: 50%;
  filter: blur(3px);
}

.hp-badge-icon svg {
  width: 19px;
  height: 19px;
  color: #fff;
  position: relative;
  z-index: 1;
  filter: drop-shadow(0 1px 2px rgba(0, 0, 0, .3));
}

.hp-badge-text {
  line-height: 1.25;
}

.hp-badge-text b {
  display: block;
  font-size: 13.5px;
  color: var(--hp-navy);
}

.hp-badge-text span {
  font-size: 11.5px;
  color: var(--hp-text);
}

.hp-orbit-icon {
  position: absolute;
  width: 430px;
  height: 430px;
  top: 50%;
  left: 50%;
  margin: -200px 0 0 -200px;
  animation: hp-spin-slow 18s linear infinite;
}

.hp-orbit-icon-inner {
  position: absolute;
  width: 52px;
  height: 52px;
  border-radius: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  animation: hp-spin-rev 18s linear infinite;
  box-shadow:
    0 14px 26px rgba(40, 15, 5, .28),
    inset 0 2px 3px rgba(255, 255, 255, .6),
    inset 0 -6px 9px rgba(0, 0, 0, .2);
}

.hp-orbit-icon-inner::before {
  content: "";
  position: absolute;
  top: 10%;
  left: 16%;
  width: 42%;
  height: 28%;
  background: rgba(255, 255, 255, .6);
  border-radius: 50%;
  filter: blur(3px);
  pointer-events: none;
}

.hp-orbit-icon-inner svg {
  width: 23px;
  height: 23px;
  position: relative;
  z-index: 1;
  filter: drop-shadow(0 2px 2px rgba(0, 0, 0, .3));
}

.hp-oi-1 {
  background: linear-gradient(150deg, #ffab4d, #ff6a00);
}

.hp-oi-2 {
  background: linear-gradient(150deg, #5a2a17, #2c0f08);
}

.hp-oi-3 {
  background: linear-gradient(150deg, #fff4dc, #ffcf4d);
}

.hp-percentage {
  position: absolute;
  left: -4%;
  bottom: 8%;
  background: #fff;
  padding: 8px 14px;
  border-radius: 30px;
  font-weight: 700;
  font-size: 13px;
  color: var(--hp-navy);
  box-shadow: 0 10px 20px rgba(90, 60, 140, .18);
  display: flex;
  align-items: center;
  gap: 6px;
  animation: hp-badge-bob 3.8s ease-in-out infinite .3s;
}

.hp-percentage .hp-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #e8960f;
}

@media (max-width:900px) {
  .hp-container {
    grid-template-columns: 1fr;
    text-align: center;
  }

  .hp-left {
    align-items: center;
  }

  .hp-cta-group,
  .hp-trusted {
    justify-content: center;
  }

  .hp-desc {
    margin-left: auto;
    margin-right: auto;
  }

  .hp-right {
    height: 420px;
    margin-top: 20px;
  }

  .hp-orbit-ring {
    width: 300px;
    height: 300px;
  }

  .hp-dashed-circle {
    width: 250px;
    height: 250px;
  }

  .hp-photo-disc {
    width: 230px;
    height: 230px;
  }

  .hp-photo {
    width: 210px;
  }

  .hp-orbit-icon {
    width: 300px;
    height: 300px;
    margin: -150px 0 0 -150px;
  }
}

@media (prefers-reduced-motion: reduce) {
  * {
    animation: none !important;
    transition: none !important;
  }
}

/* Common Button */

:root {
  /* Base color palette - warm vibrant orange gradient inspired by Gyan Kamao logo */
  --glass-color-light: rgba(255, 153, 0, 0.85);
  --glass-color-mid: rgba(230, 92, 0, 0.8);
  --glass-color-dark: rgba(180, 50, 0, 0.95);

  /* Shadows for depth and environment interaction */
  --glass-drop-shadow: rgba(140, 40, 0, 0.2);
  --glass-ambient-glow: rgba(255, 123, 0, 0.45);

  /* Highlights for that polished, wet look */
  --glass-edge-top: rgba(255, 255, 255, 0.85);
  --glass-edge-bottom: rgba(255, 255, 255, 0.2);
  --glass-surface-glare: rgba(255, 255, 255, 0.5);
}

.btn-liquid-glass {
  position: relative;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  gap: 12px;
  /* Added spacing between text and icon */
  padding: 10px 21px;
  font-size: 1rem;
  font-weight: 600;
  color: #ffffff;
  text-decoration: none;

  /* The pill shape - characteristic of premium UI */
  border-radius: 999px;

  /* Removing default button styling */
  border: none;
  outline: none;
  cursor: pointer;

  /* Crucial: The backdrop blur creates the "glass" material */
  backdrop-filter: blur(16px) saturate(130%);
  -webkit-backdrop-filter: blur(16px) saturate(130%);

  /* The base color gradient of the glass itself */
  background: linear-gradient(145deg,
      var(--glass-color-light) 0%,
      var(--glass-color-mid) 50%,
      var(--glass-color-dark) 100%);

  /* The magic happens in the complex box-shadows */
  box-shadow:
    /* 1. Subtle inner shadow to simulate thickness at the bottom */
    inset 0 -2px 5px rgba(0, 0, 0, 0.2),
    /* 2. Sharp inner highlight for the bottom edge */
    inset 0 -1px 1px var(--glass-edge-bottom),
    /* 3. Soft, bright inner highlight for the top rounded surface */
    inset 0 4px 12px var(--glass-surface-glare),
    /* 4. Sharp inner highlight for the absolute top edge */
    inset 0 1px 1px var(--glass-edge-top),
    /* 5. A slight colored inner glow for richness */
    inset 0 0 20px rgba(255, 255, 255, 0.25),

    /* 6. Soft ambient glow bleeding out from the button */
    0 0px 2px -5px var(--glass-ambient-glow),
    /* 7. The main structural drop shadow */
    0 10px 20px -10px var(--glass-drop-shadow),
    /* 8. A tight drop shadow for grounded contact */
    0 4px 8px -2px rgba(0, 0, 0, 0.15);

  /* Very subtle structural border */
  border: 1px solid rgba(255, 255, 255, 0.25);

  /* Smooth transitions for all states */
  transition: all 0.4s cubic-bezier(0.15, 0.83, 0.37, 1);
  overflow: hidden;
  z-index: 1;
}

.btn-liquid-glass .btn-text {
  position: relative;
  z-index: 3;
  /* Precise text shadow */
  text-shadow: 0 1px 3px rgba(0, 0, 0, 0.4), 0 0 10px rgba(255, 255, 255, 0.2);
  letter-spacing: 0.3px;
}

/* Icon Styling and Animation */
.btn-liquid-glass .btn-icon {
  position: relative;
  z-index: 3;
  display: flex;
  align-items: center;
  justify-content: center;
  /* Drop-shadow mimics the embedded text shadow for the SVG */
  filter: drop-shadow(0 1px 3px rgba(0, 0, 0, 0.4)) drop-shadow(0 0 5px rgba(255, 255, 255, 0.3));
  transition: transform 0.4s cubic-bezier(0.15, 0.83, 0.37, 1);
  /* Continuous subtle floating animation */
  animation: float-right 2s infinite ease-in-out;
}

@keyframes float-right {

  0%,
  100% {
    transform: translateX(0);
  }

  50% {
    transform: translateX(5px);
  }
}

/* The main curved surface reflection (the "wet" look) */
.btn-liquid-glass::before {
  content: '';
  position: absolute;
  top: 1px;
  /* Slightly inset from the border */
  left: 1px;
  right: 1px;
  /* Height dictates how far down the reflection goes */
  height: 45%;
  /* Gradient fading into transparency */
  background: linear-gradient(to bottom,
      rgba(255, 255, 255, 0.8) 0%,
      rgba(255, 255, 255, 0.15) 60%,
      rgba(255, 255, 255, 0) 100%);
  border-radius: 999px 999px 0 0;
  opacity: 0.9;
  pointer-events: none;
  z-index: 2;
  transition: opacity 0.4s ease, transform 0.4s ease;
  /* A subtle masking effect to soften the bottom edge of the reflection */
  -webkit-mask-image: linear-gradient(to bottom, black 0%, transparent 100%);
  mask-image: linear-gradient(to bottom, black 0%, transparent 100%);
}

/* The sweeping diagonal glare */
.btn-liquid-glass::after {
  content: '';
  position: absolute;
  top: 0;
  left: -150%;
  /* Start far off-screen */
  width: 100%;
  height: 100%;
  background: linear-gradient(to right,
      rgba(255, 255, 255, 0) 0%,
      rgba(255, 255, 255, 0.4) 50%,
      rgba(255, 255, 255, 0) 100%);
  transform: skewX(-25deg);
  z-index: 2;
  pointer-events: none;
  transition: none;
  /* No transition initially */
}

/* Hover State - Lifting and brightening */
.btn-liquid-glass:hover {
  transform: translateY(-4px) scale(1.02);
  /* Enhancing glows and lifting shadows */
  box-shadow:
    inset 0 -2px 5px rgba(0, 0, 0, 0.15),
    inset 0 -1px 1px rgba(255, 255, 255, 0.3),
    inset 0 4px 15px rgba(255, 255, 255, 0.6),
    inset 0 1px 1px rgba(255, 255, 255, 0.95),
    inset 0 0 25px rgba(255, 255, 255, 0.35),

    0 15px 30px -5px rgba(255, 123, 0, 0.6),
    /* Stronger ambient glow */
    0 20px 30px -10px rgba(140, 40, 0, 0.3),
    /* Deeper drop shadow */
    0 6px 12px -2px rgba(0, 0, 0, 0.1);

  /* Slightly richer base color on hover */
  background: linear-gradient(145deg,
      rgba(255, 170, 20, 0.9) 0%,
      rgba(240, 105, 10, 0.85) 50%,
      rgba(195, 60, 0, 0.95) 100%);
  color: #310105;
}

/* Trigger the sweep glare animation on hover */
.btn-liquid-glass:hover::after {
  left: 200%;
  transition: left 0.8s cubic-bezier(0.2, 0.8, 0.2, 1);
}

/* Subtly shift the top reflection on hover for parallax feel */
.btn-liquid-glass:hover::before {
  transform: translateY(1px);
  opacity: 1;
}

/* Hover State for Icon - Stops floating and pushes forward */
.btn-liquid-glass:hover .btn-icon {
  animation: none;
  transform: translateX(8px) scale(1.1);
}

/* Active (Pressed) State - Sinking down */
.btn-liquid-glass:active {
  transform: translateY(1px) scale(0.98);
  /* Compressing shadows and tightening glows */
  box-shadow:
    inset 0 -1px 2px rgba(0, 0, 0, 0.25),
    inset 0 6px 12px rgba(0, 0, 0, 0.15),
    /* Inner shadow at top for depth */
    inset 0 2px 5px rgba(255, 255, 255, 0.2),
    inset 0 1px 1px rgba(255, 255, 255, 0.4),

    0 5px 15px -5px rgba(255, 123, 0, 0.4),
    0 8px 15px -5px rgba(140, 40, 0, 0.15),
    0 2px 4px -1px rgba(0, 0, 0, 0.1);

  /* Dimming slightly */
  filter: brightness(0.95);
  transition: all 0.1s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

/* Dim reflection when pressed */
.btn-liquid-glass:active::before {
  opacity: 0.5;
  transition: all 0.1s;
}

/* Common glassmorphism background css */

/* Apple-style Liquid Glassmorphism - More Transparent Version */
.glass-panel {
  background: rgba(255, 255, 255, 0.15);
  backdrop-filter: blur(12px) saturate(180%);
  -webkit-backdrop-filter: blur(12px) saturate(180%);
  border: 1px solid rgba(255, 255, 255, 0.4);
  /* border-radius: 20px; */
  box-shadow:
    0 8px 32px rgba(0, 0, 0, 0.06),
    inset 0 1px 1px rgba(255, 255, 255, 0.5),
    inset 0 -1px 1px rgba(0, 0, 0, 0.02);
  /* position: relative; */
  overflow: hidden;
  transition: all 0.3s ease;
}

/* Optional top-light sheen */
.glass-panel::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 50%;
  background: linear-gradient(to bottom,
      rgba(255, 255, 255, 0.2),
      rgba(255, 255, 255, 0));
  pointer-events: none;
}

/* Hover effect */
.glass-panel:hover {
  background: rgba(255, 255, 255, 0.22);
  box-shadow:
    0 12px 40px rgba(0, 0, 0, 0.08),
    inset 0 1px 1px rgba(255, 255, 255, 0.6),
    inset 0 -1px 1px rgba(0, 0, 0, 0.03);
}

.footer-style {
  background: url(../imgs/bg/6.jpg);
  background-size: cover;
  background-position: top;
}

@media (max-width: 991px) {
  .gk-cert-section {
    /* display: none; */
  }

  .hp-container {
    display: flex;
    flex-direction: column;
  }

  .hp-right {
    order: -1;
    /* image section upar aa jayega */
  }

  .hp-left {
    order: 1;
    /* content niche aayega */
  }

  .hp-hero {
    padding: 15px 4vw 33px;
    min-height: unset;
  }

  .hp-badge-card {
    bottom: -4%;
    width: 240px;
  }

  .hp-percentage {
    left: -13%;
    bottom: 14%;
  }

  .hp-heading {
    font-size: clamp(21px, 4.2vw, 54px);
  }

  .hp-desc {
    margin-top: 11px;
    font-size: 11.5px;
  }

  .hp-btn {
    font-size: 13.5px;
    padding: 12px 24px;
  }

  .hp-chip-3 {
    bottom: 36%;
    right: 10%;
  }

  .hp-chip-4 {
    display: none;
  }

  .hp-trusted {
    display: none;
  }

  .hp-chip-5 {
    top: 57%;
    left: 3%;
  }

  .fit-img img {
    object-position: top;
  }

  .hero-style1 .cards-wrapper .fit-img {
    height: 337px;
  }

  .xt-crs-wrapper {
    padding: 45px 0;
  }

  .xt-crs-left-desc {
    font-size: 0.8rem;
    padding: 20px 11px;
  }

  .xt-crs-view-all {
    display: none;
  }

  .xt-crs-course-desc {
    font-size: 0.85rem;
    margin-bottom: 15px;
  }

  .xt-crs-parallax-inner {
    height: 122%;
  }

  .xt-crs-rating,
  .xt-crs-support {
    font-size: 0.6rem;
  }

  .serv-style1 .item ul {
    display: none;
  }

  .gk-appdl {
    padding: 2rem 1rem;
  }

  .res-mb-10 {
    margin-bottom: 10px !important;
  }

  .testim-style3 {
    padding: 33px 0 50px;
  }

  .res-mb-50 {
    margin-bottom: 50px;
  }

  .gk-faq-image-group {
    display: none;
  }

  .sec-head {
    padding-bottom: 50px;
  }

  .serv-style1 .item {
    padding-bottom: 15px;
  }

  .res-mb-20 {
    margin-bottom: 20px !important;
  }

  .gk-faq-btn {
    font-size: 15px;
    padding: 13px 15px 10px;
  }

  .gk-faq-item {
    margin-bottom: 15px;
  }

  .gk-faq-right-col {
    height: unset;
  }

  .gk-faq-answer-text {
    padding: 0 25px 23px 25px;
    font-size: 13px;
    text-align: justify;
  }

  .gk-faq-master-container {
    padding: 0px 0 0px;
  }

  .team-mp {
    padding: 50px 0 50px;
  }

  .team-mp .item {
    padding: 20px 25px;
  }

  .team-mp .item .cont {
    padding: 0px 0 0;
  }

  .team-mp .item .img {
    width: 247px;
    height: 180px;
    margin: auto;
  }

  .team-mp .item .social-icon {
    margin-top: 15px;
  }

  .blog-style1 {
    padding-bottom: 30px;
  }

  .process .item {
    padding: 20px 22px;
  }

  .footer-style {
    background-position: bottom;
  }

  .res-mt-10 {
    margin-top: 10px !important;
  }

  .footer-style p {
    font-size: 10px !important;
  }

  .process {
    padding: 25px 0 35px;
  }

  .navbar .navbar-collapse {
    background: #fff;
  }

  .navbar-nav {
    padding-bottom: 20px;
  }

  .hp-container {
    gap: 60px;
  }

  .gk-cert-track {
    padding: 16px 0 4px;
  }

  .gk-cert-header {
    margin-bottom: 17px;
  }

  .gk-cert-section {
    padding: 35px 0 35px;
  }

  .gk-cert-desc {
    font-size: 10px;
    line-height: 1.5;
  }

  .gk-cert-eyebrow {
    font-size: 10px;
    margin-bottom: 8px;
  }

  .gk-cert-heading {
    font-size: clamp(27px, 4.5vw, 50px);
    margin: 0 0 12px;
  }
}

/* Mobile card scroll animation */
@media (max-width: 991px) {
  .cards-wrapper .d-flex.d-lg-none .col-lg-3 .item {
    opacity: 0;
    transform: translateY(40px);
    transition: opacity 0.6s ease, transform 0.6s ease;
  }

  .cards-wrapper .d-flex.d-lg-none .col-lg-3 .item.animate-in {
    opacity: 1;
    transform: translateY(0);
  }

  /* stagger — ek ek karke niche se aayenge */
  .cards-wrapper .d-flex.d-lg-none .col-lg-3:nth-child(1) .item {
    transition-delay: 0s;
  }

  .cards-wrapper .d-flex.d-lg-none .col-lg-3:nth-child(2) .item {
    transition-delay: 0.15s;
  }

  .cards-wrapper .d-flex.d-lg-none .col-lg-3:nth-child(3) .item {
    transition-delay: 0.3s;
  }

  .cards-wrapper .d-flex.d-lg-none .col-lg-3:nth-child(4) .item {
    transition-delay: 0.45s;
  }
}

/* Skill Mastery Section Animations */
.serv-style1 .item {
  opacity: 0;
  transform: translateY(50px);
  transition: opacity 0.8s ease, transform 0.8s ease;
}

.serv-style1 .item.animate-in {
  opacity: 1;
  transform: translateY(0);
}

.serv-style1 .item:nth-of-type(1) {
  transition-delay: 0s;
}

.serv-style1 .item:nth-of-type(2) {
  transition-delay: 0.1s;
}

.serv-style1 .item:nth-of-type(3) {
  transition-delay: 0.2s;
}

/* image ka hover effect */
.serv-style1 .item .img.fit-img {
  overflow: hidden;
  border-radius: 12px;
}

.serv-style1 .item .img.fit-img img {
  transition: transform 0.5s ease, filter 0.5s ease;
  will-change: transform;
}

.serv-style1 .item .img.fit-img:hover img {
  transform: scale(1.08) rotate(-1deg);
  filter: brightness(1.05);
}

/* list items - hover pe halka slide */
.serv-style1 .item ul li {
  transition: transform 0.3s ease, opacity 0.3s ease;
  opacity: 0.85;
}

.serv-style1 .item ul li:hover {
  transform: translateX(8px);
  opacity: 1;
}

/* heading thoda pop */
.serv-style1 .item .title h2 {
  transition: transform 0.3s ease;
}

.serv-style1 .item:hover .title h2 {
  transform: translateX(4px);
}

/* Certification Section Animations */
.intro-style6 [class*="col-lg-4"] {
  opacity: 0;
  transition: opacity 0.8s ease, transform 0.8s ease;
}

.intro-style6 [class*="col-lg-4"].animate-in {
  opacity: 1;
  transform: translate(0, 0) scale(1) rotate(0deg) !important;
}

/* left text - left se slide */
.intro-style6 .col-lg-4:nth-child(1) {
  transform: translateX(-60px);
  transition-delay: 0s;
}

/* certificate image - dhamakedar entry: scale + rotate + fade */
.intro-style6 .col-lg-4:nth-child(2) {
  transform: scale(0.6) rotate(-8deg);
  transition: opacity 0.9s cubic-bezier(0.34, 1.56, 0.64, 1),
    transform 0.9s cubic-bezier(0.34, 1.56, 0.64, 1);
  transition-delay: 0.15s;
}

/* right text - right se slide */
.intro-style6 .col-lg-4:nth-child(3) {
  transform: translateX(60px);
  transition-delay: 0.3s;
}

/* certificate image ka hover effect */
.intro-style6 .fit-img.o-hidden img {
  transition: transform 0.6s ease;
}

.intro-style6 .fit-img.o-hidden:hover img {
  transform: scale(1.06);
}

/* button ka thoda hover pop */
.intro-style6 .butn-arrow-circle {
  transition: transform 0.3s ease;
  display: inline-block;
}

.intro-style6 .butn-arrow-circle:hover {
  transform: translateX(5px);
}

.intro-style6 .butn-arrow-circle .icon {
  display: inline-block;
  transition: transform 0.3s ease;
}

.intro-style6 .butn-arrow-circle:hover .icon {
  transform: translateX(5px) rotate(-10deg);
}

/* aniamtio on feature section */

/* Process Section Animations */
.process .item {
  opacity: 0;
  transform: translateY(60px) scale(0.9);
  transition: opacity 0.7s cubic-bezier(0.17, 0.67, 0.35, 1),
    transform 0.7s cubic-bezier(0.17, 0.67, 0.35, 1);
}

.process .item.animate-in {
  opacity: 1;
  transform: translateY(0) scale(1);
}

/* stagger - ek ek karke aayenge */
.process .col-lg-3:nth-child(1) .item {
  transition-delay: 0s;
}

.process .col-lg-3:nth-child(2) .item {
  transition-delay: 0.15s;
}

.process .col-lg-3:nth-child(3) .item {
  transition-delay: 0.3s;
}

.process .col-lg-3:nth-child(4) .item {
  transition-delay: 0.45s;
}

/* number (01, 02, 03, 04) ka thoda pop */
.process .item span:first-child {
  display: inline-block;
  transition: transform 0.3s ease, color 0.3s ease;
}

.process .item:hover span:first-child {
  transform: scale(1.15);
}

/* icon wrapper */
.process .item .w-90px {
  display: inline-block;
}

/* icon continuous floating animation */
.process .item .w-90px img {
  animation: iconFloat 3s ease-in-out infinite;
  transition: transform 0.4s ease, filter 0.4s ease;
}

/* har icon ka alag timing - taki sab ek saath float na kare, natural lage */
.process .col-lg-3:nth-child(1) .w-90px img {
  animation-delay: 0s;
}

.process .col-lg-3:nth-child(2) .w-90px img {
  animation-delay: 0.4s;
}

.process .col-lg-3:nth-child(3) .w-90px img {
  animation-delay: 0.8s;
}

.process .col-lg-3:nth-child(4) .w-90px img {
  animation-delay: 1.2s;
}

@keyframes iconFloat {

  0%,
  100% {
    transform: translateY(0px) rotate(0deg);
  }

  50% {
    transform: translateY(-10px) rotate(4deg);
  }
}

/* icon hover pe extra reaction */
.process .item:hover .w-90px img {
  animation-play-state: paused;
  transform: scale(1.15) rotate(-6deg);
  filter: drop-shadow(0 6px 12px rgba(0, 0, 0, 0.15));
}

/* heading thoda hover shift */
.process .item h6 {
  transition: transform 0.3s ease;
}

.process .item:hover h6 {
  transform: translateX(5px);
}

/* Course details */

:root {
  --gk-primary: #ff7a00;
  --gk-secondary: #ffb300;
  --gk-dark: #3d0c02;
  --gk-dark-light: #5a1b08;
  --gk-bg: #fdfbf9;
  --gk-white: #ffffff;
}

.gk-hero-section {
  position: relative;
  background-color: var(--gk-bg);
  padding: 120px 20px 43px;
  overflow: hidden;
  color: var(--gk-dark);
  z-index: 1;
}

.gk-hero-bg-grid {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image:
    linear-gradient(to right, rgba(61, 12, 2, 0.04) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(61, 12, 2, 0.04) 1px, transparent 1px);
  background-size: 40px 40px;
  z-index: -2;
}

.gk-shape {
  position: absolute;
  z-index: -1;
  opacity: 0.6;
}

.gk-shape-1 {
  top: 10%;
  left: 5%;
  animation: gk-spin-slow 20s linear infinite;
}

.gk-shape-2 {
  bottom: 20%;
  right: 5%;
  animation: gk-float-smooth 8s ease-in-out infinite alternate;
}

.gk-shape-3 {
  top: 28%;
  right: 8%;
  animation: gk-spin-reverse 25s linear infinite;
}

.gk-container {
  max-width: 1200px;
  margin: 0 auto;
  position: relative;
}

.gk-content-wrapper {
  text-align: center;
  /* max-width: 850px; */
  margin: 0 auto 25px;
}

.gk-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: rgba(255, 122, 0, 0.1);
  color: var(--gk-primary);
  padding: 8px 24px;
  border-radius: 50px;
  font-size: 14px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 1.5px;
  border: 1px solid rgba(255, 122, 0, 0.3);
  margin-bottom: 24px;
  position: relative;
  overflow: hidden;
}

.gk-badge::after {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 50%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255, 122, 0, 0.2), transparent);
  animation: gk-badge-shine 3s infinite;
}

.gk-title {
  font-size: clamp(36px, 5vw, 64px);
  font-weight: 800;
  line-height: 1.1;
  margin-bottom: 7px;
  color: var(--gk-dark);
}

.gk-title span {
  background: linear-gradient(135deg, var(--gk-primary), var(--gk-secondary));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.gk-desc {
  font-size: clamp(14px, 2vw, 14px);
  line-height: 1.8;
  color: var(--gk-dark-light);
  margin-bottom: 0;
  font-family: "Unbounded", sans-serif !important;
}

/* -------------------------------------------
           PREMIUM RELATABLE 3D STATS CARDS (UPDATED)
           ------------------------------------------- */
.gk-stats-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 30px;
  /* margin-bottom: 70px; */
  position: relative;
  z-index: 2;
}

.gk-card-premium {
  background: rgba(255, 255, 255, 0.95);
  backdrop-filter: blur(20px);
  border-radius: 24px;
  padding: 20px 20px;
  display: flex;
  align-items: center;
  gap: 20px;
  position: relative;
  overflow: hidden;
  transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);
  box-shadow:
    0 15px 35px rgba(61, 12, 2, 0.05),
    inset 0 0 0 1px rgba(255, 122, 0, 0.1);
  z-index: 1;
  transform: translateY(0);
  cursor: pointer;
}

/* Abstract glowing blob inside the card */
.gk-card-premium::before {
  content: '';
  position: absolute;
  top: -40%;
  right: -20%;
  width: 150px;
  height: 150px;
  background: radial-gradient(circle, rgba(255, 122, 0, 0.1) 0%, rgba(255, 255, 255, 0) 70%);
  border-radius: 50%;
  z-index: -1;
  transition: all 0.6s ease;
}

/* Shimmer / Shine Sweep Effect on Hover */
.gk-card-premium::after {
  content: '';
  position: absolute;
  top: 0;
  left: -150%;
  width: 50%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.8), transparent);
  transform: skewX(-25deg);
  transition: all 0s;
  /* Reset instantly when not hovered */
  z-index: 10;
  opacity: 0;
}

.gk-card-premium:hover {
  transform: translateY(-12px);
  box-shadow:
    0 30px 50px -10px rgba(255, 122, 0, 0.15),
    inset 0 0 0 2px rgba(255, 122, 0, 0.4);
}

.gk-card-premium:hover::before {
  transform: scale(1.5) translate(-20px, 20px);
  background: radial-gradient(circle, rgba(255, 122, 0, 0.15) 0%, rgba(255, 255, 255, 0) 70%);
}

.gk-card-premium:hover::after {
  left: 200%;
  opacity: 1;
  transition: left 0.8s ease-in-out, opacity 0.3s;
}

/* 3D Icon Box styling */
.gk-icon-3d-wrap {
  width: 85px;
  height: 85px;
  flex-shrink: 0;
  border-radius: 20px;
  background: linear-gradient(135deg, #fffaf5, #ffffff);
  box-shadow:
    10px 10px 20px rgba(61, 12, 2, 0.05),
    -10px -10px 20px rgba(255, 255, 255, 1),
    inset 2px 2px 5px rgba(255, 122, 0, 0.05);
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  transition: all 0.5s ease;
}

.gk-svg-icon {
  width: 65px;
  height: 65px;
  overflow: visible;
}

/* Text Styling inside Cards */
.gk-stat-content {
  position: relative;
  z-index: 2;
}

.gk-stat-content h3 {
  font-size: 40px;
  font-weight: 800;
  color: var(--gk-dark);
  margin: 0 0 2px 0;
  line-height: 1;
  letter-spacing: -1px;
}

.gk-stat-content p {
  font-size: 15px;
  font-weight: 700;
  color: var(--gk-primary);
  text-transform: uppercase;
  letter-spacing: 1.5px;
  margin: 0;
}

/* CSS Animations for SVGs */
.gk-anim-float {
  animation: gk-svg-float 4s ease-in-out infinite;
  transform-origin: center;
}

.gk-anim-float-delay {
  animation: gk-svg-float 4s ease-in-out infinite 1s;
  transform-origin: center;
}

.gk-anim-float-delay-2 {
  animation: gk-svg-float 4s ease-in-out infinite 2s;
  transform-origin: center;
}

.gk-anim-spin {
  animation: gk-svg-spin 4s linear infinite;
  transform-origin: 50px 55px;
  /* Center of the clock dial */
}

/* Speed up animations on Card Hover */
.gk-card-premium:hover .gk-anim-float,
.gk-card-premium:hover .gk-anim-float-delay,
.gk-card-premium:hover .gk-anim-float-delay-2 {
  animation-duration: 2s;
}

.gk-card-premium:hover .gk-anim-spin {
  animation-duration: 1.5s;
}

.gk-card-premium:hover .gk-icon-3d-wrap {
  box-shadow:
    10px 10px 20px rgba(255, 122, 0, 0.15),
    -10px -10px 20px rgba(255, 255, 255, 1),
    inset 2px 2px 5px rgba(255, 255, 255, 1);
}

@keyframes gk-svg-float {

  0%,
  100% {
    transform: translateY(0px);
  }

  50% {
    transform: translateY(-8px);
  }
}

@keyframes gk-svg-spin {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}


.gk-showcase-wrapper {
  border-radius: 24px;
  overflow: hidden;
  box-shadow: 0 25px 60px rgba(61, 12, 2, 0.15);
  position: relative;
}

.gk-showcase-wrapper img {
  width: 100%;
  height: 600px;
  object-fit: cover;
  display: block;
  transition: transform 0.7s ease;
}

.gk-showcase-wrapper:hover img {
  transform: scale(1.02);
}

@keyframes gk-spin-slow {
  100% {
    transform: rotate(360deg);
  }
}

@keyframes gk-spin-reverse {
  100% {
    transform: rotate(-360deg);
  }
}

@keyframes gk-float-smooth {
  0% {
    transform: translateY(0px) translateX(0px);
  }

  100% {
    transform: translateY(-30px) translateX(20px);
  }
}

@keyframes gk-badge-shine {
  100% {
    left: 200%;
  }
}

@media (max-width: 991px) {
  .gk-hero-section {
    padding: 80px 20px 60px;
  }

  .gk-showcase-wrapper img {
    height: 450px;
  }
}

@media (max-width: 767px) {
  .gk-hero-section {
    padding: 60px 15px 40px;
  }

  .gk-stats-grid {
    gap: 20px;
    margin-bottom: 40px;
  }

  .gk-card {
    padding: 20px;
  }

  .gk-showcase-wrapper img {
    height: 300px;
  }
}

/* Course overview section */
:root {
  --gk-primary: #ff7a00;
  --gk-secondary: #ffb300;
  --gk-dark: #3d0c02;
  --gk-dark-light: #5a1b08;
  --gk-bg-section: #f4f0ec;
  --gk-white: #ffffff;
}

.gk-premium-section {
  padding: 55px 15px;
  background-color: var(--gk-bg-section);
  position: relative;
  overflow: hidden;
  font-family: inherit;
  color: var(--gk-dark);
  z-index: 1;
}

/* ----------------------------------------------------
           NEW: ANIMATED DASHED BACKGROUND SHAPES & WAVES 
           ---------------------------------------------------- */
.gk-dashed-circle {
  position: absolute;
  top: -150px;
  left: -150px;
  width: 700px;
  height: 700px;
  border: 2px dashed rgba(255, 122, 0, 0.3);
  border-radius: 50%;
  z-index: -1;
  animation: gk-spin-dashed 30s linear infinite;
  pointer-events: none;
}

.gk-dashed-circle::before {
  content: '';
  position: absolute;
  top: 50px;
  left: 50px;
  right: 50px;
  bottom: 50px;
  border: 2px dashed rgba(61, 12, 2, 0.15);
  border-radius: 50%;
  animation: gk-spin-dashed 20s linear infinite reverse;
}

.gk-dashed-wave-container {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 200%;
  height: 150px;
  z-index: -1;
  opacity: 0.4;
  pointer-events: none;
  /* Animated repeating SVG background wave */
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 320'%3E%3Cpath fill='none' stroke='%23ff7a00' stroke-width='3' stroke-dasharray='10 15' d='M0,160L48,144C96,128,192,96,288,106.7C384,117,480,171,576,192C672,213,768,203,864,176C960,149,1056,107,1152,101.3C1248,96,1344,128,1392,144L1440,160'/%3E%3C/svg%3E") repeat-x;
  animation: gk-wave-move 20s linear infinite;
}

/* 3D Glowing Orbs Background */
.gk-glow-orb {
  position: absolute;
  border-radius: 50%;
  filter: blur(60px);
  z-index: -1;
  opacity: 0.5;
  animation: gk-orb-float 12s infinite alternate ease-in-out;
}

.gk-orb-1 {
  width: 400px;
  height: 400px;
  background: radial-gradient(circle, var(--gk-secondary), transparent 70%);
  top: -100px;
  left: -150px;
}

.gk-orb-2 {
  width: 500px;
  height: 500px;
  background: radial-gradient(circle, var(--gk-primary), transparent 70%);
  bottom: -200px;
  right: -100px;
  animation-delay: -5s;
}

.gk-orb-3 {
  width: 300px;
  height: 300px;
  background: radial-gradient(circle, var(--gk-dark), transparent 70%);
  top: 20%;
  right: 20%;
  opacity: 0.15;
  animation-duration: 8s;
}

.gk-premium-container {
  max-width: 1250px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 60px;
  align-items: center;
  perspective: 1000px;
  /* Enables 3D perspective for child elements */
}

.gk-content-side {
  position: relative;
  z-index: 2;
}

.gk-section-title {
  font-size: clamp(36px, 4vw, 50px);
  font-weight: 800;
  line-height: 1.1;
  margin-bottom: 25px;
  background: linear-gradient(135deg, var(--gk-primary), var(--gk-dark));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  text-shadow: 2px 5px 10px rgba(255, 122, 0, 0.1);
}

.gk-section-desc {
  font-size: 13px;
  line-height: 1.6;
  color: var(--gk-dark-light);
  margin-bottom: 26px;
  font-weight: 400;
  text-align: justify;
  font-family: "Unbounded", sans-serif !important;
}

.gk-learn-heading {
  font-size: 22px;
  font-weight: 800;
  margin-bottom: 25px;
  display: flex;
  align-items: center;
  gap: 15px;
}

.gk-learn-heading::before {
  content: '';
  width: 40px;
  height: 4px;
  background: var(--gk-primary);
  border-radius: 2px;
}

/* 3D Floating Pills for Course List */
.gk-pills-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 15px;
}

.gk-3d-pill {
  background: linear-gradient(145deg, #ffffff, #f0eae1);
  border: 1px solid rgba(255, 122, 0, 0.2);
  padding: 12px 24px;
  border-radius: 50px;
  font-weight: 700;
  color: var(--gk-dark);
  display: flex;
  align-items: center;
  gap: 10px;
  box-shadow:
    5px 5px 10px rgba(61, 12, 2, 0.05),
    -5px -5px 10px rgba(255, 255, 255, 0.8),
    inset 0px -3px 5px rgba(61, 12, 2, 0.05);
  transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  cursor: pointer;
  position: relative;
  transform-style: preserve-3d;
  animation: gk-levitate 5s ease-in-out infinite;
}

.gk-3d-pill:nth-child(even) {
  animation-delay: -2.5s;
}

.gk-3d-pill:nth-child(3n) {
  animation-delay: -1s;
}

.gk-3d-pill:hover {
  transform: translateY(-8px) scale(1.05);
  background: linear-gradient(145deg, var(--gk-primary), var(--gk-secondary));
  color: var(--gk-white);
  box-shadow:
    8px 12px 20px rgba(255, 122, 0, 0.3),
    -5px -5px 10px rgba(255, 255, 255, 0.5),
    inset 0px -3px 5px rgba(61, 12, 2, 0.2);
  border-color: transparent;
}

.gk-pill-dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: var(--gk-primary);
  box-shadow: inset 2px 2px 4px rgba(255, 255, 255, 0.8), inset -2px -2px 4px rgba(0, 0, 0, 0.2);
}

.gk-3d-pill:hover .gk-pill-dot {
  background: var(--gk-white);
}


.gk-card-wrapper {
  position: relative;
  z-index: 3;
  /* Container for 3D tilt effect */
  perspective: 1500px;
}

.gk-premium-card {
  background: rgba(255, 255, 255, 0.6);
  backdrop-filter: blur(25px);
  -webkit-backdrop-filter: blur(25px);
  border-radius: 30px;
  border: 1px solid rgba(255, 255, 255, 0.8);
  box-shadow:
    0 30px 60px rgba(61, 12, 2, 0.1),
    inset 0 0 0 2px rgba(255, 255, 255, 1);
  padding: 15px;
  transform-style: preserve-3d;
  transition: transform 0.6s cubic-bezier(0.23, 1, 0.32, 1), box-shadow 0.6s ease;
  position: relative;
}

/* 3D Hover Tilt on the entire card */
.gk-card-wrapper:hover .gk-premium-card {
  transform: rotateY(-5deg) rotateX(5deg) translateY(-10px);
  box-shadow:
    -20px 40px 60px rgba(255, 122, 0, 0.15),
    inset 0 0 0 2px rgba(255, 255, 255, 1);
}

/* Card Image Area */
.gk-card-image-box {
  position: relative;
  background: #fff;
  padding: 10px;
  border-radius: 20px;
  box-shadow: inset 0 5px 15px rgba(0, 0, 0, 0.05);
  transform: translateZ(30px);
  /* Pops image out of card */
  margin-bottom: 35px;
  /* Increased margin to fit the new price banner */
  /* Removed overflow:hidden so the 3D price banner can pop out */
}

/* Image Wrapper to keep the image shape and sweep effect inside */
.gk-img-wrapper {
  position: relative;
  border-radius: 15px;
  overflow: hidden;
  display: block;
  height: 310px;
}

.gk-img-wrapper img {
  width: 100%;
  display: block;
  object-fit: cover;
  transition: transform 0.8s ease;
}

.gk-card-wrapper:hover .gk-img-wrapper img {
  transform: scale(1.05);
}

/* Shimmer effect over image */
.gk-img-wrapper::after {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 50%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.6), transparent);
  transform: skewX(-25deg);
  z-index: 5;
}

.gk-card-wrapper:hover .gk-img-wrapper::after {
  animation: gk-img-sweep 1s ease-in-out forwards;
}

/* ----------------------------------------------------
           NEW PREMIUM 3D PRICE BANNER 
           ---------------------------------------------------- */
.gk-3d-price-banner {
  position: absolute;
  bottom: -25px;
  /* Floats half inside and half outside the image */
  left: 5%;
  width: 90%;
  background: linear-gradient(135deg, var(--gk-dark), #1a0501);
  border-radius: 16px;
  padding: 11px 20px;
  color: white;
  display: flex;
  align-items: center;
  justify-content: space-between;
  transform: translateZ(60px);
  /* Massive 3D Pop out */
  border: 1px solid rgba(255, 122, 0, 0.4);
  box-shadow:
    0 25px 40px rgba(61, 12, 2, 0.4),
    inset 0 2px 10px rgba(255, 122, 0, 0.3);
  animation: gk-price-float 4s infinite ease-in-out;
  z-index: 10;
}

.gk-price-left {
  display: flex;
  flex-direction: column;
  gap: 2px;
}

.gk-price-strike {
  font-size: 16px;
  text-decoration: line-through;
  color: rgba(255, 255, 255, 0.6);
  font-weight: 500;
}

.gk-price-discount {
  background: var(--gk-primary);
  color: white;
  font-size: 12px;
  font-weight: 800;
  padding: 3px 10px;
  border-radius: 20px;
  text-transform: uppercase;
  letter-spacing: 1px;
  box-shadow: 0 4px 10px rgba(255, 122, 0, 0.4);
}

.gk-price-main {
  font-size: 36px;
  font-weight: 900;
  line-height: 1;
  color: var(--gk-secondary);
  text-shadow: 2px 4px 8px rgba(0, 0, 0, 0.4);
  letter-spacing: -1px;
}

.gk-features-wrap {
  transform: translateZ(20px);
}

.gk-feature-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 11px 12px;
  border-bottom: 1px solid rgba(61, 12, 2, 0.08);
  transition: transform 0.3s ease, background 0.3s ease;
  border-radius: 12px;
}

.gk-feature-item:hover {
  transform: translateX(10px) translateZ(10px);
  background: rgba(255, 122, 0, 0.03);
  padding-left: 10px;
  padding-right: 10px;
}

.gk-feature-left {
  display: flex;
  align-items: center;
  gap: 15px;
  font-weight: 700;
  color: var(--gk-dark);
  font-size: 16px;
}

.gk-feature-right {
  font-weight: 800;
  color: var(--gk-primary);
}

/* 3D Animated Icons Wrapper */
.gk-icon-3d {
  width: 40px;
  height: 40px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, #fff, #f0eae1);
  box-shadow:
    4px 4px 10px rgba(61, 12, 2, 0.1),
    -4px -4px 10px rgba(255, 255, 255, 1),
    inset 1px 1px 3px rgba(255, 122, 0, 0.1);
  position: relative;
}

.gk-icon-3d svg {
  width: 24px;
  height: 24px;
  /* 3D Gradient definition inside SVG */
  filter: drop-shadow(2px 2px 2px rgba(0, 0, 0, 0.15));
  transform-origin: center center;
  /* FIX: Keeps animation centered */
}

/* Individual icon animations */
.gk-anim-spin {
  animation: gk-spin-y 4s linear infinite;
  transform-origin: center center;
}

.gk-anim-bounce {
  animation: gk-bounce 3s ease-in-out infinite;
  transform-origin: center center;
}

.gk-anim-rock {
  animation: gk-rock 3s ease-in-out infinite;
  transform-origin: bottom center;
}

.gk-btn-3d {
  width: 100%;
  margin-top: 20px;
  transform: translateZ(40px);
  font-size: 19px;
}


@keyframes gk-orb-float {
  0% {
    transform: translate(0, 0);
  }

  100% {
    transform: translate(50px, -50px);
  }
}

@keyframes gk-levitate {

  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-10px);
  }
}

@keyframes gk-img-sweep {
  100% {
    left: 200%;
  }
}

@keyframes gk-price-float {

  0%,
  100% {
    transform: translateZ(60px) translateY(0);
    box-shadow: 0 25px 40px rgba(61, 12, 2, 0.4), inset 0 2px 10px rgba(255, 122, 0, 0.3);
  }

  50% {
    transform: translateZ(60px) translateY(-8px);
    box-shadow: 0 35px 50px rgba(61, 12, 2, 0.5), inset 0 2px 10px rgba(255, 122, 0, 0.5);
  }
}

@keyframes gk-spin-dashed {
  100% {
    transform: rotate(360deg);
  }
}

@keyframes gk-wave-move {
  100% {
    transform: translateX(-50%);
  }
}

@keyframes gk-spin-y {
  0% {
    transform: rotateY(0deg);
  }

  100% {
    transform: rotateY(360deg);
  }
}

@keyframes gk-bounce {

  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-5px);
  }
}

@keyframes gk-rock {

  0%,
  100% {
    transform: rotate(-10deg);
  }

  50% {
    transform: rotate(10deg);
  }
}

@keyframes gk-aura-spin {
  0% {
    filter: hue-rotate(0deg) blur(15px);
  }

  100% {
    filter: hue-rotate(30deg) blur(15px);
  }
}

@media (max-width: 991px) {
  .gk-premium-container {
    grid-template-columns: 1fr;
    gap: 80px;
  }

  /* SWAP ORDER FOR MOBILE: Package Card on top, Course Overview on bottom */
  .gk-card-wrapper {
    order: 1;
  }

  .gk-content-side {
    order: 2;
  }

  .gk-card-wrapper:hover .gk-premium-card {
    transform: none;
  }

  /* Disable heavy 3D tilt on mobile */
  .gk-3d-price-banner {
    bottom: -20px;
    padding: 12px 20px;
  }

  .gk-price-main {
    font-size: 32px;
  }
}

@media (max-width: 767px) {
  .gk-premium-section {
    padding: 60px 15px;
  }

  .gk-section-title {
    font-size: 32px;
  }

  .gk-premium-card {
    padding: 20px;
  }
}

/* Course content section */
:root {
  --gk-cc-primary: #ff7a00;
  --gk-cc-secondary: #ffb300;
  --gk-cc-dark: #3d0c02;
  --gk-cc-dark-light: #5a1b08;
  --gk-cc-bg-alt: #fdfbf9;
  --gk-cc-white: #ffffff;
}

.gk-cc-section-wrapper {
  position: relative;
  padding: 65px 0 40px;
  background-color: #ffffff;
  overflow: hidden;
  font-family: inherit;
  z-index: 1;
}

.gk-cc-bg-layer {
  position: absolute;
  z-index: -1;
  pointer-events: none;
}

.gk-cc-shape-spin {
  top: 5%;
  left: -5%;
  width: 300px;
  height: 300px;
  background-image: radial-gradient(var(--gk-cc-primary) 2px, transparent 2px);
  background-size: 20px 20px;
  opacity: 0.15;
  animation: gk-cc-anim-spin 40s linear infinite;
  border-radius: 50%;
}

.gk-cc-shape-orb {
  bottom: -10%;
  right: -5%;
  width: 400px;
  height: 400px;
  background: radial-gradient(circle, rgba(255, 122, 0, 0.15) 0%, rgba(255, 255, 255, 0) 70%);
  animation: gk-cc-anim-orb 8s ease-in-out infinite alternate;
}

.gk-cc-head-container {
  text-align: center;
  margin-bottom: 70px;
  position: relative;
  z-index: 2;
}

.gk-cc-main-heading {
  /* फॉन्ट साइज को 65px से घटाकर 48px कर दिया गया है */
  font-size: clamp(32px, 4vw, 48px);
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: 2px;
  margin-bottom: 15px;
  position: relative;
  display: inline-block;

  background: linear-gradient(to right, var(--gk-cc-primary) 0%, var(--gk-cc-secondary) 25%, var(--gk-cc-dark) 50%, var(--gk-cc-primary) 100%);
  background-size: 300% auto;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;

  filter: drop-shadow(2px 2px 0px rgba(255, 122, 0, 0.15)) drop-shadow(0px 10px 15px rgba(61, 12, 2, 0.1));
  animation: gk-cc-anim-pan 5s linear infinite;
}

.gk-cc-main-heading::after {
  content: '';
  position: absolute;
  bottom: -15px;
  left: 50%;
  transform: translateX(-50%);
  width: 60px;
  height: 6px;
  background: linear-gradient(90deg, var(--gk-cc-primary), var(--gk-cc-dark));
  border-radius: 10px;
  box-shadow: 0 4px 10px rgba(255, 122, 0, 0.4);
  animation: gk-cc-anim-line 3s infinite ease-in-out;
}

.gk-cc-grid-row {
  perspective: 1200px;
}

.gk-cc-course-box {
  display: block;
  text-decoration: none;
  background: rgba(255, 255, 255, 0.85);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border-radius: 30px;
  padding: 15px;
  position: relative;
  transform-style: preserve-3d;
  transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);
  border: 2px solid rgba(255, 255, 255, 1);

  box-shadow:
    0 20px 40px rgba(61, 12, 2, 0.08),
    inset 0 0 0 1px rgba(255, 122, 0, 0.05);

  animation: gk-cc-anim-float 6s ease-in-out infinite;
}

.col-md-6:nth-child(2) .gk-cc-course-box {
  animation-delay: -2s;
}

.col-md-6:nth-child(3) .gk-cc-course-box {
  animation-delay: -4s;
}

.col-md-6:nth-child(4) .gk-cc-course-box {
  animation-delay: -1s;
}

.col-md-6:nth-child(5) .gk-cc-course-box {
  animation-delay: -3s;
}

.gk-cc-course-box:hover {
  transform: translateY(-15px) rotateX(4deg) rotateY(-2deg);
  box-shadow:
    20px 30px 50px rgba(61, 12, 2, 0.15),
    inset 0 0 0 2px rgba(255, 122, 0, 0.5);
  text-decoration: none;
  animation-play-state: paused;
  border-color: rgba(255, 122, 0, 0.2);
}

.gk-cc-image-container {
  position: relative;
  width: 100%;
  height: 240px;
  border-radius: 20px;
  overflow: hidden;
  background: #eee;
  margin-bottom: 12px;
  box-shadow: inset 0 0 20px rgba(0, 0, 0, 0.1);
  transform: translateZ(30px);
  transition: transform 0.5s ease;
}

.gk-cc-image-container img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.8s cubic-bezier(0.23, 1, 0.32, 1);
}

.gk-cc-course-box:hover .gk-cc-image-container img {
  transform: scale(1.1);
}

.gk-cc-image-container::after {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 50%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.5), transparent);
  transform: skewX(-25deg);
  z-index: 2;
}

.gk-cc-course-box:hover .gk-cc-image-container::after {
  animation: gk-cc-anim-shine 1.2s ease-in-out forwards;
}

.gk-cc-arrow-badge {
  position: absolute;
  bottom: -60px;
  right: 20px;
  background: linear-gradient(135deg, var(--gk-cc-primary), var(--gk-cc-secondary));
  width: 50px;
  height: 50px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 3px solid #fff;
  box-shadow: 0 10px 20px rgba(255, 122, 0, 0.4);
  transition: all 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  z-index: 3;
}

.gk-cc-arrow-badge::before {
  content: '';
  position: absolute;
  top: -2px;
  left: -2px;
  right: -2px;
  bottom: -2px;
  border-radius: 50%;
  background: var(--gk-cc-primary);
  z-index: -1;
  opacity: 0;
  transition: opacity 0.3s;
}

.gk-cc-arrow-badge svg {
  width: 24px;
  height: 24px;
  fill: none;
  stroke: #fff;
  stroke-width: 2.5;
  stroke-linecap: round;
  stroke-linejoin: round;
  transition: transform 0.3s ease;
}

.gk-cc-course-box:hover .gk-cc-arrow-badge {
  bottom: 20px;
  transform: rotate(-10deg);
}

.gk-cc-course-box:hover .gk-cc-arrow-badge::before {
  animation: gk-cc-anim-pulse 1.5s infinite;
}

.gk-cc-course-box:hover .gk-cc-arrow-badge svg {
  transform: translateX(3px) rotate(10deg);
}

.gk-cc-box-title {
  font-size: 17px;
  font-weight: 800;
  color: var(--gk-cc-dark);
  text-align: center;
  margin: 0;
  padding: 5px 15px 9px;
  transition: color 0.3s ease, transform 0.3s ease;
  transform: translateZ(20px);
  letter-spacing: -0.5px;
}

.gk-cc-course-box:hover .gk-cc-box-title {
  color: var(--gk-cc-primary);
}

@keyframes gk-cc-anim-pan {
  to {
    background-position: 300% center;
  }
}

@keyframes gk-cc-anim-pulse {
  0% {
    transform: scale(1);
    opacity: 0.6;
  }

  100% {
    transform: scale(1.6);
    opacity: 0;
  }
}

@keyframes gk-cc-anim-spin {
  100% {
    transform: rotate(360deg);
  }
}

@keyframes gk-cc-anim-orb {
  0% {
    transform: translate(0, 0);
  }

  100% {
    transform: translate(-30px, -30px) scale(1.1);
  }
}

@keyframes gk-cc-anim-line {

  0%,
  100% {
    width: 80px;
  }

  50% {
    width: 140px;
  }
}

@keyframes gk-cc-anim-float {

  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-8px);
  }
}

@keyframes gk-cc-anim-shine {
  100% {
    left: 200%;
  }
}

@media (max-width: 767px) {
  .gk-cc-section-wrapper {
    padding: 60px 0;
  }

  .gk-cc-image-container {
    height: 200px;
  }

  .gk-cc-box-title {
    font-size: 20px;
  }
}

/* Course completiion certifivation */

:root {
  --gk-cert-primary: #ff7a00;
  --gk-cert-secondary: #ffb300;
  --gk-cert-dark: #1a0400;
  /* Deep Maroon/Black */
  --gk-cert-maroon: #3d0c02;
  --gk-cert-text-light: #f4eae6;
}

/* 1. Main Wrapper - Dark Premium Background */
.gk-cert-wrapper {
  position: relative;
  padding: 70px 0;
  background-color: var(--gk-cert-dark);
  background-image:
    radial-gradient(circle at 80% 20%, rgba(255, 122, 0, 0.08) 0%, transparent 40%),
    radial-gradient(circle at 20% 80%, rgba(61, 12, 2, 0.4) 0%, transparent 40%);
  overflow: hidden;
  font-family: inherit;
  z-index: 1;
  color: #fff;
}

/* Background Animated Particles */
.gk-cert-bg-shape {
  position: absolute;
  border-radius: 50%;
  filter: blur(60px);
  z-index: -1;
  animation: gk-cert-anim-float-bg 15s infinite alternate ease-in-out;
}

.gk-cert-shape-1 {
  width: 300px;
  height: 300px;
  background: rgba(255, 122, 0, 0.15);
  top: 10%;
  left: -100px;
}

.gk-cert-shape-2 {
  width: 400px;
  height: 400px;
  background: rgba(255, 179, 0, 0.1);
  bottom: -150px;
  right: -100px;
  animation-delay: -5s;
}

/* 2. Left Side: 3D Certificate Image */
.gk-cert-image-container {
  position: relative;
  perspective: 1200px;
  /* 3D Space */
  z-index: 2;
}

.gk-cert-image-box {
  position: relative;
  border-radius: 20px;
  transform-style: preserve-3d;
  animation: gk-cert-anim-levitate 6s ease-in-out infinite;
  transition: transform 0.6s cubic-bezier(0.23, 1, 0.32, 1);
  cursor: pointer;
}

.gk-cert-image-box img {
  width: 100%;
  border-radius: 12px;
  /* Glowing Golden Shadow */
  box-shadow:
    0 30px 60px rgba(0, 0, 0, 0.5),
    0 0 40px rgba(255, 122, 0, 0.2),
    inset 0 0 0 2px rgba(255, 179, 0, 0.5);
  transform: translateZ(20px);
  transition: transform 0.6s ease, box-shadow 0.6s ease;
}

/* Hover: Tilt and Glow */
.gk-cert-image-container:hover .gk-cert-image-box {
  transform: rotateY(10deg) rotateX(5deg) translateY(-10px);
  animation-play-state: paused;
}

.gk-cert-image-container:hover .gk-cert-image-box img {
  box-shadow:
    -20px 40px 80px rgba(0, 0, 0, 0.6),
    0 0 60px rgba(255, 122, 0, 0.4),
    inset 0 0 0 2px rgba(255, 255, 255, 0.8);
}

/* Floating Badge over Certificate */
.gk-cert-badge {
  position: absolute;
  bottom: -12px;
  right: -20px;
  background: linear-gradient(135deg, var(--gk-cert-primary), var(--gk-cert-secondary));
  color: #fff;
  padding: 10px 20px;
  border-radius: 50px;
  font-weight: 800;
  font-size: 13px;
  letter-spacing: 1px;
  text-transform: uppercase;
  box-shadow: 0 15px 30px rgba(255, 122, 0, 0.4);
  transform: translateZ(60px);
  /* Pops out */
  animation: gk-cert-anim-pulse 3s infinite;
  border: 2px solid #fff;
  display: flex;
  align-items: center;
  gap: 10px;
}

.gk-cert-badge svg {
  width: 24px;
  height: 24px;
  fill: #fff;
}

/* 3. Right Side: Text & Timeline Content */
.gk-cert-content-wrapper {
  padding-left: 30px;
  position: relative;
  z-index: 2;
}

.gk-cert-heading {
  font-size: clamp(36px, 4vw, 46px);
  font-weight: 900;
  line-height: 1.15;
  margin-bottom: 10px;
  /* Shimmering Gold/Orange Text */
  background: linear-gradient(to right, #fff, var(--gk-cert-secondary), var(--gk-cert-primary), #fff);
  background-size: 300% auto;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  animation: gk-cert-anim-text-shine 6s linear infinite;
}

.gk-cert-subheading {
  font-size: 18px;
  line-height: 1.7;
  color: var(--gk-cert-text-light);
  margin-bottom: 30px;
  opacity: 0.8;
  font-weight: 300;
}

/* 4. The 3D Interactive Timeline */
.gk-cert-timeline {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

/* Vertical Glowing Line */
.gk-cert-timeline::before {
  content: '';
  position: absolute;
  top: 10px;
  bottom: 10px;
  left: 24px;
  /* Center of the 50px icon */
  width: 2px;
  background: rgba(255, 122, 0, 0.2);
  z-index: 0;
}

.gk-cert-step {
  display: flex;
  align-items: flex-start;
  gap: 25px;
  position: relative;
  z-index: 1;
  cursor: pointer;
}

/* Timeline Number/Icon Box */
.gk-cert-step-num {
  width: 50px;
  height: 50px;
  flex-shrink: 0;
  border-radius: 50%;
  background: var(--gk-cert-dark);
  border: 2px solid rgba(255, 122, 0, 0.4);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
  font-weight: 800;
  color: var(--gk-cert-primary);
  box-shadow: 0 0 15px rgba(255, 122, 0, 0.1);
  transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  position: relative;
}

/* Glowing aura behind number */
.gk-cert-step-num::before {
  content: '';
  position: absolute;
  top: -5px;
  left: -5px;
  right: -5px;
  bottom: -5px;
  border-radius: 50%;
  background: var(--gk-cert-primary);
  z-index: -1;
  filter: blur(10px);
  opacity: 0;
  transition: opacity 0.4s;
}

/* Timeline Content Card */
.gk-cert-step-card {
  background: rgba(255, 255, 255, 0.03);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border: 1px solid rgba(255, 255, 255, 0.05);
  border-radius: 16px;
  padding: 15px 20px;
  flex-grow: 1;
  transition: all 0.4s ease;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.02);
}

.gk-cert-step-card h4 {
  font-size: 20px;
  font-weight: 700;
  color: #fff;
  margin-bottom: 8px;
  transition: color 0.3s;
}

.gk-cert-step-card p {
  font-size: 15px;
  color: rgba(244, 234, 230, 0.7);
  margin: 0;
  line-height: 1.6;
}

/* The Hover Magic */
.gk-cert-step:hover .gk-cert-step-num {
  background: linear-gradient(135deg, var(--gk-cert-primary), var(--gk-cert-secondary));
  color: #fff;
  border-color: transparent;
  transform: scale(1.15) rotate(360deg);
  box-shadow: 0 10px 20px rgba(255, 122, 0, 0.4);
}

.gk-cert-step:hover .gk-cert-step-num::before {
  opacity: 0.6;
}

.gk-cert-step:hover .gk-cert-step-card {
  background: rgba(255, 122, 0, 0.08);
  border-color: rgba(255, 122, 0, 0.3);
  transform: translateX(10px);
  /* Slide Right */
  box-shadow: 0 15px 30px rgba(0, 0, 0, 0.4);
}

.gk-cert-step:hover .gk-cert-step-card h4 {
  color: var(--gk-cert-secondary);
}

/* Animations */
@keyframes gk-cert-anim-levitate {

  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-15px);
  }
}

@keyframes gk-cert-anim-pulse {

  0%,
  100% {
    transform: translateZ(60px) scale(1);
    box-shadow: 0 15px 30px rgba(255, 122, 0, 0.4);
  }

  50% {
    transform: translateZ(60px) scale(1.05);
    box-shadow: 0 25px 40px rgba(255, 122, 0, 0.6);
  }
}

@keyframes gk-cert-anim-text-shine {
  to {
    background-position: 300% center;
  }
}

@keyframes gk-cert-anim-float-bg {
  0% {
    transform: translate(0, 0) scale(1);
  }

  100% {
    transform: translate(30px, -50px) scale(1.2);
  }
}

/* Responsive */
@media (max-width: 991px) {
  .gk-cert-wrapper {
    padding: 80px 0;
  }

  .gk-cert-content-wrapper {
    padding-left: 0;
    margin-top: 60px;
  }

  .gk-cert-badge {
    bottom: -20px;
    right: 0;
    font-size: 14px;
    padding: 10px 20px;
  }

  .gk-cert-image-container:hover .gk-cert-image-box {
    transform: none;
  }

  /* Disable heavy 3D on tablet/mobile */
}

@media (max-width: 767px) {
  .gk-cert-wrapper {
    padding: 60px 15px;
  }

  .gk-cert-heading {
    font-size: 32px;
  }

  .gk-cert-step {
    gap: 15px;
  }

  .gk-cert-timeline::before {
    left: 19px;
  }

  /* Adjust line for smaller icon */
  .gk-cert-step-num {
    width: 40px;
    height: 40px;
    font-size: 16px;
  }

  .gk-cert-step-card {
    padding: 15px;
  }

  .gk-cert-step:hover .gk-cert-step-card {
    transform: translateX(5px);
  }
}

/* Course details faq */
:root {
  --gk-faq-primary: #ff7a00;
  --gk-faq-secondary: #ffb300;
  --gk-faq-dark: #3d0c02;
  --gk-faq-text: #5a1b08;
  --gk-faq-bg: #fffaf5;
  --gk-faq-white: #ffffff;
  --gk-faq-glass: rgba(255, 255, 255, 0.7);
}

.gk-faq-section {
  padding: 50px 0 20px;
  background-color: var(--gk-faq-bg);
  position: relative;
  overflow: hidden;
  font-family: inherit;
  color: var(--gk-faq-dark);
  z-index: 1;
}

.gk-faq-section .gk-faq-aurora-bg {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: -1;
  opacity: 0.4;
  background:
    radial-gradient(circle at 15% 50%, rgba(255, 122, 0, 0.08), transparent 40%),
    radial-gradient(circle at 85% 30%, rgba(61, 12, 2, 0.05), transparent 40%);
  animation: gk-faq-aurora-shift 15s infinite alternate ease-in-out;
}

/* Tech Dots Grid */
.gk-faq-section .gk-faq-grid-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-image: radial-gradient(rgba(255, 122, 0, 0.15) 1px, transparent 1px);
  background-size: 30px 30px;
  z-index: -1;
  opacity: 0.5;
}

.gk-faq-section .gk-faq-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: linear-gradient(135deg, var(--gk-faq-dark), #1a0501);
  color: #fff;
  padding: 8px 24px;
  border-radius: 50px;
  font-weight: 700;
  font-size: 13px;
  text-transform: uppercase;
  letter-spacing: 2px;
  box-shadow: 0 10px 20px rgba(61, 12, 2, 0.15);
  margin-bottom: 25px;
  border: 1px solid rgba(255, 122, 0, 0.3);
}

.gk-faq-section .gk-faq-badge-dot {
  width: 8px;
  height: 8px;
  background-color: var(--gk-faq-primary);
  border-radius: 50%;
  box-shadow: 0 0 10px var(--gk-faq-primary);
  animation: gk-faq-blink 2s infinite;
}

.gk-faq-section .gk-faq-title {
  font-size: clamp(36px, 4vw, 40px);
  font-weight: 900;
  line-height: 1.15;
  margin-bottom: 10px;
  color: var(--gk-faq-dark);
  letter-spacing: -1px;
}

.gk-faq-section .gk-faq-title span {
  background: linear-gradient(to right, var(--gk-faq-primary), var(--gk-faq-secondary));
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

.gk-faq-section .gk-faq-desc {
  font-size: 18px;
  line-height: 1.7;
  color: var(--gk-faq-text);
  margin-bottom: 15px;
  opacity: 0.9;
}

.gk-faq-section .gk-faq-3d-scene {
  position: relative;
  width: 100%;
  height: 400px;
  display: flex;
  align-items: center;
  justify-content: center;
  perspective: 1000px;
}

.gk-faq-section .gk-faq-huge-q {
  font-size: 250px;
  font-weight: 900;
  line-height: 1;
  background: linear-gradient(135deg, var(--gk-faq-primary) 0%, var(--gk-faq-secondary) 50%, var(--gk-faq-dark) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  filter: drop-shadow(0 20px 30px rgba(255, 122, 0, 0.3));
  animation: gk-faq-float-q 6s ease-in-out infinite;
  position: relative;
  z-index: 2;
}

/* Orbiting Glass Badges */
.gk-faq-section .gk-faq-orbit-badge {
  position: absolute;
  background: var(--gk-faq-glass);
  backdrop-filter: blur(15px);
  -webkit-backdrop-filter: blur(15px);
  border: 1px solid rgba(255, 255, 255, 1);
  border-radius: 12px;
  padding: 12px 20px;
  font-weight: 700;
  color: var(--gk-faq-dark);
  display: flex;
  align-items: center;
  gap: 10px;
  box-shadow: 0 15px 35px rgba(61, 12, 2, 0.08);
  z-index: 3;
  transform-style: preserve-3d;
}

.gk-faq-section .gk-faq-orbit-badge svg {
  width: 20px;
  height: 20px;
  fill: var(--gk-faq-primary);
}

.gk-faq-section .gk-badge-1 {
  top: 10%;
  left: 0%;
  animation: gk-faq-float-badge 7s infinite ease-in-out;
}

.gk-faq-section .gk-badge-2 {
  bottom: 20%;
  right: 0%;
  animation: gk-faq-float-badge 6s infinite ease-in-out reverse;
}

.gk-faq-section .gk-badge-3 {
  top: 40%;
  right: -5%;
  animation: gk-faq-float-badge 8s infinite ease-in-out 1s;
}

.gk-faq-section .gk-faq-wrapper {
  display: flex;
  flex-direction: column;
  gap: 5px;
  position: relative;
  z-index: 2;
}

.gk-faq-section .gk-faq-item {
  background: var(--gk-faq-white);
  border-radius: 16px;
  border: 1px solid rgba(61, 12, 2, 0.05);
  border-left: 4px solid transparent;
  /* Indicator Line */
  box-shadow: 0 10px 20px rgba(61, 12, 2, 0.03);
  transition: all 0.4s cubic-bezier(0.23, 1, 0.32, 1);
  overflow: hidden;
  position: relative;
}

/* Hover: Slide Right */
.gk-faq-section .gk-faq-item:hover {
  transform: translateX(8px);
  box-shadow: -5px 15px 30px rgba(255, 122, 0, 0.08);
  border-color: rgba(255, 122, 0, 0.1);
}

/* Active State (Opened) */
.gk-faq-section .gk-faq-item.active {
  border-left-color: var(--gk-faq-primary);
  /* Thick Orange Line */
  background: linear-gradient(90deg, rgba(255, 122, 0, 0.04) 0%, rgba(255, 255, 255, 1) 40%);
  box-shadow: 0 20px 40px rgba(61, 12, 2, 0.08);
  transform: translateX(12px);
}

.gk-faq-section .gk-faq-question {
  padding: 15px 20px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  cursor: pointer;
  user-select: none;
  position: relative;
  z-index: 2;
}

.gk-faq-section .gk-faq-question h4 {
  font-size: 17px;
  font-weight: 700;
  color: var(--gk-faq-dark);
  margin: 0;
  padding-right: 20px;
  transition: color 0.3s;
}

.gk-faq-section .gk-faq-item.active .gk-faq-question h4 {
  color: var(--gk-faq-primary);
}

.gk-faq-section .gk-faq-icon-wrap {
  width: 45px;
  height: 45px;
  flex-shrink: 0;
  border-radius: 12px;
  background: var(--gk-faq-bg);
  border: 1px solid rgba(61, 12, 2, 0.08);
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  transition: all 0.5s cubic-bezier(0.68, -0.55, 0.265, 1.55);
  /* Bouncy transition */
  box-shadow: inset 0 -3px 5px rgba(0, 0, 0, 0.03);
}

.gk-faq-item:hover .gk-faq-icon-wrap {
  background: rgba(255, 122, 0, 0.1);
  border-color: rgba(255, 122, 0, 0.2);
}

/* The plus lines */
.gk-faq-section .gk-faq-icon-wrap::before,
.gk-faq-section .gk-faq-icon-wrap::after {
  content: '';
  position: absolute;
  background: var(--gk-faq-dark);
  border-radius: 2px;
  transition: all 0.4s ease;
}

.gk-faq-section .gk-faq-icon-wrap::before {
  width: 16px;
  height: 2px;
}

/* Horizontal */
.gk-faq-icon-wrap::after {
  width: 2px;
  height: 16px;
}

/* Vertical */

/* When Active (Turns to Minus, Rotates & Becomes Orange) */
.gk-faq-item.active .gk-faq-icon-wrap {
  background: linear-gradient(135deg, var(--gk-faq-primary), var(--gk-faq-secondary));
  transform: rotate(180deg);
  box-shadow: 0 8px 15px rgba(255, 122, 0, 0.3);
  border-color: transparent;
}

.gk-faq-section .gk-faq-item.active .gk-faq-icon-wrap::before {
  background: #fff;
}

.gk-faq-section .gk-faq-item.active .gk-faq-icon-wrap::after {
  transform: rotate(90deg);
  /* Flattens to become a minus sign smoothly */
  background: #fff;
  height: 16px;
  /* Keep height, just rotate it to overlap horizontal */
}

/* Answer Section */
.gk-faq-section .gk-faq-answer-wrapper {
  max-height: 0;
  opacity: 0;
  transition: max-height 0.5s cubic-bezier(0.23, 1, 0.32, 1), opacity 0.4s ease;
}

.gk-faq-section .gk-faq-answer-inner {
  padding: 0 20px 20px 20px;
  font-size: 13px;
  text-align: justify;
  line-height: 1.8;
  color: var(--gk-faq-text);
  position: relative;
}

/* Subtle dashed line separator inside answer */
.gk-faq-section .gk-faq-answer-inner::before {
  content: '';
  display: block;
  width: 100%;
  height: 1px;
  background: repeating-linear-gradient(to right, rgba(255, 122, 0, 0.3) 0, rgba(255, 122, 0, 0.3) 5px, transparent 5px, transparent 10px);
  margin-bottom: 15px;
}

@keyframes gk-faq-aurora-shift {
  0% {
    background-position: 0% 0%;
  }

  100% {
    background-position: 100% 100%;
  }
}

@keyframes gk-faq-blink {

  0%,
  100% {
    opacity: 1;
  }

  50% {
    opacity: 0.3;
  }
}

@keyframes gk-faq-float-q {

  0%,
  100% {
    transform: translateY(0) rotateY(0deg) scale(1);
    filter: drop-shadow(0 20px 30px rgba(255, 122, 0, 0.3));
  }

  50% {
    transform: translateY(-20px) rotateY(15deg) scale(1.05);
    filter: drop-shadow(0 30px 50px rgba(255, 122, 0, 0.5));
  }
}

@keyframes gk-faq-float-badge {

  0%,
  100% {
    transform: translateY(0) rotateZ(0deg);
  }

  50% {
    transform: translateY(-15px) rotateZ(5deg);
  }
}

/* Responsive */
@media (max-width: 991px) {
  .gk-faq-section {
    padding: 80px 0;
  }

  .gk-faq-3d-scene {
    height: 300px;
    margin-bottom: 40px;
  }

  .gk-faq-huge-q {
    font-size: 180px;
  }

  .gk-faq-title {
    font-size: 32px;
  }

  .gk-faq-item:hover {
    transform: none;
  }

  .gk-faq-item.active {
    transform: none;
  }
}

@media (max-width: 767px) {
  .gk-faq-section {
    padding: 60px 15px;
  }

  .gk-faq-3d-scene {
    height: 250px;
  }

  .gk-faq-huge-q {
    font-size: 140px;
  }

  .gk-badge-1,
  .gk-badge-2,
  .gk-badge-3 {
    font-size: 12px;
    padding: 8px 12px;
  }

  .gk-faq-question {
    padding: 18px 20px;
  }

  .gk-faq-question h4 {
    font-size: 16px;
  }

  .gk-faq-answer-inner {
    padding: 0 20px 20px 20px;
    font-size: 15px;
  }
}

/* Course content why choose us */
:root {
  --gk-wcu-primary: #ff7a00;
  --gk-wcu-secondary: #ffb300;
  --gk-wcu-dark: #3d0c02;
  --gk-wcu-light-text: #5a1b08;
  --gk-wcu-bg: #fdfbf9;
  --gk-wcu-white: #ffffff;
}

.gk-wcu-section {
  padding: 65px 0;
  background-color: var(--gk-wcu-bg);
  position: relative;
  overflow-x: hidden;
  /* Prevents horizontal scroll */
  overflow-y: clip;
  font-family: inherit;
  color: var(--gk-wcu-dark);
  z-index: 1;
}

/* --- Animated Background FX (Pointer-events none is crucial for scrolling) --- */
.gk-wcu-bg-element {
  position: absolute;
  z-index: -1;
  pointer-events: none;
  /* Allows user to scroll through background elements */
}

.gk-wcu-wave {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image:
    radial-gradient(circle at 10% 20%, rgba(255, 122, 0, 0.05) 0%, transparent 40%),
    radial-gradient(circle at 90% 80%, rgba(61, 12, 2, 0.06) 0%, transparent 50%);
  animation: gk-wcu-breathe 10s infinite alternate ease-in-out;
}

.gk-wcu-grid-lines {
  top: -50%;
  left: -50%;
  width: 200%;
  height: 200%;
  background-image:
    linear-gradient(rgba(255, 122, 0, 0.03) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 122, 0, 0.03) 1px, transparent 1px);
  background-size: 60px 60px;
  transform: rotate(15deg);
  animation: gk-wcu-slide-grid 40s linear infinite;
}

/* --- Left Content Area --- */
.gk-wcu-text-wrap {
  position: relative;
  z-index: 2;
  padding-right: 20px;
}

.gk-wcu-badge {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 8px 24px;
  background: linear-gradient(135deg, rgba(255, 122, 0, 0.1), rgba(255, 179, 0, 0.1));
  color: var(--gk-wcu-primary);
  border-radius: 50px;
  font-weight: 800;
  text-transform: uppercase;
  font-size: 14px;
  letter-spacing: 2px;
  border: 1px solid rgba(255, 122, 0, 0.3);
  margin-bottom: 25px;
  box-shadow: 0 5px 15px rgba(255, 122, 0, 0.1);
  position: relative;
}

.gk-wcu-badge-dot {
  width: 8px;
  height: 8px;
  background: var(--gk-wcu-primary);
  border-radius: 50%;
  box-shadow: 0 0 8px var(--gk-wcu-primary);
  animation: gk-wcu-blink 1.5s infinite;
}

.gk-wcu-title {
  font-size: clamp(38px, 4vw, 55px);
  font-weight: 900;
  line-height: 1.15;
  margin-bottom: 20px;
  color: var(--gk-wcu-dark);
  letter-spacing: -1px;
}

.gk-wcu-title span {
  background: linear-gradient(135deg, var(--gk-wcu-primary), var(--gk-wcu-secondary), var(--gk-wcu-dark));
  background-size: 200% auto;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  animation: gk-wcu-shine-text 4s linear infinite;
}

.gk-wcu-desc {
  font-size: 16px;
  line-height: 1.8;
  color: var(--gk-wcu-light-text);
  margin-bottom: 35px;
}

/* --- NEW: 3D Glowing Core (Replaces simple Diamond) --- */
.gk-wcu-3d-core {
  position: relative;
  width: 160px;
  height: 160px;
  margin-top: 20px;
  perspective: 1000px;
  /* Hide on mobile to save space and prevent scroll overlap */
}

.gk-wcu-core-inner {
  width: 100%;
  height: 100%;
  position: relative;
  transform-style: preserve-3d;
  animation: gk-wcu-float-core 6s ease-in-out infinite;
}

.gk-wcu-ring {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  border-radius: 50%;
  border: 3px solid transparent;
}

.gk-wcu-ring-1 {
  border-top-color: var(--gk-wcu-primary);
  border-bottom-color: var(--gk-wcu-primary);
  animation: gk-wcu-spin-axis-1 4s linear infinite;
}

.gk-wcu-ring-2 {
  border-left-color: var(--gk-wcu-secondary);
  border-right-color: var(--gk-wcu-secondary);
  animation: gk-wcu-spin-axis-2 5s linear infinite;
}

.gk-wcu-core-ball {
  position: absolute;
  top: 25%;
  left: 25%;
  width: 50%;
  height: 50%;
  background: radial-gradient(circle at 30% 30%, var(--gk-wcu-secondary), var(--gk-wcu-primary));
  border-radius: 50%;
  box-shadow: 0 0 30px rgba(255, 122, 0, 0.6);
  animation: gk-wcu-pulse-ball 3s infinite alternate;
}

/* --- Right Content Area (Staggered Cards) --- */
.gk-wcu-cards-wrapper {
  position: relative;
  z-index: 2;
  perspective: 1200px;
  /* Perspective applied locally to prevent full page lock */
}

/* Staggered layout for desktop ONLY */
@media (min-width: 992px) {
  .gk-wcu-stagger-col {
    margin-top: 30px;
  }
}

.gk-wcu-card {
  background: rgba(255, 255, 255, 0.85);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border-radius: 24px;
  padding: 28px 25px;
  border: 1px solid rgba(255, 255, 255, 1);
  /* Physical 3D Box Shadow */
  box-shadow:
    0 15px 35px rgba(61, 12, 2, 0.05),
    inset 0 -4px 0 rgba(61, 12, 2, 0.03);
  transition: all 0.5s cubic-bezier(0.23, 1, 0.32, 1);
  position: relative;
  height: 100%;
  transform-style: preserve-3d;
  cursor: default;
}

/* Glowing Border Sweep */
.gk-wcu-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 24px;
  padding: 2px;
  background: linear-gradient(135deg, transparent, var(--gk-wcu-primary), transparent);
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  opacity: 0;
  transition: opacity 0.5s ease;
}

.gk-wcu-card:hover {
  transform: translateY(-12px) rotateX(4deg) rotateY(-2deg);
  box-shadow:
    -15px 30px 50px rgba(255, 122, 0, 0.12),
    inset 0 -4px 0 rgba(255, 122, 0, 0.1);
  background: #ffffff;
}

.gk-wcu-card:hover::before {
  opacity: 1;
}

/* --- NEW 3D Isometric Icon Box --- */
.gk-wcu-icon-box {
  width: 75px;
  height: 75px;
  border-radius: 20px;
  background: linear-gradient(135deg, #fffaf5, #ffffff);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 25px;
  /* 3D Pedestal look */
  box-shadow:
    6px 6px 15px rgba(61, 12, 2, 0.06),
    -6px -6px 15px rgba(255, 255, 255, 1),
    inset 2px 2px 5px rgba(255, 122, 0, 0.08);
  transform: translateZ(20px);
  transition: transform 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

.gk-wcu-card:hover .gk-wcu-icon-box {
  transform: translateZ(40px) scale(1.1);
  box-shadow:
    10px 10px 25px rgba(255, 122, 0, 0.2),
    inset 2px 2px 5px rgba(255, 255, 255, 1);
}

/* 3D SVG Styling */
.gk-wcu-icon-box svg {
  width: 45px;
  height: 45px;
  overflow: visible;
  filter: drop-shadow(0px 8px 6px rgba(61, 12, 2, 0.15));
  transition: transform 0.5s cubic-bezier(0.68, -0.55, 0.265, 1.55);
  transform-origin: center;
}

.gk-wcu-card:hover .gk-wcu-icon-box svg {
  transform: translateY(-8px) scale(1.05);
  /* Bouncy Float */
  animation: gk-wcu-icon-bounce 2s infinite ease-in-out 0.5s;
}

.gk-wcu-card-title {
  font-size: 22px;
  font-weight: 800;
  color: var(--gk-wcu-dark);
  margin-bottom: 10px;
  transition: color 0.3s ease;
}

.gk-wcu-card:hover .gk-wcu-card-title {
  color: var(--gk-wcu-primary);
}

.gk-wcu-card-desc {
  font-size: 12px;
  text-align: justify;
  font-family: "Unbounded", sans-serif !important;
  color: var(--gk-wcu-light-text);
  line-height: 1.7;
  margin: 0;
  opacity: 0.9;
}

/* --- Animations --- */
@keyframes gk-wcu-breathe {
  0% {
    opacity: 0.6;
  }

  100% {
    opacity: 1;
  }
}

@keyframes gk-wcu-slide-grid {
  0% {
    transform: translateY(0) rotate(15deg);
  }

  100% {
    transform: translateY(-50px) rotate(15deg);
  }
}

@keyframes gk-wcu-blink {

  0%,
  100% {
    opacity: 1;
    transform: scale(1);
  }

  50% {
    opacity: 0.4;
    transform: scale(0.8);
  }
}

@keyframes gk-wcu-shine-text {
  to {
    background-position: 200% center;
  }
}

/* 3D Core Animations */
@keyframes gk-wcu-float-core {

  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-15px);
  }
}

@keyframes gk-wcu-spin-axis-1 {
  0% {
    transform: rotateX(0deg) rotateY(0deg);
  }

  100% {
    transform: rotateX(360deg) rotateY(360deg);
  }
}

@keyframes gk-wcu-spin-axis-2 {
  0% {
    transform: rotateX(90deg) rotateY(0deg);
  }

  100% {
    transform: rotateX(450deg) rotateY(360deg);
  }
}

@keyframes gk-wcu-pulse-ball {
  0% {
    transform: scale(0.9);
    opacity: 0.8;
  }

  100% {
    transform: scale(1.1);
    opacity: 1;
  }
}

@keyframes gk-wcu-icon-bounce {

  0%,
  100% {
    transform: translateY(-8px) scale(1.05);
  }

  50% {
    transform: translateY(-2px) scale(1.05);
  }
}

/* --- Perfect Responsive Adjustments --- */
@media (max-width: 991px) {
  .gk-wcu-section {
    padding: 80px 0;
  }

  .gk-wcu-title {
    font-size: 34px;
  }

  /* Turn off stagger on tablet to prevent clipping */
  .gk-wcu-stagger-col {
    /* margin-top: 0; */
  }

  .gk-wcu-3d-core {
    display: none;
    /* Hide complex 3D on smaller screens for cleaner view */
  }

  .gk-wcu-cards-wrapper {
    margin-top: 50px;
    perspective: none;
    /* Flatten perspective to fix scroll bugs */
  }

  .gk-wcu-card:hover {
    transform: translateY(-8px);
    /* Less dramatic hover on mobile */
  }
}

@media (max-width: 767px) {
  .gk-wcu-section {
    padding: 60px 15px;
  }

  .gk-wcu-card {
    margin-bottom: 0px;
    padding: 25px;
  }

  .gk-wcu-icon-box {
    width: 65px;
    height: 65px;
    margin-bottom: 20px;
  }

  .gk-wcu-icon-box svg {
    width: 35px;
    height: 35px;
  }

  .gk-wcu-card-title {
    font-size: 20px;
  }
}

/* Content details page */
:root {
  --gk-cd-primary: #ff7a00;
  --gk-cd-secondary: #ffb300;
  --gk-cd-dark: #3d0c02;
  --gk-cd-text-light: #5a1b08;
  --gk-cd-bg: #fffaf5;
  --gk-cd-white: #ffffff;
}

.gk-cd-section {
  padding: 80px 0 75px;
  background-color: var(--gk-cd-bg);
  position: relative;
  /* FIX 1: Removed overflow: clip; which was breaking position: sticky */
  font-family: inherit;
  color: var(--gk-cd-dark);
  z-index: 1;
}

/* Dynamic Background Grid & Orbs */
.gk-cd-grid-pattern {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  /* Changed to cover entire section properly */
  background-image:
    linear-gradient(rgba(255, 122, 0, 0.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 122, 0, 0.05) 1px, transparent 1px);
  background-size: 40px 40px;
  z-index: -2;
  opacity: 0.8;
  animation: gk-cd-bg-pan 30s linear infinite;
}

.gk-cd-bg-orb {
  position: absolute;
  border-radius: 50%;
  filter: blur(60px);
  opacity: 0.5;
  z-index: -1;
  animation: gk-cd-float-orb 15s infinite alternate ease-in-out;
}

.gk-cd-orb-1 {
  width: 500px;
  height: 500px;
  background: radial-gradient(circle, rgba(255, 122, 0, 0.2) 0%, transparent 70%);
  top: -100px;
  left: -100px;
}

.gk-cd-orb-2 {
  width: 600px;
  height: 600px;
  background: radial-gradient(circle, rgba(255, 179, 0, 0.15) 0%, transparent 70%);
  bottom: -200px;
  right: -200px;
  animation-delay: -5s;
}

.gk-cd-header-wrap {
  text-align: center;
  max-width: 1300px;
  margin: 0 auto 70px;
  position: relative;
  z-index: 5;
  /* Premium Glass Panel */
  background: rgba(255, 255, 255, 0.6);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border: 1px solid rgba(255, 255, 255, 0.8);
  border-radius: 30px;
  padding: 30px 30px;
  box-shadow:
    0 30px 60px rgba(61, 12, 2, 0.05),
    inset 0 0 0 1px rgba(255, 122, 0, 0.1);
  transform-style: preserve-3d;
}

.gk-cd-badge {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: linear-gradient(135deg, var(--gk-cd-primary), var(--gk-cd-secondary));
  color: #fff;
  padding: 8px 24px;
  border-radius: 50px;
  font-size: 14px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 2px;
  margin-bottom: 25px;
  box-shadow: 0 10px 20px rgba(255, 122, 0, 0.3);
  border: 2px solid #fff;
  animation: gk-cd-pulse-badge 2s infinite;
}

.gk-cd-title {
  font-size: clamp(38px, 4vw, 55px);
  font-weight: 900;
  line-height: 1.15;
  margin-bottom: 10px;
  /* Liquid 3D Gradient Text */
  background: linear-gradient(to right, var(--gk-cd-primary), var(--gk-cd-dark), var(--gk-cd-secondary), var(--gk-cd-primary));
  background-size: 300% auto;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  animation: gk-cd-shine-text 6s linear infinite;
  filter: drop-shadow(0 4px 6px rgba(255, 122, 0, 0.1));
  letter-spacing: -1px;
}

.gk-cd-desc {
  font-size: 16px;
  line-height: 1.8;
  color: var(--gk-cd-text-light);
  margin: 0 auto 25px;
  max-width: 1100px;
  opacity: 0.9;
  font-family: "Unbounded", sans-serif !important;
}

.gk-cd-stats-row {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 25px;
}

.gk-cd-stat-pill {
  background: linear-gradient(145deg, #ffffff, #f9f5f0);
  border: 1px solid rgba(255, 122, 0, 0.2);
  padding: 15px 30px;
  border-radius: 20px;
  display: flex;
  align-items: center;
  gap: 20px;
  /* Physical 3D Button look */
  box-shadow:
    0 8px 0 rgba(255, 122, 0, 0.15),
    0 15px 25px rgba(61, 12, 2, 0.05),
    inset 0 -2px 5px rgba(0, 0, 0, 0.02);
  transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  cursor: default;
}

.gk-cd-stat-pill:hover {
  transform: translateY(5px);
  box-shadow:
    0 3px 0 rgba(255, 122, 0, 0.2),
    0 5px 15px rgba(61, 12, 2, 0.08),
    inset 0 2px 5px rgba(0, 0, 0, 0.05);
  background: linear-gradient(145deg, #fff, #fffaf5);
  border-color: var(--gk-cd-primary);
}

.gk-cd-stat-icon-wrap {
  width: 55px;
  height: 55px;
  flex-shrink: 0;
  border-radius: 15px;
  background: linear-gradient(135deg, var(--gk-cd-primary), var(--gk-cd-secondary));
  box-shadow:
    inset 2px 2px 5px rgba(255, 255, 255, 0.4),
    inset -2px -2px 5px rgba(0, 0, 0, 0.2),
    0 10px 15px rgba(255, 122, 0, 0.3);
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}

/* New highly detailed 3D SVGs */
.gk-cd-stat-icon-wrap svg {
  width: 32px;
  height: 32px;
  filter: drop-shadow(2px 4px 4px rgba(61, 12, 2, 0.4));
  animation: gk-cd-float-svg 4s ease-in-out infinite;
}

.gk-cd-stat-pill:nth-child(2) svg {
  animation-delay: -1s;
}

.gk-cd-stat-pill:nth-child(3) svg {
  animation-delay: -2s;
}

.gk-cd-stat-text {
  font-size: 18px;
  font-weight: 800;
  color: var(--gk-cd-dark);
  margin: 0;
  letter-spacing: 0.5px;
  line-height: 1.2;
  font-family: "Unbounded", sans-serif !important;
}

.gk-cd-stat-text span {
  display: block;
  font-size: 13px;
  font-weight: 600;
  color: var(--gk-cd-primary);
  text-transform: uppercase;
  letter-spacing: 1px;
  margin-top: 3px;
}


.gk-cd-sticky-wrapper {
  position: sticky;
  top: 120px;
  height: max-content;
  z-index: 5;
  perspective: 1200px;
}

.gk-cd-curriculum-wrap {
  position: relative;
  padding-left: 60px;
  height: 80vh;
  overflow-y: scroll;
  scroll-behavior: smooth;
  scrollbar-width: none;
}

/* Glowing Vertical Timeline Track */
.gk-cd-curriculum-wrap::before {
  content: '';
  position: absolute;
  top: 20px;
  bottom: 20px;
  left: 30px;
  width: 4px;
  background: rgba(61, 12, 2, 0.05);
  border-radius: 4px;
}

/* Animated flowing light on timeline */
.gk-cd-curriculum-wrap::after {
  content: '';
  position: absolute;
  top: 0;
  left: 30px;
  width: 4px;
  height: 100px;
  background: linear-gradient(to bottom, transparent, var(--gk-cd-primary), transparent);
  border-radius: 4px;
  animation: gk-cd-flow-light 4s linear infinite;
}

.gk-cd-module {
  margin-bottom: 25px;
  background: #fff;
  border-radius: 20px;
  border: 1px solid rgba(61, 12, 2, 0.05);
  box-shadow: 0 10px 20px rgba(61, 12, 2, 0.03);
  transition: all 0.4s cubic-bezier(0.23, 1, 0.32, 1);
  position: relative;
  /* overflow: hidden; Removed so that timeline nodes can pop out perfectly */
}

/* The Custom Timeline Node with Icon */
.gk-cd-timeline-node {
  position: absolute;
  top: 30px;
  left: -56px;
  /* Sits exactly on the vertical timeline */
  width: 36px;
  height: 36px;
  background: var(--gk-cd-bg);
  border: 3px solid rgba(255, 122, 0, 0.3);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.4s ease;
  z-index: 2;
}

.gk-cd-timeline-node svg {
  width: 16px;
  height: 16px;
  fill: var(--gk-cd-text-light);
  transition: all 0.4s ease;
}

/* Connecting Horizontal Line (Node to Card) */
.gk-cd-timeline-connector {
  position: absolute;
  top: 47px;
  left: -20px;
  width: 20px;
  height: 2px;
  background: repeating-linear-gradient(90deg, rgba(255, 122, 0, 0.2) 0, rgba(255, 122, 0, 0.2) 4px, transparent 4px, transparent 8px);
  transition: all 0.4s ease;
  z-index: 1;
}

.gk-cd-module:hover {
  box-shadow: 0 15px 30px rgba(255, 122, 0, 0.08);
  border-color: rgba(255, 122, 0, 0.2);
  transform: translateX(5px);
}

/* Active Module State */
.gk-cd-module.active {
  border-left: 4px solid var(--gk-cd-primary);
  box-shadow: 0 20px 40px rgba(255, 122, 0, 0.1);
  transform: translateX(10px);
  border-radius: 20px;
}

.gk-cd-module.active .gk-cd-timeline-node {
  background: linear-gradient(135deg, var(--gk-cd-primary), var(--gk-cd-secondary));
  border-color: #fff;
  box-shadow: 0 0 15px rgba(255, 122, 0, 0.4);
  transform: scale(1.2);
}

.gk-cd-module.active .gk-cd-timeline-node svg {
  fill: #fff;
  filter: drop-shadow(1px 2px 2px rgba(0, 0, 0, 0.2));
}

.gk-cd-module.active .gk-cd-timeline-connector {
  background: var(--gk-cd-primary);
  /* Turns solid when active */
  box-shadow: 0 0 10px rgba(255, 122, 0, 0.4);
  height: 3px;
}

.gk-cd-mod-header {
  padding: 20px 25px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  cursor: pointer;
  user-select: none;
  background: transparent;
  transition: background 0.3s ease;
  position: relative;
  z-index: 2;
}

.gk-cd-module.active .gk-cd-mod-header {
  background: linear-gradient(90deg, rgba(255, 122, 0, 0.03), transparent);
  border-bottom: 1px solid rgba(255, 122, 0, 0.05);
}

.gk-cd-mod-title-wrap {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.gk-cd-mod-title {
  font-size: 22px;
  font-weight: 800;
  color: var(--gk-cd-dark);
  margin: 0;
  transition: color 0.3s;
}

.gk-cd-module.active .gk-cd-mod-title {
  color: var(--gk-cd-primary);
}

.gk-cd-mod-meta {
  font-size: 10px;
  color: var(--gk-cd-text-light);
  font-weight: 600;
  opacity: 0.8;
  display: flex;
  align-items: center;
  gap: 20px;
}

.gk-cd-mod-meta span {
  display: flex;
  align-items: center;
  gap: 6px;
  background: rgba(61, 12, 2, 0.05);
  padding: 4px 10px;
  border-radius: 20px;
}

.gk-cd-module.active .gk-cd-mod-meta span {
  background: rgba(255, 122, 0, 0.1);
  color: var(--gk-cd-primary);
}

/* 3D Animated Cross/Minus Toggle */
.gk-cd-toggle-icon {
  width: 45px;
  height: 45px;
  border-radius: 12px;
  background: var(--gk-cd-bg);
  border: 1px solid rgba(61, 12, 2, 0.08);
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  transition: all 0.5s cubic-bezier(0.68, -0.55, 0.265, 1.55);
  flex-shrink: 0;
  box-shadow: inset 0 -3px 5px rgba(0, 0, 0, 0.03);
}

.gk-cd-toggle-icon::before,
.gk-cd-toggle-icon::after {
  content: '';
  position: absolute;
  background: var(--gk-cd-dark);
  border-radius: 2px;
  transition: all 0.4s ease;
}

.gk-cd-toggle-icon::before {
  width: 16px;
  height: 2.5px;
}

.gk-cd-toggle-icon::after {
  width: 2.5px;
  height: 16px;
}

.gk-cd-module.active .gk-cd-toggle-icon {
  background: linear-gradient(135deg, var(--gk-cd-primary), var(--gk-cd-secondary));
  transform: rotate(180deg);
  border-color: transparent;
  box-shadow: 0 8px 15px rgba(255, 122, 0, 0.3);
}

.gk-cd-module.active .gk-cd-toggle-icon::before,
.gk-cd-module.active .gk-cd-toggle-icon::after {
  background: #fff;
}

.gk-cd-module.active .gk-cd-toggle-icon::after {
  transform: rotate(90deg);
  height: 16px;
}


.gk-cd-mod-body {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.5s cubic-bezier(0.23, 1, 0.32, 1), opacity 0.4s ease;
  opacity: 0;
}

.gk-cd-module.active .gk-cd-mod-body {
  opacity: 1;
}

.gk-cd-topic-list {
  list-style: none;
  padding: 10px 25px 25px;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 12px;
}

.gk-cd-topic-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 15px;
  background: var(--gk-cd-bg);
  border-radius: 12px;
  border: 1px solid transparent;
  border-left: 3px solid rgba(61, 12, 2, 0.1);
  transition: all 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  text-decoration: none;
  color: var(--gk-cd-text-light);
  position: relative;
  overflow: hidden;
}

.gk-cd-topic-item:hover {
  background: #fff;
  border-color: rgba(255, 122, 0, 0.1);
  border-left-color: var(--gk-cd-primary);
  transform: translateX(10px);
  box-shadow: 0 5px 15px rgba(255, 122, 0, 0.08);
}

.gk-cd-topic-left {
  display: flex;
  align-items: center;
  gap: 15px;
  font-size: 16px;
  font-weight: 700;
  position: relative;
  z-index: 2;
}

.gk-cd-play-btn {
  width: 35px;
  height: 35px;
  border-radius: 50%;
  background: #fff;
  border: 1px solid rgba(255, 122, 0, 0.2);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--gk-cd-primary);
  transition: all 0.4s ease;
  position: relative;
}

.gk-cd-play-btn::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 50%;
  border: 2px solid var(--gk-cd-primary);
  opacity: 0;
  transform: scale(1);
  transition: all 0.4s;
}

.gk-cd-topic-item:hover .gk-cd-play-btn {
  background: linear-gradient(135deg, var(--gk-cd-primary), var(--gk-cd-secondary));
  color: #fff;
  border-color: transparent;
  box-shadow: 0 5px 15px rgba(255, 122, 0, 0.4);
}

.gk-cd-topic-item:hover .gk-cd-play-btn::before {
  animation: gk-cd-pulse-play 1.5s infinite;
}

.gk-cd-topic-play-icon {
  width: 14px;
  height: 14px;
  fill: currentColor;
  margin-left: 3px;
  transition: transform 0.3s;
}

.gk-cd-topic-item:hover .gk-cd-topic-play-icon {
  transform: scale(1.1);
}

.gk-cd-topic-duration {
  font-size: 13px;
  font-weight: 800;
  color: var(--gk-cd-text-light);
  background: rgba(61, 12, 2, 0.05);
  padding: 6px 12px;
  border-radius: 20px;
  transition: all 0.3s;
  position: relative;
  z-index: 2;
}

.gk-cd-topic-item:hover .gk-cd-topic-duration {
  background: rgba(255, 122, 0, 0.1);
  color: var(--gk-cd-primary);
}

/* STICKY COLUMN FIX - THE ULTIMATE SOLUTION */
.gk-cd-sticky-col {
  position: relative;
  /* Flex layout zaroori hai taki andar ka element top par align ho aur stretch na ho */
  display: flex;
  align-items: flex-start;
}

.gk-cd-sticky-wrapper {
  position: sticky;
  top: 150px;
  /* Window ke top se distance */
  width: 100%;
  z-index: 10;
  /* Removed perspective from here to prevent sticky breakdown */
}

.gk-cd-img-frame {
  position: relative;
  padding: 15px;
  background: linear-gradient(145deg, #ffffff, #f0eae1);
  border-radius: 24px;
  box-shadow:
    0 30px 60px rgba(61, 12, 2, 0.15),
    inset 0 0 0 1px rgba(255, 255, 255, 1);
  /* Perspective applied directly to the frame instead of wrapper */
  perspective: 1200px;
  transform-style: preserve-3d;
  transition: transform 0.6s cubic-bezier(0.23, 1, 0.32, 1);
}

/* Rotating glow behind the frame */
.gk-cd-img-frame::before {
  content: '';
  position: absolute;
  top: -5px;
  left: -5px;
  right: -5px;
  bottom: -5px;
  background: conic-gradient(from 0deg, transparent, var(--gk-cd-primary), transparent, var(--gk-cd-secondary), transparent);
  border-radius: 28px;
  z-index: -1;
  filter: blur(15px);
  opacity: 0.5;
  animation: gk-cd-spin-glow 5s linear infinite;
}

.gk-cd-sticky-wrapper:hover .gk-cd-img-frame {
  transform: rotateY(-5deg) rotateX(5deg) translateY(-10px);
  animation-play-state: paused;
}

.gk-cd-img-inner {
  position: relative;
  border-radius: 16px;
  overflow: hidden;
  transform: translateZ(30px);
  /* Pop out effect */
  box-shadow: 0 10px 20px rgba(0, 0, 0, 0.1);
  z-index: 1;
  /* Keep below badge */
}

.gk-cd-img-inner img {
  width: 100%;
  height: auto;
  display: block;
  transition: transform 0.6s ease;
}

.gk-cd-sticky-wrapper:hover .gk-cd-img-inner img {
  transform: scale(1.05);
}

/* Holographic sweep on hover */
.gk-cd-img-inner::after {
  content: '';
  position: absolute;
  top: 0;
  left: -150%;
  width: 50%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.6), transparent);
  transform: skewX(-25deg);
  z-index: 5;
}

.gk-cd-sticky-wrapper:hover .gk-cd-img-inner::after {
  animation: gk-cd-img-sweep 1s ease forwards;
}

/* FIX 2: Text Drowning Issue (Badge Z-index and Positioning) */
.gk-cd-img-badge {
  position: absolute;
  bottom: -40px;
  left: 25%;
  /* Removed translateZ to prevent clipping issues, added explicit z-index */
  transform: translateX(-50%);
  z-index: 20;
  background: linear-gradient(135deg, var(--gk-cd-dark), #1a0501);
  color: #fff;
  padding: 12px 30px;
  border-radius: 50px;
  font-weight: 800;
  font-size: 15px;
  text-transform: uppercase;
  letter-spacing: 2px;
  box-shadow:
    0 15px 30px rgba(61, 12, 2, 0.4),
    inset 0 0 0 2px rgba(255, 122, 0, 0.4);
  white-space: nowrap;
  display: flex;
  align-items: center;
  gap: 10px;
  animation: gk-cd-pulse-badge 3s infinite alternate;
}

.gk-cd-img-badge svg {
  width: 20px;
  height: 20px;
  fill: var(--gk-cd-primary);
}

@keyframes gk-cd-shine-text {
  to {
    background-position: 300% center;
  }
}

@keyframes gk-cd-bg-pan {
  100% {
    background-position: 100% 100%;
  }
}

@keyframes gk-cd-float-orb {

  0%,
  100% {
    transform: translate(0, 0);
  }

  50% {
    transform: translate(30px, -30px);
  }
}

@keyframes gk-cd-pulse-badge {

  0%,
  100% {
    transform: scale(1);
    box-shadow: 0 10px 20px rgba(255, 122, 0, 0.3);
  }

  50% {
    transform: scale(1.05);
    box-shadow: 0 15px 25px rgba(255, 122, 0, 0.5);
  }
}

@keyframes gk-cd-float-svg {

  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-5px);
  }
}

@keyframes gk-cd-flow-light {
  0% {
    top: -100px;
    opacity: 0;
  }

  20% {
    opacity: 1;
  }

  80% {
    opacity: 1;
  }

  100% {
    top: 100%;
    opacity: 0;
  }
}

@keyframes gk-cd-pulse-play {
  0% {
    transform: scale(1);
    opacity: 0.8;
  }

  100% {
    transform: scale(1.6);
    opacity: 0;
  }
}

@keyframes gk-cd-float-card {

  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-15px);
  }
}

@keyframes gk-cd-spin-glow {
  100% {
    transform: rotate(360deg);
  }
}

@keyframes gk-cd-img-sweep {
  100% {
    left: 200%;
  }
}

/* Responsive Settings */
@media (max-width: 991px) {
  .gk-cd-section {
    padding: 80px 15px;
  }

  .gk-cd-header-wrap {
    padding: 40px 20px;
    border-radius: 20px;
  }

  .gk-cd-title {
    font-size: 32px;
  }

  /* Swap order: Image on top, Curriculum below */
  .gk-cd-row {
    flex-direction: column-reverse;
  }

  .gk-cd-sticky-wrapper {
    position: relative;
    /* Disable sticky */
    top: 0;
    margin-bottom: 60px;
  }

  .gk-cd-img-frame {
    transform: none;
  }

  .gk-cd-sticky-wrapper:hover .gk-cd-img-frame {
    transform: none;
  }

  .gk-cd-img-badge {
    transform: translateX(-50%);
  }

  /* Responsive adjustments for the Timeline Nodes */
  .gk-cd-curriculum-wrap {
    padding-left: 50px;
  }

  .gk-cd-curriculum-wrap::before {
    left: 20px;
  }

  .gk-cd-curriculum-wrap::after {
    left: 20px;
  }

  .gk-cd-timeline-node {
    width: 30px;
    height: 30px;
    left: -43px;
    top: 25px;
  }

  .gk-cd-timeline-node svg {
    width: 14px;
    height: 14px;
  }

  .gk-cd-timeline-connector {
    left: -13px;
    width: 13px;
    top: 39px;
  }

  .gk-cd-mod-header {
    padding: 20px;
  }

  .gk-cd-mod-title {
    font-size: 18px;
  }

  .gk-cd-topic-item {
    padding: 12px 15px;
  }

  .gk-cd-topic-left {
    font-size: 14px;
  }
}

/* ABOUT US BREADCRUMB  */

:root {
  --gk-ah-primary: #ff7a00;
  --gk-ah-secondary: #ffb300;
  --gk-ah-dark: #1a0400;
  /* Deepest Maroon/Black */
  --gk-ah-maroon: #3d0c02;
  --gk-ah-text-muted: #f4eae6;
  --gk-ah-white: #ffffff;
}

/* */
.gk-ah-section {
  position: relative;
  /* 180px top padding to accommodate navbar overlap */
  padding: 30px 0 45px 0;
  background-color: var(--gk-ah-dark);
  background: linear-gradient(135deg, var(--gk-ah-dark) 0%, #2a0802 50%, var(--gk-ah-maroon) 100%);
  overflow: hidden;
  font-family: inherit;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  z-index: 1;
  margin-top: 71px;
}

/* */
/* Perspective grid overlay */
.gk-ah-grid {
  position: absolute;
  top: -50%;
  left: -50%;
  width: 200%;
  height: 200%;
  background-image:
    linear-gradient(rgba(255, 122, 0, 0.05) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 122, 0, 0.05) 1px, transparent 1px);
  background-size: 60px 60px;
  transform: rotateX(60deg) translateY(-100px) translateZ(-200px);
  animation: gk-ah-grid-move 20s linear infinite;
  z-index: -2;
  perspective: 1000px;
  transform-style: preserve-3d;
}

/* Glowing Orbs */
.gk-ah-orb {
  position: absolute;
  border-radius: 50%;
  filter: blur(80px);
  z-index: -1;
  opacity: 0.5;
  animation: gk-ah-float 15s infinite alternate ease-in-out;
}

.gk-ah-orb-1 {
  width: 500px;
  height: 500px;
  background: radial-gradient(circle, var(--gk-ah-primary), transparent 70%);
  top: -200px;
  left: -150px;
}

.gk-ah-orb-2 {
  width: 600px;
  height: 600px;
  background: radial-gradient(circle, var(--gk-ah-secondary), transparent 70%);
  bottom: -250px;
  right: -150px;
  animation-delay: -5s;
}

/* */
.gk-ah-content {
  position: relative;
  z-index: 10;
  max-width: 1100px;
  margin: 0 auto;
}

/* 3D Frosted Glass Breadcrumb Pill */
.gk-ah-breadcrumb-pill {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  padding: 10px 25px 10px 15px;
  border-radius: 50px;
  margin-bottom: 20px;
  box-shadow:
    0 20px 40px rgba(0, 0, 0, 0.3),
    inset 0 1px 1px rgba(255, 255, 255, 0.2),
    inset 0 0 20px rgba(255, 122, 0, 0.05);
  animation: gk-ah-slide-down 1s cubic-bezier(0.23, 1, 0.32, 1) forwards;
  opacity: 0;
  transform: translateY(-30px);
}

/* */
.gk-ah-bc-link {
  display: flex;
  align-items: center;
  gap: 8px;
  color: rgba(255, 255, 255, 0.7);
  font-size: 15px;
  font-weight: 600;
  text-decoration: none;
  transition: all 0.3s ease;
}

.gk-ah-bc-link svg {
  width: 16px;
  height: 16px;
  fill: currentColor;
  transition: transform 0.3s ease;
}

.gk-ah-bc-link:hover {
  color: var(--gk-ah-white);
  text-shadow: 0 0 10px rgba(255, 255, 255, 0.5);
}

.gk-ah-bc-link:hover svg {
  transform: scale(1.1) translateY(-2px);
}

/* Active Page (About Us) */
.gk-ah-bc-active {
  color: var(--gk-ah-secondary);
  font-weight: 800;
  letter-spacing: 0.5px;
  pointer-events: none;
  display: flex;
  align-items: center;
  gap: 8px;
  text-shadow: 0 2px 10px rgba(255, 179, 0, 0.4);
}

.gk-ah-separator {
  color: rgba(255, 255, 255, 0.3);
  display: flex;
  align-items: center;
  animation: gk-ah-pulse-op 2s infinite;
}

.gk-ah-separator svg {
  width: 14px;
  height: 14px;
}

/* */
.gk-ah-title {
  font-size: clamp(40px, 6vw, 50px);
  font-weight: 900;
  line-height: 1.1;
  margin-bottom: 10px;
  color: var(--gk-ah-white);
  letter-spacing: -1px;
  animation: gk-ah-slide-up 1s cubic-bezier(0.23, 1, 0.32, 1) 0.2s forwards;
  opacity: 0;
  transform: translateY(30px);
  text-shadow: 0 10px 30px rgba(0, 0, 0, 0.5);
}

.gk-ah-title span {
  /* Metallic Orange/Gold Liquid Gradient */
  background: linear-gradient(to right, #fff, var(--gk-ah-secondary), var(--gk-ah-primary), #fff);
  background-size: 300% auto;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  animation: gk-ah-shine-text 5s linear infinite;
}

.gk-ah-desc {
  font-size: clamp(14px, 2vw, 13px);
  color: rgba(244, 234, 230, 0.8);
  line-height: 1.6;
  margin-bottom: 0;
  font-weight: 400;
  animation: gk-ah-slide-up 1s cubic-bezier(0.23, 1, 0.32, 1) 0.4s forwards;
  opacity: 0;
  transform: translateY(30px);
  font-family: "Unbounded", sans-serif !important;
}


/* */
/* Floating 3D Geometric Shapes */
.gk-ah-float-shape {
  position: absolute;
  z-index: 5;
  opacity: 0.6;
}

.gk-ah-shape-1 {
  top: 20%;
  left: 10%;
  animation: gk-ah-spin-3d 20s linear infinite;
}

.gk-ah-shape-2 {
  bottom: 15%;
  right: 10%;
  animation: gk-ah-spin-3d-reverse 25s linear infinite;
}

/* */
@keyframes gk-ah-grid-move {
  0% {
    transform: rotateX(60deg) translateY(0) translateZ(-200px);
  }

  100% {
    transform: rotateX(60deg) translateY(60px) translateZ(-200px);
  }
}

@keyframes gk-ah-float {

  0%,
  100% {
    transform: translate(0, 0);
  }

  50% {
    transform: translate(30px, -40px) scale(1.1);
  }
}

@keyframes gk-ah-slide-down {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes gk-ah-slide-up {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

@keyframes gk-ah-shine-text {
  to {
    background-position: 300% center;
  }
}

@keyframes gk-ah-pulse-op {

  0%,
  100% {
    opacity: 0.3;
    transform: scale(1);
  }

  50% {
    opacity: 0.8;
    transform: scale(1.1);
  }
}

@keyframes gk-ah-spin-3d {
  0% {
    transform: rotateX(0deg) rotateY(0deg) rotateZ(0deg) translateY(0);
  }

  50% {
    transform: rotateX(180deg) rotateY(180deg) rotateZ(90deg) translateY(-30px);
  }

  100% {
    transform: rotateX(360deg) rotateY(360deg) rotateZ(180deg) translateY(0);
  }
}

@keyframes gk-ah-spin-3d-reverse {
  0% {
    transform: rotateX(360deg) rotateY(360deg) rotateZ(180deg) translateY(0);
  }

  50% {
    transform: rotateX(180deg) rotateY(180deg) rotateZ(90deg) translateY(-40px);
  }

  100% {
    transform: rotateX(0deg) rotateY(0deg) rotateZ(0deg) translateY(0);
  }
}

/* Responsive Adjustments */
@media (max-width: 767px) {
  .gk-ah-section {
    padding: 140px 15px 80px 15px;
  }

  .gk-ah-breadcrumb-pill {
    padding: 8px 20px 8px 12px;
    margin-bottom: 25px;
  }

  .gk-ah-bc-link,
  .gk-ah-bc-active {
    font-size: 13px;
  }

  .gk-ah-float-shape {
    display: none;
  }

  /* Hide complex shapes on mobile for clean look */
}

/* about us page section */
/* --- Global & Background --- */
.gk-3d-section {
  padding: 55px 0;
  background: linear-gradient(-45deg, #fdfbf7, #ffffff, #fff5eb, #fafafa);
  background-size: 400% 400%;
  animation: gradientBG 15s ease infinite;
  min-height: 90vh;
  display: flex;
  align-items: center;
  position: relative;
  overflow: hidden;
}

@keyframes gradientBG {
  0% {
    background-position: 0% 50%;
  }

  50% {
    background-position: 100% 50%;
  }

  100% {
    background-position: 0% 50%;
  }
}

/* --- 3D Background Floating Orbs --- */
.gk-orb {
  position: absolute;
  border-radius: 50%;
  background: radial-gradient(circle at 30% 30%, #ff9d00, #ff6a00);
  box-shadow: 10px 10px 30px rgba(255, 106, 0, 0.3),
    inset -10px -10px 20px rgba(0, 0, 0, 0.2),
    inset 10px 10px 20px rgba(255, 255, 255, 0.6);
  z-index: 1;
}

.gk-orb-1 {
  width: 150px;
  height: 150px;
  top: 10%;
  left: 5%;
  animation: floatOrb 8s ease-in-out infinite;
}

.gk-orb-2 {
  width: 80px;
  height: 80px;
  /* Changed from Purple to GyanKamao Gold/Amber */
  background: radial-gradient(circle at 30% 30%, #ffd000, #ff9100);
  box-shadow: 10px 10px 30px rgba(255, 145, 0, 0.3),
    inset -10px -10px 20px rgba(0, 0, 0, 0.2),
    inset 10px 10px 20px rgba(255, 255, 255, 0.6);
  bottom: 20%;
  right: 45%;
  animation: floatOrb 6s ease-in-out infinite reverse;
}

.gk-orb-3 {
  width: 250px;
  height: 250px;
  background: radial-gradient(circle at 30% 30%, #ffffff, #f3f4f6);
  box-shadow: 10px 10px 30px rgba(0, 0, 0, 0.05),
    inset -10px -10px 20px rgba(0, 0, 0, 0.05),
    inset 10px 10px 20px rgba(255, 255, 255, 0.8);
  top: 40%;
  right: -5%;
  animation: floatOrb 12s ease-in-out infinite;
}

@keyframes floatOrb {
  0% {
    transform: translateY(0) rotate(0deg) scale(1);
  }

  33% {
    transform: translateY(-30px) rotate(10deg) scale(1.05);
  }

  66% {
    transform: translateY(15px) rotate(-10deg) scale(0.95);
  }

  100% {
    transform: translateY(0) rotate(0deg) scale(1);
  }
}

/* --- Typography --- */
.gk-badge-3d {
  display: inline-block;
  padding: 10px 25px;
  background: #ffffff;
  border-radius: 50px;
  font-weight: 700;
  color: #ff6a00;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-size: 0.85rem;
  /* Claymorphism Effect */
  box-shadow: 8px 8px 16px #e5e5e5,
    -8px -8px 16px #ffffff,
    inset 2px 2px 5px rgba(255, 255, 255, 0.5);
  margin-bottom: 30px;
  position: relative;
  z-index: 2;
  animation: subtleBounce 4s infinite ease-in-out;
}

@keyframes subtleBounce {

  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-8px);
  }
}

.gk-title-3d {
  font-size: clamp(2.8rem, 3.5vw, 4.2rem);
  font-weight: 900;
  color: #1a1a1a;
  /* Dark color from logo text */
  line-height: 1.15;
  position: relative;
  z-index: 2;
  text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.08);
}

.gk-text-shimmer {
  background: linear-gradient(90deg, #ff6a00, #ffb347, #ff6a00);
  background-size: 200% auto;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  animation: shine 3s linear infinite;
}

@keyframes shine {
  to {
    background-position: 200% center;
  }
}

.gk-desc-3d {
  font-size: 15px;
  color: #555555;
  line-height: 1.6;
  margin-top: 17px;
  margin-bottom: 20px;
  position: relative;
  text-align: justify;
  z-index: 2;
  font-family: "Unbounded", sans-serif !important;
}

/* --- 3D Buttons --- */
.gk-3d-section .gk-btn-3d {
  display: inline-flex;
  align-items: center;
  position: relative;
  z-index: 2;
  transition: all 0.2s ease;
  margin-top: 0;
  width: auto;
}

/* --- 3D Visuals & Image Composition --- */
.gk-3d-scene {
  perspective: 1200px;
  position: relative;
  width: 100%;
  height: 600px;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 2;
}

.gk-3d-wrapper {
  position: relative;
  width: 80%;
  height: 80%;
  transform-style: preserve-3d;
  animation: float3DBox 10s ease-in-out infinite;
}

@keyframes float3DBox {
  0% {
    transform: rotateY(-15deg) rotateX(10deg) translateY(0);
  }

  50% {
    transform: rotateY(-5deg) rotateX(5deg) translateY(-20px);
  }

  100% {
    transform: rotateY(-15deg) rotateX(10deg) translateY(0);
  }
}

.gk-main-img-3d {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 30px;
  box-shadow: 25px 25px 50px rgba(0, 0, 0, 0.15),
    -10px -10px 30px rgba(255, 255, 255, 0.9);
  border: 8px solid #ffffff;
  transform: translateZ(50px);
  /* Pushes image forward */
}

/* --- 3D Floating Cards (Claymorphism + 3D Icons) --- */
.gk-glass-3d-card {
  position: absolute;
  background: rgba(255, 255, 255, 0.95);
  backdrop-filter: blur(10px);
  border-radius: 20px;
  padding: 12px;
  display: flex;
  align-items: center;
  gap: 15px;
  /* Advanced 3D Box Shadow */
  box-shadow: 15px 15px 30px rgba(0, 0, 0, 0.08),
    -15px -15px 30px rgba(255, 255, 255, 1),
    inset 2px 2px 5px rgba(255, 255, 255, 1);
  border: 1px solid rgba(255, 255, 255, 0.5);
  transform-style: preserve-3d;
}

.gk-card-top-left {
  top: -5%;
  left: -15%;
  transform: translateZ(120px);
  /* Pops out significantly */
  animation: hoverCard1 6s infinite ease-in-out alternate;
}

.gk-card-bottom-right {
  bottom: -6%;
  right: -12%;
  transform: translateZ(100px);
  animation: hoverCard2 7s infinite ease-in-out alternate-reverse;
}

@keyframes hoverCard1 {
  0% {
    transform: translateZ(120px) translateY(0px) rotateZ(-2deg);
  }

  100% {
    transform: translateZ(120px) translateY(-20px) rotateZ(2deg);
  }
}

@keyframes hoverCard2 {
  0% {
    transform: translateZ(100px) translateY(0px) rotateZ(2deg);
  }

  100% {
    transform: translateZ(100px) translateY(20px) rotateZ(-2deg);
  }
}

/* --- Real 3D Look CSS Icons --- */
.gk-icon-3d-wrap {
  width: 60px;
  height: 60px;
  border-radius: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.8rem;
  position: relative;
  transform-style: preserve-3d;
}

.gk-icon-orange {
  background: linear-gradient(135deg, #ff8c00, #ff6a00);
  box-shadow: 5px 5px 15px rgba(255, 106, 0, 0.4),
    inset 3px 3px 6px rgba(255, 255, 255, 0.4),
    inset -3px -3px 6px rgba(0, 0, 0, 0.2);
  color: white;
  /* 3D text shadow for the icon itself */
  text-shadow: 1px 1px 0 #cc5500, 2px 2px 0 #b34a00, 3px 3px 5px rgba(0, 0, 0, 0.3);
}

/* Changed from Purple to Gold/Amber to match brand */
.gk-icon-gold {
  background: linear-gradient(135deg, #ffc107, #ff9800);
  box-shadow: 5px 5px 15px rgba(255, 152, 0, 0.4),
    inset 3px 3px 6px rgba(255, 255, 255, 0.6),
    inset -3px -3px 6px rgba(0, 0, 0, 0.15);
  color: white;
  text-shadow: 1px 1px 0 #cc7a00, 2px 2px 0 #995c00, 3px 3px 5px rgba(0, 0, 0, 0.2);
}

.gk-card-text h4 {
  margin: 0;
  font-weight: 800;
  font-size: 1.4rem;
  color: #1a1a1a;
}

.gk-card-text p {
  margin: 0;
  font-size: 0.9rem;
  font-weight: 600;
  color: #64748b;
}

/* --- Continuous Dashed Circle Element --- */
.gk-dashed-circle {
  position: absolute;
  width: 120%;
  height: 120%;
  top: -10%;
  left: -10%;
  border: 2px dashed rgba(255, 106, 0, 0.3);
  border-radius: 50%;
  animation: spinCircle 20s linear infinite;
  z-index: -1;
  transform: translateZ(-50px);
}

@keyframes spinCircle {
  100% {
    transform: translateZ(-50px) rotate(360deg);
  }
}

/* --- Responsive Design --- */
@media (max-width: 991px) {
  .gk-3d-scene {
    height: 500px;
    margin-top: 50px;
  }

  .gk-card-top-left {
    left: -5%;
  }

  .gk-card-bottom-right {
    right: -5%;
  }

  .gk-title-3d {
    font-size: 2.5rem;
  }

  .gk-orb-3 {
    display: none;
  }
}

@media (max-width: 576px) {
  .gk-3d-section {
    padding: 80px 0;
  }

  .gk-3d-scene {
    height: 350px;
    perspective: none;
  }

  .gk-3d-wrapper {
    animation: none;
    transform: none !important;
    width: 90%;
  }

  .gk-main-img-3d {
    transform: none;
  }

  .gk-glass-3d-card {
    transform: none !important;
    padding: 12px;
  }

  .gk-card-top-left {
    top: -15%;
    left: 0;
    animation: subtleBounce 3s infinite alternate;
  }

  .gk-card-bottom-right {
    bottom: -10%;
    right: 0;
    animation: subtleBounce 4s infinite alternate-reverse;
  }

  .gk-icon-3d-wrap {
    width: 45px;
    height: 45px;
    font-size: 1.2rem;
  }

  .gk-title-3d {
    font-size: 2.2rem;
  }
}

/* ========================================================
           GyanKamao Features / Process Section (Premium Wave 3D)
        ======================================================== */

.gk-features-section {
  padding: 60px 0 50px;
  background-color: #fdfbf7;
  position: relative;
  overflow: hidden;
  z-index: 1;
}

.gk-features-header {
  margin-bottom: 35px;
}

/* --- Badges & Headings --- */
.gk-features-header .gk-badge-3d {
  display: inline-block;
  padding: 10px 25px;
  background: #ffffff;
  border-radius: 50px;
  font-weight: 700;
  color: #ff6a00;
  text-transform: uppercase;
  letter-spacing: 2px;
  font-size: 0.85rem;
  box-shadow: 8px 8px 16px #e5e5e5,
    -8px -8px 16px #ffffff,
    inset 2px 2px 5px rgba(255, 255, 255, 0.5);
  margin-bottom: 0px;
  position: relative;
  z-index: 2;
  animation: subtleBounce 4s infinite ease-in-out;
}

@keyframes subtleBounce {

  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-8px);
  }
}

.gk-3d-section .gk-title-3d {
  font-size: clamp(2.8rem, 3.5vw, 4.2rem);
  font-weight: 900;
  color: #1a1a1a;
  line-height: 1.15;
  position: relative;
  z-index: 2;
  text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.08);
}

.gk-text-shimmer {
  background: linear-gradient(90deg, #ff6a00, #ffb347, #ff6a00);
  background-size: 200% auto;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  animation: shine 3s linear infinite;
}

@keyframes shine {
  to {
    background-position: 200% center;
  }
}

.gk-features-header .gk-desc-3d {
  font-size: 1.15rem;
  color: #555555;
  line-height: 1.8;
  margin-top: 25px;
  margin-bottom: 0px;
  position: relative;
  z-index: 2;
}

/* --- SVG Animated Connecting Wave Line --- */
.gk-feat-timeline-wrapper {
  position: relative;
  width: 100%;
  padding: 20px 0;
  z-index: 2;
}

.gk-feat-svg-line {
  position: absolute;
  /* Perfectly aligns to the center of the 110px height icon */
  top: 75px;
  left: 0;
  width: 100%;
  /* Exact height difference between top and bottom icons */
  height: 120px;
  z-index: 0;
  /* Kept behind the icons */
  pointer-events: none;
  overflow: visible;
}

/* The Solid Base Line */
.gk-feat-path-solid {
  fill: none;
  stroke: #ffe6d5;
  /* Soft brand orange-tinted grey */
  stroke-width: 6;
  /* Bold solid line */
  stroke-linecap: round;
  vector-effect: non-scaling-stroke;
}

/* The Traveling Glowing Capsule */
.gk-feat-path-capsule {
  fill: none;
  stroke: #ff6a00;
  stroke-width: 12;
  /* Thicker than the base line to look like a pill */
  stroke-linecap: round;
  /* Dash length is 8 (capsule size), gap is 100 (rest of the path) */
  stroke-dasharray: 8 100;
  vector-effect: non-scaling-stroke;
  animation: travelCapsule 4s linear infinite;
  filter: drop-shadow(0 0 10px rgba(255, 106, 0, 0.8));
}

@keyframes travelCapsule {
  0% {
    stroke-dashoffset: 108;
  }

  100% {
    stroke-dashoffset: -8;
  }
}

/* --- Rich 3D Feature Cards & Icons --- */
.gk-feat-item {
  position: relative;
  z-index: 2;
  /* Ensures content is ABOVE the wave */
  text-align: center;
  padding: 0 15px;
  transition: transform 0.4s ease;
}

.gk-feat-item:hover {
  transform: translateY(-12px);
}

/* Alternating Heights for Wave Curve */
.gk-step-down {
  margin-top: 120px;
}

/* Enhanced Rich 3D Pedestal for Icon */
.gk-feat-icon-3d {
  width: 110px;
  height: 110px;
  margin: 0 auto 25px auto;
  background: linear-gradient(145deg, #ffffff, #f0f0f0);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  /* Deeper Claymorphism Shadows for Rich Look */
  box-shadow:
    20px 20px 40px rgba(0, 0, 0, 0.08),
    -20px -20px 40px rgba(255, 255, 255, 1),
    inset 0px -8px 15px rgba(0, 0, 0, 0.04),
    inset 0px 8px 15px rgba(255, 255, 255, 1);
  border: 1px solid rgba(255, 255, 255, 0.6);
  animation: floatIconRich 5s ease-in-out infinite;
}

/* Inner Debossed Area */
.gk-feat-icon-inner {
  width: 75px;
  height: 75px;
  border-radius: 50%;
  background: #fcfcfc;
  /* Inner shadow creates a pressed-in effect */
  box-shadow:
    inset 5px 5px 12px rgba(0, 0, 0, 0.06),
    inset -5px -5px 12px rgba(255, 255, 255, 1);
  display: flex;
  align-items: center;
  justify-content: center;
}

.gk-feat-item:nth-child(even) .gk-feat-icon-3d {
  animation-delay: 1.5s;
  /* Alternate float timing */
}

@keyframes floatIconRich {

  0%,
  100% {
    transform: translateY(0) rotate(0deg);
  }

  50% {
    transform: translateY(-10px) rotate(2deg);
  }
}

.gk-feat-icon-inner i {
  font-size: 2.2rem;
  /* Glowing gradient text for icon */
  background: linear-gradient(135deg, #ff6a00, #ffb347);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  filter: drop-shadow(2px 2px 5px rgba(255, 106, 0, 0.4));
}

/* 3D Step Number Badge */
.gk-feat-step-num {
  position: absolute;
  top: -2px;
  left: -2px;
  width: 40px;
  height: 40px;
  background: linear-gradient(135deg, #ff8c00, #ff6a00);
  color: #fff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  font-size: 1.1rem;
  /* 3D Pop Effect */
  box-shadow: 4px 4px 12px rgba(255, 106, 0, 0.5),
    inset 2px 2px 5px rgba(255, 255, 255, 0.6),
    inset -2px -2px 5px rgba(0, 0, 0, 0.2);
  border: 3px solid #fff;
  z-index: 3;
}

/* Colors for alternate steps to keep it dynamic but on-brand */
.gk-feat-item:nth-child(even) .gk-feat-step-num {
  background: linear-gradient(135deg, #ffc107, #ff9800);
  box-shadow: 4px 4px 12px rgba(255, 152, 0, 0.5),
    inset 2px 2px 5px rgba(255, 255, 255, 0.6),
    inset -2px -2px 5px rgba(0, 0, 0, 0.2);
}

.gk-feat-item:nth-child(even) .gk-feat-icon-inner i {
  background: linear-gradient(135deg, #ffc107, #ff9800);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  filter: drop-shadow(2px 2px 5px rgba(255, 152, 0, 0.4));
}

.gk-feat-title {
  font-size: 1.4rem;
  font-weight: 800;
  color: #1a1a1a;
  margin-bottom: 12px;
}

.gk-feat-desc {
  font-size: 0.95rem;
  color: #64748b;
  line-height: 1.6;
  font-weight: 500;
}

/* --- Responsive Design for Features --- */
@media (max-width: 991px) {
  .gk-feat-svg-line {
    display: none;
    /* Hide horizontal line on tablet/mobile */
  }

  .gk-step-down {
    margin-top: 0;
  }

  .gk-feat-item {
    margin-bottom: 60px;
  }

  /* Add vertical dashed timeline for mobile */
  .gk-feat-timeline-wrapper::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 4px;
    background-color: #ffe6d5;
    /* Solid vertical line */
    border-radius: 4px;
    z-index: 0;
  }

  .gk-feat-item {
    z-index: 2;
  }
}

@media (max-width: 576px) {
  .gk-feat-icon-3d {
    width: 90px;
    height: 90px;
  }

  .gk-feat-icon-inner {
    width: 60px;
    height: 60px;
  }

  .gk-feat-icon-inner i {
    font-size: 1.8rem;
  }

  .gk-feat-step-num {
    width: 35px;
    height: 35px;
    font-size: 0.95rem;
  }

  .gk-feat-title {
    font-size: 1.25rem;
  }
}

/* mission vision section */

.gk-mv-premium-section {
  padding: 60px 0;
  position: relative;
  overflow: hidden;
  z-index: 1;
  background-color: #0d0303;
}

/* --- Continuous Background Animation (Aurora / Moving Glowing Orbs) --- */
.gk-aurora-container {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  overflow: hidden;
  z-index: 0;
  opacity: 0.85;
  /* Increased opacity to make the blur on cards more visible */
  pointer-events: none;
}

.gk-glowing-orb {
  position: absolute;
  border-radius: 50%;
  filter: blur(80px);
  animation: floatAurora 15s infinite alternate cubic-bezier(0.4, 0, 0.2, 1);
}

/* Using Logo's Vibrant Orange */
.gk-orb-orange {
  width: 50vw;
  height: 50vw;
  background: rgba(255, 106, 0, 0.18);
  top: -10%;
  left: 0%;
}

/* Using Logo's Gold/Yellow accent */
.gk-orb-gold {
  width: 45vw;
  height: 45vw;
  background: rgba(255, 170, 0, 0.15);
  bottom: -10%;
  right: -5%;
  animation-delay: -5s;
}

/* Using Logo's Dark Maroon (Lighter shade for glow) */
.gk-orb-maroon {
  width: 40vw;
  height: 40vw;
  background: rgba(180, 24, 24, 0.15);
  top: 30%;
  left: 30%;
  animation-delay: -10s;
}

@keyframes floatAurora {
  0% {
    transform: translate(0, 0) scale(1);
  }

  50% {
    transform: translate(15vw, -10vh) scale(1.1);
  }

  100% {
    transform: translate(-10vw, 15vh) scale(0.9);
  }
}

/* Moving Grid Line Animation */
.gk-bg-grid {
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(to right, rgba(255, 106, 0, 0.04) 1px, transparent 1px),
    linear-gradient(to bottom, rgba(255, 106, 0, 0.04) 1px, transparent 1px);
  background-size: 50px 50px;
  z-index: 0;
  animation: moveGrid 20s linear infinite;
}

@keyframes moveGrid {
  0% {
    transform: translateY(0);
  }

  100% {
    transform: translateY(50px);
  }
}

/* --- Section Header --- */
.gk-header-premium {
  margin-bottom: 70px;
  position: relative;
  z-index: 2;
}

.gk-badge-pill {
  display: inline-flex;
  align-items: center;
  padding: 8px 24px;
  background: rgba(255, 106, 0, 0.1);
  /* Orange tint */
  backdrop-filter: blur(10px);
  border: 1px solid rgba(255, 106, 0, 0.3);
  border-radius: 50px;
  font-weight: 700;
  color: #ffaa00;
  /* Gold */
  text-transform: uppercase;
  letter-spacing: 1.5px;
  font-size: 0.85rem;
  margin-bottom: 25px;
  box-shadow: 0 0 20px rgba(255, 106, 0, 0.15);
}

.gk-title-premium {
  font-size: clamp(2.8rem, 4.5vw, 4rem);
  font-weight: 800;
  color: #ffffff;
  line-height: 1.15;
  letter-spacing: -1px;
}

.gk-gradient-text {
  /* Logo Gradient */
  background: linear-gradient(135deg, #ff6a00, #ffaa00);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  filter: drop-shadow(0 2px 10px rgba(255, 106, 0, 0.3));
}

.gk-header-desc {
  font-size: 1.15rem;
  color: #cbd5e1;
  line-height: 1.8;
}

/* --- True Glassmorphism Cards (Side-by-Side Layout) --- */
.gk-glass-card-dark {
  /* Enhanced real glass effect */
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.06) 0%, rgba(35, 12, 12, 0.5) 100%);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border: 1px solid rgba(255, 255, 255, 0.05);
  /* Soft outer glass edge */
  border-top: 1px solid rgba(255, 170, 0, 0.3);
  /* Gold Highlight */
  border-left: 1px solid rgba(255, 106, 0, 0.2);
  /* Orange Highlight */
  border-radius: 30px;
  padding: 28px 25px 35px;
  height: 100%;
  position: relative;
  z-index: 2;
  transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  /* Outer shadow + inner light reflection for glass volume */
  box-shadow:
    0 25px 45px rgba(0, 0, 0, 0.8),
    inset 0 1px 0 rgba(255, 255, 255, 0.1),
    inset 0 0 20px rgba(255, 106, 0, 0.05);
}

.gk-glass-card-dark:hover {
  transform: translateY(-10px);
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.1) 0%, rgba(45, 15, 15, 0.6) 100%);
  border-top-color: rgba(255, 170, 0, 0.5);
  border-left-color: rgba(255, 106, 0, 0.4);
  box-shadow:
    0 30px 60px rgba(0, 0, 0, 0.9),
    0 0 40px rgba(255, 106, 0, 0.15),
    inset 0 1px 0 rgba(255, 255, 255, 0.2),
    inset 0 0 30px rgba(255, 106, 0, 0.1);
}

/* Top Visual Container */
.gk-card-visual {
  height: 180px;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 0px;
}

.gk-panel-label {
  font-size: 0.9rem;
  font-weight: 700;
  color: #ffaa00;
  /* Gold */
  text-transform: uppercase;
  letter-spacing: 2px;
  margin-bottom: 15px;
  display: block;
}

.gk-panel-title {
  font-size: 1.7rem;
  font-weight: 800;
  color: #ffffff;
  margin-bottom: 10px;
  line-height: 1.3;
}

.gk-panel-desc {
  font-size: 12px;
  color: #bdbdbd;
  line-height: 1.6;
  margin-bottom: 0;
  font-family: "Unbounded", sans-serif !important;
}

/* --- Pure CSS 3D Visuals (Using Logo Colors) --- */
.gk-3d-scene {
  perspective: 1000px;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* Mission Visual: 3D Bullseye Target */
.gk-target-wrapper {
  position: relative;
  width: 140px;
  height: 140px;
  transform-style: preserve-3d;
  animation: float3D 6s ease-in-out infinite;
}

.gk-target-ring-1 {
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, #ff6a00, #ffaa00);
  border-radius: 50%;
  box-shadow: 0 15px 30px rgba(255, 106, 0, 0.3);
  transform: translateZ(0);
}

.gk-target-ring-2 {
  position: absolute;
  inset: 22px;
  /* Logo Dark Maroon Core */
  background: #2a0808;
  border-radius: 50%;
  box-shadow: inset 0 5px 15px rgba(0, 0, 0, 0.8);
  transform: translateZ(25px);
}

.gk-target-ring-3 {
  position: absolute;
  inset: 45px;
  background: linear-gradient(135deg, #ffaa00, #ff6a00);
  border-radius: 50%;
  box-shadow: 0 10px 20px rgba(255, 106, 0, 0.4);
  transform: translateZ(50px);
}

.gk-target-arrow {
  position: absolute;
  top: -10px;
  right: -10px;
  font-size: 3rem;
  color: #ffffff;
  transform: translateZ(80px) rotate(45deg);
  filter: drop-shadow(10px 10px 15px rgba(0, 0, 0, 0.6));
}

/* Vision Visual: 3D Glowing Eye / Orbs */
.gk-vision-wrapper {
  position: relative;
  width: 140px;
  height: 140px;
  transform-style: preserve-3d;
  animation: float3DReverse 7s ease-in-out infinite;
}

.gk-vision-orb-1 {
  position: absolute;
  inset: 10px;
  background: linear-gradient(135deg, rgba(255, 170, 0, 0.9), rgba(255, 106, 0, 0.9));
  border-radius: 50%;
  box-shadow: 0 15px 30px rgba(255, 106, 0, 0.3);
  transform: translateZ(0);
}

.gk-vision-orb-2 {
  position: absolute;
  inset: -15px 15px 15px -15px;
  background: rgba(255, 255, 255, 0.05);
  border-radius: 50%;
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border: 1px solid rgba(255, 170, 0, 0.3);
  box-shadow: 0 10px 25px rgba(255, 106, 0, 0.2);
  transform: translateZ(35px);
}

.gk-vision-icon {
  position: absolute;
  inset: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 3.5rem;
  color: #ffffff;
  transform: translateZ(65px);
  filter: drop-shadow(0px 5px 15px rgba(255, 106, 0, 0.6));
}

@keyframes float3D {

  0%,
  100% {
    transform: rotateY(-10deg) rotateX(5deg) translateY(0);
  }

  50% {
    transform: rotateY(15deg) rotateX(-5deg) translateY(-15px);
  }
}

@keyframes float3DReverse {

  0%,
  100% {
    transform: rotateY(10deg) rotateX(-5deg) translateY(0);
  }

  50% {
    transform: rotateY(-15deg) rotateX(5deg) translateY(-15px);
  }
}

/* --- Responsive Adjustments --- */
@media (max-width: 991px) {
  .gk-title-premium {
    font-size: 2.5rem;
  }

  .gk-glass-card-dark {
    padding: 40px 30px;
  }
}

@media (max-width: 767px) {
  .gk-card-visual {
    height: 160px;
    margin-bottom: 20px;
  }

  .gk-panel-title {
    font-size: 1.5rem;
  }
}

/* Our founder section */

/* MAIN SECTION */
.gk-prem-section {
  padding: 65px 0;
  background-color: #fafbfc;
  /* Extremely subtle cool off-white */
  position: relative;
  overflow: hidden;
  z-index: 1;
  font-family: inherit;
  /* Inherits your website's default font */
}

/* BACKGROUND ANIMATED ORBS */
.gk-prem-orb {
  position: absolute;
  border-radius: 50%;
  filter: blur(80px);
  z-index: -1;
  animation: gkPremFloatOrb 15s ease-in-out infinite alternate;
}

.gk-prem-orb-1 {
  width: 400px;
  height: 400px;
  background: rgba(255, 106, 0, 0.08);
  /* GyanKamao Orange */
  top: -100px;
  left: -100px;
}

.gk-prem-orb-2 {
  width: 500px;
  height: 500px;
  background: rgba(255, 196, 0, 0.06);
  /* Gold */
  bottom: -200px;
  right: -150px;
  animation-delay: -5s;
}

@keyframes gkPremFloatOrb {
  0% {
    transform: translate(0, 0) scale(1);
  }

  100% {
    transform: translate(50px, 50px) scale(1.2);
  }
}

/* IMAGE LAYOUT & STYLING */
.gk-prem-image-wrapper {
  position: relative;
  padding: 20px 20px 40px 0;
  z-index: 2;
}

/* Offset Decorative Frame */
.gk-prem-image-wrapper::before {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  width: 90%;
  height: 90%;
  border: 2px solid rgba(255, 106, 0, 0.3);
  border-radius: 24px;
  z-index: -1;
  transform: translate(15px, 15px);
  transition: all 0.5s ease;
}

.gk-prem-image-wrapper:hover::before {
  transform: translate(25px, 25px);
  border-color: rgba(255, 106, 0, 0.6);
}

.gk-prem-img-box {
  position: relative;
  border-radius: 24px;
  overflow: hidden;
  box-shadow: 0 30px 60px rgba(0, 0, 0, 0.12);
  background: #fff;
}

.gk-prem-img {
  width: 100%;
  height: auto;
  display: block;
  transition: transform 0.7s cubic-bezier(0.4, 0, 0.2, 1);
}

.gk-prem-image-wrapper:hover .gk-prem-img {
  transform: scale(1.03);
}

/* GLASSMORPHISM NAME BADGE */
.gk-prem-badge {
  position: absolute;
  bottom: 10px;
  right: -10px;
  background: rgba(255, 255, 255, 0.85);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  padding: 20px 30px;
  border-radius: 16px;
  box-shadow: 0 15px 35px rgba(0, 0, 0, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.6);
  z-index: 3;
  animation: gkPremHoverBadge 6s ease-in-out infinite;
}

@keyframes gkPremHoverBadge {

  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-10px);
  }
}

.gk-prem-badge-title {
  font-size: 1.25rem;
  font-weight: 800;
  color: #111;
  margin: 0;
  line-height: 1.2;
}

.gk-prem-badge-desc {
  font-size: 0.9rem;
  color: #ff6a00;
  font-weight: 600;
  margin: 5px 0 0 0;
  text-transform: uppercase;
  letter-spacing: 1px;
}

/* ========================================================
           3D INLINE SVG ICONS (NO CDN)
           ======================================================== */
.gk-prem-3d-icon {
  position: absolute;
  width: 70px;
  height: 70px;
  background: linear-gradient(135deg, #ffffff 0%, #f0f0f0 100%);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 4;
  box-shadow:
    -10px -10px 20px rgba(255, 255, 255, 1),
    10px 10px 20px rgba(0, 0, 0, 0.1),
    inset -3px -3px 6px rgba(0, 0, 0, 0.05),
    inset 3px 3px 6px rgba(255, 255, 255, 0.8);
  border: 1px solid rgba(255, 255, 255, 0.8);
}

.gk-prem-3d-icon svg {
  width: 32px;
  height: 32px;
  stroke: url(#gkPremGradient);
  fill: none;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
  filter: drop-shadow(0px 4px 4px rgba(255, 106, 0, 0.3));
}

.gk-prem-icon-top {
  top: 20px;
  left: -25px;
  animation: gkPremFloat3D_1 4s ease-in-out infinite;
}

.gk-prem-icon-bottom {
  top: 50%;
  right: -25px;
  animation: gkPremFloat3D_2 5s ease-in-out infinite;
}

@keyframes gkPremFloat3D_1 {

  0%,
  100% {
    transform: translateY(0) rotate(-5deg);
  }

  50% {
    transform: translateY(-15px) rotate(5deg) scale(1.05);
  }
}

@keyframes gkPremFloat3D_2 {

  0%,
  100% {
    transform: translateY(0) rotate(5deg);
  }

  50% {
    transform: translateY(15px) rotate(-5deg) scale(1.05);
  }
}

/* ========================================================
           CONTENT SECTION STYLING (REDESIGNED FOR IMPACT)
           ======================================================== */
.gk-prem-content {
  padding-left: 50px;
  z-index: 2;
  position: relative;
}

@media (max-width: 991px) {
  .gk-prem-content {
    padding-left: 0;
    margin-top: 60px;
  }

  .gk-prem-image-wrapper {
    padding-right: 0;
    margin-right: 15px;
    margin-left: 15px;
  }

  .gk-prem-badge {
    right: 20px;
  }
}

.gk-prem-subtitle {
  display: flex;
  align-items: center;
  color: #ff6a00;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 3px;
  font-size: 13px;
  margin-bottom: 15px;
}

.gk-prem-subtitle::before {
  content: '';
  display: inline-block;
  width: 40px;
  height: 2px;
  background: linear-gradient(90deg, #ff6a00, transparent);
  margin-right: 15px;
}

.gk-prem-title {
  font-size: clamp(2.5rem, 5vw, 3.5rem);
  font-weight: 800;
  color: #0f172a;
  line-height: 1.1;
  margin-bottom: 20px;
  letter-spacing: -1px;
}

.gk-prem-title span {
  background: linear-gradient(135deg, #ff6a00 0%, #ffb700 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  position: relative;
  display: inline-block;
}

/* 1. The Lead Text (Modern Left Border) */
.gk-prem-lead-text {
  font-size: 1rem;
  text-align: justify;
  color: #475569;
  line-height: 1.8;
  margin-bottom: 20px;
  font-weight: 400;
  border-left: 3px solid rgba(255, 106, 0, 0.4);
  padding-left: 20px;
}

.gk-prem-lead-text strong {
  color: #0f172a;
  font-weight: 700;
}

/* 2. The Vision Card (Highlight Box) */
.gk-prem-vision-card {
  background: linear-gradient(135deg, #ffffff 0%, #fff9f5 100%);
  border: 1px solid rgba(255, 106, 0, 0.15);
  border-radius: 16px;
  padding: 25px;
  margin-bottom: 35px;
  box-shadow: 0 10px 30px rgba(255, 106, 0, 0.05);
  display: flex;
  align-items: flex-start;
  gap: 15px;
  transition: transform 0.3s ease;
}

.gk-prem-vision-card:hover {
  transform: translateY(-5px);
  border-color: rgba(255, 106, 0, 0.4);
}

.gk-prem-vision-icon {
  flex-shrink: 0;
  width: 40px;
  height: 40px;
  background: rgba(255, 106, 0, 0.1);
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.gk-prem-vision-icon svg {
  width: 20px;
  height: 20px;
  fill: #ff6a00;
}

.gk-prem-vision-text {
  margin: 0;
  font-size: 1.05rem;
  color: #334155;
  line-height: 1.7;
  text-align: justify;
}

.gk-prem-vision-text strong {
  color: #ff6a00;
  font-weight: 700;
}

/* ========================================================
           3. THE SHOWSTOPPER QUOTE BLOCK (DARK & GLOWING)
           ======================================================== */
.gk-prem-ultimate-quote {
  position: relative;
  background: linear-gradient(135deg, #0f172a 0%, #1e293b 100%);
  /* Deep slate/Dark theme */
  padding: 27px 40px 24px;
  border-radius: 20px;
  box-shadow: 0 25px 50px rgba(15, 23, 42, 0.2),
    inset 0 1px 1px rgba(255, 255, 255, 0.1);
  margin-top: 50px;
  overflow: visible;
  /* To allow massive quote mark to break out */
  animation: gkPremQuoteFloat 6s ease-in-out infinite;
  border-bottom: 4px solid #ff6a00;
}

@keyframes gkPremQuoteFloat {

  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-10px);
    box-shadow: 0 35px 60px rgba(15, 23, 42, 0.3), inset 0 1px 1px rgba(255, 255, 255, 0.1);
  }
}

/* Massive Overlapping SVG Quote Mark */
.gk-prem-massive-quote {
  position: absolute;
  top: -30px;
  left: -25px;
  width: 70px;
  height: 70px;
  background: linear-gradient(135deg, #ff6a00, #ffb700);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 10px 25px rgba(255, 106, 0, 0.4);
  border: 4px solid #ffffff;
  z-index: 2;
  animation: gkPremQuotePulse 2s infinite alternate;
}

@keyframes gkPremQuotePulse {
  0% {
    transform: scale(1);
  }

  100% {
    transform: scale(1.05);
  }
}

.gk-prem-massive-quote svg {
  width: 30px;
  height: 30px;
  fill: #ffffff;
}

/* Quote Text - Golden Gradient */
.gk-prem-quote-text {
  position: relative;
  z-index: 1;
  font-size: 1.2rem;
  font-style: italic;
  font-weight: 700;
  line-height: 1.5;
  margin: 0 0 15px 0;
  background: linear-gradient(135deg, #ffffff 0%, #cbd5e1 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  letter-spacing: 0.5px;
}

.gk-prem-quote-author {
  display: block;
  color: #ffb700;
  font-size: 0.95rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 2px;
  text-align: right;
  position: relative;
}

.gk-prem-quote-author::before {
  content: '';
  display: inline-block;
  width: 30px;
  height: 2px;
  background: #ffb700;
  vertical-align: middle;
  margin-right: 10px;
}

/* gallery section */
.gk-gal-section {
  padding: 53px 0;
  background-color: #f8fafc;
  /* Animated dotted background */
  background-image: radial-gradient(rgba(255, 106, 0, 0.15) 2px, transparent 2px);
  background-size: 30px 30px;
  animation: gkGalBgPan 20s linear infinite;
  position: relative;
  overflow: hidden;
  font-family: inherit;
}

@keyframes gkGalBgPan {
  0% {
    background-position: 0px 0px;
  }

  100% {
    background-position: 30px 30px;
  }
}

.gk-gal-bg-glow {
  position: absolute;
  border-radius: 50%;
  filter: blur(100px);
  z-index: 0;
  opacity: 0.5;
  animation: gkGalFloat 10s infinite alternate ease-in-out;
}

.gk-gal-glow-1 {
  width: 400px;
  height: 400px;
  background: rgba(255, 106, 0, 0.15);
  top: 5%;
  left: -5%;
}

.gk-gal-glow-2 {
  width: 450px;
  height: 450px;
  background: rgba(255, 183, 0, 0.15);
  bottom: 5%;
  right: -5%;
  animation-delay: -5s;
}

@keyframes gkGalFloat {
  0% {
    transform: translate(0, 0);
  }

  100% {
    transform: translate(40px, 40px);
  }
}

.gk-gal-header-wrap {
  text-align: center;
  margin-bottom: 60px;
  position: relative;
  z-index: 1;
}

.gk-gal-subtitle-3d {
  display: inline-block;
  background: linear-gradient(145deg, #ffffff, #f0f0f0);
  padding: 12px 35px;
  border-radius: 40px;
  color: #ff6a00;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 3px;
  font-size: 15px;
  margin-bottom: 12px;
  box-shadow:
    8px 8px 16px rgba(0, 0, 0, 0.08),
    -8px -8px 16px rgba(255, 255, 255, 1),
    inset 2px 2px 4px rgba(255, 255, 255, 0.9);
  border: 1px solid rgba(255, 106, 0, 0.1);
}

.gk-gal-title {
  font-size: clamp(2.5rem, 5vw, 4rem);
  font-weight: 900;
  color: #1e293b;
  line-height: 1.2;
  text-shadow: 2px 8px 12px rgba(0, 0, 0, 0.05);
  margin-bottom: 15px;
}

.gk-gal-title span {
  position: relative;
  display: inline-block;
  color: #ff6a00;
  z-index: 1;
}

.gk-gal-title span::after {
  content: '';
  position: absolute;
  width: 110%;
  height: 35%;
  bottom: 5px;
  left: -5%;
  background: linear-gradient(90deg, rgba(255, 106, 0, 0.2), rgba(255, 183, 0, 0.3));
  z-index: -1;
  border-radius: 10px;
  transform: skewX(-15deg);
}

.gk-gal-container {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 15px;
}

.gk-gal-masonry {
  column-count: 3;
  column-gap: 25px;
}

@media (max-width: 991px) {
  .gk-gal-masonry {
    column-count: 2;
    column-gap: 20px;
  }
}

@media (max-width: 575px) {
  .gk-gal-masonry {
    column-count: 1;
    column-gap: 15px;
  }
}

.gk-gal-item {
  break-inside: avoid;
  margin-bottom: 25px;
  position: relative;
  border-radius: 20px;
  overflow: hidden;
  background: #fff;
  box-shadow: 0 15px 35px rgba(0, 0, 0, 0.1);
  transform: translateZ(0);
  border: 4px solid #fff;
  /* Removed cursor: pointer to not give false hope of clicking */
}

.gk-gal-img {
  width: 100%;
  height: auto;
  display: block;
  transition: transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

.gk-gal-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(15, 23, 42, 0.9) 0%, rgba(255, 106, 0, 0.4) 100%);
  opacity: 0;
  transition: all 0.4s ease;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 2;
}

.gk-gal-icon-wrap {
  width: 70px;
  height: 70px;
  background: linear-gradient(145deg, #ffffff, #e6e6e6);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  transform: translateY(40px) scale(0.5);
  opacity: 0;
  transition: all 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275);
  box-shadow:
    0 15px 25px rgba(0, 0, 0, 0.3),
    0 5px 10px rgba(0, 0, 0, 0.2),
    inset 0 -4px 8px rgba(0, 0, 0, 0.1),
    inset 0 4px 8px rgba(255, 255, 255, 1);
  border: 2px solid #fff;
}

.gk-gal-icon-wrap svg {
  width: 32px;
  height: 32px;
  fill: url(#gkGalOrangeGrad);
  filter: drop-shadow(0 3px 3px rgba(255, 106, 0, 0.5));
}

.gk-gal-item:hover .gk-gal-img {
  transform: scale(1.1);
}

.gk-gal-item:hover .gk-gal-overlay {
  opacity: 1;
}

.gk-gal-item:hover .gk-gal-icon-wrap {
  transform: translateY(0) scale(1);
  opacity: 1;
}

/* Contact Us section */

.gk-contact-section {
  --gk-maroon-950: #260810;
  --gk-maroon-800: #3d0f1c;
  --gk-maroon-700: #521429;
  --gk-orange-1: #ff8a1e;
  --gk-orange-2: #ff5e0e;
  --gk-gold: #ffcf86;
  --gk-cream: #fff8ef;
  --gk-ink-soft: #e9c9b8;

  position: relative;
  background: radial-gradient(ellipse 90% 70% at 50% -10%, #4a1524 0%, var(--gk-maroon-950) 55%), var(--gk-maroon-950);
  padding: 55px 24px 60px;
  overflow: hidden;
  isolation: isolate;
}

.gk-contact-section * {
  box-sizing: border-box;
}

/* ---------- ambient background decor ---------- */
.gk-bg-decor {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
}

.gk-blob {
  position: absolute;
  filter: blur(60px);
  opacity: 0.35;
  border-radius: 42% 58% 63% 37% / 41% 44% 56% 59%;
  animation: gk-morph 16s ease-in-out infinite;
}

.gk-blob--a {
  width: 480px;
  height: 480px;
  top: -180px;
  left: -140px;
  background: radial-gradient(circle, var(--gk-orange-2), transparent 70%);
  animation-delay: 0s;
}

.gk-blob--b {
  width: 420px;
  height: 420px;
  bottom: -160px;
  right: -120px;
  background: radial-gradient(circle, var(--gk-gold), transparent 70%);
  animation-delay: -8s;
}

@keyframes gk-morph {

  0%,
  100% {
    border-radius: 42% 58% 63% 37% / 41% 44% 56% 59%;
    transform: rotate(0deg) scale(1);
  }

  50% {
    border-radius: 58% 42% 37% 63% / 55% 60% 40% 45%;
    transform: rotate(20deg) scale(1.08);
  }
}

.gk-grain {
  position: absolute;
  inset: 0;
  background-image: radial-gradient(rgba(255, 255, 255, 0.035) 1px, transparent 1px);
  background-size: 3px 3px;
  mix-blend-mode: overlay;
}

.gk-coin {
  position: absolute;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: linear-gradient(145deg, var(--gk-gold), var(--gk-orange-1));
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  font-weight: 600;
  color: #4a1a00;
  opacity: 0;
  animation: gk-coin-rise 9s ease-in infinite;
}

.gk-coin::after {
  content: "₹";
}

.gk-coin--1 {
  left: 8%;
  bottom: -5%;
  animation-delay: 0s;
}

.gk-coin--2 {
  left: 22%;
  bottom: -5%;
  animation-delay: 2.4s;
  width: 16px;
  height: 16px;
  font-size: 8px;
}

.gk-coin--3 {
  left: 88%;
  bottom: -5%;
  animation-delay: 4.6s;
}

.gk-coin--4 {
  left: 70%;
  bottom: -5%;
  animation-delay: 6.8s;
  width: 15px;
  height: 15px;
  font-size: 8px;
}

@keyframes gk-coin-rise {
  0% {
    opacity: 0;
    transform: translateY(0) rotate(0deg);
  }

  10% {
    opacity: .55;
  }

  85% {
    opacity: .4;
  }

  100% {
    opacity: 0;
    transform: translateY(-620px) rotate(50deg);
  }
}

/* ---------- container ---------- */
.gk-contact-container {
  max-width: 1180px;
  margin: 0 auto;
  position: relative;
  z-index: 2;
}

/* ---------- entrance animation (runs once on page load, CSS-only) ---------- */
.gk-anim-in {
  animation: gk-fade-up 0.9s cubic-bezier(.22, .8, .32, 1) both;
  animation-delay: var(--gk-d, 0s);
}

@keyframes gk-fade-up {
  from {
    opacity: 0;
    transform: translateY(26px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* ---------- header ---------- */
.gk-contact-header {
  text-align: center;
  max-width: 640px;
  margin: 0 auto 68px;
}

.gk-contact-title {
  font-weight: 600;
  font-size: clamp(34px, 4.4vw, 50px);
  line-height: 1.14;
  margin: 0 0 16px;
  color: var(--gk-cream);
}

.gk-contact-title em {
  font-style: normal;
  background: linear-gradient(100deg, var(--gk-gold), var(--gk-orange-1) 60%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.gk-contact-subtitle {
  font-size: 17px;
  line-height: 1.7;
  color: var(--gk-ink-soft);
  margin: 0;
}

/* ---------- grid ---------- */
.gk-contact-grid {
  display: grid;
  grid-template-columns: 0.82fr 1.18fr;
  gap: 28px;
  align-items: stretch;
}

/* ================= LEFT: info / seal panel ================= */
.gk-contact-info {
  position: relative;
  border-radius: 30px;
  padding: 30px 35px 30px;
  background: linear-gradient(165deg, rgba(255, 255, 255, 0.06), rgba(255, 255, 255, 0.015));
  border: 1px solid rgba(255, 207, 134, 0.16);
  backdrop-filter: blur(6px);
  display: flex;
  flex-direction: column;
  gap: 20px;
  overflow: hidden;
}

.gk-contact-info::before {
  content: "";
  position: absolute;
  top: -60%;
  right: -40%;
  width: 340px;
  height: 340px;
  background: radial-gradient(circle, rgba(255, 138, 30, 0.22), transparent 70%);
  z-index: -1;
}

/* rotating seal */
.gk-seal {
  position: relative;
  width: 118px;
  height: 118px;
  margin: 0 auto;
}

.gk-seal-ring {
  position: absolute;
  inset: 0;
  animation: gk-spin 22s linear infinite;
}

@keyframes gk-spin {
  to {
    transform: rotate(360deg);
  }
}

.gk-seal-core {
  position: absolute;
  inset: 14px;
  border-radius: 50%;
  background: linear-gradient(150deg, var(--gk-orange-1), var(--gk-orange-2));
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 10px 26px -6px rgba(255, 94, 14, 0.6), inset 0 0 0 4px rgba(255, 255, 255, 0.14);
  animation: gk-pulse-soft 3.6s ease-in-out infinite;
}

@keyframes gk-pulse-soft {

  0%,
  100% {
    transform: scale(1);
  }

  50% {
    transform: scale(1.045);
  }
}

.gk-seal-core svg {
  width: 46px;
  height: 46px;
}

.gk-info-heading {
  font-weight: 600;
  font-size: 21px;
  color: var(--gk-cream);
  text-align: center;
  margin: 0;
}

.gk-info-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0px;
}

.gk-info-row {
  display: flex;
  gap: 15px;
  align-items: flex-start;
  padding: 13px 10px;
  border-radius: 14px;
  transition: background .25s ease, transform .25s ease;
}

.gk-info-row:hover {
  background: rgba(255, 255, 255, 0.05);
  transform: translateX(3px);
}

.gk-info-icon {
  flex: none;
  width: 40px;
  height: 40px;
  border-radius: 11px;
  background: rgba(255, 138, 30, 0.14);
  border: 1px solid rgba(255, 138, 30, 0.35);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background .25s ease, transform .3s ease;
}

.gk-info-row:hover .gk-info-icon {
  background: rgba(255, 138, 30, 0.28);
  transform: rotate(-6deg);
}

.gk-info-icon svg {
  width: 18px;
  height: 18px;
}

.gk-info-label {
  margin: 0 0 3px;
  font-size: 12px;
  color: #d3a488;
  font-weight: 500;
}

.gk-info-value {
  margin: 0;
  font-size: 15px;
  color: var(--gk-cream);
  font-weight: 500;
  line-height: 1.45;
}

.gk-info-value a {
  color: inherit;
  text-decoration: none;
}

.gk-info-value a:hover {
  color: var(--gk-orange-1);
}

.gk-info-divider {
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(255, 207, 134, 0.22), transparent);
  margin: 4px 0;
}

.gk-social-row {
  display: flex;
  gap: 10px;
  justify-content: center;
}

.gk-social-link {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 207, 134, 0.2);
  transition: transform .25s ease, background .25s ease, border-color .25s ease;
}

.gk-social-link:hover {
  transform: translateY(-3px);
  background: rgba(255, 138, 30, 0.22);
  border-color: var(--gk-orange-1);
}

.gk-social-link svg {
  width: 16px;
  height: 16px;
}

/* ================= RIGHT: form card (UI only, no JS) ================= */
.gk-contact-form-card {
  position: relative;
  background: linear-gradient(180deg, #fffaf3, #fff5e9);
  border-radius: 30px;
  padding: 46px 44px;
  box-shadow: 0 30px 70px -22px rgba(0, 0, 0, 0.55);
  overflow: hidden;
}

.gk-contact-form-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 5px;
  background: linear-gradient(90deg, var(--gk-gold), var(--gk-orange-2), var(--gk-gold));
  background-size: 200% 100%;
  animation: gk-shimmer 5s linear infinite;
}

@keyframes gk-shimmer {
  to {
    background-position: -200% 0;
  }
}

.gk-form-title {
  font-weight: 600;
  font-size: 22px;
  color: var(--gk-maroon-950);
  margin: 0 0 6px;
}

.gk-form-sub {
  font-size: 14px;
  color: #8a6e5f;
  margin: 0 0 30px;
}

.gk-form-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}

/* floating label fields — pure CSS via :placeholder-shown */
.gk-field {
  position: relative;
  margin-bottom: 22px;
}

.gk-field input,
.gk-field textarea {
  width: 100%;
  font-family: 'Inter', sans-serif;
  font-size: 14.5px;
  color: #3a2418;
  background: #ffffff;
  border: 1.5px solid #ecd9c4;
  border-radius: 13px;
  padding: 20px 16px 8px;
  outline: none;
  transition: border-color .2s ease, box-shadow .2s ease;
}

.gk-field textarea {
  resize: vertical;
  min-height: 104px;
  padding-top: 22px;
}

.gk-field label {
  position: absolute;
  left: 16px;
  top: 15px;
  font-size: 14.5px;
  color: #a68d7a;
  pointer-events: none;
  transform-origin: left top;
  transition: transform .18s ease, color .18s ease, top .18s ease;
}

.gk-field input:focus,
.gk-field textarea:focus {
  border-color: var(--gk-orange-2);
  box-shadow: 0 0 0 4px rgba(255, 94, 14, 0.12);
}

.gk-field input:focus+label,
.gk-field input:not(:placeholder-shown)+label,
.gk-field textarea:focus+label,
.gk-field textarea:not(:placeholder-shown)+label {
  top: 6px;
  transform: scale(0.78);
  color: var(--gk-orange-2);
}

/* button — pure CSS hover/active states, type="button" so it can't submit/reload anything */
.gk-submit-btn {
  appearance: none;
  border: none;
  cursor: pointer;
  width: 100%;
  padding: 16px 22px;
  border-radius: 14px;
  font-weight: 600;
  font-size: 16.5px;
  color: #fff;
  background: linear-gradient(100deg, var(--gk-orange-2), var(--gk-orange-1));
  box-shadow: 0 16px 30px -10px rgba(255, 94, 14, 0.6);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  overflow: hidden;
  position: relative;
  transition: transform .2s ease, box-shadow .25s ease;
}

.gk-submit-btn::before {
  content: "";
  position: absolute;
  top: 0;
  left: -60%;
  width: 40%;
  height: 100%;
  background: linear-gradient(115deg, transparent, rgba(255, 255, 255, 0.55), transparent);
  transform: skewX(-20deg);
  transition: left .7s ease;
}

.gk-submit-btn:hover::before {
  left: 130%;
}

.gk-submit-btn:hover {
  box-shadow: 0 20px 36px -10px rgba(255, 94, 14, 0.7);
  transform: translateY(-2px);
}

.gk-submit-btn:active {
  transform: translateY(0) scale(0.98);
}

.gk-submit-btn svg {
  width: 17px;
  height: 17px;
  transition: transform .3s ease;
}

.gk-submit-btn:hover svg {
  transform: translateX(4px);
}

.gk-form-note {
  text-align: center;
  font-size: 12.5px;
  color: #a68d7a;
  margin-top: 16px;
}

/* ---------- responsive ---------- */
@media (max-width: 940px) {
  .gk-contact-grid {
    grid-template-columns: 1fr;
  }

  .gk-contact-info {
    order: 2;
  }

  .gk-contact-form-card {
    order: 1;
  }
}

@media (max-width: 560px) {
  .gk-contact-section {
    padding: 76px 16px;
  }

  .gk-form-row {
    grid-template-columns: 1fr;
    gap: 0;
  }

  .gk-contact-form-card {
    padding: 34px 22px;
  }

  .gk-contact-info {
    padding: 36px 24px;
  }
}

@media (prefers-reduced-motion: reduce) {

  .gk-blob,
  .gk-coin,
  .gk-seal-ring,
  .gk-seal-core,
  .gk-submit-btn::before,
  .gk-anim-in {
    animation: none;
    opacity: 1;
    transform: none;
  }
}

/* become instructor section */

.gk-rich-bg-wrapper {
  position: relative;
  z-index: 1;
  padding: 55px 0;
  overflow: hidden;
}

.gk-rich-bg-gradient {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background:
    radial-gradient(circle at 10% 20%, rgba(255, 106, 0, 0.05) 0%, transparent 40%),
    radial-gradient(circle at 90% 80%, rgba(255, 183, 0, 0.08) 0%, transparent 40%);
  z-index: -2;
}

.gk-rich-shape {
  position: absolute;
  background: linear-gradient(135deg, rgba(255, 106, 0, 0.1) 0%, rgba(255, 183, 0, 0.1) 100%);
  border: 1px solid rgba(255, 106, 0, 0.15);
  border-radius: 30px;
  z-index: -1;
  animation: gkRichFloatShape linear infinite;
}

.gk-rich-shape-1 {
  width: 200px;
  height: 200px;
  left: -80px;
  top: 15%;
  animation-duration: 20s;
}

.gk-rich-shape-2 {
  width: 300px;
  height: 300px;
  right: -120px;
  top: 50%;
  animation-duration: 30s;
  animation-direction: reverse;
  border-radius: 50%;
}

@keyframes gkRichFloatShape {
  0% {
    transform: translateY(0) rotate(0deg);
  }

  50% {
    transform: translateY(-80px) rotate(180deg);
  }

  100% {
    transform: translateY(0) rotate(360deg);
  }
}

/* ==========================================================================
           2. SECTION HEADINGS 
           ========================================================================== */
.gk-rich-header {
  text-align: center;
  margin-bottom: 40px;
  position: relative;
  z-index: 2;
}

.gk-rich-badge {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  background: #ffffff;
  padding: 12px 30px;
  border-radius: 50px;
  color: #ff6a00;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 3px;
  font-size: 14px;
  margin-bottom: 25px;
  box-shadow: 0 10px 25px rgba(255, 106, 0, 0.15);
  border: 2px solid rgba(255, 106, 0, 0.2);
  animation: gkRichPulseBadge 3s infinite alternate;
}

@keyframes gkRichPulseBadge {
  0% {
    transform: translateY(0) scale(1);
    box-shadow: 0 10px 25px rgba(255, 106, 0, 0.15);
  }

  100% {
    transform: translateY(-3px) scale(1.02);
    box-shadow: 0 15px 35px rgba(255, 106, 0, 0.25);
  }
}

.gk-rich-title {
  font-size: clamp(2.5rem, 5vw, 3.2rem);
  font-weight: 900;
  color: #111;
  line-height: 1.2;
  margin: 0;
}

.gk-rich-title span {
  color: #ff6a00;
  position: relative;
  display: inline-block;
}

/* ==========================================================================
           3. THE "DHASU" CARDS (Pure White & Orange Theme)
           ========================================================================== */
.gk-rich-card {
  background: #ffffff;
  border-radius: 30px;
  padding: 20px 30px 30px 30px;
  text-align: center;
  position: relative;
  z-index: 2;
  height: 100%;
  transition: all 0.5s cubic-bezier(0.4, 0, 0.2, 1);
  box-shadow: 0 20px 40px rgba(255, 106, 0, 0.08);
  border: 2px solid rgba(255, 106, 0, 0.05);
}

.gk-rich-card:hover {
  transform: translateY(-15px);
  box-shadow: 0 35px 60px rgba(255, 106, 0, 0.15);
  border-color: #ffb700;
}

/* TRUE 3D Isometric SVG Container */
.gk-rich-3d-icon-wrap {
  position: relative;
  width: 120px;
  height: 120px;
  margin: 0 auto 10px auto;
  display: flex;
  align-items: center;
  justify-content: center;
  animation: gkRichFloat3D 4s ease-in-out infinite;
}

.gk-rich-3d-icon-wrap svg {
  width: 100px;
  height: 100px;
  filter: drop-shadow(0px 20px 10px rgba(255, 106, 0, 0.2));
}

@keyframes gkRichFloat3D {

  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-15px);
    filter: drop-shadow(0px 30px 15px rgba(255, 106, 0, 0.15));
  }
}

.gk-rich-card-delay-1 {
  animation-delay: 1s;
}

.gk-rich-card-delay-2 {
  animation-delay: 2s;
}

.gk-rich-card h4 {
  font-size: 1.4rem;
  font-weight: 800;
  color: #111;
  margin-bottom: 10px;
}

.gk-rich-card p {
  font-size: 1.05rem;
  color: #666;
  line-height: 1.7;
  margin: 0;
}

/* ==========================================================================
           4. FORM SECTION (3D Heading & Solid Icons)
           ========================================================================== */
.gk-rich-form-wrapper {
  margin-top: 80px;
  position: relative;
  z-index: 3;
}

/* Modern Premium Heading for Form */
.gk-rich-form-header {
  text-align: center;
  margin-bottom: 60px;
}

.gk-rich-form-subtitle {
  display: inline-block;
  background: rgba(255, 106, 0, 0.08);
  color: #ff6a00;
  padding: 8px 25px;
  border-radius: 30px;
  font-weight: 800;
  font-size: 14px;
  text-transform: uppercase;
  letter-spacing: 3px;
  margin-bottom: 20px;
  border: 1px solid rgba(255, 106, 0, 0.15);
  box-shadow: 0 5px 15px rgba(255, 106, 0, 0.05);
}

.gk-rich-form-header h3 {
  font-size: clamp(2.5rem, 5vw, 3.8rem);
  font-weight: 900;
  color: #111;
  margin-bottom: 15px;
  letter-spacing: -1px;
  text-transform: none;
  /* Clean capitalization */
}

.gk-rich-form-header h3 span {
  position: relative;
  background: linear-gradient(135deg, #ff6a00 0%, #ffb700 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  display: inline-block;
}

/* Tilted Marker Highlight behind Inspire */
.gk-rich-form-header h3 span::after {
  content: '';
  position: absolute;
  width: 105%;
  height: 12px;
  background: rgba(255, 183, 0, 0.25);
  bottom: 8px;
  left: -2%;
  z-index: -1;
  transform: skewX(-15deg);
  border-radius: 4px;
}

.gk-rich-form-header p {
  color: #555;
  font-size: 1.15rem;
  font-weight: 500;
  max-width: 600px;
  margin: 0 auto;
}

.gk-rich-form-box {
  background: #ffffff;
  border-radius: 40px;
  padding: 50px 60px;
  box-shadow: 0 40px 100px rgba(255, 106, 0, 0.1);
  border: 2px solid rgba(255, 106, 0, 0.1);
  position: relative;
}

@media (max-width: 768px) {
  .gk-rich-form-box {
    padding: 40px 20px;
  }

  .gk-rich-form-header h3 {
    font-size: 2.5rem;
  }
}

.gk-rich-form-group {
  margin-bottom: 22px;
  position: relative;
}

/* Solid 3D Form Icons */
.gk-rich-input-icon {
  position: absolute;
  top: 14px;
  left: 25px;
  width: 28px;
  height: 28px;
  z-index: 5;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.3s ease;
}

/* Creating solid SVGs with filters instead of thin strokes */
.gk-rich-input-icon svg {
  width: 100%;
  height: 100%;
  fill: url(#gkFormGrad);
  filter: drop-shadow(0 3px 4px rgba(255, 106, 0, 0.3));
}

.gk-rich-input,
.gk-rich-select,
.gk-rich-textarea {
  width: 100%;
  background-color: #fffcf9;
  border: 2px solid #ffebd9;
  border-radius: 12px;
  padding: 15px 25px 15px 63px;
  font-size: 1rem;
  color: #111;
  font-weight: 600;
  transition: all 0.3s ease;
  outline: none;
  box-shadow: inset 0 2px 5px rgba(255, 106, 0, 0.02);
}

.gk-rich-input::placeholder,
.gk-rich-textarea::placeholder {
  color: #999;
  font-weight: 500;
}

.gk-rich-select {
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='%23ff6a00'%3E%3Cpath d='M7 10l5 5 5-5z'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 25px center;
  background-size: 30px;
  color: #999999;
}

.gk-rich-select:valid {
  color: #111;
}

.gk-rich-input:focus,
.gk-rich-select:focus,
.gk-rich-textarea:focus {
  background-color: #ffffff;
  border-color: #ff6a00;
  box-shadow: 0 10px 25px rgba(255, 106, 0, 0.15), inset 0 0 0 1px #ff6a00;
  transform: translateY(-2px);
}

.gk-rich-input:focus~.gk-rich-input-icon,
.gk-rich-select:focus~.gk-rich-input-icon,
.gk-rich-textarea:focus~.gk-rich-input-icon,
.gk-rich-form-group:focus-within .gk-rich-input-icon {
  transform: scale(1.2) translateY(-2px);
}

.gk-rich-textarea {
  resize: vertical;
  min-height: 150px;
}

.gk-rich-submit-wrap {
  text-align: center;
  margin-top: 13px;
}

/* Ultra Premium 3D Button */
.gk-rich-btn {
  background: linear-gradient(to bottom, #ffb700, #ff6a00);
  color: #ffffff;
  font-size: 1.4rem;
  font-weight: 900;
  padding: 20px 80px;
  border-radius: 50px;
  border: none;
  cursor: pointer;
  text-transform: uppercase;
  letter-spacing: 2px;
  box-shadow:
    0 8px 0 #cc5500,
    /* 3D Bottom Edge */
    0 15px 25px rgba(255, 106, 0, 0.4),
    /* Drop shadow */
    inset 0 3px 5px rgba(255, 255, 255, 0.5);
  /* Inner highlight */
  transition: all 0.1s ease;
  /* Fast transition for click feel */
  position: relative;
  display: inline-block;
}

.gk-rich-btn:active {
  transform: translateY(8px);
  /* Push down */
  box-shadow:
    0 0 0 #cc5500,
    /* Remove edge */
    0 5px 10px rgba(255, 106, 0, 0.4),
    inset 0 3px 5px rgba(255, 255, 255, 0.5);
}

/* home page course content */

.gk-courses-section {
  --gk-maroon-950: #180408;
  --gk-maroon-900: #26080f;
  --gk-maroon-800: #34101c;
  --gk-orange-1: #ff8a1e;
  --gk-orange-2: #ff5e0e;
  --gk-gold: #ffcf86;
  --gk-cream: #fff8ef;
  --gk-ink-soft: #c9a794;
  position: relative;
  background:
    radial-gradient(circle at 15% 10%, rgba(255, 94, 14, 0.16), transparent 42%),
    radial-gradient(circle at 85% 8%, rgba(255, 207, 134, 0.12), transparent 38%),
    radial-gradient(circle at 50% 100%, rgba(255, 94, 14, 0.08), transparent 50%),
    var(--gk-maroon-950);
  padding: 50px 0 50px;
  overflow: hidden;
}

.gk-courses-section * {
  box-sizing: border-box;
}

.gk-courses-section::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(255, 255, 255, 0.025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.025) 1px, transparent 1px);
  background-size: 60px 60px;
  -webkit-mask-image: radial-gradient(ellipse 70% 55% at 50% 15%, #000 40%, transparent 85%);
  mask-image: radial-gradient(ellipse 70% 55% at 50% 15%, #000 40%, transparent 85%);
  pointer-events: none;
}

/* ---------- header ---------- */
.gk-courses-header {
  position: relative;
  text-align: center;
  max-width: 700px;
  margin: 0 auto 58px;
  padding: 0 24px;
}

.gk-courses-badge {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  padding: 9px 20px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 207, 134, 0.25);
  font-size: 12.5px;
  font-weight: 600;
  letter-spacing: 0.14em;
  color: var(--gk-cream);
  margin-bottom: 10px;
}

.gk-courses-badge-dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--gk-orange-1);
  box-shadow: 0 0 0 4px rgba(255, 138, 30, 0.22);
  animation: gk-dot-pulse 1.8s ease-in-out infinite;
}

@keyframes gk-dot-pulse {

  0%,
  100% {
    opacity: 1;
    transform: scale(1);
  }

  50% {
    opacity: .55;
    transform: scale(.8);
  }
}

.gk-courses-title {
  position: relative;
  font-weight: 700;
  font-size: clamp(38px, 6vw, 64px);
  line-height: 1.08;
  letter-spacing: -0.01em;
  margin: 0;
  background: linear-gradient(100deg, var(--gk-gold), var(--gk-orange-2) 55%, var(--gk-orange-1));
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
  filter: drop-shadow(0 6px 30px rgba(255, 94, 14, 0.35));
}

.gk-courses-title::after {
  content: "";
  display: block;
  width: 86px;
  height: 4px;
  margin: 10px auto 0;
  border-radius: 999px;
  background: linear-gradient(90deg, transparent, var(--gk-orange-1), transparent);
}

.gk-courses-subtitle {
  margin: 18px 0 0;
  font-size: 16.5px;
  line-height: 1.6;
  color: var(--gk-ink-soft);
}

/* ---------- carousel shell ---------- */
.gk-courses-carousel {
  position: relative;
  max-width: 1480px;
  margin: 0 auto;
  padding: 0 56px;
}

.gk-courses-viewport {
  overflow: hidden;
  -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 3%, #000 97%, transparent 100%);
  mask-image: linear-gradient(90deg, transparent 0, #000 3%, #000 97%, transparent 100%);
}

.gk-courses-track {
  display: flex;
  gap: 26px;
  will-change: transform;
  transition: transform .55s cubic-bezier(.65, .05, .36, 1);
}

.gk-courses-track.gk-no-transition {
  transition: none;
}

/* ---------- functional nav arrows ---------- */
.gk-courses-arrow {
  position: absolute;
  top: 42%;
  transform: translateY(-50%);
  width: 54px;
  height: 54px;
  border-radius: 50%;
  background: rgba(20, 6, 10, 0.75);
  border: 1px solid rgba(255, 207, 134, 0.28);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  z-index: 3;
  transition: background .25s ease, border-color .25s ease, transform .2s ease, box-shadow .25s ease;
}

.gk-courses-arrow svg {
  width: 20px;
  height: 20px;
  pointer-events: none;
}

.gk-courses-arrow:hover {
  background: linear-gradient(135deg, var(--gk-orange-2), var(--gk-orange-1));
  border-color: transparent;
  box-shadow: 0 14px 26px -8px rgba(255, 94, 14, 0.55);
  transform: translateY(-50%) scale(1.07);
}

.gk-courses-arrow:active {
  transform: translateY(-50%) scale(0.95);
}

.gk-courses-arrow--prev {
  left: 8px;
}

.gk-courses-arrow--next {
  right: 8px;
}

@media (max-width: 720px) {
  .gk-courses-carousel {
    padding: 0 16px;
  }

  .gk-courses-arrow {
    width: 42px;
    height: 42px;
  }

  .gk-courses-arrow--prev {
    left: -2px;
  }

  .gk-courses-arrow--next {
    right: -2px;
  }
}

/* ---------- progress dots ---------- */
.gk-courses-dots {
  display: flex;
  justify-content: center;
  gap: 9px;
  margin-top: 40px;
}

.gk-courses-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: rgba(255, 207, 134, 0.25);
  border: none;
  cursor: pointer;
  padding: 0;
  transition: background .25s ease, width .25s ease;
}

.gk-courses-dot.gk-active {
  width: 26px;
  border-radius: 5px;
  background: linear-gradient(90deg, var(--gk-orange-2), var(--gk-orange-1));
}

/* ---------- course card ---------- */
.gk-course-card {
  flex: none;
  width: 254px;
  border-radius: 24px;
  background: linear-gradient(180deg, var(--gk-maroon-900), var(--gk-maroon-800));
  border: 1px solid rgba(255, 207, 134, 0.12);
  overflow: hidden;
  transition: transform .35s ease, border-color .35s ease, box-shadow .35s ease;
}

.gk-course-card:hover {
  transform: translateY(-8px);
  border-color: rgba(255, 207, 134, 0.4);
  box-shadow: 0 30px 55px -20px rgba(255, 94, 14, 0.4);
}

.gk-course-thumb {
  position: relative;
  height: 158px;
  overflow: hidden;
  background: var(--gk-maroon-800);
}

.gk-course-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.gk-thumb-glow {
  position: absolute;
  top: -30%;
  right: -20%;
  width: 220px;
  height: 220px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(255, 255, 255, 0.28), transparent 70%);
  filter: blur(6px);
  pointer-events: none;
}

.gk-topic-badge {
  position: absolute;
  top: 14px;
  left: 14px;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 5px 11px;
  border-radius: 999px;
  background: linear-gradient(120deg, var(--gk-gold), var(--gk-orange-2));
  border: 1px solid rgba(255, 255, 255, 0.35);
  box-shadow: 0 8px 18px -6px rgba(0, 0, 0, 0.5);
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .01em;
  color: #2c0a12;
}

.gk-topic-badge svg {
  width: 13px;
  height: 13px;
}

.gk-topic-badge svg path,
.gk-topic-badge svg rect {
  stroke: #2c0a12;
}

.gk-level-badge {
  position: absolute;
  top: 16px;
  right: 16px;
  z-index: 2;
  padding: 6px 11px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.14);
  border: 1px solid rgba(255, 255, 255, 0.22);
  font-size: 7px;
  font-weight: 600;
  letter-spacing: .03em;
  color: #fff;
}

.gk-course-body {
  padding: 11px 17px 20px;
}

.gk-course-title {
  font-weight: 600;
  font-size: 16px;
  line-height: 1.3;
  color: var(--gk-cream);
  margin: 0 0 8px;
  min-height: 48px;
}

.gk-course-divider {
  height: 1px;
  background: linear-gradient(90deg, rgba(255, 207, 134, 0.25), transparent);
  margin-bottom: 10px;
}

.gk-course-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 11px;
  font-weight: 600;
  color: var(--gk-ink-soft);
  text-decoration: none;
}

.gk-course-link svg {
  width: 14px;
  height: 14px;
  transition: transform .25s ease;
}

.gk-course-card:hover .gk-course-link {
  color: var(--gk-orange-1);
}

.gk-course-card:hover .gk-course-link svg {
  transform: translateX(4px);
}

@media (prefers-reduced-motion: reduce) {
  .gk-courses-track {
    transition: none;
  }

  .gk-courses-badge-dot {
    animation: none;
  }
}

/* Registration Form */
/* 1. SPLIT SCREEN LAYOUT */
.gk-reg2-container {
  display: flex;
  /* min-height: 100vh; */
  margin-top: 75px;
}

/* LEFT SIDE - BRANDING & ANIMATION */
.gk-reg2-brand-side {
  flex: 0 0 45%;
  /* Left section ko 40% width par fix kiya */
  max-width: 50%;
  background: linear-gradient(135deg, #2c0f08 0%, #170804 100%);
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 60px;
  overflow: hidden;
}

@media (max-width: 991px) {
  .gk-reg2-brand-side {
    display: none;
  }
}

/* Animated Background Elements */
.gk-reg2-brand-bg {
  position: absolute;
  inset: 0;
  background-image: radial-gradient(rgba(255, 106, 0, 0.15) 1px, transparent 1px);
  background-size: 40px 40px;
  opacity: 0.5;
  z-index: 1;
}

.gk-reg2-shape {
  position: absolute;
  background: rgba(255, 255, 255, 0.02);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border: 1px solid rgba(255, 255, 255, 0.05);
  z-index: 2;
  animation: gkReg2Float linear infinite;
}

/* Original Shapes */
.gk-reg2-shape-1 {
  width: 300px;
  height: 300px;
  border-radius: 50%;
  top: -50px;
  left: -100px;
  box-shadow: inset 0 0 50px rgba(255, 106, 0, 0.2);
  animation-duration: 25s;
}

.gk-reg2-shape-2 {
  width: 400px;
  height: 400px;
  border-radius: 30px;
  bottom: -100px;
  right: -50px;
  transform: rotate(45deg);
  box-shadow: inset 0 0 60px rgba(255, 183, 0, 0.15);
  animation-duration: 30s;
  animation-direction: reverse;
}

.gk-reg2-shape-3 {
  width: 150px;
  height: 150px;
  border-radius: 50%;
  top: 40%;
  right: 20%;
  box-shadow: inset 0 0 30px rgba(255, 106, 0, 0.3);
  animation-duration: 15s;
  animation-timing-function: ease-in-out;
  animation-direction: alternate;
}

/* NEW SHAPES ADDED */
.gk-reg2-shape-4 {
  width: 200px;
  height: 200px;
  border: 2px dashed rgba(255, 106, 0, 0.3);
  border-radius: 50%;
  top: 15%;
  right: 40%;
  background: transparent;
  backdrop-filter: none;
  box-shadow: none;
  animation: gkReg2Spin 20s linear infinite;
  z-index: 1;
}

.gk-reg2-shape-5 {
  width: 120px;
  height: 120px;
  background: linear-gradient(135deg, rgba(255, 183, 0, 0.1), transparent);
  border-radius: 20px;
  bottom: 25%;
  left: 30%;
  transform: rotate(15deg);
  animation-duration: 12s;
  animation-direction: alternate;
  animation-timing-function: ease-in-out;
}

@keyframes gkReg2Float {
  0% {
    transform: translateY(0) rotate(0deg);
  }

  50% {
    transform: translateY(-30px) rotate(180deg);
  }

  100% {
    transform: translateY(0) rotate(360deg);
  }
}

@keyframes gkReg2Spin {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

.gk-reg2-brand-content {
  position: relative;
  z-index: 3;
  max-width: 500px;
}

.gk-reg2-brand-logo {
  font-size: 2.5rem;
  font-weight: 900;
  color: #ffffff;
  margin-bottom: 40px;
  letter-spacing: -1px;
}

.gk-reg2-brand-logo span {
  color: #ff6a00;
}

.gk-reg2-brand-title {
  font-size: 3.5rem;
  font-weight: 800;
  color: #ffffff;
  line-height: 1.1;
  margin-bottom: 20px;
}

.gk-reg2-brand-desc {
  font-size: 1.2rem;
  color: #ffecd9;
  line-height: 1.6;
}

/* RIGHT SIDE - THE FORM */
.gk-reg2-form-side {
  flex: 1;
  /* Form side ab baaki bacha 60% space lega */
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #f8fafc;
  /* padding: 6px 0px 24px; */
  position: relative;
  z-index: 1;
}

/* Form Wrapper - Now a solid Premium Card */
.gk-reg2-form-wrapper {
  width: 100%;
  /* max-width: 750px; */
  /* Form ki width badhakar 580px se 700px kar di hai */
  z-index: 2;
  position: relative;
  background: #ffffff;
  padding: 35px 35px;
  /* border-radius: 24px; */
  box-shadow: 0 20px 60px rgba(44, 15, 8, 0.08);
  overflow: hidden;
  /* Important for the top border */
}

/* THE ANIMATED BORDER TOP (Color flowing effect) */
.gk-reg2-form-wrapper::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 5px;
  /* Border thickness */
  /* Multi-color gradient for smooth transition */
  background: linear-gradient(90deg, #ff6a00, #ffb700, #ff0055, #ffb700, #ff6a00);
  background-size: 200% 100%;
  animation: gkReg2TopBorderFlow 3s linear infinite;
  z-index: 5;
}

@keyframes gkReg2TopBorderFlow {
  0% {
    background-position: 100% 0;
  }

  100% {
    background-position: 0% 0;
  }
}

/* =========================================
           MOBILE SPECIFIC STYLING
           ========================================= */
.gk-reg2-mobile-orb,
.gk-reg2-mobile-ring {
  display: none;
}

@media (max-width: 991px) {
  .gk-reg2-form-side {
    background-color: #ffffff;
    overflow: hidden;
    padding: 40px 15px;
  }

  .gk-reg2-form-wrapper {
    padding: 40px 25px;
    border-radius: 20px;
    box-shadow: none;
    /* Let the border shine */
  }

  /* Animated Gradient Border for Mobile */
  .gk-reg2-form-wrapper::before {
    content: '';
    position: absolute;
    inset: -2px;
    border-radius: 22px;
    background: linear-gradient(60deg, #ff6a00, transparent 30%, transparent 70%, #ffb700);
    background-size: 300% 300%;
    z-index: -1;
    animation: gkReg2SleekBorder 4s ease-in-out infinite alternate;
  }

  @keyframes gkReg2SleekBorder {
    0% {
      background-position: 0% 50%;
    }

    50% {
      background-position: 100% 50%;
    }

    100% {
      background-position: 0% 50%;
    }
  }

  /* Mobile Background Animations */
  .gk-reg2-mobile-orb {
    display: block;
    position: absolute;
    width: 250px;
    height: 250px;
    background: radial-gradient(circle, rgba(255, 106, 0, 0.1) 0%, rgba(255, 255, 255, 0) 70%);
    top: -50px;
    right: -50px;
    border-radius: 50%;
    z-index: 0;
    animation: gkReg2Float 8s infinite alternate ease-in-out;
  }

  .gk-reg2-mobile-ring {
    display: block;
    position: absolute;
    width: 200px;
    height: 200px;
    border: 2px dashed rgba(255, 183, 0, 0.2);
    border-radius: 50%;
    bottom: -80px;
    left: -50px;
    z-index: 0;
    animation: gkReg2Spin 20s linear infinite;
  }
}

/* Form Header */
.gk-reg2-header {
  margin-bottom: 30px;
  text-align: center;
}

.gk-reg2-badge {
  display: inline-block;
  background: rgba(255, 106, 0, 0.08);
  color: #ff6a00;
  padding: 6px 20px;
  border-radius: 50px;
  font-size: 0.85rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 2px;
  margin-bottom: 15px;
  border: 1px solid rgba(255, 106, 0, 0.15);
}

.gk-reg2-title {
  font-size: 2rem;
  font-weight: 900;
  color: #2c0f08;
  margin-bottom: 3px;
  letter-spacing: -0.5px;
  line-height: 1.2;
}

.gk-reg2-title span {
  background: linear-gradient(135deg, #ff6a00 0%, #ffb700 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  position: relative;
}

.gk-reg2-desc {
  font-size: 13px;
  color: #64748b;
  line-height: 1.5;
  margin: 0;
}

/* Premium Form Fields */
.gk-reg2-input-group {
  position: relative;
  margin-bottom: 16px;
}

/* Sleek Gradient Icons */
.gk-reg2-icon {
  position: absolute;
  top: 50%;
  left: 18px;
  transform: translateY(-50%);
  width: 22px;
  height: 22px;
  pointer-events: none;
  z-index: 2;
  transition: all 0.3s ease;
}

.gk-reg2-icon svg {
  width: 100%;
  height: 100%;
  /* Stroke color refers to the SVG gradient defined in HTML */
  stroke: url(#gk-reg-icon-grad);
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
  fill: none;
  transition: transform 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

.gk-reg2-input,
.gk-reg2-select {
  width: 100%;
  background-color: #f8fafc;
  border: 1px solid #e2e8f0;
  border-radius: 12px;
  padding: 16px 20px 16px 55px;
  /* Space for icon */
  font-size: 13px;
  color: #2c0f08;
  font-weight: 500;
  transition: all 0.3s ease;
  outline: none;
  appearance: none;
}

.gk-reg2-input::placeholder {
  color: #94a3b8;
  font-weight: 400;
}

/* Custom Dropdown Arrow */
.gk-reg2-select {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none' stroke='%23ff6a00' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 15px center;
  background-size: 18px;
  color: #64748b;
}

.gk-reg2-select:valid {
  color: #2c0f08;
}

/* Focus States - The Premium Glow */
.gk-reg2-input:focus,
.gk-reg2-select:focus {
  background-color: #ffffff;
  border-color: #ff6a00;
  box-shadow: 0 0 0 4px rgba(255, 106, 0, 0.1);
}

/* Icon Animation on Focus */
.gk-reg2-input:focus~.gk-reg2-icon svg,
.gk-reg2-select:focus~.gk-reg2-icon svg,
.gk-reg2-input-group:focus-within .gk-reg2-icon svg {
  transform: scale(1.15);
  filter: drop-shadow(0 2px 4px rgba(255, 106, 0, 0.4));
}

/* Password Eye Toggle */
.gk-reg2-eye-btn {
  position: absolute;
  top: 50%;
  right: 15px;
  transform: translateY(-50%);
  background: none;
  border: none;
  padding: 5px;
  cursor: pointer;
  z-index: 5;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.2s ease;
}

.gk-reg2-eye-btn:hover {
  transform: translateY(-50%) scale(1.1);
}

.gk-reg2-eye-btn svg {
  width: 20px;
  height: 20px;
  stroke: url(#gk-reg-icon-grad);
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
  fill: none;
}

/* Custom Checkbox */
.gk-reg2-checkbox-wrap {
  display: flex;
  align-items: flex-start;
  margin: 20px 0 15px 0;
  cursor: pointer;
  user-select: none;
}

.gk-reg2-checkbox-wrap input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}

.gk-reg2-checkmark {
  flex-shrink: 0;
  width: 22px;
  height: 22px;
  background-color: #f8fafc;
  border: 1px solid #cbd5e1;
  border-radius: 6px;
  margin-right: 12px;
  margin-top: 2px;
  position: relative;
  transition: all 0.2s ease;
}

.gk-reg2-checkbox-wrap:hover input~.gk-reg2-checkmark {
  border-color: #ff6a00;
}

.gk-reg2-checkbox-wrap input:checked~.gk-reg2-checkmark {
  background-color: #ff6a00;
  border-color: #ff6a00;
  box-shadow: 0 2px 8px rgba(255, 106, 0, 0.3);
}

.gk-reg2-checkmark:after {
  content: "";
  position: absolute;
  display: none;
  left: 7px;
  top: 3px;
  width: 6px;
  height: 12px;
  border: solid white;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}

.gk-reg2-checkbox-wrap input:checked~.gk-reg2-checkmark:after {
  display: block;
}

.gk-reg2-check-text {
  font-size: 0.9rem;
  color: #475569;
  line-height: 1.5;
}

.gk-reg2-check-text a {
  color: #ff6a00;
  font-weight: 600;
  text-decoration: none;
}

.gk-reg2-check-text a:hover {
  text-decoration: underline;
}

/* Submit Button */
.gk-reg2-btn {
  width: 100%;
  background: linear-gradient(135deg, #ff6a00 0%, #ff8c00 100%);
  color: #ffffff;
  border: none;
  border-radius: 12px;
  padding: 16px;
  font-size: 1.1rem;
  font-weight: 700;
  cursor: pointer;
  transition: all 0.3s ease;
  box-shadow: 0 10px 20px rgba(255, 106, 0, 0.2);
}

.gk-reg2-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 15px 25px rgba(255, 106, 0, 0.3);
}

.gk-reg2-btn:active {
  transform: translateY(0);
  box-shadow: 0 5px 10px rgba(255, 106, 0, 0.2);
}

/* Footer Login Link */
.gk-reg2-footer {
  text-align: center;
  margin-top: 20px;
}

.gk-reg2-footer p {
  font-size: 1rem;
  color: #475569;
  margin: 0;
  font-family: "Unbounded", sans-serif !important;
}

.gk-reg2-footer a {
  color: #2c0f08;
  font-weight: 700;
  text-decoration: none;
  margin-left: 5px;
  transition: color 0.3s ease;
}

.gk-reg2-footer a:hover {
  color: #ff6a00;
}

/* Grid specific tweaks */
.gk-reg2-row {
  display: flex;
  flex-wrap: wrap;
  margin-left: -10px;
  margin-right: -10px;
}

.gk-reg2-col {
  padding: 0 10px;
  width: 100%;
}

@media (min-width: 576px) {
  .gk-reg2-col-half {
    width: 50%;
  }
}

/* login pop up form */

/* Demo Trigger Button */
.gk-demo-trigger-btn {
  position: relative;
  z-index: 1;
}

/* ==========================================================================
           1. THE MODAL OVERLAY
           ========================================================================== */
.gk-login-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(15, 23, 42, 0.6);
  /* Slightly darker for contrast */
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;

  /* Hidden State */
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.4s ease, visibility 0.4s ease;
}

.gk-login-overlay.gk-active {
  opacity: 1;
  visibility: visible;
}

/* ==========================================================================
           2. RICH ACRYLIC GLASS MODAL BOX
           ========================================================================== */
.gk-login-modal {
  /* Rich Glass Effect (Mac OS Style) */
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.8) 0%, rgba(255, 255, 255, 0.4) 100%);
  backdrop-filter: blur(35px);
  -webkit-backdrop-filter: blur(35px);

  /* Multi-directional border for 3D glass edge */
  border-top: 1.5px solid rgba(255, 255, 255, 0.9);
  border-left: 1.5px solid rgba(255, 255, 255, 0.9);
  border-right: 1px solid rgba(255, 255, 255, 0.3);
  border-bottom: 1px solid rgba(255, 255, 255, 0.3);

  /* Thick inner highlight and deep outer shadow */
  box-shadow:
    0 30px 60px rgba(0, 0, 0, 0.25),
    inset 0 4px 10px rgba(255, 255, 255, 0.7);

  width: 100%;
  max-width: 450px;
  border-radius: 28px;
  position: relative;
  overflow: hidden;

  /* Animation */
  transform: scale(0.95) translateY(20px);
  opacity: 0;
  transition: all 0.5s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

.gk-login-overlay.gk-active .gk-login-modal {
  transform: scale(1) translateY(0);
  opacity: 1;
}

/* The Animated Top Border is BACK */
.gk-login-modal::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 5px;
  background: linear-gradient(90deg, #ff6a00, #ffb700, #ff0055, #ffb700, #ff6a00);
  background-size: 200% 100%;
  animation: gkLoginBorderFlow 3s linear infinite;
  z-index: 10;
}

@keyframes gkLoginBorderFlow {
  0% {
    background-position: 100% 0;
  }

  100% {
    background-position: 0% 0;
  }
}

/* Close Button */
.gk-login-close {
  position: absolute;
  top: 22px;
  right: 22px;
  background: rgba(255, 255, 255, 0.6);
  border: 1px solid rgba(255, 255, 255, 0.8);
  width: 36px;
  height: 36px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  color: #475569;
  transition: all 0.3s ease;
  z-index: 15;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05);
}

.gk-login-close:hover {
  background: #ffffff;
  color: #ff6a00;
  transform: rotate(90deg) scale(1.1);
  box-shadow: 0 5px 15px rgba(255, 106, 0, 0.2);
}

.gk-login-close svg {
  width: 18px;
  height: 18px;
  stroke: currentColor;
  stroke-width: 2.5;
  stroke-linecap: round;
  stroke-linejoin: round;
}

/* Reduced padding to decrease overall height */
.gk-login-content {
  padding: 25px 30px 25px 30px;
  position: relative;
  z-index: 5;
}

@media (max-width: 576px) {
  .gk-login-content {
    padding: 35px 25px 25px 25px;
  }
}

/* ==========================================================================
           3. NEW 3D ICON (Shield + User)
           ========================================================================== */
.gk-login-3d-wrap {
  /* Reduced icon size and margin */
  width: 80px;
  height: 80px;
  margin: 0 auto 15px auto;
  position: relative;
  animation: gkLoginFloat 4s ease-in-out infinite;
}

@keyframes gkLoginFloat {

  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-10px);
  }
}

.gk-login-3d-wrap svg {
  width: 100%;
  height: 100%;
  filter: drop-shadow(0 15px 15px rgba(255, 106, 0, 0.3));
}

/* Reduced header margin */
.gk-login-header {
  text-align: center;
  margin-bottom: 25px;
}

.gk-login-badge {
  display: inline-block;
  background: rgba(255, 106, 0, 0.15);
  color: #7a3300;
  padding: 5px 15px;
  border-radius: 50px;
  font-size: 0.75rem;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 2px;
  margin-bottom: 5px;
  border: 1px solid rgba(255, 106, 0, 0.25);
  box-shadow: inset 0 1px 2px rgba(255, 255, 255, 0.5);
}

.gk-login-title {
  font-size: 1.8rem;
  font-weight: 900;
  color: #0f172a;
  margin: 0 0 8px 0;
  letter-spacing: -0.5px;
  text-shadow: 0 2px 4px rgba(255, 255, 255, 0.5);
}

.gk-login-title span {
  background: linear-gradient(135deg, #ff6a00 0%, #cc5500 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  /* FIX: Hataya gaya text-shadow taaki gradient text clear dikhe */
  text-shadow: none;
  display: inline-block;
}

.gk-login-desc {
  color: #475569;
  font-size: 0.95rem;
  margin: 0;
  font-weight: 600;
}

/* ==========================================================================
           4. PREMIUM FROSTED INPUTS
           ========================================================================== */
/* Reduced margin between inputs */
.gk-login-group {
  position: relative;
  margin-bottom: 16px;
}

.gk-login-icon {
  position: absolute;
  top: 35%;
  left: 18px;
  transform: translateY(-50%);
  width: 22px;
  height: 22px;
  pointer-events: none;
  z-index: 2;
}

.gk-login-icon svg {
  width: 100%;
  height: 100%;
  fill: none;
  stroke: #ff6a00;
  /* FIXED: Removed gradient url(), added solid orange */
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
  transition: transform 0.3s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

.gk-login-input {
  width: 100%;
  /* Cleaner Frosted Input Background */
  background-color: rgba(255, 255, 255, 0.75);
  border: 1.5px solid rgba(255, 255, 255, 0.9);
  border-radius: 16px;
  padding: 16px 20px 16px 52px;
  font-size: 1rem;
  color: #0f172a;
  font-weight: 600;
  transition: all 0.3s ease;
  outline: none;
  box-shadow: inset 0 2px 5px rgba(0, 0, 0, 0.03);
}

.gk-login-input::placeholder {
  color: #94a3b8;
  font-weight: 500;
}

.gk-login-input:focus {
  background-color: #ffffff;
  border-color: #ff6a00;
  box-shadow: 0 0 0 4px rgba(255, 106, 0, 0.15), inset 0 2px 4px rgba(0, 0, 0, 0.02);
}

.gk-login-group:focus-within .gk-login-icon svg {
  transform: scale(1.15);
  filter: drop-shadow(0 2px 4px rgba(255, 106, 0, 0.3));
}

/* Eye Button */
.gk-login-eye {
  position: absolute;
  top: 37%;
  right: 15px;
  transform: translateY(-50%);
  background: none;
  border: none;
  padding: 5px;
  cursor: pointer;
  z-index: 5;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: transform 0.2s ease;
}

.gk-login-eye:hover {
  transform: translateY(-50%) scale(1.1);
}

.gk-login-eye svg {
  width: 20px;
  height: 20px;
  stroke: #ff6a00;
  /* FIXED: Removed gradient url(), added solid orange */
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
  fill: none;
}

/* Forgot Password */
.gk-login-forgot {
  display: block;
  text-align: right;
  margin-top: -8px;
  margin-bottom: 20px;
}

.gk-login-forgot a {
  font-size: 0.85rem;
  color: #7a3300;
  font-weight: 700;
  text-decoration: none;
  transition: all 0.2s;
}

.gk-login-forgot a:hover {
  color: #cc5500;
  text-decoration: underline;
}

/* ==========================================================================
           5. ANIMATED CONTINUOUS SHINE BUTTON
           ========================================================================== */
.gk-login-btn {
  width: 100%;
  background: linear-gradient(135deg, #ff6a00 0%, #ffb700 100%);
  color: #ffffff;
  border: none;
  border-radius: 16px;
  padding: 14px;
  font-size: 1.1rem;
  font-weight: 800;
  cursor: pointer;
  position: relative;
  overflow: hidden;
  box-shadow: 0 10px 20px rgba(255, 106, 0, 0.25);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  animation: gkLoginBtnPulse 3s infinite alternate;
}

/* Continuous Pulse Shadow */
@keyframes gkLoginBtnPulse {
  0% {
    box-shadow: 0 10px 20px rgba(255, 106, 0, 0.3);
  }

  100% {
    box-shadow: 0 18px 35px rgba(255, 106, 0, 0.5);
  }
}

/* Continuous Sweeping Light (Shine Effect) */
.gk-login-btn::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 50%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.5), transparent);
  transform: skewX(-25deg);
  animation: gkLoginShine 4s infinite;
}

@keyframes gkLoginShine {
  0% {
    left: -100%;
  }

  20% {
    left: 200%;
  }

  100% {
    left: 200%;
  }
}

.gk-login-btn:hover {
  transform: translateY(-2px);
}

.gk-login-btn:active {
  transform: translateY(1px);
}

/* Footer */
.gk-login-footer {
  /* Reduced footer margin */
  text-align: center;
  margin-top: 20px;
  padding-top: 15px;
  border-top: 1px solid rgba(255, 255, 255, 0.5);
}

.gk-login-footer p {
  font-size: 0.9rem;
  color: #475569;
  margin: 0;
  font-weight: 600;
  text-shadow: 0 1px 1px rgba(255, 255, 255, 0.5);
}

.gk-login-footer a {
  color: #0f172a;
  font-weight: 800;
  text-decoration: none;
  margin-left: 5px;
  transition: color 0.3s ease;
}

.gk-login-footer a:hover {
  color: #ff6a00;
}

/* Auto load call back pop up */
.gk-callback-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(15, 23, 42, 0.7);
  /* Dark semi-transparent */
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  z-index: 99999;
  /* Highest z-index */
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 20px;

  /* Hidden State */
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.5s ease, visibility 0.5s ease;
}

.gk-callback-overlay.gk-callback-active {
  opacity: 1;
  visibility: visible;
}

/* 2. THE MODAL CARD */
.gk-callback-card {
  /* Premium Glassmorphism */
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.8) 0%, rgba(255, 255, 255, 0.3) 100%);
  backdrop-filter: blur(35px);
  -webkit-backdrop-filter: blur(35px);
  border-top: 1.5px solid rgba(255, 255, 255, 0.9);
  border-left: 1.5px solid rgba(255, 255, 255, 0.9);
  border-right: 1px solid rgba(255, 255, 255, 0.3);
  border-bottom: 1px solid rgba(255, 255, 255, 0.3);

  width: 100%;
  max-width: 450px;
  border-radius: 28px;
  position: relative;
  box-shadow:
    0 40px 80px rgba(0, 0, 0, 0.25),
    inset 0 4px 10px rgba(255, 255, 255, 0.6);
  overflow: hidden;

  /* Animation Setup */
  transform: scale(0.85) translateY(30px);
  opacity: 0;
  transition: all 0.5s cubic-bezier(0.34, 1.56, 0.64, 1);
  /* Bouncy effect */
}

.gk-callback-overlay.gk-callback-active .gk-callback-card {
  transform: scale(1) translateY(0);
  opacity: 1;
}

/* Top Decorative Accent */
.gk-callback-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 8px;
  background: linear-gradient(90deg, #ffb700, #ff6a00, #ffb700);
  background-size: 200% 100%;
  animation: gkCallbackShine 3s linear infinite;
}

@keyframes gkCallbackShine {
  0% {
    background-position: 100% 0;
  }

  100% {
    background-position: 0% 0;
  }
}

/* 3. CLOSE BUTTON */
.gk-callback-close {
  position: absolute;
  top: 20px;
  right: 20px;
  background: #f8fafc;
  border: 1px solid #e2e8f0;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  color: #64748b;
  transition: all 0.3s ease;
  z-index: 10;
}

.gk-callback-close:hover {
  background: #fee2e2;
  color: #ef4444;
  border-color: #fca5a5;
  transform: rotate(90deg);
}

.gk-callback-close svg {
  width: 18px;
  height: 18px;
  stroke: currentColor;
  stroke-width: 2.5;
  stroke-linecap: round;
  stroke-linejoin: round;
}

/* 4. CONTENT WRAPPER */
.gk-callback-content {
  padding: 40px 35px 35px 35px;
}

@media (max-width: 576px) {
  .gk-callback-content {
    padding: 35px 25px 30px 25px;
  }
}

/* Header / 3D Icon Area */
.gk-callback-header {
  text-align: center;
  margin-bottom: 25px;
}

.gk-callback-icon-wrap {
  width: 80px;
  height: 80px;
  margin: 0 auto 15px auto;
  position: relative;
}

/* Animated rings behind the icon */
.gk-callback-icon-wrap::before,
.gk-callback-icon-wrap::after {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: 50%;
  border: 2px solid #ff6a00;
  opacity: 0;
  animation: gkCallbackRipple 2.5s infinite cubic-bezier(0.215, 0.61, 0.355, 1);
}

.gk-callback-icon-wrap::after {
  animation-delay: 1.25s;
}

@keyframes gkCallbackRipple {
  0% {
    transform: scale(0.8);
    opacity: 0.8;
  }

  100% {
    transform: scale(1.6);
    opacity: 0;
  }
}

.gk-callback-icon {
  width: 100%;
  height: 100%;
  background: linear-gradient(135deg, #ffffff 0%, #fff1e6 100%);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  z-index: 2;
  box-shadow: 0 10px 20px rgba(255, 106, 0, 0.15);
  border: 1px solid rgba(255, 106, 0, 0.1);
}

.gk-callback-icon svg {
  width: 40px;
  height: 40px;
  fill: #ff6a00;
  filter: drop-shadow(0 3px 5px rgba(255, 106, 0, 0.3));
  animation: gkCallbackRing 4s ease-in-out infinite;
}

@keyframes gkCallbackRing {

  0%,
  100% {
    transform: rotate(0);
  }

  5%,
  15% {
    transform: rotate(-15deg);
  }

  10%,
  20% {
    transform: rotate(15deg);
  }

  25% {
    transform: rotate(0);
  }
}

.gk-callback-title {
  font-size: 1.8rem;
  font-weight: 900;
  color: #0f172a;
  margin: 0;
  letter-spacing: -0.5px;
}

.gk-callback-title span {
  color: #d65900;
}

/* 5. FORM FIELD */
.gk-callback-input-group {
  position: relative;
  margin-bottom: 15px;
}

.gk-callback-input-icon {
  position: absolute;
  top: 50%;
  left: 18px;
  transform: translateY(-50%);
  width: 22px;
  height: 22px;
  pointer-events: none;
  display: flex;
  align-items: center;
  justify-content: center;
}

.gk-callback-input-icon svg {
  width: 100%;
  height: 100%;
  fill: none;
  stroke: #ff6a00;
  stroke-width: 2;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.gk-callback-input {
  width: 100%;
  /* Frosted glass input to match card */
  background-color: rgba(255, 255, 255, 0.6);
  border: 2px solid rgba(255, 255, 255, 0.9);
  border-radius: 16px;
  padding: 16px 20px 16px 52px;
  font-size: 1rem;
  color: #0f172a;
  font-weight: 600;
  transition: all 0.3s ease;
  outline: none;
  box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.02);
}

.gk-callback-input::placeholder {
  color: #94a3b8;
  font-weight: 500;
}

.gk-callback-input:focus {
  background-color: #ffffff;
  border-color: #ff6a00;
  box-shadow: 0 0 0 4px rgba(255, 106, 0, 0.15);
}

/* 6. FEATURES LIST */
.gk-callback-features {
  list-style: none;
  padding: 0;
  margin: 0 0 15px 0;
}

.gk-callback-features li {
  display: flex;
  align-items: center;
  font-size: 0.95rem;
  color: #334155;
  font-weight: 600;
  margin-bottom: 7px;
  /* Transparent glass list items */
  background: rgb(255 203 155 / 30%);
  padding: 10px 15px;
  border-radius: 12px;
  border: 1px solid rgba(255, 255, 255, 0.6);
}

.gk-callback-check {
  flex-shrink: 0;
  width: 20px;
  height: 20px;
  background: #10b981;
  /* Success Green */
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-right: 12px;
  box-shadow: 0 3px 6px rgba(16, 185, 129, 0.2);
}

.gk-callback-check svg {
  width: 12px;
  height: 12px;
  stroke: #ffffff;
  stroke-width: 3;
  stroke-linecap: round;
  stroke-linejoin: round;
  fill: none;
}

/* 7. TIMING NOTE (Redesigned) */
.gk-callback-timing {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 15px;
  /* Premium highlighted note */
  background: linear-gradient(90deg, rgba(255, 106, 0, 0.08), rgba(255, 255, 255, 0.4));
  padding: 14px 18px;
  border-radius: 0 16px 16px 0;
  border-left: 4px solid #ff6a00;
  margin-bottom: 25px;
  position: relative;
  box-shadow: 0 4px 15px rgba(255, 106, 0, 0.05);
  backdrop-filter: blur(10px);
}

.gk-callback-timing-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  background: #ffffff;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  box-shadow: 0 4px 10px rgba(255, 106, 0, 0.2);
  flex-shrink: 0;
}

.gk-callback-timing-icon svg {
  width: 18px;
  height: 18px;
  fill: none;
  stroke: #ff6a00;
  stroke-width: 2.5;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.gk-callback-timing p {
  margin: 0;
  font-size: 0.85rem;
  color: #334155;
  font-weight: 500;
  line-height: 1.4;
}

.gk-callback-timing p span {
  color: #ff6a00;
  font-weight: 800;
  display: inline-block;
  font-size: 0.95rem;
}

/* 8. SUBMIT BUTTON */
.gk-callback-btn {
  width: 100%;
  background: linear-gradient(135deg, #ff6a00 0%, #ffb700 100%);
  color: #ffffff;
  border: none;
  border-radius: 16px;
  padding: 16px;
  font-size: 1.1rem;
  font-weight: 800;
  cursor: pointer;
  position: relative;
  overflow: hidden;
  box-shadow: 0 10px 25px rgba(255, 106, 0, 0.25);
  transition: all 0.3s ease;
  text-transform: uppercase;
  letter-spacing: 1px;
}

.gk-callback-btn::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 50%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.4), transparent);
  transform: skewX(-25deg);
  animation: gkCallbackBtnShine 3s infinite;
}

@keyframes gkCallbackBtnShine {
  0% {
    left: -100%;
  }

  20% {
    left: 200%;
  }

  100% {
    left: 200%;
  }
}

.gk-callback-btn:hover {
  transform: translateY(-3px);
  box-shadow: 0 15px 35px rgba(255, 106, 0, 0.35);
}

.gk-callback-btn:active {
  transform: translateY(1px);
}

/* cart css */

.gk-cart-btn {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  margin-right: 19px;
  border-radius: 50%;
  background: #ffffff;
  text-decoration: none;
  outline: none;

  /* Clean orange tinted shadow for premium glow */
  box-shadow:
    0 10px 25px rgba(255, 106, 0, 0.15),
    inset 0 -3px 5px rgba(0, 0, 0, 0.03);
  border: 1px solid rgba(255, 106, 0, 0.1);

  cursor: pointer;
  transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);

  /* Stationary Background Glow & Color Change Animation */
  animation: gkCartGlowBg 2.5s infinite alternate ease-in-out;
  z-index: 10;
}

/* Stationary Animation: Background tint and shadow glow (No Movement) */
@keyframes gkCartGlowBg {
  0% {
    background-color: #ffffff;
    box-shadow: 0 5px 15px rgba(255, 106, 0, 0.1), inset 0 -2px 4px rgba(0, 0, 0, 0.02);
    border-color: rgba(255, 106, 0, 0.1);
  }

  100% {
    background-color: #fff2e8;
    /* Soft warm orange glow */
    box-shadow: 0 12px 30px rgba(255, 106, 0, 0.35), inset 0 -2px 4px rgba(0, 0, 0, 0.02);
    border-color: rgba(255, 106, 0, 0.3);
  }
}

/* Hover on Wrapper: Pause animation, push up slightly, fix colors */
.gk-cart-btn:hover {
  animation-play-state: paused;
  transform: translateY(-2px) scale(1.05);
  box-shadow:
    0 15px 35px rgba(255, 106, 0, 0.35),
    inset 0 -2px 5px rgba(0, 0, 0, 0.05);
  background-color: #ffffff;
  border-color: rgba(255, 106, 0, 0.4);
}

/* 2. THE CART ICON (Perfectly Centered & Sized) */
.gk-cart-icon {
  width: 23px;
  height: 23px;
  /* Drop shadow specifically on the SVG path */
  filter: drop-shadow(0px 3px 3px rgba(255, 106, 0, 0.3));
  transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
}

/* Interactive Hover Animation on the Icon itself */
.gk-cart-btn:hover .gk-cart-icon {
  /* Cart does a "Pop & Wheelie" effect */
  transform: scale(1.15) rotate(-10deg) translateX(2px);
  filter: drop-shadow(0px 6px 6px rgba(255, 106, 0, 0.4));
}

/* 3. NOTIFICATION BADGE (Completely Outside the Cart to prevent hiding) */
.gk-cart-badge {
  position: absolute;
  /* Using translate to push it exactly to the outer top-right edge */
  top: 0;
  right: 0;
  transform: translate(25%, -25%);

  /* Rich Orange Gradient */
  background: linear-gradient(135deg, #ffb700 0%, #ff6a00 100%);
  color: #ffffff;
  font-family: system-ui, -apple-system, sans-serif;
  font-size: 12px;
  font-weight: 900;

  /* Perfect Circle */
  height: 22px;
  min-width: 22px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;

  /* Thick white border cuts out the button behind it, looking highly premium */
  border: 3px solid #ffffff;

  /* Glowing shadow */
  box-shadow: 0 5px 12px rgba(255, 106, 0, 0.5);

  /* Continuous Pulsing heartbeat animation */
  animation: gkBadgePulse 2s infinite alternate;
  z-index: 20;
  user-select: none;
}

/* Heartbeat Pulse for the Number */
@keyframes gkBadgePulse {
  0% {
    transform: translate(25%, -25%) scale(1);
    box-shadow: 0 4px 8px rgba(255, 106, 0, 0.4);
  }

  100% {
    transform: translate(25%, -25%) scale(1.1);
    box-shadow: 0 8px 18px rgba(255, 106, 0, 0.6);
  }
}

/* Stops pulse on hover to keep focus on the cart animation */
.gk-cart-btn:hover .gk-cart-badge {
  animation-play-state: paused;
  transform: translate(25%, -25%) scale(1.1);
}

/* terms and condition */
.gk-legal-page {
  --gk-maroon-950: #1c0509;
  --gk-maroon-800: #3d0f1c;
  --gk-orange-1: #ff8a1e;
  --gk-orange-2: #ff5e0e;
  --gk-gold: #ffcf86;
  --gk-cream: #fff8ef;
  --gk-text: #3a2418;
  --gk-text-soft: #7a6a60;
  color: var(--gk-text);
  background: var(--gk-cream);
}

.gk-legal-page *,
.gk-legal-page *::before,
.gk-legal-page *::after {
  box-sizing: border-box;
}

.gk-legal-page a {
  text-decoration: none;
}

.gk-legal-page ul {
  list-style: disc;
}

/* ---------- banner (div, not <header>) ---------- */
.gk-legal-banner {
  background:
    radial-gradient(circle at 15% 20%, rgba(255, 138, 30, 0.25), transparent 45%),
    radial-gradient(circle at 85% 10%, rgba(255, 207, 134, 0.18), transparent 40%),
    linear-gradient(160deg, var(--gk-maroon-950), var(--gk-maroon-800));
  padding: 72px 24px 56px;
  text-align: center;
  color: var(--gk-cream);
  margin-top: 75px;
}

.gk-legal-banner-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 7px 18px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.06);
  border: 1px solid rgba(255, 207, 134, 0.3);
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.1em;
  margin-bottom: 18px;
}

.gk-legal-banner-title {
  font-weight: 700;
  font-size: clamp(32px, 5vw, 48px);
  margin: 0 0 10px;
  background: linear-gradient(100deg, var(--gk-gold), var(--gk-orange-1));
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

.gk-legal-banner-sub {
  color: #e9c9b8;
  font-size: 15px;
  margin: 0;
}

/* ---------- layout: simple full-width column ---------- */
.gk-legal-shell {
  max-width: 1300px;
  margin: 0 auto;
  padding: 30px 0 40px;
}

/* ---------- main content ---------- */
.gk-legal-card {
  background: #ffffff;
  border-radius: 22px;
  border: 1px solid #f0ddc9;
  padding: 44px 48px;
  box-shadow: 0 20px 50px -30px rgba(60, 20, 10, 0.25);
}

@media (max-width: 640px) {
  .gk-legal-card {
    padding: 28px 20px;
  }
}

.gk-legal-section {
  padding-top: 18px;
  margin-top: 18px;
  border-top: 1px solid #f4e6d6;
  scroll-margin-top: 24px;
  padding-bottom: 2px;
}

.gk-legal-section:first-child {
  border-top: none;
  margin-top: 0;
  padding-top: 0;
  padding-bottom: 1px;
}

.gk-legal-section-title {
  font-weight: 600;
  font-size: 24px;
  color: var(--gk-maroon-950);
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 0 0 18px;
}

.gk-legal-section-title::before {
  content: "";
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--gk-orange-2), var(--gk-orange-1));
  flex: none;
}

.gk-legal-sub-title {
  font-weight: 600;
  font-size: 16.5px;
  color: var(--gk-orange-2);
  margin: 22px 0 10px;
}

.gk-legal-para {
  font-size: 14.5px;
  line-height: 1.75;
  color: var(--gk-text);
  margin: 0 0 12px;
}

.gk-legal-para a {
  color: var(--gk-orange-2);
  font-weight: 600;
}

.gk-legal-list {
  margin: 0 0 14px;
  padding-left: 20px;
}

.gk-legal-list li {
  font-size: 14.5px;
  line-height: 1.75;
  margin-bottom: 6px;
}

.gk-legal-list li::marker {
  color: var(--gk-orange-2);
}

/* "Legal Reference" callout boxes */
.gk-legal-ref-box {
  background: #fff6ec;
  border-left: 3px solid var(--gk-orange-1);
  border-radius: 10px;
  padding: 14px 18px;
  margin: 14px 0 18px;
}

.gk-legal-ref-label {
  font-size: 11.5px;
  font-weight: 700;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  color: var(--gk-orange-2);
  margin-bottom: 6px;
}

.gk-legal-ref-box .gk-legal-para,
.gk-legal-ref-box .gk-legal-list li {
  font-size: 13.5px;
  color: var(--gk-text-soft);
}

.gk-legal-ref-box .gk-legal-list {
  padding-left: 18px;
  margin-bottom: 0;
}

.gk-legal-note-box {
  background: #fdf1e2;
  border: 1px dashed #ffcf86;
  border-radius: 12px;
  padding: 16px 20px;
  font-size: 13.5px;
  color: var(--gk-text-soft);
  margin-top: 10px;
}

.gk-legal-note-box strong {
  color: var(--gk-text);
}

/* ---------- back to top ---------- */
.gk-legal-top-btn {
  position: fixed;
  bottom: 26px;
  right: 26px;
  width: 46px;
  height: 46px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--gk-orange-2), var(--gk-orange-1));
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 12px 26px -8px rgba(255, 94, 14, 0.55);
  opacity: 0;
  visibility: hidden;
  transform: translateY(10px);
  transition: opacity .25s ease, transform .25s ease, visibility .25s ease;
  z-index: 50;
  border: none;
  cursor: pointer;
}

.gk-legal-top-btn.gk-legal-show {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}

/* ---------- contact strip (address / phone / website) ---------- */
.gk-legal-contact-box {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
  background: #fff6ec;
  border: 1px solid #f0ddc9;
  border-radius: 14px;
  padding: 18px 20px;
  margin-bottom: 8px;
}

.gk-legal-contact-item {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  font-size: 13.5px;
  color: var(--gk-text);
  flex: 1 1 220px;
}

.gk-legal-contact-icon {
  flex: none;
  width: 30px;
  height: 30px;
  border-radius: 9px;
  background: linear-gradient(135deg, var(--gk-orange-2), var(--gk-orange-1));
  display: flex;
  align-items: center;
  justify-content: center;
}

.gk-legal-contact-item a {
  color: var(--gk-orange-2);
  font-weight: 600;
}

/* GK Story */
.igs-avatar {
  --igs-size: 49px;
  margin-right: 10px;
  width: var(--igs-size);
  height: var(--igs-size);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  position: relative;
  user-select: none;
}

/* ghumti hui gradient ring — "story lagi hai" wala indicator.
   Sirf border/ring rotate hoga, andar wali photo static rahegi. */
.igs-ring {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  padding: 3px;
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  background: transparent;
}

/* rotating color sirf is layer par hai, ye avatar-inner ke peeche rehta hai */
.igs-ring::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background: conic-gradient(from 0deg,
      #feda75,
      #fa7e1e,
      #d62976,
      #962fbf,
      #4f5bd5,
      #feda75);
  animation: igs-ring-spin 2.4s linear infinite;
}

/* jis story ko dekh liya, uski ring gray ho jaye (seen state) */
.igs-avatar.igs-seen .igs-ring::before {
  background: #d3d3d3;
  animation: none;
}

@keyframes igs-ring-spin {
  to {
    transform: rotate(360deg);
  }
}

.igs-avatar-inner {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  background: #fff;
  padding: 2px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  z-index: 1;
  /* avatar-inner hamesha upar rahega, isliye photo static dikhegi */
}

.igs-avatar-img {
  width: 85%;
  height: 85%;
  border-radius: 50%;
  object-fit: cover;
  display: block;
}

.igs-avatar-label {
  position: absolute;
  bottom: -20px;
  left: 50%;
  transform: translateX(-50%);
  font-size: 12px;
  color: #262626;
  white-space: nowrap;
  max-width: 80px;
  overflow: hidden;
  text-overflow: ellipsis;
}

/* =========================================================
   MODAL / VIEWER
   ========================================================= */

.igs-modal-overlay {
  position: fixed;
  inset: 0;
  background: #000;
  z-index: 99999;
  display: none;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: opacity 0.2s ease;
}

.igs-modal-overlay.igs-open {
  display: flex;
  opacity: 1;
}

.igs-story-stage {
  position: relative;
  width: 100%;
  max-width: 420px;
  height: 100%;
  max-height: 100vh;
  background: #000;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}

@media (min-width: 640px) {
  .igs-story-stage {
    max-height: 90vh;
    border-radius: 12px;
    margin: auto;
  }
}

/* segmented progress bars, instagram jaisa */
.igs-progress-row {
  position: absolute;
  top: 8px;
  left: 8px;
  right: 8px;
  display: flex;
  gap: 4px;
  z-index: 5;
}

.igs-progress-track {
  flex: 1;
  height: 2.5px;
  background: rgba(255, 255, 255, 0.35);
  border-radius: 2px;
  overflow: hidden;
}

.igs-progress-fill {
  height: 100%;
  width: 0%;
  background: #fff;
  border-radius: 2px;
}

.igs-progress-track.igs-fill-done .igs-progress-fill {
  width: 100% !important;
}

.igs-progress-fill.igs-animating {
  transition: width linear;
}

/* header: avatar, name, close */
.igs-story-header {
  position: absolute;
  top: 18px;
  left: 12px;
  right: 12px;
  display: flex;
  align-items: center;
  gap: 10px;
  z-index: 5;
}

.igs-header-avatar {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  object-fit: cover;
  border: 1px solid rgba(255, 255, 255, 0.6);
}

.igs-header-name {
  color: #fff;
  font-size: 14px;
  font-weight: 600;
  text-shadow: 0 1px 3px rgba(0, 0, 0, 0.5);
  flex: 1;
}

.igs-header-time {
  color: rgba(255, 255, 255, 0.8);
  font-size: 12px;
  text-shadow: 0 1px 3px rgba(0, 0, 0, 0.5);
}

.igs-close-btn {
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: transparent;
  border: none;
  color: #fff;
  font-size: 26px;
  line-height: 1;
  cursor: pointer;
  padding: 0;
}

/* media area */
.igs-media-wrap {
  flex: 1;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #000;
}

.igs-media {
  max-width: 100%;
  max-height: 100%;
  width: 100%;
  height: 100%;
  object-fit: contain;
  background: #000;
  display: none;
}

.igs-media.igs-active {
  display: block;
}

/* tap zones for prev/next */
.igs-tap-zone {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 33%;
  z-index: 4;
  cursor: pointer;
}

.igs-tap-zone.igs-tap-prev {
  left: 0;
}

.igs-tap-zone.igs-tap-next {
  right: 0;
}

/* left/right arrow buttons (desktop convenience, optional) */
.igs-nav-arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  z-index: 6;
  background: rgba(0, 0, 0, 0.35);
  border: none;
  color: #fff;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  font-size: 18px;
  cursor: pointer;
  display: none;
  align-items: center;
  justify-content: center;
}

@media (min-width: 640px) {
  .igs-nav-arrow {
    display: flex;
  }
}

.igs-nav-arrow.igs-arrow-left {
  left: -48px;
}

.igs-nav-arrow.igs-arrow-right {
  right: -48px;
}

/* loading spinner while video/image buffers */
.igs-loader {
  position: absolute;
  width: 34px;
  height: 34px;
  border: 3px solid rgba(255, 255, 255, 0.3);
  border-top-color: #fff;
  border-radius: 50%;
  animation: igs-spin 0.8s linear infinite;
  z-index: 3;
  display: none;
}

.igs-loader.igs-show {
  display: block;
}

@keyframes igs-spin {
  to {
    transform: rotate(360deg);
  }
}

/* pause hint when user holds tap */
.igs-modal-overlay.igs-paused .igs-progress-fill.igs-animating {
  animation-play-state: paused;
}

@media (prefers-reduced-motion: reduce) {
  .igs-ring {
    animation: none;
  }
}

/* Preloader css */

.gk-orbit-wrapper {
  position: fixed;
  inset: 0;
  width: 100%;
  height: 100vh;
  background-color: #f8fafc;
  /* Clean Premium White/Gray */
  /* Subtle grid background for tech feel */
  background-image:
    linear-gradient(rgba(255, 106, 0, 0.03) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 106, 0, 0.03) 1px, transparent 1px);
  background-size: 30px 30px;
  z-index: 999999;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;

  /* Smooth Exit Animation */
  transition: opacity 0.6s cubic-bezier(0.16, 1, 0.3, 1), visibility 0.6s;
}

/* Class added via JS to hide the loader smoothly */
.gk-orbit-hide {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}

.gk-orbit-spinner-box {
  position: relative;
  width: 180px;
  height: 180px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 30px;
}

/* Center Favicon */
.gk-orbit-logo {
  position: absolute;
  z-index: 10;
  width: 65px;
  height: 65px;
  background: #ffffff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 10px 25px rgba(255, 106, 0, 0.15), inset 0 2px 5px rgba(0, 0, 0, 0.02);
  /* Gentle breathing animation */
  animation: gkOrbitPulse 2s ease-in-out infinite alternate;
}

.gk-orbit-logo img {
  width: 45px;
  height: auto;
  filter: drop-shadow(0 3px 5px rgba(255, 106, 0, 0.2));
}

/* Base styling for all rings */
.gk-orbit-ring {
  position: absolute;
  border-radius: 50%;
  border: 3px solid transparent;
  /* Ensures borders don't squish */
  box-sizing: border-box;
}

/* Outer Ring (Slow, Clockwise, Solid with a gap) */
.gk-orbit-ring-1 {
  width: 160px;
  height: 160px;
  /* Faded base track */
  border: 2px solid rgba(255, 106, 0, 0.1);
  /* Active glowing edge */
  border-top: 3px solid #ff6a00;
  border-right: 3px solid #ff6a00;
  filter: drop-shadow(0 0 8px rgba(255, 106, 0, 0.4));
  animation: gkOrbitSpin 2.5s cubic-bezier(0.68, -0.15, 0.265, 1.15) infinite;
}

/* Middle Ring (Medium speed, Counter-Clockwise, Dashed) */
.gk-orbit-ring-2 {
  width: 125px;
  height: 125px;
  border: 2px dashed rgba(255, 183, 0, 0.3);
  border-bottom: 3px solid #ffb700;
  border-left: 3px solid #ffb700;
  animation: gkOrbitSpin 1.8s linear infinite reverse;
}

/* Inner Ring (Fast, Clockwise, Double glowing accents) */
.gk-orbit-ring-3 {
  width: 95px;
  height: 95px;
  border-top: 3px solid #cc5500;
  border-bottom: 3px solid #cc5500;
  filter: drop-shadow(0 0 5px rgba(204, 85, 0, 0.3));
  animation: gkOrbitSpin 1.2s linear infinite;
}

/* Glowing Modern Text */
.gk-orbit-text {
  font-size: 1.2rem;
  font-weight: 800;
  color: #1e293b;
  text-transform: uppercase;
  letter-spacing: 5px;
  margin: 0;
  position: relative;
}

/* The sweeping light effect on text */
.gk-orbit-text span {
  background: linear-gradient(90deg, #1e293b 0%, #1e293b 40%, #ff6a00 50%, #1e293b 60%, #1e293b 100%);
  background-size: 200% auto;
  color: transparent;
  -webkit-background-clip: text;
  background-clip: text;
  animation: gkOrbitShine 2s linear infinite;
}

@keyframes gkOrbitSpin {
  0% {
    transform: rotate(0deg);
  }

  100% {
    transform: rotate(360deg);
  }
}

@keyframes gkOrbitPulse {
  0% {
    transform: scale(0.95);
    box-shadow: 0 5px 15px rgba(255, 106, 0, 0.1);
  }

  100% {
    transform: scale(1.05);
    box-shadow: 0 15px 30px rgba(255, 106, 0, 0.25);
  }
}

@keyframes gkOrbitShine {
  0% {
    background-position: 200% center;
  }

  100% {
    background-position: 0% center;
  }
}

.dekstop-d-none {
  display: none;
}

@media (max-width: 991px) {
  .mob-d-none {
    display: none !important;
  }

  .dekstop-d-none {
    display: inline-flex;
  }

  .gk-cart-btn {
    width: 45px;
    height: 45px;
  }

  .gk-cart-icon {
    width: 19px;
    height: 19px;
  }

  .gk-cart-badge {
    font-size: 10px;
    height: 19px;
    min-width: 19px;
  }

  .gk-hero-section {
    padding: 88px 15px 15px;
  }

  .gk-badge {
    padding: 8px 24px;
    margin-bottom: 12px;
    font-size: 9px;
  }

  .gk-title {
    font-size: clamp(25px, 5vw, 64px);
  }

  .gk-desc {
    font-size: clamp(7px, 2vw, 11px);
    line-height: 1.4;
  }

  .gk-card-premium {
    flex-direction: column;
    gap: 10px;
  }

  .gk-stat-content h3 {
    font-size: 19px;
  }

  .gk-stat-content p {
    font-size: 7px;
  }

  .gk-svg-icon {
    width: 55px;
    height: 55px;
  }

  .gk-stats-grid {
    grid-template-columns: repeat(auto-fit, minmax(100px, 3fr));
    gap: 10px;
    margin-bottom: 5px;
  }

  .gk-premium-section {
    padding: 30px 15px;
  }

  .gk-premium-card {
    padding: 13px;
  }

  .gk-premium-container {
    gap: 36px;
  }

  .gk-section-title {
    margin-bottom: 12px;
  }

  .gk-cc-head-container {
    margin-bottom: 37px;
  }

  .gk-wcu-section {
    padding: 27px 15px;
  }

  .gk-wcu-desc {
    margin-bottom: 0;
  }

  .gk-wcu-cards-wrapper {
    margin-top: 0;
  }

  .gk-wcu-card {
    padding: 20px;
  }

  .gk-cert-content-wrapper {
    margin-top: 10px;
  }

  .gk-cert-subheading {
    font-size: 14px;
    line-height: 1.5;
  }

  .gk-cert-step-card h4 {
    font-size: 17px;
    margin-bottom: 5px;
  }

  .gk-cert-step-card p {
    font-size: 12px;
    text-align: justify;
  }

  .gk-faq-section .gk-faq-3d-scene {
    display: none;
  }

  .gk-faq-wrapper {
    padding: 0px 0px;
  }

  .gk-cert-badge {
    bottom: -20px;
    right: 0;
    font-size: 11px;
    padding: 6px 16px;
  }

  .gk-faq-section .gk-faq-question {
    padding: 11px 13px;
  }

  .gk-faq-section .gk-faq-question h4 {}

  .gk-faq-section .gk-faq-icon-wrap {
    width: 25px;
    height: 25px;
    border-radius: 6px;
  }

  .gk-cd-badge {
    padding: 7px 15px;
    font-size: 10px;
    margin-bottom: 15px;
  }

  .gk-cd-header-wrap {
    padding: 20px 20px;
  }

  .gk-cd-title {
    font-size: 29px;
  }

  .gk-cd-desc {
    font-size: 9px;
    line-height: 1.5;
  }

  .gk-cd-stats-row {
    gap: 9px;
  }

  .gk-cd-stat-pill {
    padding: 11px 20px;
    gap: 10px;
    flex-direction: column;
  }

  .gk-cd-stat-pill {
    padding: 11px 20px;
  }

  .gk-cd-stat-icon-wrap {
    width: 40px;
    height: 40px;
  }

  .gk-cd-stat-icon-wrap svg {
    width: 24px;
    height: 24px;
  }

  .gk-cd-stat-text {
    font-size: 14px;
  }

  .gk-cd-stat-text span {
    font-size: 5px;
  }

  .gk-cd-sticky-col {
    margin-top: 7px;
  }

  .gk-cd-curriculum-wrap {
    padding-left: 33px;
  }

  .gk-cd-topic-list {
    padding: 10px 12px 20px;
  }

  .gk-cd-topic-item {
    padding: 10px 9px;
  }

  .gk-cd-toggle-icon {
    width: 30px;
    height: 30px;
  }

  .gk-cd-curriculum-wrap {
    height: auto;
  }

  .gk-cd-section {
    padding: 80px 15px 24px;
  }

  .gk-cd-img-badge {
    left: 21%;
    padding: 8px 23px;
    font-size: 11px;
  }

  .gk-shape-1 {
    top: 16%;
    left: -17%;
  }

  .gk-ah-section {
    padding: 18px 10px 19px 10px;
  }

  .gk-ah-breadcrumb-pill {
    margin-bottom: 15px;
  }

  .gk-ah-title {
    font-size: clamp(16px, 5vw, 50px);
  }

  .gk-ah-desc {
    font-size: clamp(8px, 2vw, 13px);
    line-height: 1.3;
  }

  .gk-3d-section {
    padding: 35px 0;
  }

  .gk-orb-1 {
    top: 2%;
    left: -5%;
  }

  .gk-3d-section .gk-title-3d {
    font-size: clamp(2.4rem, 3.5vw, 4.2rem);
  }

  .gk-badge-3d {
    margin-bottom: 10px;
  }

  .gk-3d-scene {
    margin-top: 30px;
  }

  .gk-features-section {
    padding: 34px 0 50px;
  }

  .gk-features-header .gk-desc-3d {
    font-size: 13px;
    line-height: 1.8;
    margin-top: 7px;
  }

  .gk-feat-icon-3d {
    margin: 0 auto 3px auto;
  }

  .gk-feat-item {
    margin-bottom: 25px;
  }

  .gk-feat-timeline-wrapper {
    padding: 0px 0 0px;
  }

  .gk-features-section {
    padding: 20px 0 20px;
  }

  .gk-mv-premium-section {
    padding: 25px 0;
  }

  .gk-title-premium {
    font-size: 2.1rem;
  }

  .gk-header-desc {
    font-size: 13px;
  }

  .gk-header-premium {
    margin-bottom: 30px;
  }

  .gk-glass-card-dark {
    padding: 20px 25px;
  }

  .gk-panel-title {
    font-size: 1rem;
    margin-bottom: 5px;
  }

  .gk-panel-desc {
    font-size: 9px;
  }

  .gk-prem-section {
    padding: 35px 0;
  }

  .gk-prem-content {
    margin-top: 12px;
  }

  .gk-prem-title {
    font-size: clamp(2rem, 5vw, 3.5rem);
  }

  .gk-prem-vision-icon {
    display: none !important;
  }

  .gk-prem-vision-card {
    padding: 16px;
  }

  .gk-prem-quote-text {
    font-size: 1rem;
  }

  .gk-gal-section {
    padding: 40px 0 20px;
  }

  .gk-gal-title {
    font-size: clamp(2rem, 5vw, 4rem);
  }

  .gk-ah-breadcrumb-pill {
    gap: 3px;
    margin-bottom: 10px;
  }

  .gk-ah-bc-link,
  .gk-ah-bc-active {
    font-size: 9px;
  }

  .gk-rich-badge {
    padding: 12px 25px;
    font-size: 8px;
    margin-bottom: 6px;
  }

  .gk-rich-title {
    font-size: clamp(2rem, 5vw, 3.2rem);
  }

  .gk-rich-header {
    margin-bottom: 17px;
  }

  .gk-rich-card {
    padding: 8px 25px 20px 25px;
  }

  .gk-rich-form-wrapper {
    margin-top: 42px;
  }

  .gk-rich-form-header h3 {
    font-size: 2.1rem;
    margin-bottom: 8px;
  }

  .gk-rich-form-subtitle {
    margin-bottom: 11px;
  }

  .gk-rich-form-header {
    margin-bottom: 20px;
  }

  .gk-rich-form-header p {
    font-size: 1rem;
  }

  .gk-rich-form-box {
    padding: 29px 20px;
    border-radius: 15px;
  }

  .gk-rich-bg-wrapper {
    position: relative;
    z-index: 1;
    padding: 33px 0;
    overflow: hidden;
  }

  .gk-contact-section {
    padding: 20px 13px 25px;
  }

  .gk-form-sub {
    font-size: 11px;
    margin: 0 0 17px;
    text-align: center;
  }

  .gk-form-title {
    text-align: center;
  }

  .gk-contact-info {
    padding: 18px 15px;
    gap: 5px;
  }

  .navbar .navbar-collapse {
    min-height: 358px;
  }

  .navbar-nav {
    padding-bottom: 9px;
  }

  .contact-button-mob {
    display: inline-block !important;
    margin-left: 20px;
  }

  .navbar .contact-button .btn-liquid-glass {
    gap: 6px;
    padding: 7px 16px;
    font-size: 13px;
  }

  .gk-reg2-form-side {
    padding: 15px 10px;
  }

  .gk-reg2-badge {
    font-size: 0.65rem;
  }

  .gk-reg2-title {
    font-size: 1.2rem;
  }

  .gk-reg2-header {
    margin-bottom: 20px;
  }

  .gk-reg2-form-wrapper {
    padding: 25px 11px;
  }

  .gk-reg2-check-text {
    font-size: 0.7rem;
  }

  .gk-reg2-checkbox-wrap {
    margin: 20px 0 15px 0;
  }

  .gk-reg2-footer p {
    font-size: 13px;
  }

  .gk-login-content {
    padding: 35px 20px 25px 20px;
  }

  .gk-login-modal {
    border-radius: 20px;
  }

  .gk-login-content {
    padding: 18px 20px 20px 20px;
  }

  .gk-login-header {
    margin-bottom: 20px;
  }

  .gk-login-footer p {
    font-size: 0.7rem;
  }

  .gk-legal-banner {
    padding: 20px 20px 25px;
  }

  .gk-legal-banner-title {
    font-size: clamp(26px, 5vw, 48px);
    margin: 0 0 5px;
  }

  .gk-legal-banner-badge {
    padding: 7px 18px;
    margin-bottom: 7px;
    font-size: 9px;
  }

  .gk-legal-shell {
    padding: 16px 0 25px;
  }

  .gk-legal-para {
    font-family: "Unbounded", sans-serif !important;
    text-align: justify;
  }

  .gk-legal-section {
    margin-top: 8px;
  }

  .gk-legal-note-box {
    text-align: justify;
  }

  .gk-legal-list li {
    text-align: justify;
  }

  .gk-legal-section-title {
    font-size: 16px;
  }

  .gk-legal-ref-box .gk-legal-list {
    padding-left: 0px;
  }

  .gk-login-input {
    font-size: 0.7rem;
  }

  .gk-login-group {
    margin-bottom: 0px;
  }

  .gk-login-header {
    margin-bottom: 12px;
  }

  .gk-login-forgot {
    margin-top: -16px;
    margin-bottom: 10px;
  }

  .gk-login-title {
    font-size: 1.5rem;
    margin: 0 0 0px 0;
  }

  .gk-login-btn {
    padding: 9px 11px;
    font-size: 0.9rem;
    border-radius: 12px;
  }

  .gk-login-footer {
    margin-top: 15px;
  }
}