/* Company home (slice 50). Loads after site.css and reuses the site's bands, hero and method steps.
   Everything here is prefixed co- so the Salesforce page's pinned classes stay untouched. */
/* The top of the page fills the viewport: the hero takes all the room (the client strip that used
   to sit under it was retired on 17 Oct 2026). The dot field and the pointer light come from the shared shell. */
.co-top{min-height:calc(100svh - 5.5rem);display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:minmax(0,1fr)}
/* The whole hero block sits on the section's floor, headline just above the lede and buttons. */
.co-hero{display:flex;align-items:stretch;padding-top:3.5rem;padding-bottom:5rem}
.co-hero::before{opacity:.75}
.co-hero > .wrap{width:100%;display:flex;flex-direction:column}
.co-hero .fn-hero-intro{display:flex;flex-direction:column;justify-content:flex-end;flex:1 1 auto}
.co-hero .fn-hero-side{margin-top:2rem}
.co-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;margin-top:2rem;border:1px solid var(--rule-2);background:var(--rule-2)}
.co-card{position:relative;min-width:0;padding:1.5rem 1.5rem 1.75rem;background:var(--white);display:flex;flex-direction:column}
.co-card p{margin:0}
.co-card-kicker{font-size:var(--fs-12);font-weight:600;font-variation-settings:"wght" 600;letter-spacing:.04em;text-transform:uppercase;color:var(--teal-ink)}
.co-card h3{margin:.6rem 0 .6rem}
.co-card h3 a{color:var(--ink);text-decoration:none}
.co-card h3 a::after{content:"";position:absolute;inset:0}
.co-card h3 a:focus-visible{outline:none}
.co-card:focus-within{outline:2px solid var(--teal-ink);outline-offset:-2px}
.co-card:hover h3 a{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
.co-card-promise{font-size:var(--fs-15);line-height:1.5;color:var(--ink);font-variation-settings:"wght" 560}
.co-card ul{margin:1rem 0 1.25rem;padding-left:1.1rem;font-size:var(--fs-15);line-height:1.5;color:var(--ink-2)}
.co-card li+li{margin-top:.5rem}
.co-card-for{margin-top:auto!important;padding-top:.75rem;font-size:var(--fs-13);line-height:var(--lh-small);color:var(--ink-3)}
/* Bands fade into one another instead of cutting: each section carries the gradient from its
   neighbour's colour into its own. */
.co-paper{background:linear-gradient(180deg,var(--canvas) 0,var(--paper) 9rem,var(--paper) calc(100% - 9rem),var(--canvas) 100%)}
.co-how{background:var(--canvas)}
.co-steps{list-style:none;counter-reset:co;position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:2.5rem;margin:0;padding:0}
.co-steps::before{content:"";position:absolute;left:.55rem;right:0;top:.55rem;height:1.5px;background:var(--rule-2)}
.co-steps li{counter-increment:co;position:relative;padding-top:2.25rem;min-width:0}
.co-steps li::before{content:"";position:absolute;top:0;left:0;width:1.15rem;height:1.15rem;border-radius:50%;background:var(--canvas);border:1.5px solid var(--teal);box-sizing:border-box}
.co-steps li:last-child::before{background:var(--teal)}
.co-steps li::after{content:counter(co,decimal-leading-zero);position:absolute;top:0;left:1.7rem;font-size:var(--fs-12);font-weight:600;font-variation-settings:"wght" 600;line-height:1.15rem;letter-spacing:.04em;color:var(--teal-ink)}
.co-steps h3{margin:0 0 .5rem;font-size:var(--fs-22);line-height:1.25;font-weight:600;font-variation-settings:"wght" 600;letter-spacing:-.015em}
.co-steps p{margin:0;font-size:var(--fs-15);line-height:1.55;color:var(--ink-3)}
.co-who{max-width:46rem}
.co-who p{font-size:var(--fs-18);line-height:1.6;color:var(--ink-2)}
.co-who p:first-of-type{font-size:var(--fs-22);line-height:1.4;color:var(--ink);font-variation-settings:"wght" 560}
.co-facts{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin:2rem 0 0;padding:0;border:0}
.co-facts li{padding:1.1rem 1.2rem 1.2rem;border-radius:18px;background:var(--paper);border:1px solid var(--rule)}
.co-facts strong{display:block;margin-bottom:.3rem;font-size:var(--fs-15);font-weight:600;font-variation-settings:"wght" 600;letter-spacing:-.01em}
.co-facts span{display:block;font-size:var(--fs-15);line-height:1.5;color:var(--ink-3)}
.co-own{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:clamp(2rem,5vw,5rem);align-items:start}
.co-own-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--rule-2)}
.co-own-list li{padding:1rem 0;border-bottom:1px solid var(--rule);font-size:var(--fs-15);color:var(--ink-2)}
.co-own-list strong{display:block;color:var(--ink);margin-bottom:.2rem}
.co-own .route-more{margin-top:1.5rem}
@media (prefers-reduced-motion:no-preference){
  .co-card{transition:transform 160ms ease,box-shadow 160ms ease}
  .co-card:hover{transform:translateY(-2px);box-shadow:0 10px 24px -18px rgba(15,23,42,.35)}
}
@media (max-width:68rem){.co-grid,.co-facts,.co-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.co-own{grid-template-columns:1fr}.co-steps::before{display:none}}
@media (max-width:47.5rem){.co-hero{padding-top:2rem;padding-bottom:3.25rem}.co-hero .fn-hero-side{margin-top:1.5rem}.co-grid,.co-facts{grid-template-columns:1fr}.co-steps{grid-template-columns:1fr;gap:1.75rem}}
