/* ----- CUSTOM VARIABLES (Blue & Red Theme) ----- */
:root {
  --red: #d91f26;
  --red-dark: #b01920;
  --red-light: #f03a40;
  --blue: #0a1f5c;
  --blue-mid: #1535a0;
  --blue-light: #1e45c8;
  --orange: #e87722;
  --white: #ffffff;
  --off: #f9f7f4;
  --off2: #f4f2ef;
  --gray: #6b7a99;
  --light: #e8eaf2;
  --text: #1a2340;
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  font-family: "DM Sans", sans-serif;
  color: var(--text);
  background: #fff;
  /* font-size: 14px; */
  line-height: 1.5;
}

    img {
        
         
            box-shadow: 0 20px 40px rgba(0,0,0,0.3);
            animation: updown 3s ease-in-out infinite;
        }
        
        @keyframes updown {
            0% {
                transform: translateY(0px);
            }
            50% {
                transform: translateY(-10px);
            }
            100% {
                transform: translateY(0px);
            }
        }
/* .text-secondary {
      font-size: 13px;
    } */

/* color utilities */
.bg-red {
  background-color: var(--red) !important;
}
.bg-blue {
  background-color: var(--blue) !important;
}
.text-red {
  color: var(--red) !important;
}
.text-blue {
  color: var(--blue) !important;
}
.border-red {
  border-color: var(--red) !important;
}
.border-blue {
  border-color: var(--blue) !important;
}

/* nav-dropdown */
.nav-dropdown a {
  font-size: 13px;
  display: flex;
  align-items: center;
  gap: 5px;
}

/* buttons */
.btn-red {
  background: var(--red);
  color: #fff;
  padding: 12px 28px;
  border-radius: 8px;
  font-weight: 700;
  font-size: 14px;
  box-shadow: 0 4px 14px rgba(217, 31, 38, 0.35);
  transition: all 0.2s;
  border: none;
}
.btn-red:hover {
  background: var(--red-dark);
  transform: translateY(-2px);
  color: white;
}
.btn-outline-blue {
  border: 1.5px solid var(--blue);
  color: var(--blue);
  padding: 10px 24px;
  border-radius: 8px;
  font-weight: 600;
  font-size: 13px;
  transition: all 0.2s;
  background: transparent;
}
.btn-outline-blue:hover {
  background: var(--blue);
  color: #fff;
}

/* utility bar */
.util-bar {
  background: #1a1a2e;
}

/* hero banner */
.hero-banner {
  background: linear-gradient(135deg, #fff8f0 0%, #fef3f3 45%, #eef3ff 100%);
  position: relative;
  overflow: hidden;
}
.hero-banner::before {
  content: "";
  position: absolute;
  inset: 0;
  background: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23d91f26' fill-opacity='0.03'%3E%3Ccircle cx='30' cy='30' r='4'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
  pointer-events: none;
}

/* stats card */
.stat-card {
  background: white;
  border-radius: 16px;
  padding: 20px 16px;
  text-align: center;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
  border: 1px solid var(--light);
  transition: transform 0.2s;
  height: 100%;
}
.stat-card:hover {
  transform: translateY(-3px);
}
.stat-number {
  font-size: 32px;
  font-weight: 800;
  color: var(--blue);
  line-height: 1.2;
}
.stat-label {
  font-size: 12px;
  color: var(--gray);
  font-weight: 500;
}

/* quote form */
.quote-card {
  background: #fff;
  border-radius: 20px;
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.08);
  border: 1px solid var(--light);
}
.input-custom {
  border: 1.5px solid var(--light);
  border-radius: 10px;
  padding: 10px 14px;
  font-size: 13px;
  transition: all 0.2s;
}
.input-custom:focus {
  border-color: var(--red);
  box-shadow: 0 0 0 3px rgba(217, 31, 38, 0.1);
  outline: none;
}

/* Quote Tabs */
.quote-tab {
  cursor: pointer;
  transition: all 0.2s;
  border-bottom: 3px solid transparent;
  padding-bottom: 8px;
}
.quote-tab:hover {
  border-bottom-color: var(--red);
}
.quote-tab.active {
  border-bottom-color: var(--red);
}
.quote-tab.active .lbl {
  color: var(--red);
  font-weight: 600;
}

