.brand-logo {
  width: 148px;
  height: 34px;
  object-fit: contain;
  object-position: left center;
}

.brand-logo-footer {
  width: 166px;
  height: 36px;
  filter: brightness(0) invert(1);
}

/* Persistent landing navigation */
.site-header {
  position: fixed;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1000;
  transform: none;
  visibility: visible;
}
.site-header.scrolled {
  background: rgba(255, 255, 255, .9);
  backdrop-filter: blur(18px) saturate(145%);
  -webkit-backdrop-filter: blur(18px) saturate(145%);
}

.hero-glow {
  animation: glow-drift 9s ease-in-out infinite alternate;
}

.glow-two {
  animation-delay: -4s;
}

.pill i {
  animation: status-pulse 2.4s ease-out infinite;
}

.browser-frame {
  --stage-x: 0px;
  --stage-y: 0px;
  transform: translate3d(var(--stage-x), var(--stage-y), 0) rotateX(2deg);
  transition: transform .22s ease-out, box-shadow .35s ease;
}

.product-stage:hover .browser-frame {
  box-shadow: 0 60px 120px rgba(16, 35, 28, .22);
}

.float-card {
  --mouse-x: 0px;
  --mouse-y: 0px;
  animation: card-float 5s ease-in-out infinite;
  will-change: transform;
}

.float-collection { animation-delay: -1.7s; }
.float-approval { animation-delay: -3.3s; }

.mini-bars i {
  transform-origin: bottom;
  animation: bar-breathe 1.8s ease-in-out infinite alternate;
}

.mini-bars i:nth-child(2) { animation-delay: -.5s; }
.mini-bars i:nth-child(3) { animation-delay: -1.1s; }
.mini-bars i:nth-child(4) { animation-delay: -.8s; }
.mini-bars i:nth-child(5) { animation-delay: -1.4s; }

.bento,
.price-card,
.feature-list span,
.workflow-track article i {
  transition: transform .35s cubic-bezier(.2, .8, .2, 1), box-shadow .35s ease, border-color .35s ease;
}

.bento:hover,
.price-card:hover {
  transform: translateY(-7px);
  border-color: #b9e9d6;
  box-shadow: 0 28px 65px rgba(16, 35, 28, .1);
}

.price-card.featured:hover {
  transform: translateY(-19px);
}

.feature-list span:hover {
  transform: translateY(-4px) rotate(-1deg);
  border-color: var(--green);
  box-shadow: 0 14px 30px rgba(46, 201, 141, .12);
}

.workflow-track article:hover i {
  transform: translateY(-7px) scale(1.06);
  border-color: var(--green);
  box-shadow: 0 16px 38px rgba(46, 201, 141, .18);
}

.metric-orb {
  animation: orb-breathe 4s ease-in-out infinite;
}

.visual-chip {
  animation: chip-float 4.5s ease-in-out infinite;
}

.chip-bottom { animation-delay: -2.2s; }

.button-primary {
  position: relative;
  overflow: hidden;
}

.button-primary::after {
  content: "";
  position: absolute;
  inset: -50% auto -50% -70%;
  width: 35%;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .5), transparent);
  transform: skewX(-20deg);
  transition: left .65s ease;
}

.button-primary:hover::after { left: 135%; }

.reveal {
  transition-delay: var(--reveal-delay, 0ms);
}

/* Layered entrance choreography */
.motion-ready .hero-copy > * {
  opacity: 0;
  transform: translateY(24px) scale(.985);
  filter: blur(7px);
  animation: hero-enter .85s cubic-bezier(.16, 1, .3, 1) forwards;
}
.motion-ready .hero-copy > :nth-child(1) { animation-delay: .08s; }
.motion-ready .hero-copy > :nth-child(2) { animation-delay: .18s; }
.motion-ready .hero-copy > :nth-child(3) { animation-delay: .3s; }
.motion-ready .hero-copy > :nth-child(4) { animation-delay: .42s; }
.motion-ready .hero-copy > :nth-child(5) { animation-delay: .54s; }
.motion-ready .product-stage { animation: stage-enter 1.05s .48s cubic-bezier(.16, 1, .3, 1) both; }

.reveal.reveal-left { transform: translate3d(-42px, 18px, 0); }
.reveal.reveal-right { transform: translate3d(42px, 18px, 0); }
.reveal.reveal-scale { transform: translateY(18px) scale(.96); }
.reveal.visible { transform: translate3d(0, 0, 0) scale(1); }

.stagger-child {
  opacity: 0;
  transform: translateY(22px) scale(.97);
  transition: opacity .65s ease, transform .75s cubic-bezier(.16, 1, .3, 1);
  transition-delay: var(--stagger-delay, 0ms);
}
.stagger-parent.visible .stagger-child,
.stagger-parent.is-visible .stagger-child { opacity: 1; transform: none; }

.bento::after,
.price-card::after {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: radial-gradient(420px circle at var(--spot-x, 50%) var(--spot-y, 50%), rgba(46,201,141,.13), transparent 45%);
  opacity: 0;
  pointer-events: none;
  transition: opacity .35s ease;
}
.bento:hover::after,
.price-card:hover::after { opacity: 1; }
.bento > *, .price-card > * { position: relative; z-index: 1; }

