/* Google Fonts */
@import url('https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@300;400;500;600;700;800&display=swap');

/* Reset + base */
*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; }
body {
  background: #050B17;
  color: #F8FAFC;
  font-family: 'Plus Jakarta Sans', sans-serif;
  min-height: 100vh;
  -webkit-font-smoothing: antialiased;
}

/* Safety fallback for components that rely on Tailwind's hidden utility */
.hidden {
  display: none !important;
}

/* Aurora blobs */
#aurora { position: fixed; inset: 0; pointer-events: none; z-index: 0; overflow: hidden; }
.aurora-blob {
  position: absolute; border-radius: 50%;
  filter: blur(80px); animation-timing-function: ease-in-out;
  animation-iteration-count: infinite; animation-direction: alternate;
}

@keyframes aurora1 {
  0%   { transform: translate(0,0) scale(1); }
  33%  { transform: translate(5%,-8%) scale(1.1); }
  66%  { transform: translate(-3%,5%) scale(0.95); }
  100% { transform: translate(8%,-5%) scale(1.05); }
}
@keyframes aurora2 {
  0%   { transform: translate(0,0) scale(1); }
  33%  { transform: translate(-7%,6%) scale(1.15); }
  66%  { transform: translate(4%,-4%) scale(0.9); }
  100% { transform: translate(-5%,8%) scale(1.08); }
}
@keyframes aurora3 {
  0%   { transform: translate(0,0) scale(1); }
  50%  { transform: translate(6%,4%) scale(1.12); }
  100% { transform: translate(-4%,-6%) scale(0.92); }
}
@keyframes float-slow   { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-10px)} }
@keyframes float-medium { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-6px)} }

/* Grid + dot overlays */
.grid-overlay {
  position: fixed; inset: 0; pointer-events: none; z-index: 0;
  background-image:
    linear-gradient(rgba(124,58,237,0.5) 1px,transparent 1px),
    linear-gradient(90deg,rgba(124,58,237,0.5) 1px,transparent 1px);
  background-size: 64px 64px; opacity: 0.028;
}
.dot-overlay {
  position: fixed; inset: 0; pointer-events: none; z-index: 0;
  background-image: radial-gradient(circle, rgba(148,163,184,0.8) 1px, transparent 1px);
  background-size: 32px 32px; opacity: 0.04;
}

/* Glassmorphism */
.glass {
  backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px);
  background: rgba(255,255,255,0.05);
  border: 1px solid rgba(255,255,255,0.10);
}
.glass:hover {
  background: rgba(255,255,255,0.08);
  border-color: rgba(255,255,255,0.20);
}

/* Card shine sweep */
@keyframes shine { 0%{left:-80%;opacity:0} 10%{opacity:1} 90%{opacity:1} 100%{left:120%;opacity:0} }
.card-shine { position: relative; overflow: hidden; }
.card-shine::after {
  content:''; position:absolute; top:0; left:-80%; width:40%; height:100%;
  background: linear-gradient(105deg,transparent 30%,rgba(255,255,255,0.06) 50%,transparent 70%);
  transform: skewX(-15deg); pointer-events:none; opacity:0;
}
.card-shine:hover::after { animation: shine 0.65s ease forwards; }

