/* Prime Mind AI bright visual system. */

:root {
  --ink: #121826;
  --ink-soft: #505968;
  --night: #101827;
  --cream: #f3f3f0;
  --cream-deep: #e8e9e4;
  --white: #ffffff;
  --clay: #3475df;
  --clay-dark: #214f9f;
  --clay-light: #bdd7ff;
  --sage: #39775f;
  --sage-light: #d9eedc;
  --line: rgba(18, 24, 38, 0.12);
  --shadow-soft: 0 18px 55px rgba(33, 48, 79, 0.11);
  --shadow-deep: 0 28px 75px rgba(24, 41, 76, 0.2);
  --pm-sky: #b9dcf2;
  --pm-blue: #3475df;
  --pm-blue-deep: #183d84;
  --pm-mint: #d6edd8;
  --pm-butter: #f8e8ad;
  --pm-coral: #f2b6a7;
  --pm-lilac: #dcd3f6;
}

body {
  background: var(--cream);
}

body::selection {
  color: #fff;
  background: var(--pm-blue);
}

.site-header {
  border-color: rgba(18, 24, 38, 0.1);
  background: rgba(255, 255, 255, 0.9);
  box-shadow: 0 10px 32px rgba(26, 44, 79, 0.1);
}

.site-header.scrolled {
  background: rgba(255, 255, 255, 0.97);
  box-shadow: 0 14px 42px rgba(26, 44, 79, 0.15);
}

.nav-cta,
.button-primary {
  background: var(--pm-blue);
  box-shadow: 0 10px 24px rgba(52, 117, 223, 0.22);
}

.button,
.nav-cta,
.value-card a,
.site-header a {
  transition: transform 180ms ease, box-shadow 180ms ease, color 180ms ease, background 180ms ease;
}

.button:hover,
.button:focus-visible,
.nav-cta:hover,
.nav-cta:focus-visible {
  transform: translateY(-2px);
}

.eyebrow,
.kicker {
  color: var(--pm-blue-deep);
}

.eyebrow span {
  background: var(--pm-blue);
  box-shadow: 0 0 0 6px rgba(52, 117, 223, 0.13);
}

/* Homepage */

.simple-homepage {
  background: var(--cream);
}

