body {
  font-family: "Inter", sans-serif;
}
html,
body {
  overflow-x: hidden;
}

.glassmorphism {
  background: rgba(255, 255, 255, 0.7);
  backdrop-filter: blur(10px);
  border: 1px solid rgba(255, 255, 255, 0.2);
  box-shadow: 0 8px 32px rgba(31, 38, 135, 0.1);
}

.neomorphism {
  background: #f5f5f7;
  box-shadow: 8px 8px 16px rgba(174, 174, 192, 0.4),
    -8px -8px 16px rgba(255, 255, 255, 0.8);
  border-radius: 16px;
}

.neomorphism-button {
  background: #f5f5f7;
  box-shadow: 4px 4px 8px rgba(174, 174, 192, 0.4),
    -4px -4px 8px rgba(255, 255, 255, 0.8);
  border-radius: 8px;
  transition: all 0.3s ease;
}

.neomorphism-button:hover {
  box-shadow: 2px 2px 4px rgba(174, 174, 192, 0.4),
    -2px -2px 4px rgba(255, 255, 255, 0.8);
  transform: translateY(2px);
}

.glow-border {
  box-shadow: 0 0 10px rgba(99, 102, 241, 0.3);
  transition: box-shadow 0.3s ease;
}

.glow-border:hover {
  box-shadow: 0 0 20px rgba(99, 102, 241, 0.5);
}
/* Home section images */
#home {
  background-image: url("../images/whitebgforhome.png");
  background-size: cover;
  background-position: center 30;
  height: 100vh;
}

/* Mobile (max-width: 767px) */
@media (max-width: 767px) {
  #home {
    background-image: url("assets/images/mobile-bg.png"); /* mobile wali image */
  }
}

/* Templates cards css styel */
.card {
  background-color: white;
  border: 1px solid var(--border-color);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.card:hover {
  transform: translateY(-5px);
  box-shadow: 0 10px 25px -5px rgba(0, 0, 0, 0.1);
}
.template-image {
  transition: transform 0.3s ease;
}
.card:hover .template-image {
  transform: scale(1.05);
}
input:focus,
textarea:focus {
  outline: none;
  border-color: var(--primary);
}
.custom-switch {
  position: relative;
  display: inline-block;
  width: 52px;
  height: 26px;
}
.custom-switch input {
  opacity: 0;
  width: 0;
  height: 0;
}
.switch-slider {
  position: absolute;
  cursor: pointer;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #374151;
  transition: 0.4s;
  border-radius: 34px;
}
.switch-slider:before {
  position: absolute;
  content: "";
  height: 18px;
  width: 18px;
  left: 4px;
  bottom: 4px;
  background-color: white;
  transition: 0.4s;
  border-radius: 50%;
}
input:checked + .switch-slider {
  background-color: #6366f1;
}
input:checked + .switch-slider:before {
  transform: translateX(26px);
}
.nav-link {
  position: relative;
}
.nav-link::after {
  content: "";
  position: absolute;
  width: 0;
  height: 2px;
  bottom: -4px;
  left: 0;
  background-color: #6366f1;
  transition: width 0.3s ease;
}
.nav-link:hover::after,
.nav-link.active::after {
  width: 100%;
}
.custom-checkbox {
  position: relative;
  padding-left: 30px;
  cursor: pointer;
  user-select: none;
}
.custom-checkbox input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}
.checkmark {
  position: absolute;
  top: 0;
  left: 0;
  height: 20px;
  width: 20px;
  background-color: transparent;
  border: 2px solid #6366f1;
  border-radius: 4px;
}
.custom-checkbox input:checked ~ .checkmark {
  background-color: #6366f1;
}
.checkmark:after {
  content: "";
  position: absolute;
  display: none;
}
.custom-checkbox input:checked ~ .checkmark:after {
  display: block;
}
.custom-checkbox .checkmark:after {
  left: 6px;
  top: 2px;
  width: 5px;
  height: 10px;
  border: solid white;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}

