/* Task012: Contact-only benefits and manual review presentation. */
#ha-contact-benefits-012 { padding: 4rem 0; color: #263b40; }
#ha-contact-benefits-012 .ha-contact-benefits-intro-012 { max-width: 62rem; margin: 0 auto 2rem; font-size: 1.125rem; line-height: 1.65; }
#ha-contact-benefits-012 .ha-contact-benefit-grid-012 { display: grid; grid-template-columns: 1fr; gap: 1.5rem; margin: 0 0 2rem; }
#ha-contact-benefits-012 .ha-contact-benefit-card-012 { width: auto; padding: 1.75rem 1.25rem; margin: 0; background: #f8f9fa; border: 1px solid #d7e0e2; border-radius: .375rem; box-shadow: 0 .125rem .25rem rgba(0,0,0,.08); }
#ha-contact-benefits-012 .ha-contact-benefit-card-012 .snippetSectionInner { height: 100%; background: transparent; padding: 0; }
#ha-contact-benefits-012 .ha-contact-benefit-card-012 h3 { font-size: 1.5rem; color: #286b76; margin: 0 0 1rem; }
#ha-contact-benefits-012 .ha-contact-benefit-card-012 .sectionIcon { order: -1; margin: 0 0 1rem; font-size: 2.5rem; color: #286b76; }
#ha-contact-benefits-012 .ha-contact-benefit-card-012 p { margin: 0; line-height: 1.65; color: #263b40; font-size: 1rem; }
#ha-contact-reviews-012 { padding: 4rem 0; color: #263b40; }
#ha-contact-reviews-012 [hidden] { display: none !important; }
#ha-contact-reviews-012 .ha-contact-review-composition-012 { display: grid; grid-template-columns: 1fr; gap: 2rem; align-items: start; }
#ha-contact-reviews-012 figure { margin: 0; text-align: center; }
#ha-contact-reviews-012 figure img { width: 100%; max-width: 26rem; height: auto; border-radius: .5rem; }
#ha-contact-reviews-012 figcaption { margin-top: .75rem; font-size: 1.125rem; font-weight: 600; color: #263b40; }
#ha-contact-reviews-012 .ha-contact-review-content-012 { min-width: 0; }
#ha-contact-reviews-012 #ha-contact-review-heading-012 { margin: 0; color: #263b40; font-size: 1.75rem; line-height: 1.4; }
#ha-contact-reviews-012 .google-reviews-block { margin: 0 !important; }
#ha-contact-reviews-012 .google-reviews-block > .row .card { border: 0; box-shadow: none !important; background: transparent; }
#ha-contact-reviews-012 .google-reviews-block > .row .card-body { padding: 0; }
#ha-contact-reviews-012 .google-reviews-block > .row .d-flex { flex-wrap: wrap; gap: .75rem; }
#ha-contact-reviews-012 .google-reviews-block > .row img { max-width: 100px; }
#ha-contact-reviews-012 #testimonialRow { display: grid; grid-template-columns: 1fr; margin: 0; gap: 1rem; }
#ha-contact-reviews-012 .ha-contact-review-panel-012 { width: 100%; padding: 0; margin: 0; min-width: 0; }
#ha-contact-reviews-012 .ha-contact-review-panel-012 .card { height: auto !important; border: 1px solid #d7e0e2; background: #fff; box-shadow: none !important; }
#ha-contact-reviews-012 .ha-contact-review-panel-012 .card-body { padding: 1.5rem; }
#ha-contact-reviews-012 .ha-contact-review-panel-012 .fw-bold { color: #263b40; font-size: 1.25rem; }
#ha-contact-reviews-012 .ha-contact-review-panel-012 .text-muted { color: #435c63 !important; }
#ha-contact-reviews-012 .ha-contact-review-panel-012 .justify-content-between { flex-wrap: wrap; gap: .25rem .75rem; }
#ha-contact-reviews-012 .ha-contact-review-panel-012 p { color: #263b40; font-size: 1.125rem; line-height: 1.7; margin-top: 1rem; overflow-wrap: break-word; }
#ha-contact-reviews-012 .review-stars, #ha-contact-reviews-012 .google-rating-stars { color: #745200; }
#ha-contact-reviews-012 .ha-contact-review-controls-012 { margin-top: 1.5rem; padding: 6px; }
#ha-contact-reviews-012 .ha-contact-review-navigation-012 { display: flex; flex-wrap: wrap; gap: .75rem; align-items: center; margin-bottom: 1.25rem; }
#ha-contact-reviews-012 button { min-width: 44px; min-height: 44px; padding: .65rem .85rem; border: 2px solid #286b76; border-radius: .375rem; color: #286b76; background: #fff; font: inherit; line-height: 1.4; cursor: pointer; transition: none; }
#ha-contact-reviews-012 button:hover { color: #fff; background: #286b76; }
#ha-contact-reviews-012 button:active { color: #fff; background: #164b55; border-color: #164b55; }
#ha-contact-reviews-012 button:focus-visible, #ha-contact-reviews-012 .ha-contact-review-panel-012:focus-visible { outline: 3px solid #123036; outline-offset: 3px; }
#ha-contact-reviews-012 .ha-contact-review-tabs-012 { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 1rem; }
#ha-contact-reviews-012 .ha-contact-review-tab-012 { display: flex; flex-direction: column; align-items: center; justify-content: flex-start; gap: .5rem; overflow-wrap: anywhere; font-size: .875rem; text-align: center; }
#ha-contact-reviews-012 .ha-contact-review-tab-012 img { width: 52px; height: 52px; border-radius: 50%; object-fit: cover; }
#ha-contact-reviews-012 .ha-contact-review-tab-012[aria-selected="true"] { border-style: double; border-width: 4px; padding: calc(.65rem - 2px) calc(.85rem - 2px); color: #fff; background: #286b76; font-weight: 600; }
#ha-contact-reviews-012 .ha-contact-review-tab-012[aria-selected="true"]:active { background: #164b55; }
#ha-contact-reviews-012 .ha-contact-review-counter-012 { color: #263b40; font-weight: 600; }
#ha-contact-reviews-012 .ha-contact-review-status-012 { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; border: 0; }
@media (min-width: 768px) {
  #ha-contact-benefits-012 .ha-contact-benefit-grid-012 { grid-template-columns: repeat(2,minmax(0,1fr)); }
  #ha-contact-reviews-012 .ha-contact-review-composition-012 { grid-template-columns: minmax(0, .8fr) minmax(0, 1.5fr); }
  #ha-contact-reviews-012 .ha-contact-review-tabs-012 { grid-template-columns: repeat(4,minmax(0,1fr)); }
}
@media (min-width: 1200px) {
  #ha-contact-benefits-012 .ha-contact-benefit-grid-012 { grid-template-columns: repeat(4,minmax(0,1fr)); }
  #ha-contact-reviews-012 .ha-contact-review-tabs-012 { grid-template-columns: repeat(6,minmax(0,1fr)); }
}
@media (prefers-reduced-motion: reduce) {
  #ha-contact-reviews-012 button { transition: none; }
}

