/* Homepage paint refinements only; retain the shared layout and motion rules. */
.home-page .home-intro .intro-grid{border-top-color:transparent}
.home-page .home-training .media-copy{border-top-color:transparent;border-bottom-color:transparent}
.home-page .home-stats .metric-strip{border-top-color:transparent;border-bottom-color:transparent}

/* The same solid brand surface and quiet technical grid as the approved public panels. */
.home-page .home-services .card:first-child,
.home-page .home-apart .apart-card,
.home-page .home-cta .cta-panel{
  background-color:var(--brand);
  background-image:
    linear-gradient(90deg,color-mix(in srgb,var(--on-brand) 3%,transparent) 1px,transparent 1px),
    linear-gradient(0deg,color-mix(in srgb,var(--on-brand) 3%,transparent) 1px,transparent 1px);
  background-size:48px 48px;
  background-position:0 0;
  color:var(--on-brand);
}
.home-page .home-services .card:first-child,
.home-page .home-apart .apart-card{border-color:var(--brand)}
html .home-page .home-services .card:first-child::before{background:none}
.home-page .home-services .card:first-child :is(h3,p,.card-link),
.home-page .home-apart :is(h3,.apart-sub,.apart-points li,.apart-steps li){color:var(--on-brand)}
.home-page .home-services .card:first-child .card-number,
.home-page .home-apart :is(.eyebrow,.apart-num){background:var(--brand-hover);color:var(--on-brand)}
.home-page .home-services .card:first-child .icon-line{background:var(--on-brand)}
.home-page .home-apart .apart-points li::before{background-color:var(--brand-hover)}
.home-page .home-services .card:first-child:focus-within{outline-color:var(--on-brand);outline-offset:-4px}
.home-page .home-services .card:first-child .mobile-disclosure>summary{color:var(--on-brand)}
.home-page .home-services .card:first-child .mobile-disclosure>summary::after{border-color:var(--on-brand)}
.home-page .home-services .card:first-child .mobile-disclosure>summary:focus-visible{outline-color:var(--on-brand);outline-offset:-3px}

/* One outer frame, with a divider in the existing gap rather than another box. */
.home-page .home-cta .cta-panel{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--on-brand) 24%,transparent)}
.home-page .home-cta .cta-panel :is(h2,p){color:var(--on-brand)}
.home-page .home-cta .actions{position:relative}
.home-page .home-cta .actions::before{
  content:"";position:absolute;inset-block:0;inset-inline-start:-20px;width:1px;
  background:color-mix(in srgb,var(--on-brand) 24%,transparent);pointer-events:none;
}
.home-page .home-cta .btn.primary{background:var(--on-brand);color:var(--brand-hover);border-color:var(--on-brand)}
.home-page .home-cta .btn.primary:hover{background:var(--on-brand-muted)}
.home-page .home-cta .btn.ghost:hover{background:var(--brand-hover)}
.home-page .home-cta .btn:focus-visible{outline-color:var(--on-brand)}
@media(max-width:800px){
  .home-page .home-cta .actions::before{inset-block:auto;inset-block-start:-12px;inset-inline:0;width:auto;height:1px}
}
@media(max-width:768px){
  .home-page .home-cta .actions::before{inset-block-start:-10px}
}

/* Progressive enhancement: static content stays visible without JS. Individual translate
   keeps entrance motion separate from the existing card hover transforms. */
.home-page .home-reveal{--home-reveal-x:0px;--home-reveal-y:8px}
.home-page .hero-visual.home-reveal{--home-reveal-x:10px;--home-reveal-y:0px}
html[dir="rtl"] .home-page .hero-visual.home-reveal{--home-reveal-x:-10px}
.home-page .home-reveal-pending{opacity:0;translate:var(--home-reveal-x) var(--home-reveal-y)}
.home-page .home-reveal-entering{animation:homeReveal 550ms cubic-bezier(.2,.65,.3,1) both;animation-delay:var(--home-reveal-delay,0ms)}
@keyframes homeReveal{
  from{opacity:0;translate:var(--home-reveal-x) var(--home-reveal-y)}
  to{opacity:1;translate:none}
}
@media(prefers-reduced-motion:reduce){
  .home-page .home-reveal{opacity:1!important;translate:none!important;animation:none!important}
}

/* A service card is one native link at every viewport size. */
.home-page .home-services a.card{color:inherit;text-decoration:none}
.home-page .home-services a.card:focus-visible{outline:3px solid var(--focus-ring);outline-offset:3px}
.home-page .home-services a.card:first-child:focus-visible{outline-color:var(--on-brand);outline-offset:-4px}