/* Bubble cursor styles */
canvas.bubble-cursor {
  position: fixed;
  top: 0;
  left: 0;
  pointer-events: none;
  z-index: 9999;
}

/* ==========Slite text style============ */
.split-text {
  position: relative;
  display: inline-block;
  font-weight: 800;
  cursor: pointer;
}

.split-text::before,
.split-text::after {
  content: attr(data-text);
  position: absolute;
  left: 0;
  width: 100%;
  transition: transform 0.4s ease;
  pointer-events: none;
}

.split-text::before {
  top: 0;
  color: #06b6d4; /* cyan-500 */
  clip-path: inset(0 0 50% 0);
  transform: translateY(0);
}

.split-text::after {
  bottom: 0;
  color: #a855f7; /* purple-500 */
  clip-path: inset(50% 0 0 0);
  transform: translateY(0);
}

.split-text:hover::before {
  transform: translateY(-8px);
}

.split-text:hover::after {
  transform: translateY(8px);
}

/* Get in touch styles */
input:checked + .switch-slider {
  background-color: #6366f1;
}

input:checked + .switch-slider:before {
  transform: translateX(26px);
}

.custom-checkbox {
  position: relative;
  display: inline-block;
  width: 20px;
  height: 20px;
  margin-right: 8px;
}

.custom-checkbox input {
  opacity: 0;
  width: 0;
  height: 0;
}

.checkbox-mark {
  position: absolute;
  top: 0;
  left: 0;
  height: 20px;
  width: 20px;
  background-color: #f5f5f7;
  border-radius: 4px;
  box-shadow: inset 2px 2px 5px rgba(174, 174, 192, 0.2),
    inset -2px -2px 5px rgba(255, 255, 255, 0.7);
}

.custom-checkbox input:checked ~ .checkbox-mark {
  background-color: #6366f1;
}

.checkbox-mark:after {
  content: "";
  position: absolute;
  display: none;
}

.custom-checkbox input:checked ~ .checkbox-mark:after {
  display: block;
}

.custom-checkbox .checkbox-mark:after {
  left: 7px;
  top: 3px;
  width: 6px;
  height: 10px;
  border: solid white;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}

.custom-radio {
  position: relative;
  display: inline-block;
  width: 20px;
  height: 20px;
  margin-right: 8px;
}

.custom-radio input {
  opacity: 0;
  width: 0;
  height: 0;
}

.radio-mark {
  position: absolute;
  top: 0;
  left: 0;
  height: 20px;
  width: 20px;
  background-color: #f5f5f7;
  border-radius: 50%;
  box-shadow: inset 2px 2px 5px rgba(174, 174, 192, 0.2),
    inset -2px -2px 5px rgba(255, 255, 255, 0.7);
}

.custom-radio input:checked ~ .radio-mark {
  background-color: #f5f5f7;
}

.radio-mark:after {
  content: "";
  position: absolute;
  display: none;
}

.custom-radio input:checked ~ .radio-mark:after {
  display: block;
}

.custom-radio .radio-mark:after {
  top: 6px;
  left: 6px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #6366f1;
}

.custom-range {
  -webkit-appearance: none;
  width: 100%;
  height: 8px;
  border-radius: 5px;
  background: #f5f5f7;
  box-shadow: inset 2px 2px 5px rgba(174, 174, 192, 0.2),
    inset -2px -2px 5px rgba(255, 255, 255, 0.7);
  outline: none;
}

.custom-range::-webkit-slider-thumb {
  -webkit-appearance: none;
  appearance: none;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #6366f1;
  cursor: pointer;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
}

.custom-range::-moz-range-thumb {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #6366f1;
  cursor: pointer;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
  border: none;
}

.bg-gradient {
  background: linear-gradient(
    135deg,
    rgba(99, 102, 241, 0.1),
    rgba(168, 85, 247, 0.1)
  );
}
