:root{
  --brand-50: #f5f0ff;
  --brand-100: #e9e3ff;
  --brand-500: #372AAC;
  --brand-600: #2e228f;
  --brand-700: #24186d;
  --brand-accent: #7c6bff;
  --brand-muted: #94a3b8;
}

/* Primary button tweaks to align with brand */
#btn-submit-idea,
.btn-primary,
button.bg-indigo-600{
  background-color: var(--brand-500) !important;
  border-color: transparent !important;
}
#btn-submit-idea:hover,
button.bg-indigo-600:hover{
  background-color: var(--brand-600) !important;
}

/* Secondary/outline CTA */
#btn-schedule{
  border-color: rgba(55,42,172,0.25) !important;
  color: white !important;
  background: transparent !important;
}
#btn-schedule:hover{
  background: rgba(124,107,255,0.06) !important;
}

/* Testimonials: subtle branded background and dot styles */
#testimonial-container{
  background: linear-gradient(180deg, rgba(55,42,172,0.06), rgba(24,0,39,0.02));
  border-radius: 12px;
}
[data-dot]{
  border: none;
}
[data-dot].bg-indigo-500, [data-dot].bg-indigo-500:hover{
  background-color: var(--brand-500) !important;
}
[data-dot].bg-slate-600, [data-dot].bg-slate-600/60{
  background-color: rgba(148,163,184,0.25) !important;
}

/* Form focus rings align with brand */
input:focus, textarea:focus{
  box-shadow: 0 0 0 3px rgba(55,42,172,0.12);
  border-color: var(--brand-600) !important;
}

/* Small responsive spacing tweaks for hero */
@media (min-width: 768px){
  section { padding-top: 4.5rem; padding-bottom: 2.5rem; }
}

/* Keep default look elsewhere; these are minimal brand adjustments */

/* Force larger header logo and adjust nav to prevent clipping */
.site-nav{ min-height: 5.5rem; }
.site-logo{ height: 96px !important; width: auto !important; display:block; }

/* Responsive logo sizes */
@media (max-width: 640px){
  .site-logo{ height: 56px !important; }
}
@media (min-width: 768px){
  .site-logo{ height: 96px !important; }
}
@media (min-width: 1200px){
  .site-logo{ height: 128px !important; }
}

/* Footer logo should match header size */
.site-footer-logo{ height: 128px !important; width: auto !important; display:block; }
@media (max-width: 640px){
  .site-footer-logo{ height: 56px !important; }
}
@media (min-width: 768px){
  .site-footer-logo{ height: 96px !important; }
}


/* Privacy page hero and content card styles */
.page-hero{
  background: radial-gradient(ellipse at center, rgba(124,107,255,0.08), rgba(24,0,39,0.02));
  padding-bottom: 3rem;
}
.content-card{
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  border-radius: 12px;
}

/* Increase spacing for headings inside content-card */
.content-card h2{ margin-top: 0.6rem; margin-bottom: 0.4rem; }

/* Ensure footer logo displays as block and matches header sizing on privacy page */
.site-footer-logo{ display:block; margin-bottom:0.75rem; }

/* Add bottom spacing so privacy content doesn't butt up against footer */
.content-card{ margin-bottom: 4rem; }


