
/* :root{
  --brand:#111111;
  --text:#333333;
  --muted:#777777;
  --border:#e5e5e5;
  --accent:#2ecc71;
} */
 .glass{
  background: var(--glass-bg);
  backdrop-filter: var(--glass-blur);
  -webkit-backdrop-filter: var(--glass-blur);
  border: 1px solid var(--glass-border);
}
html, body{
  overflow-x: hidden;
}

:root{
  /* PRIMARY */
  --brand: #0f0f10;          /* deep premium black */

  /* BACKGROUNDS */
  --bg-main: #ffffff;        /* main page */
  --bg-soft: #f5f5f7;        /* section merge */
  --bg-card: #ffffff;        /* cards / forms */

  /* TEXT */
  --text-main: #111827;      /* headings */
  --text-body: #1f2937;      /* normal text */
  --text-muted: #6b7280;     /* helper text */

  /* BORDERS */
  --border-light: #e5e7eb;

  /* ACCENT (ONLY CTA) */
  --whatsapp: #25D366;
}

*{
  transition: all .3s ease;
}

/* html{
  scroll-behavior:smooth;
} */
body{
  background:var(--bg-main);
  color:var(--text-body);
}
.navbar{
  background:var(--bg-main);
  border-bottom:1px solid var(--border-light);
}

nav a{
  color:var(--text-main);
}

nav a:hover{
  color:var(--brand);
}
/* =========================
   NAVBAR BASE
========================= */
.navbar{
  position:sticky;
  top:0;
  z-index:1000;
  background:#ffffff;
  border-bottom:1px solid #e5e7eb;
}

.nav-container{
  max-width:50px;
  margin:auto;
  padding:14px 20px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap: 20px;
}

/* =========================
   BRAND
========================= */
.brand{
  display:flex;
  align-items:center;
  gap:6px;
  font-weight:700;
  color:#0f172a;
}

.brand h1{
  font-size:26px;
  margin:0;
}

.brand h5{
  font-size:18px;
  margin:0;
  font-weight:500;
}

/* =========================
   NAV LINKS (DESKTOP)
========================= */
#navMenu{
  display:flex;
  gap:28px;
}

#navMenu a{
  position:relative;
  text-decoration:none;
  color:#111827;
  font-weight:500;
  padding:6px 0;
}

/* Hover underline */
#navMenu a::after{
  content:"";
  position:absolute;
  left:0;
  bottom:-6px;
  width:0%;
  height:2px;
  background:#2563eb;
  transition:width .3s ease;
}

#navMenu a:hover::after,
#navMenu a.active::after{
  width:100%;
}

/* =========================
   NAV BUTTONS
========================= */
.nav-buttons{
  display:flex;
  align-items:center;
  gap:14px;
}

.btn-dark{
  padding:10px 18px;
  border-radius:8px;
  background:#0f172a;
  color:#fff;
  text-decoration:none;
  font-weight:500;
}

/* Menu icon */
.menu-toggle{
  display:none;
  font-size:28px;
  cursor:pointer;
}

/* =========================
   MOBILE / TABLET
========================= */
@media(max-width:768px){

  /* hide desktop menu */
  #navMenu{
    position:fixed;
    top:0;
    right:0;
    height:100vh;
    width:75%;
    max-width:320px;
    background:#ffffff;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:24px;
    transform:translateX(100%);
    transition:transform .35s ease;
    box-shadow:-10px 0 40px rgba(0,0,0,.15);
    z-index:999;
  }

  #navMenu.show{
    transform:translateX(0);
  }

  #navMenu a{
    font-size:auto;
  }

  .menu-toggle{
    display:block;
  }

  /* buttons stack */
  .nav-buttons{
    gap:3px;
  }

  .btn-dark{
    display:none; /* optional – hide on mobile */
  }
}


/* HERO SECTION */
/* .hero{
  min-height:100vh;
  background-image: url("background\ image.png");
  background-size: 100%;
  background-position: left;
  background-repeat: no-repeat;
  display:flex;
  align-items:center;
  justify-content:center;
}
.hero-content{
  background: rgba(255,255,255,0.65);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  padding:40px;
  border-radius:18px;
} */

