/* Drive Easy: standard FAQ accordion (inc/faq.php) and small readability fixes for the content sections. */
.drive-faq { background: #fff; padding: 56px 0 30px; }
.drive-faq-side { position: sticky; top: 20px; margin-bottom: 28px; }
.drive-faq-title { font-size: 28px; font-weight: 700; color: #112e3b; margin: 0 0 12px; line-height: 1.25; }
.drive-faq-intro { font-size: 16px; color: #526977; margin: 0 0 18px; }
.drive-faq-help { background: #f1f5e4; border-radius: 12px; padding: 18px 20px; }
.drive-faq-help p { margin: 0 0 12px; font-size: 15px; color: #3f5561; }
.drive-faq-btn { display: inline-block; background: #8aa53c; color: #fff !important; font-weight: 600; font-size: 14px; padding: 9px 16px; border-radius: 999px; margin: 0 6px 6px 0; text-decoration: none !important; }
.drive-faq-btn:hover { background: #6f8a2a; }
.drive-faq-btn-wa { background: #25d366; }
.drive-faq-btn-wa:hover { background: #1fb858; }
.drive-faq-list { border-top: 1px solid #dfe8ed; margin-bottom: 20px; }
.drive-faq-item { border-bottom: 1px solid #dfe8ed; }
.drive-faq-item summary { list-style: none; cursor: pointer; display: flex; justify-content: space-between; align-items: center; gap: 14px; padding: 16px 4px; font-size: 17px; font-weight: 600; color: #112e3b; line-height: 1.4; }
.drive-faq-item summary::-webkit-details-marker { display: none; }
.drive-faq-item summary:hover { color: #6f8a2a; }
.drive-faq-item summary:focus-visible { outline: 2px solid #8aa53c; outline-offset: 2px; border-radius: 4px; }
.drive-faq-item summary i { flex: none; width: 22px; height: 22px; border-radius: 50%; background: #f1f5e4; position: relative; transition: transform .2s; }
.drive-faq-item summary i::before, .drive-faq-item summary i::after { content: ""; position: absolute; background: #6f8a2a; left: 50%; top: 50%; transform: translate(-50%, -50%); }
.drive-faq-item summary i::before { width: 10px; height: 2px; }
.drive-faq-item summary i::after { width: 2px; height: 10px; }
.drive-faq-item[open] summary i { transform: rotate(45deg); }
.drive-faq-answer { padding: 0 4px 18px; }
.drive-faq-answer p { margin: 0; font-size: 16px; line-height: 1.7; color: #3f5561; }
.drive-faq-answer a { color: #6f8a2a; text-decoration: underline; }

/* Guide text: comfortable reading width and spacing */
.drive-guide p, .drive-guide li { font-size: 16px; line-height: 1.75; color: #3f5561; }
.drive-guide h3 { font-size: 20px; font-weight: 700; color: #112e3b; margin: 26px 0 10px; }
.drive-guide ul { padding-left: 20px; margin-bottom: 18px; }
.drive-guide li { margin-bottom: 8px; }
.drive-guide p { margin-bottom: 14px; }

@media (max-width: 991px) {
  .drive-faq-side { position: static; }
  .drive-faq { padding: 44px 0 20px; }
  .drive-faq-title { font-size: 24px; }
  .drive-faq-item summary { font-size: 16px; padding: 14px 2px; }
}
