.faq { padding-top: 0; }
.faq__grid { display: grid; grid-template-columns: .85fr 1.15fr; gap: clamp(40px, 7vw, 110px); align-items: start; }
.faq__grid .title { margin-bottom: 24px; }
.faq__aside { color: var(--topo-oscuro); margin-bottom: 30px; max-width: 340px; }
.acc { border-top: 1px solid var(--linea); }
.acc:last-child { border-bottom: 1px solid var(--linea); }
.acc summary {
  list-style: none; cursor: pointer;
  display: flex; justify-content: space-between; align-items: center; gap: 20px;
  padding: 26px 0;
  font-family: var(--f-display); font-size: clamp(18px, 1.7vw, 22px);
  transition: color .3s;
}
.acc summary::-webkit-details-marker { display: none; }
@media (hover: hover) and (pointer: fine) { .acc summary:hover { color: var(--topo-oscuro); } }
.acc summary i { position: relative; flex: none; width: 40px; height: 40px; border-radius: 50%; border: 1px solid var(--linea); transition: background .3s, transform .3s var(--ease); }
.acc summary i::before, .acc summary i::after { content: ""; position: absolute; left: 50%; top: 50%; width: 12px; height: 1.5px; margin: -.75px 0 0 -6px; background: currentColor; transition: transform .3s var(--ease); }
.acc summary i::after { transform: rotate(90deg); }
.acc[open] summary i { background: var(--ebano); color: var(--alabastro); border-color: var(--ebano); transform: rotate(180deg); }
.acc[open] summary i::after { transform: rotate(0); }
.acc__body { overflow: hidden; }
.acc__body p { padding: 0 60px 28px 0; color: var(--topo-oscuro); }
