.vanta-faq { box-sizing: border-box; padding: 80px 0; background: var(--vanta-bg, #fff); font-family: Lato,Arial,sans-serif; }
.vanta-faq *, .vanta-faq *::before, .vanta-faq *::after { box-sizing: border-box; }
.vanta-faq__inner { display: grid; grid-template-columns: minmax(260px,var(--vanta-faq-intro-width,36%)) minmax(0,1fr); gap: 74px; align-items: start; width: 100%; max-width: 1120px; margin: 0 auto; padding: 0 24px; }
.vanta-faq__intro { padding-top: 42px; }
.vanta-faq__eyebrow { display: block; margin: 0 0 16px; color: var(--vanta-gold-dark, #a9853f); font-size: 12.5px; line-height: 1.2; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; }
.vanta-faq__accent-line { width: 38px; height: 2px; margin-bottom: 34px; border-radius: 10px; background: var(--vanta-gold, #c3a15a); }
.vanta-faq__title { max-width: 340px; margin: 0; color: var(--vanta-navy, #111827); font-size: 38px; line-height: 1.15; font-weight: 800; letter-spacing: -.025em; }
.vanta-faq__description { max-width: 270px; margin: 32px 0 0; color: var(--vanta-text, #667085); font-size: 16px; line-height: 1.65; }
.vanta-faq__list { display: flex; flex-direction: column; gap: 14px; }
.vanta-faq__item { overflow: hidden; border: 1px solid var(--vanta-border, #e4e1da); border-radius: 16px; background: #fff; transition: border-color .2s ease,box-shadow .2s ease; }
.vanta-faq__item.is-open { box-shadow: 0 8px 24px rgba(31,38,50,.04); }
.vanta-faq__question { display: grid; width: 100%; grid-template-columns: 42px minmax(0,1fr) 32px; gap: 18px; align-items: center; padding: 25px 28px; border: 0; background: transparent; font: inherit; text-align: left; cursor: pointer; }
.vanta-faq button.vanta-faq__question { display: grid !important; min-height: 0; border: 0 !important; background: transparent !important; color: inherit; box-shadow: none !important; text-transform: none; appearance: none; -webkit-appearance: none; }
.vanta-faq__question:hover, .vanta-faq__question:focus, .vanta-faq button.vanta-faq__question:hover, .vanta-faq button.vanta-faq__question:focus { background: transparent !important; color: inherit; box-shadow: none !important; }
.vanta-faq__question:focus-visible { outline: 2px solid var(--vanta-gold, #c3a15a); outline-offset: -3px; }
.vanta-faq__question--static { grid-template-columns: 42px minmax(0,1fr); cursor: default; }
.vanta-faq__number { display: inline-flex; width: 42px; height: 42px; align-items: center; justify-content: center; border-radius: 50%; background: var(--vanta-gold-light, #f3ebdd); color: var(--vanta-gold-dark, #a9853f); font-size: 15px; line-height: 1; font-weight: 700; }
.vanta-faq__question-text { display: block; width: 100%; color: var(--vanta-navy, #111827); font-size: 18px; line-height: 1.4; font-weight: 700; text-align: left !important; }
.vanta-faq__toggle { display: flex; align-items: center; justify-content: center; color: var(--vanta-gold-dark, #a9853f); font-size: 27px; line-height: 1; font-weight: 400; }
.vanta-faq__answer { overflow: hidden; transition: height .25s ease; }
.vanta-faq__answer[hidden] { display: none; }
.vanta-faq__answer-inner { margin: 0 28px 0 88px; padding: 22px 0 28px; border-top: 1px solid var(--vanta-border, #e4e1da); color: var(--vanta-text, #667085); font-size: 16px; line-height: 1.75; }
.vanta-faq__answer-inner > *:first-child { margin-top: 0; }
.vanta-faq__answer-inner > *:last-child { margin-bottom: 0; }
@media (max-width:1024px) {
	.vanta-faq { padding-top: 60px; padding-bottom: 60px; }
	.vanta-faq__inner { grid-template-columns: 1fr; gap: 42px; }
	.vanta-faq__intro { padding-top: 0; }
	.vanta-faq__title { max-width: 640px; font-size: 34px; }
	.vanta-faq__description { max-width: 520px; margin-top: 22px; }
}
@media (max-width:767px) {
	.vanta-faq { padding-top: 48px; padding-bottom: 48px; }
	.vanta-faq__inner { gap: 32px; padding-right: 20px; padding-left: 20px; }
	.vanta-faq__accent-line { margin-bottom: 24px; }
	.vanta-faq__title { font-size: 30px; }
	.vanta-faq__question { grid-template-columns: 38px minmax(0,1fr) 24px; gap: 13px; padding: 20px 18px; }
	.vanta-faq__question--static { grid-template-columns: 38px minmax(0,1fr); }
	.vanta-faq__number { width: 38px; height: 38px; font-size: 14px; }
	.vanta-faq__toggle { font-size: 24px; }
	.vanta-faq__answer-inner { margin-right: 18px; margin-left: 69px; padding: 18px 0 22px; }
}
