/* ============================================================
   VaultEdge — Custom Override CSS
   Completely new visual identity: dark navy + gold accent
   Fonts: Nunito (headings) + DM Sans (body)
   ============================================================ */

@import url("https://fonts.googleapis.com/css2?family=Nunito:wght@400;600;700;800;900&family=DM+Sans:wght@300;400;500;600&display=swap");

/* ---- CSS VARIABLES ---- */
:root {
  --ve-dark:     #000000;
  --ve-dark2:    #000000;
  --ve-navy:     #000000;
  --ve-gold:     #ff6a00;
  --ve-gold2:    #e8b84b;
  --ve-light:    #f4f7fb;
  --ve-white:    #ffffff;
  --ve-text:     #4a5568;
  --ve-border:   #e2e8f0;
  --ve-radius:   12px;
  --ve-shadow:   0 8px 30px rgba(13,27,42,0.10);
  --ve-trans:    all 0.3s ease;
}

/* ---- RESET BODY FONTS ---- */
body { font-family: 'DM Sans', sans-serif; color: var(--ve-text); }
h1,h2,h3,h4,h5,h6 { font-family: 'Nunito', sans-serif; color: var(--ve-dark); }

/* ============================================================
   NAVBAR
   ============================================================ */
.ve-header {
  position: fixed;
  top: 0; left: 0; right: 0;
  z-index: 9999;
  background: var(--ve-dark);
  box-shadow: 0 2px 20px rgba(0,0,0,0.25);
  transition: var(--ve-trans);
}
.ve-header.scrolled {
  background: #ffffff;
  backdrop-filter: blur(10px);
  color:#000000;
}
.ve-nav-wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 40px;
  height: 72px;
}
/* Logo */
.ve-logo a { display:flex; align-items:center; gap:10px; text-decoration:none; width:35%!important; }
.ve-logo-icon {
  width:38px; height:38px;
  background: var(--ve-gold);
  color: var(--ve-dark);
  border-radius: 8px;
  display:flex; align-items:center; justify-content:center;
  font-family:'Nunito',sans-serif; font-weight:900; font-size:20px;
}
.ve-logo-text { font-family:'Nunito',sans-serif; font-size:20px; color:#fff; font-weight:600; }
.ve-logo-text strong { color: var(--ve-gold); font-weight:900; }

/* Nav links */
.ve-nav ul { list-style:none; margin:0; padding:0; display:flex; gap:6px; }
.ve-nav ul li { position:relative; flex-shrink: 0;}
.ve-nav ul li a {
  display:block; padding:18px 10px; color:#ff6a00;white-space: nowrap;
  font-size:14px; font-weight:500; text-decoration:none; width: auto !important;
  border-radius:6px; transition:var(--ve-trans);
}
.ve-nav ul li a:hover, .ve-nav ul li a.active { color:#ff6a00; text-decoration:underline;  }
.ve-nav ul li a.active { color:var(--ve-gold);text-decoration:underline; }

/* Dropdown */
.ve-nav .has-drop:hover .ve-dropdown { opacity:1; visibility:visible; transform:translateY(0); }
.ve-dropdown {
  position:absolute; top:100%; left:0; min-width:200px;
  background: var(--ve-dark2); border-radius:10px;
  padding:10px 0; opacity:0; visibility:hidden;
  transform:translateY(10px); transition:var(--ve-trans);
  box-shadow: 0 20px 40px rgba(0,0,0,0.3);
  border:1px solid rgba(255,255,255,0.08);
}
.ve-dropdown li a { padding:10px 20px; border-radius:0; color:rgba(255,255,255,0.7); font-size:13px; }
.ve-dropdown li a:hover { color:#fff; background:rgba(212,160,23,0.12); }

/* CTA button */
.ve-nav-cta .ve-cta-btn {
  display:inline-flex; align-items:center; gap:8px;
  background: var(--ve-gold); color: var(--ve-dark);
  padding:10px 10px; border-radius:8px;flex-shrink: 0;
  font-weight:700; font-size:14px; text-decoration:none;
  transition:var(--ve-trans);
}
.ve-cta-btn:hover { background:var(--ve-gold2); transform:translateY(-1px); }

/* Mobile toggle */
.ve-toggler { display:none; flex-direction:column; gap:5px; background:none; border:none; cursor:pointer; padding:4px; }
.ve-toggler span { display:block; width:24px; height:2px; background:#fff; border-radius:2px; transition:var(--ve-trans); }

/* Mobile menu */
.ve-mobile-menu {
  display:none; background:var(--ve-dark2); padding:16px 20px;
  border-top:1px solid rgba(255,255,255,0.08);
}
.ve-mobile-menu.open { display:block; }
.ve-mobile-menu ul { list-style:none; margin:0; padding:0; }
.ve-mobile-menu ul li a { display:block; padding:12px 8px; color:rgba(255,255,255,0.8); text-decoration:none; border-bottom:1px solid rgba(255,255,255,0.05); }

/* ============================================================
   HERO
   ============================================================ */
.ve-hero {
  display:flex; min-height:100vh;
  padding-top:72px; background:var(--ve-dark);
  overflow:hidden;
}
.ve-hero-left {
  flex:0 0 55%; padding:80px 60px 80px 80px;
  display:flex; flex-direction:column; justify-content:center;
  position:relative; z-index:2;
}
.ve-hero-badge {
  display:inline-block; background:rgba(212,160,23,0.15);
  color:var(--ve-gold); border:1px solid rgba(212,160,23,0.3);
  border-radius:50px; padding:6px 18px; font-size:13px; font-weight:600;
  margin-bottom:28px; letter-spacing:0.5px;
}
.ve-hero-left h1 {
  font-size:62px; line-height:1.1; color:#fff; font-weight:900;
  margin-bottom:22px;
}
.ve-hero-left h1 .ve-highlight { color:var(--ve-gold); }
.ve-hero-left p { font-size:17px; color:rgba(255,255,255,0.65); line-height:1.7; margin-bottom:40px; max-width:480px; }

/* Hero buttons */
.ve-hero-btns { display:flex; gap:16px; flex-wrap:wrap; margin-bottom:50px; }
.ve-btn-primary {
  display:inline-block; background:var(--ve-gold); color:var(--ve-dark);
  padding:14px 32px; border-radius:8px; font-weight:700; font-size:15px;
  text-decoration:none; transition:var(--ve-trans);
}
.ve-btn-primary:hover { background:var(--ve-gold2); transform:translateY(-2px); box-shadow:0 8px 25px rgba(212,160,23,0.4); color:var(--ve-dark); }
.ve-btn-ghost {
  display:inline-block; border:2px solid rgba(255,255,255,0.25);
  color:#fff; padding:12px 30px; border-radius:8px;
  font-weight:600; font-size:15px; text-decoration:none; transition:var(--ve-trans);
}
.ve-btn-ghost:hover { border-color:var(--ve-gold); color:var(--ve-gold); background:rgba(212,160,23,0.08); }

/* Hero stats */
.ve-hero-stats { display:flex; align-items:center; gap:24px; }
.ve-stat strong { display:block; font-size:28px; color:#fff; font-family:'Nunito',sans-serif; font-weight:900; }
.ve-stat span { font-size:12px; color:rgba(255,255,255,0.5); text-transform:uppercase; letter-spacing:1px; }
.ve-stat-divider { width:1px; height:40px; background:rgba(255,255,255,0.15); }

/* Hero right */
.ve-hero-right {
  flex:0 0 45%; position:relative; overflow:hidden;
}
.ve-hero-img-main {
  position:absolute; inset:0;
  background-size:cover; background-position:center;
}
.ve-hero-img-main::after { content:''; position:absolute; inset:0; background:linear-gradient(120deg, var(--ve-dark) 0%, transparent 40%); }
.ve-hero-img-accent {
  position:absolute; bottom:40px; right:40px;
  width:200px; height:140px; border-radius:14px;
  background-size:cover; background-position:center;
  border:3px solid var(--ve-gold); box-shadow:0 20px 50px rgba(0,0,0,0.4);
  z-index:3;
}
.ve-float-card {
  position:absolute; top:60px; right:60px; z-index:4;
  background:rgba(255,255,255,0.95); border-radius:14px;
  padding:16px 20px; display:flex; align-items:center; gap:14px;
  box-shadow:0 20px 50px rgba(0,0,0,0.35); backdrop-filter:blur(10px);
}
.ve-float-card i { font-size:28px; color:var(--ve-gold); }
.ve-float-card strong { display:block; font-size:22px; font-family:'Nunito',sans-serif; font-weight:900; color:var(--ve-dark); }
.ve-float-card span { font-size:12px; color:var(--ve-text); }

/* ============================================================
   TRUST BAR
   ============================================================ */
.ve-trust-bar {
  background: var(--ve-white);
  border-top:solid 2px #ff6a00;
  border-bottom:solid 2px #ff6a00;
  padding: 14px 0;
  overflow:hidden;
  white-space:nowrap;
}
.ve-trust-inner {
  display:inline-flex; gap:60px;
  animation: ve-marquee 25s linear infinite;
}
.ve-trust-inner span { font-size:13px; font-weight:700; color:var(--ve-dark); display:inline-flex; align-items:center; gap:8px; }
.ve-trust-inner span i { font-size:14px; }
@keyframes ve-marquee { from { transform:translateX(0); } to { transform:translateX(-50%); } }

/* ============================================================
   SECTION SHARED
   ============================================================ */
.ve-section { padding: 10px 0; }
.ve-section-header { margin-bottom:60px; }
.ve-section-tag {
  display:inline-block; background:rgba(212,160,23,0.1);
  color:var(--ve-gold); border:1px solid rgba(212,160,23,0.25);
  border-radius:50px; padding:5px 25px; font-size:12px; font-weight:700;
  text-transform:uppercase; letter-spacing:1.5px; margin-bottom:14px;margin-top:20px;
}
.ve-section-tag-green {
  display:inline-block; background:rgba(212,160,23,0.1);
  color:#55ad22; border:1px solid #55ad22;
  border-radius:50px; padding:5px 16px; font-size:12px; font-weight:700;
  text-transform:uppercase; letter-spacing:1.5px; margin-bottom:14px;
}
.ve-section-tag-blue {
  display:inline-block; background:rgba(212,160,23,0.1);
  color:#1677e8; border:1px solid #1677e8;
  border-radius:50px; padding:5px 16px; font-size:12px; font-weight:700;
  text-transform:uppercase; letter-spacing:1.5px; margin-bottom:14px;
}
.ve-section-tag del {
   
    text-decoration: line-through;
    margin-left: 4px;
}
.ve-section-header h2 { font-size:42px; font-weight:900; color:var(--ve-dark); margin-bottom:14px; line-height:1.2; }
.ve-section-header h2 span { color:var(--ve-gold); }
.ve-section-header p { font-size:16px; color:var(--ve-text); max-width:580px; margin:0 auto; }

/* ============================================================
   SERVICES GRID
   ============================================================ */
.ve-services-section { background: var(--ve-light); }
.ve-services-grid {
  display:grid; grid-template-columns:repeat(3, 1fr);
  gap:28px;
}
.ve-service-card {
  background:#fff; border-radius:var(--ve-radius);
  padding:36px 30px; transition:var(--ve-trans);
  border:1px solid var(--ve-border);
  position:relative; overflow:hidden;
}
.ve-service-card::before {
  content:''; position:absolute; bottom:0; left:0; right:0; height:3px;
  background: linear-gradient(90deg, var(--ve-gold), var(--ve-gold2));
  transform:scaleX(0); transform-origin:left; transition:var(--ve-trans);
}
.ve-service-card:hover { transform:translateY(-6px); box-shadow:var(--ve-shadow); }
.ve-service-card:hover::before { transform:scaleX(1); }
.ve-service-icon {
  width:60px; height:60px; background:linear-gradient(135deg, var(--ve-dark), var(--ve-navy));
  border-radius:14px; display:flex; align-items:center; justify-content:center;
  margin-bottom:22px; font-size:26px; color:var(--ve-gold);
}
.ve-service-card h4 { font-size:18px; font-weight:800; color:var(--ve-dark); margin-bottom:10px; }
.ve-service-card p { font-size:14px; line-height:1.7; margin-bottom:20px; color:var(--ve-text); }
.ve-card-link { font-size:14px; font-weight:700; color:var(--ve-gold); text-decoration:none; display:inline-flex; align-items:center; gap:6px; transition:var(--ve-trans); }
.ve-card-link:hover { gap:10px; color:var(--ve-dark); }

/* ============================================================
   WHY US
   ============================================================ */
.ve-whyus-section { background:#fff; }
.ve-whyus-img-wrap { position:relative; padding-bottom:40px; padding-right:40px; }
.ve-whyus-img-main { height:480px; border-radius:16px; background-size:cover; background-position:center; }
.ve-whyus-badge {
  position:absolute; bottom:0; right:0;
  background: var(--ve-gold); border-radius:14px; padding:22px 28px;
  text-align:center; min-width:160px;
}
.ve-whyus-badge strong { display:block; font-size:40px; font-family:'Nunito',sans-serif; font-weight:900; color:var(--ve-dark); }
.ve-whyus-badge span { font-size:12px; font-weight:600; color:var(--ve-dark); opacity:0.7; text-transform:uppercase; letter-spacing:0.8px; }

.ve-whyus-content { padding-left:40px; }
.ve-whyus-content h2 { font-size:40px; font-weight:900; line-height:1.2; margin-bottom:16px; }
.ve-whyus-content h2 span { color:var(--ve-gold); }
.ve-whyus-content > p { font-size:15px; line-height:1.8; margin-bottom:32px; }

.ve-checklist { display:flex; flex-direction:column; gap:22px; }
.ve-check-item { display:flex; align-items:flex-start; gap:16px; }
.ve-check-item > i { font-size:22px; color:var(--ve-gold); margin-top:2px; flex-shrink:0; }
.ve-check-item strong { display:block; font-size:16px; font-weight:800; color:var(--ve-dark); margin-bottom:4px; }
.ve-check-item p { font-size:14px; color:var(--ve-text); margin:0; line-height:1.6; }
.mt-30 { margin-top:30px; }

/* ============================================================
   COUNTERS
   ============================================================ */
.ve-counter-section {
  background: linear-gradient(135deg, var(--ve-dark) 0%, var(--ve-navy) 100%);
  padding:20px 0;
}
.ve-counter-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:10px; }
.ve-counter-item { text-align:center; padding:30px 20px; border-right:1px solid rgba(255,255,255,0.1); }
.ve-counter-item:last-child { border-right:none; }
.ve-counter-item i { font-size:36px; color:var(--ve-gold); margin-bottom:14px; display:block; }
.ve-counter-item strong { font-size:26px; font-family:'Nunito',sans-serif; font-weight:900; color:#fff; line-height:1; }
.ve-counter-item span { font-size:24px; color:var(--ve-gold); font-weight:700; }
.ve-counter-item p { font-size:14px; color:rgba(255,255,255,0.55); margin-top:6px; text-transform:uppercase; letter-spacing:1px; }

/* ============================================================
   TESTIMONIALS
   ============================================================ */
.ve-testimonials-section { background:var(--ve-light); }
.ve-testi-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:28px; }
.ve-testi-card {
  background:#fff; border-radius:var(--ve-radius); padding:32px 28px;
  box-shadow:var(--ve-shadow); border:1px solid var(--ve-border); transition:var(--ve-trans);
}
.ve-testi-card:hover { transform:translateY(-4px); }
.ve-testi-stars { font-size:18px; color:var(--ve-gold); margin-bottom:16px; letter-spacing:2px; }
.ve-testi-card > p { font-size:15px; line-height:1.8; color:var(--ve-text); margin-bottom:24px; font-style:italic; }
.ve-testi-author { display:flex; align-items:center; gap:14px; }
.ve-testi-avatar { width:50px; height:50px; border-radius:50%; background-size:cover; background-position:center; flex-shrink:0; }
.ve-testi-author strong { display:block; font-size:15px; font-weight:800; color:var(--ve-dark); }
.ve-testi-author span { font-size:13px; color:var(--ve-text); }

/* ============================================================
   CTA BANNER
   ============================================================ */
.ve-cta-banner { position:relative; padding:90px 0; background-size:cover; background-position:center; }
.ve-cta-overlay { position:absolute; inset:0; background:linear-gradient(90deg, rgba(13,27,42,0.92) 60%, rgba(13,27,42,0.6)); }
.ve-cta-content { position:relative; z-index:2; }
.ve-cta-content h2 { font-size:38px; font-weight:900; color:#fff; margin-bottom:14px; }
.ve-cta-content h2 span { color:var(--ve-gold); }
.ve-cta-content p { font-size:16px; color:rgba(255,255,255,0.7); }
.ve-btn-white {
  display:inline-block; background:#fff; color:var(--ve-dark);
  padding:16px 34px; border-radius:8px; font-weight:800; font-size:15px;
  text-decoration:none; transition:var(--ve-trans);
}
.ve-btn-white:hover { background:var(--ve-gold); color:var(--ve-dark); transform:translateY(-2px); }
.text-lg-right { text-align:right; }

/* ============================================================
   INSIGHTS
   ============================================================ */
.ve-insights-section { background:#fff; }
.ve-insight-card { border-radius:var(--ve-radius); overflow:hidden; border:1px solid var(--ve-border); transition:var(--ve-trans); background:#fff; }
.ve-insight-card:hover { transform:translateY(-5px); box-shadow:var(--ve-shadow); }
.ve-insight-img { height:220px; background-size:cover; background-position:center; }
.ve-insight-body { padding:26px; }
.ve-insight-cat { display:inline-block; background:rgba(212,160,23,0.1); color:var(--ve-gold); font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:1.5px; border-radius:4px; padding:4px 10px; margin-bottom:12px; }
.ve-insight-body h5 a { font-size:17px; font-weight:800; color:var(--ve-dark); text-decoration:none; line-height:1.4; display:block; margin-bottom:10px; }
.ve-insight-body h5 a:hover { color:var(--ve-gold); }
.ve-insight-body > p { font-size:14px; color:var(--ve-text); line-height:1.7; margin-bottom:16px; }
.ve-insight-meta { display:flex; justify-content:space-between; align-items:center; }
.ve-insight-meta span { font-size:13px; color:#aaa; display:inline-flex; align-items:center; gap:6px; }
.ve-insight-meta a { font-size:13px; font-weight:700; color:var(--ve-gold); text-decoration:none; display:inline-flex; align-items:center; gap:5px; transition:var(--ve-trans); }
.ve-insight-meta a:hover { gap:10px; }

/* ============================================================
   NEWSLETTER
   ============================================================ */
.ve-newsletter-section { background:linear-gradient(135deg, var(--ve-dark) 0%, var(--ve-navy) 100%); padding:60px 0; }
.ve-newsletter-wrap { display:flex; align-items:center; justify-content:space-between; gap:40px; flex-wrap:wrap; }
.ve-nl-left { display:flex; align-items:center; gap:20px; }
.ve-nl-left i { font-size:42px; color:var(--ve-gold); flex-shrink:0; }
.ve-nl-left h3 { font-size:22px; color:#fff; font-weight:900; margin-bottom:4px; }
.ve-nl-left p { font-size:14px; color:rgba(255,255,255,0.55); margin:0; }
.ve-nl-form { display:flex; gap:0; border-radius:8px; overflow:hidden; border:2px solid rgba(212,160,23,0.3); }
.ve-nl-form input { background:rgba(255,255,255,0.08); border:none; padding:14px 20px; color:#fff; font-size:14px; width:300px; outline:none; }
.ve-nl-form input::placeholder { color:rgba(255,255,255,0.4); }
.ve-nl-form button { background:var(--ve-gold); color:var(--ve-dark); border:none; padding:14px 28px; font-weight:800; font-size:14px; cursor:pointer; transition:var(--ve-trans); }
.ve-nl-form button:hover { background:var(--ve-gold2); }

/* ============================================================
   FOOTER
   ============================================================ */
.ve-footer { background:var(--ve-dark); padding:40px 0 0; }

.ve-footer-brand p { font-size:14px; color:rgba(255,255,255,0.5); line-height:1.8; margin:18px 0 24px; }
.ve-footer-logo { display:inline-flex; align-items:center; gap:10px; text-decoration:none; margin-bottom:14px; }

.ve-social { display:flex; gap:10px; }
.ve-social a {
  width:38px; height:38px; border-radius:8px;
  background:rgba(255,255,255,0.06); color:rgba(255,255,255,0.6);
  display:flex; align-items:center; justify-content:center;
  font-size:14px; text-decoration:none; transition:var(--ve-trans);
  border:1px solid rgba(255,255,255,0.08);
}
.ve-social a:hover { background:var(--ve-gold); color:var(--ve-dark); border-color:var(--ve-gold); }

.ve-footer-title { font-size:15px; font-weight:800; color:#fff; margin-bottom:20px; padding-bottom:12px; border-bottom:1px solid rgba(255,255,255,0.08); text-transform:uppercase; letter-spacing:1px; }

.ve-footer-links { list-style:none; margin:0; padding:0; }
.ve-footer-links li { margin-bottom:10px; }
.ve-footer-links li a { font-size:14px; color:rgba(255,255,255,0.5); text-decoration:none; transition:var(--ve-trans); display:inline-flex; align-items:center; gap:6px; }
.ve-footer-links li a::before { content:'›'; color:var(--ve-gold); font-size:16px; }
.ve-footer-links li a:hover { color:var(--ve-gold); padding-left:4px; }

.ve-footer-contact { list-style:none; margin:0; padding:0; }
.ve-footer-contact li { font-size:14px; color:rgba(255,255,255,0.5); margin-bottom:12px; display:flex; align-items:flex-start; gap:10px; line-height:1.6; }
.ve-footer-contact li i { color:var(--ve-gold); margin-top:2px; flex-shrink:0; }

.ve-footer-bottom { background:rgba(0,0,0,0.3); border-top:1px solid rgba(255,255,255,0.06); }
.ve-footer-bottom-inner { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:14px; }
.ve-footer-bottom-inner p { font-size:13px; color:rgba(255,255,255,0.35); margin:0; }
.ve-footer-bottom-inner ul { list-style:none; margin:0; padding:0; display:flex; gap:20px; }
.ve-footer-bottom-inner ul li a { font-size:13px; color:rgba(255,255,255,0.35); text-decoration:none; transition:var(--ve-trans); }
.ve-footer-bottom-inner ul li a:hover { color:var(--ve-gold); }

/* ============================================================
   RESPONSIVE
   ============================================================ */
@media (max-width:1199px) {
  .ve-hero-left { padding:70px 40px; }
  .ve-hero-left h1 { font-size:28px; }
  .ve-services-grid { grid-template-columns:repeat(2,1fr); }
  .ve-counter-grid { grid-template-columns:repeat(2,1fr); }
  .ve-testi-grid { grid-template-columns:repeat(2,1fr); }
}
@media (max-width:991px) {
  .ve-hero { flex-direction:column; min-height:auto; }
  .ve-hero-left { flex:none; padding:17px 30px 60px; }
  .ve-hero-right { flex:none; height:350px; }
  .ve-nav, .ve-nav-cta { display:none; }
  .ve-toggler { display:flex; }
  .ve-whyus-content { padding-left:0; margin-top:40px; }
  .ve-newsletter-wrap { flex-direction:column; align-items:flex-start; }
  .ve-nl-form { width:100%; }
  .ve-nl-form input { flex:1; width:auto; }
}
@media (max-width:767px) {
  .ve-hero-left h1 { font-size:28px; }
  .ve-services-grid, .ve-testi-grid, .ve-counter-grid { grid-template-columns:1fr; }
  .ve-hero-stats { flex-wrap:wrap; gap:16px; }
  .ve-nav-wrap { padding:0 20px; }
  .ve-footer-bottom-inner { flex-direction:column; text-align:center; }
  .ve-cta-content h2 { font-size:28px; }
  .text-lg-right { text-align:left; margin-top:20px; }
  .ve-counter-item { border-right:none; border-bottom:1px solid rgba(255,255,255,0.1); }
  .ve-counter-item:last-child { border-bottom:none; }
}

/* ============================================================
   HIDE OLD HEADER (replaced by ve-header)
   ============================================================ */
.header-area { display:none !important; }

/* Ensure body offset for fixed navbar */
body { padding-top:0; }

/* ============================================================
   PAGE HERO (inner pages)
   ============================================================ */
.ve-page-hero {
  position:relative; padding:160px 0 90px;
  background-size:cover; background-position:center;
  overflow:hidden;
}
.ve-page-hero-overlay { position:absolute; inset:0; background:linear-gradient(135deg, rgba(13,27,42,0.92) 0%, rgba(13,27,42,0.6) 100%); }
.ve-page-hero-content { position:relative; z-index:2; }
.ve-page-hero-content h1 { font-size:50px; font-weight:900; color:#fff; margin:12px 0 20px; line-height:1.15; }
.ve-page-hero-content h1 span { color:var(--ve-gold); }
.ve-breadcrumb { list-style:none; margin:0; padding:0; display:flex; gap:10px; align-items:center; }
.ve-breadcrumb li { font-size:14px; color:rgba(255,255,255,0.55); }
.ve-breadcrumb li::after { content:'/'; margin-left:10px; }
.ve-breadcrumb li:last-child::after { display:none; }
.ve-breadcrumb li a { color:var(--ve-gold); text-decoration:none; }
.ve-breadcrumb li.active { color:rgba(255,255,255,0.8); }
.ve-post-meta-hero { display:flex; gap:24px; flex-wrap:wrap; margin-top:10px; }
.ve-post-meta-hero span { font-size:14px; color:rgba(255,255,255,0.6); display:inline-flex; align-items:center; gap:7px; }

/* ============================================================
   ABOUT PAGE
   ============================================================ */
.ve-about-img-stack { position:relative; padding-bottom:60px; padding-right:60px; }
.ve-about-img-1 { height:420px; border-radius:16px; background-size:cover; background-position:center; }
.ve-about-img-2 {
  position:absolute; bottom:0; right:0; width:220px; height:180px;
  border-radius:14px; background-size:cover; background-position:center;
  border:4px solid var(--ve-gold); box-shadow:0 15px 40px rgba(0,0,0,0.25);
}
.ve-about-ribbon {
  position:absolute; top:30px; left:-20px;
  background:var(--ve-gold); border-radius:12px; padding:20px 24px;
  text-align:center; box-shadow:0 10px 30px rgba(212,160,23,0.35);
}
.ve-about-ribbon strong { display:block; font-size:36px; font-family:'Nunito',sans-serif; font-weight:900; color:var(--ve-dark); }
.ve-about-ribbon span { font-size:11px; font-weight:700; color:var(--ve-dark); text-transform:uppercase; letter-spacing:0.8px; }

.ve-about-text { padding-left:50px; }
.ve-about-text h2 { font-size:38px; font-weight:900; line-height:1.2; margin-bottom:16px; }
.ve-about-text h2 span { color:var(--ve-gold); }
.ve-lead { font-size:17px; color:var(--ve-dark); font-weight:500; margin-bottom:16px; line-height:1.7; }

.ve-about-features { margin:24px 0; display:flex; flex-direction:column; gap:10px; }
.ve-af-item { display:flex; align-items:center; gap:10px; font-size:14px; color:var(--ve-text); }
.ve-af-item i { color:var(--ve-gold); font-size:14px; }

/* MVV Cards */
.ve-mvv-section { background:var(--ve-dark); padding:80px 0; }
.ve-mvv-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:30px; }
.ve-mvv-card { background:rgba(255,255,255,0.04); border:1px solid rgba(255,255,255,0.08); border-radius:var(--ve-radius); padding:40px 30px; text-align:center; transition:var(--ve-trans); }
.ve-mvv-card:hover { background:rgba(212,160,23,0.08); border-color:rgba(212,160,23,0.3); }
.ve-mvv-icon { width:64px; height:64px; background:linear-gradient(135deg, rgba(212,160,23,0.2), rgba(212,160,23,0.05)); border:1px solid rgba(212,160,23,0.3); border-radius:50%; display:flex; align-items:center; justify-content:center; margin:0 auto 20px; font-size:26px; color:var(--ve-gold); }
.ve-mvv-card h4 { font-size:20px; font-weight:800; color:#fff; margin-bottom:12px; }
.ve-mvv-card p { font-size:14px; color:rgba(255,255,255,0.55); line-height:1.8; }

/* Team */
.ve-team-section { background:var(--ve-light); }
.ve-team-card { background:#fff; border-radius:var(--ve-radius); overflow:hidden; box-shadow:var(--ve-shadow); transition:var(--ve-trans); margin-bottom:30px; }
.ve-team-card:hover { transform:translateY(-5px); }
.ve-team-img { height:280px; background-size:cover; background-position:center top; }
.ve-team-info { padding:22px 24px; }
.ve-team-info h5 { font-size:18px; font-weight:800; color:var(--ve-dark); margin-bottom:4px; }
.ve-team-info span { font-size:13px; color:var(--ve-text); display:block; margin-bottom:14px; }
.ve-team-social { display:flex; gap:8px; }
.ve-team-social a { width:32px; height:32px; border-radius:6px; background:var(--ve-light); color:var(--ve-text); display:flex; align-items:center; justify-content:center; font-size:12px; text-decoration:none; transition:var(--ve-trans); }
.ve-team-social a:hover { background:var(--ve-gold); color:var(--ve-dark); }

/* ============================================================
   SERVICES PAGE
   ============================================================ */
.ve-process-section { background:var(--ve-dark); padding:90px 0; }
.ve-process-grid { display:flex; align-items:center; justify-content:center; gap:10px; flex-wrap:wrap; margin-top:50px; }
.ve-process-step { background:rgba(255,255,255,0.04); border:1px solid rgba(255,255,255,0.1); border-radius:var(--ve-radius); padding:36px 28px; text-align:center; flex:1; min-width:180px; max-width:220px; transition:var(--ve-trans); }
.ve-process-step:hover { background:rgba(212,160,23,0.08); border-color:rgba(212,160,23,0.3); }
.ve-process-num { font-size:40px; font-family:'Nunito',sans-serif; font-weight:900; color:rgba(212,160,23,0.3); margin-bottom:12px; line-height:1; }
.ve-process-step h5 { font-size:16px; font-weight:800; color:#fff; margin-bottom:10px; }
.ve-process-step p { font-size:13px; color:rgba(255,255,255,0.5); line-height:1.7; margin:0; }
.ve-process-arrow { font-size:24px; color:rgba(212,160,23,0.4); flex-shrink:0; }


/* ============================================================
   Price PAGE
   ============================================================ */
.ve-price-section { background:var(--ve-dark); padding:30px 0; }
.ve-price-grid { display:flex; align-items:center; justify-content:center; gap:10px; flex-wrap:wrap; margin-top:50px; }
.ve-price-step { background:rgba(255,255,255,0.04); border:1px solid #ff6a00; border-radius:var(--ve-radius); padding:36px 28px; text-align:center; flex:1; min-width:180px; max-width:420px; transition:var(--ve-trans); }
.ve-price-step:hover { background:rgba(212,160,23,0.08); border-color:rgba(212,160,23,0.3); }
.ve-price-step2 { background:rgba(255,255,255,0.04); border:1px solid #1677e8; border-radius:var(--ve-radius); padding:36px 28px; text-align:center; flex:1; min-width:180px; max-width:420px; transition:var(--ve-trans); }
.ve-price-step2:hover { background:rgba(212,160,23,0.08); border-color:#1677e8; }
.ve-price-step3 { background:rgba(255,255,255,0.04); border:1px solid #55ad22; border-radius:var(--ve-radius); padding:36px 28px; text-align:center; flex:1; min-width:180px; max-width:420px; transition:var(--ve-trans); }
.ve-price-step3:hover { background:rgba(212,160,23,0.08); border-color:#55ad22; }
.ve-price-num { font-size:20px; font-family:'Nunito',sans-serif; font-weight:900; color:#ff6a00; margin-bottom:12px; line-height:1; }
.ve-price-num2 { font-size:20px; font-family:'Nunito',sans-serif; font-weight:900; color:#1677e8; margin-bottom:12px; line-height:1; }
.ve-price-num3 { font-size:20px; font-family:'Nunito',sans-serif; font-weight:900; color:#55ad22; margin-bottom:12px; line-height:1; }
.ve-price-step h5 { font-size:16px; font-weight:800; color:#fff; margin-bottom:10px; }
.ve-price-step p { font-size:13px; color:#fff; line-height:1.7; margin:0; }
.ve-price-step2 h5 { font-size:16px; font-weight:800; color:#fff; margin-bottom:10px; }
.ve-price-step2 p { font-size:13px; color:#fff; line-height:1.7; margin:0; }
.ve-price-step3 h5 { font-size:16px; font-weight:800; color:#fff; margin-bottom:10px; }
.ve-price-step3 p { font-size:13px; color:#fff; line-height:1.7; margin:0; }
.ve-price-row {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5px;
    flex-wrap: nowrap;
    width: 100%;
    margin: 2px 0;
}
/* Common styling for pricing boxes */
.ve-price-step,
.ve-price-step2,
.ve-price-step3 {
    position: relative;
    overflow: hidden;
}

/* Common corner ribbon */
.ve-price-step::after,
.ve-price-step2::after,
.ve-price-step3::after {
    position: absolute;
    top: 22px;
    right: -38px;
    width: 150px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    transform: rotate(45deg);
    transform-origin: center;
    color: #ffffff;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 1px;
    text-transform: uppercase;
    z-index: 5;
    pointer-events: none;
}

/* Monthly ribbon */
.ve-price-step::after {
    content: "Monthly";
    background: #ff6a00;
}

/* Yearly ribbon */
.ve-price-step2::after {
    content: "Yearly";
    background: #1677e8;
}

/* Ownership ribbon */
.ve-price-step3::after {
    content: "Ownership";
    background: #55ad22;
}


/* Common horizontal divider after h5 */
.ve-price-step h5,
.ve-price-step2 h5,
.ve-price-step3 h5 {
    padding-bottom: 12px;
    margin-bottom: 18px;
    position: relative;
}

.ve-price-step h5::after,
.ve-price-step2 h5::after,
.ve-price-step3 h5::after {
    content: "";
    display: block;
    width: 100%;
    height: 2px;
    position: absolute;
    bottom: 0;
    left: 0;
}

/* Monthly - Orange */
.ve-price-step h5::after {
    background: #ff6a00;
}

/* Yearly - Blue */
.ve-price-step2 h5::after {
    background: #1677e8;
}

/* Ownership - Green */
.ve-price-step3 h5::after {
    background: #55ad22;
}
@media (max-width: 767px) {
    .ve-price-grid {
        flex-direction: column !important;
        flex-wrap: nowrap !important;
        align-items: stretch !important;
        gap: 25px;
    }

    .ve-price-grid > .ve-price-step,
    .ve-price-grid > .ve-price-step2,
    .ve-price-grid > .ve-price-step3 {
        width: 100% !important;
        max-width: 100% !important;
        flex: 0 0 auto !important;
        box-sizing: border-box;
    }
}
/* FAQ */
.ve-faq-section { background:var(--ve-light); }
.ve-faq-list { display:flex; flex-direction:column; gap:12px; }
.ve-faq-item { background:#fff; border-radius:10px; border:1px solid var(--ve-border); overflow:hidden; }
.ve-faq-q { display:flex; justify-content:space-between; align-items:center; padding:18px 22px; cursor:pointer; gap:16px; }
.ve-faq-q span { font-size:15px; font-weight:700; color:var(--ve-dark); }
.ve-faq-q i { color:var(--ve-gold); font-size:14px; flex-shrink:0; }
.ve-faq-a { padding:0 22px 18px; font-size:14px; color:var(--ve-text); line-height:1.8; display:none; }
.ve-faq-item.open .ve-faq-a { display:block; }
.ve-faq-item.open .ve-faq-q { border-bottom:1px solid var(--ve-border); }

/* ============================================================
   CONTACT PAGE
   ============================================================ */
.ve-contact-cards-section { background:var(--ve-dark); padding:0; margin-top:-1px; }
.ve-contact-cards-grid { display:grid; grid-template-columns:repeat(3,1fr); }
.ve-contact-info-card { padding:50px 40px; text-align:center; border-right:1px solid rgba(255,255,255,0.08); }
.ve-contact-info-card:last-child { border-right:none; }
.ve-ci-icon { width:60px; height:60px; background:rgba(212,160,23,0.15); border:1px solid rgba(212,160,23,0.3); border-radius:50%; display:flex; align-items:center; justify-content:center; margin:0 auto 16px; font-size:22px; color:var(--ve-gold); }
.ve-contact-info-card h5 { font-size:17px; font-weight:800; color:#fff; margin-bottom:10px; }
.ve-contact-info-card p { font-size:14px; color:rgba(255,255,255,0.55); margin:0; line-height:1.7; }
.ve-contact-info-card small { font-size:12px; opacity:0.6; }

.ve-contact-form-wrap { background:#fff; border-radius:16px; padding:50px; box-shadow:var(--ve-shadow); }
.ve-contact-form-wrap h2 { font-size:34px; font-weight:900; margin-bottom:10px; }
.ve-contact-form-wrap h2 span { color:var(--ve-gold); }
.ve-contact-form-wrap > p { font-size:15px; color:var(--ve-text); margin-bottom:30px; }

.ve-contact-form .ve-form-row { display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.ve-form-group { display:flex; flex-direction:column; margin-bottom:20px; }
.ve-form-group label { font-size:13px; font-weight:700; color:var(--ve-dark); margin-bottom:7px; text-transform:uppercase; letter-spacing:0.5px; }
.ve-form-group input, .ve-form-group select, .ve-form-group textarea {
  border:1px solid var(--ve-border); border-radius:8px; padding:12px 16px;
  font-size:14px; color:var(--ve-dark); outline:none; transition:var(--ve-trans);
  font-family:'DM Sans',sans-serif; background:#fff;
}
.ve-form-group input:focus, .ve-form-group select:focus, .ve-form-group textarea:focus { border-color:var(--ve-gold); box-shadow:0 0 0 3px rgba(212,160,23,0.12); }
.ve-form-group textarea { resize:vertical; }

.ve-contact-aside { display:flex; flex-direction:column; gap:24px; padding-left:20px; }
.ve-ca-box { background:var(--ve-dark); border-radius:14px; padding:32px; }
.ve-ca-box h4 { font-size:18px; font-weight:800; color:#fff; margin-bottom:20px; }
.ve-ca-list { list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:12px; }
.ve-ca-list li { font-size:14px; color:rgba(255,255,255,0.7); display:flex; align-items:center; gap:10px; }
.ve-ca-list li i { color:var(--ve-gold); }
.ve-ca-hours { background:var(--ve-light); border-radius:14px; padding:28px; }
.ve-ca-hours h5 { font-size:16px; font-weight:800; color:var(--ve-dark); margin-bottom:16px; display:flex; align-items:center; gap:8px; }
.ve-ca-hours h5 i { color:var(--ve-gold); }
.ve-ca-hours ul { list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:10px; }
.ve-ca-hours ul li { display:flex; justify-content:space-between; font-size:14px; color:var(--ve-text); padding-bottom:10px; border-bottom:1px solid var(--ve-border); }
.ve-ca-hours ul li:last-child { border-bottom:none; padding-bottom:0; }
.ve-ca-hours ul li strong { color:var(--ve-dark); font-weight:700; }
.ve-ca-social { background:#fff; border-radius:14px; padding:24px; border:1px solid var(--ve-border); }
.ve-ca-social h5 { font-size:15px; font-weight:800; color:var(--ve-dark); margin-bottom:16px; }

/* ============================================================
   BLOG / POST
   ============================================================ */
.ve-pagination { display:flex; gap:8px; margin-top:40px; }
.ve-pagination a { width:40px; height:40px; border-radius:8px; display:flex; align-items:center; justify-content:center; font-size:14px; font-weight:700; text-decoration:none; background:var(--ve-light); color:var(--ve-dark); transition:var(--ve-trans); border:1px solid var(--ve-border); }
.ve-pagination a:hover, .ve-pagination a.active { background:var(--ve-gold); color:var(--ve-dark); border-color:var(--ve-gold); }

.ve-sidebar { position:sticky; top:90px; }
.ve-sidebar-widget { background:#fff; border-radius:var(--ve-radius); padding:28px; margin-bottom:24px; border:1px solid var(--ve-border); }
.ve-sidebar-title { font-size:16px; font-weight:900; color:var(--ve-dark); margin-bottom:20px; padding-bottom:12px; border-bottom:2px solid var(--ve-gold); display:inline-block; }
.ve-search-box { display:flex; border:1px solid var(--ve-border); border-radius:8px; overflow:hidden; }
.ve-search-box input { flex:1; border:none; padding:12px 14px; font-size:14px; outline:none; font-family:'DM Sans',sans-serif; }
.ve-search-box button { background:var(--ve-gold); border:none; padding:0 18px; cursor:pointer; color:var(--ve-dark); font-size:14px; }
.ve-cat-list { list-style:none; margin:0; padding:0; }
.ve-cat-list li { border-bottom:1px solid var(--ve-border); }
.ve-cat-list li:last-child { border-bottom:none; }
.ve-cat-list li a { display:flex; justify-content:space-between; padding:10px 0; font-size:14px; color:var(--ve-text); text-decoration:none; transition:var(--ve-trans); }
.ve-cat-list li a:hover { color:var(--ve-gold); }
.ve-cat-list li a span { background:var(--ve-light); border-radius:4px; padding:2px 8px; font-size:12px; font-weight:700; color:var(--ve-dark); }
.ve-recent-post { display:flex; gap:14px; margin-bottom:16px; padding-bottom:16px; border-bottom:1px solid var(--ve-border); }
.ve-recent-post:last-child { border-bottom:none; margin-bottom:0; padding-bottom:0; }
.ve-rp-img { width:64px; height:54px; border-radius:8px; background-size:cover; background-position:center; flex-shrink:0; }
.ve-recent-post a { font-size:13px; font-weight:700; color:var(--ve-dark); text-decoration:none; display:block; margin-bottom:4px; line-height:1.4; transition:var(--ve-trans); }
.ve-recent-post a:hover { color:var(--ve-gold); }
.ve-recent-post span { font-size:12px; color:#aaa; display:flex; align-items:center; gap:5px; }
.ve-tags { display:flex; flex-wrap:wrap; gap:8px; }
.ve-tags a { background:var(--ve-light); color:var(--ve-text); border-radius:6px; padding:6px 12px; font-size:12px; font-weight:600; text-decoration:none; transition:var(--ve-trans); border:1px solid var(--ve-border); }
.ve-tags a:hover { background:var(--ve-gold); color:var(--ve-dark); border-color:var(--ve-gold); }

/* Single post */
.ve-article { background:#fff; border-radius:16px; padding:0; overflow:hidden; box-shadow:var(--ve-shadow); margin-bottom:40px; }
.ve-article-featured { height:380px; background-size:cover; background-position:center; }
.ve-article-body { padding:40px; }
.ve-article-body h3 { font-size:22px; font-weight:800; color:var(--ve-dark); margin:28px 0 12px; }
.ve-article-body p { font-size:15px; line-height:1.85; color:var(--ve-text); margin-bottom:16px; }
.ve-article-lead { font-size:17px; font-weight:500; color:var(--ve-dark); line-height:1.7; border-left:4px solid var(--ve-gold); padding-left:20px; margin-bottom:28px; }
.ve-blockquote { background:var(--ve-light); border-left:4px solid var(--ve-gold); border-radius:0 10px 10px 0; padding:24px 28px; margin:30px 0; }
.ve-blockquote p { font-size:18px; font-style:italic; font-weight:600; color:var(--ve-dark); margin-bottom:8px; }
.ve-blockquote cite { font-size:13px; color:var(--ve-text); font-style:normal; }
.ve-article-tags { margin-top:30px; padding-top:20px; border-top:1px solid var(--ve-border); display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.ve-article-tags strong { font-size:13px; color:var(--ve-dark); font-weight:700; }
.ve-article-share { display:flex; align-items:center; gap:10px; margin-top:16px; }
.ve-article-share strong { font-size:13px; color:var(--ve-dark); font-weight:700; }
.ve-article-share a { width:36px; height:36px; border-radius:8px; background:var(--ve-light); color:var(--ve-text); display:flex; align-items:center; justify-content:center; text-decoration:none; transition:var(--ve-trans); }
.ve-article-share a:hover { background:var(--ve-gold); color:var(--ve-dark); }

/* Comments */
.ve-comments-section { margin-bottom:40px; }
.ve-comments-section h4, .ve-comment-form-wrap h4 { font-size:22px; font-weight:800; color:var(--ve-dark); margin-bottom:24px; }
.ve-comment { display:flex; gap:16px; margin-bottom:24px; padding-bottom:24px; border-bottom:1px solid var(--ve-border); }
.ve-comment.ve-comment-reply { margin-left:60px; }
.ve-comment:last-child { border-bottom:none; }
.ve-comment-avatar { width:50px; height:50px; border-radius:50%; background-size:cover; background-position:center; flex-shrink:0; }
.ve-comment-body { flex:1; }
.ve-comment-meta { display:flex; gap:16px; align-items:center; margin-bottom:8px; }
.ve-comment-meta strong { font-size:15px; font-weight:800; color:var(--ve-dark); }
.ve-comment-meta span { font-size:12px; color:#aaa; }
.ve-comment-body p { font-size:14px; color:var(--ve-text); line-height:1.7; margin-bottom:10px; }
.ve-reply-btn { font-size:12px; font-weight:700; color:var(--ve-gold); text-decoration:none; text-transform:uppercase; letter-spacing:0.5px; }
.ve-comment-form-wrap { background:#fff; border-radius:16px; padding:40px; box-shadow:var(--ve-shadow); }

/* Responsive additions */
@media(max-width:991px) {
  .ve-about-text { padding-left:0; margin-top:40px; }
  .ve-contact-cards-grid { grid-template-columns:1fr; }
  .ve-contact-info-card { border-right:none; border-bottom:1px solid rgba(255,255,255,0.08); }
  .ve-mvv-grid { grid-template-columns:1fr; }
  .ve-contact-aside { padding-left:0; margin-top:30px; }
  .ve-process-grid { flex-direction:column; }
  .ve-process-arrow { transform:rotate(90deg); }
  .ve-page-hero-content h1 { font-size:36px; }
}
@media(max-width:767px) {
  .ve-contact-form .ve-form-row { grid-template-columns:1fr; }
  .ve-contact-form-wrap { padding:28px; }
  .ve-article-body { padding:24px; }
  .ve-about-img-stack { padding-bottom:30px; padding-right:30px; }
  .ve-about-img-2 { width:150px; height:120px; }
}

/* ============================================================
   PAGE-SPECIFIC COMPONENTS (all inner pages)
   ============================================================ */

/* Page Hero */
.ve-page-hero {
  min-height: 380px; background-size:cover; background-position:center;
  position:relative; display:flex; align-items:flex-end; padding-bottom:60px;
  margin-top:72px;
}
.ve-page-hero-sm { min-height:460px; }
.ve-page-hero-overlay { position:absolute; inset:0; background:linear-gradient(180deg, rgba(13,27,42,0.5) 0%, rgba(13,27,42,0.85) 100%); }
.ve-page-hero-content { position:relative; z-index:2; }
.ve-page-hero-content h1 { font-size:46px; font-weight:900; color:#fff; margin:10px 0 18px; line-height:1.15; }
.ve-page-hero-content h1 span { color:var(--ve-gold); }
.ve-post-meta-hero { display:flex; gap:24px; flex-wrap:wrap; }
.ve-post-meta-hero span { font-size:14px; color:rgba(255,255,255,0.7); display:inline-flex; align-items:center; gap:6px; }

/* Breadcrumb */
.ve-breadcrumb { list-style:none; margin:0; padding:0; display:flex; gap:10px; }
.ve-breadcrumb li { font-size:14px; color:rgba(255,255,255,0.6); }
.ve-breadcrumb li a { color:var(--ve-gold); text-decoration:none; }
.ve-breadcrumb li a:hover { color:#fff; }
.ve-breadcrumb li.active { color:rgba(255,255,255,0.5); }
.ve-breadcrumb li:not(:last-child)::after { content:'/'; margin-left:10px; color:rgba(255,255,255,0.3); }

/* About Page */
.ve-about-img-stack { position:relative; padding:0 40px 40px 0; }
.ve-about-img-1 { height:400px; border-radius:16px; background-size:cover; background-position:center; }
.ve-about-img-2 { position:absolute; bottom:0; right:0; width:55%; height:230px; border-radius:14px; background-size:cover; background-position:center; border:4px solid #fff; box-shadow:0 20px 50px rgba(0,0,0,0.2); }
.ve-about-ribbon { position:absolute; top:30px; left:-20px; background:var(--ve-gold); border-radius:12px; padding:18px 22px; text-align:center; }
.ve-about-ribbon strong { display:block; font-size:36px; font-family:'Nunito',sans-serif; font-weight:900; color:var(--ve-dark); }
.ve-about-ribbon span { font-size:11px; font-weight:700; color:var(--ve-dark); text-transform:uppercase; letter-spacing:0.8px; }
.ve-about-text { padding-left:40px; }
.ve-about-text h2 { font-size:38px; font-weight:900; margin-bottom:16px; }
.ve-about-text h2 span { color:var(--ve-gold); }
.ve-lead { font-size:17px; font-weight:500; color:var(--ve-dark); margin-bottom:14px; line-height:1.7; }
.ve-about-text > p { font-size:15px; line-height:1.8; margin-bottom:24px; color:#000000; }
.ve-about-features { display:flex; flex-direction:column; gap:10px; margin-bottom:10px; }
.ve-af-item { display:flex; align-items:center; gap:12px; font-size:14px; color:var(--ve-dark); font-weight:500; }
.ve-af-item i { color:var(--ve-gold); font-size:14px; }

/* MVV Section */
.ve-mvv-section { background:linear-gradient(135deg, var(--ve-dark) 0%, var(--ve-navy) 100%); padding:80px 0; }
.ve-mvv-section .ve-section-header h2 { color:#fff; }
.ve-mvv-section .ve-section-header p { color:rgba(255,255,255,0.6); }
.ve-mvv-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:28px; margin-top:50px; }
.ve-mvv-card { background:rgba(255,255,255,0.06); border:1px solid rgba(255,255,255,0.1); border-radius:var(--ve-radius); padding:36px 28px; text-align:center; transition:var(--ve-trans); }
.ve-mvv-card:hover { background:rgba(255,255,255,0.1); transform:translateY(-4px); }
.ve-mvv-icon { width:64px; height:64px; background:linear-gradient(135deg, var(--ve-gold), var(--ve-gold2)); border-radius:16px; display:flex; align-items:center; justify-content:center; font-size:26px; color:var(--ve-dark); margin:0 auto 20px; }
.ve-mvv-card h4 { font-size:20px; font-weight:800; color:#fff; margin-bottom:12px; }
.ve-mvv-card p { font-size:14px; color:rgba(255,255,255,0.6); line-height:1.8; margin:0; }

/* Team Cards */
.ve-team-section { background:var(--ve-light); }
.ve-team-card { background:#fff; border-radius:var(--ve-radius); overflow:hidden; border:1px solid var(--ve-border); transition:var(--ve-trans); margin-bottom:28px; }
.ve-team-card:hover { transform:translateY(-5px); box-shadow:var(--ve-shadow); }
.ve-team-img { height:260px; background-size:cover; background-position:center top; }
.ve-team-info { padding:22px; text-align:center; }
.ve-team-info h5 { font-size:17px; font-weight:800; color:var(--ve-dark); margin-bottom:4px; }
.ve-team-info span { font-size:13px; color:var(--ve-text); display:block; margin-bottom:14px; }
.ve-team-social { display:flex; justify-content:center; gap:8px; }
.ve-team-social a { width:34px; height:34px; border-radius:6px; background:var(--ve-light); color:var(--ve-navy); display:flex; align-items:center; justify-content:center; font-size:13px; text-decoration:none; transition:var(--ve-trans); }
.ve-team-social a:hover { background:var(--ve-gold); color:var(--ve-dark); }

/* Process Steps */
.ve-process-section { background:var(--ve-light); padding:80px 0; }
.ve-process-grid { display:flex; align-items:center; gap:0; margin-top:50px; flex-wrap:wrap; }
.ve-process-step { flex:1; min-width:200px; background:#fff; border-radius:var(--ve-radius); padding:32px 24px; text-align:center; border:1px solid var(--ve-border); }
.ve-process-num { font-size:42px; font-family:'Nunito',sans-serif; font-weight:900; color:var(--ve-gold); line-height:1; margin-bottom:14px; }
.ve-process-step h5 { font-size:16px; font-weight:800; color:var(--ve-dark); margin-bottom:8px; }
.ve-process-step p { font-size:13px; color:var(--ve-text); line-height:1.7; margin:0; }
.ve-process-arrow { font-size:24px; color:var(--ve-gold); padding:0 16px; flex-shrink:0; }

/* FAQ */
.ve-faq-section { background:#fff; }
.ve-faq-list { display:flex; flex-direction:column; gap:0; }
.ve-faq-item { border-bottom:1px solid var(--ve-border); }
.ve-faq-q { display:flex; justify-content:space-between; align-items:center; padding:18px 0; cursor:pointer; gap:16px; }
.ve-faq-q span { font-size:15px; font-weight:700; color:var(--ve-dark); }
.ve-faq-q i { font-size:14px; color:var(--ve-gold); flex-shrink:0; transition:var(--ve-trans); }
.ve-faq-item.open .ve-faq-q i { transform:rotate(45deg); }
.ve-faq-a { font-size:14px; color:var(--ve-text); line-height:1.8; padding:0 0 16px; display:none; }
.ve-faq-item.open .ve-faq-a { display:block; }

/* Contact Cards */
.ve-contact-cards-section { background:var(--ve-light); padding:60px 0; }
.ve-contact-cards-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.ve-contact-info-card { background:#fff; border-radius:var(--ve-radius); padding:36px 28px; text-align:center; border:1px solid var(--ve-border); transition:var(--ve-trans); }
.ve-contact-info-card:hover { transform:translateY(-4px); box-shadow:var(--ve-shadow); }
.ve-ci-icon { width:60px; height:60px; background:linear-gradient(135deg, var(--ve-dark), var(--ve-navy)); border-radius:14px; display:flex; align-items:center; justify-content:center; font-size:22px; color:var(--ve-gold); margin:0 auto 18px; }
.ve-contact-info-card h5 { font-size:17px; font-weight:800; color:var(--ve-dark); margin-bottom:8px; }
.ve-contact-info-card p { font-size:14px; color:var(--ve-text); line-height:1.7; margin:0; }

/* Contact Form Wrap */
.ve-contact-form-wrap h2 { font-size:36px; font-weight:900; margin-bottom:10px; }
.ve-contact-form-wrap h2 span { color:var(--ve-gold); }
.ve-contact-form-wrap > p { font-size:15px; color:var(--ve-text); margin-bottom:28px; }
.ve-contact-form { display:flex; flex-direction:column; gap:18px; }
.ve-form-row { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.ve-form-group { display:flex; flex-direction:column; gap:6px; }
.ve-form-group label { font-size:13px; font-weight:700; color:var(--ve-dark); text-transform:uppercase; letter-spacing:0.5px; }
.ve-form-group input,
.ve-form-group select,
.ve-form-group textarea { border:2px solid var(--ve-border); border-radius:8px; padding:12px 16px; font-size:14px; font-family:'DM Sans',sans-serif; color:var(--ve-dark); background:#fff; outline:none; transition:var(--ve-trans); }
.ve-form-group input:focus,
.ve-form-group select:focus,
.ve-form-group textarea:focus { border-color:var(--ve-gold); box-shadow:0 0 0 3px rgba(212,160,23,0.1); }
.ve-form-group textarea { resize:vertical; }

/* Contact Aside */
.ve-contact-aside { display:flex; flex-direction:column; gap:24px; padding-left:30px; }
.ve-ca-box { background:var(--ve-light); border-radius:var(--ve-radius); padding:28px; border:1px solid var(--ve-border); }
.ve-ca-box h4 { font-size:18px; font-weight:800; color:var(--ve-dark); margin-bottom:18px; }
.ve-ca-list { list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:12px; }
.ve-ca-list li { font-size:14px; color:var(--ve-text); display:flex; align-items:center; gap:10px; }
.ve-ca-list li i { color:var(--ve-gold); }
.ve-ca-hours { background:var(--ve-dark); border-radius:var(--ve-radius); padding:24px; }
.ve-ca-hours h5 { font-size:15px; font-weight:700; color:var(--ve-gold); margin-bottom:16px; display:flex; align-items:center; gap:8px; }
.ve-ca-hours ul { list-style:none; margin:0; padding:0; }
.ve-ca-hours ul li { display:flex; justify-content:space-between; padding:10px 0; border-bottom:1px solid rgba(255,255,255,0.07); font-size:14px; }
.ve-ca-hours ul li:last-child { border-bottom:none; }
.ve-ca-hours ul li span { color:rgba(255,255,255,0.5); }
.ve-ca-hours ul li strong { color:#fff; }
.ve-ca-social h5 { font-size:15px; font-weight:700; color:var(--ve-dark); margin-bottom:12px; }

/* Blog / Sidebar */
.ve-sidebar { display:flex; flex-direction:column; gap:30px; padding-left:20px; }
.ve-sidebar-widget { background:#fff; border-radius:var(--ve-radius); padding:28px; border:1px solid var(--ve-border); }
.ve-sidebar-title { font-size:16px; font-weight:800; color:var(--ve-dark); margin-bottom:18px; padding-bottom:12px; border-bottom:2px solid var(--ve-gold); display:inline-block; }
.ve-search-box { display:flex; border:2px solid var(--ve-border); border-radius:8px; overflow:hidden; }
.ve-search-box input { flex:1; border:none; padding:10px 14px; font-size:14px; outline:none; font-family:'DM Sans',sans-serif; }
.ve-search-box button { background:var(--ve-gold); border:none; padding:0 16px; color:var(--ve-dark); cursor:pointer; font-size:14px; transition:var(--ve-trans); }
.ve-search-box button:hover { background:var(--ve-dark); color:#fff; }
.ve-cat-list { list-style:none; margin:0; padding:0; }
.ve-cat-list li a { display:flex; justify-content:space-between; padding:10px 0; font-size:14px; color:var(--ve-text); text-decoration:none; border-bottom:1px solid var(--ve-border); transition:var(--ve-trans); }
.ve-cat-list li:last-child a { border-bottom:none; }
.ve-cat-list li a span { background:var(--ve-light); color:var(--ve-dark); font-size:12px; font-weight:700; padding:2px 8px; border-radius:20px; }
.ve-cat-list li a:hover { color:var(--ve-gold); }
.ve-recent-post { display:flex; gap:12px; align-items:flex-start; margin-bottom:16px; }
.ve-recent-post:last-child { margin-bottom:0; }
.ve-rp-img { width:65px; height:50px; border-radius:8px; background-size:cover; background-position:center; flex-shrink:0; }
.ve-recent-post div a { display:block; font-size:13px; font-weight:700; color:var(--ve-dark); text-decoration:none; margin-bottom:4px; line-height:1.4; }
.ve-recent-post div a:hover { color:var(--ve-gold); }
.ve-recent-post div span { font-size:12px; color:var(--ve-text); display:inline-flex; align-items:center; gap:4px; }
.ve-tags { display:flex; flex-wrap:wrap; gap:8px; }
.ve-tags a { background:var(--ve-light); color:var(--ve-text); font-size:13px; padding:6px 14px; border-radius:20px; text-decoration:none; border:1px solid var(--ve-border); transition:var(--ve-trans); }
.ve-tags a:hover { background:var(--ve-gold); color:var(--ve-dark); border-color:var(--ve-gold); }

/* Pagination */
.ve-pagination { display:flex; gap:8px; margin-top:40px; flex-wrap:wrap; }
.ve-pagination a { width:40px; height:40px; border-radius:8px; background:var(--ve-light); border:1px solid var(--ve-border); display:flex; align-items:center; justify-content:center; font-size:14px; font-weight:600; color:var(--ve-text); text-decoration:none; transition:var(--ve-trans); }
.ve-pagination a.active, .ve-pagination a:hover { background:var(--ve-gold); color:var(--ve-dark); border-color:var(--ve-gold); }

/* Article */
.ve-article { background:#fff; border-radius:var(--ve-radius); overflow:hidden; border:1px solid var(--ve-border); margin-bottom:40px; }
.ve-article-featured { height:380px; background-size:cover; background-position:center; }
.ve-article-body { padding:36px; }
.ve-article-lead { font-size:17px; font-weight:500; color:var(--ve-dark); line-height:1.8; margin-bottom:28px; padding-bottom:28px; border-bottom:1px solid var(--ve-border); }
.ve-article-body h3 { font-size:22px; font-weight:800; color:var(--ve-dark); margin:28px 0 12px; }
.ve-article-body p { font-size:15px; line-height:1.8; color:var(--ve-text); margin-bottom:16px; }
.ve-blockquote { background:var(--ve-light); border-left:4px solid var(--ve-gold); border-radius:0 10px 10px 0; padding:24px 28px; margin:28px 0; }
.ve-blockquote p { font-size:17px; font-style:italic; color:var(--ve-dark); font-weight:500; margin:0 0 8px; }
.ve-blockquote cite { font-size:13px; color:var(--ve-gold); font-weight:700; font-style:normal; }
.ve-article-tags { display:flex; align-items:center; gap:10px; margin-top:28px; flex-wrap:wrap; }
.ve-article-tags strong { font-size:14px; color:var(--ve-dark); }
.ve-article-tags a { background:var(--ve-light); color:var(--ve-text); font-size:13px; padding:5px 12px; border-radius:20px; text-decoration:none; border:1px solid var(--ve-border); transition:var(--ve-trans); }
.ve-article-tags a:hover { background:var(--ve-gold); color:var(--ve-dark); border-color:var(--ve-gold); }
.ve-article-share { display:flex; align-items:center; gap:10px; margin-top:16px; }
.ve-article-share strong { font-size:14px; color:var(--ve-dark); }
.ve-article-share a { width:34px; height:34px; border-radius:8px; background:var(--ve-light); color:var(--ve-navy); display:flex; align-items:center; justify-content:center; font-size:14px; text-decoration:none; transition:var(--ve-trans); border:1px solid var(--ve-border); }
.ve-article-share a:hover { background:var(--ve-gold); color:var(--ve-dark); border-color:var(--ve-gold); }

/* Comments */
.ve-comments-section { margin-bottom:40px; }
.ve-comments-section h4 { font-size:22px; font-weight:800; color:var(--ve-dark); margin-bottom:24px; }
.ve-comment { display:flex; gap:16px; margin-bottom:24px; }
.ve-comment-reply { margin-left:50px; }
.ve-comment-avatar { width:50px; height:50px; border-radius:50%; background-size:cover; background-position:center; flex-shrink:0; }
.ve-comment-body { flex:1; background:var(--ve-light); border-radius:10px; padding:18px; }
.ve-comment-meta { display:flex; justify-content:space-between; align-items:center; margin-bottom:8px; flex-wrap:wrap; gap:6px; }
.ve-comment-meta strong { font-size:15px; font-weight:800; color:var(--ve-dark); }
.ve-comment-meta span { font-size:13px; color:var(--ve-text); }
.ve-comment-body p { font-size:14px; color:var(--ve-text); line-height:1.7; margin-bottom:10px; }
.ve-reply-btn { font-size:13px; font-weight:700; color:var(--ve-gold); text-decoration:none; }
.ve-reply-btn:hover { color:var(--ve-dark); }

/* Comment form */
.ve-comment-form-wrap h4 { font-size:22px; font-weight:800; color:var(--ve-dark); margin-bottom:24px; }

/* Elements page */
.ve-elements-section { background:#fff; }
.ve-el-block { margin-bottom:70px; }
.ve-el-title { font-size:22px; font-weight:900; color:var(--ve-dark); margin-bottom:28px; padding-bottom:14px; border-bottom:2px solid var(--ve-border); display:flex; align-items:center; gap:14px; }
.ve-el-title span { display:inline-flex; align-items:center; justify-content:center; width:36px; height:36px; background:var(--ve-gold); color:var(--ve-dark); border-radius:8px; font-size:14px; font-weight:900; flex-shrink:0; }
.ve-el-demo { display:flex; flex-wrap:wrap; gap:14px; align-items:center; }

/* Why us section */
.ve-whyus-section { background:#fff; }
.ve-whyus-img-wrap { position:relative; padding-bottom:40px; padding-right:40px; }
.ve-whyus-img-main { height:480px; border-radius:16px; background-size:cover; background-position:center; }
.ve-whyus-badge { position:absolute; bottom:0; right:0; background:var(--ve-gold); border-radius:14px; padding:22px 28px; text-align:center; min-width:160px; }
.ve-whyus-badge strong { display:block; font-size:40px; font-family:'Nunito',sans-serif; font-weight:900; color:var(--ve-dark); }
.ve-whyus-badge span { font-size:12px; font-weight:600; color:var(--ve-dark); opacity:0.7; text-transform:uppercase; letter-spacing:0.8px; }
.ve-whyus-content { padding-left:40px; }
.ve-whyus-content h2 { font-size:40px; font-weight:900; line-height:1.2; margin-bottom:16px; }
.ve-whyus-content h2 span { color:var(--ve-gold); }

/* Responsive extras */
@media(max-width:991px) {
  .ve-mvv-grid { grid-template-columns:1fr; }
  .ve-contact-cards-grid { grid-template-columns:1fr; }
  .ve-process-grid { flex-direction:column; }
  .ve-process-arrow { transform:rotate(90deg); }
  .ve-about-text, .ve-whyus-content { padding-left:0; margin-top:30px; }
  .ve-contact-aside { padding-left:0; margin-top:30px; }
  .ve-sidebar { padding-left:0; margin-top:40px; }
  .ve-form-row { grid-template-columns:1fr; }
}
@media(max-width:767px) {
  .ve-page-hero-content h1 { font-size:30px; }
  .ve-testi-grid { grid-template-columns:1fr; }
  .ve-nl-form { flex-direction:column; border-radius:8px; }
  .ve-nl-form input, .ve-nl-form button { width:100%; border-radius:8px !important; }
  .ve-about-img-2 { display:none; }
}





/* Eco-friendly image on CTA banner right side */
.ve-cta-banner .ve-cta-content > .row {
    align-items: center;
}

.ve-cta-image-wrap {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px 0;
}

.ve-cta-image {
    display: block;
    width: 100%;
    max-width: 380px;
    height: auto;
    object-fit: contain;
    background: transparent;
    mix-blend-mode: screen;
}

/* Tablet and mobile */
@media (max-width: 991px) {
    .ve-cta-image-wrap {
        margin-top: 20px;
    }

    .ve-cta-image {
        max-width: 280px;
        margin: 0 auto;
    }
}




/* ============================================================
   TESTIMONIAL SLIDER — VANILLA JS
   Desktop: 3 cards | Tablet: 2 cards | Mobile: 1 card
   ============================================================ */

.ve-testimonials-section {
    background: var(--ve-light);
    overflow: hidden;
}

    .ve-testimonials-section .ve-testi-slider {
        position: relative;
        display: block;
        width: 100%;
        min-width: 0;
        overflow: hidden;
        padding: 6px 2px 14px;
        box-sizing: border-box;
    }

    /* Slider Track */
    .ve-testimonials-section .ve-testi-grid {
        display: flex !important;
        flex-wrap: nowrap !important;
        align-items: stretch;
        gap: 24px;
        width: 100%;
        margin: 0;
        padding: 0;
        box-sizing: border-box;
        transform: translateX(0);
        transition: transform 0.45s ease-in-out;
        will-change: transform;
    }

    /* Individual Testimonial Card */
    .ve-testimonials-section .ve-testi-card {
        display: flex;
        flex: 0 0 calc((100% - 48px) / 3);
        flex-direction: column;
        min-width: 0;
        max-width: none;
        height: auto;
        margin: 0;
        padding: 30px 26px;
        box-sizing: border-box;
        background: #fff;
        border: 1px solid var(--ve-border);
        border-radius: var(--ve-radius);
        box-shadow: var(--ve-shadow);
        transition: box-shadow 0.3s ease, border-color 0.3s ease;
    }

        .ve-testimonials-section .ve-testi-card:hover {
            box-shadow: 0 12px 32px rgba(13, 27, 42, 0.14);
            border-color: rgba(255, 106, 0, 0.35);
        }

    /* Star Rating */
    .ve-testimonials-section .ve-testi-stars {
        flex-shrink: 0;
        margin-bottom: 16px;
        color: var(--ve-gold);
        font-size: 18px;
        line-height: 1.4;
        letter-spacing: 2px;
    }

    /* Testimonial Text */
    .ve-testimonials-section .ve-testi-card > p {
        flex-grow: 1;
        margin: 0 0 26px;
        padding: 0;
        color: var(--ve-text);
        font-size: 15px;
        font-weight: 400;
        line-height: 1.8;
        font-style: italic;
        overflow-wrap: anywhere;
    }

    /* Author Details */
    .ve-testimonials-section .ve-testi-author {
        display: flex;
        align-items: center;
        gap: 14px;
        width: 100%;
        margin-top: auto;
    }

    /* Author Image */
    .ve-testimonials-section .ve-testi-avatar {
        display: block;
        flex: 0 0 50px;
        width: 50px;
        height: 50px;
        border-radius: 50%;
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
        overflow: hidden;
    }

    /* Author Name */
    .ve-testimonials-section .ve-testi-author strong {
        display: block;
        margin: 0 0 4px;
        color: var(--ve-dark);
        font-family: 'Nunito', sans-serif;
        font-size: 15px;
        font-weight: 800;
        line-height: 1.4;
    }

    /* Author Designation */
    .ve-testimonials-section .ve-testi-author span {
        display: block;
        color: var(--ve-text);
        font-size: 13px;
        line-height: 1.5;
        overflow-wrap: anywhere;
    }

    /* Slider Controls */
    .ve-testimonials-section .ve-testi-controls {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 18px;
        width: 100%;
        margin-top: 22px;
    }

    /* Previous / Next Buttons */
    .ve-testimonials-section .ve-testi-prev,
    .ve-testimonials-section .ve-testi-next {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        flex: 0 0 42px;
        width: 42px;
        height: 42px;
        margin: 0;
        padding: 0;
        border: 1px solid var(--ve-gold);
        border-radius: 50%;
        background: #fff;
        color: var(--ve-gold);
        font-size: 17px;
        line-height: 1;
        cursor: pointer;
        transition: background 0.25s ease, color 0.25s ease, opacity 0.25s ease;
    }

        .ve-testimonials-section .ve-testi-prev:hover,
        .ve-testimonials-section .ve-testi-next:hover {
            background: var(--ve-gold);
            color: #fff;
        }

        .ve-testimonials-section .ve-testi-prev:disabled,
        .ve-testimonials-section .ve-testi-next:disabled {
            opacity: 0.4;
            cursor: not-allowed;
        }

    /* Pagination Dots */
    .ve-testimonials-section .ve-testi-dots {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 9px;
    }

    .ve-testimonials-section .ve-testi-dot {
        display: block;
        width: 9px;
        height: 9px;
        min-width: 9px;
        margin: 0;
        padding: 0;
        border: 0;
        border-radius: 50%;
        background: #c8cdd4;
        cursor: pointer;
        transition: background 0.25s ease, transform 0.25s ease;
    }

        .ve-testimonials-section .ve-testi-dot.active {
            background: var(--ve-gold);
            transform: scale(1.25);
        }

/* Tablet: 2 Cards */
@media (max-width: 991px) {
    .ve-testimonials-section .ve-testi-grid {
        gap: 24px;
    }

    .ve-testimonials-section .ve-testi-card {
        flex-basis: calc((100% - 24px) / 2);
        padding: 28px 22px;
    }
}

/* Mobile: 1 Card */
@media (max-width: 575px) {
    .ve-testimonials-section .ve-testi-grid {
        gap: 16px;
    }

    .ve-testimonials-section .ve-testi-card {
        flex-basis: 100%;
        padding: 26px 22px;
    }

    .ve-testimonials-section .ve-testi-controls {
        gap: 14px;
        margin-top: 18px;
    }

    .ve-testimonials-section .ve-testi-prev,
    .ve-testimonials-section .ve-testi-next {
        flex-basis: 38px;
        width: 38px;
        height: 38px;
    }
}

/* Respect Reduced Motion */
@media (prefers-reduced-motion: reduce) {
    .ve-testimonials-section .ve-testi-grid,
    .ve-testimonials-section .ve-testi-card,
    .ve-testimonials-section .ve-testi-dot {
        transition: none;
    }
}




/* Hide Scroll to Top button */
#scrollUp {
    display: none !important;
}

/* Floating Buy Now Button */
.ve-floating-buy-now {
    position: fixed;
    right: 20px;
    bottom: 25px;
    z-index: 10000;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    padding: 15px 22px;
    background: #ff6a00;
    color: #fff !important;
    border: 2px solid #ff6a00;
    border-radius: 50px;
    font-size: 14px;
    font-weight: 800;
    text-decoration: none !important;
    white-space: nowrap;
    box-shadow: 0 5px 18px rgba(0, 0, 0, 0.25);
    animation: veBuyFloat 2.5s ease-in-out infinite;
    transition: background 0.25s ease;
}

    .ve-floating-buy-now:hover {
        background: #e85d00;
        border-color: #e85d00;
        color: #fff !important;
    }

@keyframes veBuyFloat {
    0%, 100% {
        transform: translateY(0);
    }

    50% {
        transform: translateY(-5px);
    }
}

@media (max-width: 480px) {
    .ve-floating-buy-now {
        right: 12px;
        bottom: 18px;
        padding: 13px 18px;
        font-size: 13px;
    }
}




/* ===== LATEST BLOG CARDS: EQUAL HEIGHT ===== */
.ve-insight-row {
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
}

.ve-insight-column {
    display: flex;
    margin-bottom: 24px;
}

.ve-insight-card {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: 100%;
}

.ve-insight-img {
    flex-shrink: 0;
    height: 220px;
}

.ve-insight-body {
    display: flex;
    flex-direction: column;
    flex: 1;
}

    .ve-insight-body h5 {
        min-height: 48px;
    }

    .ve-insight-body > p {
        flex: 1;
    }

.ve-insight-meta {
    margin-top: auto;
    gap: 10px;
    flex-wrap: wrap;
}

/* ===== VIEW ALL BLOGS BUTTON ===== */
.ve-view-all-blogs {
    display: flex;
    justify-content: center;
    margin-top: 20px;
    padding-bottom: 10px;
}

.ve-view-all-blogs .ve-btn-primary {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 13px 28px;
    border-radius: 8px;
    background: #ff6a00;
    color: #fff;
    font-weight: 700;
    text-decoration: none;
    transition: all 0.3s ease;
}

    .ve-view-all-blogs .ve-btn-primary:hover {
        background: #e85d00;
        color: #fff;
        transform: translateY(-2px);
    }





/* ===== FOOTER APP & SECURITY BADGES ===== */
.ve-footer-badges {
    text-align: center;
    margin-top: 10px;
    padding: 22px 0 8px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
}

.ve-footer-badges h5 {
    color: #f4f7fa;
    font-size: 18px;
    font-weight: 700;
    margin: 0 0 18px;
}

.ve-footer-badges-list {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 14px;
}

    .ve-footer-badges-list img {
        display: block;
        width: auto;
        height: 54px;
        max-width: 180px;
        object-fit: contain;
    }

    .ve-footer-badges-list a {
        display: inline-flex;
        align-items: center;
        justify-content: center;
    }

@media (max-width: 576px) {
    .ve-footer-badges {
        padding: 20px 0;
    }

        .ve-footer-badges h5 {
            font-size: 16px;
        }

    .ve-footer-badges-list {
        gap: 10px;
    }

        .ve-footer-badges-list img {
            height: 42px;
            max-width: 145px;
        }
}

/* Remove excessive gap above footer badges */
.ve-footer {
    padding-bottom: 0 !important;
}

.ve-footer-badges {
    margin-top: 0 !important;
    padding-top: 10px !important;
}

.ve-footer .container,
.ve-footer .row {
    margin-bottom: 0 !important;
}

/* Keep footer content compact */
.ve-footer .mb-50 {
    margin-bottom: 20px !important;
}



/* Fix hero buttons on mobile */
@media (max-width: 767px) {
    .ve-hero-btns

{
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 14px !important;
    width: 100%;
    margin-bottom: 35px !important;
}

.ve-hero-btns .ve-btn-primary,
.ve-hero-btns .ve-btn-ghost {
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 100% !important;
    max-width: 300px;
    min-height: 56px;
    box-sizing: border-box;
    margin: 0 !important;
    text-align: center;
    white-space: normal;
}

}

@media (max-width: 380px) {
    .ve-hero-btns .ve-btn-primary,
    .ve-hero-btns .ve-btn-ghost {
        max-width: 100%;
        padding-left: 16px !important;
        padding-right: 16px !important;
        font-size: 14px !important;
    }
}


/* Mobile buttons fix - Ready To Transform section */
@media (max-width: 767px) {
    .ve-counter-section .ve-counter-grid

{
    grid-template-columns: 1fr !important;
}

.ve-counter-section .ve-counter-item:first-child {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    text-align: left !important;
}

    .ve-counter-section .ve-counter-item:first-child > a.ve-btn-primary,
    .ve-counter-section .ve-counter-item:first-child > a.ve-btn-ghost {
        display: flex !important;
        align-items: center;
        justify-content: center;
        width: 100% !important;
        max-width: 300px;
        min-height: 56px;
        box-sizing: border-box;
        margin: 0 !important;
        white-space: normal;
        text-align: center;
    }

    .ve-counter-section .ve-counter-item:first-child > strong,
    .ve-counter-section .ve-counter-item:first-child > p {
        width: 100%;
    }

}

@media (max-width: 380px) {
    .ve-counter-section .ve-counter-item:first-child > a.ve-btn-primary,
    .ve-counter-section .ve-counter-item:first-child > a.ve-btn-ghost {
        max-width: 100%;
        padding-left: 16px !important;
        padding-right: 16px !important;
        font-size: 14px !important;
    }
}


/* =========================================
   BHARATTOUCH BRANDED PAGE LOADER
   ========================================= */
.ve-branded-loader {
    position: fixed !important;
    inset: 0 !important;
    z-index: 999999 !important;
    display: flex;
    align-items: center;
    justify-content: center;
    background: #000000 !important;
}

.ve-loader-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
}

/* Animated circular ring */
.ve-loader-ring {
    width: 112px;
    height: 112px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    background: conic-gradient( from 0deg, #ff6a00, #ffb347, #178c52, #ff6a00 );
    padding: 4px;
    animation: veLoaderRotate 2s linear infinite;
    box-shadow: 0 0 30px rgba(255, 106, 0, 0.18);
}

.ve-loader-logo {
    width: 104px;
    height: 104px;
    border-radius: 50%;
    background: #080808;
    display: flex;
    align-items: center;
    justify-content: center;
}

    .ve-loader-logo img {
        display: block;
        width: 78px;
        max-width: 85%;
        height: auto;
        object-fit: contain;
    }

/* Brand name */
.ve-loader-brand {
    margin-top: 24px;
    font-family: 'Nunito', sans-serif;
    font-size: 23px;
    font-weight: 900;
    letter-spacing: 1px;
}

    .ve-loader-brand span {
        color: #ff6a00;
    }

    .ve-loader-brand strong {
        color: #178c52;
    }

.ve-loader-tagline {
    margin: 6px 0 20px;
    color: rgba(255, 255, 255, 0.65);
    font-size: 12px;
    letter-spacing: 3px;
    text-transform: uppercase;
}

/* Animated progress line */
.ve-loader-progress {
    width: 150px;
    height: 3px;
    overflow: hidden;
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.12);
}

    .ve-loader-progress span {
        display: block;
        width: 45%;
        height: 100%;
        border-radius: inherit;
        background: #ff6a00;
        animation: veLoaderProgress 1.5s ease-in-out infinite;
    }

@keyframes veLoaderRotate {
    to {
        transform: rotate(360deg);
    }
}

@keyframes veLoaderProgress {
    0% {
        transform: translateX(-110%);
    }

    100% {
        transform: translateX(330%);
    }
}

/* Mobile sizing */
@media (max-width: 480px) {
    .ve-loader-ring {
        width: 96px;
        height: 96px;
    }

    .ve-loader-logo {
        width: 88px;
        height: 88px;
    }

        .ve-loader-logo img {
            width: 68px;
        }

    .ve-loader-brand {
        font-size: 20px;
    }
}



/* =========================================
   PRICING SECTION - POLISHED THEME
   ========================================= */
.ve-price-section {
    background: #000 !important;
    padding: 55px 0 70px !important;
}

.ve-price-grid {
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    align-items: stretch !important;
    gap: 22px !important;
    margin-top: 40px !important;
}

/* Common card design */
.ve-price-step,
.ve-price-step2,
.ve-price-step3 {
    width: 100%;
    max-width: none !important;
    min-width: 0 !important;
    box-sizing: border-box;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    text-align: left !important;
    padding: 32px 28px !important;
    background: linear-gradient(145deg, #101010, #070707) !important;
    border-radius: 18px !important;
    transition: transform .25s ease, box-shadow .25s ease;
}

.ve-price-step {
    border: 1px solid rgba(255, 106, 0, .65) !important;
}

.ve-price-step2 {
    border: 1px solid rgba(22, 119, 232, .65) !important;
}

.ve-price-step3 {
    border: 1px solid rgba(85, 173, 34, .65) !important;
}

.ve-price-step:hover {
    transform: translateY(-5px);
    box-shadow: 0 12px 32px rgba(255, 106, 0, .12);
}

.ve-price-step2:hover {
    transform: translateY(-5px);
    box-shadow: 0 12px 32px rgba(22, 119, 232, .12);
}

.ve-price-step3:hover {
    transform: translateY(-5px);
    box-shadow: 0 12px 32px rgba(85, 173, 34, .12);
}

/* Plan names */
.ve-price-num,
.ve-price-num2,
.ve-price-num3 {
    font-size: 23px !important;
    line-height: 1.3 !important;
    text-align: center;
    margin-bottom: 10px !important;
}

.ve-price-step h5,
.ve-price-step2 h5,
.ve-price-step3 h5 {
    font-size: 16px !important;
    text-align: center;
    margin-bottom: 18px !important;
}

/* Price badges */
.ve-price-step > .ve-section-tag,
.ve-price-step2 > .ve-section-tag-blue,
.ve-price-step3 > .ve-section-tag-green {
    align-self: center;
    max-width: 100%;
    box-sizing: border-box;
    text-align: center;
    line-height: 1.5;
    margin-bottom: 24px !important;
    padding: 9px 15px !important;
    font-size: 12px !important;
    letter-spacing: 1px;
}

/* Feature lists */
.ve-price-step ul,
.ve-price-step2 ul,
.ve-price-step3 ul {
    list-style: none;
    padding: 0 !important;
    margin: 0 0 28px !important;
    flex: 1;
}

    .ve-price-step ul li,
    .ve-price-step2 ul li,
    .ve-price-step3 ul li {
        display: flex;
        align-items: flex-start;
        gap: 9px;
        color: #f4f4f4 !important;
        font-size: 15px;
        line-height: 1.5;
        margin-bottom: 12px;
    }

        .ve-price-step ul li i {
            color: #ff6a00 !important;
        }

        .ve-price-step2 ul li i {
            color: #1677e8 !important;
        }

        .ve-price-step3 ul li i {
            color: #55ad22 !important;
        }

/* Uniform buttons */
.ve-price-step > a.ve-btn-primary,
.ve-price-step2 > a.ve-btn-primary,
.ve-price-step3 > a.ve-btn-primary {
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 100% !important;
    min-height: 54px;
    box-sizing: border-box;
    margin-top: auto !important;
    padding: 14px 20px !important;
    border-radius: 10px !important;
    background: transparent !important;
    font-size: 16px !important;
    font-weight: 800 !important;
    text-align: center;
    text-decoration: none !important;
    transition: all .25s ease;
}

.ve-price-step > a.ve-btn-primary {
    border: 1.5px solid #ff6a00 !important;
    color: #ff6a00 !important;
}

.ve-price-step2 > a.ve-btn-primary {
    border: 1.5px solid #1677e8 !important;
    color: #1677e8 !important;
}

.ve-price-step3 > a.ve-btn-primary {
    border: 1.5px solid #55ad22 !important;
    color: #55ad22 !important;
}

.ve-price-step > a.ve-btn-primary:hover {
    background: #ff6a00 !important;
    color: #000 !important;
}

.ve-price-step2 > a.ve-btn-primary:hover {
    background: #1677e8 !important;
    color: #fff !important;
}

.ve-price-step3 > a.ve-btn-primary:hover {
    background: #55ad22 !important;
    color: #000 !important;
}

/* Tablet */
@media (max-width: 991px) {
    .ve-price-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

/* Mobile */
@media (max-width: 767px) {
    .ve-price-section {
        padding: 35px 0 45px !important;
    }

    .ve-price-grid {
        grid-template-columns: minmax(0, 1fr) !important;
        gap: 18px !important;
        margin-top: 28px !important;
    }

    .ve-price-step,
    .ve-price-step2,
    .ve-price-step3 {
        padding: 26px 22px !important;
    }

    .ve-price-num,
    .ve-price-num2,
    .ve-price-num3 {
        font-size: 21px !important;
    }

    .ve-price-step > a.ve-btn-primary,
    .ve-price-step2 > a.ve-btn-primary,
    .ve-price-step3 > a.ve-btn-primary {
        min-height: 52px;
    }
}



/* ========================================
   BharatTouch Minimal Contact Section
   ======================================== */

.bt-contact-section {
    padding: 10px 0;
    background: #f4f7fb;
    color: #f5f5f6;
}

    .bt-contact-section .container {
        max-width: 1200px;
    }

/* Section heading */
.bt-contact-heading {
    max-width: 650px;
    margin: 0 auto 58px;
    text-align: center;
}

.bt-contact-eyebrow {
    display: inline-block;
    background: rgba(212,160,23,0.1);
    color: var(--ve-gold);
    border: 1px solid rgba(212,160,23,0.25);
    border-radius: 50px;
    padding: 5px 16px;
    font-size: 12px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    margin-bottom: 14px;
}

.bt-contact-heading h2 {
    margin: 0 0 16px;
    color: #050505;
    font-size: clamp(32px, 4vw, 46px);
    font-weight: 700;
    line-height: 1.2;
    letter-spacing: -1.4px;
}

    .bt-contact-heading h2 span {
        color: #ff6a00;
    }

.bt-contact-heading > p {
    max-width: 520px;
    margin: 0 auto;
    color: #999ba2;
    font-size: 15px;
    line-height: 1.8;
}

/* Main two-column layout */
.bt-contact-layout {
    display: grid;
    grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr);
    gap: 70px;
    align-items: start;
}

/* Left side */
.bt-contact-info {
    padding-top: 12px;
}

.bt-contact-small-label {
    display: block;
    margin-bottom: 18px;
    color: #a4a5ab;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 2px;
}

.bt-contact-info h3,
.bt-contact-form-heading h3 {
    margin: 0 0 14px;
    color: #f4f4f5;
    font-size: 27px;
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: -.6px;
}

.bt-contact-info > p {
    max-width: 400px;
    margin: 0 0 36px;
    color: #999ba2;
    font-size: 14px;
    line-height: 1.9;
}

/* Contact details */
.bt-contact-detail {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    margin-bottom: 25px;
}

.bt-contact-icon {
    display: flex;
    flex: 0 0 42px;
    width: 42px;
    height: 42px;
    align-items: center;
    justify-content: center;
    border: 1px solid #303136;
    border-radius: 6px;
    color: #ff6a00;
    font-size: 16px;
}

.bt-contact-detail small {
    display: block;
    margin: 1px 0 7px;
    color: #888a92;
    font-size: 10px;
    font-weight: 700;
    letter-spacing: 1.5px;
}

.bt-contact-detail a,
.bt-contact-detail p {
    display: block;
    margin: 0;
    color: #e1e1e4;
    font-size: 14px;
    line-height: 1.7;
    text-decoration: none;
    overflow-wrap: anywhere;
}

    .bt-contact-detail a:hover {
        color: #ff6a00;
    }

.bt-contact-note {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-top: 38px;
    color: #888a92;
    font-size: 12px;
}

.bt-contact-note-line {
    width: 28px;
    height: 1px;
    flex-shrink: 0;
    background: #ff6a00;
}

/* Right form panel */
.bt-contact-form-wrap {
    padding: 34px;
    background: #101114;
    border: 1px solid #292a2f;
    border-radius: 8px;
}

.bt-contact-form-heading {
    margin-bottom: 27px;
}

    .bt-contact-form-heading h3 {
        margin-bottom: 7px;
        font-size: 22px;
    }

    .bt-contact-form-heading p {
        margin: 0;
        color: #92939a;
        font-size: 13px;
    }

/* Fields */
.bt-contact-fields {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.bt-contact-field {
    display: flex;
    flex-direction: column;
    min-width: 0;
    gap: 9px;
}

    .bt-contact-field label {
        margin: 0;
        color: #d8d8dc;
        font-size: 12px;
        font-weight: 600;
    }

    .bt-contact-field input,
    .bt-contact-field select,
    .bt-contact-field textarea {
        display: block;
        width: 100%;
        min-width: 0;
        margin: 0;
        padding: 13px 14px;
        background: #0b0c0e;
        border: 1px solid #303136;
        border-radius: 4px;
        outline: none;
        color: #f2f2f4;
        font-family: inherit;
        font-size: 13px;
        line-height: 1.5;
        box-shadow: none;
        transition: border-color .18s ease;
    }

    .bt-contact-field input,
    .bt-contact-field select {
        height: 46px;
    }

    .bt-contact-field textarea {
        min-height: 115px;
        resize: vertical;
    }

        .bt-contact-field input::placeholder,
        .bt-contact-field textarea::placeholder {
            color: #686a72;
            opacity: 1;
        }

    .bt-contact-field select {
        color: #bfc0c6;
    }

        .bt-contact-field select option {
            background: #101114;
            color: #f2f2f4;
        }

        .bt-contact-field input:focus,
        .bt-contact-field select:focus,
        .bt-contact-field textarea:focus {
            border-color: #ff6a00;
            outline: none;
            box-shadow: none;
        }

/* Phone row */
.bt-contact-phone-row {
    display: grid;
    grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr);
    gap: 14px;
}

/* Submit button */
.bt-contact-submit {
    margin-top: 25px;
}

.bt-contact-submit-btn {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    width: 100%;
    min-height: 48px;
    padding: 13px 17px;
    background: #ff6a00;
    border: 1px solid #ff6a00;
    border-radius: 4px;
    color: #101114;
    font-family: inherit;
    font-size: 13px;
    font-weight: 700;
    cursor: pointer;
    transition: background .18s ease, border-color .18s ease;
}

    .bt-contact-submit-btn i {
        font-size: 13px;
        transition: transform .18s ease;
    }

    .bt-contact-submit-btn:hover {
        background: #ff812b;
        border-color: #ff812b;
    }

        .bt-contact-submit-btn:hover i {
            transform: translateX(3px);
        }

/* Responsive */
@media (max-width: 991px) {
    .bt-contact-section {
        padding: 75px 0;
    }

    .bt-contact-layout {
        grid-template-columns: minmax(0, 1fr);
        gap: 42px;
    }

    .bt-contact-info > p {
        max-width: 600px;
    }

    .bt-contact-note {
        margin-top: 28px;
    }
}

@media (max-width: 575px) {
    .bt-contact-section {
        padding: 58px 0;
    }

    .bt-contact-heading {
        margin-bottom: 38px;
        padding: 0 8px;
    }

        .bt-contact-heading h2 {
            font-size: 32px;
            letter-spacing: -.8px;
        }

    .bt-contact-layout {
        gap: 34px;
    }

    .bt-contact-info h3 {
        font-size: 24px;
    }

    .bt-contact-form-wrap {
        padding: 23px 18px;
    }

    .bt-contact-phone-row {
        grid-template-columns: minmax(0, 1fr);
        gap: 20px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .bt-contact-field input,
    .bt-contact-field select,
    .bt-contact-field textarea,
    .bt-contact-submit-btn,
    .bt-contact-submit-btn i {
        transition: none;
    }
}


/* ===== Premium Login Button ===== */
.ve-nav-cta .ve-cta-btn {
    width: 44px !important;
    height: 44px !important;
    padding: 0 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    background: #ffffff !important;
    color: #ff6a00 !important;
    border: 1px solid rgba(255, 106, 0, 0.25) !important;
    border-radius: 50% !important;
    box-shadow: 0 3px 12px rgba(0, 0, 0, 0.08);
    text-decoration: none !important;
    transition: all 0.25s ease !important;
}

    /* User icon */
    .ve-nav-cta .ve-cta-btn i {
        font-size: 18px !important;
        color: #ff6a00 !important;
        line-height: 1 !important;
    }

    /* Hover effect */
    .ve-nav-cta .ve-cta-btn:hover {
        background: #ff6a00 !important;
        border-color: #ff6a00 !important;
        box-shadow: 0 5px 16px rgba(255, 106, 0, 0.25);
        transform: translateY(-2px);
    }

        .ve-nav-cta .ve-cta-btn:hover i {
            color: #ffffff !important;
        }


.bt-toast {
    position: fixed;
    top: 24px;
    right: 24px;
    z-index: 999999;
    display: flex;
    align-items: center;
    gap: 13px;
    width: min(390px, calc(100% - 32px));
    padding: 16px 18px;
    background: #ffffff;
    border: 1px solid #e5e7eb;
    border-left: 4px solid #16a34a;
    border-radius: 12px;
    box-shadow: 0 12px 40px rgba(0, 0, 0, 0.14);
    opacity: 0;
    transform: translateX(25px);
    pointer-events: none;
    transition: opacity .3s ease, transform .3s ease;
}

    .bt-toast.show {
        opacity: 1;
        transform: translateX(0);
        pointer-events: auto;
    }

    .bt-toast.error {
        border-left-color: #dc2626;
    }

.bt-toast-icon {
    width: 38px;
    height: 38px;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: #dcfce7;
    color: #16a34a;
    font-size: 18px;
}

.bt-toast.error .bt-toast-icon {
    background: #fee2e2;
    color: #dc2626;
}

.bt-toast-content {
    flex: 1;
    min-width: 0;
}

.bt-toast-title {
    display: block;
    color: #111827;
    font-size: 15px;
    font-weight: 700;
    margin-bottom: 3px;
}

.bt-toast-message {
    color: #6b7280;
    font-size: 13px;
    line-height: 1.5;
    overflow-wrap: anywhere;
}

.bt-toast-close {
    border: none;
    background: transparent;
    color: #9ca3af;
    font-size: 20px;
    cursor: pointer;
    padding: 2px 4px;
    align-self: flex-start;
}

    .bt-toast-close:hover {
        color: #111827;
    }

@media (max-width: 575px) {
    .bt-toast {
        top: 15px;
        right: 16px;
    }
}




/* =========================================
   OLD BHARATTOUCH BLOG DESIGN
   Scoped styles: blog section only
   ========================================= */
.bt-old-blog-section {
    padding: 30px 20px;
    background: #f5f5f5;
    color: #222;
}

.bt-old-blog-container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px;
    background: #fff;
    border-radius: 10px;
}

.bt-old-blog-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
}

.bt-old-blog-card {
    min-width: 0;
    border: 1px solid #eee;
    border-radius: 10px;
    background: #fafafa;
    overflow: hidden;
    display: flex;
    flex-direction: column;
}

    .bt-old-blog-card img {
        display: block;
        width: 100%;
        height: 180px;
        object-fit: fill;
    }

.bt-old-blog-content {
    padding: 15px;
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.bt-old-blog-card h2 {
    color: #e96115;
    margin: 0 0 10px;
    font-family: 'Segoe UI', sans-serif;
    font-size: 20px;
    font-weight: 700;
    line-height: 1.4;
}

.bt-old-blog-card p {
    color: #1d9a6c;
    margin: 0 0 10px;
    font-family: 'Segoe UI', sans-serif;
    font-size: 14px;
    line-height: 1.6;
    flex-grow: 1;
}

.bt-old-blog-card a {
    display: inline-block;
    margin-top: auto;
    color: #e96115;
    font-family: 'Segoe UI', sans-serif;
    font-size: 14px;
    font-weight: 700;
    text-decoration: none;
}

    .bt-old-blog-card a:hover {
        color: #1d9a6c;
        text-decoration: none;
    }

/* Tablet */
@media (max-width: 991px) {
    .bt-old-blog-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

/* Mobile */
@media (max-width: 575px) {
    .bt-old-blog-section {
        padding: 20px 12px;
    }

    .bt-old-blog-container {
        padding: 12px;
    }

    .bt-old-blog-grid {
        grid-template-columns: minmax(0, 1fr);
        gap: 16px;
    }

    .bt-old-blog-card img {
        height: 180px;
    }
}


/* Blog section heading */
.bt-old-blog-section .ve-section-header {
    margin-bottom: 35px;
    text-align: center;
}

    .bt-old-blog-section .ve-section-header h2 {
        font-size: 42px;
        font-weight: 900;
        color: #000;
        line-height: 1.2;
        margin-bottom: 14px;
    }

        .bt-old-blog-section .ve-section-header h2 span {
            color: #ff6a00;
        }

    .bt-old-blog-section .ve-section-header p {
        max-width: 580px;
        margin: 0 auto;
        color: #4a5568;
        font-size: 16px;
    }

/* View All Blogs */
.bt-old-blog-section .ve-view-all-blogs {
    display: flex;
    justify-content: center;
    margin-top: 35px;
}

    .bt-old-blog-section .ve-view-all-blogs .ve-btn-primary {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 10px;
        padding: 14px 28px;
        background: #ff6a00;
        border: 2px solid #ff6a00;
        border-radius: 8px;
        color: #fff;
        font-size: 15px;
        font-weight: 700;
        text-decoration: none;
    }

        .bt-old-blog-section .ve-view-all-blogs .ve-btn-primary:hover {
            background: #e96115;
            border-color: #e96115;
            color: #fff;
        }

@media (max-width: 575px) {
    .bt-old-blog-section .ve-section-header h2 {
        font-size: 30px;
    }

    .bt-old-blog-section .ve-section-header p {
        font-size: 14px;
    }
}

/* Blog section: full-width white background */
.bt-old-blog-section {
    width: 100%;
    max-width: none;
    box-sizing: border-box;
    padding: 30px 0;
    background: #fff !important;
    color: #222;
}

/* Remove the boxed container appearance */
.bt-old-blog-container {
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 30px;
    box-sizing: border-box;
    background: #fff !important;
    border-radius: 0;
}

/* Keep blog cards responsive */
.bt-old-blog-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 30px;
    width: 100%;
}

.bt-old-blog-card {
    min-width: 0;
    overflow: hidden;
}

    .bt-old-blog-card img {
        display: block;
        width: 100%;
        height: 180px;
        object-fit: fill;
        background: #f5f5f5;
    }

@media (max-width: 991px) {
    .bt-old-blog-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 20px;
    }
}

@media (max-width: 575px) {
    .bt-old-blog-container {
        padding: 20px 12px;
    }

    .bt-old-blog-grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }
}


/* ============================================================
   BHARATTOUCH - BLOG DETAIL PAGE
   Scoped styles to prevent conflicts with the existing theme
   Add at the END of custom-override.css
============================================================ */

.bt-blog-detail-page {
    --bt-blog-accent: #ff6a00;
    --bt-blog-text: #333333;
    --bt-blog-muted: #777777;
    --bt-blog-border: #e5e5e5;
    width: 100%;
    padding: 110px 20px 40px;
    color: var(--bt-blog-text);
    font-family: "DM Sans", sans-serif;
}

    .bt-blog-detail-page,
    .bt-blog-detail-page * {
        box-sizing: border-box;
    }

        .bt-blog-detail-page .bt-blog-detail-container {
            width: 95%;
            margin: 0 auto;
            padding: 30px;
            background: #ffffff;
            border: 1px solid var(--bt-blog-border);
            border-radius: 12px;
            box-shadow: 0 8px 30px rgba(0, 0, 0, 0.06);
        }

        /* Article title */
        .bt-blog-detail-page .bt-blog-detail-title {
            margin: 0 0 12px;
            color: #e96115;
            font-family: "Nunito", sans-serif;
            font-size: 32px;
            font-weight: 800;
            line-height: 1.35;
            overflow-wrap: anywhere;
        }

        /* Publication date */
        .bt-blog-detail-page .bt-blog-detail-date {
            margin: 0 0 24px;
            color: var(--bt-blog-muted);
            font-size: 14px;
            line-height: 1.6;
        }

        /* Featured image */
        .bt-blog-detail-page .bt-blog-featured-image {
            display: block;
            width: 100%;
            max-width: 100%;
            margin: 0 0 28px;
            text-align: center;
        }

            .bt-blog-detail-page .bt-blog-featured-image img {
                display: block;
                width: 100%;
                max-width: 100%;
                height: auto;
                margin: 0;
                border-radius: 10px;
                object-fit: contain;
            }

        /* Article typography */
        .bt-blog-detail-page .bt-blog-detail-content {
            color: var(--bt-blog-text);
            font-size: 16px;
            line-height: 1.8;
            overflow-wrap: break-word;
        }

            .bt-blog-detail-page .bt-blog-detail-content p {
                margin: 0 0 18px;
                color: inherit;
                font-size: inherit;
                line-height: 1.8;
            }

            .bt-blog-detail-page .bt-blog-detail-content h1,
            .bt-blog-detail-page .bt-blog-detail-content h2,
            .bt-blog-detail-page .bt-blog-detail-content h3,
            .bt-blog-detail-page .bt-blog-detail-content h4,
            .bt-blog-detail-page .bt-blog-detail-content h5,
            .bt-blog-detail-page .bt-blog-detail-content h6 {
                margin: 28px 0 14px;
                color: #e96115;
                font-family: "Nunito", sans-serif;
                font-weight: 800;
                line-height: 1.4;
            }

            .bt-blog-detail-page .bt-blog-detail-content h1 {
                font-size: 30px;
            }

            .bt-blog-detail-page .bt-blog-detail-content h2 {
                font-size: 26px;
            }

            .bt-blog-detail-page .bt-blog-detail-content h3 {
                font-size: 22px;
            }

            .bt-blog-detail-page .bt-blog-detail-content h4 {
                font-size: 19px;
            }

            .bt-blog-detail-page .bt-blog-detail-content h5 {
                font-size: 17px;
            }

            .bt-blog-detail-page .bt-blog-detail-content h6 {
                font-size: 16px;
            }

            /* CKEditor figures and images */
            .bt-blog-detail-page .bt-blog-detail-content figure.image {
                display: table;
                max-width: 100%;
                margin: 20px auto;
                text-align: center;
            }

                .bt-blog-detail-page .bt-blog-detail-content figure.image img {
                    display: block;
                    width: auto;
                    max-width: 100%;
                    height: auto;
                    margin: 0 auto;
                    border-radius: 8px;
                }

                /* Center-aligned images */
                .bt-blog-detail-page .bt-blog-detail-content
                figure.image.image-style-align-center {
                    float: none;
                    margin: 20px auto;
                }

                /* Left-aligned images */
                .bt-blog-detail-page .bt-blog-detail-content
                figure.image.image-style-align-left {
                    float: left;
                    margin: 8px 24px 16px 0;
                }

                /* Right-aligned images */
                .bt-blog-detail-page .bt-blog-detail-content
                figure.image.image-style-align-right {
                    float: right;
                    margin: 8px 0 16px 24px;
                }

            /* Tables inside article only */
            .bt-blog-detail-page .bt-blog-detail-content table {
                width: 100%;
                max-width: 100%;
                margin: 20px 0;
                border-collapse: collapse;
            }

            .bt-blog-detail-page .bt-blog-detail-content th,
            .bt-blog-detail-page .bt-blog-detail-content td {
                padding: 10px;
                border: 1px solid #dddddd;
                text-align: left;
                vertical-align: top;
            }

            .bt-blog-detail-page .bt-blog-detail-content th {
                background: #f5f5f5;
            }

            /* Lists */
            .bt-blog-detail-page .bt-blog-detail-content ul,
            .bt-blog-detail-page .bt-blog-detail-content ol {
                margin: 0 0 20px;
                padding-left: 28px;
            }

            .bt-blog-detail-page .bt-blog-detail-content li {
                margin-bottom: 8px;
                list-style: inherit;
            }

            /* Article links */
            .bt-blog-detail-page .bt-blog-detail-content a {
                color: var(--bt-blog-accent);
                text-decoration: underline;
                overflow-wrap: anywhere;
            }

            /* Blockquotes */
            .bt-blog-detail-page .bt-blog-detail-content blockquote {
                margin: 24px 0;
                padding: 16px 20px;
                border-left: 4px solid var(--bt-blog-accent);
                background: #f7f7f7;
            }

            /* Clear floated images */
            .bt-blog-detail-page .bt-blog-detail-content::after {
                content: "";
                display: table;
                clear: both;
            }

        /* Keywords */
        .bt-blog-detail-page .bt-blog-detail-keywords {
            margin-top: 25px;
            padding-top: 18px;
            border-top: 1px solid var(--bt-blog-border);
            color: var(--bt-blog-muted);
            font-size: 14px;
            line-height: 1.8;
            overflow-wrap: anywhere;
        }

            .bt-blog-detail-page .bt-blog-detail-keywords strong {
                color: #222222;
            }

        /* Back to listing */
        .bt-blog-detail-page .bt-blog-detail-back {
            display: inline-block;
            margin-top: 24px;
            color: var(--bt-blog-accent);
            font-size: 15px;
            font-weight: 700;
            text-decoration: none;
        }

            .bt-blog-detail-page .bt-blog-detail-back:hover {
                text-decoration: underline;
            }

/* Responsive */
@media (max-width: 767px) {
    .bt-blog-detail-page {
        padding: 95px 12px 25px;
    }

        .bt-blog-detail-page .bt-blog-detail-container {
            padding: 20px 16px;
            border-radius: 8px;
        }

        .bt-blog-detail-page .bt-blog-detail-title {
            font-size: 26px;
        }

        .bt-blog-detail-page .bt-blog-detail-content {
            font-size: 15px;
        }

            .bt-blog-detail-page .bt-blog-detail-content h1 {
                font-size: 25px;
            }

            .bt-blog-detail-page .bt-blog-detail-content h2 {
                font-size: 22px;
            }

            .bt-blog-detail-page .bt-blog-detail-content h3 {
                font-size: 19px;
            }

            .bt-blog-detail-page .bt-blog-detail-content
            figure.image.image-style-align-left,
            .bt-blog-detail-page .bt-blog-detail-content
            figure.image.image-style-align-right {
                float: none;
                display: table;
                max-width: 100%;
                margin: 20px auto;
            }

            .bt-blog-detail-page .bt-blog-detail-content table {
                display: block;
                overflow-x: auto;
            }
}


.headingtext {
    color: #ff6a00;
    font-weight: 900;
}

/* =========================================
           BHARATTOUCH LOGIN PAGE
           Scoped styles - do not affect other pages
        ========================================= */

.bt-login-page {
    --login-orange: #ff6a00;
    --login-orange-hover: #e85f00;
    --login-black: #080808;
    --login-card: #111111;
    --login-border: #2b2b2b;
    --login-muted: #a3a3a3;
    min-height: 75vh;
    padding: 125px 20px 90px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    overflow: hidden;
    background: radial-gradient( ellipse at 50% 15%, rgba(255, 106, 0, 0.10), transparent 48% ), var(--login-black);
    font-family: 'DM Sans', sans-serif;
    isolation: isolate;
}

    .bt-login-page *,
    .bt-login-page *::before,
    .bt-login-page *::after {
        box-sizing: border-box;
    }

.bt-login-glow {
    position: absolute;
    width: 360px;
    height: 360px;
    border-radius: 50%;
    background: rgba(255, 106, 0, 0.06);
    filter: blur(90px);
    pointer-events: none;
    z-index: -1;
}

.bt-login-glow-left {
    left: -180px;
    top: 15%;
}

.bt-login-glow-right {
    right: -180px;
    bottom: 5%;
}

.bt-login-container {
    width: 90%;
    margin: 0 auto;
}

/* Login card */

.bt-login-card {
    width: 100%;
    padding: 42px 38px 36px;
    background: rgba(17, 17, 17, 0.96);
    border: 1px solid var(--login-border);
    border-radius: 20px;
    box-shadow: 0 25px 80px rgba(0, 0, 0, 0.40), 0 0 35px rgba(255, 106, 0, 0.035);
    position: relative;
}

    .bt-login-card::before {
        content: "";
        position: absolute;
        top: -1px;
        left: 22%;
        right: 22%;
        height: 2px;
        background: linear-gradient( 90deg, transparent, var(--login-orange), transparent );
    }

/* Heading */

.bt-login-heading {
    text-align: center;
    margin-bottom: 32px;
}

.bt-login-icon {
    width: 66px;
    height: 66px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 20px;
    border-radius: 18px;
    background: rgba(255, 106, 0, 0.10);
    border: 1px solid rgba(255, 106, 0, 0.25);
    color: var(--login-orange);
    font-size: 28px;
}

.bt-login-eyebrow {
    display: inline-block;
    margin-bottom: 12px;
    color: var(--login-orange);
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 2px;
}

.bt-login-heading h1 {
    margin: 0 0 12px;
    color: #ffffff;
    font-family: 'Nunito', sans-serif;
    font-size: 34px;
    font-weight: 900;
    line-height: 1.2;
}

    .bt-login-heading h1 span {
        color: var(--login-orange);
    }

.bt-login-heading p {
    margin: 0;
    color: var(--login-muted);
    font-size: 14px;
    line-height: 1.7;
}

/* Form fields */

.bt-login-form {
    width: 100%;
}

.bt-login-field {
    margin-bottom: 22px;
}

    .bt-login-field label {
        display: block;
        margin-bottom: 9px;
        color: #f1f1f1;
        font-size: 13px;
        font-weight: 700;
    }

.bt-login-input-wrap {
    position: relative;
}

.bt-login-input-icon {
    position: absolute;
    top: 50%;
    left: 16px;
    transform: translateY(-50%);
    color: #ff6a00;
    font-size: 16px;
    pointer-events: none;
}

.bt-login-input {
    display: block;
    width: 100%;
    height: 54px;
    margin: 0;
    padding: 0 45px;
    border: 1px solid #343434;
    border-radius: 10px;
    outline: none;
    background: #0b0b0b;
    color: #ffffff;
    font-family: 'DM Sans', sans-serif;
    font-size: 14px;
    font-weight: 400;
    box-shadow: none;
    transition: border-color 0.25s ease, box-shadow 0.25s ease;
}

    .bt-login-input::placeholder {
        color: #686868;
        opacity: 1;
    }

    .bt-login-input:focus {
        border-color: var(--login-orange);
        box-shadow: 0 0 0 3px rgba(255, 106, 0, 0.10);
        background: #0b0b0b;
        color: #ffffff;
    }

    .bt-login-input:-webkit-autofill,
    .bt-login-input:-webkit-autofill:hover,
    .bt-login-input:-webkit-autofill:focus {
        -webkit-text-fill-color: #ffffff;
        box-shadow: 0 0 0 1000px #0b0b0b inset;
        transition: background-color 5000s ease-in-out 0s;
    }

.bt-login-password-toggle {
    position: absolute;
    top: 50%;
    right: 14px;
    transform: translateY(-50%);
    padding: 5px;
    border: none;
    background: transparent;
    color: #999999;
    font-size: 16px;
    cursor: pointer;
    line-height: 1;
}

    .bt-login-password-toggle:hover,
    .bt-login-password-toggle:focus {
        color: var(--login-orange);
        outline: none;
    }

/* Remember me and forgot password */

.bt-login-options {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin: 2px 0 26px;
    float:right;
}

.bt-login-remember {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin: 0;
    color: #bdbdbd;
    font-size: 12px;
    font-weight: 500;
    cursor: pointer;
}

    .bt-login-remember input {
        width: 15px;
        height: 15px;
        margin: 0;
        accent-color: var(--login-orange);
        cursor: pointer;
    }

.bt-login-link {
    color: var(--login-orange) !important;
    font-size: 12px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    transition: color 0.2s ease;
}

    .bt-login-link:hover {
        color: #ff944d !important;
        text-decoration: underline !important;
    }

/* Submit button */

.bt-login-submit {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: 100%;
    min-height: 54px;
    padding: 14px 20px;
    border: 1px solid var(--login-orange);
    border-radius: 10px;
    background: var(--login-orange);
    color: #ffffff !important;
    font-family: 'DM Sans', sans-serif;
    font-size: 15px !important;
    font-weight: 800 !important;
    text-decoration: none !important;
    cursor: pointer;
    transition: background 0.25s ease, border-color 0.25s ease, transform 0.25s ease, box-shadow 0.25s ease;
}

    .bt-login-submit:hover {
        background: var(--login-orange-hover);
        border-color: var(--login-orange-hover);
        color: #ffffff !important;
        transform: translateY(-2px);
        box-shadow: 0 8px 24px rgba(255, 106, 0, 0.20);
    }

    .bt-login-submit:focus-visible {
        outline: 2px solid #ffffff;
        outline-offset: 3px;
    }

    .bt-login-submit:disabled {
        opacity: 0.7;
        cursor: not-allowed;
        transform: none;
    }

/* Validation message */

.bt-login-validation {
    margin-bottom: 18px;
    padding: 12px 14px;
    border: 1px solid rgba(255, 80, 80, 0.35);
    border-radius: 8px;
    background: rgba(255, 50, 50, 0.08);
    color: #ff8888;
    font-size: 13px;
    line-height: 1.6;
}

    .bt-login-validation:empty {
        display: none;
    }

    .bt-login-validation ul {
        margin: 0;
        padding-left: 18px;
    }

/* Signup footer */

.bt-login-signup {
    margin-top: 26px;
    padding-top: 23px;
    border-top: 1px solid #292929;
    text-align: center;
}

    .bt-login-signup p {
        margin: 0 0 15px;
        color: #a3a3a3;
        font-size: 13px;
        line-height: 1.6;
    }

.bt-login-signup-btn {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    min-height: 48px;
    padding: 12px 18px;
    border: 1px solid #414141;
    border-radius: 10px;
    background: transparent;
    color: #ffffff !important;
    font-size: 14px !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    transition: all 0.25s ease;
}

    .bt-login-signup-btn:hover {
        border-color: var(--login-orange);
        background: rgba(255, 106, 0, 0.07);
        color: var(--login-orange) !important;
    }

.bt-login-security {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 7px;
    margin-top: 24px;
    color: #777777;
    font-size: 11px;
    text-align: center;
}

    .bt-login-security i {
        color: #ff6a00;
    }

/* Responsive */

@media (max-width: 575px) {
    .bt-login-page {
        min-height: auto;
        padding: 75px 15px 65px;
    }

    .bt-login-card {
        padding: 32px 22px 27px;
        border-radius: 16px;
    }

    .bt-login-heading {
        margin-bottom: 27px;
    }

    .bt-login-icon {
        width: 58px;
        height: 58px;
        margin-bottom: 17px;
        font-size: 24px;
    }

    .bt-login-heading h1 {
        font-size: 29px;
    }

    .bt-login-heading p {
        font-size: 13px;
    }

    .bt-login-input {
        height: 51px;
    }

    .bt-login-submit {
        min-height: 51px;
    }

    .bt-login-options {
        gap: 8px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .bt-login-page *,
    .bt-login-page *::before,
    .bt-login-page *::after {
        transition: none !important;
    }
}



/* ===================================
   BHARATTOUCH - MOBILE LOGIN
=================================== */

@media screen and (max-width: 575px) {

    .bt-login-page {
        min-height: 0;
        align-items: flex-start;
        background: radial-gradient( ellipse at 50% 10%, rgba(255, 106, 0, 0.09), transparent 55% ), #080808;
    }

    .bt-login-container {
        width: 100%;
        max-width: 420px;
        margin: 0 auto;
    }

    .bt-login-card {
        width: 100%;
        padding: 28px 22px 24px;
        border-radius: 16px;
    }

    .bt-login-heading {
        margin-bottom: 26px;
    }

    .bt-login-icon {
        width: 54px;
        height: 54px;
        margin-bottom: 14px;
        border-radius: 15px;
        font-size: 24px;
    }

    .bt-login-eyebrow {
        margin-bottom: 8px;
        font-size: 11px;
        letter-spacing: 1.5px;
    }

    .bt-login-heading h1 {
        margin-bottom: 10px;
        font-size: 30px;
        line-height: 1.2;
    }

    .bt-login-heading p {
        max-width: 290px;
        margin: 0 auto;
        font-size: 13px;
        line-height: 1.6;
    }

    .bt-login-field {
        margin-bottom: 19px;
    }

        .bt-login-field label {
            margin-bottom: 8px;
            font-size: 13px;
        }

    .bt-login-input {
        width: 100%;
        height: 52px;
        padding: 0 44px;
        border-radius: 9px;
        font-size: 14px;
    }

    .bt-login-input-icon {
        left: 14px;
        font-size: 15px;
    }

    .bt-login-password-toggle {
        right: 12px;
        font-size: 16px;
    }

    .bt-login-options {
        display: flex;
        float: none;
        justify-content: flex-end;
        margin: 0 0 22px;
    }

    .bt-login-link {
        font-size: 13px !important;
    }

    .bt-login-submit {
        min-height: 52px;
        padding: 14px 18px;
        border-radius: 9px;
        font-size: 15px !important;
    }

    .bt-login-signup {
        margin-top: 24px;
        padding-top: 21px;
    }

        .bt-login-signup p {
            margin-bottom: 14px;
            font-size: 13px;
        }

    .bt-login-signup-btn {
        min-height: 48px;
        padding: 12px;
        font-size: 14px !important;
    }

    .bt-login-security {
        margin-top: 16px;
        font-size: 11px;
        line-height: 1.5;
    }
}

/* Very narrow phones */

@media screen and (max-width: 360px) {

    .bt-login-card {
        padding: 24px 17px 21px;
    }
}

/*
sign up*/


/* ==========================================
   BHARATTOUCH SIGNUP PAGE
========================================== */

.singup-form-outer {
    min-height: 75vh;
    padding: 70px 20px 80px;
    position: relative;
    overflow: hidden;
    isolation: isolate;
    background: radial-gradient(ellipse at 50% 5%, rgba(255,106,0,.10), transparent 48%), var(--bt-signup-black);
    font-family: 'DM Sans', sans-serif;
}

    .singup-form-outer::before,
    .singup-form-outer::after {
        content: "";
        position: absolute;
        width: 340px;
        height: 340px;
        border-radius: 50%;
        background: rgba(255,106,0,.055);
        filter: blur(90px);
        pointer-events: none;
        z-index: -1;
    }

    .singup-form-outer::before {
        top: 8%;
        left: -190px;
    }

    .singup-form-outer::after {
        right: -190px;
        bottom: 4%;
    }

    .singup-form-outer > .container {
        width: 100%;
        max-width: 1040px;
        position: relative;
        z-index: 1;
    }

    .singup-form-outer .get-started-text {
        max-width: 760px;
        margin: 0 auto 32px;
        text-align: center;
    }

        .singup-form-outer .get-started-text h1,
        .singup-form-outer .get-started-text .title-44 {
            margin: 0 0 14px;
            color: #fff;
            font-family: 'Nunito', sans-serif;
            font-size: clamp(30px, 4vw, 42px);
            font-weight: 900;
            line-height: 1.2;
        }

        .singup-form-outer .get-started-text p {
            max-width: 680px;
            margin: 0 auto;
            color: var(--bt-signup-muted);
            font-size: 15px;
            line-height: 1.75;
        }

    .singup-form-outer .step-form-outer {
        overflow: hidden;
        background: rgba(17,17,17,.97);
        border: 1px solid var(--bt-signup-border);
        border-radius: 20px;
        box-shadow: 0 25px 80px rgba(0,0,0,.4), 0 0 35px rgba(255,106,0,.035);
    }

    .singup-form-outer .step-points {
        padding: 26px 30px 22px;
        border-bottom: 1px solid #292929;
        background: rgba(255,255,255,.012);
    }

    .singup-form-outer .step-points-inner {
        display: flex;
        justify-content: center;
        align-items: flex-start;
        gap: 0;
        max-width: 600px;
        margin: 0 auto;
    }

    .singup-form-outer .step-point {
        flex: 1;
        min-width: 0;
        display: flex;
        align-items: center;
        flex-direction: column;
        position: relative;
        text-align: center;
        color: #858585;
        font-size: 12px;
        font-weight: 700;
    }

        .singup-form-outer .step-point .step-image {
            width: 48px;
            height: 48px;
            display: flex;
            align-items: center;
            justify-content: center;
            margin-bottom: 10px;
            border: 1px solid #383838;
            border-radius: 15px;
            background: #0b0b0b;
        }

            .singup-form-outer .step-point .step-image img {
                display: block;
                width: 23px;
                height: 23px;
                object-fit: contain;
                opacity: .7;
            }

        .singup-form-outer .step-point i {
            font-style: normal;
            color: #aaa;
        }

        .singup-form-outer .step-point.active-step .step-image,
        .singup-form-outer .step-point.active .step-image,
        .singup-form-outer .step-point.completed .step-image {
            border-color: rgba(255,106,0,.6);
            background: rgba(255,106,0,.12);
            box-shadow: 0 0 0 3px rgba(255,106,0,.06);
        }

            .singup-form-outer .step-point.active-step .step-image img,
            .singup-form-outer .step-point.active .step-image img,
            .singup-form-outer .step-point.completed .step-image img {
                opacity: 1;
            }

        .singup-form-outer .step-point.active-step i,
        .singup-form-outer .step-point.active i,
        .singup-form-outer .step-point.completed i {
            color: var(--bt-signup-orange);
        }

        .singup-form-outer .step-point .progress-line {
            position: absolute;
            top: 24px;
            left: calc(50% + 34px);
            width: calc(100% - 68px);
            height: 1px;
            background: #393939;
        }

        .singup-form-outer .step-point:last-child .progress-line {
            display: none;
        }

    .singup-form-outer .sign-up-form {
        padding: 34px 38px 36px;
    }

    .singup-form-outer .form-step {
        display: none;
    }

        .singup-form-outer .form-step.active-step {
            display: block;
        }

    .singup-form-outer .sign-up-form h2 {
        margin: 0 0 27px;
        color: #fff;
        font-family: 'Nunito', sans-serif;
        font-size: 27px;
        font-weight: 900;
        line-height: 1.25;
    }

        .singup-form-outer .sign-up-form h2::after {
            content: "";
            display: block;
            width: 48px;
            height: 3px;
            margin-top: 12px;
            border-radius: 4px;
            background: var(--bt-signup-orange);
        }

    .singup-form-outer .sign-up-form .row {
        row-gap: 0;
    }

    .singup-form-outer .sign-up-form label {
        display: block;
        margin: 0 0 8px;
        color: #ededed;
        font-size: 13px;
        font-weight: 700;
        line-height: 1.5;
    }

    .singup-form-outer .sign-up-form input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
    .singup-form-outer .sign-up-form select,
    .singup-form-outer .sign-up-form textarea {
        display: block;
        width: 100%;
        min-width: 0;
        height: 51px;
        margin: 0 0 20px;
        padding: 0 14px;
        border: 1px solid #343434;
        border-radius: 9px;
        outline: none;
        background: var(--bt-signup-field);
        color: #fff;
        font-family: 'DM Sans', sans-serif;
        font-size: 14px;
        box-shadow: none;
        transition: border-color .2s ease, box-shadow .2s ease;
    }

    .singup-form-outer .sign-up-form select {
        color-scheme: dark;
    }

    .singup-form-outer .sign-up-form input::placeholder,
    .singup-form-outer .sign-up-form textarea::placeholder {
        color: #777;
        opacity: 1;
    }

    .singup-form-outer .sign-up-form input:focus,
    .singup-form-outer .sign-up-form select:focus,
    .singup-form-outer .sign-up-form textarea:focus {
        border-color: var(--bt-signup-orange);
        box-shadow: 0 0 0 3px rgba(255,106,0,.12);
        background: #0b0b0b;
        color: #fff;
    }

    .singup-form-outer .sign-up-form input[type="checkbox"],
    .singup-form-outer .sign-up-form input[type="radio"] {
        accent-color: var(--bt-signup-orange);
    }

    .singup-form-outer .sign-up-form .privacy-checkbox {
        display: flex;
        align-items: flex-start;
        gap: 10px;
        margin: 0 0 22px;
    }

        .singup-form-outer .sign-up-form .privacy-checkbox > input {
            flex: 0 0 auto;
            width: 16px;
            height: 16px;
            margin: 4px 0 0;
            accent-color: var(--bt-signup-orange);
        }

        .singup-form-outer .sign-up-form .privacy-checkbox label {
            display: block;
            margin: 0;
            color: #b8b8b8;
            font-size: 12px;
            font-weight: 400;
        }

        .singup-form-outer .sign-up-form .privacy-checkbox a,
        .singup-form-outer .sign-up-form .already-member a {
            color: var(--bt-signup-orange) !important;
            text-decoration: none !important;
        }

            .singup-form-outer .sign-up-form .privacy-checkbox a:hover,
            .singup-form-outer .sign-up-form .already-member a:hover {
                color: #ff944d !important;
                text-decoration: underline !important;
            }

    .singup-form-outer .btn-gradient,
    .singup-form-outer button.btn-gradient,
    .singup-form-outer a.btn-gradient {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 9px;
        min-height: 52px;
        padding: 13px 24px;
        border: 1px solid var(--bt-signup-orange);
        border-radius: 9px;
        background: var(--bt-signup-orange);
        color: #fff !important;
        font-family: 'DM Sans', sans-serif;
        font-size: 14px;
        font-weight: 800;
        line-height: 1.4;
        text-decoration: none !important;
        cursor: pointer;
        box-shadow: none;
        transition: background .2s ease, transform .2s ease, box-shadow .2s ease;
    }

        .singup-form-outer .btn-gradient:hover,
        .singup-form-outer button.btn-gradient:hover,
        .singup-form-outer a.btn-gradient:hover {
            border-color: var(--bt-signup-orange-hover);
            background: var(--bt-signup-orange-hover);
            color: #fff !important;
            transform: translateY(-1px);
            box-shadow: 0 8px 24px rgba(255,106,0,.18);
        }

    .singup-form-outer .btn-grey,
    .singup-form-outer a.btn-grey {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        min-height: 48px;
        padding: 12px 22px;
        border: 1px solid #414141;
        border-radius: 9px;
        background: transparent;
        color: #fff !important;
        font-size: 14px;
        font-weight: 700;
        text-decoration: none !important;
    }

        .singup-form-outer .btn-grey:hover {
            border-color: var(--bt-signup-orange);
            color: var(--bt-signup-orange) !important;
        }

    .singup-form-outer .already-member {
        margin-top: 20px;
        text-align: center;
    }

        .singup-form-outer .already-member p {
            margin: 0;
            color: var(--bt-signup-muted);
            font-size: 13px;
        }

    .singup-form-outer .bottom-btns {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 12px;
        margin-top: 24px;
        padding-top: 22px;
        border-top: 1px solid #292929;
    }

    .singup-form-outer .card-boxes h3,
    .singup-form-outer .card-material h3 {
        margin: 0 0 16px;
        color: #f5f5f5;
        font-family: 'Nunito', sans-serif;
        font-size: 17px;
        font-weight: 800;
    }

    .singup-form-outer .select-cards {
        display: flex;
        flex-wrap: wrap;
        gap: 12px;
        margin-bottom: 26px;
    }

    .singup-form-outer .select-cards-inner {
        position: relative;
        min-width: 0;
    }

        .singup-form-outer .select-cards-inner > input[type="radio"] {
            position: absolute;
            top: 10px;
            left: 10px;
            z-index: 2;
            width: 17px;
            height: 17px;
            margin: 0;
            accent-color: var(--bt-signup-orange);
        }

    .singup-form-outer .checkbox-card {
        min-height: 55px;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 14px 14px 12px 35px;
        border: 1px solid #343434;
        border-radius: 10px;
        background: #0b0b0b;
        color: #eee;
        text-align: center;
        transition: border-color .2s ease, background .2s ease;
    }

    .singup-form-outer .select-cards-inner > input[type="radio"]:checked + .checkbox-card {
        border-color: var(--bt-signup-orange);
        background: rgba(255,106,0,.08);
    }

    .singup-form-outer .checkbox-card p {
        margin: 0 0 8px;
    }

    .singup-form-outer .checkbox-card img {
        display: block;
        max-width: 100%;
        width: 130px;
        height: auto;
        object-fit: contain;
    }

    .singup-form-outer .select-cards-inner:has(.checkbox-card img) .checkbox-card {
        flex-direction: column;
        min-width: 145px;
    }

    .singup-form-outer .card-material .select-cards-inner {
        width: 100%;
    }

    .singup-form-outer .card-material .checkbox-card {
        justify-content: flex-start;
        text-align: left;
    }

    .singup-form-outer .choosen-card-outer > p {
        color: #ddd;
        font-weight: 700;
    }

    .singup-form-outer .choosen-card {
        padding: 18px;
        border: 1px solid #343434;
        border-radius: 12px;
        background: #0b0b0b;
    }

    .singup-form-outer .choosen-card-info p {
        margin: 12px 0 0;
        color: #eee;
        font-size: 13px;
    }

        .singup-form-outer .choosen-card-info p span {
            display: inline-block;
            min-width: 110px;
            color: #999;
        }

    .singup-form-outer .shipping-details h4 {
        margin: 0 0 18px;
        color: var(--bt-signup-orange);
        font-size: 12px;
        font-weight: 800;
        letter-spacing: 1px;
    }

    .singup-form-outer .shipping-details > div {
        margin-bottom: 12px;
    }

    .singup-form-outer .error,
    .singup-form-outer label.error {
        display: block;
        margin-top: -14px;
        margin-bottom: 14px;
        color: #ff8585 !important;
        font-size: 12px;
    }

    .singup-form-outer .lds-dual-ring {
        border-color: var(--bt-signup-orange) transparent var(--bt-signup-orange) transparent;
    }

/* Exact visual language shared with the BharatTouch login page */
.singup-form-outer {
    min-height: 75vh;
    padding: 90px 20px 80px;
}

    .singup-form-outer > .container {
        max-width: 1040px;
        padding-left: 15px;
        padding-right: 15px;
    }

    .singup-form-outer .step-form-outer {
        position: relative;
        overflow: hidden;
        border: 1px solid #2b2b2b;
        border-radius: 20px;
        background: rgba(17,17,17,.97);
        box-shadow: 0 25px 80px rgba(0,0,0,.40), 0 0 35px rgba(255,106,0,.035);
    }

        .singup-form-outer .step-form-outer::before {
            content: "";
            position: absolute;
            top: 0;
            left: 22%;
            right: 22%;
            height: 2px;
            background: linear-gradient(90deg, transparent, #ff6a00, transparent);
            pointer-events: none;
        }

    .singup-form-outer .get-started-text {
        max-width: none;
        margin: 0;
        padding: 38px 38px 30px;
        text-align: center;
    }

    .singup-form-outer .bt-signup-heading-icon {
        width: 62px;
        height: 62px;
        display: flex;
        align-items: center;
        justify-content: center;
        margin: 0 auto 17px;
        border: 1px solid rgba(255,106,0,.25);
        border-radius: 17px;
        background: rgba(255,106,0,.10);
        color: #ff6a00;
        font-size: 26px;
    }

    .singup-form-outer .bt-signup-eyebrow {
        display: inline-block;
        margin-bottom: 10px;
        color: #ff6a00;
        font-size: 11px;
        font-weight: 800;
        letter-spacing: 2px;
        text-transform: uppercase;
    }

    .singup-form-outer .get-started-text h1,
    .singup-form-outer .get-started-text .title-44 {
        margin: 0 0 12px;
        color: #fff;
        font-family: 'Nunito', sans-serif;
        font-size: clamp(30px, 3.4vw, 36px);
        font-weight: 900;
        line-height: 1.2;
    }

        .singup-form-outer .get-started-text h1 span {
            color: #ff6a00;
        }

    .singup-form-outer .get-started-text p {
        max-width: 620px;
        margin: 0 auto;
        color: #a3a3a3;
        font-family: 'DM Sans', sans-serif;
        font-size: 14px;
        line-height: 1.7;
    }

    .singup-form-outer .step-points {
        padding: 23px 30px 20px;
        border-top: 1px solid #292929;
        border-bottom: 1px solid #292929;
        background: rgba(255,255,255,.012);
    }

    .singup-form-outer .sign-up-form {
        padding: 32px 38px 36px;
    }

        .singup-form-outer .sign-up-form h2 {
            margin-bottom: 25px;
            font-family: 'Nunito', sans-serif;
            font-size: 26px;
            font-weight: 900;
        }

        .singup-form-outer .sign-up-form input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
        .singup-form-outer .sign-up-form select,
        .singup-form-outer .sign-up-form textarea {
            min-height: 52px;
            height: 52px;
            padding: 0 15px;
            border: 1px solid #343434;
            border-radius: 10px;
            background: #0b0b0b;
            color: #fff;
            font-family: 'DM Sans', sans-serif;
            font-size: 14px;
        }

            .singup-form-outer .sign-up-form input:focus,
            .singup-form-outer .sign-up-form select:focus,
            .singup-form-outer .sign-up-form textarea:focus {
                border-color: #ff6a00;
                box-shadow: 0 0 0 3px rgba(255,106,0,.10);
                outline: none;
            }

    .singup-form-outer .btn-gradient,
    .singup-form-outer button.btn-gradient,
    .singup-form-outer a.btn-gradient {
        min-height: 54px;
        border-radius: 10px;
        background: #ff6a00;
        border-color: #ff6a00;
        font-size: 15px;
        font-weight: 800;
    }

        .singup-form-outer .btn-gradient:hover,
        .singup-form-outer button.btn-gradient:hover,
        .singup-form-outer a.btn-gradient:hover {
            background: #e85f00;
            border-color: #e85f00;
            box-shadow: 0 8px 24px rgba(255,106,0,.20);
        }

    .singup-form-outer .already-member {
        width: 100%;
        margin-top: 24px;
        padding-top: 21px;
        border-top: 1px solid #292929;
        text-align: center;
    }
.bt-login-security i {
    color: #ff6a00;
}

/* Keep policy dialogs legible while matching the dark theme. */
#termsOfServicesModal .modal-content,
#privacyPolicyModal .modal-content {
    overflow: hidden;
    border: 1px solid #343434;
    border-radius: 14px;
    background: #111;
    color: #eee;
}

#termsOfServicesModal .modal-header,
#privacyPolicyModal .modal-header,
#termsOfServicesModal .modal-footer,
#privacyPolicyModal .modal-footer {
    border-color: #303030;
}

#termsOfServicesModal .modal-title,
#privacyPolicyModal .modal-title {
    color: #fff;
}

#termsOfServicesModal .modal-body,
#privacyPolicyModal .modal-body {
    color: #ddd;
}

    #termsOfServicesModal .modal-body ul,
    #privacyPolicyModal .modal-body ul {
        color: #ddd;
    }

#termsOfServicesModal .btn-close,
#privacyPolicyModal .btn-close {
    filter: invert(1);
}

.modal-backdrop.show {
    opacity: .78;
}

@media (max-width: 767px) {
    .singup-form-outer {
        padding: 48px 15px 55px;
    }

        .singup-form-outer > .container {
            padding-left: 0;
            padding-right: 0;
        }

        .singup-form-outer .get-started-text {
            margin-bottom: 0;
            padding: 29px 22px 24px;
        }

        .singup-form-outer .bt-signup-heading-icon {
            width: 54px;
            height: 54px;
            margin-bottom: 14px;
            font-size: 23px;
        }

        .singup-form-outer .bt-signup-eyebrow {
            letter-spacing: 1.5px;
        }

        .singup-form-outer .get-started-text p {
            font-size: 13px;
            line-height: 1.65;
        }

        .singup-form-outer .step-form-outer {
            border-radius: 16px;
        }

        .singup-form-outer .step-points {
            padding: 20px 12px 17px;
        }

        .singup-form-outer .step-point .step-image {
            width: 43px;
            height: 43px;
            border-radius: 13px;
        }

        .singup-form-outer .step-point .progress-line {
            top: 21px;
        }

        .singup-form-outer .sign-up-form {
            padding: 27px 22px 25px;
        }

            .singup-form-outer .sign-up-form h2 {
                font-size: 24px;
                margin-bottom: 23px;
            }

            .singup-form-outer .sign-up-form input:not([type="checkbox"]):not([type="radio"]):not([type="hidden"]),
            .singup-form-outer .sign-up-form select,
            .singup-form-outer .sign-up-form textarea {
                height: 49px;
                margin-bottom: 17px;
            }

        .singup-form-outer .select-cards-inner:has(.checkbox-card img) {
            flex: 1 1 30%;
        }

        .singup-form-outer .checkbox-card img {
            width: 100px;
        }

        .singup-form-outer .shipping-details > div {
            margin-bottom: 20px;
        }
}

@media (max-width: 420px) {
    .singup-form-outer {
        padding: 35px 12px 42px;
    }

        .singup-form-outer .get-started-text h1,
        .singup-form-outer .get-started-text .title-44 {
            font-size: 29px;
        }

        .singup-form-outer .step-point {
            font-size: 11px;
        }

            .singup-form-outer .step-point .progress-line {
                left: calc(50% + 29px);
                width: calc(100% - 58px);
            }

        .singup-form-outer .sign-up-form {
            padding: 24px 17px 21px;
        }

        .singup-form-outer .select-cards {
            gap: 8px;
        }

        .singup-form-outer .select-cards-inner:has(.checkbox-card img) {
            flex-basis: 100%;
        }

        .singup-form-outer .checkbox-card img {
            width: 125px;
        }

        .singup-form-outer .bottom-btns {
            gap: 8px;
        }
}

@media (prefers-reduced-motion: reduce) {
    .singup-form-outer *,
    .singup-form-outer *::before,
    .singup-form-outer *::after {
        transition: none !important;
        scroll-behavior: auto !important;
    }
}


/* ==========================================
   BHARATTOUCH SIGNUP
   Matching Login Page Design
========================================== */

.bt-signup-form {
    width: 100%;
    font-family: 'DM Sans', sans-serif;
    color: #ffffff;
}

.bt-signup-form .form-step {
    width: 100%;
}

.bt-signup-form .bt-signup-card {
    width: 100%;
    max-width: 860px;
    margin: 0 auto;
    padding: 42px 38px 36px;
    background: rgba(17, 17, 17, 0.96);
    border: 1px solid #2b2b2b;
    border-radius: 20px;
    box-shadow: 0 25px 80px rgba(0, 0, 0, 0.4),
                0 0 35px rgba(255, 106, 0, 0.035);
    position: relative;
    overflow: hidden;
}

.bt-signup-form .bt-signup-card::before {
    content: "";
    position: absolute;
    top: 0;
    left: 22%;
    right: 22%;
    height: 2px;
    background: linear-gradient(
        90deg,
        transparent,
        #ff6a00,
        transparent
    );
}

.bt-signup-form .bt-login-heading {
    text-align: center;
    margin-bottom: 32px;
}

.bt-signup-form .bt-login-icon {
    width: 66px;
    height: 66px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 20px;
    border-radius: 18px;
    background: rgba(255, 106, 0, 0.10);
    border: 1px solid rgba(255, 106, 0, 0.25);
    color: #ff6a00;
    font-size: 28px;
}

.bt-signup-form .bt-login-eyebrow {
    display: inline-block;
    margin-bottom: 12px;
    color: #ff6a00;
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 2px;
}

.bt-signup-form .bt-login-heading h1 {
    margin: 0 0 12px;
    color: #ffffff;
    font-family: 'Nunito', sans-serif;
    font-size: 34px;
    font-weight: 900;
    line-height: 1.2;
}

.bt-signup-form .bt-login-heading h1 span {
    color: #ff6a00;
}

.bt-signup-form .bt-login-heading p {
    margin: 0 auto;
    max-width: 480px;
    color: #a3a3a3;
    font-size: 14px;
    line-height: 1.7;
}

/* Two-column signup fields */

.bt-signup-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0 22px;
}

.bt-signup-form .bt-login-field {
    min-width: 0;
    margin-bottom: 20px;
}

.bt-signup-form .bt-login-field label {
    display: block;
    margin-bottom: 9px;
    color: #f1f1f1;
    font-size: 13px;
    font-weight: 700;
}

.bt-signup-form .bt-required {
    color: #ff6a00;
}

.bt-signup-form .bt-optional {
    color: #888888;
    font-size: 12px;
    font-weight: 400;
}

.bt-signup-form .bt-login-input-wrap {
    position: relative;
    width: 100%;
}

.bt-signup-form .bt-login-input-icon {
    position: absolute;
    top: 50%;
    left: 16px;
    transform: translateY(-50%);
    color: #888888;
    font-size: 15px;
    pointer-events: none;
    z-index: 2;
}

.bt-signup-form .bt-login-input {
    display: block;
    width: 100%;
    height: 54px;
    margin: 0;
    padding: 0 16px 0 45px;
    border: 1px solid #343434;
    border-radius: 10px;
    outline: none;
    background: #0b0b0b;
    color: #ffffff;
    font-family: 'DM Sans', sans-serif;
    font-size: 14px;
    font-weight: 400;
    box-shadow: none;
    transition: border-color .25s ease,
                box-shadow .25s ease;
}

.bt-signup-form .bt-login-input::placeholder {
    color: #686868;
    opacity: 1;
}

.bt-signup-form .bt-login-input:focus {
    border-color: #ff6a00;
    box-shadow: 0 0 0 3px rgba(255, 106, 0, 0.10);
    background: #0b0b0b;
    color: #ffffff;
}

.bt-signup-form select.bt-login-input {
    padding-right: 30px;
    cursor: pointer;
    color-scheme: dark;
}

.bt-signup-form select.bt-login-input option {
    background: #111111;
    color: #ffffff;
}

.bt-signup-form .bt-signup-full {
    grid-column: 1 / -1;
    min-width: 0;
}

.bt-signup-form .error {
    margin-top: 6px;
    color: #ff8888;
    font-size: 12px;
}

/* Privacy checkbox */

.bt-signup-form .bt-signup-privacy {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin: 3px 0 24px;
}

.bt-signup-form .bt-signup-privacy input {
    width: 16px;
    height: 16px;
    flex: 0 0 16px;
    margin: 3px 0 0;
    accent-color: #ff6a00;
    cursor: pointer;
}

.bt-signup-form .bt-signup-privacy label {
    margin: 0;
    color: #a3a3a3;
    font-size: 12px;
    line-height: 1.8;
    font-weight: 400;
}

.bt-signup-form .bt-login-link {
    color: #ff6a00 !important;
    font-size: inherit !important;
    font-weight: 700 !important;
    text-decoration: none;
    cursor: pointer;
}

.bt-signup-form .bt-login-link:hover {
    color: #ff944d !important;
    text-decoration: underline;
}

/* Sign Up button */

.bt-signup-form .bt-signup-submit {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: 100%;
    min-height: 54px;
    padding: 14px 20px;
    border: 1px solid #ff6a00;
    border-radius: 10px;
    background: #ff6a00;
    color: #ffffff !important;
    font-family: 'DM Sans', sans-serif;
    font-size: 15px;
    font-weight: 800;
    cursor: pointer;
    transition: background .25s ease,
                transform .25s ease,
                box-shadow .25s ease;
}

.bt-signup-form .bt-signup-submit:hover {
    background: #e85f00;
    border-color: #e85f00;
    transform: translateY(-2px);
    box-shadow: 0 8px 24px rgba(255, 106, 0, 0.20);
}

.bt-signup-form .bt-signup-submit:focus-visible {
    outline: 2px solid #ffffff;
    outline-offset: 3px;
}

.bt-signup-form .bt-signup-submit .lds-dual-ring {
    display: none;
}

/* Already a member */

.bt-signup-form .bt-login-signup {
    margin-top: 26px;
    padding-top: 23px;
    border-top: 1px solid #292929;
    text-align: center;
}

.bt-signup-form .bt-login-signup p {
    margin: 0 0 15px;
    color: #a3a3a3;
    font-size: 13px;
    line-height: 1.6;
}

/* Card selection step */

.bt-signup-form .bt-card-selection-section {
    margin-bottom: 28px;
    padding: 20px;
    border: 1px solid #292929;
    border-radius: 12px;
    background: #0b0b0b;
}

.bt-signup-form .bt-card-selection-section h3 {
    margin: 0 0 18px;
    color: #ffffff;
    font-family: 'Nunito', sans-serif;
    font-size: 16px;
    font-weight: 800;
}

.bt-signup-form .bt-card-selection-section h3 > span {
    margin-right: 7px;
    color: #ff6a00;
}

.bt-signup-form .bt-card-choice-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 12px;
}

.bt-signup-form .bt-card-choice {
    display: block;
    min-width: 0;
    cursor: pointer;
}

.bt-signup-form .bt-card-choice input {
    accent-color: #ff6a00;
}

.bt-signup-form .bt-card-choice .checkbox-card {
    height: 100%;
    padding: 12px;
    border: 1px solid #343434;
    border-radius: 10px;
    background: #111111;
    color: #ffffff;
    text-align: center;
    transition: border-color .2s ease,
                background .2s ease;
}

.bt-signup-form .bt-card-choice .checkbox-card img {
    display: block;
    width: 100%;
    max-width: 145px;
    height: auto;
    margin: 0 auto 10px;
}

.bt-signup-form .bt-card-choice .checkbox-card > span {
    display: block;
    color: #eeeeee;
    font-size: 13px;
    font-weight: 700;
}

.bt-signup-form .bt-card-choice:has(input:checked) .checkbox-card {
    border-color: #ff6a00;
    background: rgba(255, 106, 0, 0.08);
}

.bt-signup-form .bt-finish-options {
    display: grid;
    gap: 10px;
}

.bt-signup-form .bt-finish-option,
.bt-signup-form .bt-card-type-option {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 14px;
    border: 1px solid #343434;
    border-radius: 9px;
    background: #111111;
    color: #eeeeee;
    cursor: pointer;
    transition: border-color .2s ease,
                background .2s ease;
}

.bt-signup-form .bt-finish-option input,
.bt-signup-form .bt-card-type-option input {
    flex: 0 0 auto;
    accent-color: #ff6a00;
}

.bt-signup-form .bt-finish-option:has(input:checked),
.bt-signup-form .bt-card-type-option:has(input:checked) {
    border-color: #ff6a00;
    background: rgba(255, 106, 0, 0.07);
}

.bt-signup-form .bt-card-type-options {
    display: grid;
    gap: 10px;
}

.bt-signup-form .bt-card-type-name {
    flex: 1;
    font-size: 13px;
    font-weight: 700;
}

.bt-signup-form .bt-card-type-price {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    gap: 8px;
    font-size: 13px;
}

.bt-signup-form .bt-card-type-price del {
    color: #888888;
}

.bt-signup-form .bt-card-type-price strong {
    color: #ff6a00;
}

.bt-signup-form .bt-signup-step-buttons {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    margin-top: 24px;
}

.bt-signup-form .bt-signup-step-buttons > * {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 48px;
    padding: 12px 24px;
    border-radius: 9px;
    text-decoration: none;
    cursor: pointer;
}

.bt-signup-form .bt-signup-step-buttons .btn-gradient {
    border: 1px solid #ff6a00;
    background: #ff6a00;
    color: #ffffff !important;
}

.bt-signup-form .bt-signup-step-buttons .btn-grey {
    border: 1px solid #414141;
    background: transparent;
    color: #ffffff;
}

/* Responsive */

@media (max-width: 767px) {
    .bt-signup-form .bt-signup-card {
        padding: 30px 22px 26px;
        border-radius: 16px;
    }

    .bt-signup-form .bt-login-heading h1 {
        font-size: 30px;
    }

    .bt-signup-form .bt-login-heading p {
        font-size: 13px;
    }

    .bt-signup-grid {
        grid-template-columns: minmax(0, 1fr);
        gap: 0;
    }

    .bt-signup-form .bt-signup-full {
        grid-column: auto;
    }

    .bt-signup-form .bt-card-selection-section {
        padding: 15px;
    }

    .bt-signup-form .bt-card-choice-grid {
        gap: 8px;
    }

    .bt-signup-form .bt-card-choice .checkbox-card {
        padding: 8px;
    }

    .bt-signup-form .bt-card-type-option {
        flex-wrap: wrap;
    }
}

@media (max-width: 380px) {
    .bt-signup-form .bt-signup-card {
        padding: 25px 16px 22px;
    }

    .bt-signup-form .bt-card-choice-grid {
        grid-template-columns: minmax(0, 1fr);
    }

    .bt-signup-form .bt-card-choice .checkbox-card img {
        max-width: 180px;
    }

    .bt-signup-form .bt-signup-step-buttons > * {
        padding: 12px 16px;
    }
}

@media (prefers-reduced-motion: reduce) {
    .bt-signup-form *,
    .bt-signup-form *::before,
    .bt-signup-form *::after {
        transition: none !important;
    }
}



#sign-up .bt-signup-field {
    margin-bottom: 20px;
    min-width: 0;
}

    #sign-up .bt-signup-field > label {
        display: block;
        margin-bottom: 8px;
        color: #ffffff;
        font-family: 'DM Sans', sans-serif;
        font-size: 14px;
        font-weight: 600;
        text-transform: none;
        letter-spacing: 0;
    }

        #sign-up .bt-signup-field > label .bt-required {
            color: #ff6a00;
            margin-right: 4px;
        }

#sign-up .bt-signup-input-wrap {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
}

#sign-up .bt-signup-input-icon {
    position: absolute;
    left: 16px;
    top: 50%;
    transform: translateY(-50%);
    color: #ff6a00;
    font-size: 15px;
    pointer-events: none;
    z-index: 2;
}

#sign-up .bt-signup-input,
#sign-up .bt-signup-field select {
    display: block;
    width: 100%;
    height: 52px;
    padding: 0 16px 0 44px;
    margin: 0;
    box-sizing: border-box;
    border: 1px solid #353535;
    border-radius: 10px;
    background: #111111;
    color: #ffffff;
    font-family: 'DM Sans', sans-serif;
    font-size: 14px;
    font-weight: 400;
    outline: none;
    box-shadow: none;
    transition: border-color 0.25s ease, box-shadow 0.25s ease;
}

    #sign-up .bt-signup-input::placeholder {
        color: #858585;
        opacity: 1;
    }

    #sign-up .bt-signup-input:focus,
    #sign-up .bt-signup-field select:focus {
        border-color: #ff6a00;
        box-shadow: 0 0 0 3px rgba(255, 106, 0, 0.12);
    }

#sign-up .bt-signup-field select {
    padding-left: 44px;
    cursor: pointer;
}

    #sign-up .bt-signup-field select option {
        background: #111111;
        color: #ffffff;
    }

/* Referral error */
#sign-up #invalidReferalCode {
    margin-top: 6px;
    font-size: 12px;
}

/* Terms and privacy */
#sign-up .privacy-checkbox {
    margin: 8px 0 22px;
}

    #sign-up .privacy-checkbox label {
        color: #b5b5b5;
        font-family: 'DM Sans', sans-serif;
        font-size: 13px;
        line-height: 1.7;
    }

/* Signup button: same style as Login */
#sign-up .bt-login-submit {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    width: 100%;
    min-height: 54px;
    padding: 15px 22px;
    margin: 0;
    border: 1px solid #ff6a00;
    border-radius: 10px;
    background: #ff6a00;
    color: #080808;
    font-family: 'DM Sans', sans-serif;
    font-size: 15px;
    font-weight: 700;
    line-height: 1.4;
    cursor: pointer;
    transition: background 0.25s ease, box-shadow 0.25s ease, transform 0.25s ease;
}

    #sign-up .bt-login-submit:hover {
        background: #e85f00;
        border-color: #e85f00;
        color: #080808;
        box-shadow: 0 8px 22px rgba(255, 106, 0, 0.2);
        transform: translateY(-1px);
    }

    #sign-up .bt-login-submit > span {
        display: inline-flex;
        align-items: center;
        gap: 8px;
    }

    #sign-up .bt-login-submit > i {
        font-size: 15px;
    }

    #sign-up .bt-login-submit .lds-dual-ring {
        flex-shrink: 0;
    }

/* Already a member */
#sign-up .already-member {
    width: 100%;
    margin-top: 22px;
    text-align: center;
}

    #sign-up .already-member p {
        margin: 0;
        color: #a3a3a3;
        font-family: 'DM Sans', sans-serif;
        font-size: 13px;
    }

    #sign-up .already-member a {
        color: #ff6a00 !important;
        font-weight: 600;
        text-decoration: none !important;
    }

        #sign-up .already-member a:hover {
            color: #ff8b40 !important;
            text-decoration: underline !important;
        }

/* Responsive */
@media (max-width: 767px) {
    #sign-up .bt-signup-field {
        margin-bottom: 16px;
    }

        #sign-up .bt-signup-input,
        #sign-up .bt-signup-field select {
            height: 50px;
        }

    #sign-up .bt-login-submit {
        min-height: 52px;
    }
}


/* ==========================================
   SIGNUP FORM — MATCH LOGIN PAGE DIMENSIONS
========================================== */

/* Main signup container: login jaisi width */
.singup-form-outer > .container {
    width: 90% !important;
    max-width: 1460px !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/* Wizard outer card */
.singup-form-outer .step-form-outer {
    width: 100% !important;
    max-width: none !important;
    box-sizing: border-box;
}

/* Main content padding */
.singup-form-outer .step-points {
    box-sizing: border-box;
    padding-left: 45px !important;
    padding-right: 45px !important;
}

/* Signup form should use all available card width */
.singup-form-outer .sign-up-form,
.singup-form-outer #sign-up,
.singup-form-outer #CreateUserForm {
    width: 100% !important;
    max-width: none !important;
    box-sizing: border-box;
}

    /* Consistent field spacing */
    .singup-form-outer #CreateUserForm > .row {
        margin-left: -12px;
        margin-right: -12px;
    }

        .singup-form-outer #CreateUserForm > .row > [class*="col-"] {
            padding-left: 12px;
            padding-right: 12px;
            box-sizing: border-box;
        }

    /* Inputs match login height and width */
    .singup-form-outer #sign-up .bt-signup-input,
    .singup-form-outer #sign-up .bt-signup-field select {
        width: 100% !important;
        height: 54px;
        box-sizing: border-box;
        border-radius: 12px;
    }

    /* Consistent vertical gaps between fields */
    .singup-form-outer #sign-up .bt-signup-field {
        margin-bottom: 24px;
    }

        /* Labels match login spacing */
        .singup-form-outer #sign-up .bt-signup-field > label {
            margin-bottom: 12px;
        }

    /* Full-width signup button */
    .singup-form-outer #sign-up .bt-login-submit {
        width: 100% !important;
        min-height: 50px;
        border-radius: 12px;
    }

/* Responsive */
@media (max-width: 767px) {
    .singup-form-outer > .container {
        width: 94% !important;
    }

    .singup-form-outer .step-points {
        padding-left: 18px !important;
        padding-right: 18px !important;
    }

    .singup-form-outer #CreateUserForm > .row {
        margin-left: -8px;
        margin-right: -8px;
    }

        .singup-form-outer #CreateUserForm > .row > [class*="col-"] {
            padding-left: 8px;
            padding-right: 8px;
        }

    .singup-form-outer #sign-up .bt-signup-field {
        margin-bottom: 18px;
    }

        .singup-form-outer #sign-up .bt-signup-input,
        .singup-form-outer #sign-up .bt-signup-field select {
            height: 54px;
        }

    .singup-form-outer #sign-up .bt-login-submit {
        min-height: 54px;
    }
}


/* ==========================================
   SIGNUP BUTTONS — LOGIN PAGE HOVER STYLE
========================================== */

/* Main Sign Up button */
.singup-form-outer #sign-up .bt-login-submit {
    display: flex !important;
    align-items: center;
    justify-content: center !important;
    position: relative;
    width: 100%;
    min-height: 50px;
    padding: 16px 22px;
    background: #ff6a00;
    color: #ffffff;
    border: 1px solid #ff6a00;
    border-radius: 12px;
    font-family: 'DM Sans', sans-serif;
    font-size: 16px;
    font-weight: 700;
    text-align: center;
    cursor: pointer;
    transition: background 0.3s ease, color 0.3s ease, border-color 0.3s ease;
}

    /* Keep text and arrow together in the centre */
    .singup-form-outer #sign-up .bt-login-submit > span {
        display: inline-flex;
        align-items: center;
        justify-content: center;
        gap: 8px;
    }

    .singup-form-outer #sign-up .bt-login-submit > i {
        position: absolute;
        left: calc(49% + 45px);
        top: 50%;
        transform: translateY(-50%);
        color: #ffffff;
        transition: color 0.3s ease;
    }


/* Bottom Sign In button */
.singup-form-outer #sign-up .bt-login-signup-btn {
    display: flex !important;
    align-items: center;
    justify-content: center !important;
    position: relative;
    width: 100%;
    min-height: 50px;
    padding: 14px 22px;
    background: transparent !important;
    color: #ffffff !important;
    border: 1px solid #353535 !important;
    border-radius: 12px;
    text-align: center;
    text-decoration: none !important;
    transition: background 0.3s ease, color 0.3s ease, border-color 0.3s ease;
}

    .singup-form-outer #sign-up .bt-login-signup-btn > span {
        color: inherit !important;
    }

    .singup-form-outer #sign-up .bt-login-signup-btn > i {
        position: absolute;
        left: calc(52% - 65px);
        top: 50%;
        transform: translateY(-50%);
        color: inherit !important;
    }

    /* Bottom button hover */
    .singup-form-outer #sign-up .bt-login-signup-btn:hover {
        background: #24170f !important;
        color: #ff6a00 !important;
        border-color: #ff6a00 !important;
    }

        .singup-form-outer #sign-up .bt-login-signup-btn:hover > span,
        .singup-form-outer #sign-up .bt-login-signup-btn:hover > i {
            color: #ff6a00 !important;
        }


/* Terms & Privacy: checkbox and text in one line */
.singup-form-outer #sign-up .privacy-checkbox {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 10px;
    flex-wrap: nowrap;
    margin-bottom: 20px;
}

    /* Checkbox alignment */
    .singup-form-outer #sign-up .privacy-checkbox > input[type="checkbox"] {
        flex: 0 0 auto;
        margin: 0;
    }

    /* Keep label text horizontally aligned */
    .singup-form-outer #sign-up .privacy-checkbox > label {
        display: flex !important;
        align-items: center !important;
        gap: 10px;
        margin: 0 !important;
        flex: 1;
        min-width: 0;
    }

        /* Prevent text from moving to another line */
        .singup-form-outer #sign-up .privacy-checkbox > label > div {
            display: inline !important;
            margin: 0 !important;
        }

    /* Terms of Services and Privacy Policy links */
    .singup-form-outer #sign-up .privacy-checkbox a,
    .singup-form-outer #sign-up .privacy-checkbox a:visited {
        color: #ff6a00 !important;
        text-decoration: none;
        font-weight: 700;
    }

        .singup-form-outer #sign-up .privacy-checkbox a:hover {
            color: #ff8c56 !important;
            text-decoration: underline;
        }

