/* =====================================================
   NEXORA — Premium Bootstrap 5 Business Theme
   Custom Design System (overrides + extensions)
   ===================================================== */

:root {
  /* Color system */
  --n-primary: #0A6CF0;
  --n-primary-dark: #0752B8;
  --n-secondary: #00B4F0;
  --n-navy: #0A1B3D;
  --n-success: #12B76A;
  --n-slate: #667085;
  --n-slate-light: #98A2B3;
  --n-bg: #F7F9FC;
  --n-bg-alt: #EAF3FF;
  --n-border: #E4E7EC;
  --n-white: #FFFFFF;

  /* Gradients */
  --n-gradient-primary: linear-gradient(135deg, #0A6CF0 0%, #00B4F0 100%);
  --n-gradient-soft: linear-gradient(135deg, #EAF3FF 0%, #E6F8FF 100%);
  --n-gradient-dark: linear-gradient(135deg, #0A1B3D 0%, #12305F 100%);

  /* Typography */
  --n-font-display: 'Sora', sans-serif;
  --n-font-body: 'Inter', sans-serif;

  /* Spacing rhythm (8px base) */
  --n-space-xs: 0.5rem;
  --n-space-sm: 1rem;
  --n-space-md: 1.5rem;
  --n-space-lg: 2.5rem;
  --n-space-xl: 4rem;
  --n-space-2xl: 6rem;

  /* Radius */
  --n-radius-sm: 8px;
  --n-radius-md: 14px;
  --n-radius-lg: 20px;
  --n-radius-pill: 100px;

  /* Shadows */
  --n-shadow-sm: 0 2px 8px rgba(10, 27, 61, 0.06);
  --n-shadow-md: 0 8px 24px rgba(10, 27, 61, 0.08);
  --n-shadow-lg: 0 20px 48px rgba(10, 27, 61, 0.12);
  --n-shadow-primary: 0 12px 28px rgba(21, 94, 239, 0.25);

  /* Bootstrap overrides */
  --bs-primary: #0A6CF0;
  --bs-primary-rgb: 10, 108, 240;
  --bs-body-font-family: var(--n-font-body);
  --bs-body-color: var(--n-slate);
  --bs-body-bg: var(--n-white);
}

/* =====================================================
   BASE
   ===================================================== */
html { scroll-behavior: smooth; }

body {
  font-family: var(--n-font-body);
  color: var(--n-slate);
  background-color: var(--n-white);
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}

h1, h2, h3, h4, h5, h6,
.font-display {
  font-family: var(--n-font-display);
  color: var(--n-navy);
  font-weight: 700;
  letter-spacing: -0.02em;
}

h1 { font-weight: 800; }

p { line-height: 1.7; }

a { text-decoration: none; }

.text-primary-custom { color: var(--n-primary) !important; }
.text-slate { color: var(--n-slate) !important; }
.text-navy { color: var(--n-navy) !important; }
.bg-soft { background-color: var(--n-bg) !important; }
.bg-soft-alt { background: var(--n-gradient-soft) !important; }
.bg-navy { background-color: var(--n-navy) !important; }
.bg-gradient-primary { background: var(--n-gradient-primary) !important; }
.bg-gradient-dark { background: var(--n-gradient-dark) !important; }

/* Section spacing rhythm */
.section { padding-top: var(--n-space-2xl); padding-bottom: var(--n-space-2xl); }
.section-sm { padding-top: var(--n-space-xl); padding-bottom: var(--n-space-xl); }

@media (max-width: 767.98px) {
  .section { padding-top: var(--n-space-xl); padding-bottom: var(--n-space-xl); }
  .section-sm { padding-top: var(--n-space-lg); padding-bottom: var(--n-space-lg); }
}

/* Eyebrow label */
.eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  font-family: var(--n-font-display);
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--n-primary);
  background: var(--n-bg-alt);
  padding: 0.4rem 1rem;
  border-radius: var(--n-radius-pill);
  margin-bottom: var(--n-space-sm);
}

.eyebrow::before {
  content: '';
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--n-primary);
  display: inline-block;
}

.section-title { margin-bottom: var(--n-space-sm); }
.section-subtitle {
  font-size: 1.05rem;
  color: var(--n-slate);
  max-width: 620px;
}
.section-header { margin-bottom: var(--n-space-xl); }

/* =====================================================
   BUTTONS
   ===================================================== */
.btn {
  font-family: var(--n-font-display);
  font-weight: 600;
  border-radius: var(--n-radius-sm);
  padding: 0.75rem 1.75rem;
  font-size: 0.95rem;
  transition: all 0.25s ease;
  border-width: 1.5px;
}

.btn-primary {
  background: var(--n-gradient-primary);
  border: none;
  box-shadow: var(--n-shadow-primary);
  color: #fff;
}

.btn-primary:hover {
  transform: translateY(-2px);
  box-shadow: 0 16px 32px rgba(21, 94, 239, 0.32);
  color: #fff;
}

.btn-outline-primary {
  border-color: var(--n-primary);
  color: var(--n-primary);
  background: transparent;
}

.btn-outline-primary:hover {
  background: var(--n-primary);
  border-color: var(--n-primary);
  transform: translateY(-2px);
}

.btn-light-custom {
  background: #fff;
  color: var(--n-navy);
  border: 1.5px solid var(--n-border);
}

.btn-light-custom:hover {
  background: var(--n-bg);
  transform: translateY(-2px);
}

.btn-outline-white {
  border-color: rgba(255,255,255,0.4);
  color: #fff;
}

.btn-outline-white:hover {
  background: rgba(255,255,255,0.12);
  border-color: #fff;
  color: #fff;
}

.btn-lg-custom { padding: 1rem 2.25rem; font-size: 1rem; }
.btn-sm-custom { padding: 0.5rem 1.25rem; font-size: 0.85rem; }

/* =====================================================
   NAVBAR
   ===================================================== */
.navbar-nexora {
  padding: 1.25rem 0;
  transition: all 0.3s ease;
  background: rgba(255, 255, 255, 0.0);
}

.navbar-nexora.scrolled {
  padding: 0.75rem 0;
  background: rgba(255, 255, 255, 0.92);
  backdrop-filter: blur(12px);
  box-shadow: var(--n-shadow-sm);
}

.navbar-brand-custom {
  font-family: var(--n-font-display);
  font-weight: 800;
  font-size: 1.5rem;
  color: var(--n-navy) !important;
  letter-spacing: -0.02em;
}

.navbar-brand-custom span { color: var(--n-primary); }

.navbar-nexora .nav-link {
  font-family: var(--n-font-display);
  font-weight: 600;
  font-size: 0.95rem;
  color: rgb(152, 119, 119) !important;
  padding: 0.5rem 1.1rem !important;
  border-radius: var(--n-radius-sm);
  transition: all 0.2s ease;
}

.nav2{
  color: yellow !important;;
}
.navbar-nexora .nav-link:hover,
.navbar-nexora .nav-link.active {
  color: rgb(15, 15, 64) !important;
  background: var(--n-bg-alt);
}

.navbar-toggler-custom {
  border: none;
  width: 44px;
  height: 44px;
  border-radius: var(--n-radius-sm);
  background: var(--n-bg-alt);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  flex-direction: column;
  padding: 0;
}

.navbar-toggler-custom .bar {
  width: 20px;
  height: 2px;
  background: var(--n-navy);
  border-radius: 2px;
  transition: all 0.3s ease;
}

.navbar-toggler-custom.active .bar:nth-child(1) {
  transform: translateY(6px) rotate(45deg);
}
.navbar-toggler-custom.active .bar:nth-child(2) { opacity: 0; }
.navbar-toggler-custom.active .bar:nth-child(3) {
  transform: translateY(-6px) rotate(-45deg);
}

/* =====================================================
   HERO
   ===================================================== */
.hero {
  position: relative;
  padding-top: 9rem;
  padding-bottom: 5rem;
  background: var(--n-gradient-soft);
  overflow: hidden;
}

.hero::before {
  content: '';
  position: absolute;
  top: -150px;
  right: -150px;
  width: 500px;
  height: 500px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(105,65,198,0.14) 0%, rgba(10,108,240,0.06) 60%, transparent 100%);
  z-index: 0;
}

.hero::after {
  content: '';
  position: absolute;
  bottom: -200px;
  left: -150px;
  width: 450px;
  height: 450px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(10,108,240,0.10) 0%, transparent 70%);
  z-index: 0;
}

.hero-content { position: relative; z-index: 2; }

.hero h1 { font-size: 3.25rem; line-height: 1.15; }

@media (max-width: 991.98px) {
  .hero { padding-top: 7rem; text-align: center; }
  .hero h1 { font-size: 2.4rem; }
}

@media (max-width: 575.98px) {
  .hero h1 { font-size: 2rem; }
}

/* Hero visual / dashboard mock card */
.hero-visual {
  position: relative;
  z-index: 1;
}

.hero-mock-card {
  background: #fff;
  border-radius: var(--n-radius-lg);
  box-shadow: var(--n-shadow-lg);
  padding: var(--n-space-md);
  border: 1px solid var(--n-border);
  position: relative;
}

.hero-mock-card .mock-bar {
  height: 10px;
  border-radius: var(--n-radius-pill);
  background: var(--n-bg-alt);
  margin-bottom: 0.75rem;
}

.hero-float-badge {
  position: absolute;
  background: #fff;
  border-radius: var(--n-radius-md);
  box-shadow: var(--n-shadow-md);
  padding: 0.9rem 1.25rem;
  display: flex;
  align-items: center;
  gap: 0.75rem;
  font-family: var(--n-font-display);
  font-weight: 700;
  font-size: 0.9rem;
  color: var(--n-navy);
  z-index: 3;
}

.hero-float-badge.badge-1 { top: -1.5rem; left: -1.5rem; }
.hero-float-badge.badge-2 { bottom: -1.5rem; right: -1.5rem; }

