/* FAQ */
.oc-faq { margin: 14px 0 28px; }
.oc-faq details { border: 1px solid #dde6f5; border-radius: 8px; margin-bottom: 8px; overflow: hidden; }
.oc-faq details[open] { border-color: #2563b0; }
.oc-faq summary {
  display: flex;
  align-items: center;
  gap: 10px;
  background: #f0f5ff;
  padding: 13px 16px;
  cursor: pointer;
  font-weight: bold;
  font-size: 0.9em;
  color: #1a3a6b;
  list-style: none;
  user-select: none;
}
.oc-faq summary::-webkit-details-marker { display: none; }
.oc-faq summary::before {
  content: 'Q';
  flex-shrink: 0;
  background: #2563b0;
  color: #fff;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 0.82em;
  font-weight: bold;
}
.oc-faq summary::after {
  content: '▼';
  margin-left: auto;
  font-size: 0.7em;
  color: #888;
  transition: transform 0.2s;
}
.oc-faq details[open] summary::after { transform: rotate(180deg); }
.oc-faq .oc-faq-a {
  padding: 13px 16px 13px 42px;
  font-size: 0.87em;
  color: #444;
  line-height: 1.7;
  position: relative;
  background: #fff;
}
.oc-faq .oc-faq-a::before {
  content: 'A';
  position: absolute;
  left: 12px;
  top: 13px;
  background: #e8f5e9;
  color: #2e7d32;
  width: 22px;
  height: 22px;
  border-radius: 50%;
  font-size: 0.82em;
  font-weight: bold;
  line-height: 22px;
  text-align: center;
}
