/* Verified review excerpts, shared by the homepage and city landing pages. */
.customer-quotes { margin-top: 22px; color: #10283e; }
.customer-quotes-heading { margin: 0 0 12px; color: inherit; font-size: 14px; font-weight: 700; }
.customer-quotes-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
.customer-quote { display: flex; flex-direction: column; margin: 0; padding: 17px; border: 1px solid #e3e8ec; border-radius: 12px; background: #fff; color: #10283e; }
.customer-quote-stars { margin-bottom: 8px; color: #a76b00; font-size: 14px; letter-spacing: 2px; }
.customer-quote blockquote { margin: 0 0 13px; padding: 0; border: 0; font-size: 12px; line-height: 1.65; font-style: normal; }
.customer-quote figcaption { margin-top: auto; font-size: 11px; font-weight: 700; color: #506575; }
.customer-quotes-source { display: inline-block; margin-top: 10px; color: #536b7c; font-size: 10px; text-decoration: underline; text-underline-offset: 3px; }
.home-photo-hero .customer-quotes-heading, .home-photo-hero .customer-quotes-source { color: #e3edf5; }
.home-hero-promises { display: grid; gap: 12px; list-style: none; padding: 0; margin: 22px 0; color: #fff; font-size: 15px; line-height: 1.6; }
.home-hero-promises li { display: flex; gap: 10px; align-items: flex-start; }
.home-hero-promises li::before { content: '✓'; color: #7dd3f0; font-weight: 800; }
.home-photo-hero .brand-hero-grid > div:first-child { align-self: start; }
.home-photo-page .callback-fab { display: none; }
.home-photo-hero .city-hero-photo-panel { display: block; min-height: 0; height: auto; }
.home-photo-hero .city-photo-figure { position: relative; margin: 0; overflow: hidden; border-radius: 18px; }
.home-photo-hero .city-photo-figure > img { width: 100%; max-height: 390px; object-fit: cover; }
.home-photo-hero .city-photo-figure figcaption { position: absolute; inset: auto 0 0; padding: 28px 14px 11px; background: linear-gradient(transparent, #041425e0); color: #fff; font-size: 13px; font-weight: 700; }
.home-photo-hero .city-photo-trust { position: relative; display: grid; grid-template-columns: 1fr 1.4fr; margin: -15px 12px 0; padding: 13px; gap: 10px; border-radius: 12px; background: #fff; color: #10283e; }
.home-photo-hero .city-photo-google { display: grid; gap: 2px; font-size: 11px; }
.home-photo-hero .city-photo-google strong { font-size: 18px; }
.home-photo-hero .city-photo-hwk { display: flex; align-items: center; gap: 9px; font-size: 11px; }
.home-photo-hero .city-photo-hwk img { width: 115px; max-width: 48%; height: auto; }
.home-photo-hero .city-photo-hwk small { font-size: 9px; }
.home-photo-hero .brand-hero-actions .brand-btn-primary { min-height: 60px; font-size: 19px; }
.home-contact-alternatives { display: flex; gap: 18px; flex-wrap: wrap; margin-top: 15px; }
.home-contact-alternatives a, .home-contact-alternatives button { background: none; border: 0; padding: 4px 0; font: inherit; color: #d8e8f5; font-size: 12px; text-decoration: underline; text-underline-offset: 4px; cursor: pointer; }
.city-secondary-actions, .home-contact-alternatives { display: flex; align-items: stretch; flex-wrap: nowrap; width: min(100%, 450px); gap: 10px; }
.city-secondary-actions .contact-choice, .home-contact-alternatives .contact-choice { display: flex; flex: 1; align-items: center; justify-content: center; gap: 8px; min-width: 0; min-height: 46px; padding: 10px 12px; border: 1px solid #bdccd7; border-radius: 9px; background: #fff; color: #24465e; font-size: 12px; font-weight: 600; line-height: 1.4; text-decoration: none; text-align: center; cursor: pointer; }
.city-secondary-actions .contact-choice-whatsapp, .home-contact-alternatives .contact-choice-whatsapp { color: #176744; border-color: #b3d3c2; background: #f3faf6; }
.contact-choice svg { width: 19px; height: 19px; flex-shrink: 0; }
.city-secondary-actions .contact-choice:hover, .home-contact-alternatives .contact-choice:hover { background: #eaf2f7; border-color: #829eaf; }
.city-secondary-actions .contact-choice-whatsapp:hover, .home-contact-alternatives .contact-choice-whatsapp:hover { background: #e3f4eb; border-color: #6ea98c; }
.home-contact-alternatives .contact-choice:focus-visible { outline: 3px solid #7dd3f0; outline-offset: 4px; }
.site-nav .nav-contact-option { display: none; }
.home-call-prompt { max-width: 450px; margin: 12px 0 0; color: #d8e8f5; font-size: 12px; line-height: 1.6; }
.home-short-process { grid-template-columns: repeat(3, minmax(0, 1fr)); }
@media (max-width: 1080px) {
  body.home-brand .brand-header .site-nav .nav-contact-option { display: flex !important; align-items: center; min-height: 48px; padding: 14px 16px; border: 1px solid #ffffff30 !important; border-radius: 14px; background: #ffffff14 !important; color: #fff !important; font: 700 1rem Inter, sans-serif; text-align: left; cursor: pointer; }
}
@media (max-width: 760px) {
  .home-short-process { grid-template-columns: 1fr; }
  .customer-quotes-grid { grid-template-columns: 1fr; }
  .customer-quote { padding: 15px 17px; }
  .customer-quote blockquote { font-size: 13px; }
  .home-hero-promises { font-size: 13px; }
  .home-photo-hero .brand-hero-actions .brand-btn-primary { width: 100%; font-size: 17px; }
  .home-photo-hero .city-hero-photo-panel { order: 0; }
  .home-photo-hero .city-photo-trust { grid-template-columns: 1fr; }
}