.hero-float-badge .icon-box {
  width: 36px;
  height: 36px;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

@media (max-width: 767.98px) {
  .hero-float-badge { padding: 0.6rem 0.9rem; font-size: 0.75rem; }
  .hero-float-badge.badge-1 { top: -1rem; left: -0.5rem; }
  .hero-float-badge.badge-2 { bottom: -1rem; right: -0.5rem; }
}

/* Stats strip */
.stats-strip {
  border-top: 1px solid var(--n-border);
  border-bottom: 1px solid var(--n-border);
}

.stat-item .stat-number {
  font-family: var(--n-font-display);
  font-size: 2.25rem;
  font-weight: 800;
  color: var(--n-navy);
}

.stat-item .stat-label {
  font-size: 0.9rem;
  color: var(--n-slate);
  font-weight: 500;
}

/* =====================================================
   ICON BOXES
   ===================================================== */
.icon-box {
  width: 56px;
  height: 56px;
  border-radius: var(--n-radius-sm);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.5rem;
  flex-shrink: 0;
}

.icon-box-primary { background: var(--n-bg-alt); color: var(--n-primary); }
.icon-box-secondary { background: #E6F8FF; color: var(--n-secondary); }
.icon-box-success { background: #E7F9F0; color: var(--n-success); }

.icon-box-lg { width: 72px; height: 72px; font-size: 2rem; border-radius: var(--n-radius-md); }

.icon-box-white {
  background: rgba(255,255,255,0.12);
  color: #fff;
}

/* =====================================================
   CARDS — premium card system
   ===================================================== */
.card-premium {
  background: #fff;
  border: 1px solid var(--n-border);
  border-radius: var(--n-radius-md);
  box-shadow: var(--n-shadow-sm);
  transition: all 0.3s ease;
  padding: var(--n-space-lg);
  height: 100%;
}

.card-premium:hover {
  box-shadow: var(--n-shadow-md);
  transform: translateY(-6px);
  border-color: transparent;
}

.card-premium .card-title {
  font-size: 1.15rem;
  margin-bottom: 0.5rem;
}

.card-link-arrow {
  font-family: var(--n-font-display);
  font-weight: 700;
  font-size: 0.9rem;
  color: var(--n-primary);
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  transition: gap 0.2s ease;
}

.card-link-arrow:hover { gap: 0.7rem; color: var(--n-primary-dark); }

/* Pricing card */
.pricing-card {
  background: #fff;
  border: 1px solid var(--n-border);
  border-radius: var(--n-radius-lg);
  padding: var(--n-space-lg);
  box-shadow: var(--n-shadow-sm);
  transition: all 0.3s ease;
  height: 100%;
  position: relative;
}

.pricing-card:hover { box-shadow: var(--n-shadow-md); transform: translateY(-6px); }

.pricing-card.featured {
  background: var(--n-gradient-dark);
  border: none;
  color: #fff;
  box-shadow: var(--n-shadow-lg);
  transform: scale(1.03);
}

.pricing-card.featured .price, .pricing-card.featured h3 { color: #fff; }
.pricing-card.featured .text-slate { color: rgba(255,255,255,0.65) !important; }
.pricing-card.featured ul li { color: rgba(255,255,255,0.85); }
.pricing-card.featured .pricing-divider { border-color: rgba(255,255,255,0.12); }

@media (max-width: 991.98px) {
  .pricing-card.featured { transform: none; }
}

.pricing-badge {
  position: absolute;
  top: -14px;
  right: 2rem;
  background: var(--n-gradient-primary);
  color: #fff;
  font-family: var(--n-font-display);
  font-weight: 700;
  font-size: 0.75rem;
  padding: 0.4rem 1rem;
  border-radius: var(--n-radius-pill);
  letter-spacing: 0.05em;
}

.price {
  font-family: var(--n-font-display);
  font-size: 3rem;
  font-weight: 800;
  color: var(--n-navy);
}

.price-period { font-size: 1rem; font-weight: 500; color: var(--n-slate); }

.pricing-divider { border-color: var(--n-border); margin: var(--n-space-md) 0; }

.feature-list { list-style: none; padding: 0; margin: 0; }
.feature-list li {
  display: flex;
  align-items: flex-start;
  gap: 0.65rem;
  margin-bottom: 0.75rem;
  font-size: 0.95rem;
  color: var(--n-slate);
}

.feature-list li i { color: var(--n-success); margin-top: 0.2rem; flex-shrink: 0; }
.feature-list li.disabled { opacity: 0.45; }
.feature-list li.disabled i { color: var(--n-slate-light); }

/* Blog cards */
.blog-card-img {
  border-radius: var(--n-radius-md) var(--n-radius-md) 0 0;
  overflow: hidden;
  aspect-ratio: 16/10;
}

.blog-card-img img { transition: transform 0.4s ease; width: 100%; height: 100%; object-fit: cover; }
.card-premium:hover .blog-card-img img { transform: scale(1.06); }

.blog-card-body { padding: var(--n-space-md) var(--n-space-md) 0; }

.tag-pill {
  display: inline-block;
  font-family: var(--n-font-display);
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--n-primary);
  background: var(--n-bg-alt);
  padding: 0.3rem 0.8rem;
  border-radius: var(--n-radius-pill);
  margin-bottom: 0.75rem;
}

.meta-row {
  display: flex;
  align-items: center;
  gap: 1rem;
  font-size: 0.85rem;
  color: var(--n-slate-light);
  margin-top: 1rem;
  padding-top: 1rem;
  border-top: 1px solid var(--n-border);
}

/* Portfolio card */
.portfolio-card {
  position: relative;
  border-radius: var(--n-radius-md);
  overflow: hidden;
  box-shadow: var(--n-shadow-sm);
  aspect-ratio: 4/3;
}

.portfolio-card img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.5s ease; }

.portfolio-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(11,20,55,0) 30%, rgba(11,20,55,0.88) 100%);
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding: var(--n-space-md);
  opacity: 0;
  transition: opacity 0.35s ease;
}

.portfolio-card:hover .portfolio-overlay { opacity: 1; }
.portfolio-card:hover img { transform: scale(1.08); }

