
#hero .fce-contact__lines { display: grid; gap: 18px; margin: 0; padding: 0; list-style: none; }
#hero .fce-contact__lines > li { display: grid; align-content: start; gap: 4px; min-width: 0; }
#hero .fce-contact__label { font-family: 'Montserrat', sans-serif; font-size: 12px; font-weight: 800; letter-spacing: 0.06em; text-transform: uppercase; color: #555b61; }
#hero .fce-contact__value { font-size: 18px; font-weight: 600; color: #30353A; text-decoration: underline; text-underline-offset: 3px; overflow-wrap: anywhere; }
#hero .fce-contact__text { font-size: 16px; line-height: 1.5; color: #30353A; }
#hero .fce-contact__areas { padding-top: 18px; border-top: 1px solid #e2e4e8; }
#hero .fce-contact__towns { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px 24px; margin: 4px 0 0; padding: 0; list-style: none; }
#hero .fce-contact__towns li { position: relative; padding-left: 16px; font-size: 16px; line-height: 1.5; color: #30353A; }
#hero .fce-contact__towns li::before { content: ''; position: absolute; left: 0; top: 0.6em; width: 7px; height: 7px; border-radius: 50%; background: #D8B98A; }
@media (min-width: 768px) {
  #hero .fce-contact__lines { grid-template-columns: repeat(3, max-content) minmax(0, 1fr); gap: 20px 56px; }
  #hero .fce-contact__areas { grid-column: 1 / -1; }
  #hero .fce-contact__towns { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (min-width: 1200px) {
  #hero .fce-contact__lines { gap: 22px 72px; }
  #hero .fce-contact__towns { grid-template-columns: repeat(6, auto); justify-content: space-between; }
}

#hero .hero-cardwrap:has(.fce-contact) { padding-bottom: 0; }
#quote.is-white { padding-top: 48px; }

@media (max-width: 767px) {
  #hero .fce-contact__lines > .fce-contact__areas { display: none; }
  #quote.is-white { padding-top: 32px; }
}