.simple-hero {
  min-height: 760px;
  background:
    radial-gradient(circle at 8% 18%, rgba(255, 255, 255, 0.96), transparent 29%),
    linear-gradient(135deg, #f7f8f4 0%, #eef3f8 100%);
}

.simple-hero::before {
  top: 100px;
  right: max(-130px, calc((100vw - var(--max)) / 2 - 170px));
  width: min(51vw, 670px);
  border-radius: 42px 42px 170px 42px;
  background:
    linear-gradient(145deg, rgba(255, 255, 255, 0.34), transparent 43%),
    linear-gradient(135deg, var(--pm-sky) 0 46%, var(--pm-lilac) 46% 68%, var(--pm-coral) 68% 100%);
  box-shadow: 0 36px 95px rgba(43, 76, 132, 0.16);
  opacity: 1;
  animation: pm-shape-drift 9s ease-in-out infinite;
}

.simple-hero::after {
  inset: 0 0 0 52%;
  background-image: radial-gradient(rgba(24, 61, 132, 0.17) 1.3px, transparent 1.3px);
  background-size: 24px 24px;
  mask-image: linear-gradient(to left, #000 25%, transparent 88%);
  opacity: 0.44;
}

.simple-hero-grid {
  grid-template-columns: minmax(0, 1.07fr) minmax(330px, 0.73fr);
  gap: clamp(42px, 5vw, 72px);
}

.simple-hero h1 {
  max-width: 720px;
  font-size: clamp(3.75rem, 5.7vw, 5.85rem);
  line-height: 0.95;
}

.simple-hero h1 em {
  color: var(--pm-blue-deep);
}

.simple-hero-line {
  border-color: var(--pm-blue);
}

.simple-hero-contact a {
  color: var(--pm-blue-deep);
}

.value-card {
  width: min(100%, 455px);
  padding: clamp(30px, 3.5vw, 46px);
  border-color: rgba(185, 220, 242, 0.3);
  border-radius: 38px;
  background:
    radial-gradient(circle at 92% 8%, rgba(185, 220, 242, 0.22), transparent 27%),
    linear-gradient(145deg, #111b2d, #14243d);
  box-shadow: 0 32px 80px rgba(24, 55, 105, 0.24);
  animation: pm-card-float 6.5s ease-in-out infinite;
}

.value-card::before {
  position: absolute;
  z-index: 0;
  top: -28px;
  right: -22px;
  width: 120px;
  height: 120px;
  content: "";
  border-radius: 32px 32px 70px 32px;
  background: linear-gradient(145deg, var(--pm-butter), var(--pm-coral));
  opacity: 0.19;
  transform: rotate(14deg);
}

.value-card::after {
  border-color: rgba(185, 220, 242, 0.24);
  border-radius: 29px;
}

.value-card-label,
.value-card a {
  max-width: 100%;
  color: #a9d8ff;
  overflow-wrap: anywhere;
}

.value-card strong {
  max-width: 100%;
  margin: 32px 0 24px;
  font-size: clamp(3rem, 4.1vw, 4.5rem);
  line-height: 0.94;
  overflow-wrap: anywhere;
  text-wrap: balance;
  white-space: normal;
}

.value-card p {
  color: rgba(255, 255, 255, 0.94);
}

.proof-section {
  background: #fff;
}

.proof-grid {
  gap: 16px;
  border: 0;
}

.proof-item {
  min-height: 260px;
  border: 0;
  border-radius: 30px;
}

.proof-item:nth-child(1) {
  background: var(--pm-sky);
}

.proof-item:nth-child(2) {
  background: var(--pm-mint);
}

.proof-item:nth-child(3) {
  background: var(--pm-butter);
}

.proof-item strong {
  color: var(--pm-blue-deep);
}

.simple-process {
  background:
    radial-gradient(circle at 88% 12%, rgba(185, 220, 242, 0.2), transparent 28%),
    linear-gradient(135deg, #101827, #183d84);
}

.offer-section {
  background: #eef3f8;
}

.process-step,
.offer-card,
.fit-card,
.local-answer-grid article {
  border-radius: 30px;
  box-shadow: 0 16px 48px rgba(35, 57, 95, 0.08);
}

.offer-card {
  border-color: rgba(30, 61, 113, 0.12);
  background: #fff;
}

.offer-card-primary {
  color: var(--ink);
  border-color: rgba(52, 117, 223, 0.24);
  background: linear-gradient(145deg, #dbeafe, #eef6ff 65%);
}

.offer-card-primary .offer-card-topline,
.offer-card-primary .offer-lead,
.offer-card-primary .offer-outcome,
.offer-card-primary details,
.offer-card-primary .offer-card-footer p {
  color: inherit;
}

.offer-card-primary details {
  border-color: rgba(33, 79, 159, 0.16);
  background: rgba(255, 255, 255, 0.62);
}

.simple-rule {
  border: 0;
  border-radius: 30px;
  background: var(--pm-lilac);
  box-shadow: var(--shadow-soft);
}

.founder-simple {
  background: linear-gradient(135deg, #fff 0%, #f8f2d7 100%);
}

.application-section {
  background:
    radial-gradient(circle at 85% 20%, rgba(185, 220, 242, 0.22), transparent 26%),
    var(--night);
}

/* Core service pages */

.service-page .hero {
  background:
    radial-gradient(circle at 7% 15%, #fff, transparent 30%),
    linear-gradient(135deg, #f7f8f4, #eaf2fa);
}

.service-page .hero-sun {
  border-radius: 42px 42px 170px 42px;
  background: linear-gradient(135deg, var(--pm-sky) 0 45%, var(--pm-lilac) 45% 68%, var(--pm-coral) 68%);
  box-shadow: 0 35px 90px rgba(43, 76, 132, 0.16);
  animation: pm-shape-drift 9s ease-in-out infinite;
}

.service-page .hero-contours {
  background-image: radial-gradient(rgba(24, 61, 132, 0.18) 1.3px, transparent 1.3px);
  background-size: 24px 24px;
}

.service-page .hero h1 em {
  color: var(--pm-blue-deep);
}

.service-page .lead-demo,
.service-page .local-service-note,
.service-page .fit-card,
.service-page .process-steps article,
.service-page .local-answer-grid article {
  border-color: rgba(34, 68, 124, 0.13);
}

.service-page .lead-demo {
  color: var(--ink);
  background: rgba(255, 255, 255, 0.94);
  box-shadow: 0 28px 70px rgba(36, 65, 112, 0.17);
}

.service-page .lead-demo::after {
  border-color: rgba(52, 117, 223, 0.14);
}

.service-page .demo-event,
.service-page .demo-result {
  border-color: rgba(33, 79, 159, 0.12);
}

.service-page .process-steps article:nth-child(1),
.service-page .local-answer-grid article:nth-child(1) {
  background: #e5f2fb;
}

.service-page .process-steps article:nth-child(2),
.service-page .local-answer-grid article:nth-child(2) {
  background: #e3f1e4;
}

.service-page .process-steps article:nth-child(3),
.service-page .local-answer-grid article:nth-child(3) {
  background: #fbefc8;
}

.service-page .featured-step {
  color: var(--ink);
  border-color: rgba(57, 119, 95, 0.18) !important;
}

/* Guides and proof pages */

.business-guide .article-hero,
.guide-library .article-hero {
  background:
    radial-gradient(circle at 85% 18%, rgba(220, 211, 246, 0.9), transparent 26%),
    radial-gradient(circle at 72% 70%, rgba(185, 220, 242, 0.78), transparent 30%),
    linear-gradient(135deg, #f8f9f5, #eef3f8);
}

.business-guide .answer-card,
.guide-library .answer-card {
  color: var(--ink);
  border-color: rgba(33, 79, 159, 0.14);
  border-radius: 32px;
  background: var(--pm-butter);
  box-shadow: var(--shadow-soft);
}

.business-guide .answer-card .answer-label,
.business-guide .answer-card p,
.business-guide .answer-card strong,
.guide-library .answer-card .answer-label,
.guide-library .answer-card p,
.guide-library .answer-card strong {
  color: var(--ink);
}

.business-guide .article-steps article:nth-child(3n + 1) {
  background: #e8f4fb;
}

.business-guide .article-steps article:nth-child(3n + 2) {
  background: #e5f2e6;
}

.business-guide .article-steps article:nth-child(3n) {
  background: #fbf0cb;
}

.business-guide .article-steps article,
.business-guide .guardrail-grid > div,
.business-guide .script-board > div,
.business-guide .scorecard-table > div {
  border-radius: 24px;
}

@keyframes pm-card-float {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-8px); }
}

@keyframes pm-shape-drift {
  0%, 100% { transform: translate3d(0, 0, 0) rotate(0deg); }
  50% { transform: translate3d(-10px, 8px, 0) rotate(-1deg); }
}

@keyframes pm-rise {
  from { opacity: 0; transform: translateY(24px); }
  to { opacity: 1; transform: translateY(0); }
}

@supports (animation-timeline: view()) {
  .proof-item,
  .offer-card,
  .process-step,
  .service-page .process-steps article,
  .service-page .local-answer-grid article,
  .business-guide .article-body > section {
    animation: pm-rise both;
    animation-timeline: view();
    animation-range: entry 8% cover 26%;
  }
}

@media (max-width: 980px) {
  .simple-hero {
    min-height: 0;
  }

  .simple-hero-grid {
    grid-template-columns: 1fr;
  }

  .simple-hero::before {
    right: -190px;
    width: 680px;
    opacity: 0.52;
  }

  .value-card {
    width: min(100%, 620px);
    justify-self: start;
  }
}

@media (max-width: 620px) {
  .simple-hero {
    background: linear-gradient(155deg, #f8f9f5 0%, #edf4fa 100%);
  }

  .simple-hero::before {
    top: 245px;
    right: -330px;
    width: 660px;
    border-radius: 120px 36px 160px 36px;
    opacity: 0.42;
  }

  .simple-hero h1 {
    font-size: clamp(3.15rem, 14vw, 4.3rem);
  }

  .value-card {
    border-radius: 30px;
    animation: none;
  }

  .value-card strong {
    font-size: clamp(2.85rem, 14vw, 4rem);
  }

  .proof-grid {
    gap: 12px;
  }

  .proof-item {
    min-height: 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  .simple-hero::before,
  .service-page .hero-sun,
  .value-card,
  .proof-item,
  .offer-card,
  .process-step,
  .service-page .process-steps article,
  .service-page .local-answer-grid article,
  .business-guide .article-body > section {
    animation: none !important;
    transform: none !important;
  }
}