.screenshot img { transition: transform .8s cubic-bezier(.16,1,.3,1), filter .5s ease; }
.bento:hover .screenshot img { transform: scale(1.025) translateY(-3px); filter: saturate(1.04); }
.decision-stack span { transition: transform .3s ease, border-color .3s ease, box-shadow .3s ease; }
.decision-stack span:hover { transform: translateX(7px); border-color: #aee7d0; box-shadow: 0 10px 25px rgba(16,35,28,.08); }

.workflow-track article {
  opacity: 0;
  transform: translateY(18px);
  transition: opacity .55s ease, transform .65s cubic-bezier(.16,1,.3,1);
  transition-delay: calc(var(--step-index, 0) * 95ms);
}
.workflow-track.visible article { opacity: 1; transform: none; }
.workflow-track article i::after {
  content: ""; position: absolute; inset: -5px; border: 1px solid rgba(46,201,141,.22);
  border-radius: 26px; opacity: 0; transform: scale(.8); transition: .35s ease;
}
.workflow-track article:hover i::after { opacity: 1; transform: scale(1); }

.main-nav a { position: relative; transition: color .25s ease; }
.main-nav a::after { content:""; position:absolute; left:0; right:100%; bottom:-8px; height:2px; border-radius:2px; background:var(--green); transition:right .32s cubic-bezier(.16,1,.3,1); }
.main-nav a:hover::after, .main-nav a.active::after { right:0; }

.trust-grid div span { animation: trust-bob 4s ease-in-out infinite; animation-delay: calc(var(--trust-index, 0) * -.55s); }
.feature-list span { animation: tag-settle .6s both paused; animation-delay: var(--stagger-delay, 0ms); }
.feature-list.visible span { animation-play-state: running; }
.price-card .popular { animation: badge-pulse 3s ease-in-out infinite; }
.cta-glow { animation: cta-glow-drift 7s ease-in-out infinite alternate; }
.cta-screen { transition: transform .25s ease-out; will-change: transform; }

/* Headline choreography */
.choreographed-heading .headline-line { display:block; overflow:hidden; }
.choreographed-heading .headline-line-inner { display:inline-block; opacity:0; transform:translateY(105%) rotate(1deg); transition:opacity .7s ease,transform .85s cubic-bezier(.16,1,.3,1); transition-delay:calc(var(--line-index,0)*120ms); }
.visible .choreographed-heading .headline-line-inner,.choreographed-heading.visible .headline-line-inner { opacity:1; transform:none; }

/* Section atmosphere transitions */
main>section { isolation:isolate; }
main>section::before { transition:opacity 1s ease,transform 1.2s cubic-bezier(.16,1,.3,1); }
.product-intro::after,.pricing-section::after,.testimonials-section::after { content:""; position:absolute; z-index:-1; width:420px; height:420px; border-radius:50%; filter:blur(70px); opacity:0; transform:scale(.75) translateY(45px); pointer-events:none; transition:opacity 1.1s ease,transform 1.3s cubic-bezier(.16,1,.3,1); }
.product-intro,.pricing-section,.testimonials-section { position:relative; overflow:hidden; }
.product-intro::after { right:-230px; top:18%; background:rgba(46,201,141,.11); }
.testimonials-section::after { left:-220px; top:10%; background:rgba(184,243,72,.14); }
.pricing-section::after { right:-220px; bottom:5%; background:rgba(46,201,141,.1); }
.section-in-view::after { opacity:1; transform:scale(1) translateY(0); }

/* Consistent, compact vertical rhythm between landing sections */
main > .section { padding-top:76px; padding-bottom:76px; }
main > section + section { margin-top:0; }
.section-head { margin-bottom:36px; }
.product-intro { padding-bottom:68px; }
.workflow-section { padding-top:76px; padding-bottom:76px; }
.showcase-section { padding-top:76px; padding-bottom:54px; }
.showcase-row { margin-bottom:76px; }
.showcase-row:last-child { margin-bottom:0; }
.testimonials-section { padding-top:64px !important; padding-bottom:64px !important; }
.testimonials-section .section-head { margin-bottom:32px; }
.metrics-section { padding-top:58px; padding-bottom:58px; }
.feature-cloud { padding-top:68px !important; padding-bottom:68px !important; }
.pricing-section { padding-top:72px !important; padding-bottom:72px !important; }
.final-cta { padding-top:42px; padding-bottom:72px; }
.trust-bar { padding-top:22px; padding-bottom:22px; }

/* Testimonials */
.testimonials-section { background:linear-gradient(180deg,#fff 0,#f5faf7 100%); }
.testimonial-carousel { max-width:850px; margin:auto; }
.testimonial-track { position:relative; min-height:285px; }
.testimonial-slide { position:absolute; inset:0; padding:42px 48px; border:1px solid var(--line); border-radius:28px; background:rgba(255,255,255,.88); box-shadow:0 25px 70px rgba(16,35,28,.08); opacity:0; visibility:hidden; transform:translateY(12px) scale(.985); transition:opacity .65s ease,transform .7s cubic-bezier(.16,1,.3,1),visibility .65s; }
.testimonial-slide.active { opacity:1; visibility:visible; transform:none; }
.quote-mark { color:var(--green); font:800 58px/1 Georgia,serif; }
.testimonial-slide blockquote { margin:0 0 30px; font-size:24px; line-height:1.55; letter-spacing:-.5px; }
.testimonial-slide footer { display:flex; align-items:center; gap:12px; }
.testimonial-slide footer>i { width:42px; height:42px; display:grid; place-items:center; border-radius:13px; background:var(--green-soft); color:var(--green-dark); font-size:11px; font-style:normal; font-weight:900; }
.testimonial-slide footer div { display:grid; gap:2px; }.testimonial-slide footer small { color:var(--muted); }
.carousel-controls { display:flex; justify-content:center; align-items:center; gap:18px; margin-top:24px; }
.carousel-controls>button { width:38px; height:38px; border:1px solid var(--line); border-radius:50%; background:#fff; cursor:pointer; transition:.3s ease; }.carousel-controls>button:hover { border-color:var(--green); transform:translateY(-2px); }
.carousel-progress { display:flex; gap:7px; }.carousel-progress button { width:42px; height:5px; padding:0; border:0; border-radius:5px; background:#dce6e2; overflow:hidden; cursor:pointer; }.carousel-progress i { display:block; width:100%; height:100%; background:var(--green); transform:scaleX(0); transform-origin:left; }.carousel-progress button.active i { animation:testimonial-progress 6s linear forwards; }

/* Pricing-cycle transition */
.billing-toggle { width:max-content; margin:28px auto 0; display:flex; gap:4px; padding:5px; border:1px solid var(--line); border-radius:14px; background:#fff; box-shadow:0 10px 30px rgba(16,35,28,.05); }
.billing-toggle button { border:0; border-radius:10px; padding:9px 13px; background:transparent; color:var(--muted); font:inherit; font-size:11px; font-weight:800; cursor:pointer; transition:background .3s ease,color .3s ease,transform .3s ease; }.billing-toggle button.active { background:var(--green-soft); color:var(--green-dark); transform:scale(1.02); }
.billing-toggle button:disabled { opacity:.35; cursor:not-allowed; }
.price-card.cycle-hiding { opacity:0; transform:translateY(14px) scale(.97); }.price-card.cycle-hidden { display:none; }.price-card.cycle-showing { animation:price-cycle-in .55s cubic-bezier(.16,1,.3,1) both; }

/* Guest page transitions */
body { animation:guest-page-in .45s ease both; }
body.page-leaving { opacity:0; transform:translateY(5px); transition:opacity .22s ease,transform .22s ease; }

@keyframes testimonial-progress { to{transform:scaleX(1)} }
@keyframes price-cycle-in { from{opacity:0;transform:translateY(16px) scale(.97)} to{opacity:1;transform:none} }
@keyframes guest-page-in { from{opacity:0;transform:translateY(7px)} to{opacity:1;transform:none} }

.scroll-progress {
  position: fixed;
  z-index: 100;
  top: 0;
  left: 0;
  width: var(--scroll-progress, 0%);
  height: 3px;
  background: linear-gradient(90deg, var(--green), var(--lime));
  box-shadow: 0 0 14px rgba(46, 201, 141, .55);
  pointer-events: none;
}

.cursor-aura {
  position: fixed;
  z-index: 0;
  width: 280px;
  height: 280px;
  margin: -140px 0 0 -140px;
  border-radius: 50%;
  background: radial-gradient(circle, rgba(46,201,141,.09), transparent 68%);
  pointer-events: none;
  opacity: 0;
  transition: opacity .35s ease;
  will-change: transform;
}

.cursor-aura.active { opacity: 1; }
.magnetic { will-change: transform; }
.image-card { transform-style: preserve-3d; will-change: transform; transition: transform .25s ease-out, box-shadow .35s ease; }
.image-card img { transition: transform .55s cubic-bezier(.2,.8,.2,1); }
.showcase-visual:hover .image-card img { transform: scale(1.025); }
.workflow-line::after {
  content: "";
  position: absolute;
  top: -1px;
  left: 0;
  width: 22%;
  height: 3px;
  border-radius: 3px;
  background: linear-gradient(90deg, transparent, var(--green), transparent);
  animation: workflow-travel 4s ease-in-out infinite;
}

@keyframes glow-drift {
  to { transform: translate3d(40px, -24px, 0) scale(1.12); }
}

@keyframes status-pulse {
  0%, 45% { box-shadow: 0 0 0 5px rgba(46, 201, 141, .14); }
  75%, 100% { box-shadow: 0 0 0 12px rgba(46, 201, 141, 0); }
}

@keyframes card-float {
  0%, 100% { transform: translate3d(var(--mouse-x), var(--mouse-y), 0); }
  50% { transform: translate3d(var(--mouse-x), calc(var(--mouse-y) - 10px), 0); }
}

@keyframes bar-breathe {
  to { transform: scaleY(.62); opacity: .7; }
}

@keyframes orb-breathe {
  50% { transform: scale(1.035); box-shadow: 0 0 0 20px rgba(46, 201, 141, .045); }
}

@keyframes chip-float {
  50% { margin-top: -8px; }
}

@keyframes workflow-travel {
  0% { transform: translateX(-100%); opacity: 0; }
  15%, 85% { opacity: 1; }
  100% { transform: translateX(455%); opacity: 0; }
}

@keyframes hero-enter {
  to { opacity: 1; transform: none; filter: blur(0); }
}
@keyframes stage-enter {
  from { opacity: 0; transform: translateY(55px) scale(.96); filter: blur(8px); }
  to { opacity: 1; transform: none; filter: blur(0); }
}
@keyframes trust-bob { 50% { transform: translateY(-3px); color: var(--green-dark); } }
@keyframes tag-settle {
  from { opacity:0; transform: translateY(14px) scale(.9); }
  to { opacity:1; transform:none; }
}
@keyframes badge-pulse { 50% { transform: translateY(-2px) scale(1.04); box-shadow:0 8px 20px rgba(184,243,72,.25); } }
@keyframes cta-glow-drift { to { transform: translate(-80px, 70px) scale(1.18); opacity:.75; } }

/* Complete platform — structured product overview */
.platform-layout {
  display: grid;
  grid-template-columns: minmax(280px, .72fr) minmax(0, 1.55fr);
  gap: 28px;
  align-items: start;
}
.platform-intro {
  position: sticky;
  top: 112px;
  padding: 34px;
  border: 1px solid rgba(13, 48, 36, .1);
  border-radius: 28px;
  background: linear-gradient(155deg, #f5fbf7 0%, #fff 58%, #eff9e0 100%);
  box-shadow: 0 24px 70px rgba(15, 56, 42, .08);
}
.platform-intro h2 { margin: 14px 0 16px; font-size: clamp(32px, 3.1vw, 50px); line-height: .99; letter-spacing: -.055em; }
.platform-intro > p { margin: 0; color: var(--muted); line-height: 1.7; }
.platform-map { display: grid; margin-top: 30px; border-top: 1px solid rgba(13, 48, 36, .11); }
.platform-map a { display: grid; grid-template-columns: 28px 1fr 18px; gap: 10px; align-items: center; padding: 16px 2px; border-bottom: 1px solid rgba(13, 48, 36, .11); color: var(--ink); text-decoration: none; transition: color .25s ease, padding .25s ease; }
.platform-map a span { color: var(--green); font-size: 11px; font-weight: 800; letter-spacing: .08em; }
.platform-map a strong { font-size: 14px; font-weight: 700; }
.platform-map a i { opacity: .35; font-style: normal; transition: transform .25s ease, opacity .25s ease; }
.platform-map a:hover { padding-left: 7px; color: var(--green-dark); }
.platform-map a:hover i { opacity: 1; transform: translate(2px, -2px); }
.platform-note { display: grid; gap: 5px; margin-top: 26px; padding: 16px 18px; border-radius: 16px; background: var(--ink); color: #fff; }
.platform-note span { color: var(--lime); font-size: 10px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.platform-note strong { font-size: 13px; }
.platform-content { display: grid; gap: 18px; min-width: 0; }
.platform-module { position: relative; overflow: hidden; border: 1px solid rgba(13, 48, 36, .1); border-radius: 28px; background: #fff; box-shadow: 0 20px 65px rgba(15, 56, 42, .07); transition: transform .35s cubic-bezier(.2,.8,.2,1), box-shadow .35s ease, border-color .35s ease; scroll-margin-top: 112px; }
.platform-module:hover { transform: translateY(-4px); border-color: rgba(30, 170, 108, .25); box-shadow: 0 30px 80px rgba(15, 56, 42, .12); }
.platform-module-hero { padding: 32px 32px 0; background: linear-gradient(145deg, #fff 30%, #f0faf5 100%); }
.platform-module-head { display: grid; grid-template-columns: 1.05fr .85fr; gap: 34px; align-items: end; }
.module-number { display: inline-block; margin-bottom: 12px; color: var(--green); font-size: 10px; font-weight: 900; letter-spacing: .14em; }
.platform-module h3 { margin: 0; font-size: clamp(24px, 2.2vw, 36px); line-height: 1.08; letter-spacing: -.04em; }
.platform-module p { color: var(--muted); line-height: 1.65; }
.platform-module-head p { margin: 0; }
.platform-screen { position: relative; margin-top: 28px; min-height: 300px; overflow: hidden; border: 1px solid rgba(13, 48, 36, .11); border-bottom: 0; border-radius: 20px 20px 0 0; background: #f6f8f7; box-shadow: 0 20px 45px rgba(15, 56, 42, .12); }
.platform-screen img { display: block; width: 100%; height: 100%; min-height: 300px; object-fit: cover; object-position: left top; }
.platform-chip { position: absolute; padding: 9px 12px; border-radius: 999px; background: rgba(255,255,255,.94); box-shadow: 0 10px 30px rgba(13,48,36,.16); color: var(--ink); font-size: 11px; font-weight: 800; backdrop-filter: blur(8px); }
.platform-chip.verified { top: 24px; right: 22px; color: var(--green-dark); }
.platform-chip.profile { right: 22px; bottom: 22px; }
.platform-support-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; }
.platform-module-decision, .platform-module-dark { min-height: 340px; padding: 30px; }
.platform-module-decision h3, .platform-module-dark h3 { font-size: 27px; }
.platform-module-decision .decision-stack { margin-top: 26px; }
.platform-module-dark { display: flex; flex-direction: column; background: radial-gradient(circle at 90% 5%, rgba(184,243,72,.17), transparent 35%), var(--ink); color: #fff; }
.platform-module-dark .module-number { color: var(--lime); }
.platform-module-dark p { margin-top: auto; color: rgba(255,255,255,.66); }
.platform-kpis { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin-top: 28px; }
.platform-kpis div { display: grid; gap: 4px; padding: 17px; border: 1px solid rgba(255,255,255,.12); border-radius: 16px; background: rgba(255,255,255,.06); }
.platform-kpis strong { color: var(--lime); font-size: 27px; }
.platform-kpis span { color: rgba(255,255,255,.64); font-size: 10px; line-height: 1.3; }
.platform-module-wide { display: grid; grid-template-columns: minmax(230px, .7fr) minmax(0, 1.3fr); align-items: center; min-height: 360px; padding: 32px 0 0 32px; background: linear-gradient(125deg, #f5faed, #fff 55%); }
.platform-wide-copy { padding-right: 24px; padding-bottom: 32px; }
.platform-wide-copy h3 { font-size: 30px; }
.platform-wide-copy a { display: inline-block; margin-top: 10px; color: var(--green-dark); font-weight: 800; text-decoration: none; }
.platform-screen-applications { align-self: end; margin: 0; min-height: 315px; border-right: 0; border-radius: 20px 0 0 0; }
.platform-screen-applications img { min-height: 315px; }

/* Connected workflow — lifecycle control board */
.workflow-section {
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 8% 18%, rgba(46,201,141,.1), transparent 23%),
    radial-gradient(circle at 92% 85%, rgba(184,243,72,.12), transparent 25%),
    #f4f8f6;
}
.workflow-section::before { content:""; position:absolute; inset:0; background-image:linear-gradient(rgba(16,35,28,.026) 1px,transparent 1px),linear-gradient(90deg,rgba(16,35,28,.026) 1px,transparent 1px); background-size:42px 42px; mask-image:linear-gradient(to bottom,transparent,black 18%,black 82%,transparent); pointer-events:none; }
.workflow-section .split-heading { position:relative; z-index:1; }
.workflow-board { position:relative; z-index:1; margin-top:42px; overflow:hidden; border:1px solid rgba(13,48,36,.12); border-radius:30px; background:rgba(255,255,255,.88); box-shadow:0 28px 85px rgba(15,56,42,.1); backdrop-filter:blur(12px); }
.workflow-board-top { display:flex; align-items:center; justify-content:space-between; gap:20px; padding:17px 22px; border-bottom:1px solid var(--line); color:var(--muted); font-size:10px; font-weight:900; letter-spacing:.13em; text-transform:uppercase; }
.workflow-live { display:flex; align-items:center; gap:9px; color:var(--green-dark); letter-spacing:.05em; }
.workflow-live i { width:7px; height:7px; border-radius:50%; background:var(--green); box-shadow:0 0 0 5px rgba(46,201,141,.13); animation:status-pulse 2s infinite; }
.workflow-journey { display:grid; grid-template-columns:minmax(0,1fr) 42px minmax(0,1fr) 42px minmax(0,1fr); align-items:stretch; padding:22px; }
.workflow-phase { position:relative; padding:0 18px 18px; overflow:hidden; border:1px solid var(--line); border-radius:22px; background:#fff; }
.workflow-phase::before { content:""; position:absolute; left:0; right:0; top:0; height:4px; background:var(--green); }
.workflow-phase.decision::before { background:var(--lime); }
.workflow-phase.servicing { background:linear-gradient(155deg,#102d23,#092219); color:#fff; border:0; }
.workflow-phase.servicing::before { background:linear-gradient(90deg,var(--green),var(--lime)); }
.workflow-phase header { display:grid; grid-template-columns:1fr auto; gap:5px 12px; align-items:center; padding:22px 0 16px; border-bottom:1px solid var(--line); }
.workflow-phase header span { color:var(--green-dark); font-size:9px; font-weight:900; letter-spacing:.14em; }
.workflow-phase header strong { grid-column:1; font-size:15px; }
.workflow-phase header b { grid-column:2; grid-row:1/3; padding:6px 8px; border-radius:999px; background:var(--wash); color:var(--muted); font-size:9px; }
.workflow-phase.servicing header { border-color:rgba(255,255,255,.12); }
.workflow-phase.servicing header span { color:var(--lime); }
.workflow-phase.servicing header b { background:rgba(255,255,255,.08); color:rgba(255,255,255,.65); }
.workflow-step { position:relative; display:grid; grid-template-columns:24px 38px 1fr; gap:10px; align-items:start; padding:18px 0 34px; border-bottom:1px solid var(--line); }
.workflow-step:last-child { border-bottom:0; padding-bottom:22px; }
.step-number { padding-top:10px; color:#9caaa5; font-size:9px; font-weight:900; }
.step-icon { width:38px; height:38px; display:grid; place-items:center; border-radius:11px; background:var(--green-soft); color:var(--green-dark); font-size:16px; font-style:normal; font-weight:900; }
.workflow-phase.decision .step-icon { background:#effbd7; color:#43670a; }
.workflow-step h3 { margin:3px 0 6px; font-size:14px; letter-spacing:-.02em; }
.workflow-step p { margin:0; color:var(--muted); font-size:10px; line-height:1.55; }
.workflow-step em { position:absolute; left:72px; bottom:12px; color:var(--green-dark); font-size:8px; font-style:normal; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }
.workflow-phase.servicing .workflow-step { border-color:rgba(255,255,255,.12); }
.workflow-phase.servicing .step-number { color:rgba(255,255,255,.42); }
.workflow-phase.servicing .step-icon { background:rgba(184,243,72,.12); color:var(--lime); }
.workflow-phase.servicing .workflow-step p { color:rgba(255,255,255,.6); }
.workflow-phase.servicing .workflow-step em { color:var(--lime); }
.workflow-connector { display:grid; place-items:center; }
.workflow-connector::before { content:""; position:absolute; width:42px; height:1px; background:linear-gradient(90deg,var(--green),rgba(46,201,141,.2)); }
.workflow-connector span { position:relative; z-index:1; width:25px; height:25px; display:grid; place-items:center; border:1px solid rgba(46,201,141,.28); border-radius:50%; background:#f6fffb; color:var(--green-dark); font-size:12px; }
.workflow-outcome { display:grid; grid-template-columns:repeat(3,1fr); border-top:1px solid var(--line); background:#f9fbfa; }
.workflow-outcome div { display:grid; gap:5px; padding:18px 22px; border-right:1px solid var(--line); }
.workflow-outcome div:last-child { border-right:0; }
.workflow-outcome span { color:var(--green-dark); font-size:8px; font-weight:900; letter-spacing:.13em; }
.workflow-outcome strong { font-size:11px; }
.workflow-board.visible .workflow-step { animation:workflow-step-in .6s both; animation-delay:calc(var(--step-index) * 80ms + 120ms); }
@keyframes workflow-step-in { from { opacity:0; transform:translateY(12px); } to { opacity:1; transform:none; } }

/* Integrated conversion footer */
.final-cta { position:relative; z-index:2; margin:0; padding:78px 0 0; overflow:hidden; background:#071b14; }
.final-cta::before { content:""; position:absolute; left:0; right:0; top:0; height:1px; background:linear-gradient(90deg,transparent,rgba(184,243,72,.45),transparent); }
.footer-cta-shell { position:relative; display:grid; grid-template-columns:.86fr 1.14fr; gap:58px; align-items:center; min-height:520px; padding:66px 0 72px; overflow:hidden; border-bottom:1px solid rgba(255,255,255,.1); color:#fff; }
.footer-cta-shell::after { content:""; position:absolute; z-index:-1; width:480px; height:480px; right:-100px; top:-160px; border:1px solid rgba(184,243,72,.13); border-radius:50%; box-shadow:0 0 0 70px rgba(46,201,141,.035),0 0 0 140px rgba(46,201,141,.025); }
.footer-cta-shell .cta-glow { z-index:-2; width:520px; height:520px; top:-190px; right:-130px; background:rgba(46,201,141,.25); animation:cta-glow-drift 9s ease-in-out infinite alternate; }
.cta-grid-lines { position:absolute; z-index:-2; inset:0; background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px); background-size:42px 42px; mask-image:linear-gradient(90deg,transparent,black 55%,transparent); }
.footer-cta-copy { position:relative; z-index:2; }
.footer-cta-copy h2 { margin:16px 0 18px; font-size:clamp(42px,4.5vw,64px); line-height:1.02; letter-spacing:-.055em; }
.footer-cta-copy p { max-width:540px; margin:0; color:#9bb5aa; line-height:1.75; }
.footer-cta-copy .hero-actions { justify-content:flex-start; margin-top:30px; }
.footer-cta-visual { position:relative; min-width:0; }
.footer-cta-visual .cta-screen { position:relative; z-index:2; transform:rotate(2deg) translateX(34px); border:1px solid rgba(255,255,255,.18); border-radius:22px; background:#fff; box-shadow:0 40px 100px rgba(0,0,0,.42); }
.footer-cta-visual .cta-screen::before { content:"LIVE WORKSPACE"; position:absolute; z-index:2; top:15px; left:16px; padding:7px 10px; border-radius:999px; background:rgba(7,27,20,.9); color:var(--lime); font-size:8px; font-weight:900; letter-spacing:.12em; backdrop-filter:blur(8px); }
.cta-proof { position:relative; z-index:3; display:flex; gap:10px; justify-content:flex-end; margin:20px 0 0; }
.cta-proof span { display:flex; align-items:center; gap:7px; color:#a7bdb4; font-size:10px; font-weight:700; }
.cta-proof i { width:17px; height:17px; display:grid; place-items:center; border-radius:50%; background:rgba(46,201,141,.14); color:var(--green); font-style:normal; font-size:8px; }
.final-cta + .footer { padding-top:0; }
.footer { position:relative; overflow:hidden; padding:0; background:#071b14; }
.footer::before { content:"PM FINANCE"; position:absolute; left:50%; bottom:-.2em; transform:translateX(-50%); color:rgba(255,255,255,.018); font-size:clamp(110px,17vw,260px); font-weight:900; letter-spacing:-.08em; line-height:.7; white-space:nowrap; pointer-events:none; }
.footer-main { position:relative; z-index:1; display:grid; grid-template-columns:.9fr 1.35fr; gap:100px; padding-top:58px; padding-bottom:58px; }
.footer-identity p { max-width:390px; margin:22px 0 30px; color:#789088; line-height:1.7; }
.footer-contact { display:grid; gap:6px; max-width:330px; padding:17px 18px; border:1px solid rgba(255,255,255,.11); border-radius:15px; background:rgba(255,255,255,.035); transition:border-color .25s ease,transform .25s ease,background .25s ease; }
.footer-contact:hover { transform:translateY(-3px); border-color:rgba(46,201,141,.35); background:rgba(46,201,141,.06); }
.footer-contact span { color:var(--green); font-size:9px; font-weight:900; letter-spacing:.12em; text-transform:uppercase; }
.footer-contact strong { display:flex; align-items:center; justify-content:space-between; color:#fff; font-size:13px; }
.footer-contact i { font-style:normal; color:var(--lime); }
.footer-navigation { display:grid; grid-template-columns:repeat(3,1fr); gap:34px; }
.footer-navigation > div { display:flex; flex-direction:column; gap:13px; }
.footer-navigation h4 { margin:5px 0 10px; color:#fff; font-size:11px; letter-spacing:.12em; text-transform:uppercase; }
.footer-navigation a { width:max-content; color:#789088; font-size:12px; transition:color .2s ease,transform .2s ease; }
.footer-navigation a:hover { color:var(--green); transform:translateX(3px); }
.footer-bottom { position:relative; z-index:1; display:grid; grid-template-columns:1fr auto 1fr; align-items:center; gap:28px; margin-top:0; padding-top:22px; padding-bottom:25px; border-top:1px solid rgba(255,255,255,.08); }
.footer-bottom > span:last-child { text-align:right; }
.footer-bottom b { color:var(--green); }
.footer-status { display:flex; align-items:center; gap:8px; color:#8fa69d; font-size:10px; }
.footer-status i { width:7px; height:7px; border-radius:50%; background:var(--green); box-shadow:0 0 0 4px rgba(46,201,141,.1); }

/* Immersive footer conversion panel */
.final-cta {
  width:100%;
  margin:0;
  padding:0;
  background:linear-gradient(180deg,#071b14 0%,#0a3426 34%,#12734f 68%,#59dca0 100%);
}
.footer-cta-shell {
  isolation:isolate;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:0;
  width:100%;
  max-width:none;
  min-height:500px;
  margin:0;
  padding:44px 40px 0;
  overflow:hidden;
  border:0;
  border-radius:0;
  background:
    linear-gradient(180deg,rgba(7,27,20,.96) 0%,rgba(8,45,32,.94) 31%,rgba(17,113,76,.88) 66%,rgba(82,220,158,.88) 100%);
  box-shadow:none;
  text-align:center;
}
.footer-cta-shell::before { content:""; position:absolute; z-index:-3; left:50%; bottom:-320px; width:1050px; height:680px; transform:translateX(-50%); border-radius:50%; background:radial-gradient(circle,rgba(204,255,229,.92) 0%,rgba(83,231,164,.55) 28%,rgba(46,201,141,.08) 57%,transparent 70%); filter:blur(8px); }
.footer-cta-shell::after { z-index:-2; width:760px; height:350px; left:50%; right:auto; top:auto; bottom:-275px; transform:translateX(-50%); border:1px solid rgba(255,255,255,.22); border-radius:50% 50% 0 0; box-shadow:0 0 0 60px rgba(255,255,255,.025),0 0 0 120px rgba(255,255,255,.018); }
.footer-cta-shell .cta-glow { z-index:-3; width:900px; height:540px; left:50%; right:auto; top:170px; transform:translateX(-50%); background:rgba(93,255,184,.22); filter:blur(60px); }
.cta-grid-lines { z-index:-2; background-image:linear-gradient(rgba(168,255,214,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(168,255,214,.06) 1px,transparent 1px); background-size:44px 44px; mask-image:linear-gradient(to bottom,rgba(0,0,0,.25),black 55%,transparent 96%); }
.cta-orbits { position:absolute; z-index:-1; inset:0; overflow:hidden; pointer-events:none; }
.cta-orbits i { position:absolute; left:50%; top:7%; width:118%; height:290px; transform:translateX(-50%); border:1px solid rgba(85,226,163,.12); border-radius:50%; }
.cta-orbits i:nth-child(2) { top:13%; width:94%; height:235px; border-color:rgba(184,243,72,.11); }
.cta-orbits i:nth-child(3) { top:19%; width:70%; height:180px; border-color:rgba(255,255,255,.08); }
.cta-community { position:relative; z-index:2; display:flex; align-items:center; justify-content:center; height:48px; margin-bottom:12px; }
.community-avatar { position:relative; display:grid; place-items:center; width:38px; height:38px; margin:0 -2px; border:3px solid #0b2a20; border-radius:50%; background:linear-gradient(145deg,#b8f348,#2ec98d); color:#09281d; box-shadow:0 12px 28px rgba(0,0,0,.25); font-size:9px; font-weight:900; }
.community-avatar.avatar-main { z-index:2; width:48px; height:48px; margin:0 8px; border-width:4px; background:#fff; color:var(--green-dark); font-size:11px; box-shadow:0 0 0 4px rgba(255,255,255,.1),0 15px 35px rgba(0,0,0,.3); }
.avatar-one,.avatar-four { transform:translateY(8px) scale(.78); opacity:.8; }
.avatar-two,.avatar-three { transform:translateY(2px) scale(.9); }
.footer-cta-copy { max-width:820px; margin:0 auto; }
.footer-cta-copy h2 { margin-top:12px; margin-bottom:14px; font-size:clamp(40px,4.6vw,62px); line-height:.99; }
.footer-cta-copy p { max-width:650px; margin:0 auto; color:rgba(226,247,238,.7); font-size:14px; }
.footer-cta-copy .hero-actions { justify-content:center; margin-top:22px; }
.footer-cta-copy .button-primary { background:var(--lime); color:#10231c; box-shadow:0 14px 34px rgba(184,243,72,.2); }
.footer-cta-copy .button-ghost { background:rgba(7,27,20,.42); border-color:rgba(255,255,255,.2); backdrop-filter:blur(10px); }
.footer-cta-shell > .cta-proof { display:flex; position:relative; z-index:2; justify-content:center; margin:14px 0 0; }
.footer-cta-shell > .cta-proof span { color:rgba(235,255,246,.68); }
.footer-cta-shell > .cta-proof i { background:rgba(184,243,72,.18); color:var(--lime); }
.cta-signal-row { position:relative; z-index:2; display:grid; grid-template-columns:repeat(3,1fr); width:min(820px,100%); margin:auto auto 0; border:1px solid rgba(255,255,255,.14); border-bottom:0; border-radius:18px 18px 0 0; background:rgba(7,27,20,.28); backdrop-filter:blur(14px); }
.cta-signal-row span { display:grid; gap:3px; padding:11px 18px; border-right:1px solid rgba(255,255,255,.11); color:rgba(238,255,247,.62); font-size:9px; letter-spacing:.04em; }
.cta-signal-row span:last-child { border-right:0; }
.cta-signal-row strong { color:#fff; font-size:17px; letter-spacing:-.02em; }
.final-cta + .footer { margin-top:0; border-top:1px solid rgba(255,255,255,.09); }
.footer-main { grid-template-columns:minmax(270px,.72fr) minmax(0,1.65fr); gap:75px; padding-top:72px; padding-bottom:68px; }
.footer-navigation { grid-template-columns:repeat(4,1fr); gap:28px; }
.footer-reach span { display:flex; gap:9px; color:#789088; font-size:11px; line-height:1.55; }
.footer-reach span i { color:var(--green); font-style:normal; }
.footer-reach > a { margin-top:5px; color:var(--green); }

@media (max-width: 980px) {
  .platform-layout { grid-template-columns: 1fr; }
  .platform-intro { position: relative; top: auto; }
  .platform-map { grid-template-columns: 1fr 1fr; gap: 0 20px; }
  .workflow-journey { grid-template-columns:1fr; gap:14px; }
  .workflow-connector { height:28px; transform:rotate(90deg); }
  .workflow-phase { padding-left:22px; padding-right:22px; }
  .footer-cta-shell { gap:0; }
  .footer-main { grid-template-columns:1fr; gap:50px; }
  .footer-navigation { grid-template-columns:repeat(4,1fr); }
}

@media (max-width: 720px) {
  .platform-intro { padding: 26px; border-radius: 22px; }
  .platform-intro h2 { font-size: 36px; }
  .platform-map { grid-template-columns: 1fr; }
  .platform-note { display: none; }
  .platform-module-head, .platform-module-wide { grid-template-columns: 1fr; }
  .platform-module-hero { padding: 25px 20px 0; }
  .platform-module-head { gap: 12px; }
  .platform-screen { min-height: 245px; }
  .platform-screen img { min-height: 245px; }
  .platform-module-wide { padding: 25px 0 0 20px; }
  .platform-wide-copy { padding-right: 20px; }
  .platform-screen-applications { min-height: 260px; }
  .platform-support-grid { display: contents; }
  .workflow-board { border-radius:22px; }
  .workflow-board-top { align-items:flex-start; flex-direction:column; }
  .workflow-journey { padding:14px; }
  .workflow-outcome { grid-template-columns:1fr; }
  .workflow-outcome div { border-right:0; border-bottom:1px solid var(--line); }
  .workflow-outcome div:last-child { border-bottom:0; }
  .final-cta { padding-top:45px; }
  .footer-cta-shell { min-height:500px; padding:38px 18px 0; border-radius:0; }
  .footer-cta-copy h2 { font-size:36px; }
  .footer-cta-copy .hero-actions { flex-direction:column; }
  .footer-cta-shell > .cta-proof { justify-content:center; flex-wrap:wrap; }
  .cta-signal-row { grid-template-columns:1fr; width:100%; border-radius:16px 16px 0 0; }
  .cta-signal-row span { grid-template-columns:auto 1fr; align-items:center; border-right:0; border-bottom:1px solid rgba(255,255,255,.1); text-align:left; }
  .cta-signal-row span:last-child { border-bottom:0; }
  .cta-signal-row strong { min-width:65px; }
  .footer-main { padding-top:46px; padding-bottom:44px; }
  .footer-navigation { grid-template-columns:1fr 1fr; row-gap:38px; }
  .footer-bottom { grid-template-columns:1fr; gap:12px; }
  .footer-bottom > span:last-child { text-align:left; }
}

@media (max-width: 640px) {
  .brand-logo { width: 126px; height: 30px; }
  .price-card.featured:hover { transform: translateY(-7px); }
  .testimonial-track { min-height:355px; }.testimonial-slide { padding:30px 25px; }.testimonial-slide blockquote { font-size:19px; }.billing-toggle { width:100%; overflow-x:auto; justify-content:flex-start; }.billing-toggle button { flex:0 0 auto; }
  .pricing-grid,.bento-grid { display:flex; overflow-x:auto; scroll-snap-type:x mandatory; gap:14px; margin-left:-13px; margin-right:-13px; padding:8px 13px 26px; scrollbar-width:none; }.pricing-grid::-webkit-scrollbar,.bento-grid::-webkit-scrollbar{display:none}.price-card,.bento { flex:0 0 88%; scroll-snap-align:center; }.price-card.featured { transform:none; }.bento-wide { display:block; }.bento-small,.bento-large,.bento-wide { min-height:460px; }
  .platform-content { display:flex; overflow-x:auto; scroll-snap-type:x mandatory; gap:14px; margin-left:-13px; margin-right:-13px; padding:6px 13px 24px; scrollbar-width:none; }.platform-content::-webkit-scrollbar{display:none}.platform-module{flex:0 0 88%;scroll-snap-align:center}.platform-module:hover{transform:none}.platform-module-hero,.platform-module-decision,.platform-module-dark,.platform-module-wide{min-height:500px}.platform-module-wide{display:flex;flex-direction:column;align-items:stretch}.platform-screen-applications{margin-top:auto}
  main > .section { padding-top:54px; padding-bottom:54px; }
  .section-head { margin-bottom:28px; }
  .product-intro,.workflow-section,.showcase-section { padding-top:54px; padding-bottom:46px; }
  .showcase-row { margin-bottom:54px; }
  .testimonials-section { padding-top:48px !important; padding-bottom:48px !important; }
  .metrics-section { padding-top:46px; padding-bottom:46px; }
  .feature-cloud,.pricing-section { padding-top:52px !important; padding-bottom:52px !important; }
  .final-cta { padding:0; }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  *, *::before, *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
  .reveal { opacity: 1; transform: none; }
  .motion-ready .hero-copy > *, .motion-ready .product-stage, .stagger-child, .workflow-track article { opacity:1; transform:none; filter:none; }
  .cursor-aura { display: none; }
  body { animation:none; }.carousel-progress button.active i { animation:none; transform:scaleX(1); }
}

/* Keep navigation permanently attached to the viewport. */
body > .site-header,
body > .site-header.scrolled {
  position: fixed !important;
  inset: 0 0 auto 0 !important;
  z-index: 9999 !important;
  display: block !important;
  opacity: 1 !important;
  visibility: visible !important;
  transform: translate3d(0, 0, 0) !important;
  pointer-events: auto;
}
