
#page-home .hof-sec{ background:#fff; padding:66px 24px 22px; }
#page-home .hof-in{ max-width:1200px; margin:0 auto; text-align:center; }
#page-home .hof-eyebrow{ display:inline-block; background:#e9efe1; color:#5f7350 !important; font-size:.72rem; font-weight:700; letter-spacing:.18em; text-transform:uppercase; padding:8px 18px; border-radius:999px; }
#page-home .hof-h{ font-family:"Playfair Display",Georgia,serif; color:#243447 !important; font-size:clamp(2.1rem,5vw,3.9rem); line-height:1.04; margin:20px 0 10px; font-weight:700; letter-spacing:-.01em; }
#page-home .hof-h .hof-dot{ color:#7d9e77 !important; }
#page-home .hof-sub{ color:#6b7280; font-size:clamp(1rem,2vw,1.32rem); margin:0 auto 36px; max-width:640px; }
#page-home .hof-sub b{ color:#5f7350; font-weight:700; }

#page-home .hof-groups{ display:grid; grid-template-columns:minmax(0,4fr) minmax(0,1.5fr) minmax(0,3fr) minmax(0,4fr); gap:16px; align-items:stretch; text-align:left; }
#page-home .hof-group{ background:#fdfbf7; border:1px solid #efe7db; border-radius:22px; padding:18px 14px 20px; }
#page-home .hof-ghead{ display:flex; align-items:center; gap:8px; font-size:.72rem; font-weight:700; letter-spacing:.13em; text-transform:uppercase; color:#3a4a3f; padding-bottom:12px; margin-bottom:16px; border-bottom:1px solid #efe7db; }
#page-home .hof-nodes{ display:flex; align-items:flex-start; justify-content:center; gap:6px; }
#page-home .hof-node{ display:flex; flex-direction:column; align-items:center; gap:9px; flex:1 1 0; min-width:0; text-align:center; }
#page-home .hof-ico{ width:56px; height:56px; border-radius:999px; display:flex; align-items:center; justify-content:center; flex:0 0 auto; }
#page-home .hof-label{ font-size:.8rem; font-weight:600; color:#31465F; line-height:1.2; }
#page-home .hof-arrow{ color:#cbc5b8; margin-top:18px; flex:0 0 auto; }

#page-home .hof-i{ display:inline-block; vertical-align:middle; fill:none; stroke:currentColor; stroke-width:1.9; stroke-linecap:round; stroke-linejoin:round; }
#page-home .hof-ghead .hof-i{ width:17px; height:17px; }
#page-home .hof-ico .hof-i{ width:26px; height:26px; }
#page-home .hof-arrow .hof-i{ width:16px; height:16px; }

#page-home /* The four Capture tools carry the same palette as their cards in #huTools:
   navy / sage / blush / stone. Dedicated classes, because hof-t-coral, -sage and
   -gold are shared with other nodes in this diagram and must not shift. */
/* `color` needs !important: a global `span:not([class*=badge])...{color:#2B2B2B}`
   rule carries more specificity than a single class and was flattening the icons. */
.hof-t-navy { background:#edf1f6; color:#243447 !important; }
.hof-t-lsage{ background:#eef4ec; color:#5f7350 !important; }
.hof-t-blush{ background:#f7ede9; color:#a05949 !important; }
.hof-t-stone{ background:#f2f0ea; color:#736b62 !important; }
.hof-t-coral{ background:#fdece8; color:#e0674f; }
#page-home .hof-t-sage{ background:#e9f0e4; color:#6f8f63; }
#page-home .hof-t-gold{ background:#f6ecd3; color:#c99a3f; }
#page-home .hof-t-rose{ background:#fbe6e6; color:#d9756a; }
#page-home .hof-t-orange{ background:#fbe8d6; color:#e08a3c; }
#page-home .hof-t-red{ background:#fbe6e6; color:#d9534f; }
#page-home .hof-hc-navy{ color:#243447; }
   .hof-hc-coral{ color:#e0674f; }
#page-home .hof-hc-green{ color:#5f7350; }
#page-home .hof-hc-orange{ color:#e08a3c; }

#page-home .hof-foot{ margin-top:22px; border:1px solid #efe7db; border-radius:22px; background:#fff; padding:22px 26px; display:flex; align-items:center; gap:26px; flex-wrap:wrap; justify-content:space-between; text-align:left; }
#page-home .hof-foot-l{ display:flex; align-items:center; gap:18px; flex:1 1 430px; }
#page-home .hof-clover{ width:64px; height:64px; border-radius:999px; background:#edf3e6; color:#5f7350; flex:0 0 auto; display:flex; align-items:center; justify-content:center; }
#page-home .hof-clover .hof-i{ width:30px; height:30px; }
#page-home .hof-foot-div{ width:1px; align-self:stretch; min-height:52px; background:#e6ddcf; flex:0 0 auto; }
#page-home .hof-foot-h{ font-weight:700; color:#5f7350 !important; font-size:1.1rem; margin:0 0 5px; }
#page-home .hof-foot-p{ color:#6b7280; font-size:.9rem; line-height:1.55; margin:0; }
#page-home .hof-trust{ display:flex; gap:28px; flex:0 0 auto; flex-wrap:wrap; justify-content:flex-start; }
#page-home .hof-tr{ display:flex; flex-direction:column; align-items:center; gap:9px; text-align:center; }
#page-home .hof-tr .hof-i{ width:24px; height:24px; color:#5f7350; }
#page-home .hof-tr span{ font-size:.78rem; font-weight:600; color:#3a4a3f; }

@media (max-width:1240px){
  #page-home .hof-groups{ grid-template-columns:1fr 1fr; }
}
@media (max-width:640px){
  #page-home .hof-sec{ padding:46px 18px 16px; }
  #page-home .hof-groups{ grid-template-columns:1fr; gap:12px; }
  #page-home .hof-ico{ width:50px; height:50px; }
  #page-home .hof-ico .hof-i{ width:23px; height:23px; }
  #page-home .hof-foot{ padding:20px; gap:20px; }
  #page-home .hof-foot-div{ display:none; }
  #page-home .hof-foot{ flex-direction:column; align-items:stretch; }
  #page-home .hof-trust{ width:100%; display:grid; grid-template-columns:repeat(4,1fr); gap:16px 8px; }
  #page-home .hof-tr{ min-width:0; }
  #page-home .hof-tr span{ font-size:.72rem; }
}
@media (max-width:440px){
  #page-home .hof-arrow{ display:none; }
  #page-home .hof-nodes{ gap:10px; flex-wrap:wrap; }
  #page-home .hof-node{ flex:0 0 60px; }
}
