.page-content-wrapper {
  padding-top: 140px !important;
}
.info-page-content {
  padding-top: 140px !important;
}
.auth-page-bg .page-content-wrapper {
  padding-top: 140px !important;
}
.public-utility-bar {
  position: fixed;
  top: 0;
  z-index: 1050;
  height: 42px;
}
.public-navbar.navbar-default {
  position: fixed;
  top: 42px;
  left: 0;
  right: 0;
  z-index: 1040;
}
.pricing-card,
.demo-card,
.standalone-card,
.feature-detail-card,
.home-overview-card,
.home-capability-card,
.home-workflow-step,
.solutions-card,
.blog-card,
.testimonial-card,
.tutorial-card,
.stat-card,
.onboarding-step,
.about-feature,
.contact-method-card,
.footer-usecase-card,
.footer-navigation-card,
.footer-trust-item {
  overflow: hidden;
  overflow-wrap: break-word;
  position: relative;
}
.pricing-card .plan-features li,
.pricing-card .pricing-feature-list li {
  overflow-wrap: break-word;
  line-height: 1.6;
  padding-right: 5px;
}
.pricing-hero h1,
.contact-hero h1,
.home-hero h1,
.info-page-content .page-hero h1 {
  overflow-wrap: break-word;
  max-width: 100%;
  hyphens: none;
}
.pricing-hero p,
.contact-hero p,
.home-hero p {
  max-width: 700px;
  margin-left: auto;
  margin-right: auto;
}
.footer-main .col-sm-6,
.footer-main .col-md-3,
.footer-main .col-md-4 {
  overflow-wrap: break-word;
}
.pricing-comparison-table {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  margin-bottom: 30px;
}
.pricing-comparison-table table {
  min-width: 600px;
}
.signup-wizard-card {
  max-width: 580px;
  padding: 48px 42px;
}
.signup-steps {
  display: flex;
  align-items: flex-start;
  justify-content: center;
  margin: 0 0 36px;
  padding: 20px 0;
  position: relative;
}
.signup-step {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  position: relative;
  z-index: 2;
  min-width: 80px;
}
.signup-step .step-number {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: #f0ecf3;
  color: #999;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  font-size: 16px;
  transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
  border: 3px solid transparent;
  position: relative;
}
.signup-step.active .step-number {
  background:
    linear-gradient(
      135deg,
      #6C587B,
      #4b395d);
  color: #fff;
  border-color: rgb(108 88 123 / 30%);
  box-shadow: 0 8px 24px rgb(108 88 123 / 35%);
  transform: scale(1.1);
}
.signup-step.completed .step-number {
  background:
    linear-gradient(
      135deg,
      #28a745,
      #20903c);
  color: #fff;
  border-color: rgb(40 167 69 / 30%);
  box-shadow: 0 6px 18px rgb(40 167 69 / 30%);
}
.signup-step .step-icon {
  font-size: 18px;
}
.signup-step .step-label {
  font-size: 13px;
  color: #999;
  text-transform: uppercase;
  letter-spacing: 0.8px;
  font-weight: 700;
  transition: color 0.3s;
}
.signup-step.active .step-label {
  color: #6C587B;
}
.signup-step.completed .step-label {
  color: #28a745;
}
.step-connector {
  flex: 1;
  height: 3px;
  background: #e9ecef;
  margin: 22px 8px 0;
  border-radius: 999px;
  transition: background 0.4s ease;
  position: relative;
  overflow: hidden;
}
.step-connector.active {
  background:
    linear-gradient(
      90deg,
      #28a745,
      #6C587B);
}
.step-connector.active::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  background:
    linear-gradient(
      90deg,
      transparent,
      rgb(255 255 255 / 40%),
      transparent);
  animation: shimmer 1.5s ease-in-out;
}
@keyframes shimmer {
  0% {
    transform: translateX(-100%);
  }
  100% {
    transform: translateX(100%);
  }
}
.signup-step-panel {
  display: none;
  opacity: 0;
}
.signup-step-panel.active {
  display: block;
  opacity: 1;
  animation: stepSlideIn 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}
@keyframes stepSlideIn {
  from {
    opacity: 0;
    transform: translateX(20px);
  }
  to {
    opacity: 1;
    transform: translateX(0);
  }
}
.signup-step-buttons {
  display: flex;
  gap: 14px;
  margin-top: 20px;
}
.signup-step-buttons .btn {
  border-radius: 12px;
  padding: 12px 24px;
  font-weight: 700;
  transition: all 0.2s ease;
}
.signup-step-buttons .btn:hover {
  transform: translateY(-1px);
}
.step-panel-title {
  font-size: 16px;
  font-weight: 700;
  color: var(--public-ink, #14213d);
  margin-bottom: 20px;
  display: flex;
  align-items: center;
  gap: 8px;
}
.step-panel-title i {
  color: var(--public-brand, #6c587b);
}
.select2-container--default .select2-selection--single {
  height: 42px;
  border: 1px solid rgb(108 88 123 / 20%);
  border-radius: 12px;
  background: #fff;
  padding: 6px 12px;
  font-size: 14px;
  transition: border-color 0.2s, box-shadow 0.2s;
}
.select2-container--default .select2-selection--single:hover {
  border-color: rgb(108 88 123 / 40%);
}
.select2-container--default.select2-container--focus .select2-selection--single,
.select2-container--default.select2-container--open .select2-selection--single {
  border-color: #6c587b;
  box-shadow: 0 0 0 3px rgb(108 88 123 / 12%);
  outline: none;
}
.select2-container--default .select2-selection--single .select2-selection__rendered {
  line-height: 28px;
  color: var(--public-ink, #14213d);
  padding-left: 0;
}
.select2-container--default .select2-selection--single .select2-selection__placeholder {
  color: #999;
}
.select2-container--default .select2-selection--single .select2-selection__arrow {
  height: 40px;
  right: 8px;
}
.select2-container--default .select2-selection--single .select2-selection__arrow b {
  border-color: #6c587b transparent transparent;
}
.select2-dropdown {
  border: 1px solid rgb(108 88 123 / 15%);
  border-radius: 14px;
  box-shadow: 0 12px 36px rgb(20 33 61 / 15%);
  overflow: hidden;
  margin-top: 4px;
}
.select2-container--default .select2-search--dropdown {
  padding: 10px 12px;
}
.select2-container--default .select2-search--dropdown .select2-search__field {
  border: 1px solid rgb(108 88 123 / 20%);
  border-radius: 10px;
  padding: 8px 12px;
  font-size: 14px;
  outline: none;
  transition: border-color 0.2s;
}
.select2-container--default .select2-search--dropdown .select2-search__field:focus {
  border-color: #6c587b;
  box-shadow: 0 0 0 3px rgb(108 88 123 / 10%);
}
.select2-results__option {
  padding: 10px 14px;
  font-size: 14px;
  transition: background 0.15s;
}
.select2-container--default .select2-results__option--highlighted.select2-results__option--selectable {
  background:
    linear-gradient(
      135deg,
      #6c587b,
      #5a4868);
  color: #fff;
}
.select2-container--default .select2-results__option--selected {
  background: #f0ecf3;
  font-weight: 600;
}
.select2-results__group {
  padding: 8px 14px;
  font-size: 12px;
  font-weight: 800;
  color: #6c587b;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.select2-container--default .select2-selection--multiple {
  min-height: 42px;
  border: 1px solid rgb(108 88 123 / 20%);
  border-radius: 12px;
  padding: 4px 8px;
}
.select2-container--default .select2-selection--multiple .select2-selection__choice {
  background:
    linear-gradient(
      135deg,
      #6c587b,
      #5a4868);
  color: #fff;
  border: none;
  border-radius: 8px;
  padding: 4px 10px;
  font-size: 13px;
  font-weight: 600;
}
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove {
  color: rgb(255 255 255 / 70%);
  margin-right: 4px;
}
.select2-container--default .select2-selection--multiple .select2-selection__choice__remove:hover {
  color: #fff;
}
.input-mode-switcher {
  display: flex;
  gap: 4px;
  background: #f0ecf3;
  border-radius: 12px;
  padding: 4px;
  margin-bottom: 12px;
}
.input-mode-btn {
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 8px 12px;
  border: none;
  border-radius: 10px;
  background: transparent;
  color: var(--public-muted, #6b7280);
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
  transition: all 0.25s ease;
}
.input-mode-btn:hover {
  background: rgb(255 255 255 / 60%);
  color: var(--public-ink, #14213d);
}
.input-mode-btn.active {
  background: #fff;
  color: var(--public-brand, #6c587b);
  box-shadow: 0 4px 12px rgb(108 88 123 / 15%);
}
.input-mode-btn i {
  font-size: 14px;
}
.voice-input-area {
  display: none;
  text-align: center;
  padding: 30px 20px;
  background:
    linear-gradient(
      135deg,
      #f8f6fa,
      #f0ecf3);
  border-radius: 16px;
  border: 2px dashed rgb(108 88 123 / 20%);
  margin-bottom: 16px;
  transition: all 0.3s ease;
}
.voice-input-area.active {
  display: block;
  animation: fadeInUp 0.3s ease;
}
.voice-input-area.listening {
  border-color: #28a745;
  background:
    linear-gradient(
      135deg,
      #f0faf4,
      #e8f5e9);
}
@keyframes fadeInUp {
  from {
    opacity: 0;
    transform: translateY(10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.voice-btn {
  width: 72px;
  height: 72px;
  border-radius: 50%;
  border: none;
  background:
    linear-gradient(
      135deg,
      #6c587b,
      #4b395d);
  color: #fff;
  font-size: 28px;
  cursor: pointer;
  transition: all 0.3s ease;
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.voice-btn:hover {
  transform: scale(1.08);
  box-shadow: 0 12px 32px rgb(108 88 123 / 35%);
}
.voice-btn.listening {
  background:
    linear-gradient(
      135deg,
      #28a745,
      #20903c);
  animation: voicePulse 1.5s ease-in-out infinite;
}
@keyframes voicePulse {
  0%, 100% {
    box-shadow: 0 0 0 0 rgb(40 167 69 / 40%);
  }
  50% {
    box-shadow: 0 0 0 20px rgb(40 167 69 / 0%);
  }
}
.voice-status {
  margin-top: 14px;
  font-size: 14px;
  font-weight: 600;
  color: var(--public-muted, #6b7280);
}
.voice-status.listening {
  color: #28a745;
}
.voice-transcript {
  margin-top: 12px;
  padding: 12px 16px;
  background: #fff;
  border-radius: 12px;
  font-size: 14px;
  color: var(--public-ink, #14213d);
  min-height: 40px;
  text-align: left;
  border: 1px solid rgb(108 88 123 / 10%);
}
.ai-thinking-area {
  display: none;
  text-align: center;
  padding: 30px 20px;
  background:
    linear-gradient(
      135deg,
      #f5f0fa,
      #ebe3f3);
  border-radius: 16px;
  border: 2px dashed rgb(108 88 123 / 20%);
  margin-bottom: 16px;
}
.ai-thinking-area.active {
  display: block;
  animation: fadeInUp 0.3s ease;
}
.ai-prompt-input {
  width: 100%;
  border: 1px solid rgb(108 88 123 / 20%);
  border-radius: 12px;
  padding: 12px 16px;
  font-size: 14px;
  resize: none;
  min-height: 80px;
  outline: none;
  transition: border-color 0.2s;
  font-family: inherit;
}
.ai-prompt-input:focus {
  border-color: #6c587b;
  box-shadow: 0 0 0 3px rgb(108 88 123 / 10%);
}
.ai-prompt-input::placeholder {
  color: #999;
}
.ai-submit-btn {
  margin-top: 12px;
  padding: 10px 24px;
  background:
    linear-gradient(
      135deg,
      #e98a5f,
      #d4764e);
  border: none;
  border-radius: 10px;
  color: #fff;
  font-weight: 700;
  font-size: 14px;
  cursor: pointer;
  transition: all 0.2s ease;
}
.ai-submit-btn:hover {
  transform: translateY(-1px);
  box-shadow: 0 8px 20px rgb(233 138 95 / 30%);
}
.ai-response {
  margin-top: 14px;
  padding: 14px 16px;
  background: #fff;
  border-radius: 12px;
  font-size: 14px;
  text-align: left;
  border: 1px solid rgb(108 88 123 / 10%);
  display: none;
}
.ai-response.visible {
  display: block;
  animation: fadeInUp 0.3s ease;
}
.ai-thinking-dots {
  display: inline-flex;
  gap: 4px;
  align-items: center;
}
.ai-thinking-dots span {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #6c587b;
  animation: aiDot 1.4s ease-in-out infinite;
}
.ai-thinking-dots span:nth-child(2) {
  animation-delay: 0.2s;
}
.ai-thinking-dots span:nth-child(3) {
  animation-delay: 0.4s;
}
@keyframes aiDot {
  0%, 80%, 100% {
    opacity: 0.3;
    transform: scale(0.8);
  }
  40% {
    opacity: 1;
    transform: scale(1.2);
  }
}
.form-control {
  border-radius: 12px;
  border: 1px solid rgb(108 88 123 / 20%);
  padding: 10px 14px;
  font-size: 14px;
  transition: border-color 0.2s, box-shadow 0.2s;
  height: auto;
}
.form-control:focus {
  border-color: #6c587b;
  box-shadow: 0 0 0 3px rgb(108 88 123 / 10%);
  outline: none;
}
.form-group label {
  font-weight: 700;
  font-size: 13px;
  color: var(--public-ink, #14213d);
  margin-bottom: 6px;
}
.strength-bar {
  width: 100%;
  height: 5px;
  background: #e9ecef;
  border-radius: 999px;
  margin-top: 8px;
  overflow: hidden;
}
.strength-bar .fill {
  height: 100%;
  border-radius: inherit;
  transition: width 0.3s ease, background 0.3s ease;
  width: 0;
}
.password-requirements {
  list-style: none;
  padding: 0;
  margin: 10px 0 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4px 16px;
  font-size: 12px;
  color: #999;
}
.password-requirements li {
  padding-left: 20px;
  position: relative;
  line-height: 1.6;
}
.password-requirements li::before {
  content: "\f10c";
  font-family: FontAwesome;
  position: absolute;
  left: 0;
  font-size: 10px;
  color: #ccc;
  transition: all 0.2s;
}
.password-requirements li.met {
  color: #28a745;
  font-weight: 600;
}
.password-requirements li.met::before {
  content: "\f058";
  color: #28a745;
}
.match-indicator {
  margin-top: 6px;
  font-size: 12px;
  font-weight: 600;
}
.match-indicator.is-success {
  color: #28a745;
}
.match-indicator.is-error {
  color: #dc3545;
}
.pricing-billing-toggle {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  margin: 30px 0 40px;
}
.pricing-billing-toggle .toggle-label {
  font-size: 14px;
  font-weight: 700;
  color: var(--public-muted, #6b7280);
  cursor: pointer;
  transition: color 0.2s;
}
.pricing-billing-toggle .toggle-label.active {
  color: var(--public-ink, #14213d);
}
.pricing-toggle-switch {
  width: 52px;
  height: 28px;
  background: #e9ecef;
  border-radius: 999px;
  position: relative;
  cursor: pointer;
  transition: background 0.3s;
}
.pricing-toggle-switch.annual {
  background:
    linear-gradient(
      135deg,
      #6c587b,
      #4b395d);
}
.pricing-toggle-switch::after {
  content: "";
  width: 22px;
  height: 22px;
  border-radius: 50%;
  background: #fff;
  position: absolute;
  top: 3px;
  left: 3px;
  transition: transform 0.3s ease;
  box-shadow: 0 2px 6px rgb(0 0 0 / 15%);
}
.pricing-toggle-switch.annual::after {
  transform: translateX(24px);
}
.pricing-save-badge {
  background:
    linear-gradient(
      135deg,
      #28a745,
      #20903c);
  color: #fff;
  padding: 4px 10px;
  border-radius: 999px;
  font-size: 11px;
  font-weight: 800;
  letter-spacing: 0.3px;
}
.pricing-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 24px;
  max-width: 1200px;
  margin: 0 auto;
}
.pricing-card {
  background: rgb(255 255 255 / 95%);
  border-radius: var(--public-radius, 22px);
  padding: 32px 28px;
  border: 1px solid rgb(108 88 123 / 10%);
  transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
}
.pricing-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 20px 50px rgb(20 33 61 / 15%);
}
.pricing-card.featured {
  border-color: #6c587b;
  box-shadow: 0 16px 40px rgb(108 88 123 / 20%);
}
.pricing-card.featured::before {
  content: "Most Popular";
  position: absolute;
  top: -12px;
  left: 50%;
  transform: translateX(-50%);
  background:
    linear-gradient(
      135deg,
      #6c587b,
      #4b395d);
  color: #fff;
  padding: 4px 16px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.5px;
}
.trust-signals {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 20px;
  margin: 0 0 15px;
}
.trust-signal {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  font-weight: 600;
  color: var(--public-muted, #6b7280);
}
.trust-signal i {
  color: #28a745;
  font-size: 16px;
}
.social-proof-bar {
  text-align: center;
  padding: 16px;
  background: rgb(108 88 123 / 4%);
  border-radius: 14px;
  margin: 20px 0;
  font-size: 14px;
  color: var(--public-muted, #6b7280);
}
.social-proof-bar strong {
  color: var(--public-ink, #14213d);
}
.urgency-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background:
    linear-gradient(
      135deg,
      #ff6b6b,
      #ee5a24);
  color: #fff;
  padding: 6px 14px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: 0.3px;
  animation: urgencyPulse 2s ease-in-out infinite;
}
@keyframes urgencyPulse {
  0%, 100% {
    opacity: 1;
  }
  50% {
    opacity: 0.85;
  }
}
.btn-brand {
  border-radius: 12px;
  font-weight: 800;
  letter-spacing: 0.02em;
  transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1);
}
.btn-brand:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 28px rgb(108 88 123 / 30%);
}
.btn-brand:active {
  transform: translateY(0);
}
@media (width <= 480px) {
  .page-content-wrapper {
    padding-top: 100px !important;
  }
  .standalone-card {
    margin: 16px 12px;
    padding: 24px 18px !important;
    border-radius: 16px !important;
  }
  .signup-wizard-card {
    padding: 28px 20px;
  }
  .signup-steps {
    margin-bottom: 24px;
  }
  .signup-step .step-number {
    width: 38px;
    height: 38px;
    font-size: 14px;
  }
  .signup-step .step-label {
    font-size: 10px;
  }
  .step-connector {
    margin: 17px 4px 0;
  }
  .pricing-grid {
    grid-template-columns: 1fr !important;
    gap: 16px;
  }
  .pricing-card {
    padding: 24px 20px;
  }
  .pricing-hero h1,
  .contact-hero h1,
  .home-hero h1 {
    font-size: 26px !important;
  }
  .btn-lg {
    padding: 12px 20px;
    font-size: 15px;
  }
  h1 {
    font-size: 26px;
  }
  h2 {
    font-size: 22px;
  }
  h3 {
    font-size: 18px;
  }
  .input-mode-switcher {
    flex-direction: column;
  }
  .voice-btn {
    width: 60px;
    height: 60px;
    font-size: 24px;
  }
  .password-requirements {
    grid-template-columns: 1fr;
  }
}
@media (width <= 767px) {
  .public-utility-bar {
    height: auto;
    min-height: 32px;
  }
  .public-utility-bar__inner {
    flex-direction: column;
    padding: 4px 10px;
    gap: 2px;
    font-size: 11px;
  }
  .public-utility-bar__message {
    display: none;
  }
  .public-navbar.navbar-default {
    top: 32px !important;
    min-height: 56px;
  }
  .page-content-wrapper {
    padding-top: 110px !important;
  }
  .info-page-content {
    padding-top: 110px !important;
  }
  .signup-step .step-number {
    width: 40px;
    height: 40px;
  }
  .signup-step-buttons {
    flex-direction: column;
  }
  .signup-step-buttons .btn:first-child {
    order: 2;
  }
  .signup-step-buttons .btn:last-child {
    order: 1;
  }
  .pricing-comparison-table {
    font-size: 13px;
  }
  .feature-detail-card {
    padding: 20px 16px;
  }
  .pricing-hero,
  .contact-hero,
  .home-hero {
    padding: 40px 16px !important;
  }
  .trust-signals {
    flex-direction: column;
    align-items: center;
    gap: 10px;
  }
  .pricing-billing-toggle {
    flex-wrap: wrap;
    gap: 8px;
  }
  .footer-cta-band__inner,
  .footer-newsletter-strip__inner {
    flex-direction: column;
    text-align: center;
    padding: 24px 16px;
  }
  .footer-trust-strip__grid,
  .footer-usecase-strip__grid,
  .footer-navigation-strip__grid,
  .footer-global-strip__grid {
    grid-template-columns: 1fr !important;
  }
}
@media (width >= 768px) and (width <= 991px) {
  .page-content-wrapper {
    padding-top: 130px !important;
  }
  .pricing-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .signup-wizard-card {
    max-width: 520px;
  }
}
@media (width >= 992px) and (width <= 1199px) {
  .pricing-grid {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (width >= 1200px) {
  .pricing-grid {
    grid-template-columns: repeat(4, 1fr);
  }
}
.feature-detail-card {
  background: rgb(255 255 255 / 95%);
  border: 1px solid var(--public-border, rgb(20 33 61 / 10%));
  border-radius: var(--public-radius, 22px);
  padding: 28px 24px;
  transition: all 0.3s ease;
  height: 100%;
}
.feature-detail-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 12px 30px rgb(108 88 123 / 12%);
}
.feature-detail-card .feature-icon {
  width: 52px;
  height: 52px;
  border-radius: 14px;
  background:
    linear-gradient(
      135deg,
      #f0ecf3,
      #e8e3ed);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 22px;
  color: #6c587b;
  margin-bottom: 16px;
}
@media print {
  .public-utility-bar,
  .public-navbar,
  .site-footer,
  .page-preloader {
    display: none !important;
  }
  .page-content-wrapper {
    padding-top: 0 !important;
  }
  body {
    padding-top: 0 !important;
  }
}
.footer-section-title {
  font-family: Fraunces, serif;
  font-size: 18px;
  font-weight: 600;
  color: #fff;
  margin-bottom: 20px;
  padding-bottom: 10px;
  border-bottom: 1px solid rgb(255 255 255 / 12%);
}
.footer-section-title i {
  margin-right: 8px;
  color: var(--public-accent, #e98a5f);
}
.footer-industry-strip {
  background-color: #1a1a2e;
  background-image:
    linear-gradient(
      180deg,
      #1a1a2e,
      #16213e);
  padding: 32px 0;
}
.footer-industry-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 12px;
}
.footer-industry-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: 16px 10px;
  border-radius: 12px;
  background-color: rgb(42 44 72 / 70%);
  background: rgb(42 44 72 / 70%);
  border: 1px solid rgb(255 255 255 / 14%);
  color: #e0e6f0;
  text-decoration: none;
  transition: all 0.25s ease;
}
.footer-industry-card:hover {
  background: rgb(255 255 255 / 10%);
  color: #fff;
  text-decoration: none;
  transform: translateY(-3px);
  box-shadow: 0 8px 24px rgb(0 0 0 / 20%);
}
.footer-industry-card:nth-child(1):hover {
  border-color: #6366f1;
  background: rgb(99 102 241 / 15%);
}
.footer-industry-card:nth-child(2):hover {
  border-color: #10b981;
  background: rgb(16 185 129 / 15%);
}
.footer-industry-card:nth-child(3):hover {
  border-color: #f59e0b;
  background: rgb(245 158 11 / 15%);
}
.footer-industry-card:nth-child(4):hover {
  border-color: #8b5cf6;
  background: rgb(139 92 246 / 15%);
}
.footer-industry-card:nth-child(5):hover {
  border-color: #3b82f6;
  background: rgb(59 130 246 / 15%);
}
.footer-industry-card:nth-child(6):hover {
  border-color: #ec4899;
  background: rgb(236 72 153 / 15%);
}
.footer-industry-card:nth-child(7):hover {
  border-color: #78716c;
  background: rgb(120 113 108 / 15%);
}
.footer-industry-card:nth-child(8):hover {
  border-color: #14b8a6;
  background: rgb(20 184 166 / 15%);
}
.footer-industry-card:nth-child(9):hover {
  border-color: #e98a5f;
  background: rgb(233 138 95 / 15%);
}
.footer-industry-card:nth-child(10):hover {
  border-color: #ef4444;
  background: rgb(239 68 68 / 15%);
}
.footer-industry-card i {
  font-size: 24px;
  color: var(--public-accent, #e98a5f);
  margin-bottom: 8px;
}
.footer-industry-card strong {
  font-size: 13px;
  display: block;
  margin-bottom: 4px;
  color: #fff;
}
.footer-industry-card span {
  font-size: 11px;
  opacity: 0.7;
  line-height: 1.3;
}
.footer-usecase-icon {
  font-size: 28px;
  color: var(--public-accent, #e98a5f);
  margin-bottom: 10px;
  display: block;
}
.footer-features-strip {
  background-color: #0f0f23;
  background-image:
    linear-gradient(
      180deg,
      #0f0f23,
      #1a1a2e);
  padding: 32px 0;
}
.footer-features-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.footer-feature-tag {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 8px 16px;
  border-radius: 20px;
  background: rgb(42 44 72 / 80%);
  border: 1px solid rgb(255 255 255 / 10%);
  color: #e2e8f0;
  font-size: 13px;
  text-decoration: none;
  transition: all 0.2s ease;
  white-space: nowrap;
}
.footer-feature-tag:hover {
  background: var(--public-accent, #e98a5f);
  color: #fff;
  text-decoration: none;
  border-color: var(--public-accent, #e98a5f);
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgb(233 138 95 / 30%);
}
.footer-feature-tag:nth-child(1) {
  border-color: #6366f1;
  color: #a5b4fc;
}
.footer-feature-tag:nth-child(2) {
  border-color: #22c55e;
  color: #86efac;
}
.footer-feature-tag:nth-child(3) {
  border-color: #f59e0b;
  color: #fcd34d;
}
.footer-feature-tag:nth-child(4) {
  border-color: #3b82f6;
  color: #93c5fd;
}
.footer-feature-tag:nth-child(5) {
  border-color: #ec4899;
  color: #f9a8d4;
}
.footer-feature-tag:nth-child(6) {
  border-color: #e98a5f;
  color: #f0b48a;
}
.footer-feature-tag:nth-child(7) {
  border-color: #8b5cf6;
  color: #c4b5fd;
}
.footer-feature-tag:nth-child(8) {
  border-color: #14b8a6;
  color: #5eead4;
}
.footer-feature-tag:nth-child(9) {
  border-color: #ef4444;
  color: #fca5a5;
}
.footer-feature-tag:nth-child(10) {
  border-color: #06b6d4;
  color: #67e8f9;
}
.footer-feature-tag:nth-child(11) {
  border-color: #d946ef;
  color: #f0abfc;
}
.footer-feature-tag:nth-child(12) {
  border-color: #84cc16;
  color: #bef264;
}
.footer-feature-tag:nth-child(13) {
  border-color: #f97316;
  color: #fdba74;
}
.footer-feature-tag:nth-child(14) {
  border-color: #10b981;
  color: #6ee7b7;
}
.footer-feature-tag:nth-child(15) {
  border-color: #a855f7;
  color: #d8b4fe;
}
.footer-feature-tag:nth-child(16) {
  border-color: #eab308;
  color: #fde047;
}
.footer-feature-tag i {
  font-size: 14px;
  opacity: 0.8;
}
.footer-compliance-badges {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 16px;
  margin-bottom: 20px;
}
.compliance-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 14px;
  border-radius: 6px;
  background: #e6f8f5;
  border: 1px solid rgb(0 184 148 / 35%);
  color: #0f5f5a;
  font-size: 12px;
  font-weight: 600;
  letter-spacing: 0.3px;
}
.compliance-badge i {
  font-size: 14px;
}
.footer-links-row .col-lg-2 {
  min-height: 1px;
}
.footer-links-row .footer-heading {
  font-size: 13px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  margin-bottom: 12px;
  color: #fff;
}
.footer-links-row .footer-links li {
  margin-bottom: 5px;
}
.footer-links-row .footer-links a {
  font-size: 12.5px;
  line-height: 1.4;
}
.footer-social--inline {
  display: flex;
  gap: 12px;
  margin-top: 16px;
}
.footer-social--inline a {
  width: 36px;
  height: 36px;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: rgb(255 255 255 / 0%);
  border: 1.5px solid rgb(75 57 93 / 35%);
  color: #4b395d;
  transition: all 0.2s ease;
  font-size: 15px;
}
.footer-social--inline a:hover {
  background: var(--public-accent, #e98a5f);
  color: #fff;
}
.footer-trust-icon {
  font-size: 28px;
  color: var(--public-accent, #e98a5f);
  margin-bottom: 10px;
  display: block;
}
.footer-trust-strip__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 20px;
}
.footer-bottom {
  border-top: 1px solid rgb(255 255 255 / 8%);
}
.footer-bottom .footer-copyright {
  font-size: 12px;
}
@media (width <= 991px) {
  .footer-industry-grid {
    grid-template-columns: repeat(3, 1fr);
  }
  .footer-trust-strip__grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .footer-links-row .col-lg-2 {
    width: 33.33%;
    float: left;
  }
}
@media (width <= 767px) {
  .footer-industry-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .footer-trust-strip__grid {
    grid-template-columns: 1fr;
  }
  .footer-links-row .col-lg-2 {
    width: 50%;
  }
  .footer-compliance-badges {
    gap: 8px;
  }
  .compliance-badge {
    font-size: 11px;
    padding: 4px 10px;
  }
  .footer-bottom .row > div {
    text-align: center !important;
    margin-bottom: 10px;
  }
}
@media (width <= 480px) {
  .footer-industry-grid {
    grid-template-columns: 1fr;
  }
  .footer-links-row .col-lg-2 {
    width: 100%;
  }
  .footer-features-grid {
    justify-content: center;
  }
}
body.copy-protected {
  user-select: none;
}
body.copy-protected input,
body.copy-protected textarea,
body.copy-protected select,
body.copy-protected [contenteditable=true],
body.copy-protected pre,
body.copy-protected code {
  user-select: text;
}
.public-pref-select {
  cursor: pointer;
  transition: border-color 0.2s ease;
}
.public-pref-select:focus {
  border-color: var(--public-accent, #e98a5f);
  outline: none;
}
.public-pref-apply {
  transition: all 0.2s ease;
}
.pref-switching {
  opacity: 0.6;
  pointer-events: none;
}
.landing-hero {
  background:
    linear-gradient(
      135deg,
      #6C587B 0%,
      #4b395d 50%,
      #2d2040 100%);
  padding: 80px 0 60px;
  text-align: center;
  color: #fff;
  position: relative;
  overflow: hidden;
}
.landing-hero::before {
  content: "";
  position: absolute;
  top: -50%;
  right: -25%;
  width: 60%;
  height: 200%;
  background:
    radial-gradient(
      ellipse,
      rgb(233 138 95 / 15%) 0%,
      transparent 70%);
  pointer-events: none;
}
.landing-hero h1 {
  font-family: Fraunces, serif;
  font-size: 42px;
  font-weight: 700;
  margin-bottom: 16px;
  line-height: 1.2;
}
.landing-hero .lead {
  font-size: 18px;
  opacity: 0.9;
  max-width: 700px;
  margin: 0 auto 28px;
  line-height: 1.6;
}
.landing-hero-cta {
  display: flex;
  gap: 12px;
  justify-content: center;
  flex-wrap: wrap;
}
.landing-hero-cta .btn {
  min-width: 160px;
  padding: 12px 28px;
  font-weight: 600;
  border-radius: 8px;
}
.landing-features-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  margin: 40px 0;
}
.landing-feature-card {
  background: #fff;
  border-radius: 16px;
  padding: 28px;
  box-shadow: 0 4px 20px rgb(0 0 0 / 6%);
  border: 1px solid rgb(108 88 123 / 8%);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.landing-feature-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 8px 30px rgb(0 0 0 / 10%);
}
.landing-feature-card i {
  font-size: 32px;
  color: var(--public-brand, #6c587b);
  margin-bottom: 14px;
  display: block;
}
.landing-feature-card h3 {
  font-size: 17px;
  font-weight: 600;
  margin-bottom: 8px;
}
.landing-feature-card p {
  font-size: 14px;
  color: #555;
  line-height: 1.6;
}
.landing-testimonial {
  background:
    linear-gradient(
      135deg,
      #fbf8ff,
      #f3eef8);
  padding: 50px 0;
  text-align: center;
}
.landing-testimonial blockquote {
  font-size: 18px;
  font-style: italic;
  color: #333;
  max-width: 700px;
  margin: 0 auto 16px;
  line-height: 1.6;
  border: none;
  padding: 0;
}
.landing-testimonial cite {
  font-size: 14px;
  color: #777;
}
.landing-cta-section {
  background: var(--public-brand, #6c587b);
  padding: 50px 0;
  text-align: center;
  color: #fff;
}
.landing-cta-section h2 {
  font-family: Fraunces, serif;
  font-size: 30px;
  margin-bottom: 16px;
}
.landing-cta-section p {
  font-size: 16px;
  opacity: 0.9;
  margin-bottom: 24px;
}
@media (width <= 767px) {
  .landing-hero h1 {
    font-size: 28px;
  }
  .landing-features-grid {
    grid-template-columns: 1fr;
  }
}
.about-capability-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 24px;
  margin-top: 32px;
}
.about-capability-card {
  background: #fff;
  border: 1px solid rgb(108 88 123 / 12%);
  border-radius: 20px;
  box-shadow: 0 16px 34px rgb(15 23 42 / 6%);
  padding: 28px;
  height: 100%;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}
.about-capability-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 12px 30px rgb(108 88 123 / 12%);
}
.about-capability-card h3 {
  color: #241c2b;
  font-size: 1.15rem;
  font-weight: 700;
  margin: 0 0 12px;
}
.about-capability-card p {
  color: #655f6c;
  line-height: 1.75;
  margin: 0;
  font-size: 0.95rem;
}
@media (width <= 991px) {
  .about-capability-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 18px;
  }
}
@media (width <= 575px) {
  .about-capability-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }
}
.pricing-cards {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 22px;
  margin: 10px 0 50px;
}
.pricing-buyers-guide {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 18px;
  margin-bottom: 32px;
}
.pricing-guide-card {
  background: #fff;
  border: 1px solid rgb(108 88 123 / 10%);
  border-radius: 16px;
  padding: 22px;
  box-shadow: 0 8px 20px rgb(15 23 42 / 4%);
  transition: transform 0.2s ease;
}
.pricing-guide-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 12px 28px rgb(108 88 123 / 10%);
}
.pricing-guide-card strong {
  display: block;
  font-size: 1rem;
  color: #241c2b;
  margin-bottom: 8px;
}
.pricing-guide-card span {
  display: block;
  font-size: 0.9rem;
  line-height: 1.6;
  color: #665f6d;
}
.pricing-includes-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 22px;
  margin-top: 28px;
}
.pricing-include-card {
  background: #fff;
  border: 1px solid rgb(108 88 123 / 10%);
  border-radius: 18px;
  padding: 24px;
  box-shadow: 0 10px 24px rgb(15 23 42 / 4%);
}
.pricing-include-card h3 {
  font-size: 1.05rem;
  color: #241c2b;
  margin: 0 0 10px;
  font-weight: 700;
}
.pricing-include-card p {
  color: #665f6d;
  line-height: 1.65;
  margin: 0;
  font-size: 0.92rem;
}
.pricing-feature-inventory {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 22px;
  margin-top: 28px;
}
.pricing-stack-card {
  background: #fff;
  border: 1px solid rgb(108 88 123 / 10%);
  border-radius: 18px;
  padding: 24px;
  box-shadow: 0 8px 20px rgb(15 23 42 / 4%);
}
.pricing-stack-card h3 {
  font-size: 1.05rem;
  color: #241c2b;
  font-weight: 700;
  margin: 0 0 14px;
}
.pricing-stack-card ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.pricing-stack-card ul li {
  padding: 5px 0 5px 22px;
  position: relative;
  color: #555;
  font-size: 0.92rem;
  line-height: 1.55;
}
.pricing-stack-card ul li::before {
  content: "\f00c";
  font-family: FontAwesome;
  position: absolute;
  left: 0;
  color: #6c587b;
  font-size: 12px;
}
.pricing-integration-coverage-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 22px;
  margin-top: 28px;
}
.pricing-compare-expand-btn {
  display: none;
}
.pricing-compare-table-wrap {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  border-radius: 16px;
  border: 1px solid rgb(108 88 123 / 10%);
  box-shadow: 0 8px 24px rgb(15 23 42 / 4%);
  margin-top: 24px;
}
.pricing-compare-table {
  width: 100%;
  min-width: 800px;
  border-collapse: collapse;
}
.pricing-compare-table th,
.pricing-compare-table td {
  padding: 12px 14px;
  border-bottom: 1px solid rgb(108 88 123 / 8%);
  font-size: 0.88rem;
  text-align: center;
  white-space: nowrap;
}
.pricing-compare-table th:first-child,
.pricing-compare-table td:first-child {
  text-align: left;
  white-space: normal;
  min-width: 180px;
}
.pricing-compare-table thead th {
  background: #f8f5fb;
  color: #241c2b;
  font-weight: 700;
  position: sticky;
  top: 0;
  z-index: 2;
}
.pricing-check--yes {
  color: #22a06b;
  font-weight: 600;
}
.pricing-check--no {
  color: #bbb;
}
.pricing-roadmap-grid,
.pricing-integration-path-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 22px;
  margin-top: 24px;
}
.about-proof-strip {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 22px;
  margin-top: 24px;
}
.about-proof-item {
  background: rgb(108 88 123 / 4%);
  border-radius: 16px;
  padding: 22px;
  border: 1px solid rgb(108 88 123 / 8%);
}
.about-proof-item strong {
  display: block;
  font-size: 1rem;
  color: #241c2b;
  margin-bottom: 6px;
}
.about-proof-item span {
  font-size: 0.92rem;
  color: #665f6d;
  line-height: 1.6;
}
.about-features-row {
  margin-top: 28px;
}
.about-feature {
  text-align: center;
  padding: 28px 20px;
  min-height: 180px;
}
.about-feature .feature-icon {
  font-size: 32px;
  color: #6c587b;
  margin-bottom: 16px;
  display: block;
}
.about-feature h4 {
  font-size: 1.05rem;
  font-weight: 700;
  color: #241c2b;
  margin-bottom: 10px;
}
.about-feature p {
  font-size: 0.9rem;
  color: #665f6d;
  line-height: 1.6;
}
.final-cta {
  text-align: center;
  padding: 50px 20px;
  margin: 50px 0 0;
  background:
    linear-gradient(
      135deg,
      #f8f5fb 0%,
      #ede7f4 100%);
  border-radius: 24px;
}
.final-cta h3 {
  font-size: 1.5rem;
  font-weight: 700;
  color: #241c2b;
  margin-bottom: 14px;
}
.final-cta p {
  color: #665f6d;
  max-width: 600px;
  margin: 0 auto 24px;
  line-height: 1.7;
}
.final-cta-actions {
  display: flex;
  gap: 12px;
  justify-content: center;
  flex-wrap: wrap;
}
.solution-finder-wizard {
  background: #fff;
  border-radius: 24px;
  border: 1px solid rgb(108 88 123 / 10%);
  box-shadow: 0 16px 48px rgb(15 23 42 / 6%);
  padding: 40px;
  margin: 40px 0;
}
.solution-finder-steps {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0;
  margin-bottom: 36px;
}
.solution-finder-step {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  min-width: 100px;
  cursor: pointer;
}
.solution-finder-step .sf-step-num {
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: #f0ecf3;
  color: #999;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  font-size: 15px;
  transition: all 0.35s ease;
  border: 3px solid transparent;
}
.solution-finder-step.active .sf-step-num {
  background:
    linear-gradient(
      135deg,
      #6C587B,
      #4b395d);
  color: #fff;
  border-color: rgb(108 88 123 / 30%);
  box-shadow: 0 8px 20px rgb(108 88 123 / 30%);
  transform: scale(1.08);
}
.solution-finder-step.done .sf-step-num {
  background:
    linear-gradient(
      135deg,
      #22a06b,
      #1a8c5a);
  color: #fff;
  border-color: rgb(34 160 107 / 30%);
}
.solution-finder-step .sf-step-label {
  font-size: 12px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  color: #999;
  transition: color 0.3s;
}
.solution-finder-step.active .sf-step-label {
  color: #6C587B;
}
.solution-finder-step.done .sf-step-label {
  color: #22a06b;
}
.sf-step-connector {
  flex: 1;
  height: 3px;
  background: #e9ecef;
  margin: 0 8px;
  border-radius: 3px;
  transition: background 0.4s;
  align-self: flex-start;
  margin-top: 20px;
}
.sf-step-connector.done {
  background:
    linear-gradient(
      90deg,
      #22a06b,
      #6C587B);
}
.sf-features-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 14px;
  margin-top: 20px;
}
.sf-feature-item {
  display: flex;
  align-items: flex-start;
  gap: 12px;
  padding: 16px;
  border: 1px solid rgb(108 88 123 / 10%);
  border-radius: 14px;
  background: #faf9fc;
  cursor: pointer;
  transition: all 0.2s ease;
}
.sf-feature-item:hover {
  border-color: #6c587b;
  background: #f5f0f8;
}
.sf-feature-item.selected {
  border-color: #6c587b;
  background:
    linear-gradient(
      135deg,
      #f0ecf5,
      #e8e0f0);
  box-shadow: 0 4px 14px rgb(108 88 123 / 12%);
}
.sf-feature-item input[type=checkbox] {
  margin-top: 3px;
  accent-color: #6c587b;
  width: 18px;
  height: 18px;
}
.sf-feature-info {
  flex: 1;
}
.sf-feature-info strong {
  display: block;
  font-size: 0.95rem;
  color: #241c2b;
  margin-bottom: 4px;
}
.sf-feature-info small {
  color: #888;
  font-size: 0.82rem;
  line-height: 1.4;
}
.sf-feature-price {
  font-size: 0.88rem;
  font-weight: 700;
  color: #6c587b;
  white-space: nowrap;
}
.sf-result-summary {
  background:
    linear-gradient(
      135deg,
      #f8f5fb,
      #ede7f4);
  border-radius: 20px;
  padding: 32px;
  margin-top: 28px;
  border: 1px solid rgb(108 88 123 / 12%);
}
.sf-result-summary h3 {
  font-size: 1.3rem;
  color: #241c2b;
  margin-bottom: 18px;
}
.sf-result-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 10px 0;
  border-bottom: 1px solid rgb(108 88 123 / 8%);
}
.sf-result-row:last-child {
  border-bottom: none;
  font-weight: 700;
  font-size: 1.1rem;
  color: #6c587b;
  padding-top: 16px;
  margin-top: 8px;
  border-top: 2px solid #6c587b;
}
.platform-module-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(265px, 1fr));
  gap: 22px;
  margin-top: 28px;
}
.platform-module-card {
  background: #fff;
  border: 1px solid rgb(108 88 123 / 10%);
  border-radius: 20px;
  padding: 28px;
  box-shadow: 0 12px 30px rgb(15 23 42 / 5%);
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}
.platform-module-card:hover {
  transform: translateY(-4px);
  box-shadow: 0 18px 40px rgb(108 88 123 / 12%);
}
.platform-module-card i {
  font-size: 28px;
  color: #6c587b;
  margin-bottom: 14px;
  display: block;
}
.platform-module-card h3 {
  font-size: 1.08rem;
  font-weight: 700;
  color: #241c2b;
  margin-bottom: 10px;
}
.platform-module-card p {
  font-size: 0.9rem;
  color: #665f6d;
  line-height: 1.65;
  margin: 0;
}
.products-hero .platform-highlights {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 16px;
  margin-top: 28px;
}
.products-hero .highlight-card {
  background: rgb(255 255 255 / 12%);
  border: 1px solid rgb(255 255 255 / 20%);
  border-radius: 14px;
  padding: 18px;
  color: #fff;
  text-align: center;
}
.products-hero .highlight-card i {
  font-size: 24px;
  color: #e98a5f;
  margin-bottom: 8px;
  display: block;
}
.products-hero .highlight-card strong {
  display: block;
  font-size: 0.95rem;
  margin-bottom: 4px;
}
.products-hero .highlight-card span {
  font-size: 0.82rem;
  opacity: 0.85;
}
.blueprint-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 22px;
  margin-top: 28px;
}
.blueprint-card {
  background: #fff;
  border: 1px solid rgb(108 88 123 / 10%);
  border-radius: 20px;
  padding: 28px;
  box-shadow: 0 10px 28px rgb(15 23 42 / 5%);
  transition: transform 0.2s ease;
}
.blueprint-card:hover {
  transform: translateY(-3px);
}
.blueprint-card .blueprint-icon {
  font-size: 28px;
  color: #6c587b;
  margin-bottom: 12px;
}
.blueprint-card h3 {
  font-size: 1.05rem;
  font-weight: 700;
  color: #241c2b;
  margin-bottom: 8px;
}
.blueprint-card p {
  color: #665f6d;
  line-height: 1.6;
  font-size: 0.9rem;
}
.architecture-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 22px;
  margin-top: 28px;
}
.rollout-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 22px;
  margin-top: 28px;
}
.rollout-card {
  background: #fff;
  border: 1px solid rgb(108 88 123 / 10%);
  border-radius: 18px;
  padding: 24px;
  box-shadow: 0 8px 20px rgb(15 23 42 / 4%);
}
.rollout-card .stage-badge {
  display: inline-block;
  padding: 4px 12px;
  border-radius: 20px;
  background: #f0ecf3;
  color: #6c587b;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.03em;
  margin-bottom: 12px;
}
.rollout-card h3 {
  font-size: 1.05rem;
  font-weight: 700;
  color: #241c2b;
  margin-bottom: 8px;
}
.rollout-card p {
  color: #665f6d;
  font-size: 0.9rem;
  line-height: 1.6;
}
.quote-builder-container {
  background: #fff;
  border-radius: 24px;
  border: 1px solid rgb(108 88 123 / 10%);
  box-shadow: 0 20px 60px rgb(15 23 61 / 8%);
  padding: 48px;
  margin: 40px 0;
}
.quote-builder-container h2 {
  font-family: Fraunces, serif;
  font-size: 1.6rem;
  color: #241c2b;
  margin-bottom: 8px;
}
.quote-builder-container .quote-lead {
  color: #665f6d;
  font-size: 0.95rem;
  margin-bottom: 32px;
}
.quote-builder-sections {
  display: grid;
  grid-template-columns: 1fr 340px;
  gap: 36px;
}
@media (width <= 991px) {
  .quote-builder-sections {
    grid-template-columns: 1fr;
  }
}
.quote-config-panel {
  display: flex;
  flex-direction: column;
  gap: 28px;
}
.quote-section-group h3,
.quote-section-group h4 {
  font-size: 1rem;
  font-weight: 700;
  color: #241c2b;
  margin-bottom: 14px;
  padding-bottom: 8px;
  border-bottom: 1px solid rgb(108 88 123 / 10%);
}
.quote-section-group h3 i,
.quote-section-group h4 i {
  color: #6c587b;
  margin-right: 8px;
}
.quote-option-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 12px 16px;
  border-radius: 12px;
  background: #faf9fc;
  margin-bottom: 8px;
  border: 1px solid rgb(108 88 123 / 6%);
  transition: all 0.2s ease;
}
.quote-option-row:hover {
  background: #f0ecf5;
  border-color: rgb(108 88 123 / 15%);
}
.quote-option-row label {
  display: flex;
  align-items: center;
  gap: 10px;
  cursor: pointer;
  flex: 1;
  margin: 0;
  font-size: 0.92rem;
  color: #333;
}
.quote-option-row input[type=checkbox],
.quote-option-row input[type=radio] {
  accent-color: #6c587b;
  width: 17px;
  height: 17px;
}
.quote-option-price {
  font-weight: 700;
  color: #6c587b;
  font-size: 0.88rem;
  white-space: nowrap;
}
.quote-slider-row {
  padding: 14px 16px;
  border-radius: 12px;
  background: #faf9fc;
  margin-bottom: 8px;
}
.quote-slider-row label {
  display: block;
  font-weight: 600;
  margin-bottom: 10px;
  color: #333;
  font-size: 0.92rem;
}
.quote-slider-row input[type=range] {
  width: 100%;
  accent-color: #6c587b;
}
.quote-slider-row .slider-value {
  text-align: right;
  font-weight: 700;
  color: #6c587b;
  font-size: 0.95rem;
  margin-top: 4px;
}
.quote-summary-panel {
  background:
    linear-gradient(
      135deg,
      #f8f5fb,
      #ede7f4);
  border-radius: 20px;
  padding: 32px;
  position: sticky;
  top: 140px;
  border: 1px solid rgb(108 88 123 / 12%);
}
.quote-summary-panel h3 {
  font-size: 1.2rem;
  color: #241c2b;
  margin-bottom: 20px;
  font-weight: 700;
}
.quote-summary-line {
  display: flex;
  justify-content: space-between;
  padding: 8px 0;
  font-size: 0.9rem;
  color: #555;
  border-bottom: 1px solid rgb(108 88 123 / 8%);
}
.quote-summary-total {
  display: flex;
  justify-content: space-between;
  padding: 16px 0 0;
  margin-top: 12px;
  border-top: 2px solid #6c587b;
  font-size: 1.15rem;
  font-weight: 800;
  color: #6c587b;
}
.quote-summary-total .total-period {
  font-size: 0.82rem;
  font-weight: 400;
  color: #888;
}
.quote-cta-buttons {
  margin-top: 24px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.quote-cta-buttons .btn {
  border-radius: 12px;
  padding: 12px 20px;
  font-weight: 700;
  font-size: 0.95rem;
  text-align: center;
}
@media (width <= 767px) {
  .pricing-cards {
    grid-template-columns: 1fr;
  }
  .pricing-buyers-guide {
    grid-template-columns: 1fr;
  }
  .pricing-includes-grid {
    grid-template-columns: 1fr;
  }
  .quote-builder-sections {
    grid-template-columns: 1fr;
  }
  .quote-builder-container {
    padding: 24px;
  }
  .solution-finder-wizard {
    padding: 24px;
  }
  .sf-features-grid {
    grid-template-columns: 1fr;
  }
  .sf-result-summary {
    padding: 20px;
  }
  .about-proof-strip {
    grid-template-columns: 1fr;
  }
}
@media (width >= 768px) and (width <= 991px) {
  .pricing-cards {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (width >= 992px) and (width <= 1399px) {
  .pricing-cards {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (width >= 1400px) {
  .pricing-cards {
    grid-template-columns: repeat(4, 1fr);
  }
}
.info-page-body .public-story-section,
.info-page-body .about-capabilities-shell,
.info-page-body .about-mission-shell,
.info-page-body .about-values-shell,
.info-page-body .final-cta {
  max-width: none;
  width: 100%;
}
.info-page-body {
  max-width: none !important;
}
.info-page-body > .crm-about-content {
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
}
.pricing-compare-detailed {
  min-width: 1100px;
}
.pricing-compare-detailed th,
.pricing-compare-detailed td {
  font-size: 0.82rem;
  padding: 10px 12px;
  vertical-align: middle;
  white-space: normal;
}
.pricing-compare-detailed th.compare-feature-col,
.pricing-compare-detailed .compare-feature-label {
  text-align: left;
  min-width: 200px;
  font-weight: 600;
  color: #14213d;
}
.pricing-compare-detailed .compare-category-row td {
  background:
    linear-gradient(
      135deg,
      #f6f0fb 0%,
      #eee7f5 100%);
  font-size: 0.85rem;
  font-weight: 700;
  color: #6c587b;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  padding: 12px 14px;
  border-bottom: 2px solid rgb(108 88 123 / 15%);
}
.pricing-compare-detailed .compare-tier-value {
  text-align: center;
  font-size: 0.8rem;
  color: #333;
  line-height: 1.4;
}
.pricing-compare-detailed .compare-tier-none {
  color: #c0b8c8;
}
.pricing-compare-detailed .compare-dash {
  font-size: 1.1rem;
  color: #d0c8d8;
}
.pricing-compare-detailed tbody tr:hover td {
  background: rgb(108 88 123 / 4%);
}
.pricing-compare-detailed thead th {
  background: #f8f5fb;
  position: sticky;
  top: 0;
  z-index: 3;
  font-size: 0.78rem;
  font-weight: 700;
  color: #6c587b;
  border-bottom: 2px solid rgb(108 88 123 / 12%);
  text-align: center;
  padding: 14px 10px;
  white-space: nowrap;
}
.pricing-compare-detailed thead th:first-child {
  text-align: left;
  min-width: 200px;
}
.pricing-coverage-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 20px;
  margin-top: 24px;
}
.pricing-coverage-card {
  background: #fff;
  border: 1px solid rgb(108 88 123 / 10%);
  border-radius: 16px;
  padding: 24px;
  box-shadow: 0 4px 16px rgb(15 23 42 / 5%);
}
.pricing-coverage-card h3 {
  font-size: 1rem;
  font-weight: 700;
  color: #14213d;
  margin: 0 0 8px;
}
.pricing-coverage-card p {
  font-size: 0.88rem;
  color: #666;
  margin: 0 0 14px;
  line-height: 1.6;
}
.pricing-coverage-tiers {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.pricing-coverage-tier {
  display: inline-block;
  background: #f6f0fb;
  border-radius: 8px;
  padding: 4px 10px;
  font-size: 0.78rem;
  color: #6c587b;
}
.pricing-coverage-tier strong {
  color: #14213d;
}
.pricing-implementation-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 20px;
  margin-top: 24px;
}
.pricing-implementation-card {
  background: #fff;
  border: 1px solid rgb(108 88 123 / 10%);
  border-radius: 16px;
  padding: 24px;
  box-shadow: 0 4px 16px rgb(15 23 42 / 5%);
}
.pricing-implementation-card span {
  display: inline-block;
  background: #f6f0fb;
  color: #6c587b;
  font-size: 0.75rem;
  font-weight: 700;
  padding: 3px 10px;
  border-radius: 999px;
  margin-bottom: 10px;
  text-transform: uppercase;
  letter-spacing: 0.04em;
}
.pricing-implementation-card h3 {
  font-size: 1rem;
  font-weight: 700;
  color: #14213d;
  margin: 0 0 8px;
}
.pricing-implementation-card p {
  font-size: 0.88rem;
  color: #666;
  line-height: 1.6;
  margin: 0;
}
.pricing-addons-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 20px;
  margin-top: 24px;
}
.pricing-addon-card {
  background: #fff;
  border: 1px solid rgb(108 88 123 / 10%);
  border-radius: 16px;
  padding: 22px;
  box-shadow: 0 4px 16px rgb(15 23 42 / 5%);
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}
.pricing-addon-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgb(15 23 42 / 8%);
}
.pricing-addon-card h3 {
  font-size: 0.95rem;
  font-weight: 700;
  color: #14213d;
  margin: 0 0 6px;
}
.pricing-addon-card p {
  font-size: 0.82rem;
  color: #666;
  line-height: 1.5;
  margin: 0 0 12px;
}
.pricing-addon-price {
  display: inline-block;
  background:
    linear-gradient(
      135deg,
      #6c587b,
      #4b395d);
  color: #fff;
  font-size: 0.82rem;
  font-weight: 700;
  padding: 4px 14px;
  border-radius: 999px;
}
.pricing-stack-card {
  background: #fff;
  border: 1px solid rgb(108 88 123 / 10%);
  border-radius: 16px;
  padding: 24px;
  text-align: center;
  box-shadow: 0 4px 16px rgb(15 23 42 / 5%);
  margin-bottom: 20px;
}
.pricing-stack-card i {
  font-size: 2rem;
  color: #6c587b;
  margin-bottom: 12px;
  display: block;
}
.pricing-stack-card h3 {
  font-size: 1rem;
  font-weight: 700;
  margin: 0 0 8px;
}
.pricing-stack-card p {
  font-size: 0.88rem;
  color: #666;
  line-height: 1.6;
  margin: 0;
}
.pricing-integration-path-table-wrap {
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  border-radius: 16px;
  border: 1px solid rgb(108 88 123 / 10%);
  margin-top: 20px;
}
.pricing-integration-path-table {
  width: 100%;
  min-width: 600px;
  border-collapse: collapse;
}
.pricing-integration-path-table thead th {
  background: #f8f5fb;
  padding: 12px 16px;
  text-align: left;
  font-size: 0.85rem;
  font-weight: 700;
  color: #6c587b;
  border-bottom: 2px solid rgb(108 88 123 / 12%);
}
.pricing-integration-path-table tbody td {
  padding: 14px 16px;
  font-size: 0.88rem;
  border-bottom: 1px solid rgb(108 88 123 / 6%);
  vertical-align: top;
}
.pricing-integration-phase {
  display: inline-block;
  background: #f6f0fb;
  color: #6c587b;
  font-size: 0.72rem;
  font-weight: 700;
  padding: 2px 8px;
  border-radius: 999px;
  margin-bottom: 4px;
  text-transform: uppercase;
}
.pricing-enterprise-cta {
  background:
    linear-gradient(
      135deg,
      #6c587b 0%,
      #3d2a51 100%);
  border-radius: 24px;
  padding: 48px 40px;
  margin: 48px 0;
  color: #fff;
}
.pricing-enterprise-cta__inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 32px;
  flex-wrap: wrap;
}
.pricing-enterprise-cta__inner h2 {
  color: #fff;
  font-size: 1.4rem;
  margin: 8px 0;
}
.pricing-enterprise-cta__inner p {
  color: rgb(255 255 255 / 85%);
  margin: 0;
}
.pricing-enterprise-cta__inner .pricing-section-eyebrow {
  color: rgb(255 255 255 / 70%);
}
.pricing-enterprise-cta__actions {
  display: flex;
  gap: 12px;
  flex-shrink: 0;
}
.pricing-enterprise-cta .btn-default {
  background: rgb(255 255 255 / 15%);
  color: #fff;
  border-color: rgb(255 255 255 / 30%);
}
.pricing-enterprise-cta .btn-default:hover {
  background: rgb(255 255 255 / 25%);
}
.pricing-intro-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 18px;
  margin-bottom: 32px;
}
.pricing-intro-card {
  background: #fff;
  border: 1px solid rgb(108 88 123 / 10%);
  border-radius: 14px;
  padding: 20px;
  box-shadow: 0 4px 12px rgb(15 23 42 / 4%);
}
.pricing-intro-card strong {
  display: block;
  color: #14213d;
  font-size: 0.92rem;
  margin-bottom: 4px;
}
.pricing-intro-card span {
  font-size: 0.84rem;
  color: #666;
  line-height: 1.5;
}
@media (width <= 767px) {
  .pricing-compare-detailed {
    min-width: 900px;
  }
  .pricing-compare-table-wrap {
    max-height: 520px;
    overflow-y: hidden;
    position: relative;
  }
  .pricing-compare-table-wrap.is-expanded {
    max-height: none;
    overflow-y: visible;
  }
  .pricing-compare-table-wrap:not(.is-expanded)::after {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    height: 90px;
    background:
      linear-gradient(
        to bottom,
        transparent,
        #fff);
    pointer-events: none;
    z-index: 2;
  }
  .pricing-compare-expand-btn {
    display: block;
    width: 100%;
    margin: 16px 0 0;
    padding: 12px 20px;
    font-size: 0.95rem;
    font-weight: 600;
    color: #fff;
    background: #6c587b;
    border: 0;
    border-radius: 12px;
    cursor: pointer;
    text-align: center;
  }
  .pricing-compare-expand-btn:hover,
  .pricing-compare-expand-btn:focus {
    background: #5a4869;
  }
  .pricing-enterprise-cta__inner {
    flex-direction: column;
    text-align: center;
  }
  .pricing-enterprise-cta__actions {
    justify-content: center;
  }
  .pricing-coverage-grid {
    grid-template-columns: 1fr;
  }
}
.footer-quickstart {
  background-color: #1a1a2e;
  background-image:
    linear-gradient(
      135deg,
      #1a1a2e 0%,
      #2d1f3d 50%,
      #6c587b 100%);
  padding: 64px 0;
  color: #fff;
  text-align: center;
  position: relative;
  overflow: hidden;
}
.footer-quickstart::before {
  content: "";
  position: absolute;
  top: -40%;
  left: 20%;
  width: 400px;
  height: 400px;
  border-radius: 50%;
  background:
    radial-gradient(
      circle,
      rgb(233 138 95 / 15%) 0%,
      transparent 70%);
  pointer-events: none;
}
.footer-quickstart::after {
  content: "";
  position: absolute;
  bottom: -30%;
  right: 10%;
  width: 300px;
  height: 300px;
  border-radius: 50%;
  background:
    radial-gradient(
      circle,
      rgb(108 88 123 / 20%) 0%,
      transparent 70%);
  pointer-events: none;
}
.footer-quickstart__title {
  font-family: Fraunces, serif;
  font-size: 1.8rem;
  margin: 0 0 6px;
  position: relative;
}
.footer-quickstart__title i {
  color: #e98a5f;
  margin-right: 8px;
}
.footer-quickstart__sub {
  font-size: 15px;
  opacity: 0.75;
  margin: 0 0 36px;
  position: relative;
}
.footer-quickstart__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
  max-width: 960px;
  margin: 0 auto;
  position: relative;
}
.footer-quickstart__step {
  background: rgb(255 255 255 / 7%);
  border: 1px solid rgb(255 255 255 / 12%);
  border-radius: 20px;
  padding: 36px 24px 28px;
  transition: all 0.3s ease;
  backdrop-filter: blur(4px);
  position: relative;
}
.footer-quickstart__step:hover {
  background: rgb(255 255 255 / 12%);
  transform: translateY(-4px);
  box-shadow: 0 16px 40px rgb(0 0 0 / 20%);
}
.footer-quickstart__num {
  position: absolute;
  top: -16px;
  left: 50%;
  transform: translateX(-50%);
  width: 32px;
  height: 32px;
  border-radius: 50%;
  font-weight: 700;
  font-size: 14px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.footer-quickstart__step--1 .footer-quickstart__num {
  background:
    linear-gradient(
      135deg,
      #e98a5f,
      #f5af19);
  color: #fff;
}
.footer-quickstart__step--2 .footer-quickstart__num {
  background:
    linear-gradient(
      135deg,
      #667eea,
      #764ba2);
  color: #fff;
}
.footer-quickstart__step--3 .footer-quickstart__num {
  background:
    linear-gradient(
      135deg,
      #22a06b,
      #36d1dc);
  color: #fff;
}
.footer-quickstart__icon {
  width: 56px;
  height: 56px;
  border-radius: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 24px;
  margin: 0 auto 16px;
}
.footer-quickstart__step--1 .footer-quickstart__icon {
  background: rgb(233 138 95 / 20%);
  color: #e98a5f;
}
.footer-quickstart__step--2 .footer-quickstart__icon {
  background: rgb(102 126 234 / 20%);
  color: #667eea;
}
.footer-quickstart__step--3 .footer-quickstart__icon {
  background: rgb(34 160 107 / 20%);
  color: #22a06b;
}
.footer-quickstart__step h5 {
  font-family: Fraunces, serif;
  font-size: 1.1rem;
  margin: 0 0 8px;
}
.footer-quickstart__step p {
  font-size: 14px;
  opacity: 0.8;
  line-height: 1.6;
  margin: 0 0 16px;
}
.footer-quickstart__btn.btn-brand {
  background: #e98a5f;
  border-color: #e98a5f;
  color: #1a1626 !important;
  border-radius: 8px;
  font-weight: 700;
}
.footer-quickstart__btn.btn-outline {
  background: rgb(0 0 0 / 28%);
  border: 1px solid rgb(255 255 255 / 35%);
  color: #fff;
  border-radius: 8px;
  font-weight: 600;
}
.footer-quickstart__btn.btn-outline:hover {
  background: rgb(255 255 255 / 10%);
  border-color: rgb(255 255 255 / 60%);
}
.footer-proof-strip {
  background:
    linear-gradient(
      135deg,
      #f0ebf5,
      #ece8f0);
  padding: 40px 0;
}
.footer-proof-grid {
  display: flex;
  justify-content: space-around;
  flex-wrap: wrap;
  gap: 20px;
  text-align: center;
}
.footer-proof-item {
  padding: 8px 16px;
}
.footer-proof-value {
  display: block;
  font-family: Fraunces, serif;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.2;
}
.footer-proof-item:nth-child(1) .footer-proof-value {
  color: #6366f1;
}
.footer-proof-item:nth-child(2) .footer-proof-value {
  color: #22c55e;
}
.footer-proof-item:nth-child(3) .footer-proof-value {
  color: #3b82f6;
}
.footer-proof-item:nth-child(4) .footer-proof-value {
  color: #e98a5f;
}
.footer-proof-item:nth-child(5) .footer-proof-value {
  color: #f59e0b;
}
.footer-proof-item:nth-child(6) .footer-proof-value {
  color: #ec4899;
}
.footer-proof-label {
  font-size: 13px;
  color: #666;
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: 0.05em;
}
.footer-compare-strip {
  padding: 48px 0;
  background: #fff;
}
.footer-compare-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
  margin-top: 20px;
}
.footer-compare-card {
  padding: 20px;
  border-radius: 14px;
  border: 1px solid #e8e4ed;
  text-decoration: none;
  color: inherit;
  transition: all 0.25s ease;
  display: block;
  position: relative;
  overflow: hidden;
}
.footer-compare-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  opacity: 0;
  transition: opacity 0.25s;
}
.footer-compare-card:nth-child(1)::before {
  background:
    linear-gradient(
      90deg,
      #00A1E0,
      #0070D2);
  opacity: 1;
}
.footer-compare-card:nth-child(2)::before {
  background:
    linear-gradient(
      90deg,
      #FF7A59,
      #ff5c35);
  opacity: 1;
}
.footer-compare-card:nth-child(3)::before {
  background:
    linear-gradient(
      90deg,
      #6c63ff,
      #4840bb);
  opacity: 1;
}
.footer-compare-card:nth-child(4)::before {
  background:
    linear-gradient(
      90deg,
      #f04f36,
      #dc1f2e);
  opacity: 1;
}
.footer-compare-card:nth-child(1) strong {
  color: #005a9c;
}
.footer-compare-card:nth-child(2) strong {
  color: #c94a2b;
}
.footer-compare-card:nth-child(3) strong {
  color: #4b3f9f;
}
.footer-compare-card:nth-child(4) strong {
  color: #c23a2b;
}
.footer-compare-card:hover {
  text-decoration: none;
  border-color: #6c587b;
  box-shadow: 0 8px 24px rgb(108 88 123 / 12%);
  transform: translateY(-2px);
}
.footer-compare-card:hover::before {
  opacity: 1;
}
.footer-compare-card strong {
  display: block;
  font-size: 1rem;
  color: #6c587b;
  margin-bottom: 6px;
}
.footer-compare-card span {
  font-size: 13px;
  color: #4a4a4a;
  line-height: 1.5;
}
.footer-section-title {
  font-family: Fraunces, serif;
  font-size: 1.3rem;
  color: #14213d;
  position: relative;
  display: inline-block;
  padding-bottom: 8px;
}
.footer-section-title::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 60px;
  height: 3px;
  border-radius: 2px;
  background:
    linear-gradient(
      90deg,
      #6c587b,
      #e98a5f);
}
.footer-section-title i {
  margin-right: 8px;
  color: #e98a5f;
}
@media (width <= 992px) {
  .footer-quickstart__grid {
    grid-template-columns: 1fr;
    max-width: 400px;
  }
  .footer-compare-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (width <= 767px) {
  .footer-quickstart {
    padding: 48px 0;
  }
  .footer-quickstart__title {
    font-size: 1.4rem;
  }
  .footer-proof-grid {
    gap: 12px;
  }
  .footer-proof-value {
    font-size: 1.5rem;
  }
  .footer-compare-grid {
    grid-template-columns: 1fr;
  }
}
.demo-step-indicator {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 0;
  margin: 32px auto 8px;
  max-width: 260px;
}
.demo-step-dot {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: rgb(255 255 255 / 15%);
  color: rgb(255 255 255 / 50%);
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  font-size: 14px;
  transition: all 0.4s ease;
  border: 2px solid rgb(255 255 255 / 20%);
}
.demo-step-dot.active {
  background: #fff;
  color: #6c587b;
  border-color: #fff;
  box-shadow: 0 4px 16px rgb(255 255 255 / 30%);
}
.demo-step-line {
  flex: 1;
  height: 2px;
  background: rgb(255 255 255 / 20%);
  margin: 0 8px;
}
.demo-step-labels {
  display: flex;
  justify-content: center;
  gap: 48px;
  margin-top: 8px;
  font-size: 12px;
  color: rgb(255 255 255 / 40%);
  text-transform: uppercase;
  letter-spacing: 0.06em;
  font-weight: 700;
}
.demo-step-labels span.active {
  color: #fff;
}
.demo-step-panel {
  display: none;
  animation: demoFadeIn 0.4s ease;
}
.demo-step-panel.active {
  display: block;
}
@keyframes demoFadeIn {
  from {
    opacity: 0;
    transform: translateY(16px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.demo-section-title {
  font-family: Fraunces, serif;
  font-size: 1.6rem;
  color: #14213d;
  text-align: center;
  margin: 0 0 6px;
}
.demo-section-sub {
  text-align: center;
  color: #666;
  font-size: 0.95rem;
  margin: 0 0 32px;
}
.demo-industry-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 16px;
  margin-bottom: 32px;
}
.demo-industry-card {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  padding: 28px 20px 24px;
  background: #fff;
  border: 2px solid rgb(108 88 123 / 8%);
  border-radius: 18px;
  cursor: pointer;
  transition: all 0.25s ease;
  box-shadow: 0 4px 16px rgb(15 23 42 / 4%);
  font-family: inherit;
  font-size: inherit;
  color: inherit;
}
.demo-industry-card:hover {
  border-color: #6c587b;
  transform: translateY(-4px);
  box-shadow: 0 12px 32px rgb(108 88 123 / 15%);
}
.demo-industry-card.selected {
  border-color: #6c587b;
  background:
    linear-gradient(
      135deg,
      #f8f5fc,
      #f0ebf5);
  box-shadow: 0 8px 28px rgb(108 88 123 / 18%);
}
.demo-industry-icon {
  width: 56px;
  height: 56px;
  border-radius: 16px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 14px;
}
.demo-industry-icon i {
  font-size: 24px;
  color: #fff;
}
.demo-industry-card h3,
.demo-industry-card h4 {
  font-size: 0.98rem;
  font-weight: 700;
  color: #14213d;
  margin: 0 0 6px;
}
.demo-industry-card p {
  font-size: 0.82rem;
  color: #888;
  line-height: 1.5;
  margin: 0;
}
.demo-back-btn {
  background: none;
  border: none;
  color: #6c587b;
  font-size: 0.9rem;
  font-weight: 600;
  cursor: pointer;
  padding: 8px 0;
  margin-bottom: 16px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-family: inherit;
}
.demo-back-btn:hover {
  color: #4b395d;
}
.demo-card--featured {
  border: 2px solid #6c587b;
  position: relative;
  box-shadow: 0 12px 36px rgb(108 88 123 / 15%);
}
.demo-card-badge {
  position: absolute;
  top: -12px;
  left: 50%;
  transform: translateX(-50%);
  background:
    linear-gradient(
      135deg,
      #6c587b,
      #4b395d);
  color: #fff;
  font-size: 0.72rem;
  font-weight: 800;
  padding: 4px 16px;
  border-radius: 999px;
  text-transform: uppercase;
  letter-spacing: 0.06em;
}
.btn-demo--primary {
  background:
    linear-gradient(
      135deg,
      #6c587b 0%,
      #4b395d 100%) !important;
  color: #fff !important;
}
.demo-module-preview {
  background:
    linear-gradient(
      135deg,
      #f8f5fc,
      #ede7f4);
  border-radius: 20px;
  padding: 28px 32px;
  margin-top: 36px;
  border: 1px solid rgb(108 88 123 / 10%);
}
.demo-module-preview h3 {
  font-size: 1rem;
  color: #14213d;
  margin: 0 0 16px;
  font-weight: 700;
}
.demo-module-preview h3 i {
  color: #e98a5f;
  margin-right: 6px;
}
.demo-modules-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.demo-module-tag {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: #fff;
  border: 1px solid rgb(108 88 123 / 12%);
  border-radius: 10px;
  padding: 8px 16px;
  font-size: 0.85rem;
  font-weight: 600;
  color: #6c587b;
}
.demo-module-tag i {
  font-size: 14px;
  opacity: 0.7;
}
.demo-launch-screen {
  text-align: center;
  padding: 80px 20px;
}
.demo-launch-spinner {
  width: 64px;
  height: 64px;
  border: 5px solid #e8e4ed;
  border-top-color: #6c587b;
  border-radius: 50%;
  animation: demoSpin 0.8s linear infinite;
  margin: 0 auto 24px;
}
@keyframes demoSpin {
  to {
    transform: rotate(360deg);
  }
}
.demo-launch-screen h2 {
  font-family: Fraunces, serif;
  font-size: 1.4rem;
  color: #14213d;
  margin: 0 0 8px;
}
.demo-launch-screen p {
  color: #888;
  font-size: 0.95rem;
}
.demo-bottom-cta {
  background:
    linear-gradient(
      135deg,
      #f8f5fc,
      #ede7f4);
  padding: 40px 0;
}
.demo-cta-inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  flex-wrap: wrap;
}
.demo-cta-inner strong {
  font-size: 1.1rem;
  color: #14213d;
}
.demo-cta-btns {
  display: flex;
  gap: 12px;
}
.btn-brand-solid {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background:
    linear-gradient(
      135deg,
      #6c587b,
      #4b395d);
  color: #fff;
  padding: 12px 28px;
  border-radius: 10px;
  font-weight: 700;
  font-size: 0.95rem;
  text-decoration: none;
  transition: transform 0.2s ease;
}
.btn-brand-solid:hover {
  transform: translateY(-2px);
  color: #fff;
  text-decoration: none;
}
.btn-brand-outline {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: transparent;
  color: #6c587b;
  border: 2px solid #6c587b;
  padding: 10px 26px;
  border-radius: 10px;
  font-weight: 700;
  font-size: 0.95rem;
  text-decoration: none;
  transition: all 0.2s ease;
}
.btn-brand-outline:hover {
  background: #6c587b;
  color: #fff;
  text-decoration: none;
}
.demo-industry-tags {
  display: flex;
  gap: 6px;
  flex-wrap: wrap;
  justify-content: center;
  margin-top: 10px;
}
.demo-industry-tags span {
  background: rgb(108 88 123 / 8%);
  color: #6c587b;
  font-size: 0.7rem;
  font-weight: 600;
  padding: 2px 8px;
  border-radius: 10px;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.demo-industry-card:hover .demo-industry-tags span {
  background: rgb(108 88 123 / 15%);
}
.demo-industry-users {
  font-size: 0.75rem;
  color: #94a3b8;
  margin-top: 8px;
}
.demo-industry-users i {
  color: #6c587b;
  margin-right: 3px;
}
.demo-config-section {
  margin-bottom: 32px;
}
.demo-config-label {
  font-size: 1rem;
  font-weight: 700;
  color: #14213d;
  margin-bottom: 12px;
}
.demo-config-label i {
  color: #6c587b;
  margin-right: 6px;
}
.demo-biz-model-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.demo-biz-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 10px 18px;
  border: 2px solid #e2e8f0;
  border-radius: 10px;
  background: #fff;
  color: #475569;
  font-size: 0.88rem;
  font-weight: 600;
  cursor: pointer;
  transition: all 0.2s ease;
}
.demo-biz-btn:hover {
  border-color: #6c587b;
  color: #6c587b;
  background: rgb(108 88 123 / 4%);
}
.demo-biz-btn.selected {
  border-color: #6c587b;
  background: #6c587b;
  color: #fff;
}
.demo-team-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.demo-team-btn {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 12px 20px;
  border: 2px solid #e2e8f0;
  border-radius: 10px;
  background: #fff;
  cursor: pointer;
  transition: all 0.2s ease;
  min-width: 90px;
}
.demo-team-btn:hover {
  border-color: #6c587b;
}
.demo-team-btn.selected {
  border-color: #6c587b;
  background: #6c587b;
}
.demo-team-btn .team-num {
  font-size: 1.1rem;
  font-weight: 800;
  color: #14213d;
}
.demo-team-btn .team-label {
  font-size: 0.72rem;
  color: #64748b;
  font-weight: 600;
}
.demo-team-btn.selected .team-num,
.demo-team-btn.selected .team-label {
  color: #fff;
}
.demo-kpi-preview,
.demo-integrations-preview {
  margin-top: 28px;
  padding-top: 24px;
  border-top: 1px solid #e2e8f0;
}
.demo-kpi-preview h3,
.demo-integrations-preview h3 {
  font-size: 1rem;
  font-weight: 700;
  color: #14213d;
  margin-bottom: 16px;
}
.demo-kpi-preview h3 i,
.demo-integrations-preview h3 i {
  color: #6c587b;
  margin-right: 6px;
}
.demo-kpi-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(140px, 1fr));
  gap: 12px;
}
.demo-kpi-card {
  text-align: center;
  padding: 16px 12px;
  background:
    linear-gradient(
      135deg,
      rgb(108 88 123 / 4%),
      rgb(233 138 95 / 4%));
  border-radius: 12px;
  border: 1px solid rgb(108 88 123 / 10%);
}
.demo-kpi-card i {
  font-size: 1.4rem;
  color: #6c587b;
  margin-bottom: 6px;
}
.demo-kpi-value {
  font-size: 1.2rem;
  font-weight: 800;
  color: #14213d;
}
.demo-kpi-label {
  font-size: 0.72rem;
  color: #64748b;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.demo-integrations-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}
.demo-integration-tag {
  display: inline-block;
  padding: 5px 12px;
  background: #f1f5f9;
  border: 1px solid #e2e8f0;
  border-radius: 20px;
  font-size: 0.78rem;
  font-weight: 600;
  color: #475569;
}
.btn-demo--selected {
  background: #22c55e !important;
  border-color: #22c55e !important;
  color: #fff !important;
  transform: scale(1.02);
}
.btn-demo--selected::after {
  content: " \2713";
}
.demo-preview-layout {
  display: flex;
  gap: 0;
  background: #1e293b;
  border-radius: 16px;
  overflow: hidden;
  min-height: 400px;
  box-shadow: 0 20px 50px rgb(0 0 0 / 15%);
  margin: 24px 0;
}
.demo-preview-sidebar {
  width: 220px;
  background: #0f172a;
  padding: 0;
  flex-shrink: 0;
}
.demo-preview-sidebar-header {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 18px 16px;
  border-bottom: 1px solid rgb(255 255 255 / 6%);
  color: #e2e8f0;
  font-weight: 600;
  font-size: 0.85rem;
}
.demo-preview-avatar {
  font-size: 1.6rem;
  color: #6c587b;
}
.demo-preview-nav-item {
  padding: 10px 16px;
  color: #94a3b8;
  font-size: 0.82rem;
  font-weight: 500;
  cursor: default;
  transition: all 0.2s;
  border-left: 3px solid transparent;
}
.demo-preview-nav-item.active {
  color: #fff;
  background: rgb(108 88 123 / 20%);
  border-left-color: #6c587b;
}
.demo-preview-nav-item i {
  width: 18px;
  text-align: center;
  margin-right: 8px;
  font-size: 0.82rem;
}
.demo-preview-main {
  flex: 1;
  padding: 20px 24px;
  background: #1e293b;
  overflow: hidden;
}
.demo-preview-topbar {
  color: #94a3b8;
  font-size: 0.78rem;
  font-weight: 600;
  padding-bottom: 16px;
  border-bottom: 1px solid rgb(255 255 255 / 6%);
  margin-bottom: 16px;
}
.demo-preview-kpis {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 12px;
  margin-bottom: 20px;
}
.demo-preview-kpi-card {
  background: rgb(255 255 255 / 5%);
  border-radius: 10px;
  padding: 14px 12px;
  text-align: center;
  border: 1px solid rgb(255 255 255 / 6%);
}
.demo-preview-kpi-card .kpi-icon {
  font-size: 1.1rem;
  color: #6c587b;
  margin-bottom: 4px;
}
.demo-preview-kpi-card .kpi-val {
  font-size: 1.1rem;
  font-weight: 800;
  color: #f8fafc;
}
.demo-preview-kpi-card .kpi-lbl {
  font-size: 0.68rem;
  color: #64748b;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.5px;
}
.demo-preview-workflow h4 {
  color: #e2e8f0;
  font-size: 0.88rem;
  margin-bottom: 12px;
}
.demo-preview-workflow h4 i {
  color: #6c587b;
  margin-right: 6px;
}
.demo-preview-workflow-steps {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 6px;
}
.wf-step {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 12px;
  background: rgb(255 255 255 / 5%);
  border-radius: 8px;
  color: #94a3b8;
  font-size: 0.78rem;
  font-weight: 500;
}
.wf-step.active {
  background: rgb(108 88 123 / 30%);
  color: #e2e8f0;
  border: 1px solid rgb(108 88 123 / 40%);
}
.wf-num {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: rgb(255 255 255 / 10%);
  color: #94a3b8;
  font-size: 0.65rem;
  font-weight: 700;
}
.wf-step.active .wf-num {
  background: #6c587b;
  color: #fff;
}
.wf-arrow {
  color: #475569;
  font-size: 0.65rem;
}
.demo-preview-testimonial {
  margin-top: 20px;
  padding: 16px;
  background: rgb(108 88 123 / 10%);
  border-radius: 10px;
  border-left: 3px solid #6c587b;
}
.demo-preview-testimonial blockquote {
  color: #e2e8f0;
  font-size: 0.82rem;
  font-style: italic;
  margin: 0 0 8px;
  line-height: 1.5;
}
.demo-preview-testimonial cite {
  color: #94a3b8;
  font-size: 0.72rem;
  font-style: normal;
  font-weight: 600;
}
.demo-preview-cta {
  text-align: center;
  margin-top: 28px;
}
.btn-demo--large {
  padding: 16px 40px !important;
  font-size: 1.1rem !important;
  border-radius: 14px !important;
}
.demo-preview-note {
  color: #94a3b8;
  font-size: 0.78rem;
  margin-top: 10px;
}
.demo-preview-note i {
  color: #22c55e;
  margin-right: 4px;
}
.demo-launch-checklist {
  margin-top: 24px;
  text-align: left;
  display: inline-block;
}
.launch-item {
  padding: 8px 0;
  color: #64748b;
  font-size: 0.88rem;
}
.launch-item i {
  margin-right: 8px;
  width: 18px;
  text-align: center;
}
@media (width <= 767px) {
  .demo-industry-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 12px;
  }
  .demo-industry-card {
    padding: 20px 14px 18px;
  }
  .demo-industry-icon {
    width: 44px;
    height: 44px;
  }
  .demo-step-labels {
    gap: 16px;
    font-size: 10px;
  }
  .demo-cta-inner {
    flex-direction: column;
    text-align: center;
  }
  .demo-cta-btns {
    justify-content: center;
  }
  .demo-preview-layout {
    flex-direction: column;
  }
  .demo-preview-sidebar {
    width: 100%;
  }
  .demo-preview-nav {
    display: flex;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }
  .demo-preview-nav-item {
    white-space: nowrap;
    border-left: none;
    border-bottom: 3px solid transparent;
  }
  .demo-preview-nav-item.active {
    border-left-color: transparent;
    border-bottom-color: #6c587b;
  }
  .demo-preview-kpis {
    grid-template-columns: repeat(2, 1fr);
  }
  .demo-kpi-grid {
    grid-template-columns: repeat(3, 1fr);
  }
  .demo-biz-model-grid,
  .demo-team-grid {
    gap: 8px;
  }
  .demo-biz-btn {
    padding: 8px 12px;
    font-size: 0.78rem;
  }
  .demo-team-btn {
    min-width: 70px;
    padding: 10px 14px;
  }
}
.pricing-section-nav {
  position: sticky;
  top: 96px;
  z-index: 100;
  background: rgb(255 255 255 / 95%);
  backdrop-filter: blur(12px);
  border-bottom: 1px solid rgb(108 88 123 / 10%);
  padding: 12px 0;
  transition: box-shadow 0.3s ease;
}
.pricing-section-nav.scrolled {
  box-shadow: 0 4px 20px rgb(15 23 42 / 8%);
}
.pricing-nav-inner {
  display: flex;
  gap: 4px;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
  scrollbar-width: none;
  padding: 0 12px;
}
.pricing-nav-inner::-webkit-scrollbar {
  display: none;
}
.pricing-nav-link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 8px 16px;
  font-size: 0.82rem;
  font-weight: 600;
  color: #665f6d;
  white-space: nowrap;
  border-radius: 8px;
  text-decoration: none;
  transition: all 0.2s ease;
}
.pricing-nav-link:hover,
.pricing-nav-link:focus {
  background: #f6f0fb;
  color: #6c587b;
  text-decoration: none;
}
.pricing-nav-link.active {
  background:
    linear-gradient(
      135deg,
      #6c587b,
      #4b395d);
  color: #fff;
}
.pricing-modules-section {
  padding: 56px 0;
  background: #faf9fc;
}
.pricing-modules-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 20px;
  margin-top: 28px;
}
.pricing-module-card {
  background: #fff;
  border: 1px solid rgb(108 88 123 / 8%);
  border-radius: 18px;
  padding: 28px;
  transition: all 0.25s ease;
  position: relative;
  overflow: hidden;
}
.pricing-module-card::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 4px;
  height: 100%;
  background:
    linear-gradient(
      180deg,
      #6c587b,
      #e98a5f);
  opacity: 0;
  transition: opacity 0.25s ease;
}
.pricing-module-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 12px 32px rgb(108 88 123 / 10%);
}
.pricing-module-card:hover::before {
  opacity: 1;
}
.pricing-module-card__icon {
  width: 44px;
  height: 44px;
  border-radius: 12px;
  background:
    linear-gradient(
      135deg,
      #f6f0fb,
      #ede7f4);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 14px;
}
.pricing-module-card__icon i {
  font-size: 20px;
  color: #6c587b;
}
.pricing-module-card h3 {
  font-size: 1rem;
  font-weight: 700;
  color: #14213d;
  margin: 0 0 8px;
}
.pricing-module-card p {
  font-size: 0.85rem;
  color: #666;
  line-height: 1.6;
  margin: 0 0 14px;
}
.pricing-module-card__tiers {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
}
.pricing-module-tier-badge {
  display: inline-block;
  padding: 3px 10px;
  border-radius: 999px;
  font-size: 0.72rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.03em;
}
.pricing-module-tier-badge--free {
  background: #edf7ed;
  color: #2e7d32;
}
.pricing-module-tier-badge--starter {
  background: #e3f2fd;
  color: #1565c0;
}
.pricing-module-tier-badge--pro {
  background: #f3e5f5;
  color: #7b1fa2;
}
.pricing-module-tier-badge--business {
  background: #fff3e0;
  color: #e65100;
}
.pricing-module-tier-badge--enterprise {
  background: #fce4ec;
  color: #c62828;
}
.footer-resource-hub {
  background:
    linear-gradient(
      135deg,
      #f8f5fc,
      #ede7f4);
  padding: 48px 0;
  border-top: 1px solid rgb(108 88 123 / 8%);
}
.footer-resource-hub__title {
  font-family: Fraunces, serif;
  font-size: 1.3rem;
  text-align: center;
  color: #14213d;
  margin: 0 0 28px;
}
.footer-resource-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
  gap: 16px;
}
.footer-resource-card {
  background: #fff;
  border: 1px solid rgb(108 88 123 / 8%);
  border-radius: 14px;
  padding: 22px;
  display: flex;
  align-items: flex-start;
  gap: 14px;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
  text-decoration: none;
  color: inherit;
  border-left: 4px solid transparent;
}
.footer-resource-card:nth-child(1) {
  border-left-color: #6366f1;
}
.footer-resource-card:nth-child(2) {
  border-left-color: #e98a5f;
}
.footer-resource-card:nth-child(3) {
  border-left-color: #10b981;
}
.footer-resource-card:nth-child(4) {
  border-left-color: #f59e0b;
}
.footer-resource-card:nth-child(5) {
  border-left-color: #8b5cf6;
}
.footer-resource-card:nth-child(6) {
  border-left-color: #ec4899;
}
.footer-resource-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 8px 24px rgb(108 88 123 / 12%);
  text-decoration: none;
  color: inherit;
}
.footer-resource-icon {
  width: 42px;
  height: 42px;
  min-width: 42px;
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  color: #fff;
}
.footer-resource-card h3,
.footer-resource-card h4 {
  font-size: 0.92rem;
  font-weight: 700;
  color: #14213d;
  margin: 0 0 4px;
}
.footer-resource-card p {
  font-size: 0.82rem;
  color: #4a4a4a;
  margin: 0;
  line-height: 1.5;
}
.footer-metrics-strip {
  background:
    linear-gradient(
      135deg,
      #14213d,
      #1a2a4a);
  padding: 40px 0;
  color: #fff;
}
.footer-metrics-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: 28px;
  text-align: center;
}
.footer-metric {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
}
.footer-metric__value {
  font-family: Fraunces, serif;
  font-size: 2rem;
  font-weight: 900;
  background:
    linear-gradient(
      135deg,
      #e98a5f,
      #f0b48a);
  -webkit-text-fill-color: transparent;
  background-clip: text;
}
.footer-metric__label {
  font-size: 0.82rem;
  opacity: 0.7;
  text-transform: uppercase;
  letter-spacing: 0.06em;
  font-weight: 600;
}
.footer-multi-account-cta {
  background-color: #6c587b;
  background-image:
    linear-gradient(
      135deg,
      #6c587b 0%,
      #3d2a51 100%);
  padding: 36px 0;
  color: #fff;
  text-align: center;
}
.footer-multi-account-cta h3 {
  font-family: Fraunces, serif;
  font-size: 1.2rem;
  color: #fff;
  margin: 0 0 8px;
}
.footer-multi-account-cta p {
  color: rgb(255 255 255 / 80%);
  font-size: 0.9rem;
  margin: 0 0 20px;
}
.footer-multi-account-cta .btn-group {
  display: flex;
  gap: 12px;
  justify-content: center;
  flex-wrap: wrap;
}
.footer-multi-account-cta .btn-white {
  background: #fff;
  color: #6c587b;
  padding: 10px 24px;
  border-radius: 8px;
  font-weight: 700;
  font-size: 0.88rem;
  text-decoration: none;
  transition: transform 0.2s ease;
}
.footer-multi-account-cta .btn-white:hover {
  transform: translateY(-2px);
  text-decoration: none;
}
.footer-multi-account-cta .btn-ghost {
  background: rgb(0 0 0 / 28%);
  color: #fff;
  border: 1px solid rgb(255 255 255 / 30%);
  padding: 10px 24px;
  border-radius: 8px;
  font-weight: 600;
  font-size: 0.88rem;
  text-decoration: none;
  transition: all 0.2s ease;
}
.footer-multi-account-cta .btn-ghost:hover {
  background: rgb(255 255 255 / 20%);
  text-decoration: none;
}
.saved-accounts-section {
  margin-top: 1.2rem;
  padding: 1rem;
  background: #f8f7fa;
  border-radius: 10px;
  border: 1px solid #ece8f0;
}
.saved-accounts-header {
  font-size: 0.85rem;
  font-weight: 600;
  color: #6c587b;
  margin-bottom: 0.7rem;
}
.saved-accounts-header i {
  margin-right: 0.4rem;
}
.saved-accounts-list {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  margin-bottom: 0.6rem;
}
.saved-account-card {
  display: flex;
  align-items: center;
  gap: 0.7rem;
  padding: 0.55rem 0.75rem;
  background: #fff;
  border-radius: 8px;
  border: 1px solid #e8e4ec;
  cursor: pointer;
  transition: all 0.2s ease;
}
.saved-account-card:hover {
  border-color: #6c587b;
  box-shadow: 0 2px 8px rgb(108 88 123 / 12%);
}
.saved-account-avatar {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background:
    linear-gradient(
      135deg,
      #6c587b,
      #e98a5f);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.8rem;
  font-weight: 700;
  flex-shrink: 0;
}
.saved-account-info {
  display: flex;
  flex-direction: column;
  min-width: 0;
}
.saved-account-email {
  font-size: 0.82rem;
  font-weight: 500;
  color: #14213d;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.saved-account-ago {
  font-size: 0.72rem;
  color: #999;
}
.btn-clear-accounts {
  font-size: 0.72rem;
  color: #999;
  border: none;
  background: none;
  padding: 0;
  cursor: pointer;
}
.btn-clear-accounts:hover {
  color: #e98a5f;
}
.plan-combine-info {
  margin-top: 0.8rem;
  padding: 0.7rem 0.9rem;
  background:
    linear-gradient(
      135deg,
      #f8f7fa,
      #ece8f0);
  border-radius: 8px;
  font-size: 0.78rem;
  color: #555;
  line-height: 1.5;
}
.plan-combine-info i {
  color: #6c587b;
  margin-right: 0.3rem;
}
.plan-combine-info strong {
  color: #14213d;
}
