/* Creative-led, enterprise-ready public-site enhancement layer. */
:root
{
  --pn-creative-ink: #17130f;
  --pn-creative-coral: #e54a1d;
  --pn-creative-peach: #ffd9c7;
  --pn-creative-blue: #2447d8;
  --pn-creative-grid: rgba(229, 74, 29, .075);
  --pn-creative-radius: 18px;
}

body
{
  background: #fffaf7;
  color: var(--pn-creative-ink);
  text-rendering: optimizeLegibility;
}

body::before
{
  background-image: linear-gradient(var(--pn-creative-grid) 1px, transparent 1px), linear-gradient(90deg, var(--pn-creative-grid) 1px, transparent 1px);
  background-size: 32px 32px;
  content: "";
  inset: 0;
  mask-image: linear-gradient(to bottom, black 0, transparent 34rem);
  pointer-events: none;
  position: fixed;
  z-index: -1;
}

.site-header
{
  backdrop-filter: blur(16px);
  background: rgba(255, 250, 247, .88);
  border-bottom-color: rgba(23, 19, 15, .1);
}

.site-nav__cta,
.btn--primary
{
  background: var(--pn-creative-coral);
  border-color: var(--pn-creative-coral);
  box-shadow: 0 8px 18px rgba(190, 53, 17, .2);
}

.site-nav__cta:hover,
.btn--primary:hover
{
  background: #bc3513;
  border-color: #bc3513;
  transform: translateY(-2px);
}

.btn--ghost,
.btn--dark
{
  border-width: 1px;
  font-weight: 700;
}

.btn--ghost:hover
{
  background: var(--pn-creative-ink);
  border-color: var(--pn-creative-ink);
  color: #fff;
}

.pn-home-hero
{
  overflow: hidden;
  padding-block: clamp(4.5rem, 8vw, 8rem) clamp(2.5rem, 5vw, 5rem);
  position: relative;
}

.pn-home-hero::after
{
  background: url('../assets/images/custom/prodninja-orbit-system-v1.png') center / cover no-repeat;
  content: "";
  height: min(54vw, 720px);
  opacity: .2;
  pointer-events: none;
  position: absolute;
  right: max(-14vw, -170px);
  top: -4rem;
  width: min(54vw, 720px);
  z-index: -1;
}

.pn-home-hero__title,
.pn-section-heading h1,
.pn-section-heading h2,
.pn-home-story h2,
.pn-404-title
{
  letter-spacing: -.055em;
}

.pn-home-hero__title
{
  font-size: clamp(3.05rem, 6vw, 5.7rem);
  max-width: 13ch;
}

.pn-home-hero__copy
{
  font-size: clamp(1.05rem, 1.35vw, 1.25rem);
  max-width: 58ch;
}

.pn-home-hero__panel-card,
.pn-home-story,
.pn-final-cta .container,
.pn-404-card
{
  border: 1px solid rgba(23, 19, 15, .12);
  border-radius: var(--pn-creative-radius);
  box-shadow: 0 22px 60px rgba(48, 24, 12, .1);
}

.pn-home-hero__panel-card
{
  background: rgba(255, 255, 255, .84);
}

.pn-home-story__visual
{
  background: #fff0e8;
  border-radius: var(--pn-creative-radius);
  overflow: hidden;
  position: relative;
}

.pn-home-story__visual::after
{
  background: url('../assets/images/custom/prodninja-orbit-system-v1.png') center / cover no-repeat;
  content: "";
  inset: 0;
  mix-blend-mode: multiply;
  opacity: .24;
  pointer-events: none;
  position: absolute;
}

.pn-home-story__visual img
{
  filter: saturate(.84) contrast(1.04);
  position: relative;
  z-index: 1;
}

.pn-section-heading
{
  max-width: 48rem;
}

.pn-section-heading > p
{
  font-size: 1.05rem;
}

.pn-home-capability-card,
.pn-home-package-card,
.pn-home-competency-card,
.pn-competency-card,
.pn-pricing-card,
.pn-mobile-plan-card
{
  background: rgba(255, 255, 255, .93);
  border-color: rgba(23, 19, 15, .12);
  border-radius: 14px;
  box-shadow: 0 10px 28px rgba(48, 24, 12, .055);
}

.pn-home-capability-card:hover,
.pn-home-package-card:hover,
.pn-home-competency-card:hover,
.pn-competency-card:hover
{
  border-color: rgba(229, 74, 29, .45);
  box-shadow: 0 18px 36px rgba(48, 24, 12, .11);
  transform: translateY(-4px);
}

.pn-home-capability-card__icon,
.competency-icon
{
  background: #fff0e8;
  color: var(--pn-creative-coral);
}

.pn-home-project-card,
.pn-project-card
{
  border-radius: 14px;
  overflow: hidden;
}

.pn-home-project-card img,
.pn-project-card img,
.pn-competency-visual img
{
  transition: transform .45s var(--ease-out);
}

.pn-home-project-card:hover img,
.pn-project-card:hover img,
.pn-competency-card:hover .pn-competency-visual img
{
  transform: scale(1.035);
}

.pn-competency-visual
{
  background: #f4e9e1;
}

.pn-competency-visual img
{
  aspect-ratio: 16 / 10;
  object-fit: cover;
  width: 100%;
}

.pn-final-cta
{
  background: transparent;
  position: relative;
}

.pn-final-cta .container
{
  background: #fff3ec;
  color: var(--pn-creative-ink);
  overflow: hidden;
  padding: clamp(2rem, 5vw, 4rem);
  position: relative;
}