/* 4-COLOR PREMIUM GRADIENT TEXT */
.hero-title{
  font-weight:800;
  background: linear-gradient(
    90deg,
    #0f172a,   /* deep navy */
    #2563eb,   /* professional blue */
    #77e2f7,   /* success green */
    #2c5660    /* warm gold */
  );
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.hero h1,
.hero p{
  color:var(--text-main);
}
.card,
.job-card,
.contact-form-box,
.candidate form{
  background:var(--bg-card);
  border:1px solid var(--border-light);
}
button,
.btn-dark{
  background:var(--brand);
  color:#fff;
}
h1,h2,h3,h4{
  color:var(--text-main);
}

p{
  color:var(--text-body);
}

.small-text,
.muted{
  color:var(--text-muted);
}

.reveal{
  opacity:0;
  transform:translateY(40px);
}
.reveal.active{
  opacity:1;
  transform:translateY(0);
}
.hero h1{
  animation:heroTitle 1s ease forwards;
}
.hero p{
  animation:heroSub 1.3s ease forwards;
}

@keyframes heroTitle{
  from{opacity:0;transform:translateY(30px)}
  to{opacity:1;transform:none}
}
@keyframes heroSub{
  from{opacity:0;transform:translateY(40px)}
  to{opacity:1;transform:none}
}
.card{
  transition:transform .35s ease, box-shadow .35s ease;
}
.card:hover{
  transform:translateY(-10px);
  box-shadow:0 25px 60px rgba(0,0,0,.15);
}
input,select,textarea{
  transition:border .25s ease, box-shadow .25s ease;
}
input:focus,select:focus,textarea:focus{
  border-color:#000;
  box-shadow:0 0 0 3px rgba(0,0,0,.1);
}
button{
  transition:transform .25s ease, box-shadow .25s ease;
}
button:hover{
  transform:translateY(-3px);
  box-shadow:0 15px 35px rgba(0,0,0,.3);
}
button:active{
  transform:scale(.97);
}

.navbar.scrolled{
  background:rgba(255,255,255,.9);
  backdrop-filter:blur(10px);
}


*{
  margin:0;
  padding:0;
  box-sizing:border-box;
  font-family:'Inter',sans-serif;
}
body{
  background-color:var(--bg-main);
  color:var(--text-body);
}
/* header.navbar{
  /* background:linear-gradient(
    to bottom,
    #ccf59f 0%,
    #bac687 60%,
    #f8fe4f 100%
  ); */
  /* padding-bottom:50px; */
/* html, body{
  overflow-x: hidden;
  overflow-y: auto;
} */
.navbar,
.nav-container{
  overflow: visible !important;
}

.navbar{
  background-color:rgb(0, 0, 0);
  border-bottom:1px solid var(--border-light);
}
nav a{
  color:var(--text-main);
}
nav a:hover{
  color:var(--brand);
}
/* NAVBAR LINKS */
nav a{
  position:relative;
  padding:8px 2px;
  font-weight:500;
  color:var(--text-main);
}

/* HOVER UNDERLINE (APPLE STYLE) */
nav a::after{
  content:"";
  position:absolute;
  left:0;
  bottom:-6px;
  width:0%;
  height:2px;
  background:var(--brand);
  transition:width .3s ease;
  border-radius:2px;
}

nav a:hover::after{
  width:100%;
}

/* TEXT COLOR SLIGHT CHANGE */
nav a:hover{
  color:var(--brand);
}
nav a.active{
  color:var(--brand);
}
nav a.active::after{
  width:100%;
}
nav a:hover{
  /* background:rgba(0, 0, 0, 0.418); */
  background: rgba(242, 242, 242, 0.788);
backdrop-filter: blur(14px);
-webkit-backdrop-filter: blur(14px);
border: 1px solid rgba(255, 255, 255, 0.25);
  border-radius:8px;
  padding:8px 10px;
}

h1,h2,h3{
  color:var(--text-main);
}
.card,
.job-card,
form{
  background:rgba(255,255,255,.9);
  backdrop-filter:blur(10px);
  /* border:1px solid var(--border-light); */
  padding: 50px;
}

.navbar{
  position:sticky;top:0;z-index:999;
  background:#fff;
  border-bottom:1px solid #eee;
}
.navbar{
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
}
body{
  padding-top: 30px; /* navbar height */
}

.nav-container{
  max-width:1200px;
  margin:auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:16px;
  animation: navIntro 0.9s cubic-bezier(.22,.61,.36,1) forwards;
  gap:20px;

}
.brand{
  display:flex;
  align-items:center;
  gap:10px;
  font-weight:700
}
.brand img{
  height:36px;
}
nav a{
  margin:0 14px;
  text-decoration:none;
  color:#333;
  font-weight:500;
}
.nav-buttons a{
  margin-left:10px;
  padding:10px 16px;
  border-radius:8px;
  text-decoration:none;
  font-weight:500;
}
/* =========================
   STICKY NAVBAR FIX
========================= */
.nav-container{
  position: sticky;
  top: 0;
  z-index: 9999;
}
body, html{
  overflow-x: hidden;
}
.navbar.scrolled{
  background: rgba(255,255,255,0.7);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  box-shadow: 0 8px 30px rgba(0,0,0,0.08);
}

.btn-outline{
  border:1px solid #000;
  color:#000
}
.btn-dark{
  background:#000;
  color:#fff
}
.hero{
  text-align:center;
  padding:100px 20px;
}
.hero h1{
  font-size:78px;
  font-weight:800;
  font-family: "Brush Script MT", cursive;
}
.hero p{
  color:#666;
  margin-top:10px;
}
/* .marquee-track{
  animation:googleMarquee 15s linear infinite;
}
.marquee img{
  transition:transform .3s ease;
}
.marquee img:hover{
  transform:scale(1.1);
}
.marquee-title{
  text-align:center;
  font-size:18px;
  font-weight:600;
  margin-bottom:30px;
  color:#555;
}
.marquee{
  width:100%;
  overflow:hidden;
  position:relative;
}

.marquee-track{
  display:flex;
  align-items:center;
  gap:60px;

  /* 🔥 EXACT GOOGLE BEHAVIOUR */
  /* animation:googleMarquee 10s linear infinite; */
/* }

.marquee img{
  height:48px;
  opacity:0.85;
  flex-shrink:0;
} */

/* LEFT → RIGHT → RESET TO LEFT */
/* @keyframes googleMarquee{
  0%{
    transform:translateX(-100px);
  }
  100%{
    transform:translateX(100%);
  }
}
.marquee img{
  height:48px;
  width:auto; */

  /* 🔥 VERY IMPORTANT */
  /* background:transparent !important;
  box-shadow:none !important;
  border:none !important;

  display:block;
  object-fit:contain;

  /* transparency protect */
  /* mix-blend-mode:normal;
} */ */ */


/* =========================
   LOGO MARQUEE (SNAKE STYLE)
========================= */

.logo-marquee{
  width:100%;
  overflow:hidden;
  padding:30px 0;
  position:relative;
  background:#010101; /* change if needed */
}

.marquee-track{
  display:flex;
  gap:60px;
  width:max-content;
  animation: marqueeMove 20s linear infinite;
}

.marquee-track img{
  height:60px;
  width:130px;
  object-fit:contain;
  /* filter:grayscale(100%);
  opacity:0.85;
  transition:all .3s ease; */
}

/* hover effect */
.marquee-track img:hover{
  filter:grayscale(0%);
  opacity:1;
  transform:scale(1.05);
}

/* LEFT → RIGHT CONTINUOUS MOVE */
@keyframes marqueeMove{
  from{
    transform:translateX(0);
  }
  to{
    transform:translateX(-40%);
  }
}
/* animation: marqueeMove 40s linear infinite; slow
animation: marqueeMove 20s linear infinite; fast */
@media(max-width:768px){
  .marquee-track img{
    height:45px;
  }
}
/* =========================
   LIVE DOT BLINK (TRUST)
========================= */

.live-dot{
  color:#22c55e;              /* success green */
  font-size:14px;
  margin-left:8px;
  position:relative;
  animation: livePulse 1.6s ease-in-out infinite;
}

/* outer glow ring */
.live-dot::after{
  content:"";
  position:absolute;
  top:50%;
  left:50%;
  width:100%;
  height:100%;
  border-radius:50%;
  background:rgba(17, 241, 99, 0.986);
  transform:translate(-50%,-50%) scale(1);
  animation: ringPulse 1.6s ease-out infinite;
}

/* dot blink */
@keyframes livePulse{
  0%{ opacity:1; }
  50%{ opacity:0.4; }
  100%{ opacity:1; }
}

/* ring expand */
@keyframes ringPulse{
  0%{
    transform:translate(-50%,-50%) scale(1);
    opacity:0.6;
  }
  100%{
    transform:translate(-50%,-50%) scale(2.2);
    opacity:0;
  }
}

.services{
  padding:80px 20px;
  text-align:center;
}
.service-grid{
  max-width:1000px;
  margin:auto;
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(240px,1fr));
  gap:20px;
}
/* .services{
  background:linear-gradient(
    to bottom,
    #ccf59f 0%,
    #c8d2be 60%,
    #e5e5e5 100%
  );
  padding-bottom:120px;
} */

