.homeowner-hero .homeowner-hero-body { max-width: 40rem; margin: 0 auto; padding: 4rem 2rem; }
.homeowner-hero .homeowner-hero-heading { text-wrap: balance; }
.homeowner-hero .homeowner-hero-body p:last-child { margin: 0; }
.homeowner-hero-img-wrap { width: 100%; height: 16rem; overflow: hidden; position: relative; }
.homeowner-hero-img-wrap .homeowner-hero-img { width: 100%; height: 100%; -o-object-fit: cover; object-fit: cover; position: absolute; right: 0; top: 0; bottom: 0; left: 0; }
@media (min-width: 992px) {
  .homeowner-hero-img-wrap { height: 100%; min-height: 25rem; }
}
@media (min-width: 1025px) {
  .homeowner-hero .homeowner-hero-body { padding: 6.25rem 3.125rem; }
  .homeowner-hero .page-title { font-size: 3.125rem; }
}

.homeowner-callouts { padding: 4rem 0; }
.homeowner-callouts-img { width: 5rem; height: auto; margin: 0 auto 4rem !important; }
.homeowner-callouts .title { max-width: 30rem; margin: 0 auto; }
.homeowner-callout { max-width: 25rem; margin: 4rem auto 0; }
.homeowner-callout .homeowner-callout-subtitle { margin: 0 auto 1rem; text-wrap: balance; overflow-wrap: break-word; }
@media (min-width: 1025px) {
  .homeowner-callouts { padding: 8.125rem 0; }
  .homeowner-callouts-img { margin: 0 auto 5rem !important; }
  .homeowner-callouts .col-md-4 { max-width: 25rem; }
  .homeowner-callout { margin-top: 5rem; }
  .homeowner-callout .homeowner-callout-subtitle { font-size: 1.25rem; }
}

.homeowner-resources { padding: 4rem 0; }
.homeowner-resources .h1 { max-width: 40rem; margin: 0 auto; }
.homeowner-resources [class^=col] { margin: 0 auto; max-width: 35rem; }
.homeowner-resource { margin-top: 4rem; display: block; text-decoration: none !important; text-wrap: balance; }
.homeowner-resource-img {margin-bottom: 2rem; aspect-ratio: 768 / 593; width: 100%; height: auto; object-fit: cover; }
.homeowner-resource .subtitle:after { content: ''; width: 100%; height: 0.0625rem; display: block; background: transparent; transition: all ease-in-out 0.4s; }
.homeowner-resource:hover .subtitle:after { background: hsl(var(--siteColor5)); }
@media (min-width: 768px) {
  .homeowner-resources .row { display: grid; grid-template-columns: repeat(2, minmax(0, 35rem)); justify-content: center; column-gap: 4rem; }
}
@media (min-width: 1025px) {
  .homeowner-resources { padding: 6.25rem 0; }
  .homeowner-resources .h1 { font-size: 3.125rem; }
  .homeowner-resources .row { column-gap: 6.25rem; }
  .homeowner-resource { margin-top: 6.25rem; }
}

.homeowner-contact [class^=col]:first-child { display: flex; align-items: center; justify-content: center; background-size: cover; background-repeat: no-repeat; }
.homeowner-contact-info { max-width: 40rem; margin: 0 auto; padding: 4rem 2rem; position: relative; text-wrap: pretty; }
.homeowner-contact-info .subtitle { font-size: 1.25rem; text-wrap: balance; }
.homeowner-contact .custom-form { max-width: 45rem; margin: 0 auto; padding: 4rem 2rem; }
.homeowner-contact .custom-form-title { margin-bottom: 3rem !important; text-align: center; }
.homeowner-contact .custom-form .card { border: 0; }
.homeowner-contact .custom-form .card-body { padding: 0; }
.homeowner-contact .custom-form label { display: none; }
.homeowner-contact .custom-form textarea { margin: 1rem 0; }
.homeowner-contact .custom-form .form-group:has(button[type=submit]) { text-align: center; }
@media (min-width: 1025px) {
  .homeowner-contact .custom-form,
  .homeowner-contact-info { padding: 6.25rem 3.125rem; }
  .homeowner-contact .custom-form-title { font-size: 3.125rem; }
}