/* Mobile responsive */
@media (max-width: 576px) {
    .singup-form-outer #sign-up .privacy-checkbox {
        align-items: flex-start !important;
    }

        .singup-form-outer #sign-up .privacy-checkbox > label {
            align-items: flex-start !important;
            line-height: 1.6;
        }
}


/* ==========================================
   SIGNUP MOBILE — MATCH LOGIN PAGE
   ========================================== */

@media screen and (max-width: 575px) {

    /* Signup card width */
    .singup-form-outer > .container {
        width: 94% !important;
        max-width: 420px !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    .singup-form-outer .step-form-outer {
        width: 100% !important;
        border-radius: 16px !important;
        overflow: hidden;
        position: relative;
    }

    /* Restore proper mobile spacing */
    .singup-form-outer .step-points {
        padding: 20px 14px 17px !important;
        box-sizing: border-box;
    }

    .singup-form-outer .sign-up-form {
        padding: 24px 8px 22px !important;
        width: 100% !important;
        box-sizing: border-box;
    }

    .singup-form-outer #sign-up,
    .singup-form-outer #CreateUserForm {
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box;
    }

        /* Prevent Bootstrap row overflow */
        .singup-form-outer #CreateUserForm > .row {
            margin-left: -6px !important;
            margin-right: -6px !important;
        }

            .singup-form-outer #CreateUserForm > .row > [class*="col-"] {
                padding-left: 6px !important;
                padding-right: 6px !important;
                min-width: 0;
                box-sizing: border-box;
            }

        /* Field labels — same as login */
        .singup-form-outer #sign-up .bt-signup-field > label {
            display: block;
            margin-bottom: 8px !important;
            color: #f1f1f1 !important;
            font-size: 13px !important;
            font-weight: 700 !important;
        }

        .singup-form-outer #sign-up .bt-signup-field {
            margin-bottom: 18px !important;
            min-width: 0;
        }

            /* Input fields — same dark login style */
            .singup-form-outer #sign-up .bt-signup-input,
            .singup-form-outer #sign-up .bt-signup-field select {
                display: block;
                width: 100% !important;
                height: 52px !important;
                min-width: 0;
                margin: 0 !important;
                padding: 0 12px 0 43px !important;
                border: 1px solid #343434 !important;
                border-radius: 9px !important;
                background: #0b0b0b !important;
                color: #ffffff !important;
                font-family: 'DM Sans', sans-serif !important;
                font-size: 14px !important;
                font-weight: 400 !important;
                box-sizing: border-box !important;
                box-shadow: none;
                outline: none;
            }

                .singup-form-outer #sign-up .bt-signup-input::placeholder {
                    color: #858585 !important;
                    opacity: 1;
                }

                .singup-form-outer #sign-up .bt-signup-input:focus,
                .singup-form-outer #sign-up .bt-signup-field select:focus {
                    border-color: #ff6a00 !important;
                    box-shadow: 0 0 0 3px rgba(255, 106, 0, 0.10) !important;
                }

        /* Orange icons */
        .singup-form-outer #sign-up .bt-signup-input-icon {
            left: 14px !important;
            color: #ff6a00 !important;
            font-size: 15px;
        }

    /* Orange line at the top of signup card */
    .singup-form-outer .step-form-outer::before {
        content: "" !important;
        position: absolute !important;
        top: 0 !important;
        left: 15% !important;
        right: 15% !important;
        width: auto !important;
        height: 2px !important;
        display: block !important;
        background: linear-gradient( 90deg, transparent, #ff6a00, transparent ) !important;
        z-index: 10 !important;
        pointer-events: none;
    }

    /* Sign Up button */
    .singup-form-outer #sign-up .bt-login-submit {
        width: 100% !important;
        min-height: 52px !important;
        border-radius: 9px !important;
    }

    /* Terms checkbox */
    .singup-form-outer #sign-up .privacy-checkbox {
        display: flex !important;
        align-items: flex-start !important;
        gap: 9px !important;
    }

        .singup-form-outer #sign-up .privacy-checkbox > input[type="checkbox"] {
            flex: 0 0 16px;
            width: 16px !important;
            height: 16px !important;
            margin: 3px 0 0 !important;
        }
}