.card{
  padding:40px;
  border-radius:16px;
  background:#f9f9f9;
  font-weight:600;
  transition:.3s;
}
/* .card:hover{transform:translateY(-6px)} */

.card{
  transition:transform .35s ease, box-shadow .35s ease;
}
.card:hover{
  transform:translateY(-4px);
  box-shadow:0 18px 40px rgba(0,0,0,.12);
}

.card img{
  background:#f9f9f9;
}
  .candidate{
  background:transparent;
  padding-top:0;
  text-align:center;
}
.subtitle{color:#666;
  margin-bottom:30px;
}

form{
  max-width:520px;
  margin:auto;
  display:flex;
  flex-direction:column;
  gap:14px;
}
input,select,textarea{
  padding:14px;
  border-radius:10px;
  border:1px solid #ddd;
}
textarea{
  min-height:100px;
}
.checkbox{
  font-size:14px;
  text-align:left;
}
button{
  background:#000;
  color:#fff;
  padding:14px;
  border:none;
  border-radius:10px;
  font-weight:600;
  /* cursor:pointer; */
}
button{
  transition:transform .25s ease, box-shadow .25s ease;
}
button:hover{
  transform:translateY(-2px);
  box-shadow:0 10px 25px rgba(0,0,0,.25);
}
button,
.btn-dark{
  background-color: #3760c6;
  color:#fff;
}
.section.gray,
.candidate,
.jobs-list{
  background:var(--bg-soft);
}

/* SUCCESS TICK */
.contact-form-box button{
  position:relative;
  overflow:hidden;
}
.btn-check{
  position:absolute;
  inset:0;
  display:grid;
  place-items:center;
  opacity:0;
  transform:scale(.6);
  font-size:20px;
}
button.success .btn-text{ opacity:0; }
button.success .btn-check{
  opacity:1;
  transform:scale(1);
  animation:checkPop .5s ease forwards;
}
@keyframes checkPop{
  0%{transform:scale(.6)}
  70%{transform:scale(1.1)}
  100%{transform:scale(1)}
}


.contact{
  text-align:center;
  padding:60px;
}
footer{
  text-align:center;
  padding:30px;
  color:#777;
}
/* FLOATING WHATSAPP */
.whatsapp-float{
  position:fixed;
  bottom:24px;
  right:24px;
  width:56px;
  height:56px;
  background:#25d366;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 10px 30px rgba(0,0,0,.25);
  z-index:9999;
  transition:transform .3s ease, box-shadow .3s ease;
}
.whatsapp-float img{
  width:30px;
  height:30px;
}
.whatsapp-float:hover{
  transform:translateY(-4px) scale(1.05);
  box-shadow:0 16px 40px rgba(0,0,0,.35);
}
.whatsapp-float{
  background:var(--whatsapp);
}


.hero h1{
  animation:heroFade 1s ease forwards;
}
.hero p{
  animation:heroFade 1.3s ease forwards;
}
@keyframes heroFade{
  from{
    opacity:0;
    transform:translateY(16px);
  }
  to{
    opacity:1;
    transform:none;
  }
}

/* FORM SUCCESS */
.form-success{
  background:#111;
  color:#fff;
  animation:successPop .6s ease forwards;
}
@keyframes successPop{
  0%{transform:scale(.96);opacity:.6}
  60%{transform:scale(1.04)}
  100%{transform:scale(1)}
}
/* WHATSAPP TOOLTIP */
.wa-tooltip{
  position:absolute;
  right:70px;
  background:#111;
  color:#fff;
  padding:8px 12px;
  border-radius:8px;
  font-size:13px;
  opacity:0;
  pointer-events:none;
  transform:translateY(4px);
  transition:.3s ease;
  white-space:nowrap;
}
.whatsapp-float:hover .wa-tooltip{
  opacity:1;
  transform:translateY(0);
}

/* job Openings page */
/* JOB OPENINGS */
.jobs-hero{
  padding:90px 20px;
  text-align:center;
}
.jobs-hero h1{
  font-size:42px;
  font-weight:800;
}
.jobs-hero p{
  color:var(--muted);
}

.job-filter{
  display:flex;
  justify-content:center;
  gap:12px;
  margin-bottom:40px;
}
.filter-btn{
  padding:10px 20px;
  border-radius:999px;
  border:1px solid var(--border);
  background:#000000;
  cursor:pointer;
  font-weight:500;
}
.filter-btn.active{
  background:var(--brand);
  color:#ffffff;
}
.filter-btn.active:hover{
  border-color:rgb(0, 0, 0);
  color: #ffffff;
}
.jobs-list{
  max-width:1100px;
  margin:auto;
  padding:0 20px 80px;
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  gap:24px;
}
.job-card{
  background:#fff;
  padding:28px;
  border-radius:16px;
  box-shadow:0 18px 40px rgba(0,0,0,.08);
  transition:.35s ease;
}
.job-card:hover{
  transform:translateY(-6px);
  box-shadow:0 28px 60px rgba(0,0,0,.12);
}
.job-card h3{
  margin-bottom:6px;
}
.job-card p{
  color:var(--muted);
  font-size:14px;
}

.apply-btn{
  margin-top:14px;
  padding:10px 16px;
  border:none;
  border-radius:10px;
  background:var(--brand);
  color:#fff;
  font-weight:600;
  cursor:pointer;
}

.kej-footer{
  background:#0b0b0b;
  color:#bfbfbf;
  padding:70px 0 0;
}

.footer-container{
  max-width:1200px;
  margin:auto;
  padding:0 20px;
  display:grid;
  grid-template-columns:1.2fr 1fr 1fr 1.5fr;
  gap:40px;
}