/* Gradient text */
.text-gradient { background: linear-gradient(135deg,#7C3AED,#9333EA,#22D3EE); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; }
.text-gradient-gold { background: linear-gradient(135deg,#EAB308,#F59E0B); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; }

/* Scrollbar */
::-webkit-scrollbar { width:6px; }
::-webkit-scrollbar-track { background:rgba(255,255,255,0.03); }
::-webkit-scrollbar-thumb { background:rgba(124,58,237,0.4); border-radius:3px; }
::-webkit-scrollbar-thumb:hover { background:rgba(124,58,237,0.6); }

/* Selection */
::selection { background:rgba(124,58,237,0.4); color:#F8FAFC; }

/* Header */
header { position:fixed; top:0; left:0; right:0; z-index:50; transition:all .3s; }
header.scrolled { backdrop-filter:blur(20px); -webkit-backdrop-filter:blur(20px); background:rgba(5,11,23,0.85); border-bottom:1px solid rgba(255,255,255,0.10); }

/* Input */
input, textarea, select {
  background:rgba(255,255,255,0.06); border:1px solid rgba(255,255,255,0.15);
  color:#F8FAFC; border-radius:12px; padding:12px 16px;
  font-family:'Plus Jakarta Sans',sans-serif; font-size:15px; width:100%;
  transition:all .2s; outline:none;
}
input:focus, textarea:focus, select:focus {
  border-color:rgba(124,58,237,0.6);
  box-shadow: 0 0 0 3px rgba(124,58,237,0.15);
}
input::placeholder, textarea::placeholder { color:#64748B; }
select option { background:#0F1F3D; color:#F8FAFC; }

/* Buttons */
.btn-primary {
  background:linear-gradient(135deg,#7C3AED,#6D28D9); color:#fff;
  border:none; border-radius:12px; padding:12px 24px;
  font-family:'Plus Jakarta Sans',sans-serif; font-weight:600; font-size:15px;
  cursor:pointer; transition:all .2s; display:inline-flex; align-items:center; gap:8px;
  box-shadow: 0 0 20px rgba(124,58,237,0.35); text-decoration:none;
}
.btn-primary:hover { background:linear-gradient(135deg,#6D28D9,#5B21B6); transform:translateY(-1px); box-shadow: 0 0 30px rgba(124,58,237,0.5); }
.btn-primary:active { transform:scale(0.98); }

.btn-gold {
  background:linear-gradient(135deg,#EAB308,#F59E0B); color:#1a1a1a;
  border:none; border-radius:12px; padding:14px 32px;
  font-family:'Plus Jakarta Sans',sans-serif; font-weight:700; font-size:16px;
  cursor:pointer; transition:all .2s; display:inline-flex; align-items:center; gap:8px;
  box-shadow: 0 0 24px rgba(234,179,8,0.45); text-decoration:none;
}
.btn-gold:hover { transform:translateY(-2px) scale(1.02); box-shadow: 0 0 36px rgba(234,179,8,0.6); }

.btn-outline {
  background:transparent; color:#94A3B8; border:1px solid rgba(255,255,255,0.15);
  border-radius:12px; padding:12px 24px;
  font-family:'Plus Jakarta Sans',sans-serif; font-weight:500; font-size:15px;
  cursor:pointer; transition:all .2s; display:inline-flex; align-items:center; gap:8px;
  text-decoration:none;
}
.btn-outline:hover { background:rgba(255,255,255,0.06); color:#F8FAFC; border-color:rgba(255,255,255,0.25); }

/* Badge */
.badge { display:inline-flex; align-items:center; padding:3px 10px; border-radius:99px; font-size:11px; font-weight:600; }

/* Hide scrollbar */
.hide-scrollbar::-webkit-scrollbar { display:none; }
.hide-scrollbar { -ms-overflow-style:none; scrollbar-width:none; }

/* Page wrapper */
.page-content { position:relative; z-index:10; min-height:100vh; padding-top:80px; }

/* Section */
.section { padding:80px 16px; }
.section-sm { padding:48px 16px; }
.container { max-width:1280px; margin:0 auto; }
.container-md { max-width:960px; margin:0 auto; }

/* RTL helpers */
[dir="rtl"] .rtl-flip { transform:scaleX(-1); }

/* App card */
.app-card { border-radius:20px; padding:24px; transition:all .3s; cursor:pointer; }
.app-card:hover { transform:translateY(-4px); box-shadow:0 20px 40px rgba(124,58,237,0.12); }

/* Demo container */
.demo-box { border-radius:20px; overflow:hidden; }

/* Fade in on scroll */
.fade-in { opacity:0; transform:translateY(24px); transition:opacity .6s ease, transform .6s ease; }
.fade-in.visible { opacity:1; transform:translateY(0); }

/* Stagger */
.stagger-1 { transition-delay:.05s; }
.stagger-2 { transition-delay:.10s; }
.stagger-3 { transition-delay:.15s; }
.stagger-4 { transition-delay:.20s; }
.stagger-5 { transition-delay:.25s; }

/* Hero entrance */
@keyframes heroFadeUp {
  from { opacity:0; transform:translateY(32px); }
  to   { opacity:1; transform:translateY(0); }
}
.hero-animate { animation: heroFadeUp 0.7s ease forwards; opacity:0; }
.hero-delay-1 { animation-delay: 0.1s; }
.hero-delay-2 { animation-delay: 0.25s; }
.hero-delay-3 { animation-delay: 0.4s; }
.hero-delay-4 { animation-delay: 0.55s; }
.hero-delay-5 { animation-delay: 0.7s; }

/* Category card hover glow */
.cat-card { transition:all .3s; border-radius:20px; }

/* App gallery hero / Wix-like chooser */
.apps-gallery-hero {
  padding: 92px 16px 28px;
  background:
    radial-gradient(circle at 78% 18%, rgba(34,211,238,0.18), transparent 30%),
    radial-gradient(circle at 18% 8%, rgba(124,58,237,0.24), transparent 34%);
}
.gallery-shell {
  position: relative;
  overflow: hidden;
  border-radius: 32px;
  padding: 38px;
  background: linear-gradient(135deg, rgba(255,255,255,0.08), rgba(255,255,255,0.035));
  border: 1px solid rgba(255,255,255,0.13);
  box-shadow: 0 24px 80px rgba(0,0,0,0.24);
}
.gallery-shell::before {
  content: '';
  position: absolute;
  inset: -1px;
  pointer-events: none;
  background: linear-gradient(110deg, transparent 0%, rgba(255,255,255,0.09) 42%, transparent 70%);
  opacity: .55;
}
.gallery-kicker {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 14px;
  padding: 7px 13px;
  border-radius: 999px;
  color: #a78bfa;
  background: rgba(124,58,237,0.16);
  border: 1px solid rgba(124,58,237,0.32);
  font-size: 13px;
  font-weight: 700;
}
.gallery-title {
  max-width: 780px;
  margin-bottom: 12px;
  font-size: clamp(2rem, 5vw, 4.4rem);
  line-height: 1.02;
  font-weight: 850;
  letter-spacing: -0.035em;
  color: #fff;
}
.gallery-subtitle {
  max-width: 720px;
  color: #CBD5E1;
  font-size: 1.05rem;
  line-height: 1.75;
  margin-bottom: 24px;
}
.gallery-search-row {
  display: flex;
  gap: 12px;
  align-items: center;
  max-width: 760px;
  margin-bottom: 24px;
}
.gallery-start-btn { flex-shrink: 0; min-width: 128px; justify-content: center; }
.gallery-filter-block { margin-top: 18px; }
.gallery-filter-label {
  margin-bottom: 10px;
  color: #94A3B8;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .08em;
  text-transform: uppercase;
}
.gallery-chip-row {
  display: flex;
  gap: 10px;
  overflow-x: auto;
  padding-bottom: 4px;
}
.gallery-chip,
.cat-filter-btn.gallery-chip {
  width: auto;
  min-width: max-content;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 10px 15px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,0.12);
  background: rgba(255,255,255,0.055);
  color: #CBD5E1;
  font-size: 14px;
  font-weight: 700;
  cursor: pointer;
  transition: all .2s;
}
.gallery-chip:hover { transform: translateY(-1px); border-color: rgba(255,255,255,0.25); color: #fff; }
.gallery-chip.active-chip,
.cat-filter-btn.gallery-chip.active-chip {
  background: linear-gradient(135deg, rgba(124,58,237,0.34), rgba(34,211,238,0.18));
  border-color: rgba(124,58,237,0.48);
  color: #fff;
}
.chip-count {
  padding: 1px 7px;
  border-radius: 999px;
  background: rgba(255,255,255,0.11);
  color: #E2E8F0;
  font-size: 11px;
}

[data-theme="light"] .gallery-shell {
  background: rgba(255,255,255,0.78);
  border-color: rgba(15,23,42,0.08);
  box-shadow: 0 24px 70px rgba(15,23,42,0.10);
}
[data-theme="light"] .gallery-title { color: #0F172A; }
[data-theme="light"] .gallery-subtitle { color: #475569; }
[data-theme="light"] .gallery-chip,
[data-theme="light"] .cat-filter-btn.gallery-chip {
  background: rgba(255,255,255,0.8);
  border-color: rgba(15,23,42,0.10);
  color: #334155;
}
[data-theme="light"] .gallery-chip.active-chip,
[data-theme="light"] .cat-filter-btn.gallery-chip.active-chip { color: #4C1D95; }

/* Floating badges (xl only) */
.floating-badge {
  position:absolute;
  display:none;
  backdrop-filter:blur(16px);
  background:rgba(255,255,255,0.07);
  border:1px solid rgba(255,255,255,0.12);
  border-radius:14px;
  padding:10px 16px;
  font-size:13px;
  font-weight:600;
  white-space:nowrap;
  pointer-events:none;
}
@media (min-width:1280px) { .floating-badge { display:flex; align-items:center; gap:8px; } }

/* Star rating */
.star { cursor:pointer; transition:all .15s; font-size:2rem; }
.star:hover, .star.active { filter:drop-shadow(0 0 8px #EAB308); }

/* Timer bar animation */
@keyframes timerCountdown {
  from { width: 100%; }
  to   { width: 0%; }
}

/* Slide in for cards */
@keyframes slideInUp {
  from { opacity:0; transform:translateY(20px); }
  to   { opacity:1; transform:translateY(0); }
}
.slide-in { animation: slideInUp 0.35s ease forwards; }

/* Responsive */
@media (max-width:768px) {
  .section { padding:48px 16px; }
  h1 { font-size:2.2rem !important; }
  .hide-mobile { display:none !important; }
  .apps-gallery-hero { padding-top: 76px; }
  .gallery-shell { padding: 24px; border-radius: 24px; }
  .gallery-search-row { flex-direction: column; align-items: stretch; }
  .gallery-start-btn { width: 100%; }
}

/* ═══════════════════════════════════════════════
   LIGHT MODE
   ═══════════════════════════════════════════════ */
[data-theme="light"] body {
  background: #F1F5F9;
  color: #0F172A;
}
[data-theme="light"] #aurora .aurora-blob { opacity: .06 !important; }
[data-theme="light"] .grid-overlay { opacity: .012; }
[data-theme="light"] .dot-overlay  { opacity: .07; filter: invert(1); }

/* Glass */
[data-theme="light"] .glass {
  background: rgba(255,255,255,0.72);
  border-color: rgba(0,0,0,0.08);
  backdrop-filter: blur(16px);
}
[data-theme="light"] .glass:hover {
  background: rgba(255,255,255,0.88);
  border-color: rgba(0,0,0,0.12);
}

/* Header */
[data-theme="light"] header.scrolled {
  background: #ffffff;
  border-bottom-color: rgba(0,0,0,0.10);
}
[data-theme="light"] header { background: #ffffff; border-bottom: 1px solid rgba(0,0,0,0.08); }

/* Text */
[data-theme="light"] .text-white   { color: #0F172A !important; }
[data-theme="light"] .text-slate-100 { color: #1E293B !important; }
[data-theme="light"] .text-slate-200 { color: #334155 !important; }
[data-theme="light"] .text-slate-300 { color: #475569 !important; }
[data-theme="light"] .text-slate-400 { color: #64748B !important; }
[data-theme="light"] .text-slate-500 { color: #94A3B8 !important; }
[data-theme="light"] .text-slate-600 { color: #CBD5E1 !important; }
[data-theme="light"] nav a { color: #000000 !important; }
[data-theme="light"] nav a:hover { color: #116DFF !important; background: transparent !important; }

/* Inputs */
[data-theme="light"] input,
[data-theme="light"] textarea,
[data-theme="light"] select {
  background: rgba(255,255,255,0.85);
  border-color: rgba(0,0,0,0.14);
  color: #0F172A;
}
[data-theme="light"] input:focus,
[data-theme="light"] textarea:focus,
[data-theme="light"] select:focus {
  border-color: rgba(124,58,237,0.5);
  box-shadow: 0 0 0 3px rgba(124,58,237,0.1);
}
[data-theme="light"] input::placeholder,
[data-theme="light"] textarea::placeholder { color: #94A3B8; }
[data-theme="light"] select option { background: #fff; color: #0F172A; }

/* Buttons */
[data-theme="light"] .btn-outline {
  color: #475569;
  border-color: rgba(0,0,0,0.15);
  background: transparent;
}
[data-theme="light"] .btn-outline:hover {
  background: rgba(0,0,0,0.05);
  color: #0F172A;
  border-color: rgba(0,0,0,0.25);
}

/* Cards & panels */
[data-theme="light"] .app-card { background: rgba(255,255,255,0.7); border: 1px solid rgba(0,0,0,0.08); }
[data-theme="light"] .app-card:hover { background: rgba(255,255,255,0.92); box-shadow: 0 12px 32px rgba(0,0,0,0.1); }

/* Scrollbar */
[data-theme="light"] ::-webkit-scrollbar-track { background: rgba(0,0,0,0.04); }
[data-theme="light"] ::-webkit-scrollbar-thumb { background: rgba(124,58,237,0.3); }

/* Borders often white/opacity → flip to black/opacity */
[data-theme="light"] .border-white\/5  { border-color: rgba(0,0,0,0.05) !important; }
[data-theme="light"] .border-white\/10 { border-color: rgba(0,0,0,0.08) !important; }
[data-theme="light"] .border-white\/15 { border-color: rgba(0,0,0,0.12) !important; }
[data-theme="light"] .border-white\/20 { border-color: rgba(0,0,0,0.14) !important; }

/* Mobile menu */
[data-theme="light"] #mobile-menu { background: rgba(241,245,249,0.97) !important; }

/* Theme toggle icon */
[data-theme="light"] .theme-icon-dark { display: none !important; }
[data-theme="light"] .theme-icon-light { display: block !important; }
[data-theme="dark"]  .theme-icon-dark  { display: block !important; }
[data-theme="dark"]  .theme-icon-light { display: none !important; }
[data-theme="light"] #theme-toggle { border-color: rgba(0,0,0,0.15); color: #475569; }
[data-theme="light"] #theme-toggle:hover { border-color: rgba(0,0,0,0.25); color: #0F172A; }
[data-theme="dark"] #theme-toggle { border-color: rgba(255,255,255,0.18); color: #e2e8f0; }
[data-theme="dark"] #theme-toggle:hover { border-color: rgba(103,232,249,0.55); color: #67e8f9; }

/* Tour overlay */
.olapps-tour-overlay {
  position: fixed; inset: 0; z-index: 9000;
  background: rgba(5,11,23,0.75);
  pointer-events: none;
}
[data-theme="light"] .olapps-tour-overlay { background: rgba(15,23,42,0.65); }
.olapps-tour-spotlight {
  position: absolute;
  border-radius: 16px;
  box-shadow: 0 0 0 9999px rgba(5,11,23,0.75);
  transition: all .4s cubic-bezier(.4,0,.2,1);
  pointer-events: none;
}
[data-theme="light"] .olapps-tour-spotlight { box-shadow: 0 0 0 9999px rgba(15,23,42,0.65); }
.olapps-tour-tooltip {
  position: fixed;
  z-index: 9001;
  max-width: 340px;
  background: #0F172A;
  border: 1px solid rgba(124,58,237,0.4);
  border-radius: 18px;
  padding: 20px 22px;
  box-shadow: 0 20px 60px rgba(0,0,0,0.5);
  pointer-events: all;
  transition: all .35s cubic-bezier(.4,0,.2,1);
}
[data-theme="light"] .olapps-tour-tooltip {
  background: #fff;
  border-color: rgba(124,58,237,0.3);
  box-shadow: 0 16px 48px rgba(0,0,0,0.15);
}
.olapps-tour-step-badge {
  display: inline-block;
  background: rgba(124,58,237,0.2);
  color: #a78bfa;
  border: 1px solid rgba(124,58,237,0.3);
  border-radius: 99px;
  font-size: 11px;
  font-weight: 700;
  padding: 2px 10px;
  margin-bottom: 8px;
}
.olapps-tour-title {
  font-size: 1rem;
  font-weight: 700;
  color: #F8FAFC;
  margin-bottom: 6px;
}
[data-theme="light"] .olapps-tour-title { color: #0F172A; }
.olapps-tour-desc {
  font-size: .875rem;
  color: #94A3B8;
  line-height: 1.6;
  margin-bottom: 16px;
}
[data-theme="light"] .olapps-tour-desc { color: #475569; }
.olapps-tour-dots {
  display: flex; align-items: center; gap: 5px;
}
.olapps-tour-dot {
  width: 6px; height: 6px; border-radius: 99px;
  background: rgba(124,58,237,0.3);
  transition: all .2s;
}
.olapps-tour-dot.active { width: 18px; background: #7C3AED; }


/* Wix-style top navigation */
.wix-main-nav { overflow: visible; }
.wix-nav-dropdown { position: relative; display: inline-flex; align-items: center; }
.wix-nav-link {
  display: inline-flex;
  align-items: center;
  color: #000 !important;
  text-decoration: none;
  font-size: 16px;
  font-weight: 400;
  line-height: 1;
  padding: 23px 0;
  background: transparent !important;
  transition: color .15s ease, font-weight .15s ease;
}
.wix-nav-link:hover,
.wix-nav-dropdown:hover > .wix-nav-link {
  color: #116DFF !important;
  font-weight: 700;
}
.wix-dropdown-panel {
  position: absolute;
  top: 100%;
  right: 0;
  min-width: 220px;
  background: #fff;
  border: 1px solid rgba(0,0,0,0.12);
  box-shadow: 0 12px 34px rgba(0,0,0,0.12);
  padding: 10px 0;
  opacity: 0;
  visibility: hidden;
  transform: translateY(8px);
  transition: opacity .16s ease, transform .16s ease, visibility .16s ease;
  z-index: 80;
}
.wix-nav-dropdown:hover .wix-dropdown-panel {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
.wix-dropdown-panel a {
  display: block;
  padding: 11px 18px;
  color: #000 !important;
  text-decoration: none;
  font-size: 15px;
  line-height: 1.2;
  background: #fff !important;
}
.wix-dropdown-panel a:hover {
  color: #116DFF !important;
  font-weight: 700;
  background: #f7f8fb !important;
}
.wix-login-link {
  color: #000 !important;
  text-decoration: none;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1;
  transition: color .15s ease, font-weight .15s ease;
}
.wix-login-link:hover { color: #116DFF !important; font-weight: 700; }
.wix-lang-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 0;
  background: transparent;
  color: #000;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 16px;
  font-weight: 400;
  padding: 0;
  cursor: pointer;
}
.wix-lang-btn:hover { color: #116DFF; font-weight: 700; }
@media (max-width: 767px) {
  .wix-nav-link { font-size: 14px; padding: 20px 0; }
  .wix-dropdown-panel { display: none; }
}


/* Header fit fixes */
#site-header { overflow: visible; }
#site-header > div { max-width: none; }
@media (max-width: 767px) {
  #site-header > div { justify-content: space-between; gap: 12px; }
  .wix-login-link,
  .wix-lang-btn { font-size: 14px; }
}


/* Header layout correction: logo right, menu headings next to it, login/lang left */
#site-header > div { direction: ltr; }
.wix-main-nav { direction: rtl; }
.wix-nav-link { white-space: nowrap; }
.wix-dropdown-panel { display: none; }
@media (max-width: 767px) {
  #site-header > div { gap: 10px; }
  .wix-login-link, .wix-lang-btn { font-size: 14px; }
}


/* Mobile/desktop header menu visibility fix */
#site-header .wix-main-nav { order: 2; }
#site-header .wix-main-nav .wix-nav-link { display: inline-flex !important; }
@media (max-width: 767px) {
  #site-header > div { min-height: 104px; align-content: center; }
  #site-header .wix-main-nav {
    order: 4 !important;
    flex: 0 0 100%;
    width: 100%;
    display: flex !important;
    justify-content: center;
    gap: 28px;
  }
  #site-header .wix-nav-link { font-size: 15px; padding: 8px 0; }
  .page-content { padding-top: 118px; }
}
@media (min-width: 768px) {
  #site-header > div { min-height: 64px; }
  #site-header .wix-main-nav { display: flex !important; }
}


/* Products page centered search */
.gallery-shell { text-align: center; }
.gallery-title { margin-left: auto; margin-right: auto; }
.gallery-search-centered {
  justify-content: center;
  margin: 24px auto 28px;
  max-width: 640px;
}
.gallery-search-box {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 12px;
  border: 1px solid rgba(15,23,42,0.18);
  background: #fff;
  border-radius: 999px;
  padding: 0 18px;
  min-height: 58px;
  box-shadow: 0 12px 34px rgba(15,23,42,0.08);
  color: #475569;
}
.gallery-search-box input {
  border: 0 !important;
  box-shadow: none !important;
  background: transparent !important;
  color: #0F172A !important;
  padding: 0 !important;
  min-height: 56px;
  font-size: 17px;
}
.gallery-search-box input::placeholder { color: #64748B; }
[data-theme="light"] .gallery-search-box { border-color: rgba(15,23,42,0.16); }
@media (max-width: 767px) {
  .gallery-search-centered { margin-top: 18px; }
  .gallery-search-box { min-height: 54px; }
  .gallery-search-box input { min-height: 52px; font-size: 16px; }
}


/* Products page hero title in home-page auto style */
.apps-gallery-hero .gallery-shell {
  background: transparent !important;
  border: 0 !important;
  box-shadow: none !important;
  padding: 28px 16px 10px !important;
  overflow: visible !important;
}
.apps-gallery-hero .gallery-shell::before { display: none !important; }
.apps-gallery-hero .gallery-title {
  font-family: 'Helvetica Neue', Arial, sans-serif !important;
  font-size: clamp(36px, 5.55vw, 84px) !important;
  font-weight: 400 !important;
  letter-spacing: -0.045em !important;
  line-height: 1 !important;
  color: #0b0f19 !important;
  text-shadow: none !important;
  text-align: center !important;
  max-width: 980px !important;
  margin: 0 auto 24px !important;
  white-space: nowrap;
}
.apps-gallery-hero .gallery-search-centered {
  margin: 0 auto 8px !important;
  max-width: 620px !important;
  justify-content: center !important;
}
@media (max-width: 767px) {
  .apps-gallery-hero .gallery-title {
    font-size: clamp(32px, 8vw, 48px) !important;
    white-space: normal;
  }
}


/* Products title/search final size + centering */
.apps-gallery-hero .gallery-title {
  display: block !important;
  width: 100% !important;
  max-width: 1280px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
  font-size: clamp(36px, 5.55vw, 84px) !important;
}
.apps-gallery-hero .gallery-search-centered {
  width: min(92vw, 640px) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  display: flex !important;
  justify-content: center !important;
}
.apps-gallery-hero .gallery-search-box {
  margin-left: auto !important;
  margin-right: auto !important;
}
@media (max-width: 767px) {
  .apps-gallery-hero .gallery-title {
    font-size: clamp(32px, 8vw, 48px) !important;
  }
}


/* Products search 60 percent smaller */
.apps-gallery-hero .gallery-search-centered {
  width: min(60vw, 256px) !important;
  max-width: 256px !important;
}
.apps-gallery-hero .gallery-search-box {
  min-height: 36px !important;
  padding: 0 12px !important;
  gap: 8px !important;
}
.apps-gallery-hero .gallery-search-box input {
  min-height: 34px !important;
  font-size: 14px !important;
}
.apps-gallery-hero .gallery-search-box svg {
  width: 16px !important;
  height: 16px !important;
}
@media (max-width: 767px) {
  .apps-gallery-hero .gallery-search-centered {
    width: min(72vw, 256px) !important;
  }
}


/* Products hero white background + sector dropdown */
.apps-gallery-hero {
  background: #ffffff !important;
}
.sector-filter-wrap {
  width: min(92vw, 640px);
  max-width: 640px;
  margin: 10px auto 0;
  display: flex;
  justify-content: flex-end;
  direction: rtl;
}
.sector-dropdown {
  position: relative;
  display: inline-flex;
  justify-content: flex-end;
}
.sector-dropdown-toggle {
  border: 0;
  background: transparent;
  color: #000;
  font-family: Arial, Helvetica, sans-serif;
  font-size: 16px;
  font-weight: 700;
  cursor: pointer;
  padding: 8px 0;
}
.sector-dropdown-menu {
  position: absolute;
  top: 100%;
  right: 0;
  min-width: 210px;
  background: #fff;
  border: 1px solid rgba(0,0,0,0.12);
  box-shadow: 0 12px 34px rgba(0,0,0,0.12);
  padding: 8px 0;
  opacity: 0;
  visibility: hidden;
  transform: translateY(6px);
  transition: opacity .15s ease, transform .15s ease, visibility .15s ease;
  z-index: 90;
}
.sector-dropdown:hover .sector-dropdown-menu,
.sector-dropdown:focus-within .sector-dropdown-menu {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
.sector-filter-btn {
  display: block;
  width: 100%;
  text-align: right;
  border: 0;
  background: #fff;
  color: #000;
  font-size: 15px;
  padding: 11px 16px;
  cursor: pointer;
}
.sector-filter-btn:hover,
.sector-filter-btn.active-sector {
  color: #116DFF;
  font-weight: 700;
  background: #f7f8fb;
}

/* Products search width 70 percent smaller */
.apps-gallery-hero .gallery-search-centered {
  width: min(70vw, 180px) !important;
  max-width: 180px !important;
}
.apps-gallery-hero .gallery-search-box {
  width: 100% !important;
}


/* Products search final centered 60 percent smaller */
.apps-gallery-hero .gallery-search-centered {
  width: min(40vw, 260px) !important;
  max-width: 260px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  justify-content: center !important;
}
.apps-gallery-hero .gallery-search-box {
  width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
@media (max-width: 767px) {
  .apps-gallery-hero .gallery-search-centered {
    width: min(70vw, 260px) !important;
  }
}

/* Products search icon/input alignment */
.apps-gallery-hero .gallery-search-box {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: center !important;
  justify-content: flex-start !important;
  white-space: nowrap !important;
}
.apps-gallery-hero .gallery-search-box svg,
.apps-gallery-hero .gallery-search-box i {
  flex: 0 0 auto !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
}
.apps-gallery-hero .gallery-search-box input {
  flex: 1 1 auto !important;
  min-width: 0 !important;
  width: auto !important;
}


/* Products page upper/lower screen division */
.products-lower-header {
  margin-bottom: 18px;
}
.products-screen-divider {
  width: 100%;
  height: 1px;
  margin: 0 0 30px;
  background: linear-gradient(90deg, transparent, rgba(15,23,42,0.22), transparent);
}
[data-theme="light"] .products-screen-divider {
  background: linear-gradient(90deg, transparent, rgba(15,23,42,0.22), transparent);
}
.products-lower-content {
  padding-top: 4px;
}


/* Products all-apps title smaller and not bold */
.products-all-title {
  font-size: 1.575rem !important;
  line-height: 1.2 !important;
  font-weight: 400 !important;
}
@media (min-width: 768px) {
  .products-all-title { font-size: 1.75rem !important; }
}


/* Products lower header filters: sector/type */
.products-lower-title-row {
  display: flex;
  align-items: center;
  gap: 28px;
  direction: rtl;
}
.products-lower-title-row .products-all-title {
  margin: 0;
}
.products-lower-tabs {
  margin-inline-start: auto;
  display: flex;
  align-items: center;
  gap: 24px;
  direction: rtl;
  font-family: Arial, Helvetica, sans-serif;
}
.products-lower-tabs button {
  border: 0;
  background: transparent;
  color: #0F172A;
  font-size: 16px;
  font-weight: 400;
  cursor: pointer;
  padding: 0;
}
.products-lower-tabs button:hover {
  color: #116DFF;
  font-weight: 700;
}
@media (max-width: 767px) {
  .products-lower-title-row {
    gap: 16px;
  }
  .products-lower-tabs {
    gap: 16px;
  }
  .products-lower-tabs button {
    font-size: 14px;
  }
}

/* Products lower header inline order */
.products-lower-title-row {
  justify-content: flex-start !important;
  gap: 22px !important;
  flex-wrap: nowrap !important;
}
.products-lower-tabs {
  margin-inline-start: 0 !important;
  gap: 22px !important;
  flex: 0 0 auto !important;
}
.products-lower-title-row .products-all-title {
  flex: 0 0 auto !important;
}


/* Force products lower header horizontal in web */
.products-lower-title-row,
.products-lower-title-row[style] {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: flex-start !important;
  flex-wrap: nowrap !important;
  width: 100% !important;
}
.products-lower-tabs,
.products-lower-tabs[style] {
  display: inline-flex !important;
  flex-direction: row !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
  margin: 0 !important;
}
.products-lower-tabs button {
  display: inline-flex !important;
  white-space: nowrap !important;
}
.products-lower-title-row .products-all-title {
  display: inline-flex !important;
  white-space: nowrap !important;
  margin: 0 !important;
}

/* Products lower header hover bold */
.products-lower-title-row .products-all-title:hover,
.products-lower-tabs button:hover {
  font-weight: 700 !important;
}
.products-lower-title-row .products-all-title,
.products-lower-tabs button {
  transition: font-weight .15s ease, color .15s ease;
}


/* Products demo buttons blue + images label */
.demo-images-btn {
  background: #006BFF !important;
  color: #ffffff !important;
  border-color: #006BFF !important;
  box-shadow: 0 10px 24px rgba(0,107,255,0.22) !important;
}
.demo-images-btn:hover {
  background: #0057D9 !important;
  border-color: #0057D9 !important;
}

/* Products search: keep icon and text on one line */
.apps-gallery-hero .gallery-search-centered,
.apps-gallery-hero .gallery-search-centered[style] {
  width: 240px !important;
  max-width: 240px !important;
  min-width: 240px !important;
}
.apps-gallery-hero .gallery-search-box,
.apps-gallery-hero .gallery-search-box[style] {
  height: 42px !important;
  min-height: 42px !important;
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  justify-content: flex-start !important;
  flex-wrap: nowrap !important;
  gap: 8px !important;
  padding: 0 12px !important;
  overflow: hidden !important;
}
.apps-gallery-hero .gallery-search-box svg,
.apps-gallery-hero .gallery-search-box i {
  width: 16px !important;
  height: 16px !important;
  min-width: 16px !important;
  flex: 0 0 16px !important;
  display: block !important;
  margin: 0 !important;
}
.apps-gallery-hero .gallery-search-box input {
  flex: 1 1 auto !important;
  width: 100% !important;
  min-width: 0 !important;
  height: 40px !important;
  min-height: 40px !important;
  line-height: 40px !important;
  display: block !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  padding: 0 !important;
  margin: 0 !important;
}


/* Products lower sector dropdown */
.products-lower-dropdown {
  position: relative;
  display: inline-flex;
  align-items: center;
}
.products-lower-dropdown summary {
  list-style: none;
  cursor: pointer;
  color: #0F172A;
  font-size: 16px;
  font-weight: 400;
  line-height: 1;
}
.products-lower-dropdown summary::-webkit-details-marker { display: none; }
.products-lower-dropdown summary:hover,
.products-lower-dropdown[open] summary {
  color: #116DFF;
  font-weight: 700;
}
.products-lower-dropdown-menu {
  position: absolute;
  top: calc(100% + 10px);
  right: 0;
  min-width: 220px;
  background: #fff;
  border: 1px solid rgba(0,0,0,0.12);
  box-shadow: 0 12px 34px rgba(0,0,0,0.14);
  padding: 8px 0;
  z-index: 120;
}
.products-lower-dropdown-menu .sector-filter-btn {
  display: block !important;
  width: 100% !important;
  text-align: right !important;
  background: #fff !important;
  color: #000 !important;
  border: 0 !important;
  padding: 11px 16px !important;
  font-size: 15px !important;
  cursor: pointer !important;
}
.products-lower-dropdown-menu .sector-filter-btn:hover,
.products-lower-dropdown-menu .sector-filter-btn.active-sector {
  color: #116DFF !important;
  font-weight: 700 !important;
  background: #f7f8fb !important;
}


/* Products sector dropdown Wix-like compact panel */
.products-lower-dropdown-menu {
  min-width: 260px !important;
  padding: 14px 0 !important;
  border-radius: 0 !important;
  border: 1px solid rgba(0,0,0,0.14) !important;
  box-shadow: 0 16px 36px rgba(0,0,0,0.16) !important;
}
.products-lower-dropdown-menu .sector-filter-btn {
  padding: 14px 22px !important;
  font-size: 16px !important;
  line-height: 1.2 !important;
  font-weight: 400 !important;
}
.products-lower-dropdown-menu .sector-filter-btn:hover,
.products-lower-dropdown-menu .sector-filter-btn.active-sector {
  font-weight: 700 !important;
}


/* Home UI/UX refresh */
.home-hero {
  padding-top: 112px;
  padding-bottom: 34px;
  background: linear-gradient(180deg, #ffffff 0%, #f7fbff 76%, rgba(255,255,255,0) 100%);
}
.home-hero-shell {
  width: min(94vw, 1320px);
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 460px);
  align-items: center;
  gap: clamp(24px, 4vw, 58px);
}
.home-hero-copy { text-align: center; }
.home-hero-title {
  font-family: 'Helvetica Neue', Arial, sans-serif;
  font-size: clamp(34px, 5.2vw, 82px);
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.04;
  max-width: 940px;
  margin-left: auto;
  margin-right: auto;
  white-space: normal;
  overflow-wrap: anywhere;
  text-wrap: balance;
}
.home-hero-title-text { color: #0b0f19; text-shadow: none; }
.home-hero-subtitle { color: #334155; font-weight: 600; }
.home-hero-visual { min-width: 0; justify-self: stretch; }
.dashboard-mockup {
  border-radius: 8px;
  background: #ffffff;
  border: 1px solid rgba(15,23,42,0.10);
  box-shadow: 0 30px 80px rgba(15,23,42,0.14);
  overflow: hidden;
}
.mockup-topbar {
  height: 42px;
  display: flex;
  align-items: center;
  gap: 7px;
  padding: 0 16px;
  border-bottom: 1px solid rgba(15,23,42,0.08);
  background: #f8fafc;
  direction: ltr;
}
.mockup-topbar span {
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: #cbd5e1;
}
.mockup-grid {
  display: grid;
  grid-template-columns: 1.1fr .9fr;
  gap: 14px;
  padding: 18px;
}
.mockup-panel,
.mockup-app-card {
  border-radius: 8px;
  border: 1px solid rgba(15,23,42,0.08);
  background: #f8fafc;
}
.mockup-panel-main { grid-row: span 3; padding: 20px; }
.mockup-row {
  height: 12px;
  border-radius: 99px;
  background: #dbeafe;
  margin-bottom: 12px;
}
.mockup-row.strong { width: 68%; background: #006bff; }
.mockup-row.short { width: 42%; }
.mockup-metric-line {
  margin-top: 24px;
  display: flex;
  align-items: baseline;
  gap: 8px;
  color: #334155;
}
.mockup-metric-line b {
  color: #0f172a;
  font-size: 2rem;
  line-height: 1;
}
.mockup-app-card {
  min-height: 72px;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 14px;
  color: #0f172a;
  font-weight: 800;
}
.mockup-app-card.blue { background: #eff6ff; }
.mockup-app-card.green { background: #ecfdf5; }
.mockup-app-card.gold { background: #fffbeb; }

.home-examples {
  padding-top: 42px;
  padding-bottom: 58px;
  background: #050b17;
}
.home-example-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}
.home-example-card {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 16px;
  min-height: 190px;
  padding: 22px;
  border-radius: 8px;
  color: inherit;
  text-decoration: none;
  background: rgba(255,255,255,0.055);
  border: 1px solid rgba(255,255,255,0.11);
  transition: transform .18s ease, border-color .18s ease, background .18s ease;
}
.home-example-card:hover {
  transform: translateY(-3px);
  border-color: rgba(34,211,238,0.32);
  background: rgba(255,255,255,0.08);
}
.home-example-icon {
  width: 52px;
  height: 52px;
  border-radius: 8px;
  border: 1px solid;
  display: flex;
  align-items: center;
  justify-content: center;
}
.home-example-title {
  color: #f8fafc;
  font-size: 1.08rem;
  font-weight: 800;
  margin-bottom: 8px;
}
.home-example-desc {
  color: #cbd5e1;
  font-size: .92rem;
  line-height: 1.65;
  margin-bottom: 16px;
}
.home-example-value {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  color: #67e8f9;
  font-size: .83rem;
  font-weight: 800;
}
[data-theme="light"] .home-examples .text-white { color: #f8fafc !important; }
[data-theme="light"] .home-examples .text-slate-400 { color: #cbd5e1 !important; }

/* Cookie banner: smaller, less obstructive */
.cookie-banner {
  position: fixed;
  left: 16px;
  right: auto;
  bottom: 16px;
  z-index: 1000;
  width: min(440px, calc(100vw - 32px));
  display: grid;
  gap: 12px;
  padding: 14px;
  border-radius: 8px;
  background: rgba(15,23,42,0.94);
  border: 1px solid rgba(148,163,184,0.24);
  box-shadow: 0 18px 48px rgba(0,0,0,0.28);
  backdrop-filter: blur(14px);
}
.cookie-banner-title {
  color: #f8fafc;
  font-size: .86rem;
  font-weight: 800;
  margin: 0 0 4px;
}
.cookie-banner-text {
  color: #cbd5e1;
  font-size: .76rem;
  line-height: 1.55;
  margin: 0;
}
.cookie-banner-actions {
  display: flex;
  justify-content: flex-end;
  gap: 8px;
  flex-wrap: wrap;
}
.cookie-btn {
  min-height: 34px;
  padding: 7px 12px;
  border-radius: 8px;
  font-size: .78rem;
  font-weight: 800;
  cursor: pointer;
  transition: transform .15s ease, background .15s ease, border-color .15s ease;
}
.cookie-btn:hover { transform: translateY(-1px); }
.cookie-btn-secondary {
  background: rgba(255,255,255,0.07);
  border: 1px solid rgba(255,255,255,0.16);
  color: #e2e8f0;
}
.cookie-btn-primary {
  background: #006bff;
  border: 1px solid #006bff;
  color: #fff;
}

/* Header consistency and dark-mode legibility */
#site-header {
  background: rgba(255,255,255,0.96);
  border-bottom: 1px solid rgba(15,23,42,0.08);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
}
#mobile-menu-btn { order: -20; }
#theme-toggle { order: -19; }
.wix-nav-link,
.wix-login-link,
.wix-lang-btn,
#mobile-menu-btn { color: #0f172a !important; }
.wix-nav-link:hover,
.wix-login-link:hover,
.wix-lang-btn:hover,
#mobile-menu-btn:hover { color: #116dff !important; }
[data-theme="dark"] body {
  background: #050b17;
  color: #f8fafc;
}
[data-theme="dark"] #site-header,
[data-theme="dark"] header.scrolled {
  background: rgba(5,11,23,0.92);
  border-bottom-color: rgba(255,255,255,0.10);
}
[data-theme="dark"] .wix-nav-link,
[data-theme="dark"] .wix-login-link,
[data-theme="dark"] .wix-lang-btn,
[data-theme="dark"] #mobile-menu-btn { color: #f8fafc !important; }
[data-theme="dark"] .wix-nav-link:hover,
[data-theme="dark"] .wix-login-link:hover,
[data-theme="dark"] .wix-lang-btn:hover,
[data-theme="dark"] #mobile-menu-btn:hover { color: #67e8f9 !important; }
[data-theme="dark"] .home-hero {
  background: linear-gradient(180deg, #050b17 0%, #0a1628 76%, rgba(5,11,23,0) 100%);
}
[data-theme="dark"] .home-hero-title-text,
[data-theme="dark"] .apps-gallery-hero .gallery-title { color: #f8fafc !important; }
[data-theme="dark"] .home-hero-subtitle { color: #cbd5e1; }
[data-theme="dark"] .dashboard-mockup {
  background: #0f1f3d;
  border-color: rgba(255,255,255,0.13);
}
[data-theme="dark"] .mockup-topbar,
[data-theme="dark"] .mockup-panel,
[data-theme="dark"] .mockup-app-card {
  background: rgba(255,255,255,0.07);
  border-color: rgba(255,255,255,0.12);
  color: #f8fafc;
}
[data-theme="dark"] .mockup-metric-line,
[data-theme="dark"] .mockup-metric-line b { color: #f8fafc; }
[data-theme="dark"] .mockup-row { background: rgba(148,163,184,0.35); }
[data-theme="dark"] .mockup-row.strong { background: #22d3ee; }
[data-theme="dark"] #mobile-menu { background: rgba(5,11,23,0.97) !important; }
[data-theme="dark"] .cookie-banner { background: rgba(15,23,42,0.96); }

/* Responsive tightening */
@media (max-width: 1024px) {
  .home-hero-shell { grid-template-columns: 1fr; }
  .home-hero-visual {
    width: min(100%, 620px);
    margin: 0 auto;
  }
  .home-example-grid { grid-template-columns: 1fr; }
}
@media (max-width: 767px) {
  .home-hero {
    padding-top: 88px;
    padding-bottom: 24px;
  }
  .home-hero-title {
    font-size: clamp(32px, 10vw, 46px) !important;
    line-height: 1.08;
  }
  .home-hero-subtitle { font-size: .98rem !important; }
  .mockup-grid { grid-template-columns: 1fr; }
  .mockup-panel-main { grid-row: auto; }
  .home-example-card {
    grid-template-columns: 1fr;
    min-height: 0;
  }
  .cookie-banner {
    left: 10px;
    bottom: 10px;
    width: calc(100vw - 20px);
  }
  #site-header .wix-main-nav {
    gap: 18px;
    overflow-x: auto;
    justify-content: flex-start;
    padding-bottom: 2px;
  }
  #mobile-menu-btn { order: -20; }
  #theme-toggle { order: -19; }
}