#ha-contact-benefits-012 .ha-contact-benefits-intro-012 { font-size: 1.125rem !important; }
#ha-contact-benefits-012 .ha-contact-benefit-card-012 p { font-size: 1rem !important; }
#ha-contact-reviews-012 .ha-contact-review-panel-012 p { font-size: 1.125rem !important; }
#ha-contact-reviews-012 .review-stars i,
#ha-contact-reviews-012 .google-rating-stars i {
    color: #f5c518;
}
/* Keep these decorative stars visible if the external icon kit is unavailable. */
#ha-contact-reviews-012 .review-stars i::before,
#ha-contact-reviews-012 .google-rating-stars i::before {
    content: "\2605";
    font-family: Arial, sans-serif;
    font-style: normal;
}
#ha-contact-reviews-012 .review-stars svg,
#ha-contact-reviews-012 .google-rating-stars svg {
    color: #f5c518;
}
#ha-contact-reviews-012[data-review-ready="true"] .ha-contact-review-panel-012 img { display: none; }
#ha-contact-reviews-012 .google-reviews-block { display: flex; flex-direction: column; }
#ha-contact-reviews-012 .google-reviews-block > .row { order: 0; }
#ha-contact-reviews-012 #testimonialRow { order: 1; }
#ha-contact-reviews-012 .ha-contact-review-controls-012 { order: 2; }

/* Task 017: visible focus for Contact form fields only. */
#pageID-1062 #contactUsForm .form-control {
    transition: none;
}
#pageID-1062 #contactUsForm .form-control:focus-visible {
    outline: 3px solid #123036;
    outline-offset: 3px;
}
@media (forced-colors: active) {
    #pageID-1062 #contactUsForm .form-control:focus-visible {
        outline-color: Highlight;
    }
}
