:root {
  --byapp-grad-1: #22141f; /* Gradient1 - sfondo scuro elegante */
  --byapp-grad-2: #7a3f62; /* Gradient2 - rosa cipria */
  --byapp-grad-3: #c68dae; /* Gradient3 - pesca caldo */
  --byapp-grad-4: #fa4479; /* Gradient4 - rosa acceso (accent) */
  --byapp-grad-5: #ffdde8; /* Gradient5 - rosa chiarissimo (bg) */
  --byapp-grad-6: #e2f6f4; /* Gradient6 - verde salvia chiarissimo */

  --byapp-text-dark: #22141f;
  --byapp-text-muted: #6b6b6b;
}

body {
  background: var(--byapp-grad-5);
  color: var(--byapp-text-dark);
}

.container-personal {
  max-width: 960px;
  margin: 0 auto;
}

/* NAVBAR */
.navbar-salon {
  background: linear-gradient(90deg, var(--byapp-grad-1), var(--byapp-grad-2));
}

.navbar-brand {
  font-weight: 600;
  letter-spacing: 0.04em;
}

.nav-link {
  font-weight: 500;
}

.nav-link:hover {
  color: var(--byapp-grad-6) !important;
}

/* HERO */
.bg-hero-salon {
  background: radial-gradient(
    circle at top left,
    var(--byapp-grad-3) 0%,
    var(--byapp-grad-2) 35%,
    var(--byapp-grad-1) 85%
  );
  color: #ffffff;
  position: relative;
  overflow: hidden;
}

.bg-hero-salon::after {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(
    circle at bottom right,
    rgba(250, 68, 121, 0.35),
    transparent 55%
  );
  pointer-events: none;
}

.hero-title {
  font-weight: 700;
  letter-spacing: 0.02em;
}

.hero-subtitle {
  font-size: 1.1rem;
  color: rgba(255, 255, 255, 0.85);
}

/* BUTTONS */
.btn-salon-primary {
  background: linear-gradient(135deg, var(--byapp-grad-4), var(--byapp-grad-3));
  border: none;
  color: #22141f;
  font-weight: 600;
  box-shadow: 0 8px 18px rgba(250, 68, 121, 0.45);
}

.btn-salon-primary:hover {
  opacity: 0.95;
  transform: translateY(-1px);
}

.btn-salon-outline {
  border: 1px solid rgba(255, 255, 255, 0.7);
  color: #ffffff;
  font-weight: 500;
  backdrop-filter: blur(4px);
}

.btn-salon-outline:hover {
  background-color: rgba(255, 255, 255, 0.12);
}

/* FEATURE CARDS */
.card-feature-salon {
  border: none;
  border-radius: 1rem;
  background: #ffffff;
  box-shadow: 0 12px 30px rgba(0, 0, 0, 0.06);
  border-top: 4px solid var(--byapp-grad-3);
}

.card-feature-salon h3 {
  font-size: 1.15rem;
  font-weight: 600;
}

.card-feature-salon p {
  color: var(--byapp-text-muted);
  font-size: 0.95rem;
}

.pill-tag {
  display: inline-block;
  padding: 0.25rem 0.8rem;
  border-radius: 999px;
  background: var(--byapp-grad-6);
  color: var(--byapp-grad-1);
  font-size: 0.8rem;
  font-weight: 500;
}

/* SECTION TITLE */
.section-title {
  font-weight: 700;
  font-size: 1.6rem;
}

.section-subtitle {
  color: var(--byapp-text-muted);
  font-size: 0.95rem;
}

/* TIMELINE STEPS */
.step-dot {
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: var(--byapp-grad-4);
  box-shadow: 0 0 0 4px rgba(250, 68, 121, 0.25);
}

.step-line {
  width: 2px;
  flex: 1;
  background: linear-gradient(
    to bottom,
    rgba(34, 20, 31, 0.2),
    rgba(34, 20, 31, 0.02)
  );
}

/* FOOTER */
.footer-salon {
  background: linear-gradient(90deg, var(--byapp-grad-1), var(--byapp-grad-2));
}
