/* Locked homepage v14 design rules, scoped to the PPC page. */
:root{--gray:#62626c;--gray-light:#74747e;--sec-y:clamp(64px,7vw,108px);--r-card:18px;--ppc-red:#dc2626}
html{scroll-padding-top:116px;overscroll-behavior:auto}body{background:#fff;color:#0a0a0b;transition:none}
[data-surface]{--fg:#0a0a0b;--muted:#62626c;--meta:#696973;--rule:rgba(0,0,0,.12);--kicker:#bd2020;background:#fff;color:var(--fg)}
[data-surface="light"]{background:#f6f6f7}[data-surface="ink"]{--fg:#fff;--muted:#b6b6bf;--meta:#b6b6bf;--rule:rgba(255,255,255,.16);--kicker:#ff6b6b;background:#0a0a0b;color:var(--fg)}
button,a,input,summary{touch-action:manipulation}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,[tabindex]:focus-visible{outline:3px solid #df4141;outline-offset:5px}
.visually-hidden:focus{position:fixed!important;z-index:1000;left:16px;top:12px;width:auto;height:auto;clip:auto;padding:14px 20px;background:#fff;color:#0a0a0b}
.btn{min-height:48px;white-space:normal;text-align:center;line-height:1.3}.btn-outline{color:var(--kicker);border-color:var(--kicker)}.btn-outline:hover{color:#fff;border-color:#b91c1c;background:#b91c1c}
.nav{max-width:calc(100vw - 40px);gap:2px}.nav .btn{font-size:.875rem;white-space:nowrap;min-height:44px;margin-left:4px;padding:10px 18px}.nav-links a,.nav-links button{font-size:.9375rem;padding:8px 12px}.nav .logo img{height:24px}
.nav-dd:hover .dd-menu,.nav-dd:focus-within .dd-menu{opacity:0;visibility:hidden;transform:translateY(-6px)}.nav-dd.open .dd-menu{opacity:1;visibility:visible;transform:none}.nav-dd:hover>button svg{transform:none}.nav-dd.open>button svg{transform:rotate(180deg)}
.menu-btn{width:44px;height:44px}.menu-btn span{left:13px}.menu-btn span:first-child{top:17px}.menu-btn span:last-child{top:25px}.mobile-menu{padding-top:96px}.mobile-menu .sub{grid-template-columns:repeat(2,minmax(0,1fr));gap:4px 20px}.mobile-menu .sub a{font-size:1rem}
.ppc-hero{min-height:0;padding:156px 0 60px}.hero-grid{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:64px;align-items:center}.hero-copy h1{font-size:clamp(3rem,5.4vw,5rem);line-height:1.03;letter-spacing:-.055em}.hero-copy h1 .ombre{margin-top:0;line-height:1.03}.hero-copy .kicker{font-size:.8125rem;line-height:1.5;letter-spacing:.08em;color:var(--kicker);margin-bottom:24px}.hero-copy .lead{font-size:clamp(1.125rem,1.45vw,1.3rem);max-width:43ch;margin-top:24px;color:var(--muted)}.hero-copy .btns{margin-top:24px}.hero-proof{padding:28px;border-radius:18px}.hero-proof dt{font-size:clamp(1.65rem,3vw,2.7rem)}.hero-proof dd{font-size:.9375rem;color:var(--muted)}.hero-scroll{display:none}.ppc-hero::after{opacity:.4}
.kicker{font-size:.8125rem;letter-spacing:.08em}.section-head{display:flex;flex-direction:column;align-items:stretch;gap:24px;margin-top:24px}.section-head h2,.pricing-head h2,.people h2{font-size:clamp(2.5rem,5vw,4.5rem);line-height:1.05;letter-spacing:-.045em}.section-head h2 span,.pricing-head h2 span,.audit-cta h2 span{color:#bd2020}.ppc-proof .section-head h2 span,.people h2 span{color:#ff6b6b}
.section-head>.intro-note{max-width:68ch;padding:22px 26px;background:#eeeef2;border-left:3px solid #d62c3b;border-radius:0 12px 12px 0;color:#62626c;font-size:1.0625rem;line-height:1.65}.ppc-proof .section-head>.intro-note{background:#19191e;color:var(--muted);border-color:#ef5261}
.system-grid{gap:20px;margin-top:40px}.system-grid article{min-height:0;padding:24px;border-radius:18px}.system-grid h3{margin-top:24px;padding-top:0;font-size:1.375rem}.system-grid p{font-size:1rem;margin-top:14px;color:#62626c}
.capability-grid{margin-top:40px}.capability-grid article{min-height:0;padding:24px;background:#f6f6f8}.capability-grid h3{margin-top:20px;font-size:clamp(1.35rem,2.15vw,2rem);line-height:1.1;min-height:2.2em}.capability-grid p{font-size:1rem;margin-top:12px;color:#62626c}.capability-grid ul{padding-top:20px;margin-top:auto}.capability-grid li{font-size:.9375rem}.cap-top{height:44px}
.case-stack{margin-top:40px}.case-card{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:24px 40px;padding:28px;border-radius:18px}.case-index{grid-column:1/-1}.case-metric b{font-size:clamp(2.5rem,4.5vw,4.7rem)}.case-story h3{font-size:clamp(1.375rem,2.2vw,2rem);line-height:1.15}.case-story>p:last-child{font-size:1rem;color:var(--muted)}.result-note{font-size:.8125rem;line-height:1.6}
.section-actions{margin-top:32px}.section-action{color:var(--kicker);border-color:var(--kicker);min-height:48px;padding:15px 30px;font-size:1rem;font-weight:650;line-height:1.3;text-align:center}.section-action:hover{background:#b91c1c;border-color:#b91c1c;color:#fff}
.people-stage{min-height:0;padding:var(--sec-y) 0 calc(var(--sec-y) + 36px)}.people-grid{gap:48px}.people-copy>p{font-size:1.125rem;color:var(--muted)}.people-copy>strong{font-size:1.375rem;line-height:1.5}.signal-stream{animation:none}
.ppc-pricing .pricing-head{max-width:1280px}.pricing-head>p:last-child{font-size:1.1875rem;max-width:55ch;margin-top:24px}.ppc-pricing>.tiers{max-width:1280px;margin:40px auto 0;border-radius:18px;overflow:hidden}.tier{padding:32px 28px}.tier .price b{font-size:clamp(1.7rem,2.5vw,2.6rem)}.tier .price span{font-size:.9375rem}.tier .pos,.tier li{font-size:1rem}.tier.featured::before{transform:scaleX(1)}.tier.featured .btn{color:#fff}.fee-note{font-size:.8125rem;line-height:1.5;color:#b6b6bf;margin-top:12px}.pricing-note{max-width:1280px;margin:24px auto 0;padding:0 24px;font-size:.8125rem;line-height:1.6;text-transform:none;letter-spacing:0;color:#62626c}
.audit-cta{padding:64px 0 80px}.audit-cta h2{font-size:clamp(2.5rem,5vw,4.5rem);line-height:1.05;letter-spacing:-.045em}.audit-cta p:not(.kicker){font-size:1.125rem;max-width:48ch;color:#62626c}.audit-cta .btn{margin-top:28px}
/* Static is the default: no dead scroll space when motion is paused or unavailable. */
.dollar-engine{height:auto}.dollar-stage{position:relative;height:auto;min-height:0;padding:var(--sec-y) 0}.dollar-content h2{font-size:clamp(2.5rem,5vw,4.5rem);line-height:1.05;letter-spacing:-.045em}.dollar-content h2 span{color:#ff6b6b}.dollar-steps{margin-top:40px;max-width:100%;padding:0;list-style:none}.dollar-steps span{margin-top:20px;font-size:1.25rem}.dollar-steps small{font-size:.9375rem;color:var(--muted)}.engine-note{margin-top:28px;max-width:60ch;color:var(--muted)}.dollar-field{display:none}
@media(min-width:1100px) and (min-height:700px) and (hover:hover) and (pointer:fine){.dollar-engine.dollar-live{height:210svh}.dollar-live .dollar-stage{position:sticky;top:0;height:100svh;padding:100px 0 40px}.dollar-live .dollar-field{display:block}}
@media(max-width:1099px){.hero-grid{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:32px}.hero-proof{display:block}.hero-proof dl{display:grid;grid-template-columns:1fr}.hero-proof img{width:96px}.people-grid{grid-template-columns:1fr;gap:28px}}
@media(max-width:1023px){.ppc-pricing>.tiers{grid-template-columns:1fr}}
@media(max-width:767px){html{scroll-padding-top:92px}.ppc-hero{padding:108px 0 44px}.hero-grid{grid-template-columns:1fr;gap:28px}.hero-copy h1{font-size:clamp(2.6rem,9.8vw,4.3rem);line-height:1.03}.hero-copy .kicker{font-size:.75rem}.hero-proof{padding:24px}.hero-proof dl{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.hero-proof dt{font-size:clamp(1.2rem,5vw,1.7rem)}.hero-proof dd{font-size:.75rem}.section-head h2,.pricing-head h2,.people h2,.dollar-content h2{font-size:clamp(2.25rem,8vw,3rem);line-height:1.08}.section-head>.intro-note{padding:20px;font-size:1rem}.system-grid,.capability-grid{margin-top:28px}.capability-grid h3{min-height:0;font-size:1.6rem}.case-card{grid-template-columns:1fr;padding:24px;gap:20px}.case-metric b{font-size:3rem}.dollar-content{text-align:left}.dollar-steps{grid-template-columns:1fr 1fr;margin-top:28px}.dollar-steps li{padding:20px 12px}.dollar-steps small{font-size:.875rem}.dollar-steps li:nth-child(2){border-right:0}.engine-note{font-size:1rem}.pricing-head>p:last-child{font-size:1.0625rem}.ppc-pricing>.tiers{margin-top:28px}.audit-cta{padding:48px 0 64px}.audit-cta h2{font-size:clamp(2.5rem,9vw,3.5rem)}}

/* Secondary headline lines use the shared Ninja Heat gradient across the advertising page. */
.section-head h2 span,
.pricing-head h2 span,
.dollar-content h2 span,
.people h2 span,
.audit-cta h2 span{
  display:inline-block;
  background:var(--ombre);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  -webkit-text-fill-color:transparent;
  padding-right:.05em;
  margin-right:-.05em;
}
/* White opening modules across the website. */
#ppc-hero{background:#fff;color:#0a0a0b}#ppc-hero::before,#ppc-hero::after{display:none}#ppc-hero .hero-orbit span{color:rgba(190,38,50,.045)}
#ppc-hero .hero-proof{background:#f6f6f8;border-color:#dddde3;backdrop-filter:none;color:#0a0a0b}
#ppc-hero .hero-proof dt{color:#bd2020}#ppc-hero .hero-proof>.utility{color:#62626c}#ppc-hero .hero-proof dl>div{border-color:#dddde3}#ppc-hero .hero-proof img{filter:none}
#ppc-hero .hero-outline{border-color:#bd2020;color:#bd2020}#ppc-hero .hero-outline:hover{background:#b91c1c;color:#fff}

/* Keep the capabilities intro and actions in the same compact rhythm as the homepage. */
#capabilities .section-head{
  display:grid!important;
  grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr)!important;
  gap:40px!important;
  align-items:end!important;
}
#capabilities .section-head h2{
  font-size:clamp(2.4rem,4vw,4.25rem)!important;
  line-height:1.02!important;
}
#capabilities .section-head>.intro-note{
  padding:0!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  max-width:42ch!important;
}
#capabilities .capability-grid .unified-cta{
  align-self:flex-start!important;
  min-height:42px!important;
  padding:10px 16px!important;
  background:transparent!important;
  border:1px solid #0a0a0b!important;
  color:#0a0a0b!important;
  -webkit-text-fill-color:#0a0a0b!important;
  font-size:.875rem!important;
  line-height:1.25!important;
  box-shadow:none!important;
}
#capabilities .capability-grid .unified-cta:hover{
  background:#0a0a0b!important;
  border-color:#0a0a0b!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}

/* Match the homepage closing frame instead of the old full-viewport word wall. */
#finale .stage{
  height:auto!important;
  min-height:0!important;
  padding:clamp(78px,9vw,132px) 24px!important;
  background:#0a0a0b!important;
  display:block!important;
}
#finale .glow{display:none!important}
#finale .wall{
  position:static!important;
  transform:none!important;
  max-width:1280px!important;
  margin:0 auto!important;
  padding:0!important;
  white-space:normal!important;
  font-size:clamp(3.1rem,7.2vw,7.5rem)!important;
  line-height:.92!important;
  letter-spacing:-.055em!important;
}
#finale .wall .l1,#finale .wall .l2{display:block!important;margin:0!important}
#finale .wall .l2{margin-top:.08em!important}
#finale .wall .wword{
  display:inline!important;
  will-change:auto!important;
  background:none!important;
  color:#fff!important;
  -webkit-text-fill-color:currentColor!important;
  opacity:1!important;
  transform:none!important;
  translate:none!important;
  rotate:none!important;
  scale:none!important;
}
#finale .wall .wword.ombre{
  background:var(--ombre)!important;
  -webkit-background-clip:text!important;
  background-clip:text!important;
  color:transparent!important;
  -webkit-text-fill-color:transparent!important;
}
#finale .wall-meta-m{max-width:1280px!important;margin:30px auto 0!important;padding:0!important}

@media(max-width:767px){
  #capabilities .section-head{grid-template-columns:1fr!important;gap:24px!important}
  #finale .wall{font-size:clamp(3rem,13vw,5.2rem)!important}
}
.pricing-note{display:flex;align-items:center;justify-content:space-between;gap:32px}.pricing-note p{margin:0;max-width:72ch}.pricing-note a{flex:0 0 auto;min-height:42px;padding:10px 16px!important;font-size:.875rem!important;line-height:1.25;white-space:nowrap}@media(max-width:767px){.pricing-note{display:block}.pricing-note p{margin-bottom:16px}.pricing-note a{display:inline-flex}}