/* Dropdown Menu */
.nav-dropdown {
  position: relative;
}
.dropdown-menu-custom {
  position: absolute;
  top: 100%;
  left: 0;
  background: white;
  border-radius: 12px;
  box-shadow: 0 15px 35px rgba(0, 0, 0, 0.12);
  min-width: 220px;
  opacity: 0;
  visibility: hidden;
  transform: translateY(10px);
  transition: all 0.25s ease;
  z-index: 1000;
  border: 1px solid var(--light);
}
.nav-dropdown:hover .dropdown-menu-custom {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
.dropdown-menu-custom a {
  display: block;
  padding: 10px 18px;
  color: var(--text);
  text-decoration: none;
  font-size: 13px;
  transition: all 0.2s;
  border-bottom: 1px solid var(--light);
}
.dropdown-menu-custom a:last-child {
  border-bottom: none;
}
.dropdown-menu-custom a:hover {
  background: var(--off);
  color: var(--red);
  padding-left: 24px;
}

/* Product cards (basic) */
.product-card {
  background: #fff;
  border-radius: 16px;
  padding: 22px 18px;
  height: 100%;
  transition: all 0.25s;
  border: 1px solid var(--light);
}
.product-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 12px 24px rgba(10, 31, 92, 0.12);
  border-color: var(--red-light);
}

/* Value Props Styles */
.value-illus {
  width: 100%;
  height: 260px;
  border-radius: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 90px;
}
.vi-dep {
  background: linear-gradient(135deg, #fff0e6, #ffe4d4);
}
.vi-app {
  background: linear-gradient(135deg, #e6f0ff, #d4e8ff);
}
.vi-trans {
  background: linear-gradient(135deg, #f0ffe6, #e4ffd4);
}

/* Products Section (Red Background) */
.products-section {
  background: linear-gradient(135deg, var(--red), var(--red-dark));
}
.prod-tab {
  background: rgba(255, 255, 255, 0.15);
  color: #fff;
  border: none;
  padding: 8px 20px;
  border-radius: 20px;
  font-size: 12.5px;
  font-weight: 600;
  transition: all 0.2s;
}
.prod-tab.active,
.prod-tab:hover {
  background: #fff;
  color: var(--red);
}
.prod-card {
  background: #fff;
  border-radius: 16px;
  padding: 22px 18px;
  height: 100%;
  transition: all 0.25s;
  border: 1px solid var(--light);
}
.prod-card:hover {
  transform: translateY(-5px);
  box-shadow: 0 12px 24px rgba(10, 31, 92, 0.12);
}

/* App Section */
.phone-mock {
  width: 100%;
  height: 380px;
  background: linear-gradient(135deg, #dce8ff, #c8d8ff);
  border-radius: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 80px;
  box-shadow: 0 20px 50px rgba(10, 31, 92, 0.2);
}

/* Video Section */
.play-btn {
  width: 64px;
  height: 64px;
  background: var(--red);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  box-shadow: 0 8px 24px rgba(217, 31, 38, 0.5);
}
.play-btn::after {
  content: "";
  border-left: 24px solid #fff;
  border-top: 14px solid transparent;
  border-bottom: 14px solid transparent;
  margin-left: 4px;
}

/* Testimonial Card */
.testimonial-card {
  background: var(--off);
  border-radius: 16px;
  padding: 24px;
  position: relative;
}
.testimonial-card::before {
  content: '"';
  font-size: 56px;
  color: var(--light);
  font-family: "Playfair Display", serif;
  position: absolute;
  top: 12px;
  left: 20px;
  line-height: 1;
}
.t-stars {
  color: #f5a623;
  font-size: 12px;
  letter-spacing: 1px;
  margin-bottom: 4px;
}

/* Award Card */
.award-card {
  display: flex;
  gap: 14px;
  padding: 16px;
  border: 1.5px solid var(--light);
  border-radius: 14px;
  margin-bottom: 14px;
  align-items: flex-start;
}
.award-ico {
  width: 48px;
  height: 48px;
  background: linear-gradient(135deg, #ffd166, #f5a623);
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 22px;
  flex-shrink: 0;
}
.award-ico.blue {
  background: linear-gradient(135deg, #dce8ff, #b8d0ff);
}

/* Footer */
.footer-main {
  background: var(--blue);
}
.footer-link {
  color: rgba(255, 255, 255, 0.6);
  font-size: 12.5px;
  transition: color 0.2s;
  text-decoration: none;
}
.footer-link:hover {
  color: var(--red-light);
}

/* Language Switcher Active Style */
.lang-switch {
  cursor: pointer;
  transition: all 0.2s;
}
.lang-switch:hover {
  color: var(--red) !important;
}
.lang-active {
  color: var(--red) !important;
  font-weight: 600;
  border-bottom: 1px solid var(--red);
}

.feature-icon {
  font-size: 40px;
}

/* .util-bar a {
  color: #000 !important;
} */

.dropdown,
.dropdown-center,
.dropend,
.dropstart,
.dropup,
.dropup-center {
  position: relative;
  z-index: 9999;
}
@media (max-width: 768px) {
  .stat-number {
    font-size: 24px;
  }
  .hero-banner h1 {
    font-size: 28px;
  }
  .value-illus {
    height: 200px;
    font-size: 60px;
  }
  .phone-mock {
    height: 280px;
    font-size: 60px;
  }
}