/* Extra narrow mobile screens */
@media screen and (max-width: 360px) {
    .singup-form-outer .step-points {
        padding-left: 10px !important;
        padding-right: 10px !important;
    }

    .singup-form-outer .sign-up-form {
        padding-left: 5px !important;
        padding-right: 5px !important;
    }
}


/* ==========================================
   MOBILE SIGNUP CHECKBOX + BUTTON ICONS
   ========================================== */

@media screen and (max-width: 575px) {

    /* Terms & Privacy checkbox */
    .singup-form-outer #sign-up .privacy-checkbox {
        display: flex !important;
        align-items: flex-start !important;
        gap: 9px !important;
    }

        .singup-form-outer #sign-up .privacy-checkbox > input#chkPrivacyPolicy {
            appearance: none !important;
            -webkit-appearance: none !important;
            display: block !important;
            flex: 0 0 17px !important;
            width: 17px !important;
            height: 17px !important;
            min-width: 17px !important;
            margin: 3px 0 0 !important;
            padding: 0 !important;
            border: 1.5px solid #666 !important;
            border-radius: 4px !important;
            background: #0b0b0b !important;
            cursor: pointer;
            position: relative;
            box-shadow: none !important;
        }

            .singup-form-outer #sign-up .privacy-checkbox > input#chkPrivacyPolicy:checked {
                background: #ff6a00 !important;
                border-color: #ff6a00 !important;
            }

                .singup-form-outer #sign-up .privacy-checkbox > input#chkPrivacyPolicy:checked::after {
                    content: "";
                    position: absolute;
                    left: 4px;
                    top: 1px;
                    width: 5px;
                    height: 9px;
                    border: solid #fff;
                    border-width: 0 2px 2px 0;
                    transform: rotate(45deg);
                }

        /* Remove duplicate decorative checkbox */
        .singup-form-outer #sign-up .privacy-checkbox .checkbox-mark {
            display: none !important;
        }

        /* Align terms text */
        .singup-form-outer #sign-up .privacy-checkbox > label {
            flex: 1 1 auto !important;
            min-width: 0;
            margin: 0 !important;
            line-height: 1.65 !important;
        }

    /* Sign Up button: reduce icon-text gap */
    .singup-form-outer #sign-up button.bt-login-submit {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 7px !important;
    }

        .singup-form-outer #sign-up button.bt-login-submit > span,
        .singup-form-outer #sign-up button.bt-login-submit > i {
            margin: 0 !important;
        }

    /* Sign In button: reduce icon-text gap */
    .singup-form-outer .bt-login-signup-btn {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 7px !important;
    }

        .singup-form-outer .bt-login-signup-btn > i,
        .singup-form-outer .bt-login-signup-btn > span {
            margin: 0 !important;
        }

    /* Bottom security shield — orange */
    .singup-form-outer .bt-login-security > i {
        color: #ff6a00 !important;
    }
}


