.pr1-hero, .pr1-hero *, .pr1-hero *::before, .pr1-hero *::after { box-sizing: border-box; }
.pr1-hero {
  position: relative;
  overflow: hidden;
  background: #5b3a9e;
  color: #fff;
  font-family: 'Inter', system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
  -webkit-font-smoothing: antialiased;
}
.pr1-hero__gradient {
  position: absolute; inset: 0;
  background: linear-gradient(125deg, #4a2d8a 0%, #6b4fbf 35%, #a8447a 70%, #c0436b 100%);
  background-size: 220% 220%;
  animation: pr1Shift 18s ease-in-out infinite;
}
.pr1-hero__blob {
  position: absolute;
  border-radius: 50%;
  filter: blur(80px);
  opacity: 0.55;
  mix-blend-mode: screen;
  pointer-events: none;
}
.pr1-hero__blob--a {
  width: 720px; height: 720px; top: -200px; right: -150px;
  background: radial-gradient(circle, rgba(231,90,124,0.9), transparent 65%);
  animation: pr1FloatA 22s ease-in-out infinite;
}
.pr1-hero__blob--b {
  width: 640px; height: 640px; bottom: -220px; left: -160px;
  background: radial-gradient(circle, rgba(91,58,158,0.95), transparent 65%);
  animation: pr1FloatB 26s ease-in-out infinite;
}
.pr1-hero__blob--c {
  width: 520px; height: 520px; top: 30%; left: 40%;
  background: radial-gradient(circle, rgba(120,80,200,0.6), transparent 65%);
  animation: pr1FloatC 30s ease-in-out infinite;
}
@keyframes pr1Shift {
  0%,100% { background-position: 0% 50%; }
  50% { background-position: 100% 50%; }
}
@keyframes pr1FloatA {
  0%,100% { transform: translate(0,0) scale(1); }
  50% { transform: translate(-80px,60px) scale(1.15); }
}
@keyframes pr1FloatB {
  0%,100% { transform: translate(0,0) scale(1); }
  50% { transform: translate(100px,-70px) scale(1.2); }
}
@keyframes pr1FloatC {
  0%,100% { transform: translate(-50%,-50%) scale(1); }
  50% { transform: translate(-30%,-60%) scale(1.25); }
}
.pr1-hero__inner {
  position: relative;
  max-width: 1300px;
  margin: 0 auto;
  padding: 80px 24px;
}
@media (min-width: 1024px) { .pr1-hero__inner { padding: 112px 48px; } }
.pr1-hero__grid {
  display: grid;
  gap: 40px;
  grid-template-columns: 1fr;
  align-items: center;
}
@media (min-width: 1024px) {
  .pr1-hero__grid { grid-template-columns: 2fr 1fr; }
}
.pr1-hero__badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  border: 1px solid rgba(255,255,255,0.2);
  background: rgba(255,255,255,0.05);
  border-radius: 999px;
  padding: 4px 12px;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
.pr1-hero__dot { width: 6px; height: 6px; border-radius: 50%; background: #3ee0a0; }
.pr1-hero__title {
  margin: 24px 0 0;
  max-width: 20ch;
  font-size: 44px;
  font-weight: 800;
  line-height: 1.02;
  letter-spacing: -0.02em;
}
@media (min-width: 768px) { .pr1-hero__title { font-size: 68px; } }
.pr1-hero__lede {
  margin: 24px 0 0;
  max-width: 62ch;
  font-size: 18px;
  line-height: 1.55;
  color: rgba(255,255,255,0.8);
}
.pr1-hero__ctas { margin-top: 32px; display: flex; flex-wrap: wrap; gap: 12px; }
.pr1-cta {
  display: inline-flex; align-items: center; gap: 8px;
  border-radius: 999px;
  padding: 12px 24px;
  font-size: 14px;
  font-weight: 700;
  text-decoration: none;
  cursor: pointer;
  transition: background-color 0.2s;
  color: #fff;
}
.pr1-cta--primary { background: #ff6e5a; }
.pr1-cta--primary:hover { background: #e85a47; }
.pr1-cta--ghost { border: 1px solid rgba(255,255,255,0.3); }
.pr1-cta--ghost:hover { background: rgba(255,255,255,0.1); }
.pr1-arrow { width: 16px; height: 16px; }
.pr1-hero__layers { display: flex; flex-direction: column; gap: 12px; }
@media (min-width: 1024px) { .pr1-hero__layers { align-items: flex-end; } }
.pr1-layer {
  display: inline-flex; align-items: center; gap: 10px;
  border: 1px solid rgba(255,255,255,0.15);
  background: rgba(255,255,255,0.05);
  border-radius: 999px;
  padding: 12px 24px;
  font-size: 17px;
  font-weight: 600;
  color: rgba(255,255,255,0.9);
  text-decoration: none;
  transition: border-color 0.2s, background-color 0.2s;
}
.pr1-layer:hover { border-color: rgba(255,255,255,0.4); background: rgba(255,255,255,0.1); }
.pr1-layer__dot { width: 8px; height: 8px; border-radius: 50%; }
.pr1-layer__num { color: rgba(255,255,255,0.6); }
@media (prefers-reduced-motion: reduce) {
  .pr1-hero__gradient, .pr1-hero__blob { animation: none !important; }
}

/* ------ RM ADDED ---------- */

}
.pr1-cta {
    font-size: 20px;
}