.pn-final-cta .container::after
{
  background: url('../assets/images/custom/prodninja-orbit-system-v1.png') right center / min(42%, 420px) auto no-repeat;
  content: "";
  inset: 0;
  opacity: .13;
  pointer-events: none;
  position: absolute;
}

.pn-final-cta .pn-section-heading,
.pn-final-cta .pn-section-cta
{
  position: relative;
  z-index: 1;
}

.pn-final-cta .btn--dark
{
  background: var(--pn-creative-ink);
  border-color: var(--pn-creative-ink);
  color: #fff;
}

.pn-pricing-card,
.pn-pricing-card *,
.pn-mobile-plan-card,
.pn-mobile-plan-card *
{
  opacity: 1 !important;
  visibility: visible !important;
}

.pn-pricing-card
{
  color: var(--pn-creative-ink);
}

.pn-pricing-card.is-featured
{
  border-color: var(--pn-creative-coral);
  box-shadow: 0 18px 42px rgba(190, 53, 17, .18);
}

.pricing-matrix
{
  color: var(--pn-creative-ink);
}

.pricing-matrix th,
.pricing-matrix td
{
  background-color: rgba(255, 255, 255, .91);
  color: var(--pn-creative-ink);
}

.pricing-matrix .is-featured,
.pricing-matrix .featured
{
  background-color: #fff0e8;
  color: var(--pn-creative-ink);
}

.pn-inpage-toc
{
  background: rgba(255, 255, 255, .9);
  border: 1px solid rgba(23, 19, 15, .1);
  border-radius: 14px;
  box-shadow: var(--pn-shadow-soft);
}

.pn-footer
{
  margin-top: 3rem;
}

a:focus-visible,
button:focus-visible,
[role="tab"]:focus-visible
{
  box-shadow: 0 0 0 4px rgba(36, 71, 216, .32) !important;
  outline: 2px solid #2447d8 !important;
  outline-offset: 3px;
}

@media (max-width: 760px)
{
  .pn-home-hero::after
  {
    height: 20rem;
    opacity: .13;
    right: -7rem;
    top: 4rem;
    width: 20rem;
  }

  .pn-home-hero__title
  {
    max-width: 11ch;
  }

  .pn-final-cta .container::after
  {
    background-size: 290px auto;
    opacity: .2;
  }

  .pn-home-project-card:hover img,
  .pn-project-card:hover img,
  .pn-competency-card:hover .pn-competency-visual img
  {
    transform: none;
  }
}

/* Freshness layer (2026-08): warmer hero wash, gradient CTAs, pill eyebrow, softer geometry. Additive only. */
.pn-home-hero::before
{
  background:
    radial-gradient(52rem 30rem at 12% -8%, rgba(255, 217, 199, .55), transparent 62%),
    radial-gradient(40rem 26rem at 92% 4%, rgba(36, 71, 216, .07), transparent 60%);
  content: "";
  inset: 0;
  pointer-events: none;
  position: absolute;
  z-index: -1;
}

.pn-home-eyebrow
{
  background: linear-gradient(100deg, #fff0e8, #ffe3d2);
  border: 1px solid rgba(229, 74, 29, .25);
  border-radius: var(--pn-pill-radius);
  box-shadow: 0 4px 14px rgba(190, 53, 17, .08);
  padding: .45rem .95rem;
}

.pn-home-hero__title
{
  background: linear-gradient(115deg, var(--pn-creative-ink) 58%, var(--pn-creative-coral) 125%);
  -webkit-background-clip: text;
  background-clip: text;
  -webkit-text-fill-color: transparent;
}

.site-nav__cta,
.btn--primary
{
  background: linear-gradient(120deg, var(--pn-creative-coral), #c93a10 78%);
  border-radius: 10px;
}

.site-nav__cta:hover,
.btn--primary:hover
{
  background: linear-gradient(120deg, #d1421a, #b03210 78%);
  box-shadow: 0 12px 26px rgba(190, 53, 17, .28);
}

.btn--ghost,
.btn--dark
{
  border-radius: 10px;
}

.pn-home-hero__panel-card
{
  border-top: 3px solid var(--pn-creative-coral);
  transition: box-shadow .35s ease, transform .35s ease;
}

.pn-home-hero__panel-card:hover
{
  box-shadow: 0 28px 70px rgba(48, 24, 12, .14);
  transform: translateY(-3px);
}

.pn-home-hero__trust li i
{
  color: var(--pn-creative-coral);
}

.pn-home-capability-card,
.pn-home-package-card,
.pn-home-competency-card,
.pn-competency-card,
.pn-pricing-card,
.pn-mobile-plan-card
{
  transition: border-color .3s ease, box-shadow .3s ease, transform .3s ease;
}

.pn-section-heading h2
{
  position: relative;
}

.pn-section-heading h2::after
{
  background: linear-gradient(90deg, var(--pn-creative-coral), var(--pn-creative-peach));
  border-radius: 999px;
  content: "";
  display: block;
  height: 4px;
  margin-top: .6rem;
  width: 3.25rem;
}

@media (prefers-reduced-motion: reduce)
{

  .pn-home-hero__panel-card,
  .pn-home-hero__panel-card:hover
  {
    transform: none;
    transition: none;
  }
}

@media (prefers-reduced-motion: reduce)
{

  *,
  *::before,
  *::after
  {
    scroll-behavior: auto !important;
    transition-duration: .01ms !important;
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
  }
}