.footer-logo{
  width:140px;
}

.footer-col h4{
  color:#ffffff;
  margin-bottom:20px;
}

.footer-col ul{
  list-style:none;
  padding:0;
}

.footer-col ul li{
  margin-bottom:12px;
}

.footer-col{
  color:rgb(0, 0, 0);
}
.footer-col ul li a{
  color:#bfbfbf;
  text-decoration:none;
}

.footer-col ul li a:hover{
  color:#000000;
}

.address-col p{
  font-size:14px;
  line-height:1.7;
}

.social-icons a{
  display:inline-flex;
  width:38px;
  height:38px;
  align-items:center;
  justify-content:center;
  background:#ffffff;
  color:#fff;
  margin-top:20px;
  border-radius:50%;
  margin-right:10px;
  text-decoration:none;
  transition:transform .3s ease, background .3s ease;
}

.social-icons a:hover{
  transform:translateY(-4px) scale(1.05);
}

.facebook:hover{
  background:#2a65e6;
}
.instagram:hover{
  background:#ff933b;
}
.linkedin:hover{
  background:#0077b5;
}

.footer-bottom{
  border-top:1px solid #2a2a2a;
  margin-top:50px;
  padding:20px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  font-size:14px;
}

@media(max-width:900px){
  .footer-container{
    grid-template-columns:1fr;
    text-align:center;
  }
  .footer-bottom{
    flex-direction:column;
    gap:10px;
  }
}
/* CONTACT SECTION */
.contact-section{
  /* soft merge from previous section */
  background: linear-gradient(
    to bottom,
    rgba(245,245,247,0) 0%,
    #f5f5f7 18%,
    #f5f5f7 100%
  );
  padding:110px 20px 120px;
}
.contact-section{
  background:var(--bg-soft);
  padding:100px 20px;
}
.map-wrap{
  margin-top:28px;
  border-radius:16px;
  overflow:hidden;
  border:1px solid var(--border-light);
  .map-wrap{
  filter:none;
}
.map-wrap{
  margin-top:28px;
  border-radius:16px;
  overflow:hidden;
  border:1px solid var(--border-light);
  filter: grayscale(100%);
  transition: filter .4s ease;
}

.map-wrap:hover{
  filter: grayscale(0%);
}

}
.map-wrap iframe{
  width:100%;
  height:260px;
  border:0;
}

/* subtle lift on hover (desktop) */
@media (hover:hover){
  .map-wrap:hover{
     filter: grayscale(85%);
     }
}

/* CANDIDATE FORM STAGGER */
.candidate form > *{
  opacity:0;
  transform:translateY(20px);
  animation:fieldIn .6s ease forwards;
}

.candidate form > *:nth-child(1){ animation-delay:.05s }
.candidate form > *:nth-child(2){ animation-delay:.10s }
.candidate form > *:nth-child(3){ animation-delay:.15s }
.candidate form > *:nth-child(4){ animation-delay:.20s }
.candidate form > *:nth-child(5){ animation-delay:.25s }
.candidate form > *:nth-child(6){ animation-delay:.30s }
.candidate form > *:nth-child(7){ animation-delay:.35s }
.candidate form > *:nth-child(8){ animation-delay:.40s }
.candidate form > *:nth-child(9){ animation-delay:.45s }
.candidate form > *:nth-child(10){ animation-delay:.50s }

@keyframes fieldIn{
  to{
    opacity:1;
    transform:none;
  }
}
/* INPUT MICRO INTERACTION */
.candidate input,
.candidate select,
.candidate textarea{
  transition:
    border .25s ease,
    box-shadow .25s ease,
    transform .15s ease;
}

.candidate input:focus,
.candidate select:focus,
.candidate textarea:focus{
  transform:translateY(-2px);
  border-color:var(--brand);
  box-shadow:0 8px 20px rgba(0,0,0,.08);
}

.contact-container{
  max-width:1100px;
  margin:auto;
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:60px;
  align-items:center;
}

.contact-info h2{
  font-size:36px;
  margin-bottom:10px;
}

.contact-sub{
  color:var(--text-muted);
  margin-bottom:30px;
}

.contact-item{
  display:flex;
  gap:14px;
  margin-bottom:18px;
  color:var(--text-body);
  align-items:flex-start;
}

.contact-item i{
  font-size:18px;
  margin-top:4px;
  color:var(--brand);
}

.contact-form-box{
  background:var(--bg-card);
  padding:40px;
  border-radius:16px;
  border:1px solid var(--border-light);
}

.contact-form-box h3{
  margin-bottom:20px;
}

.contact-form-box input,
.contact-form-box textarea{
  width:100%;
  padding:14px;
  margin-bottom:14px;
  border-radius:10px;
  border:1px solid var(--border-light);
}

.contact-form-box button{
  width:100%;
}

/* MOBILE */
@media(max-width:900px){
  .contact-container{
    grid-template-columns:1fr;
  }
}

/* FILE UPLOAD ANIMATION */
.file-upload label{
  transition:transform .25s ease, box-shadow .25s ease;
}
.file-upload label:hover{
  transform:translateY(-3px);
  box-shadow:0 10px 25px rgba(0,0,0,.15);
}
.candidate button{
  transition:transform .2s ease, box-shadow .2s ease;
}
.candidate button:active{
  transform:scale(.97);
}
.candidate form{
  animation:formGlow 1.2s ease forwards;
}

@keyframes formGlow{
  from{
    box-shadow:0 0 0 rgba(0,0,0,0);
  }
  to{
    box-shadow:0 30px 80px rgba(0,0,0,.08);
  }
}
/* PRIMARY CTA BUTTON – SYNC WITH HERO */
.btn-cta{
  display:inline-block;
  padding:14px 34px;
  font-weight:600;
  border-radius:12px;
  color:#fff;
  text-decoration:none;
  background-size:300% 300%;
  background-image: linear-gradient(
    90deg,
    #0f172a,
    #2563eb,
    #22c55e,
    #f59e0b
  );
  animation: gradientMove 8s ease infinite;
  box-shadow:0 12px 30px rgba(0,0,0,.25);
  transition:transform .25s ease, box-shadow .25s ease;
}

/* HOVER */
.btn-cta:hover{
  transform:translateY(-3px);
  box-shadow:0 18px 45px rgba(0,0,0,.35);
}

