/* FaithCore v7.3 | Approved visual refinements: desktop black/gold How It Works,
   phone sticky-photo hero, warm Who We Serve, consistent vector CTA arrows.
   Content, photography, booking URLs, and payroll responsibility wording unchanged. */
:root {--fc73-ink:#0B0B0B;--fc73-gold:#D6AC2B;--fc73-cream:#FCF9F2;--fc73-beige:#F5F0E6;--fc73-bronze:#A57B17}
/* All outbound/consultation icons are non-emoji line art with dependable contrast. */
.fc-link-arrow,.fc-cta-arrow{display:inline-flex!important;align-items:center;justify-content:center;flex:0 0 auto;vertical-align:middle;line-height:1!important;margin-left:8px!important;color:var(--fc73-bronze)!important;transition:transform .2s ease!important}
.fc-arrow-svg{width:16px!important;height:16px!important;display:block!important;stroke:currentColor!important;fill:none!important}
a:hover .fc-link-arrow,a:focus-visible .fc-link-arrow,a:hover .fc-cta-arrow,a:focus-visible .fc-cta-arrow{transform:translate(2px,-2px)}
a.button[href$="consultation.html"] .fc-cta-arrow,
a.button-light[href$="consultation.html"] .fc-cta-arrow,
a.header-cta[href$="consultation.html"] .fc-cta-arrow,
a.hc-founder-action[href$="consultation.html"] .fc-cta-arrow{color:var(--fc73-ink)!important;margin-left:9px!important}
a.header-cta .fc-arrow-svg{width:12px!important;height:12px!important}
a.fc-v3-gold-button .fc-link-arrow,.fc-v4-service-card.fc-v4-service-payroll a .fc-link-arrow{color:var(--fc73-gold)!important}
a.fc-v3-gold-button .fc-link-arrow{color:var(--fc73-ink)!important}
a:focus-visible .fc-arrow-svg{outline:none}
@media(prefers-reduced-motion:reduce){.fc-link-arrow,.fc-cta-arrow{transition:none!important}}

/* Desktop: the site alternates warm services > ink-black process > warm Why FaithCore.
   The opened journey stage is solid gold and black, never a white/black extra card. */
@media(min-width:801px){
 html body main#top section.fc-v4-how{
  background:var(--fc73-ink)!important;color:var(--fc73-cream)!important;
  border-top:2px solid var(--fc73-gold)!important;
  border-bottom:2px solid var(--fc73-gold)!important;
 }
 html body main#top .fc-v4-how .fc-v4-eyebrow{color:var(--fc73-gold)!important}
 html body main#top .fc-v4-how .fc-v4-how-header h2,
 html body main#top .fc-v4-how .fc-v4-how-header h2:not(em){color:var(--fc73-cream)!important}
 html body main#top .fc-v4-how .fc-v4-how-header em{color:var(--fc73-gold)!important}
 html body main#top .fc-v4-how .fc-v4-how-header>p:not(.fc-v4-eyebrow){color:#E1D6C4!important}
 html body main#top .fc-v4-how .fc-v4-steps::before{border-color:var(--fc73-gold)!important}
 html body main#top .fc-v4-how .fc-v4-step,
 html body main#top .fc-v4-how .fc-v4-step:nth-child(n){
  color:var(--fc73-cream)!important;transition:background .25s ease,color .25s ease!important;
 }
 html body main#top .fc-v4-how .fc-v5-home-step-toggle{color:var(--fc73-cream)!important}
 html body main#top .fc-v4-how .fc-v4-step-top b{
  background:var(--fc73-ink)!important;color:var(--fc73-gold)!important;
  border-color:var(--fc73-gold)!important;box-shadow:0 0 0 6px var(--fc73-ink)!important;
 }
 html body main#top .fc-v4-how .fc-v4-step-top>span{color:#D9C9A8!important}
 html body main#top .fc-v4-how .fc-v4-step h3{color:var(--fc73-cream)!important}
 html body main#top .fc-v4-how .fc-v5-step-chevron{color:var(--fc73-gold)!important}
 html body main#top .fc-v4-how .fc-v4-how-link{color:var(--fc73-cream)!important;border-color:var(--fc73-gold)!important}
 html body main#top .fc-v4-how .fc-v4-how-link .fc-link-arrow{color:var(--fc73-gold)!important}
 /* Keep an open step in its existing timeline column; highlight its entire surface. */
 html body main#top .fc-v4-how .fc-v4-step.is-open,
 html body main#top .fc-v4-how .fc-v4-step.is-open:nth-child(n){
  background:var(--fc73-gold)!important;color:var(--fc73-ink)!important;
  border-radius:5px!important;
  padding:12px 9px 18px!important;
  margin:-12px 0 0!important;
  box-shadow:0 10px 25px rgba(0,0,0,.18)!important;
 }
 html body main#top .fc-v4-how .fc-v4-step.is-open .fc-v5-home-step-toggle{color:var(--fc73-ink)!important}
 html body main#top .fc-v4-how .fc-v4-step.is-open .fc-v4-step-top>span,
 html body main#top .fc-v4-how .fc-v4-step.is-open h3,
 html body main#top .fc-v4-how .fc-v4-step.is-open .fc-v5-step-chevron{color:var(--fc73-ink)!important}
 html body main#top .fc-v4-how .fc-v4-step.is-open .fc-v4-step-top b{
  background:var(--fc73-ink)!important;color:var(--fc73-gold)!important;
  border-color:var(--fc73-ink)!important;box-shadow:0 0 0 4px var(--fc73-gold)!important;
 }
 html body main#top .fc-v4-how .fc-v4-step.is-open .fc-v5-home-step-detail{
  background:var(--fc73-gold)!important;border-top:1px solid rgba(11,11,11,.38)!important;
  padding:14px 5px 2px!important;color:var(--fc73-ink)!important;
 }
 html body main#top .fc-v4-how .fc-v4-step.is-open .fc-v5-home-step-detail p,
 html body main#top .fc-v4-how .fc-v4-step.is-open .fc-v5-home-step-detail .fc-v4-step-note,
 html body main#top .fc-v4-how .fc-v4-step.is-open .fc-v5-home-step-detail a,
 html body main#top .fc-v4-how .fc-v4-step.is-open .fc-v5-home-step-detail span{
  color:var(--fc73-ink)!important;
 }
 html body main#top .fc-v4-how .fc-v4-step.is-open .fc-v4-step-note{border-top-color:rgba(11,11,11,.4)!important}
}

