/* Location FAQ (location.php) — content lives in inc/faq-location.php */
.location-faq { clear: both; width: 100%; padding: 60px 0 20px; }
.location-faq .faq-container { float: none; max-width: 1000px; padding: 40px 60px 50px; text-align: left; }
.location-faq .faq-address { text-align: center; padding-bottom: 25px; margin-bottom: 10px; border-bottom: 4px solid #183d4e; }
.location-faq .faq-address a { color: #183d4e; text-decoration: underline; }
.location-faq .faq-item { border-bottom: 1px solid #ddd; }
.location-faq .faq-item summary { position: relative; display: block; cursor: pointer; padding: 20px 44px 20px 0; list-style: none; }
.location-faq .faq-item summary::-webkit-details-marker { display: none; }
.location-faq .faq-item summary::after { content: "+"; position: absolute; right: 6px; top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); font: 300 30px/1 'Oswald', arial, sans-serif; color: #c0b283; }
.location-faq .faq-item[open] summary::after { content: "\2013"; }
.location-faq .faq-item summary:focus-visible { outline: 2px solid #183d4e; outline-offset: 2px; }
.location-faq .faq-question { display: inline; padding: 0; margin: 0; font-size: 1.15rem; line-height: 1.35em; letter-spacing: .03em; color: #183d4e; }
.location-faq .faq-answer { padding: 0 44px 22px 0; }
.location-faq .faq-answer p { margin: 0; }
.location-faq .faq-answer a { color: #183d4e; text-decoration: underline; }
.location-faq .faq-cta { display: block; width: 100%; max-width: 260px; margin: 35px auto 0; padding: 14px 20px; background: #183d4e; color: #fff; text-align: center; text-transform: uppercase; text-decoration: none; letter-spacing: .08em; font: 400 14px/1.2 'Oswald', arial, sans-serif; }
.location-faq .faq-cta:hover, .location-faq .faq-cta:focus { background: #c0b283; color: #183d4e; }
@media (max-width: 768px) {
    .location-faq { padding-top: 40px; }
    .location-faq .faq-container { width: 92%; padding: 25px 20px 35px; }
    .location-faq .faq-question { font-size: 1rem; }
}
