.fly-alternatives-toggle {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  width:100%;
  margin-top:16px;
  border:1px solid rgba(16,35,27,.14);
  border-radius:12px;
  padding:10px 12px;
  background:#f4f8f5;
  color:#173a2b;
  font:inherit;
  font-size:.82rem;
  font-weight:900;
  cursor:pointer;
}
.fly-alternatives-toggle:hover,
.fly-alternatives-toggle:focus-visible { background:#edf4ef; border-color:rgba(31,104,73,.3); }
.fly-alternatives-toggle[aria-expanded="true"] span:last-child { transform:rotate(180deg); }
.fly-alternatives-toggle span:last-child { transition:transform .18s ease; }

.fly-alternatives-panel {
  margin-top:10px;
  border:1px solid rgba(16,35,27,.1);
  border-radius:14px;
  background:#fbfdfb;
  overflow:hidden;
}
.fly-alternatives-panel[hidden] { display:none; }
.fly-alternatives-heading { padding:13px 14px 11px; border-bottom:1px solid rgba(16,35,27,.08); }
.fly-alternatives-heading strong { display:block; color:#10231b; font-size:.84rem; }
.fly-alternatives-heading span { display:block; margin-top:3px; color:#66786e; font-size:.72rem; line-height:1.4; }
.fly-alternatives-list { display:grid; }
.fly-alternative-row {
  display:grid;
  grid-template-columns:76px minmax(0,1fr);
  min-width:0;
  border-bottom:1px solid rgba(16,35,27,.08);
  background:#fff;
}
.fly-alternative-row:last-child { border-bottom:0; }
.fly-alternative-image-link {
  display:grid;
  place-items:center;
  min-height:86px;
  border-right:1px solid rgba(16,35,27,.08);
  background:#fff;
  text-decoration:none;
}
.fly-alternative-image,
.fly-alternative-image-placeholder {
  display:block;
  width:100%;
  height:86px;
  object-fit:contain;
  background:#fff;
}
.fly-alternative-image-placeholder {
  display:grid;
  place-items:center;
  color:rgba(16,35,27,.28);
  font-size:.85rem;
  font-weight:950;
  letter-spacing:.08em;
}
.fly-alternative-copy { min-width:0; padding:10px 11px; }
.fly-alternative-title { display:flex; align-items:flex-start; justify-content:space-between; gap:8px; }
.fly-alternative-title strong { color:#10231b; font-size:.8rem; line-height:1.3; }
.fly-alternative-title span { flex:0 0 auto; color:#75877d; font-size:.68rem; font-weight:800; }
.fly-alternative-copy p { margin:5px 0 0; color:#596a61; font-size:.7rem; line-height:1.45; }
.fly-alternative-product-link { display:inline-flex; margin-top:6px; color:#315f49; font-size:.68rem; font-weight:900; text-decoration:none; }
.fly-alternative-product-link:hover,
.fly-alternative-product-link:focus-visible { text-decoration:underline; }
.fly-alternatives-more {
  display:block;
  padding:11px 14px;
  background:#f2f7f4;
  color:#244334;
  font-size:.75rem;
  font-weight:900;
  text-decoration:none;
}
.fly-alternatives-more:hover,
.fly-alternatives-more:focus-visible { text-decoration:underline; }

.fm-similar-context {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin:0 0 16px;
  border:1px solid rgba(31,104,73,.16);
  border-radius:14px;
  padding:12px 14px;
  background:#f2f8f4;
  color:#40564a;
  font-size:.8rem;
}
.fm-similar-context strong { color:#173a2b; }
.fm-similar-context a { flex:0 0 auto; color:#244334; font-weight:900; text-decoration:none; }
.fm-similar-context a:hover,
.fm-similar-context a:focus-visible { text-decoration:underline; }

@media (max-width:760px) {
  .fly-alternative-row { grid-template-columns:68px minmax(0,1fr); }
  .fly-alternative-image,
  .fly-alternative-image-placeholder { height:78px; }
  .fly-alternative-image-link { min-height:78px; }
  .fm-similar-context { align-items:flex-start; flex-direction:column; }
}

@media (prefers-reduced-motion: reduce) {
  .fly-alternatives-toggle span:last-child { transition:none; }
}
