/* FAQ en desplegables */
.faq-item { margin: 0 0 12px; border: 1px solid rgba(255,255,255,.09); border-radius: 14px; background: #161616; overflow: hidden; transition: border-color .2s, box-shadow .2s; }
.faq-item:hover { border-color: rgba(255,107,0,.45); }
.faq-item[open] { border-color: rgba(255,107,0,.55); box-shadow: 0 8px 26px rgba(0,0,0,.35); }
.faq-item > summary { list-style: none; cursor: pointer; display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 16px 20px; user-select: none; }
.faq-item > summary::-webkit-details-marker { display: none; }
.faq-item > summary:hover { background: rgba(255,255,255,.03); }
.faq-q { font-size: 1.05rem; font-weight: 800; color: #fff; line-height: 1.35; }
.faq-caret { flex-shrink: 0; color: #ff6b00; font-size: .85rem; transition: transform .25s; }
.faq-item[open] > summary .faq-caret { transform: rotate(180deg); }
.faq-item[open] > summary { border-bottom: 1px solid rgba(255,255,255,.08); }
.faq-body { padding: 18px 22px 22px; color: #cfcfcf; line-height: 1.65; font-size: .95rem; }
.faq-body p { margin: 0 0 .8rem; }
.faq-body ol, .faq-body ul { margin: .4rem 0 1rem; }
.faq-body ol { padding-left: 1.3rem; }
.faq-body li { margin: .45rem 0; }
.faq-body code { background: rgba(255,255,255,.09); border-radius: 5px; padding: 1px 6px; font-size: .88em; color: #ffb066; }
.faq-body blockquote { margin: 0 0 1rem; padding: .6rem 1rem; border-left: 3px solid #ff6b00; background: rgba(255,107,0,.07); border-radius: 0 8px 8px 0; }
.faq-h4 { margin: 1.3rem 0 .6rem; font-size: 1rem; font-weight: 800; color: #fff; }
.faq-h4:first-child { margin-top: 0; }
.faq-tip { margin: 1rem 0; padding: 12px 16px; border-radius: 10px; background: rgba(255,107,0,.08); border: 1px solid rgba(255,107,0,.3); font-size: .9rem; }
@media (max-width: 640px) { .faq-item > summary { padding: 14px 16px; } .faq-body { padding: 14px 16px 18px; } .faq-q { font-size: .98rem; } }

/* Imágenes dentro de los desplegables */
.faq-figs { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 16px; margin: .6rem 0 1.2rem; }
.faq-fig { margin: 0; border: 1px solid rgba(255,255,255,.09); border-radius: 12px; background: #101010; overflow: hidden; }
.faq-fig img { display: block; width: 100%; height: auto; }
.faq-fig figcaption { padding: 10px 14px; font-size: .85rem; color: #bdbdbd; line-height: 1.5; }
.faq-fig-cert { max-width: 560px; margin: 1rem 0 .4rem; }
