/* Página de preguntas frecuentes; mantiene el marco y las tipografías del sitio. */
.up-faq {
  max-width: 90rem;
  margin: 0 auto;
  padding-top: 17rem;
  padding-bottom: 3rem;
}
.up-faq-heading { margin-bottom: 2.5rem; }
.up-faq-heading h1 {
  font-family: 'OwnersXXNarrow-XBlack', sans-serif;
  font-weight: 900;
  font-size: clamp(2.75rem, 5vw, 4.5rem);
  line-height: 1.1;
  text-transform: uppercase;
  margin-bottom: 1.125rem;
}
.up-faq-heading .up-prose { font-size: 1.25rem; max-width: 48rem; }
.up-faq-panel { background: #fff; border-radius: 1.625rem; padding: 3.125rem; }
.up-faq-group + .up-faq-group { margin-top: 3.5rem; }
.up-faq-group > h2 {
  font-family: 'OwnersXXNarrow-XBlack', sans-serif;
  font-weight: 900;
  font-size: 2rem;
  line-height: 1.2;
  padding-bottom: 1rem;
  border-bottom: 0.125rem solid var(--rosado);
  margin-bottom: 1.75rem;
}
.up-faq-categories { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 2.5rem 3.5rem; align-items: start; }
.up-faq-category { min-width: 0; }
.up-faq-category h3 { color: var(--rosado); font-family: 'OwnersXXNarrow-XBlack', sans-serif; font-size: 1.3125rem; line-height: 1.3; font-weight: 900; margin-bottom: 0.75rem; }
.up-faq-category h3 span { color: #666; font-weight: 400; white-space: nowrap; }
.up-faq-question { border-bottom: 0.0625rem solid #eee; }
.up-faq-question summary {
  display: flex;
  align-items: baseline;
  gap: 0.75rem;
  padding: 0.875rem 0;
  list-style: none;
  cursor: pointer;
  color: var(--negro);
  font-size: 1.125rem;
  line-height: 1.35;
}
.up-faq-question summary::-webkit-details-marker { display: none; }
.up-faq-question summary::before { content: '+'; font-family: sans-serif; color: var(--rosado); font-weight: 700; flex: 0 0 1rem; text-align: center; }
.up-faq-question[open] summary::before { content: '−'; }
.up-faq-question[open] summary { color: var(--rosado); font-weight: 700; }
.up-faq-question summary:hover { color: var(--rosado); }
.up-faq-question summary:focus-visible, .up-faq-more:focus-visible { outline: 0.1875rem solid var(--negro); outline-offset: 0.1875rem; }
.up-faq-answer { padding: 0.25rem 0 1.25rem 1.75rem; font-size: 1.0625rem; line-height: 1.55; overflow-wrap: anywhere; }
.up-faq-answer a { color: #9f0058; text-decoration: underline; }
.up-faq-answer p + p { margin-top: 0.75rem; }
.up-faq-more { color: #9f0058; text-decoration: underline; font: inherit; font-size: 1rem; padding: 0.75rem 0 0.25rem 1.75rem; }
.up-faq [hidden] { display: none !important; }
@media (max-width: 48rem) {
  .up-faq { padding-top: 12rem; padding-bottom: 2rem; }
  .up-faq-panel { padding: 1.5rem; }
  .up-faq-categories { grid-template-columns: minmax(0, 1fr); gap: 2rem; }
  .up-faq-group > h2 { font-size: 1.75rem; }
  .up-faq-group + .up-faq-group { margin-top: 2.5rem; }
}