/* CLICK */
.btn-cta:active{
  transform:scale(.97);
}
.btn-secondary,
button{
  background:var(--brand);
  color:#fff;
}
.btn-cta{
  animation: gradientMove 8s ease infinite, glowPulse 2s ease;
}
@keyframes glowPulse{
  0%{box-shadow:0 0 0 rgba(0,0,0,0)}
  100%{box-shadow:0 12px 30px rgba(0,0,0,.25)}
}

/* BACKGROUND BLUR OVERLAY */
.nav-overlay{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,.35);
  backdrop-filter:blur(6px);
  opacity:0;
  pointer-events:none;
  transition:opacity .35s ease;
  z-index:998;
}

.nav-overlay.show{
  opacity:1;
  pointer-events:auto;
}
/* CLOSE ICON */
.nav-close{
  position:absolute;
  top:20px;
  right:20px;
  font-size:26px;
  cursor:pointer;
  display:none;
}

/* show only mobile */
@media(max-width:768px){
  .nav-close{
    display:block;
  }
}
/* =========================
   NAVBAR INTRO ANIMATION
========================= */

/* initial hidden state */
.navbar{
  opacity:0;
  transform:translateX(60px);
  animation:navIntro 0.9s cubic-bezier(.22,.61,.36,1) forwards;
}

/* animation */
@keyframes navIntro{
  0%{
    opacity:0;
    transform:translateX(60px);
  }
  70%{
    opacity:1;
    transform:translateX(-6px); /* small overshoot */
  }
  100%{
    opacity:1;
    transform:translateX(0);
  }
}
/* STAGGER NAV ITEMS */
.brand{
  opacity:0;
  animation:fadeIn .6s ease forwards;
  animation-delay:.2s;
}

#navMenu{
  opacity:0;
  animation:fadeIn .6s ease forwards;
  animation-delay:.35s;
}

.nav-buttons{
  opacity:0;
  animation:fadeIn .6s ease forwards;
  animation-delay:.5s;
}

@keyframes fadeIn{
  from{
    opacity:0;
    transform:translateY(6px);
  }
  to{
    opacity:1;
    transform:none;
  }
}
.menu-toggle{
  animation:menuPop .6s ease forwards;
  animation-delay:.6s;
  opacity:0;
}

@keyframes menuPop{
  from{
    opacity:0;
    transform:scale(.8);
  }
  to{
    opacity:1;
    transform:scale(1);
  }
}
/* PAGE TRANSITION */
.page-transition{
  position:fixed;
  inset:0;
  background:#fff;
  z-index:9999;
  opacity:0;
  pointer-events:none;
  transition:opacity .5s ease;
}

.page-transition.active{
  opacity:1;
  pointer-events:auto;
}
.reveal{
  opacity:0;
  transform:translateY(40px);
}

.reveal.active{
  opacity:1;
  transform:none;
  transition:
    opacity .8s cubic-bezier(.22,.61,.36,1),
    transform .8s cubic-bezier(.22,.61,.36,1);
}
/* CURSOR MICRO EFFECT */
a, button{
  transition:transform .25s ease;
}

a:hover, button:hover{
  transform:translateY(-2px);
}
.card, .service-card{
  transition:transform .3s ease;
}
.card:hover{
  transform:translateY(-6px) scale(1.02);
}
/* SCROLL LINKED */
.scroll-animate{
  animation:scrollFade linear forwards;
  animation-timeline:view();
  animation-range:entry 0% cover 40%;
}

@keyframes scrollFade{
  from{
    opacity:0;
    transform:translateY(60px) scale(.96);
  }
  to{
    opacity:1;
    transform:none;
  }
}
/* CUSTOM CURSOR (DESKTOP) */
/* @media (hover:hover){
  body{ cursor:none; }
  .cursor-dot,.cursor-ring{
    position:fixed; top:0; left:0; pointer-events:none; z-index:99999;
    transform:translate(-50%,-50%);
  }
  .cursor-dot{ width:6px; height:6px; background:#111; border-radius:50%; }
  .cursor-ring{
    width:34px; height:34px; border:2px solid rgba(0,0,0,.2);
    border-radius:50%; transition:transform .15s ease, opacity .15s ease;
  } */
  /* a:hover ~ .cursor-ring, button:hover ~ .cursor-ring{
    transform:translate(-50%,-50%) scale(1.2);
  } */
/* }
.scroll-progress{
  position:fixed; top:0; left:0; height:3px; width:0%;
  background:linear-gradient(90deg,#2563eb,#22c55e,#f59e0b);
  z-index:10000;
} */
/* =========================
   GLASS FOOTER
========================= */
.kej-footer,
.footer{
  background: rgba(255, 255, 255, 0.584); /* glass */
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  border-top: 1px solid rgba(0,0,0,0.08);
}

/* Footer container spacing */
.kej-footer .footer-container{
  padding-top:20px;
  padding-bottom:40px;
}

/* Footer text tuning */
.kej-footer h4{
  color:#81a7ff;
}

.kej-footer p,
.kej-footer a{
  color:#000000;
  text-decoration:none;
}

/* Footer links hover */
.kej-footer a:hover{
  color:#000000;
}
.footer-bottom{
  background: rgba(255, 255, 255, 0.837);
  backdrop-filter: blur(10px);
  border-top: 1px solid rgba(255, 255, 255, 0.06);
}
.kej-footer{
  opacity:0;
  transform:translateY(40px);
  animation:footerIn .9s ease forwards;
}

@keyframes footerIn{
  to{
    opacity:1;
    transform:none;
  }
}
/* FIX: MOBILE NAV HIDDEN BY DEFAULT */
@media (max-width:768px){
  #navMenu{
    transform: translateX(100%) !important;
  }

  #navMenu.show{
    transform: translateX(0) !important;
  }
}
/* SOFT BLINK / PULSE */
/* #blink-text{
  animation: softBlink 2.2s ease-in-out infinite;
} */

@keyframes softBlink{
  0%{
    opacity:1;
  }
  50%{
    opacity:0.4;
  }
  100%{
    opacity:1;
  }
}
/* REGISTER BUTTON ATTENTION SHAKE */
#shake-btn{
  animation: subtleShake 2s ease-in-out infinite;
}

