/* Homepage OPC entry. Uses the homepage font and existing OPC icons. */
.zmt-fh .fh-opc-base {
  --op-ink:#2a4052; --op-muted:#78877f; --op-line:#dce3dc; --op-gold:#ad8050;
  position:relative; isolation:isolate; display:flex; flex-direction:column; min-width:0; scroll-margin-top:108px;
  padding:18px 22px 16px; border:0; border-radius:20px; color:var(--op-ink);
  background:radial-gradient(ellipse at 95% 0,#eee7d35e,transparent 45%),linear-gradient(145deg,#fffefa,#fbfcf8 58%,#f0f5f0);
  box-shadow:inset 0 0 0 1px #d3dacf,inset 0 2px 0 #ffffffd9,0 4px 7px -5px #294a382e,0 15px 30px -22px #294a3861;
}
.fh-opc-base :is(a,button){-webkit-tap-highlight-color:transparent}
.fh-opc-base svg{fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}
.fop-header{display:flex;align-items:center;justify-content:space-between;gap:12px}
.fop-eyebrow{display:block;margin-bottom:3px;color:#9a8566;font-size:10px;letter-spacing:.14em;line-height:1.3}
.zmt-fh .fop-header h2{font-size:24px;font-weight:650;line-height:1.25;letter-spacing:.015em;color:#263f49}
.zmt-fh .fop-description{margin-top:5px;color:#7b877e;font-size:12px;line-height:1.6}
.fop-mark{display:grid;place-items:center;width:45px;height:45px;flex:none;border-radius:13px;color:#8f784d;background:linear-gradient(145deg,#fffffc,#eee9da);box-shadow:inset 0 0 0 1px #d9d1bd9c,inset 0 2px 0 #fff,0 5px 10px -6px #71604061}
.fop-mark svg{width:25px;height:25px;stroke-width:1.5}
.fop-entries{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px}
.zmt-fh .fop-entry{--entry-color:#387b68;--entry-wash:#e9f3ed;position:relative;display:flex;align-items:center;gap:9px;min-width:0;min-height:56px;padding:7px 10px;border-radius:11px;color:var(--op-ink);background:linear-gradient(115deg,#fff,#ffffff99);box-shadow:0 0 0 1px #dce4dc,inset 0 1px 0 #fff,0 3px 6px -4px #32513c1a;transition:background-color 180ms,box-shadow 180ms,transform 180ms}
.fop-entry[data-entry=cases]{--entry-color:#426d9e;--entry-wash:#eaf1fa}
.fop-entry[data-entry=accounts]{--entry-color:#a87943;--entry-wash:#f8efdf}
.fop-entry[data-entry=planner]{--entry-color:#80739e;--entry-wash:#f0edf7}
.fop-entry[data-entry=policies]{--entry-color:#b87867;--entry-wash:#f9eeea}
.fop-entry[data-entry=communities]{--entry-color:#5a8871;--entry-wash:#eaf2ea}
.fop-entry-icon{display:grid;place-items:center;width:31px;height:34px;flex:none;border-radius:8px;background:var(--entry-wash);color:var(--entry-color);box-shadow:inset 0 0 0 1px #ffffff94}
.fop-entry-icon svg{width:20px;height:20px}
.fop-entry-copy{min-width:0;flex:1}
.fop-entry-copy strong{display:block;font-size:13px;font-weight:650;line-height:1.5;white-space:nowrap}
.fop-entry-copy small{display:block;margin-top:2px;color:#869086;font-size:10px;line-height:1.5;white-space:nowrap}
.fop-entry-arrow{position:absolute;right:8px;top:7px;color:#a0ada1;font-size:11px;opacity:0;transition:opacity 180ms,transform 180ms}
.fop-content{margin-top:10px;flex:1;display:flex;flex-direction:column;min-height:0}
.fop-content-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;border-bottom:1px solid var(--op-line)}
.fop-tabs{display:flex;align-items:center;gap:18px;min-width:0}
.zmt-fh .fop-tab{position:relative;min-height:40px;padding:0;border:0;background:none;color:#889185;font-size:12px;line-height:1.4;white-space:nowrap;transition:color 180ms}
.fop-tab::after{position:absolute;right:0;bottom:-1px;left:0;height:2px;border-radius:2px;background:#aa8652;opacity:0;transform:scaleX(.65);transition:opacity 180ms,transform 180ms;content:""}
.zmt-fh .fop-tab[aria-selected=true]{color:#425a49;font-weight:650}
.fop-tab[aria-selected=true]::after{opacity:1;transform:scaleX(1)}
.zmt-fh .fop-refresh{display:flex;align-items:center;justify-content:center;gap:5px;min-width:60px;min-height:40px;padding:0 2px;border:0;background:none;color:#8b957f;font-size:11px;white-space:nowrap}
.fop-refresh svg{width:13px;height:13px}
.fop-items{display:flex;flex:1;flex-direction:column;min-height:94px}
.zmt-fh .fop-item{display:flex;flex:1;align-items:center;gap:11px;min-width:0;padding:5px 2px;border-bottom:1px solid #e1e7df9c;transition:background-color 160ms}
.fop-item:last-child{border-bottom:0}
.fop-item-number{font-size:12px;font-weight:550;color:#b2af9e;letter-spacing:.03em;width:23px;flex:none;font-variant-numeric:tabular-nums}
.fop-item-copy{min-width:0;flex:1}
.fop-item-copy strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#334a43;font-size:13px;font-weight:550;line-height:1.6}
.fop-item-copy small{display:block;margin-top:2px;color:#91a093;font-size:10px;line-height:1.5}
.fop-item>svg{width:15px;height:15px;color:#a99068;transition:transform 160ms}
.fop-footer{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:8px;padding-top:8px;border-top:1px solid #dbe1d5}
.zmt-fh .fop-primary{display:inline-flex;justify-content:space-between;align-items:center;gap:23px;min-height:43px;padding:0 16px;border-radius:9px;color:#fffdf5;font-size:13px;font-weight:600;background:linear-gradient(125deg,#507567,#395a4d);box-shadow:inset 0 1px 0 #a3bda4,0 0 0 1px #3d61511a,0 5px 9px -5px #324e4775;transition:box-shadow 180ms,transform 180ms}
.fop-primary svg{width:17px;height:17px}
.zmt-fh .fop-plan{display:flex;align-items:center;gap:6px;min-height:43px;font-size:12px;color:#9b7a4f}
.fop-plan svg{width:15px;height:15px}
.fop-feed-actions{display:flex;gap:8px;align-items:center}
.zmt-fh .fop-all{display:flex;gap:3px;align-items:center;justify-content:center;min-width:40px;min-height:40px;color:#8b957f;font-size:11px;white-space:nowrap}
@media(hover:hover) and (pointer:fine){
  .zmt-fh .fop-entry:hover{transform:translateY(-1px);background:#fff;box-shadow:0 0 0 1px #a8bba8,0 5px 10px -6px #516d4c40}
  .fop-entry:hover .fop-entry-arrow{opacity:1;transform:translate(1px,-1px)}
  .zmt-fh .fop-item:hover{background:#e8eee650}
  .fop-item:hover>svg{transform:translateX(2px)}
  .zmt-fh .fop-primary:hover{box-shadow:inset 0 1px 0 #a3bda4,0 7px 12px -6px #324e4775;transform:translateY(-1px);color:#fff}
  .zmt-fh .fop-plan:hover,.zmt-fh .fop-refresh:hover{color:#614c2a}
}
.fop-primary:active,.fop-entry:active{scale:.96}
.fh-opc-base :is(a,button):focus-visible{outline:2px solid #658876;outline-offset:3px}
@media(max-width:1100px) and (min-width:768px){.fop-entries{grid-template-columns:repeat(2,minmax(0,1fr))}.fop-tabs{gap:12px}.fop-header h2{font-size:24px}}
@media(max-width:767px){
  .zmt-fh .fh-opc-base{padding:17px 16px 15px;border-radius:18px}
  .zmt-fh .fop-header h2{font-size:23px}
  .fop-eyebrow{font-size:9px}
  .fop-mark{width:38px;height:38px;border-radius:11px}
  .fop-mark svg{width:22px;height:22px}
  .zmt-fh .fop-description{margin-top:6px;font-size:11px}
  .fop-entries{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:12px}
  .zmt-fh .fop-entry{min-height:55px;padding:7px 9px;gap:8px}
  .fop-entry-copy strong{font-size:12px}
  .fop-entry-copy small{font-size:10px}
  .fop-entry-icon{width:27px;height:30px}
  .fop-entry-icon svg{width:18px;height:18px}
  .fop-tabs{gap:12px}
  .zmt-fh .fop-tab{font-size:11px;min-height:40px}
  .fop-content{margin-top:9px}
  .fop-items{min-height:59px}
  .zmt-fh .fop-item{border-bottom:0}
  .fop-item:nth-child(n+2){display:none}
  .fop-item-copy strong{font-size:12px}
  .fop-footer{margin-top:5px;padding-top:9px;gap:8px}
  .zmt-fh .fop-primary{gap:12px;padding:0 12px;font-size:12px}
  .zmt-fh .fop-plan{font-size:11px}
  .fop-content-toolbar{gap:5px}
  .fop-feed-actions{gap:1px}
  .zmt-fh .fop-refresh{min-width:40px}
  .fop-refresh span{display:none}
  .zmt-fh .fop-all{min-width:40px;font-size:10px}
}
@media(max-width:359px){.zmt-fh .fh-opc-base{padding-inline:13px}.fop-tabs{gap:10px}.fop-entry-copy small{font-size:9px}.fop-entry-icon{width:24px}}
@media(prefers-reduced-motion:reduce){.fh-opc-base *{transition:none!important;animation:none!important}}
.fop-empty{display:flex;align-items:center;min-height:94px;margin:0;color:#819084;font-size:12px}
.fop-refresh:disabled{opacity:.42;cursor:default}
@media(max-width:767px){.fop-empty{min-height:59px}}

.zmt-fh .fh-opc-base .fop-footer a.fop-primary{color:#fffdf5;font-size:13px}
.zmt-fh .fh-opc-base .fop-footer a.fop-plan{color:#9b7a4f;font-size:12px}
/* Homepage OPC base: surface and interaction refinement. */
.zmt-fh .fh-opc-base{
  padding:18px 22px 16px;
  background:radial-gradient(ellipse at 93% -8%,rgba(216,192,143,.25),transparent 43%),radial-gradient(ellipse at -7% 102%,rgba(190,218,195,.18),transparent 42%),linear-gradient(150deg,#fffefa,#fcfdf9 59%,#f3f7f1);
  box-shadow:inset 0 0 0 1px rgba(167,184,161,.66),inset 0 2px 0 rgba(255,255,255,.95),0 5px 9px -7px rgba(31,68,46,.23),0 20px 38px -27px rgba(38,66,45,.42);
  -webkit-font-smoothing:antialiased;
}
.fop-eyebrow{color:#927650;font-size:10.5px;font-weight:600;letter-spacing:.13em}
.zmt-fh .fop-header h2{font-size:26px;letter-spacing:-.025em;color:#284339;text-wrap:balance}
.zmt-fh .fop-description{margin-top:4px;color:#677c70;font-size:12.5px;line-height:1.65;text-wrap:pretty}
.fop-mark{background:linear-gradient(145deg,#fffdf5,#f1ebdb 76%);color:#96774a;box-shadow:inset 0 0 0 1px #d8cfb9,inset 0 2px 0 #fff,0 7px 15px -9px #74634299}
.fop-entries{gap:8px;margin-top:12px}
.zmt-fh .fop-entry{min-height:57px;padding:7px 21px 7px 9px;background:linear-gradient(120deg,var(--entry-wash) -140%,#fff 68%);box-shadow:inset 0 0 0 1px #d9e4d8,inset 0 2px 0 #fff,0 4px 9px -6px #30594535}
.fop-entry-copy strong{font-size:13.2px;color:#2d4850;font-weight:650;letter-spacing:-.01em}
.fop-entry-copy small{font-size:10.5px;color:#6f8278}
.fop-entry-arrow{top:18px;right:9px;color:#8ba591;opacity:.9}
.fop-entry-icon{box-shadow:inset 0 0 0 1px #ffffffd9,0 3px 5px -4px #4c70534d}
.zmt-fh .fop-tab{color:#708377;font-size:12px;font-weight:550}
.zmt-fh .fop-tab[aria-selected=true]{color:#2e5646;font-weight:700}
.fop-tab::after{height:3px;background:linear-gradient(90deg,#b99660,#6e927a)}
.fop-content-toolbar{border-bottom-color:#d3dfd4}
.zmt-fh .fop-refresh,.zmt-fh .fop-all{color:#648272}
.fop-items{min-height:96px;margin-top:6px;padding:0 10px;border-radius:10px;background:linear-gradient(120deg,#f4f8f2,#fbfcf8);box-shadow:inset 0 0 0 1px #e0e9dd,inset 0 2px 4px #a7c0a50b}
.zmt-fh .fop-item{gap:10px;padding:4px 1px;border-bottom-color:#dce6da}
.fop-item-number{display:grid;place-items:center;width:25px;height:25px;flex:none;border-radius:7px;background:#e8eee6;color:#6a8b72;font-size:11px;font-weight:650;box-shadow:inset 0 0 0 1px #d9e4d6;font-variant-numeric:tabular-nums}
.fop-item-copy strong{color:#28463d;font-size:13px;font-weight:650}
.fop-item-copy small{color:#748a7c;font-size:10.5px}
.fop-footer{margin-top:7px;padding-top:8px;border-top-color:#d3dfd2}
.zmt-fh .fh-opc-base .fop-footer a.fop-primary{background:linear-gradient(120deg,#4e7564,#315648);box-shadow:inset 0 1px 0 #a8c4b3,0 5px 13px -6px #244c3c8c;font-weight:650}
.zmt-fh .fh-opc-base .fop-footer a.fop-plan{color:#80643f;font-weight:600}
@media(hover:hover) and (pointer:fine){
  .zmt-fh .fop-entry:hover{background:#fff;box-shadow:inset 0 0 0 1px #a5bca5,inset 0 2px 0 #fff,0 8px 17px -10px #42694a82}
  .fop-entry:hover .fop-entry-arrow{transform:translate(2px,-2px)}
  .zmt-fh .fop-item:hover{background:#e7f0e5a8}
  .zmt-fh .fop-plan:hover{text-decoration:underline;text-underline-offset:3px}
}
.fh-opc-base[data-interacted] .fop-item{animation:fop-item-enter .22s cubic-bezier(.2,0,0,1) both}
.fh-opc-base[data-interacted] .fop-item:nth-child(2){animation-delay:35ms}
@keyframes fop-item-enter{from{opacity:.45;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:767px){
  .zmt-fh .fh-opc-base{padding:17px 16px 15px}
  .zmt-fh .fop-header h2{font-size:23px}
  .zmt-fh .fop-description{font-size:11.5px}
  .zmt-fh .fop-entry{min-height:55px;padding-right:14px}
  .fop-entry-arrow{display:none}
  .fop-entry-copy strong{font-size:12px}
  .fop-entry-copy small{font-size:10px}
  .fop-items{min-height:59px;margin-top:5px;padding:0 8px}
  .fop-item-number{width:23px;height:23px}
  .fop-item-copy strong{font-size:12px}
}
@media(prefers-reduced-motion:reduce){.fh-opc-base[data-interacted] .fop-item{animation:none!important}}
@media(max-width:380px){
  .fop-tabs{gap:7px}
  .zmt-fh .fop-tab{font-size:10.5px}
  .zmt-fh .fop-refresh,.zmt-fh .fop-all{min-width:32px}
}
