.faq { background: #f5f9fd; }
.faq-heading { display: grid; grid-template-columns: .85fr 1.15fr; gap: 70px; align-items: end; margin-bottom: 46px; }
.faq h2 { font-size: clamp(44px, 5vw, 68px); }
.faq-heading > p { color: #60708c; font-size: 14px; line-height: 1.8; margin: 0; }
.faq-list { border-top: 1px solid #dce5ef; }
.faq-list details { border-bottom: 1px solid #dce5ef; padding: 0 4px; }
.faq-list summary { cursor: pointer; list-style: none; padding: 22px 36px 22px 0; position: relative; color: #081a38; font-size: 14px; font-weight: 800; }
.faq-list summary::-webkit-details-marker { display: none; }
.faq-list summary::after { color: #087afc; content: '+'; font-size: 25px; font-weight: 400; position: absolute; right: 4px; top: 14px; }
.faq-list details[open] summary::after { content: '−'; }
.faq-list details p { color: #60708c; font-size: 13px; line-height: 1.8; margin: -4px 0 22px; max-width: 850px; }
.coverage-map .pin { font-size: 16px; }
.coverage-map .pin::before { top: 50%; transform: translateY(-50%); }
.coverage-map .route { height: 360px; width: 190px; }
.about .number { color: #0b5ec9; }
.coverage-map { align-items: center; display: grid; gap: 0 22px; grid-template-columns: repeat(2, minmax(0, 1fr)); grid-template-rows: repeat(8, 1fr); padding: 22px 0; }
.coverage-map .pin { inset: auto; left: auto; position: relative; top: auto; z-index: 1; }
@media (max-width: 800px) { .coverage-map .pin { font-size: 13px; } .coverage-map .route { height: 330px; width: 170px; } }
@media (max-width: 800px) { .faq-heading { grid-template-columns: 1fr; gap: 21px; margin-bottom: 30px; } }