@keyframes subtleShake{
  0%{
    transform:translateX(0);
  }
  85%{
    transform:translateX(0);
  }
  88%{
    transform:translateX(-3px);
  }
  91%{
    transform:translateX(10px);
  }
  94%{
    transform:translateX(-2px);
  }
  97%{
    transform:translateX(20px);
  }
  100%{
    transform:translateX(0);
  }
}
#shake-btn:hover{
  animation-play-state:paused;
}
/* =========================
   CUSTOM FILE UPLOAD
========================= */

.file-upload{
  width:100%;
  border-radius:14px;
  padding:16px;
  cursor:pointer;
  transition:all .3s ease;
}

.file-upload input{
  display:none;
}

.file-upload label{
  display:flex;
  align-items:center;
  gap:14px;
  cursor:pointer;
}

/* ICON */
.upload-icon{
  font-size:22px;
}

/* MAIN TEXT */
.upload-text{
  font-weight:600;
  color:#0f172a;
}

/* SUB TEXT */
.upload-sub{
  margin-left:auto;
  font-size:13px;
  color:#6b7280;
}

/* HOVER */
.file-upload:hover{
  transform:translateY(-2px);
  box-shadow:0 12px 30px rgba(0,0,0,.12);
}

/* FILE SELECTED STATE */
.file-upload.selected{
  background:rgba(37,99,235,0.08);
  border:1px solid rgba(37,99,235,0.3);
}

/* =========================
   ABOUT PAGE – CORE STYLES
========================= */
/* body{
  background:red !important;
} */
/* body{
  background:linear-gradient(180deg,#f9fafb,#f9f9f9);
} */
 /* .glass{
  background: var(--glass-bg);
  backdrop-filter: var(--glass-blur);
  -webkit-backdrop-filter: var(--glass-blur);
  border: 1px solid var(--glass-border);
  border-radius: 20px;
 }
.about-page-section{
  margin:60px auto;
  border-radius:28px;
} */
/* =========================
   NAVBAR – PREMIUM
========================= */

/* .navbar{
  position:sticky;
  top:0;
  z-index:999;
  background:rgba(255,255,255,0.75); 
  backdrop-filter:blur(16px);
}

.glass-nav{
  background:rgba(255,255,255,0.75);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
  box-shadow:0 10px 30px rgba(0,0,0,0.08);
}

.nav-container{
  max-width:1200px;
  margin:auto;
  padding:14px 20px;
  display:flex;
  align-items:center;
  justify-content:space-between;
}

.logo{
  text-decoration:none;
  font-size:24px;
  font-weight:700;
  color:#0f172a;
}

.logo-main{
  color:#2563eb;
}
.logo-sub{
  font-weight:400;
  margin-left:6px;
}

.nav-links{
  display:flex;
  gap:40px;
}

.nav-links a{
  text-decoration:none;
  color:#111827;
  font-weight:500;
  position:relative;
} */

/* .nav-links a::after{
  content:"";
  position:absolute;
  left:0;
  bottom:-6px;
  width:0%;
  height:2px;
  background:#2563eb;
  transition:.3s;
} */

/* .nav-links a:hover::after,
.nav-links a.active::after{
  width:100%;
} */

/* .nav-cta{
  display:flex;
  align-items:center;
  gap:16px;
} */
/* 
.btn-cta{
  padding:10px 18px;
  border-radius:999px;
  background:#2563eb;
  color:#fff;
  text-decoration:none;
  font-weight:500;
  transition:.3s;
}
.btn-cta:hover{
  transform:translateY(-2px);
  box-shadow:0 12px 25px rgba(37,99,235,.4);
}
section #About{
  scroll-margin-top:90px;
} */

/* Mobile */
/* .menu-toggle{
  display:none;
  font-size:26px;
  cursor:pointer;
} */

/* @media(max-width:900px){
  .nav-links{
    position:fixed;
    inset:0;
    background:rgba(255,255,255,0.95);
    backdrop-filter:blur(18px);
    flex-direction:column;
    align-items:center;
    justify-content:center;
    transform:translateX(100%);
    transition:.4s ease;
  } */
  /* .nav-links.show{
    transform:translateX(0);
  } */
  /* .menu-toggle{
    display:block;
  } */
/* } */
/* .about-hero{
  padding:140px 2px 10px;
  background:linear-gradient(180deg,#eef2ff,#ffffff);
  text-align:center;
} */
/* .about-hero h1{
  font-size:clamp(2.4rem,4vw,3rem);
}
.about-hero p{
  font-size:18px;
  color:#374151;
  max-width:720px;
  margin:16px auto 0;
} */
/* .reveal{
  opacity:0;
  transform:translateY(40px);
  animation:revealUp .9s ease forwards;
}
@keyframes revealUp{
  to{
    opacity:1;
    transform:translateY(0);
  }
} */

/* .bg-soft{
  background:linear-gradient(135deg,hsla(0, 0%, 100%, 0.833),#f8f8f8d3);
} */
/* h1,h2{
  letter-spacing:-0.5px;
}
p{
  font-size:17px;
  line-height:1.8;
}
.reveal{
  opacity:0;
  transform:translateY(40px);
  animation:revealUp .8s ease forwards;
} */
/* @keyframes revealUp{
  to{
    opacity:1;
    transform:translateY(0);
  }
}

.about-header{
  padding:20px 30px;
} */

/* .about-logo{
  font-size:26px;
  font-weight:700;
  text-decoration:none;
  color:#0f172a;
}

.about-logo .logo-main{
  color:#2563eb;
}

.about-logo .logo-sub{
  font-weight:400;
  margin-left:6px;
} */

/* SECTION */
/* .about-page-section{
  padding:90px 20px;
}

.about-page-section h1,
.about-page-section h2{
  margin-bottom:20px;
  color:#0f172a;
} */

/* .lead-text{
  font-size:18px;
  color:#374151;
  max-width:800px;
}

/* FOUNDER */
.founder-grid{
  display:grid;
  grid-template-columns:1fr 1.3fr;
  gap:50px;
  align-items:center;
}

.founder-photo img{
  width:100%;
  border-radius:20px;
}

.founder-content {
  color:#374151;
  margin-bottom:15px;
}

/* TEAM */
.team-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:30px;
  margin-top:40px;
}
.glass:hover{
  transform:translateY(-6px);
  box-shadow:0 15px 30px rgba(0,0,0,0.1);
}

.team-card{
  text-align:center;
}

.team-card img{
  width:100%;
  border-radius:16px;
  margin-bottom:12px;
}