/* Keep mobile hamburger icon black while scrolling */
@media (max-width: 991px) {
    .ve-header.scrolled .ve-toggler span {
        background-color: #000000 !important;
    }
}

/* Keep mobile hamburger lines black on scroll across all pages */
@media (max-width: 991px) {
    .ve-header.scrolled .ve-toggler span {
        background-color: #000 !important;
    }
}


/* Signup button loader */
#CreateUserForm .bt-login-submit .lds-dual-ring {
    width: 18px;
    height: 18px;
    border: 3px solid rgba(255, 255, 255, 0.35);
    border-top-color: #ffffff;
    border-radius: 50%;
    animation: signupSpin 0.7s linear infinite;
    vertical-align: middle;
    flex-shrink: 0;
}

#CreateUserForm .bt-login-submit:disabled {
    opacity: 0.7;
    cursor: not-allowed;
}

@keyframes signupSpin {
    to {
        transform: rotate(360deg);
    }
}


/*
change password /  forgot password*/

/* Password reset page */

.bt-reset-password-hint {
    display: block;
    margin: -5px 0 22px;
    color: #ff8a45;
    font-size: 12px;
    line-height: 1.7;
}

/* Password visibility button */
#changePasswordForm .bt-login-input-wrap {
    position: relative;
}

#changePasswordForm .bt-login-password-toggle {
    position: absolute;
    top: 50%;
    right: 15px;
    transform: translateY(-50%);
    display: flex;
    align-items: center;
    justify-content: center;
    width: 30px;
    height: 35px;
    padding: 0;
    border: none;
    outline: none;
    background: transparent;
    color: #9ca3af;
    cursor: pointer;
    z-index: 3;
}

    #changePasswordForm .bt-login-password-toggle:hover,
    #changePasswordForm .bt-login-password-toggle:focus {
        color: #ff6a00;
    }

    #changePasswordForm .bt-login-password-toggle i {
        font-size: 17px;
        pointer-events: none;
    }

#changePasswordForm .bt-login-input {
    padding-right: 55px;
}

#changePasswordForm label.error {
    display: block;
    margin-top: 7px;
    color: #ff7777;
    font-size: 12px;
    line-height: 1.5;
}

#changePasswordForm .bt-login-submit:disabled {
    opacity: .7;
    cursor: not-allowed;
}

/* Loading spinner */
#changePasswordForm .lds-dual-ring {
    display: none;
    width: 18px;
    height: 18px;
    flex-shrink: 0;
    border: 3px solid rgba(255, 255, 255, .35);
    border-top-color: #ffffff;
    border-radius: 50%;
    animation: bt-reset-spin .7s linear infinite;
}

@keyframes bt-reset-spin {
    to {
        transform: rotate(360deg);
    }
}

@media (max-width: 575px) {
    .bt-reset-password-hint {
        font-size: 11px;
    }
}