/* FAQ: <details> nativo com ícone +/− dourado. Fundo off-white. */
.tn-fq { background: #f2f1ee; color: #0b0b0c; padding-block: clamp(4rem, 8vw, 8rem); scroll-margin-block-start: 5rem; }
.tn-fq__layout { display: grid; grid-template-columns: minmax(0, 0.8fr) minmax(0, 1.4fr); gap: clamp(2rem, 6vw, 6rem); align-items: start; }
.tn-fq__head { position: sticky; inset-block-start: 7rem; }
.tn-fq__eyebrow { margin: 0 0 0.75rem; font-size: 0.75rem; font-weight: 600; letter-spacing: 0.16em; text-transform: uppercase; color: #8c6b14; }
.tn-fq__title { margin: 0; font-family: var(--tn-font-display, inherit); font-weight: 600; font-size: clamp(2rem, 1rem + 3vw, 3.5rem); line-height: 1.06; letter-spacing: -0.02em; text-wrap: balance; }
.tn-fq__title em { font-style: normal; color: #b8901d; }
.tn-fq__item { border-block-end: 1px solid rgba(11, 11, 12, 0.16); }
.tn-fq__item:first-child { border-block-start: 1px solid rgba(11, 11, 12, 0.16); }
.tn-fq__item summary { display: flex; align-items: center; justify-content: space-between; gap: 1.5rem; padding-block: 1.4rem; cursor: pointer; list-style: none; font-family: var(--tn-font-display, inherit); font-weight: 600; font-size: clamp(1.125rem, 1rem + 0.5vw, 1.375rem); line-height: 1.25; }
.tn-fq__item summary::-webkit-details-marker { display: none; }
.tn-fq__item summary:focus-visible { outline: 2px solid #0b0b0c; outline-offset: 2px; }
.tn-fq__item summary i { position: relative; flex: none; inline-size: 1.75rem; block-size: 1.75rem; border: 1px solid #0b0b0c; }
.tn-fq__item summary i::before, .tn-fq__item summary i::after { content: ""; position: absolute; inset-block-start: 50%; inset-inline-start: 50%; inline-size: 0.8rem; block-size: 2px; background: #0b0b0c; transform: translate(-50%, -50%); transition: transform 0.3s cubic-bezier(0.2, 0.7, 0.2, 1); }
.tn-fq__item summary i::after { transform: translate(-50%, -50%) rotate(90deg); }
.tn-fq__item[open] summary i { background: #d2a833; border-color: #d2a833; }
.tn-fq__item[open] summary i::after { transform: translate(-50%, -50%) rotate(0deg); }
.tn-fq__item p { margin: 0; padding: 0 3.25rem 1.5rem 0; max-inline-size: 42rem; font-size: 1rem; line-height: 1.6; color: rgba(11, 11, 12, 0.72); }
@media (prefers-reduced-motion: no-preference) { .tn-fq__item[open] p { animation: tn-fq-in 0.4s ease both; } }
@keyframes tn-fq-in { from { transform: translateY(-0.4rem); opacity: 0; } }
@media (max-width: 899px) { .tn-fq__layout { grid-template-columns: 1fr; } .tn-fq__head { position: static; } .tn-fq__item p { padding-inline-end: 0; } }