.team-card h4{
  margin-bottom:4px;
}

/* TIMELINE */
/* .timeline{
  margin-top:30px;
}

.timeline-item{
  display:flex;
  gap:20px;
  margin-bottom:18px;
}

.timeline-item span{
  font-weight:700;
  color:#2563eb;
  min-width:60px;
} */

/* CERTIFICATIONS */
/* .cert-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(200px,1fr));
  gap:30px;
  margin-top:40px;
}

.cert-card{
  padding:30px;
  text-align:center;
}

.cert-card i{
  font-size:28px;
  color:#2563eb;
  margin-bottom:10px;
} */

/* GLASS EFFECT */
/* .glass{
  background:rgba(255,255,255,0.65);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  border-radius:20px;
  padding:30px;
} */

/* FOOTER */
/* .footer-bottom{
  padding:30px;
  text-align:center;
  color:#6b7280;
  font-size:14px;
} */

/* RESPONSIVE */
/* @media(max-width:900px){
  .founder-grid{
    grid-template-columns:1fr;
    text-align:center;
  }
} */

/* .container{
  max-width:1200px;
  margin:auto;
  padding:0 20px;
} */

/* FLOATING AI BUTTON */
.ai-chat-btn{
  position:fixed;
  bottom:24px;
  right:24px;
  width:60px;
  height:60px;
  border-radius:50%;
  background:linear-gradient(135deg,#2563eb,#4f46e5);
  color:#fff;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:26px;
  cursor:pointer;
  z-index:9999;
  box-shadow:0 20px 40px rgba(0,0,0,.3);
  animation:pulse 2s infinite;
}

@keyframes pulse{
  0%{box-shadow:0 0 0 0 rgba(79,70,229,.6);}
  70%{box-shadow:0 0 0 20px rgba(79,70,229,0);}
  100%{box-shadow:0 0 0 0 rgba(79,70,229,0);}
}

/* CHAT BOX */
.ai-chat-box{
  position:fixed;
  bottom:100px;
  right:24px;
  width:320px;
  background:#fff;
  border-radius:18px;
  box-shadow:0 30px 80px rgba(0,0,0,.25);
  display:none;
  flex-direction:column;
  overflow:hidden;
  z-index:9999;
}

/* HEADER */
.ai-chat-header{
  background:#2563eb;
  color:#fff;
  padding:14px;
  display:flex;
  justify-content:space-between;
  align-items:center;
}

/* BODY */
.ai-chat-body{
  padding:14px;
  height:240px;
  overflow-y:auto;
  font-size:14px;
}

.ai-msg{
  background:#f1f5f9;
  padding:10px;
  border-radius:12px;
  margin-bottom:10px;
}

/* INPUT */
.ai-chat-input{
  display:flex;
  border-top:1px solid #e5e7eb;
}

.ai-chat-input input{
  flex:1;
  padding:12px;
  border:none;
  outline:none;
}

.ai-chat-input button{
  background:#2563eb;
  color:#fff;
  border:none;
  padding:0 16px;
  cursor:pointer;
}

/* =========================
   AI CHAT – PREMIUM UI
========================= */

/* Floating Button */
.ai-chat-btn{
  position:fixed;
  bottom:26px;
  right:26px;
  width:62px;
  height:62px;
  border-radius:50%;
  background:linear-gradient(135deg,#076478,#0a32f6);
  color:#fff;
  font-size:26px;
  display:flex;
  align-items:center;
  justify-content:center;
  cursor:pointer;
  z-index:9999;
  box-shadow:0 20px 45px rgba(0,0,0,.35);
  animation:pulseGlow 2.4s infinite;
}

/* pulse */
@keyframes pulseGlow{
  0%{ box-shadow:0 0 0 0 rgba(37,99,235,.6); }
  70%{ box-shadow:0 0 0 22px rgba(37,99,235,0); }
  100%{ box-shadow:0 0 0 0 rgba(37,99,235,0); }
}

/* Chat Box */
.ai-chat-box{
  position:fixed;
  bottom:105px;
  right:26px;
  width:340px;
  max-width:92%;
  background:rgba(255,255,255,.85);
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
  border-radius:20px;
  box-shadow:0 35px 90px rgba(0,0,0,.35);
  display:none;
  flex-direction:column;
  overflow:hidden;
  z-index:9999;
  animation:chatPop .45s cubic-bezier(.22,.61,.36,1);
}

/* open animation */
@keyframes chatPop{
  from{
    opacity:0;
    transform:translateY(20px) scale(.96);
  }
  to{
    opacity:1;
    transform:none;
  }
}

/* Header */
.ai-chat-header{
  background:linear-gradient(90deg,#2563eb,#22c55e);
  color:#fff;
  padding:14px 16px;
  display:flex;
  justify-content:space-between;
  align-items:center;
  font-weight:600;
}

/* Body */
.ai-chat-body{
  padding:16px;
  height:260px;
  overflow-y:auto;
  font-size:14px;
}

/* Messages */
.ai-msg{
  background:#f1f5f9;
  padding:10px 14px;
  border-radius:14px;
  margin-bottom:10px;
  animation:msgIn .35s ease;
}

@keyframes msgIn{
  from{
    opacity:0;
    transform:translateY(6px);
  }
  to{
    opacity:1;
    transform:none;
  }
}

/* Input */
.ai-chat-input{
  display:flex;
  border-top:1px solid #e5e7eb;
  background:#fff;
}

.ai-chat-input input{
  flex:1;
  padding:14px;
  border:none;
  outline:none;
  font-size:14px;
}

.ai-chat-input button{
  background:#2563eb;
  color:#fff;
  border:none;
  padding:0 18px;
  font-size:18px;
  cursor:pointer;
}

/* Close Button */
.ai-chat-header button{
  background:none;
  border:none;
  color:#fff;
  font-size:18px;
  cursor:pointer;
}
/* =========================
   AI CHAT – DARK MODE
========================= */
.ai-chat-box.dark{
  background:rgba(15,15,15,.92);
  color:#fff;
}

.ai-chat-box.dark .ai-chat-body{
  color:#e5e7eb;
}

.ai-chat-box.dark .ai-msg{
  background:#1f2937;
  color:#fff;
}

.ai-chat-box.dark .ai-chat-input{
  background:#111;
  border-top:1px solid #333;
}

.ai-chat-box.dark input{
  background:#111;
  color:#fff;
}

.ai-chat-box.dark button{
  background:#22c55e;
}

/* =========================
   TYPING DOTS
========================= */
.typing{
  display:flex;
  gap:4px;
  padding:8px 12px;
}

.typing span{
  width:6px;
  height:6px;
  background:#999;
  border-radius:50%;
  animation:blink 1.4s infinite both;
}

.typing span:nth-child(2){ animation-delay:.2s }
.typing span:nth-child(3){ animation-delay:.4s }

@keyframes blink{
  0%{opacity:.2}
  20%{opacity:1}
  100%{opacity:.2}
}

 /* About us */
/* =========================
   ABOUT US SECTION
========================= */
.about-section{
  padding:120px 20px;
  background:linear-gradient(to bottom,#ffffff 0%,#ffffff 100%);
}

.about-intro{
  text-align:center;
  max-width:900px;
  margin:0 auto 80px;
}

.about-intro h2{
  font-size:42px;
  font-weight:800;
}

.about-intro p{
  color:var(--text-muted);
  font-size:18px;
  margin-top:14px;
}

/* FOUNDER */
.about-founder{
  max-width:1100px;
  margin:0 auto 100px;
  display:grid;
  grid-template-columns:1fr 1.3fr;
  gap:50px;
  padding:40px;
  border-radius:24px;
}

.founder-img img{
  width:100%;
  border-radius:20px;
}

.founder-text h3{
  font-size:28px;
  margin-bottom:14px;
}

.founder-text p{
  margin-bottom:14px;
  color:var(--text-body);
}

/* TEAM */
.about-team{
  text-align:center;
  margin-bottom:100px;
}

.about-team h3{
  font-size:32px;
  margin-bottom:40px;
}

.team-grid{
  max-width:1000px;
  margin:auto;
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:30px;
}

.team-card{
  padding:40px 20px;
  border-radius:20px;
  transition:.35s ease;
}

.team-card i{
  font-size:34px;
  color:#2563eb;
  margin-bottom:14px;
}

.team-card:hover{
  transform:translateY(-8px);
  box-shadow:0 25px 60px rgba(0,0,0,.15);
}

/* JOURNEY */
.about-journey{
  max-width:800px;
  margin:auto;
  text-align:center;
}

.about-journey h3{
  font-size:32px;
  margin-bottom:30px;
}

.timeline{
  list-style:none;
  padding:0;
}

.timeline li{
  margin-bottom:16px;
  font-size:17px;
}

.timeline span{
  font-weight:700;
  color:#2563eb;
  margin-right:10px;
}

/* MOBILE */
@media(max-width:900px){
  .about-founder{
    grid-template-columns:1fr;
    text-align:center;
  }
}
/* captcha */
.captcha-box{
  display:flex;
  align-items:center;
  gap:14px;
  background:#f9fafb;
  padding:14px;
  border-radius:12px;
  border:1px solid #e5e7eb;
  font-weight:600;
}

#captchaQuestion{
  color:#2563eb;
  font-size:16px;
}

#captchaInput{
  flex:1;
  padding:12px;
  border-radius:10px;
  border:1px solid #d1d5db;
}
/* REGISTER DROPDOWN */
.register-drop{
  position:absolute;
  top:100%;
  right:0;
  width:260px;
  background:#ffffff;
  border-radius:16px;
  padding:16px;
  box-shadow:0 25px 60px rgba(0,0,0,.25);
  display:none;
  flex-direction:column;
  gap:10px;
  animation:dropIn .35s ease;
  z-index:999;
}

.register-drop input{
  padding:10px 12px;
  border-radius:10px;
  border:1px solid #e5e7eb;
  font-size:14px;
}

.register-drop button{
  background:#2563eb;
  color:#fff;
  border:none;
  padding:10px;
  border-radius:10px;
  font-weight:600;
  cursor:pointer;
}

@keyframes dropIn{
  from{
    opacity:0;
    transform:translateY(-10px) scale(.95);
  }
  to{
    opacity:1;
    transform:none;
  }
}
/* =========================
   CONTACT SECTION
========================= */

.contact-section{
  padding:120px 20px;
  background:linear-gradient(
    to bottom,
    #ffffff 0%,
    #ffffff 100%
  );
}

.contact-wrapper{
  max-width:1100px;
  margin:auto;
  display:grid;
  grid-template-columns:1.1fr 1fr;
  gap:70px;
  align-items:flex-start;
}

/* LEFT */
.contact-left h2{
  font-size:38px;
  margin-bottom:14px;
}

.contact-desc{
  color:#6b7280;
  margin-bottom:28px;
  font-size:16px;
}

.contact-item{
  display:flex;
  gap:14px;
  margin-bottom:18px;
  font-size:15px;
  color:#111827;
}

.contact-item i{
  color:#2563eb;
  margin-top:4px;
  font-size:16px;
}

/* MAP */
.map-box{
  margin-top:30px;
  border-radius:18px;
  overflow:hidden;
  border:1px solid #e5e7eb;
  filter:grayscale(100%);
  transition:filter .4s ease;
}

.map-box:hover{
  filter:grayscale(0%);
}

.map-box iframe{
  width:100%;
  height:260px;
  border:0;
}

/* RIGHT */
.contact-right{
  background:#ffffff;
  padding:40px;
  border-radius:20px;
  box-shadow:0 30px 80px rgba(0,0,0,.08);
}

.contact-right h3{
  margin-bottom:20px;
}

.contact-right input,
.contact-right textarea{
  width:100%;
  padding:14px;
  margin-bottom:14px;
  border-radius:10px;
  border:1px solid #e5e7eb;
  font-size:15px;
}

.contact-right input:focus,
.contact-right textarea:focus{
  outline:none;
  border-color:#2563eb;
  box-shadow:0 0 0 3px rgba(37,99,235,.15);
}

.contact-right button{
  width:100%;
  padding:14px;
  border:none;
  border-radius:12px;
  background:#1e56da;
  color:#fff;
  font-weight:600;
  cursor:pointer;
  transition:.3s;
}

.contact-right button:hover{
  transform:translateY(-2px);
  box-shadow:0 14px 35px rgba(0,0,0,.25);
}

/* MOBILE */
@media(max-width:900px){
  .contact-wrapper{
    grid-template-columns:1fr;
  }
}