/* Mobile-only layout: cinematic sticky photograph, opaque text reveal, warm-state section.
   Existing slider, controls, and CTA remain the same actual interactive elements. */
@media(max-width:760px){
 html body main#top section.hero{
  overflow:visible!important;isolation:auto!important;
  display:flex!important;flex-direction:column!important;
  gap:0!important;padding:0 0 10px!important;position:relative!important;
  background:var(--fc73-ink)!important;
 }
 html body main#top section.hero .fc-hero-slides{
  position:sticky!important;top:70px!important;inset:auto!important;
  z-index:0!important;align-self:stretch!important;order:0!important;
  width:100%!important;aspect-ratio:16/9!important;height:auto!important;
  overflow:hidden!important;isolation:isolate;
  border-bottom:2px solid var(--fc73-gold)!important;
 }
 html body main#top section.hero .fc-hero-slides .fc-hero-slide{z-index:0}
 html body main#top section.hero .hero-copy{
  position:relative!important;z-index:2!important;order:2!important;
  background:var(--fc73-ink)!important;
  box-shadow:0 -9px 16px rgba(0,0,0,.07)!important;
 }
 html body main#top section.hero .hero-card{position:relative!important;z-index:2!important;order:3!important}
 html body main#top section.hero .fc-slide-controls{
  position:absolute!important;z-index:3!important;
  top:calc(100vw * 9 / 16 - 45px)!important;
  bottom:auto!important;
 }
 html body main#top section.hero .fc-slide-controls button{
  color:var(--fc73-gold)!important;border-color:var(--fc73-gold)!important;
 }
 /* Warm contrast after black hero: no consecutive black screen-height sections. */
 html body main#top section#who-we-serve.state-section{
  background:var(--fc73-beige)!important;color:var(--fc73-ink)!important;
  border-top:2px solid var(--fc73-gold)!important;
 }
 html body main#top section#who-we-serve h2{color:var(--fc73-bronze)!important}
 html body main#top section#who-we-serve .eyebrow{color:var(--fc73-bronze)!important}
 html body main#top section#who-we-serve>div>p:last-child{color:#634A33!important}
 html body main#top section#who-we-serve .state-tabs .state-tab{
  background:transparent!important;color:var(--fc73-ink)!important;
  border:1px solid #B59959!important;
 }
 html body main#top section#who-we-serve .state-tabs .state-tab.active,
 html body main#top section#who-we-serve .state-tabs .state-tab[aria-selected="true"]{
  background:var(--fc73-gold)!important;color:var(--fc73-ink)!important;
  border-color:var(--fc73-gold)!important;
 }
 html body main#top section#who-we-serve .state-result{
  background:var(--fc73-cream)!important;border:1px solid #CEB56F!important;
  color:var(--fc73-ink)!important;
 }
 html body main#top section#who-we-serve .state-result h3{color:var(--fc73-ink)!important}
 html body main#top section#who-we-serve .state-result p{color:#634A33!important}
 html body main#top section#who-we-serve .state-result #state-label{color:var(--fc73-bronze)!important}
 /* Remove curved gold wave that made a bulky transition. */
 html body main#top section.hero::after{content:none!important;display:none!important}
 html body main#top section#who-we-serve::before{content:none!important}
 /* Keep timeline cream/ink on phone as previously approved. */
 html body main#top section.fc-v4-how{background:var(--fc73-beige)!important;color:var(--fc73-ink)!important}
}
@media(max-width:390px){
 html body main#top section.hero .fc-hero-slides{top:66px!important}
}
@media(prefers-reduced-motion:reduce){
 html body main#top section.hero .fc-hero-slides{position:relative!important;top:auto!important}
}

/* Active/tapped desktop step remains genuinely solid gold even under :hover/:focus-within.
   Clear left-aligned explanation avoids inherited justified word gaps. */
@media(min-width:801px){
 html body main#top section.fc-v4-how .fc-v4-step.is-open,
 html body main#top section.fc-v4-how .fc-v4-step.is-open:hover,
 html body main#top section.fc-v4-how .fc-v4-step.is-open:focus-within,
 html body main#top section.fc-v4-how .fc-v4-step.is-open:nth-child(n):hover{
  background-color:#D6AC2B!important;background:#D6AC2B!important;
 }
 html[lang="en"] body main#top section.fc-v4-how .fc-v4-step.is-open .fc-v5-home-step-detail p,
 html body main#top section.fc-v4-how .fc-v4-step.is-open .fc-v5-home-step-detail p{
  text-align:left!important;text-align-last:left!important;text-justify:auto!important;
  word-spacing:normal!important;hyphens:none!important;line-height:1.58!important;
 }
}