.portfolio-overlay h5 { color: #fff; margin-bottom: 0.25rem; }
.portfolio-overlay span { color: rgba(255,255,255,0.7); font-size: 0.85rem; }

/* Testimonial card */
.testimonial-card {
  background: #fff;
  border-radius: var(--n-radius-md);
  box-shadow: var(--n-shadow-sm);
  border: 1px solid var(--n-border);
  padding: var(--n-space-lg);
  height: 100%;
}

.testimonial-card .stars { color: #FFB400; letter-spacing: 0.15em; font-size: 0.9rem; margin-bottom: 1rem; }

.testimonial-author {
  display: flex;
  align-items: center;
  gap: 0.85rem;
  margin-top: var(--n-space-md);
}

.testimonial-author img {
  width: 48px; height: 48px; border-radius: 50%; object-fit: cover;
}

.testimonial-author .name { font-family: var(--n-font-display); font-weight: 700; color: var(--n-navy); font-size: 0.95rem; }
.testimonial-author .role { font-size: 0.8rem; color: var(--n-slate-light); }

/* Process steps (numbered — real sequence) */
.process-step {
  position: relative;
  padding-left: 0;
}

.process-number {
  font-family: var(--n-font-display);
  font-size: 3rem;
  font-weight: 800;
  background: var(--n-gradient-primary);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
  line-height: 1;
  margin-bottom: 1rem;
  display: block;
}

/* Logo cloud */
.logo-cloud-item {
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--n-font-display);
  font-weight: 800;
  font-size: 1.25rem;
  color: var(--n-slate-light);
  opacity: 0.7;
  transition: opacity 0.2s ease;
}

.logo-cloud-item:hover { opacity: 1; color: var(--n-navy); }

/* =====================================================
   FORMS
   ===================================================== */
.form-control,
.form-select {
  border: 1.5px solid var(--n-border);
  border-radius: var(--n-radius-sm);
  padding: 0.85rem 1.1rem;
  font-size: 0.95rem;
  background-color: var(--n-bg);
  transition: all 0.2s ease;
}

.form-control:focus,
.form-select:focus {
  border-color: var(--n-primary);
  box-shadow: 0 0 0 4px rgba(21, 94, 239, 0.1);
  background-color: #fff;
}

.form-label {
  font-family: var(--n-font-display);
  font-weight: 600;
  font-size: 0.9rem;
  color: var(--n-navy);
  margin-bottom: 0.5rem;
}

.form-control.is-invalid, .form-select.is-invalid { border-color: #DC3545; }
.form-control.is-valid, .form-select.is-valid { border-color: var(--n-success); }

/* Newsletter / CTA section */
.cta-section {
  background: var(--n-gradient-dark);
  border-radius: var(--n-radius-lg);
  padding: var(--n-space-2xl) var(--n-space-lg);
  position: relative;
  overflow: hidden;
}

.cta-section::before {
  content: '';
  position: absolute;
  top: -100px;
  right: -100px;
  width: 350px;
  height: 350px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(10,108,240,0.25) 0%, transparent 70%);
}

.cta-section h2, .cta-section p { color: #fff; position: relative; z-index: 1; }
.cta-section p { color: rgba(255,255,255,0.7); }

/* =====================================================
   FOOTER
   ===================================================== */
.footer-nexora {
  background: var(--n-navy);
  color: rgba(255,255,255,0.65);
  padding-top: var(--n-space-2xl);
}

.footer-nexora h6 {
  color: #fff;
  font-size: 0.85rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  margin-bottom: var(--n-space-md);
}

.footer-nexora a {
  color: rgba(255,255,255,0.6);
  transition: color 0.2s ease;
 
  margin-bottom: 0.65rem;
  font-size: 0.95rem;
}

.footer-nexora a:hover { color: #fff; }

.footer-bottom {
  border-top: 1px solid rgba(255,255,255,0.08);
  margin-top: var(--n-space-xl);
  padding: var(--n-space-md) 0;
  font-size: 0.85rem;
}

.social-icon {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: rgba(255,255,255,0.06);
  display: flex;
  align-items: center;
  justify-content: center;
  color: #fff !important;
  transition: all 0.2s ease;
  margin-bottom: 0 !important;
}

.social-icon:hover { background: var(--n-primary); transform: translateY(-3px); }

/* =====================================================
   PAGE HEADER (sub-pages)
   ===================================================== */
.page-header {
  background: var(--n-gradient-dark);
  padding: 8rem 0 4rem;
  position: relative;
  overflow: hidden;
  text-align: center;
}

.page-header::before {
  content: '';
  position: absolute;
  top: -120px;
  right: -120px;
  width: 400px;
  height: 400px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(10,108,240,0.25) 0%, transparent 70%);
}

.page-header h1 { color: #fff; }

.breadcrumb-custom {
  display: inline-flex;
  gap: 0.5rem;
  font-size: 0.9rem;
  color: rgba(255,255,255,0.6);
  font-weight: 500;
}

.breadcrumb-custom a { color: rgba(255,255,255,0.6); }
.breadcrumb-custom a:hover { color: #fff; }
.breadcrumb-custom .active { color: var(--n-primary); }

/* =====================================================
   SCROLL REVEAL (lightweight)
   ===================================================== */
.reveal {
  opacity: 0;
  transform: translateY(24px);
  transition: opacity 0.6s ease, transform 0.6s ease;
}

.reveal.is-visible {
  opacity: 1;
  transform: translateY(0);
}

@media (prefers-reduced-motion: reduce) {
  .reveal { opacity: 1; transform: none; transition: none; }
  .card-premium:hover, .pricing-card:hover, .btn:hover, .portfolio-card img { transform: none; }
}

/* =====================================================
   MISC UTILITIES
   ===================================================== */
.divider-line { height: 1px; background: var(--n-border); border: none; }

.rounded-img { border-radius: var(--n-radius-lg); }

.badge-soft {
  background: var(--n-bg-alt);
  color: var(--n-primary);
  font-weight: 600;
  padding: 0.35rem 0.85rem;
  border-radius: var(--n-radius-pill);
  font-size: 0.8rem;
}

.list-check {
  list-style: none;
  padding: 0;
}

.list-check li {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
  margin-bottom: 0.85rem;
}

.list-check li i {
  color: var(--n-primary);
  background: var(--n-bg-alt);
  width: 24px;
  height: 24px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.7rem;
  flex-shrink: 0;
  margin-top: 0.1rem;
}

/* Author / sidebar widgets (blog details) */
.widget {
  background: #fff;
  border: 1px solid var(--n-border);
  border-radius: var(--n-radius-md);
  padding: var(--n-space-md);
  margin-bottom: var(--n-space-md);
}

.widget h5 { font-size: 1rem; margin-bottom: var(--n-space-sm); }

.widget-link-list { list-style: none; padding: 0; margin: 0; }
.widget-link-list li {
  display: flex;
  justify-content: space-between;
  padding: 0.6rem 0;
  border-bottom: 1px solid var(--n-border);
  font-size: 0.9rem;
  color: var(--n-navy);
  font-weight: 500;
}
.widget-link-list li:last-child { border-bottom: none; }
.widget-link-list li span { color: var(--n-slate-light); font-weight: 400; }

/* FAQ accordion custom */
.accordion-custom .accordion-item {
  border: 1px solid var(--n-border);
  border-radius: var(--n-radius-sm) !important;
  margin-bottom: 1rem;
  overflow: hidden;
}

.accordion-custom .accordion-button {
  font-family: var(--n-font-display);
  font-weight: 700;
  color: var(--n-navy);
  background: #fff;
  padding: 1.25rem 1.5rem;
}

.accordion-custom .accordion-button:not(.collapsed) {
  color: var(--n-primary);
  background: var(--n-bg-alt);
  box-shadow: none;
}

.accordion-custom .accordion-button:focus { box-shadow: none; border-color: var(--n-border); }
.accordion-custom .accordion-body { padding: 1.25rem 1.5rem; color: var(--n-slate); }

/* Back to top */
.back-to-top {
  position: fixed;
  bottom: 2rem;
  right: 2rem;
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: var(--n-gradient-primary);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: var(--n-shadow-primary);
  opacity: 0;
  visibility: hidden;
  transform: translateY(10px);
  transition: all 0.3s ease;
  z-index: 999;
  border: none;
}

.back-to-top.show { opacity: 1; visibility: visible; transform: translateY(0); }

/* Contact map placeholder */
.map-frame {
  border-radius: var(--n-radius-md);
  overflow: hidden;
  border: 1px solid var(--n-border);
  height: 50%;
  min-height: 320px;
}

.map-frame iframe { width: 100%; height: 100%; min-height: 320px; border: 0; display: block; }

/* Service detail icon list */
.feature-grid-item {
  display: flex;
  gap: 1rem;
  padding: var(--n-space-md);
  background: var(--n-bg);
  border-radius: var(--n-radius-md);
  height: 100%;
}

/* =====================================================
   PREMIUM SOFTWARE COMPANY HERO SLIDER
   ===================================================== */
.hero-slider-section{padding:0;background:#06152d;position:relative;overflow:visible;min-height:650px}
.hero-slider-section::before,.hero-slider-section::after{display:none}
.hero-slide{min-height:650px;position:relative;overflow:hidden}
.hero-slide-bg{position:absolute;inset:0;background-size:cover;background-position:center right;transform:scale(1.02);transition:transform 7s ease}
.carousel-item.active .hero-slide-bg{transform:scale(1.06)}
.hero-slide-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,14,34,.98) 0%,rgba(3,14,34,.93) 34%,rgba(3,14,34,.62) 57%,rgba(3,14,34,.10) 100%),linear-gradient(0deg,rgba(3,14,34,.38),transparent 35%)}
.hero-slide-content{position:relative;z-index:3;padding-top:105px;padding-bottom:130px;color:#fff}
.min-vh-75{min-height:520px}
.hero-kicker{display:inline-flex;align-items:center;gap:9px;color:#70a7ff;font-size:.74rem;letter-spacing:.16em;font-weight:800;margin-bottom:22px}
.hero-kicker i{font-size:1rem}
.hero-slide h1{font-family:var(--n-font-display);font-size:clamp(2.7rem,5vw,4.55rem);line-height:1.08;letter-spacing:-.045em;color:#fff;max-width:790px;margin-bottom:22px;font-weight:800}
.hero-slide h1 span{color:#3DB8FF}
.hero-slide p{font-size:1.08rem;line-height:1.8;color:#c5d0df;max-width:650px;margin-bottom:30px}
.hero-actions{display:flex;flex-wrap:wrap;gap:12px}
.hero-btn-outline{border:1px solid rgba(255,255,255,.42);color:#fff;background:rgba(255,255,255,.07);backdrop-filter:blur(8px)}
.hero-btn-outline:hover{background:#fff;color:#07152e;border-color:#fff;transform:translateY(-2px)}
.hero-points{display:flex;flex-wrap:wrap;gap:25px;margin-top:30px;color:#cbd5e1;font-size:.82rem}
.hero-points i{color:#3DB8FF;margin-right:6px}
.hero-control{width:54px;height:54px;top:48%;margin-top:-27px;border-radius:50%;background:rgba(255,255,255,.10);border:1px solid rgba(255,255,255,.18);opacity:.8;z-index:5}
.hero-control:hover{background:rgba(10,108,240,.8);opacity:1}
.hero-control.carousel-control-prev{left:22px}.hero-control.carousel-control-next{right:22px}
.carousel-indicators{z-index:6;bottom:112px;justify-content:flex-start;left:calc((100% - 1160px)/2);margin:0;width:auto;gap:7px}
.carousel-indicators [data-bs-target]{width:28px;height:4px;border:0;border-radius:5px;background:#fff;opacity:.35;margin:0;transition:.25s}
.carousel-indicators .active{width:50px;opacity:1;background:#3DB8FF}
.hero-stats-wrap{position:absolute;z-index:8;bottom:-1px;left:50%;transform:translateX(-50%);width:min(1160px,92%)}
.hero-stats-row{background:rgba(255,255,255,.98);border-radius:18px 18px 0 0;box-shadow:0 -12px 45px rgba(0,0,0,.16);display:grid;grid-template-columns:repeat(4,1fr);overflow:hidden}
.hero-stats-row>div{padding:22px 26px;display:flex;flex-direction:column;align-items:center;justify-content:center;border-right:1px solid #e8edf3}
.hero-stats-row>div:last-child{border-right:0}
.hero-stats-row strong{font-family:var(--n-font-display);font-size:1.7rem;color:var(--n-navy);line-height:1.1}.hero-stats-row span{font-size:.72rem;color:#758093;margin-top:5px}
@media(max-width:991.98px){.hero-slide{min-height:680px}.hero-slide-content{padding-top:120px;text-align:center}.hero-slide h1{font-size:2.8rem;margin-left:auto;margin-right:auto}.hero-slide p{margin-left:auto;margin-right:auto}.hero-actions,.hero-points{justify-content:center}.carousel-indicators{left:50%;transform:translateX(-50%);justify-content:center;bottom:118px}.hero-stats-row>div{padding:17px 10px}.hero-stats-row strong{font-size:1.35rem}.hero-stats-row span{font-size:.65rem}}
@media(max-width:575.98px){.hero-slider-section,.hero-slide{min-height:735px}.hero-slide-content{padding-top:105px;padding-bottom:155px}.hero-slide h1{font-size:2.15rem;letter-spacing:-.035em}.hero-slide p{font-size:.94rem;line-height:1.65}.hero-points{gap:10px 18px;font-size:.72rem}.hero-control{display:none}.hero-stats-wrap{bottom:0}.hero-stats-row{grid-template-columns:repeat(2,1fr);border-radius:15px 15px 0 0}.hero-stats-row>div{padding:14px 8px;border-bottom:1px solid #e8edf3}.hero-stats-row>div:nth-child(2){border-right:0}.hero-stats-row strong{font-size:1.2rem}.hero-stats-row span{font-size:.6rem}.carousel-indicators{bottom:128px}.hero-actions .btn{width:100%}}

/* Hero navigation contrast */
.navbar-nexora:not(.scrolled) .navbar-brand-custom{color:#fff !important}
.navbar-nexora:not(.scrolled) .navbar-brand-custom span{color:#3DB8FF}
.navbar-nexora:not(.scrolled) .nav-link{color:rgba(255,255,255,.88) !important}
.navbar-nexora:not(.scrolled) .nav-link:hover,.navbar-nexora:not(.scrolled) .nav-link.active{color:#fff !important;background:rgba(255,255,255,.09)}
.navbar-nexora:not(.scrolled) .nav2{color:rgba(255,255,255,.88) !important}
.navbar-nexora.scrolled .nav2{color:var(--n-navy) !important}
.navbar-nexora:not(.scrolled) .navbar-toggler-custom{background:rgba(255,255,255,.1)}
.navbar-nexora:not(.scrolled) .navbar-toggler-custom .bar{background:#fff}

/* ===== AdyCore overrides ===== */
.navbar-nexora,.navbar-nexora:not(.scrolled){background:rgba(255,255,255,.97)!important;backdrop-filter:blur(12px);box-shadow:0 2px 16px rgba(10,27,61,.08);padding:.5rem 0}
.navbar-brand img{height:54px;width:auto;display:block}
.navbar-nexora .nav-link,.navbar-nexora:not(.scrolled) .nav-link,.navbar-nexora:not(.scrolled) .nav2,.navbar-nexora.scrolled .nav2{color:var(--n-navy)!important}
.navbar-nexora .nav-link:hover,.navbar-nexora .nav-link.active,.navbar-nexora:not(.scrolled) .nav-link:hover,.navbar-nexora:not(.scrolled) .nav-link.active{color:var(--n-primary)!important;background:var(--n-bg-alt)}
.navbar-nexora:not(.scrolled) .navbar-toggler-custom{background:var(--n-bg-alt)}
.navbar-nexora:not(.scrolled) .navbar-toggler-custom .bar{background:var(--n-navy)}
.navbar-nexora .dropdown-menu{border:1px solid var(--n-border);border-radius:var(--n-radius-md);box-shadow:var(--n-shadow-md);padding:.5rem;min-width:230px}
.navbar-nexora .dropdown-item{font-family:var(--n-font-display);font-weight:600;font-size:.9rem;color:var(--n-navy);border-radius:8px;padding:.6rem .9rem}
.navbar-nexora .dropdown-item:hover{background:var(--n-bg-alt);color:var(--n-primary)}
.navbar-nexora .dropdown-item i{color:var(--n-primary);margin-right:.5rem}
@media(min-width:992px){.navbar-nexora .dropdown:hover>.dropdown-menu{display:block;margin-top:0}}
.footer-logo{display:inline-block;background:#fff;padding:10px 16px;border-radius:14px}
.footer-logo img{height:56px;width:auto;display:block}
.product-card{position:relative;background:#fff;border:1px solid var(--n-border);border-radius:var(--n-radius-lg);padding:2rem;height:100%;overflow:hidden;transition:box-shadow .25s,transform .25s}
.product-card::before{content:'';position:absolute;inset:0 0 auto 0;height:5px;background:var(--n-gradient-primary)}
.product-card:hover{box-shadow:var(--n-shadow-lg);transform:translateY(-4px)}
.product-card ul{list-style:none;padding:0;margin:0 0 1.5rem}
.product-card li{display:flex;gap:.6rem;padding:.3rem 0;color:var(--n-slate)}
.product-card li i{color:var(--n-primary);margin-top:.2rem}
.product-tag{display:inline-block;font-family:var(--n-font-display);font-size:.78rem;font-weight:700;color:var(--n-primary);background:var(--n-bg-alt);padding:.25rem .7rem;border-radius:100px;margin-bottom:.9rem}
.wa-float{position:fixed;left:22px;bottom:22px;z-index:1030;width:54px;height:54px;border-radius:50%;background:#25D366;color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.7rem;box-shadow:0 10px 24px rgba(37,211,102,.4)}
.wa-float:hover{color:#fff;transform:scale(1.06)}
a:focus-visible,button:focus-visible,.btn:focus-visible{outline:3px solid var(--n-primary);outline-offset:2px}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important;scroll-behavior:auto!important}.reveal{opacity:1!important;transform:none!important}}

/* ===== Motion + mockups ===== */
.scroll-progress{position:fixed;top:0;left:0;height:3px;width:0;background:var(--n-gradient-primary);z-index:2000}
@keyframes heroIn{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:none}}
.carousel-item.active .hero-kicker{animation:heroIn .7s .05s both}
.carousel-item.active .hero-slide h1,.carousel-item.active h1{animation:heroIn .8s .18s both}
.carousel-item.active .hero-slide p,.carousel-item.active .hero-slide-content p{animation:heroIn .8s .32s both}
.carousel-item.active .hero-actions{animation:heroIn .8s .46s both}
.carousel-item.active .hero-points{animation:heroIn .8s .6s both}
.btn-primary{position:relative;overflow:hidden}
.btn-primary::after{content:'';position:absolute;top:0;left:-70%;width:45%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.35),transparent);transform:skewX(-20deg);transition:left .6s}
.btn-primary:hover::after{left:130%}
.portfolio-card img,.rounded-img{transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.portfolio-card:hover img{transform:scale(1.06)}
.demo{background:linear-gradient(135deg,#0A1B3D 0%,#12305F 60%,#0A6CF0 140%);color:#fff;overflow:hidden}
.demo h2,.demo .section-title{color:#fff}
.demo .section-subtitle{color:rgba(255,255,255,.75)}
.demo-stage{position:relative;min-height:470px;display:flex;justify-content:center;align-items:center}
.phone{width:290px;border-radius:38px;background:#0A1B3D;padding:10px;box-shadow:0 30px 70px rgba(0,0,0,.45),0 0 0 2px rgba(255,255,255,.12);position:relative;z-index:2}
.phone-screen{border-radius:30px;overflow:hidden;background:#ECE5DD;height:440px;display:flex;flex-direction:column}
.wa-head{background:#128C7E;color:#fff;padding:14px 16px;display:flex;align-items:center;gap:10px;font-family:var(--n-font-display);font-weight:600;font-size:.9rem}
.wa-head img{height:30px;width:30px;object-fit:contain;background:#fff;border-radius:50%;padding:3px}
.wa-head small{display:block;font-weight:400;opacity:.8;font-size:.7rem}
.wa-body{padding:16px 12px;flex:1;display:flex;flex-direction:column;gap:8px}
.bubble{background:#fff;color:#1b2a3a;border-radius:4px 14px 14px 14px;padding:10px 12px;font-size:.8rem;line-height:1.45;max-width:92%;box-shadow:0 1px 1px rgba(0,0,0,.1);opacity:0;transform:translateY(14px) scale(.96)}
.bubble b{color:#0A1B3D}
.bubble .cta{display:block;text-align:center;color:#0A6CF0;font-weight:700;border-top:1px solid #e6ebf1;margin-top:8px;padding-top:7px;font-size:.78rem}
.bubble .cta+.cta{margin-top:0}
.bubble .time{display:block;text-align:right;font-size:.62rem;color:#8a97a6;margin-top:3px}
.typing{background:#fff;border-radius:4px 14px 14px 14px;padding:10px 14px;display:inline-flex;gap:4px;width:56px;opacity:0}
.typing i{width:6px;height:6px;border-radius:50%;background:#9aa7b5;animation:blink 1s infinite}
.typing i:nth-child(2){animation-delay:.15s}.typing i:nth-child(3){animation-delay:.3s}
@keyframes blink{0%,80%,100%{opacity:.3}40%{opacity:1}}
@keyframes pop{to{opacity:1;transform:none}}
@keyframes typ{0%{opacity:0}10%,90%{opacity:1}100%{opacity:0;display:none}}
.in-view .typing{animation:typ 1.1s .3s both}
.in-view .bubble.b1{animation:pop .5s 1.5s both}
.in-view .bubble.b2{animation:pop .5s 2.4s both}
.mail-card{position:absolute;right:-6px;bottom:24px;width:300px;background:#fff;color:#4b5a6d;border-radius:18px;padding:18px;box-shadow:0 26px 60px rgba(0,0,0,.4);z-index:3;opacity:0;transform:translateY(30px)}
.in-view .mail-card{animation:pop .7s 1.2s both}
.mail-card h4{font-size:.95rem;margin:0 0 2px;color:#0A1B3D}
.mail-card small{color:#8a97a6}
.mbar{height:8px;border-radius:8px;background:#E4ECF7;margin:14px 0 10px;overflow:hidden}
.mbar i{display:block;height:100%;width:0;background:var(--n-gradient-primary);border-radius:8px}
.in-view .mbar i{animation:fill 2.2s 1.8s cubic-bezier(.2,.7,.2,1) forwards}
@keyframes fill{to{width:84%}}
.chips{display:flex;gap:8px;font-size:.75rem;font-weight:600}
.chips span{background:#EAF3FF;color:#0752B8;border-radius:100px;padding:.25rem .65rem}
.chips span.bad{background:#FFF0EE;color:#B42318}
.float-y{animation:floaty 5s ease-in-out infinite}
@keyframes floaty{50%{transform:translateY(-10px)}}
.demo-mail-only .mail-card{position:relative;right:auto;bottom:auto;width:340px}
.demo-list{list-style:none;padding:0;margin:1.5rem 0 2rem}
.demo-list li{display:flex;gap:.7rem;padding:.35rem 0;color:rgba(255,255,255,.88)}
.demo-list i{color:#3DB8FF;margin-top:.2rem}
@media(max-width:575.98px){.mail-card{width:250px;right:-4px}.phone{width:250px}.demo-stage{min-height:520px}}

/* ===== Animated hero + page headers + reveal variants ===== */
.hero-fx{position:absolute;inset:0;z-index:2;pointer-events:none;overflow:hidden}
.orb{position:absolute;border-radius:50%;filter:blur(8px);opacity:.55;animation:drift 14s ease-in-out infinite alternate}
.orb.o1{width:420px;height:420px;right:-90px;top:-80px;background:radial-gradient(circle,rgba(10,108,240,.55),transparent 68%)}
.orb.o2{width:340px;height:340px;right:22%;bottom:-120px;background:radial-gradient(circle,rgba(0,180,240,.45),transparent 68%);animation-duration:18s;animation-delay:-4s}
.orb.o3{width:220px;height:220px;left:38%;top:12%;background:radial-gradient(circle,rgba(61,184,255,.35),transparent 68%);animation-duration:11s;animation-delay:-7s}
@keyframes drift{from{transform:translate(0,0) scale(1)}to{transform:translate(-50px,40px) scale(1.15)}}
.fx-chip{position:absolute;display:flex;align-items:center;gap:.6rem;padding:.7rem 1rem;border-radius:16px;color:#fff;font-family:var(--n-font-display);font-weight:600;font-size:.9rem;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.28);backdrop-filter:blur(10px);opacity:0}
.fx-chip i{width:34px;height:34px;border-radius:10px;display:flex;align-items:center;justify-content:center;background:var(--n-gradient-primary);font-size:1rem}
.fx-chip.c1{top:24%;right:9%;--d:.5s}.fx-chip.c2{top:47%;right:24%;--d:.9s}.fx-chip.c3{top:68%;right:7%;--d:1.3s}
.carousel-item.active .fx-chip{animation:chipIn .8s var(--d) both,floaty 6s calc(var(--d) + .8s) ease-in-out infinite}
@keyframes chipIn{from{opacity:0;transform:translateX(50px) scale(.9)}to{opacity:1;transform:none}}
.carousel-indicators [data-bs-target]{position:relative;overflow:hidden}
.carousel-indicators .active{background:rgba(255,255,255,.35)}
.carousel-indicators .active::after{content:'';position:absolute;inset:0;background:#3DB8FF;transform-origin:left;animation:prog 6.5s linear both}
@keyframes prog{from{transform:scaleX(0)}to{transform:scaleX(1)}}
@media(max-width:991.98px){.fx-chip{display:none}}
.page-header{background-size:220% 220%;animation:gradShift 14s ease-in-out infinite}
@keyframes gradShift{50%{background-position:100% 60%}}
.page-header .container{position:relative;z-index:2}
.page-header h1{animation:heroIn .8s .1s both}
.page-header .breadcrumb-custom{animation:heroIn .8s .3s both}
.ph-fx{position:absolute;inset:0;z-index:1;pointer-events:none;overflow:hidden}
.ph-fx .orb{opacity:.6}
.ph-fx .orb.o1{right:-60px;top:-140px}.ph-fx .orb.o2{left:-80px;bottom:-200px;right:auto}.ph-fx .orb.o3{left:auto;right:30%;top:auto;bottom:-90px}
.ph-fx::after{content:'';position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.16) 1.2px,transparent 1.4px);background-size:34px 34px;animation:dots 30s linear infinite;-webkit-mask-image:linear-gradient(90deg,transparent,#000 40%,#000 60%,transparent);mask-image:linear-gradient(90deg,transparent,#000 40%,#000 60%,transparent)}
@keyframes dots{to{background-position:340px 170px}}
.ph-fx>i{position:absolute;font-size:2.2rem;color:rgba(255,255,255,.22);animation:spinfloat 9s ease-in-out infinite}
.ph-fx>i.f1{left:10%;top:32%}.ph-fx>i.f2{right:12%;top:26%;animation-delay:-3s;font-size:2.8rem}.ph-fx>i.f3{right:28%;bottom:14%;animation-delay:-6s;font-size:1.8rem}
@keyframes spinfloat{50%{transform:translateY(-16px) rotate(10deg)}}
.reveal{transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1)}
.reveal-left{transform:translateX(-50px)}.reveal-right{transform:translateX(50px)}.reveal-zoom{transform:scale(.92)}
.reveal.is-visible{transform:none}
.card-premium,.pricing-card,.testimonial-card,.blog-card,.process-step{transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s}
.card-premium:hover,.testimonial-card:hover,.blog-card:hover,.process-step:hover{transform:translateY(-8px);box-shadow:var(--n-shadow-lg)}
.icon-box{transition:transform .4s}.card-premium:hover .icon-box{transform:rotate(-8deg) scale(1.1)}

/* =====================================================
   PRICING — Bulk Mail / Bulk WhatsApp plans
   ===================================================== */
.ph-lead{color:rgba(255,255,255,.78);font-size:1.1rem;margin:-.25rem 0 1rem;animation:heroIn .8s .2s both}
.ph-lead b{color:#3DB8FF}
.plan-controls{display:flex;flex-direction:column;align-items:center;gap:1rem}
.seg{position:relative;display:inline-flex;flex-wrap:wrap;justify-content:center;gap:0;padding:6px;background:#fff;border:1px solid var(--n-border);border-radius:100px;box-shadow:var(--n-shadow-sm)}
.seg button{position:relative;z-index:1;border:0;background:none;padding:.7rem 1.35rem;border-radius:100px;font-family:var(--n-font-display);font-weight:600;font-size:.95rem;color:var(--n-slate);display:inline-flex;align-items:center;gap:.45rem;transition:color .3s;white-space:nowrap}
.seg button:hover{color:var(--n-navy)}
.seg button.active{color:#fff}
.seg-thumb{position:absolute;z-index:0;top:6px;bottom:6px;left:6px;border-radius:100px;background:var(--n-gradient-primary);box-shadow:0 8px 20px rgba(10,108,240,.3);transition:transform .45s cubic-bezier(.3,1.3,.5,1),width .45s cubic-bezier(.3,1.3,.5,1),background .4s}
body[data-product=whatsapp] .seg-product .seg-thumb{background:linear-gradient(135deg,#128C7E,#25D366);box-shadow:0 8px 20px rgba(37,211,102,.3)}
.seg-product button{font-size:1.02rem;padding:.8rem 1.6rem}
.save-tag{font-size:.68rem;font-weight:700;background:#E7F8EF;color:#067647;padding:.15rem .5rem;border-radius:100px;transition:background .3s,color .3s}
.seg button.active .save-tag{background:rgba(255,255,255,.22);color:#fff}
@media(max-width:575.98px){
  .seg{border-radius:18px;width:100%}
  .seg-duration{display:grid;grid-template-columns:1fr 1fr}
  .seg-duration .seg-thumb{display:none}
  .seg-duration button{border-radius:12px;justify-content:center;padding:.65rem .5rem}
  .seg-duration button.active{background:var(--n-gradient-primary)}
  .seg-product button{flex:1;justify-content:center;padding:.7rem .6rem;font-size:.92rem}
}
.plan-grid{transition:opacity .22s,transform .22s}
.plan-grid.is-switching{opacity:0;transform:translateY(12px)}
.plan-card{--rx:0deg;--ry:0deg;display:flex;flex-direction:column;animation:planIn .7s calc(var(--i) * .1s) cubic-bezier(.2,.7,.2,1) both;transform:perspective(900px) rotateX(var(--rx)) rotateY(var(--ry));transition:transform .25s ease-out,box-shadow .35s!important}
.plan-card:hover{transform:perspective(900px) rotateX(var(--rx)) rotateY(var(--ry)) translateY(-6px)}
.plan-card.featured{transform:perspective(900px) rotateX(var(--rx)) rotateY(var(--ry)) scale(1.03)}
@media(max-width:991.98px){.plan-card.featured{transform:none}}
.plan-card::after{content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:radial-gradient(420px circle at var(--mx,50%) var(--my,0%),rgba(10,108,240,.08),transparent 45%);opacity:0;transition:opacity .3s}
.plan-card.featured::after{background:radial-gradient(420px circle at var(--mx,50%) var(--my,0%),rgba(61,184,255,.18),transparent 45%)}
.plan-card:hover::after{opacity:1}
.plan-card.featured{border:2px solid transparent!important;background:linear-gradient(135deg,#0A1B3D,#12305F) padding-box,conic-gradient(from var(--ang,0deg),#0A6CF0,#00B4F0,#9BE1FF,#0A6CF0) border-box;animation:planIn .7s calc(var(--i) * .1s) cubic-bezier(.2,.7,.2,1) both,spinBorder 5s linear infinite}
body[data-product=whatsapp] .plan-card.featured{background:linear-gradient(135deg,#0A1B3D,#12305F) padding-box,conic-gradient(from var(--ang,0deg),#128C7E,#25D366,#7CE7A4,#128C7E) border-box}
@property --ang{syntax:'<angle>';initial-value:0deg;inherits:false}
@keyframes spinBorder{to{--ang:360deg}}
@keyframes planIn{from{opacity:0;transform:perspective(900px) translateY(40px) rotateX(8deg)}to{opacity:1}}
.plan-card.bump .price{animation:bump .5s cubic-bezier(.3,1.5,.5,1)}
@keyframes bump{40%{transform:scale(1.08)}}
.plan-card .price{display:inline-block;font-size:2.6rem;transform-origin:left center}
.plan-ico{width:36px;height:36px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;background:var(--n-bg-alt);color:var(--n-primary);font-size:1.05rem}
body[data-product=whatsapp] .plan-ico{background:#E7F8EF;color:#128C7E}
.plan-card.featured .plan-ico{background:rgba(255,255,255,.12);color:#fff}
.price-old{display:block;height:1.2rem;font-size:.9rem;color:var(--n-slate-light);opacity:0;transform:translateY(6px);transition:.35s}
.price-old.show{opacity:1;transform:none}
.plan-card.featured .price-old{color:rgba(255,255,255,.5)}
.plan-card.featured .price-period{color:rgba(255,255,255,.6)}
.price-note{font-size:.85rem;color:var(--n-slate);min-height:1.5rem;margin-top:.15rem}
.plan-card.featured .price-note{color:rgba(255,255,255,.7)}
.save-pill,.bonus-pill{display:inline-block;font-size:.72rem;font-weight:700;background:#E7F8EF;color:#067647;padding:.1rem .5rem;border-radius:100px;animation:pillPop .45s cubic-bezier(.3,1.6,.5,1)}
.bonus-pill{background:#FFF4E5;color:#B54708}
@keyframes pillPop{from{transform:scale(.4);opacity:0}}
.quota-box{margin:1.25rem 0;padding:1rem 1.1rem;border-radius:14px;background:var(--n-bg);border:1px dashed var(--n-border)}
.plan-card.featured .quota-box{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.16)}
.quota-label{font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--n-slate-light)}
.quota-num{font-family:var(--n-font-display);font-size:1.5rem;font-weight:800;color:var(--n-navy)}
.quota-num small{font-size:.85rem;font-weight:600;color:var(--n-slate)}
.plan-card.featured .quota-num{color:#fff}.plan-card.featured .quota-num small,.plan-card.featured .quota-sub{color:rgba(255,255,255,.7)}
.quota-sub{font-size:.82rem;color:var(--n-slate)}
.quota-bar{height:6px;border-radius:6px;background:var(--n-border);margin-top:.7rem;overflow:hidden}
.plan-card.featured .quota-bar{background:rgba(255,255,255,.12)}
.quota-bar i{display:block;height:100%;width:0;border-radius:6px;background:var(--n-gradient-primary);transition:width 1.1s cubic-bezier(.2,.7,.2,1)}
body[data-product=whatsapp] .quota-bar i{background:linear-gradient(90deg,#128C7E,#25D366)}
.plan-card .feature-list{flex:1}
.plan-card .feature-list li{animation:liIn .5s calc(var(--i) * .1s + .3s + var(--k) * .05s) both}
@keyframes liIn{from{opacity:0;transform:translateX(-12px)}}
.plan-card .feature-list li.disabled{opacity:.55}
/* plan finder */
.finder-range{background:#fff;border:1px solid var(--n-border);border-radius:var(--n-radius-lg);padding:1.5rem;box-shadow:var(--n-shadow-sm)}
.finder-range input[type=range]{--fill:10%;width:100%;appearance:none;-webkit-appearance:none;height:8px;border-radius:8px;background:linear-gradient(90deg,var(--n-primary) var(--fill),var(--n-border) var(--fill));outline-offset:6px;cursor:pointer}
.finder-range input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:26px;height:26px;border-radius:50%;background:#fff;border:6px solid var(--n-primary);box-shadow:0 4px 14px rgba(10,108,240,.4);transition:transform .2s}
.finder-range input[type=range]::-webkit-slider-thumb:hover{transform:scale(1.15)}
.finder-range input[type=range]::-moz-range-thumb{width:16px;height:16px;border-radius:50%;background:#fff;border:6px solid var(--n-primary);box-shadow:0 4px 14px rgba(10,108,240,.4)}
.finder-scale{display:flex;justify-content:space-between;font-size:.75rem;color:var(--n-slate-light);margin-top:.5rem}
.finder-value{margin-top:.9rem;font-family:var(--n-font-display);font-weight:700;font-size:1.25rem;color:var(--n-navy)}
.finder-card{background:var(--n-gradient-dark);color:#fff;border-radius:var(--n-radius-lg);padding:2rem;box-shadow:var(--n-shadow-lg);position:relative;overflow:hidden;min-height:230px}
.finder-card::before{content:'';position:absolute;width:300px;height:300px;right:-90px;top:-120px;border-radius:50%;background:radial-gradient(circle,rgba(61,184,255,.35),transparent 70%);animation:drift 10s ease-in-out infinite alternate}
.finder-card>*{position:relative}
.finder-card h4{color:#fff;font-size:1.5rem;margin:.6rem 0 .4rem}
.finder-card p{color:rgba(255,255,255,.75)}
.finder-card p b{color:#fff}
.finder-card.flash>*{animation:heroIn .45s both}
.finder-tag{display:inline-block;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;background:rgba(61,184,255,.18);color:#7CCBFF;padding:.3rem .7rem;border-radius:100px}
.finder-tag.alt{background:rgba(255,184,77,.18);color:#FFC46B}
/* quota matrix */
.quota-matrix{background:#fff;border-radius:var(--n-radius-lg);overflow:hidden;box-shadow:var(--n-shadow-sm);min-width:640px}
.quota-matrix th{font-family:var(--n-font-display);color:var(--n-navy);padding:1rem .75rem;background:var(--n-bg);border-bottom:1px solid var(--n-border)}
.quota-matrix td{padding:1rem .75rem;transition:background .35s}
.quota-matrix .is-current{background:var(--n-bg-alt)}
.quota-matrix th.is-current{background:var(--n-primary);color:#fff}
.m-price{font-family:var(--n-font-display);font-weight:700;color:var(--n-navy)}
.m-quota{font-size:.8rem;color:var(--n-slate)}

/* =====================================================
   SITE-WIDE MOTION EXTRAS
   ===================================================== */
/* page fade in / out */
body{animation:pageIn .5s ease-out both}
body.is-leaving{opacity:0;transition:opacity .22s ease-in}
@keyframes pageIn{from{opacity:0}}
/* shimmering hero highlight words */
.hero-slide h1 span{background:linear-gradient(90deg,#3DB8FF,#9BE1FF,#3DB8FF);background-size:200% 100%;-webkit-background-clip:text;background-clip:text;color:transparent;animation:shine 4s linear infinite}
@keyframes shine{to{background-position:-200% 0}}
/* pulsing eyebrow dot */
.eyebrow::before{animation:dotPulse 2s ease-out infinite}
@keyframes dotPulse{0%{box-shadow:0 0 0 0 rgba(10,108,240,.5)}100%{box-shadow:0 0 0 8px rgba(10,108,240,0)}}
/* section title underline grows on reveal */
.section-header .section-title{position:relative}
.section-header .text-center .section-title::after,.section-header .col-lg-7:not(.text-lg-end) .section-title::after{content:'';display:block;width:56px;height:4px;border-radius:4px;background:var(--n-gradient-primary);margin-top:.9rem;transform:scaleX(0);transform-origin:left;transition:transform .9s .35s cubic-bezier(.2,.7,.2,1)}
.section-header .text-center .section-title::after{margin-left:auto;margin-right:auto;transform-origin:center}
.demo .section-title::after{display:none!important}
.reveal.is-visible .section-title::after{transform:scaleX(1)}
/* cursor spotlight on cards */
.card-premium,.product-card,.process-step{position:relative;overflow:hidden}
.card-premium::after,.product-card::after,.process-step::after{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(360px circle at var(--mx,50%) var(--my,50%),rgba(10,108,240,.09),transparent 45%);opacity:0;transition:opacity .3s}
.card-premium:hover::after,.product-card:hover::after,.process-step:hover::after{opacity:1}
.product-card .icon-box{transition:transform .5s cubic-bezier(.3,1.5,.5,1)}
.product-card:hover .icon-box{transform:translateY(-4px) rotate(-6deg) scale(1.08)}
.product-card::before{background-size:200% 100%;background-image:linear-gradient(90deg,#0A6CF0,#00B4F0,#0A6CF0);animation:shine 3s linear infinite}
.product-price{display:flex;align-items:baseline;gap:.4rem;margin:-.5rem 0 1.25rem;font-size:.9rem;color:var(--n-slate)}
.product-price b{font-family:var(--n-font-display);font-size:1.35rem;color:var(--n-navy)}
/* process number gradient sweep */
.process-number{background-size:200% 100%!important;transition:background-position .6s}
.process-step:hover .process-number{background-position:100% 0}
/* click ripple on buttons */
.btn{position:relative;overflow:hidden}
.btn .ripple{position:absolute;border-radius:50%;transform:scale(0);background:rgba(255,255,255,.45);animation:ripple .6s ease-out forwards;pointer-events:none}
.btn-light-custom .ripple,.btn-outline-primary .ripple{background:rgba(10,108,240,.2)}
@keyframes ripple{to{transform:scale(4);opacity:0}}
/* feature marquee */
.marquee{position:relative;overflow:hidden;background:var(--n-navy);padding:1.1rem 0}
.marquee::before,.marquee::after{content:'';position:absolute;top:0;bottom:0;width:120px;z-index:1;pointer-events:none}.marquee::before{left:0;background:linear-gradient(90deg,var(--n-navy),transparent)}.marquee::after{right:0;background:linear-gradient(-90deg,var(--n-navy),transparent)}
.marquee-track{display:flex;gap:3rem;width:max-content;animation:marquee 35s linear infinite}
.marquee:hover .marquee-track{animation-play-state:paused}
.marquee-track span{display:inline-flex;align-items:center;gap:.6rem;color:rgba(255,255,255,.82);font-family:var(--n-font-display);font-weight:600;white-space:nowrap}
.marquee-track i{color:#3DB8FF;font-size:1.15rem}
@keyframes marquee{to{transform:translateX(-50%)}}
/* back-to-top progress ring */
.back-to-top{--p:0}
.back-to-top::before{content:'';position:absolute;inset:-4px;border-radius:50%;background:conic-gradient(var(--n-secondary) calc(var(--p) * 1%),transparent 0);-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 3px),#000 calc(100% - 3px));mask:radial-gradient(farthest-side,transparent calc(100% - 3px),#000 calc(100% - 3px))}
/* WhatsApp float pulse */
.wa-float::before{content:'';position:absolute;inset:0;border-radius:50%;background:#25D366;z-index:-1;animation:waPulse 2.2s ease-out infinite}
@keyframes waPulse{to{transform:scale(1.7);opacity:0}}
/* stagger list items when revealed */
.reveal .list-check li,.reveal .demo-list li{opacity:0;transform:translateX(-14px);transition:opacity .5s,transform .5s}
.reveal.is-visible .list-check li,.reveal.is-visible .demo-list li{opacity:1;transform:none}
.reveal.is-visible .list-check li:nth-child(2),.reveal.is-visible .demo-list li:nth-child(2){transition-delay:.12s}
.reveal.is-visible .list-check li:nth-child(3),.reveal.is-visible .demo-list li:nth-child(3){transition-delay:.24s}
.reveal.is-visible .list-check li:nth-child(4),.reveal.is-visible .demo-list li:nth-child(4){transition-delay:.36s}
@media(prefers-reduced-motion:reduce){.plan-card,.plan-card .feature-list li{animation:none!important}.reveal .list-check li,.reveal .demo-list li{opacity:1;transform:none}.marquee-track{animation:none!important}.hero-slide h1 span{color:#3DB8FF;-webkit-text-fill-color:#3DB8FF}}
html,body{overflow-x:clip}

/* =====================================================
   CONTACT, MAIL & SEARCH (js/contact.js)
   ===================================================== */
/* Navbar search button */
.nav-search-btn{background:none;border:0;display:flex;align-items:center;font-size:1.05rem}
@media(min-width:992px){.nav-search-btn{width:40px;height:40px;justify-content:center;border-radius:50%}.nav-search-btn:hover{background:var(--n-bg-alt)}}

/* Footer contact list */
.footer-contact{list-style:none;padding:0;margin:0 0 1.25rem}
.footer-contact li{display:flex;align-items:center;gap:.6rem;margin-bottom:.45rem;color:rgba(255,255,255,.6)}
.footer-contact li i{color:var(--n-secondary)}
.footer-nexora .footer-contact a{display:inline;margin:0}

/* Single / Group picker */
.send-mode{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}
.send-mode-btn{display:flex;flex-wrap:wrap;align-items:center;gap:.45rem;padding:.75rem 1rem;border:1.5px solid var(--n-border);border-radius:var(--n-radius-md);cursor:pointer;font-weight:600;color:var(--n-navy);background:#fff;transition:border-color .2s,background .2s,box-shadow .2s}
.send-mode-btn small{flex-basis:100%;font-weight:400;color:var(--n-slate-light);font-size:.78rem;margin-left:1.55rem;margin-top:-.2rem}
.send-mode-btn i{color:var(--n-primary);font-size:1.1rem}
.btn-check:checked+.send-mode-btn{border-color:var(--n-primary);background:var(--n-bg-alt);box-shadow:0 0 0 3px rgba(10,108,240,.12)}
.btn-check:focus-visible+.send-mode-btn{outline:3px solid var(--n-primary);outline-offset:2px}
.recipient-chips{display:flex;flex-wrap:wrap;gap:.4rem}
.recipient-chips .chip{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .75rem;border-radius:100px;background:var(--n-bg-alt);color:var(--n-primary-dark);font-size:.85rem;font-weight:500}
@media(max-width:420px){.send-mode{grid-template-columns:1fr}}

/* Form status */
.mail-status:empty{display:none}
.mail-status{padding:.7rem .9rem;border-radius:var(--n-radius-sm)}
.mail-status.ok{background:#E7F8EF;color:#067647}
.mail-status.err{background:#FEF0EE;color:#B42318}
.footer-nexora .mail-status,.bg-gradient-dark .mail-status{position:relative}
.footer-nexora form.d-flex{flex-wrap:wrap}
.footer-nexora form.d-flex .form-control{flex:1 1 0;min-width:0}
.footer-nexora form.d-flex .mail-status{flex-basis:100%;margin-top:.5rem}
.footer-nexora .mail-status a{display:inline;margin:0;color:inherit;text-decoration:underline}

/* Quick contact modal */
.qc-modal{border:0;border-radius:var(--n-radius-lg);box-shadow:var(--n-shadow-lg)}
.qc-modal .modal-title{font-family:var(--n-font-display);color:var(--n-navy);font-weight:700}
.qc-modal .modal-header,.qc-modal .modal-body{padding-left:1.75rem;padding-right:1.75rem}
.qc-modal .modal-body{padding-bottom:1.75rem}
.qc-pill{display:inline-flex;align-items:center;gap:.45rem;padding:.5rem 1rem;border-radius:100px;background:var(--n-bg-alt);color:var(--n-primary-dark);font-weight:600;font-size:.9rem;text-decoration:none}
.qc-pill:hover{background:var(--n-primary);color:#fff}
.qc-pill.qc-wa{background:#E7F8EF;color:#067647}.qc-pill.qc-wa:hover{background:#25D366;color:#fff}

/* Floating call + mail buttons (stacked above WhatsApp) */
.contact-fab{position:fixed;left:22px;bottom:88px;z-index:1030;display:flex;flex-direction:column;gap:10px}
.fab-btn{width:46px;height:46px;border-radius:50%;border:0;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.15rem;box-shadow:var(--n-shadow-md);transition:transform .2s;margin-left:4px}
.fab-btn:hover{color:#fff;transform:scale(1.08)}
.fab-call{background:var(--n-success)}
.fab-mail{background:var(--n-gradient-primary)}

/* Site search modal */
.search-modal{border:0;border-radius:var(--n-radius-lg);overflow:hidden;box-shadow:var(--n-shadow-lg)}
#siteSearch .modal-dialog{margin-top:12vh}
.search-head{display:flex;align-items:center;gap:.75rem;padding:1rem 1.25rem;border-bottom:1px solid var(--n-border)}
.search-head>i{color:var(--n-primary);font-size:1.15rem}
.search-head input{flex:1;border:0;outline:0;font-size:1.05rem;color:var(--n-navy);background:transparent;min-width:0}
.search-hit{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border-radius:var(--n-radius-sm);color:var(--n-navy);text-decoration:none;font-weight:500}
.search-hit:hover,.search-hit:focus{background:var(--n-bg-alt);color:var(--n-primary-dark)}
.search-hit>span:nth-child(2){flex:1}
.search-hit .bi-arrow-right{color:var(--n-slate-light)}
.search-tag{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--n-primary);background:var(--n-bg-alt);padding:.2rem .5rem;border-radius:6px;min-width:64px;text-align:center}
.search-all{border-top:1px solid var(--n-border);border-radius:0;margin-top:.25rem;color:var(--n-slate)}
.search-hint{padding:.75rem 1rem .25rem;margin:0;font-size:.9rem}
.search-hint .badge-soft{cursor:pointer;margin:.15rem}
.search-contact{display:flex;flex-wrap:wrap;gap:1rem;padding:.75rem 1rem 1rem}
.search-contact a{display:inline-flex;gap:.4rem;align-items:center;color:var(--n-slate);text-decoration:none;font-size:.9rem}
.search-contact a:hover{color:var(--n-primary)}
.search-empty{text-align:center;padding:2rem 1rem;color:var(--n-slate)}
.search-empty>i{font-size:1.8rem;color:var(--n-slate-light);display:block;margin-bottom:.5rem}

/* Blog filters */
.blog-search-info{margin-bottom:1rem;padding:.7rem 1rem;border-radius:var(--n-radius-sm);background:var(--n-bg-alt);color:var(--n-navy);font-size:.95rem}
[data-post][hidden]{display:none!important}
[data-category]{cursor:pointer;transition:color .2s}
[data-category]:hover{color:var(--n-primary)}
button.badge-soft{cursor:pointer}
button.badge-soft:hover{background:var(--n-primary);color:#fff}
.search-head input::-webkit-search-cancel-button{display:none}

/* ---------- Thank-you page ---------- */
.ty-hero{position:relative;overflow:hidden;background:var(--n-gradient-dark);background-size:220% 220%;animation:gradShift 14s ease-in-out infinite;padding:8.5rem 0 5.5rem;color:rgba(255,255,255,.75)}
.ty-hero .ph-fx{z-index:0}
.ty-hero .container{z-index:2}
.ty-confetti{position:absolute;inset:0;width:100%;height:100%;z-index:3;pointer-events:none}
.ty-hero .breadcrumb-custom{animation:heroIn .8s .05s both}

.ty-badge{display:inline-flex;align-items:center;gap:.6rem;padding:.4rem 1rem .4rem .45rem;border-radius:var(--n-radius-pill);background:rgba(18,183,106,.14);border:1px solid rgba(18,183,106,.35);color:#6CE9A6;font-weight:600;font-size:.9rem;animation:heroIn .7s .15s both}
.ty-tick{width:30px;height:30px}
.ty-tick-ring{fill:#12B76A;stroke:none;transform-origin:center;animation:tyPop .55s .25s cubic-bezier(.2,1.4,.4,1) both}
.ty-tick-mark{fill:none;stroke:#fff;stroke-width:4.5;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:40;stroke-dashoffset:40;animation:tyDraw .45s .7s ease-out forwards}
@keyframes tyPop{from{transform:scale(.2);opacity:0}to{transform:scale(1);opacity:1}}
@keyframes tyDraw{to{stroke-dashoffset:0}}

.ty-hello{font-family:var(--n-font-display);font-size:1.15rem;font-weight:600;color:#7CC8FF;animation:heroIn .8s .25s both}
.ty-title{color:#fff;font-size:clamp(2rem,4.2vw,3.1rem);line-height:1.12;animation:heroIn .8s .35s both}
.ty-lead{font-size:1.1rem;max-width:520px;color:rgba(255,255,255,.72);animation:heroIn .8s .45s both}
.ty-hero .d-flex.flex-wrap{animation:heroIn .8s .6s both}

.ty-eta{display:inline-flex;align-items:center;gap:.85rem;padding:.8rem 1.1rem;border-radius:var(--n-radius-md);background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);animation:heroIn .8s .52s both}
.ty-eta>i{font-size:1.5rem;color:#7CC8FF}
.ty-eta small{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:rgba(255,255,255,.55)}
.ty-eta b{color:#fff;font-weight:600}
.ty-eta[hidden]{display:none}

.ty-btn-ghost{border:1px solid rgba(255,255,255,.28);color:#fff;background:transparent;border-radius:var(--n-radius-pill);padding:.75rem 1.5rem;font-weight:600}
.ty-btn-ghost:hover{background:rgba(255,255,255,.1);color:#fff;border-color:rgba(255,255,255,.5)}

/* receipt */
.ty-receipt{position:relative;background:#fff;border-radius:var(--n-radius-lg);box-shadow:0 30px 70px rgba(0,0,0,.35);color:var(--n-slate);animation:tyRise .9s .4s cubic-bezier(.2,.7,.2,1) both;max-width:520px;margin-left:auto}
@keyframes tyRise{from{opacity:0;transform:translateY(40px) rotate(1.5deg)}to{opacity:1;transform:none}}
.ty-receipt::before{content:'';position:absolute;left:24px;right:24px;top:0;height:4px;border-radius:0 0 4px 4px;background:var(--n-gradient-primary)}
.ty-receipt-head{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.6rem 1.75rem 1.1rem}
.ty-receipt-head small{display:block;font-size:.75rem;text-transform:uppercase;letter-spacing:.08em;color:var(--n-slate-light)}
.ty-receipt-head strong{font-family:var(--n-font-display);font-size:1.25rem;color:var(--n-navy)}
.ty-status{display:inline-flex;align-items:center;gap:.45rem;padding:.35rem .8rem;border-radius:var(--n-radius-pill);background:#E7F9F0;color:#027A48;font-size:.82rem;font-weight:600;white-space:nowrap}
.ty-status .dot{width:8px;height:8px;border-radius:50%;background:var(--n-success);box-shadow:0 0 0 0 rgba(18,183,106,.6);animation:tyPulse 1.8s ease-out infinite}
@keyframes tyPulse{to{box-shadow:0 0 0 9px rgba(18,183,106,0)}}
.ty-rows{padding:0 1.75rem}
.ty-rows li{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;padding:.8rem 0;border-top:1px dashed var(--n-border);font-size:.95rem}
.ty-rows li span{display:inline-flex;align-items:center;gap:.55rem;color:var(--n-slate-light);white-space:nowrap}
.ty-rows li span i{color:var(--n-primary);font-size:1rem}
.ty-rows li b{color:var(--n-navy);font-weight:600;text-align:right;word-break:break-word}
.ty-rows:empty{display:none}
.ty-receipt-cut{position:relative;height:28px;margin-top:.6rem}
.ty-receipt-cut::before{content:'';position:absolute;left:1.5rem;right:1.5rem;top:50%;border-top:2px dashed var(--n-border)}
.ty-receipt-cut::after{content:'';position:absolute;inset:0 -14px;background:radial-gradient(circle at 0 50%,#12305F 13px,transparent 14px),radial-gradient(circle at 100% 50%,#12305F 13px,transparent 14px)}
.ty-note{display:flex;gap:1rem;align-items:flex-start;padding:1rem 1.75rem 1.75rem}
.ty-note p{font-style:italic;color:var(--n-navy);line-height:1.6}
.ty-note small{color:var(--n-slate-light);font-weight:600}
.ty-avatar{flex:0 0 44px;height:44px;border-radius:50%;display:grid;place-items:center;background:var(--n-gradient-primary);color:#fff;font-family:var(--n-font-display);font-weight:700;font-size:.95rem;box-shadow:var(--n-shadow-primary)}

/* timeline */
.ty-track{display:grid;grid-template-columns:repeat(4,1fr);gap:1.5rem;position:relative;margin:0}
.ty-track::before{content:'';position:absolute;top:27px;left:12.5%;right:12.5%;height:3px;background:var(--n-border);border-radius:3px}
.ty-track::after{content:'';position:absolute;top:27px;left:12.5%;width:0;height:3px;background:var(--n-gradient-primary);border-radius:3px;transition:width 1.4s .3s cubic-bezier(.2,.7,.2,1)}
.ty-track.is-visible::after{width:25%}
.ty-track li{position:relative;text-align:center}
.ty-node{position:relative;z-index:1;width:56px;height:56px;margin:0 auto 1.1rem;border-radius:50%;display:grid;place-items:center;font-size:1.35rem;background:#fff;border:2px solid var(--n-border);color:var(--n-slate-light);box-shadow:0 0 0 6px #fff}
.ty-track li.is-done .ty-node{background:var(--n-success);border-color:var(--n-success);color:#fff}
.ty-track li.is-active .ty-node{border-color:var(--n-primary);color:var(--n-primary);animation:tyRing 2s ease-out infinite}
@keyframes tyRing{0%{box-shadow:0 0 0 6px #fff,0 0 0 6px rgba(10,108,240,.35)}100%{box-shadow:0 0 0 6px #fff,0 0 0 18px rgba(10,108,240,0)}}
.ty-when{display:inline-block;font-size:.78rem;font-weight:600;padding:.2rem .65rem;border-radius:var(--n-radius-pill);background:var(--n-bg);color:var(--n-slate);margin-bottom:.6rem}
.ty-track li.is-done .ty-when{background:#E7F9F0;color:#027A48}
.ty-track li.is-active .ty-when{background:var(--n-bg-alt);color:var(--n-primary-dark)}
.ty-step h3{font-size:1.1rem;margin-bottom:.4rem}
.ty-step p{font-size:.95rem;margin:0;max-width:240px;margin-inline:auto}

/* while you wait */
.ty-link-card{display:block;height:100%;padding:2rem;background:#fff;border:1px solid var(--n-border);border-radius:var(--n-radius-md);text-decoration:none;color:var(--n-slate);transition:transform .35s cubic-bezier(.2,.7,.2,1),box-shadow .35s,border-color .35s}
.ty-link-card:hover{transform:translateY(-6px);box-shadow:var(--n-shadow-lg);border-color:transparent;color:var(--n-slate)}
.ty-link-card .icon-box{margin-bottom:1.1rem}
.ty-link-card h3{font-size:1.2rem;margin-bottom:.5rem}
.ty-go{display:inline-flex;align-items:center;gap:.4rem;font-weight:600;color:var(--n-primary);margin-top:.4rem;transition:gap .25s}
.ty-link-card:hover .ty-go{gap:.75rem}
.ty-urgent{margin-top:3rem;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1.5rem;padding:1.75rem 2rem;border-radius:var(--n-radius-lg);background:var(--n-gradient-dark);color:rgba(255,255,255,.7)}
.ty-urgent h3{color:#fff;font-size:1.25rem}
.ty-urgent-icon{flex:0 0 52px;height:52px;border-radius:14px;display:grid;place-items:center;font-size:1.5rem;background:rgba(255,255,255,.1);color:#FDB022}
.ty-urgent .btn-light{border-radius:var(--n-radius-pill);padding:.75rem 1.5rem;font-weight:600;color:var(--n-navy)}

@media (max-width:991px){
  .ty-hero{padding:7rem 0 4rem}
  .ty-receipt{margin:0 auto}
  .ty-track{grid-template-columns:1fr;gap:0;max-width:520px;margin:0 auto}
  .ty-track::before,.ty-track::after{left:27px;right:auto;top:28px;bottom:28px;width:3px;height:auto}
  .ty-track::after{height:0;bottom:auto;transition:height 1.4s .3s cubic-bezier(.2,.7,.2,1)}
  .ty-track.is-visible::after{width:3px;height:30%}
  .ty-track li{display:flex;gap:1.25rem;text-align:left;padding-bottom:1.75rem}
  .ty-track li:last-child{padding-bottom:0}
  .ty-node{margin:0;flex:0 0 56px}
  .ty-step p{margin-inline:0;max-width:none}
}
@media (max-width:575px){
  .ty-receipt-head,.ty-rows,.ty-note{padding-left:1.25rem;padding-right:1.25rem}
  .ty-rows li{flex-direction:column;gap:.15rem}
  .ty-rows li b{text-align:left}
  .ty-urgent{padding:1.5rem}
  .ty-hero .btn{width:100%}
}
@media (prefers-reduced-motion:reduce){
  .ty-hero,.ty-tick-ring,.ty-status .dot,.ty-track li.is-active .ty-node,.ty-receipt{animation:none}
  .ty-tick-mark{animation:none;stroke-dashoffset:0}
}

/* =====================================================
   FOOTER v2 — AdyCore signature footer
   ===================================================== */
.footer-ady{position:relative;overflow:hidden;padding-top:1.75rem;background:#071430;isolation:isolate}
.footer-ady::before{content:'';position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,transparent,#0A6CF0,#00B4F0,#3DB8FF,#0A6CF0,transparent);background-size:200% 100%;animation:faLine 6s linear infinite;z-index:2}
.footer-ady::after{content:'';position:absolute;inset:0;z-index:-1;background-image:radial-gradient(rgba(255,255,255,.07) 1px,transparent 1.2px);background-size:26px 26px;-webkit-mask-image:linear-gradient(180deg,#000,transparent 70%);mask-image:linear-gradient(180deg,#000,transparent 70%)}
@keyframes faLine{to{background-position:-200% 0}}
.fa-glow{position:absolute;inset:0;z-index:-1;pointer-events:none}
.fa-glow span{position:absolute;border-radius:50%;filter:blur(60px);opacity:.5}
.fa-glow .g1{width:460px;height:460px;left:-160px;top:-120px;background:radial-gradient(circle,rgba(10,108,240,.55),transparent 70%);animation:drift 16s ease-in-out infinite alternate}
.fa-glow .g2{width:380px;height:380px;right:-120px;bottom:-60px;background:radial-gradient(circle,rgba(0,180,240,.4),transparent 70%);animation:drift 20s ease-in-out infinite alternate-reverse}

/* ribbon */
.fa-ribbon{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem;padding:1rem 1.5rem;border-radius:20px;position:relative;background:linear-gradient(135deg,rgba(255,255,255,.07),rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.1);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 24px 60px rgba(0,0,0,.25)}
.fa-ribbon::before{content:'';position:absolute;inset:-1px;border-radius:inherit;padding:1px;background:linear-gradient(120deg,rgba(0,180,240,.8),transparent 35%,transparent 65%,rgba(10,108,240,.8));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
.fa-ribbon-text{flex:1 1 320px}
.fa-ribbon h3{color:#fff;font-size:clamp(1.2rem,2vw,1.5rem);margin:.45rem 0 .2rem;font-weight:700}
.fa-ribbon h3 em{font-style:normal;background:var(--n-gradient-primary);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.fa-ribbon p{margin:0;color:rgba(255,255,255,.6);font-size:.88rem}
.fa-live{display:inline-flex;align-items:center;gap:.5rem;font-size:.78rem;font-weight:600;letter-spacing:.04em;color:#6CE9A6;background:rgba(18,183,106,.12);border:1px solid rgba(18,183,106,.3);padding:.3rem .75rem;border-radius:100px}
.fa-live .dot{width:8px;height:8px;border-radius:50%;background:#12B76A;box-shadow:0 0 0 0 rgba(18,183,106,.6);animation:faPing 1.8s infinite}
@keyframes faPing{70%{box-shadow:0 0 0 8px rgba(18,183,106,0)}100%{box-shadow:0 0 0 0 rgba(18,183,106,0)}}
.fa-news{flex:1 1 380px;max-width:480px;display:flex;flex-wrap:wrap;align-items:center;gap:.4rem;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:100px;padding:.35rem .35rem .35rem 1.1rem;position:relative;transition:border-color .25s,box-shadow .25s}
.fa-news:focus-within{border-color:rgba(0,180,240,.7);box-shadow:0 0 0 4px rgba(0,180,240,.15)}
.fa-news>i{color:var(--n-secondary);font-size:1.1rem}
.fa-news .form-control{flex:1 1 0;min-width:0;background:transparent!important;border:0!important;box-shadow:none!important;color:#fff!important;padding:.55rem .4rem}
.fa-news .form-control::placeholder{color:rgba(255,255,255,.45)}
.fa-news-btn{border-radius:100px;padding:.65rem 1.25rem;font-weight:600;color:#fff;background:var(--n-gradient-primary);border:0;display:inline-flex;align-items:center;gap:.4rem;position:relative;overflow:hidden}
.fa-news-btn:hover{color:#fff;box-shadow:0 10px 24px rgba(0,180,240,.35)}
.fa-news-btn i{transition:transform .25s}
.fa-news-btn:hover i{transform:translate(2px,-2px)}
.fa-news .mail-status{flex-basis:100%;margin:.4rem .4rem .2rem 0}
.fa-news.was-validated .form-control:invalid{background-image:none}

/* columns */
.fa-main{margin-top:1.5rem}
.fa-svc{display:grid;grid-template-columns:1fr 1fr;column-gap:1.25rem}
.footer-ady .fa-col a{margin-bottom:.35rem;font-size:.92rem}
.fa-about{color:rgba(255,255,255,.55);max-width:300px;margin-bottom:1rem;line-height:1.6;font-size:.92rem}
.footer-ady .footer-logo{padding:7px 12px;border-radius:12px}.footer-ady .footer-logo img{height:44px}
.footer-ady .social-icon{width:36px;height:36px}
.fa-social{display:flex;gap:.6rem}
.footer-ady .social-icon{border-radius:12px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);position:relative;overflow:hidden}
.footer-ady .social-icon::before{content:'';position:absolute;inset:0;background:var(--n-gradient-primary);transform:translateY(101%);transition:transform .3s ease}
.footer-ady .social-icon i{position:relative}
.footer-ady .social-icon:hover{background:rgba(255,255,255,.05);transform:translateY(-3px) rotate(-6deg)}
.footer-ady .social-icon:hover::before{transform:none}
.footer-ady h6{display:flex;align-items:center;gap:.6rem;font-family:var(--n-font-display);font-size:.8rem;letter-spacing:.14em;margin-bottom:1rem}
.footer-ady h6 span{font-size:.68rem;letter-spacing:0;padding:.15rem .45rem;border-radius:6px;background:rgba(0,180,240,.14);color:var(--n-secondary)}
.fa-col>a{display:flex;align-items:center;width:fit-content;position:relative;padding-left:0;transition:color .2s,padding .25s}
.fa-col>a::before{content:'\F138';font-family:'bootstrap-icons';position:absolute;left:0;font-size:.8rem;color:var(--n-secondary);opacity:0;transform:translateX(-6px);transition:opacity .25s,transform .25s}
.fa-col>a:hover{padding-left:1.15rem;color:#fff}
.fa-col>a:hover::before{opacity:1;transform:none}
.fa-contact{list-style:none;padding:0;margin:0;display:grid;gap:.4rem}
.fa-contact li{display:flex;align-items:center;gap:.7rem;padding:.4rem .7rem;border-radius:14px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.07);transition:background .25s,border-color .25s,transform .25s}
.fa-contact li:hover{background:rgba(255,255,255,.06);border-color:rgba(0,180,240,.35);transform:translateX(4px)}
.fa-contact .ic{flex:0 0 34px;height:34px;border-radius:11px;display:grid;place-items:center;background:var(--n-gradient-primary);color:#fff;font-size:1rem}
.fa-contact small{display:block;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.4);margin-bottom:.1rem}
.footer-ady .fa-contact a,.fa-contact .addr{display:block;margin:0;color:#fff;font-size:.88rem;font-weight:500;word-break:break-word}
.fa-contact .addr{font-weight:400;color:rgba(255,255,255,.75);line-height:1.45}

/* giant wordmark */
.fa-word{font-family:var(--n-font-display);font-weight:800;text-align:center;line-height:1.15;padding:.05em 0 .2em;overflow:visible;letter-spacing:-.04em;font-size:clamp(2.6rem,8vw,6.5rem);margin:.25rem 0 0;color:transparent;-webkit-text-stroke:1.2px rgba(120,190,255,.22);background:linear-gradient(90deg,rgba(10,108,240,0) 0%,rgba(0,180,240,.6) 50%,rgba(10,108,240,0) 100%) no-repeat,linear-gradient(180deg,rgba(10,108,240,.10),rgba(10,108,240,0) 85%);background-size:40% 100%,100% 100%;background-position:-60% 0;-webkit-background-clip:text;background-clip:text;animation:faSweep 7s ease-in-out infinite;user-select:none;pointer-events:none}
@keyframes faSweep{0%{background-position:-60% 0,0 0}60%,100%{background-position:160% 0,0 0}}
/* wordmark as full-footer background */
.footer-ady>.container{position:static!important}
.footer-ady .fa-word{position:absolute;left:0;right:0;top:50%;transform:translateY(-50%);z-index:-1;margin:0;padding:.05em 0 .22em;line-height:1.1;font-size:clamp(3.5rem,21vw,22rem);-webkit-text-stroke:1.5px rgba(120,190,255,.14);white-space:nowrap}
.footer-ady .fa-bottom{background:transparent}

/* bottom */
.fa-bottom{position:relative;z-index:1;padding:.75rem 0!important;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem 1.5rem;margin-top:0;border-top:1px solid rgba(255,255,255,.1);background:#071430}
.fa-bottom p{color:rgba(255,255,255,.5)}
.fa-made{margin-left:.5rem;padding-left:.75rem;border-left:1px solid rgba(255,255,255,.15)}
.fa-made i{color:#F04438;font-size:.75rem;animation:faBeat 1.4s ease-in-out infinite;display:inline-block}
@keyframes faBeat{0%,100%{transform:scale(1)}15%{transform:scale(1.25)}30%{transform:scale(1)}}
.fa-legal{display:flex;flex-wrap:wrap;gap:.35rem}
.footer-ady .fa-legal a{margin:0;font-size:.85rem;padding:.35rem .8rem;border-radius:100px;border:1px solid rgba(255,255,255,.1);color:rgba(255,255,255,.65);transition:all .2s}
.footer-ady .fa-legal a:hover,.footer-ady .fa-legal a.active{color:#fff;border-color:rgba(0,180,240,.6);background:rgba(0,180,240,.12)}
@media(max-width:767px){
  .footer-ady{padding-top:1.5rem}
  .fa-ribbon{padding:1.25rem 1.1rem;border-radius:18px}
  .fa-news{flex-basis:100%;max-width:none;border-radius:18px;padding:.5rem}
  .fa-news>i{display:none}
  .fa-news .form-control{flex-basis:100%;padding:.6rem .75rem}
  .fa-news-btn{width:100%;justify-content:center}
  .fa-bottom{flex-direction:column;text-align:center}
  .fa-made{display:block;margin:.35rem 0 0;padding:0;border:0}
  .fa-legal{justify-content:center}
  .fa-word{margin-bottom:0}
}
@media(prefers-reduced-motion:reduce){.footer-ady::before,.fa-glow span,.fa-live .dot,.fa-word,.fa-made i{animation:none!important}}

/* =====================================================
   LEGAL PAGES — Privacy Policy & Terms of Service
   ===================================================== */
.legal-meta{display:flex;flex-wrap:wrap;justify-content:center;gap:.5rem;margin-top:1.1rem;animation:heroIn .8s .45s both}
.legal-meta span{display:inline-flex;align-items:center;gap:.4rem;font-size:.82rem;color:rgba(255,255,255,.75);background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);padding:.35rem .8rem;border-radius:100px}
.legal-meta i{color:var(--n-secondary)}
.legal-toc{position:sticky;top:100px;background:#fff;border:1px solid var(--n-border);border-radius:var(--n-radius-lg);padding:1.5rem;box-shadow:var(--n-shadow-sm)}
.legal-toc h6{font-family:var(--n-font-display);font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--n-slate-light);margin-bottom:1rem}
.legal-toc ol{list-style:none;padding:0;margin:0;counter-reset:toc;display:grid;gap:.15rem}
.legal-toc li{counter-increment:toc}
.legal-toc ol a{display:flex;gap:.65rem;align-items:baseline;padding:.45rem .65rem;border-radius:10px;font-size:.9rem;color:var(--n-slate);font-weight:500;border-left:2px solid transparent;transition:all .2s}
.legal-toc ol a::before{content:counter(toc,decimal-leading-zero);font-family:var(--n-font-display);font-size:.72rem;color:var(--n-slate-light);font-weight:700}
.legal-toc ol a:hover{background:var(--n-bg);color:var(--n-navy)}
.legal-toc ol a.active{background:var(--n-bg-alt);color:var(--n-primary);border-left-color:var(--n-primary)}
.legal-toc ol a.active::before{color:var(--n-primary)}
.legal-toc .toc-switch{display:flex;align-items:center;gap:.5rem;margin-top:1.1rem;padding-top:1.1rem;border-top:1px dashed var(--n-border);font-size:.88rem;font-weight:600;color:var(--n-primary)}
.legal-intro{background:var(--n-gradient-soft);border:1px solid #D5E7FF;border-radius:var(--n-radius-lg);padding:1.75rem 2rem;margin-bottom:2rem;display:flex;gap:1.25rem;align-items:flex-start}
.legal-intro .icon-box{flex:0 0 auto}
.legal-intro p{margin:0;color:var(--n-navy);line-height:1.75}
.legal-block{scroll-margin-top:100px;padding:2rem 0;border-bottom:1px solid var(--n-border)}
.legal-block:last-of-type{border-bottom:0}
.legal-block h2{display:flex;align-items:center;gap:.85rem;font-size:clamp(1.2rem,2vw,1.45rem);color:var(--n-navy);margin-bottom:1rem}
.legal-block h2 .num{flex:0 0 40px;height:40px;border-radius:12px;display:grid;place-items:center;font-size:.85rem;color:#fff;background:var(--n-gradient-primary);box-shadow:var(--n-shadow-primary)}
.legal-block h3{font-size:1.02rem;color:var(--n-navy);margin:1.25rem 0 .5rem}
.legal-block p,.legal-block li{line-height:1.8}
.legal-block ul{padding-left:0;list-style:none;display:grid;gap:.45rem;margin-bottom:1rem}
.legal-block ul li{position:relative;padding-left:1.6rem}
.legal-block ul li::before{content:'\F26E';font-family:'bootstrap-icons';position:absolute;left:0;top:0;color:var(--n-primary);font-size:1.05rem}
.legal-block a{color:var(--n-primary);font-weight:500}
.legal-note{display:flex;gap:.75rem;padding:1rem 1.2rem;border-radius:var(--n-radius-md);background:#FFFAEB;border:1px solid #FEDF89;color:#93370D;font-size:.93rem;margin:1rem 0}
.legal-note i{font-size:1.15rem;color:#DC6803}
.legal-note.info{background:#EFF8FF;border-color:#B2DDFF;color:#175CD3}.legal-note.info i{color:#1570EF}
.legal-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:.9rem;margin:1rem 0}
.legal-grid>div{border:1px solid var(--n-border);border-radius:var(--n-radius-md);padding:1.1rem 1.2rem;background:#fff;transition:border-color .2s,box-shadow .2s}
.legal-grid>div:hover{border-color:#B2DDFF;box-shadow:var(--n-shadow-sm)}
.legal-grid i{font-size:1.35rem;color:var(--n-primary)}
.legal-grid strong{display:block;color:var(--n-navy);margin:.45rem 0 .2rem;font-family:var(--n-font-display);font-size:.95rem}
.legal-grid p{margin:0;font-size:.88rem;line-height:1.6}
.legal-contact{margin-top:2.5rem;border-radius:var(--n-radius-lg);padding:2rem;background:var(--n-gradient-dark);color:rgba(255,255,255,.7);display:flex;flex-wrap:wrap;gap:1.5rem;align-items:center;justify-content:space-between;position:relative;overflow:hidden}
.legal-contact::after{content:'';position:absolute;right:-80px;top:-80px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(0,180,240,.35),transparent 70%)}
.legal-contact h3{color:#fff;font-size:1.3rem;margin-bottom:.3rem}
.legal-contact p{margin:0}
.legal-contact .lc-links{display:flex;flex-wrap:wrap;gap:.6rem;position:relative;z-index:1}
.legal-contact .lc-links a{display:inline-flex;align-items:center;gap:.45rem;padding:.65rem 1.1rem;border-radius:100px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.16);color:#fff;font-weight:500;font-size:.9rem}
.legal-contact .lc-links a:hover{background:rgba(255,255,255,.16)}
.legal-print{display:inline-flex;align-items:center;gap:.4rem;background:none;border:1px solid var(--n-border);border-radius:100px;padding:.45rem 1rem;font-size:.85rem;font-weight:600;color:var(--n-navy);margin-top:.9rem;width:100%;justify-content:center}
.legal-print:hover{border-color:var(--n-primary);color:var(--n-primary)}
@media(max-width:991px){.legal-toc{position:static;margin-bottom:.5rem}.legal-toc ol{grid-template-columns:1fr 1fr}}
@media(max-width:575px){.legal-toc ol{grid-template-columns:1fr}.legal-intro{flex-direction:column;padding:1.4rem}.legal-contact{padding:1.5rem}}
@media print{.navbar-nexora,.footer-ady,.wa-float,.back-to-top,.legal-toc,.scroll-progress,.page-header .ph-fx{display:none!important}.page-header{padding:1rem 0;background:none}.page-header h1{color:#000}.legal-block{break-inside:avoid}}
@media(max-width:767px){.fa-co{display:grid;grid-template-columns:1fr 1fr;column-gap:1.25rem}.fa-co h6{grid-column:1/-1}}
