/* Small additions shared by the Site Editor and front end. */
.wp-site-blocks > .wp-block-template-part { margin-block: 0; }
.hw-header { padding-block: 1.5rem; }
.hw-section { padding-block: var(--wp--preset--spacing--60); }
.hw-hero { padding-block: var(--wp--preset--spacing--50) var(--wp--preset--spacing--60); }
.hw-footer { padding-block: 2rem; }
.is-style-hw-rule { border-top: 1px solid #42515a; }
.is-style-hw-eyebrow { font-size: .75rem; font-weight: 500; letter-spacing: .14em; line-height: 1.6; text-transform: uppercase; color: var(--wp--preset--color--muted); }
.is-style-hw-portrait img { display: block; width: 100%; aspect-ratio: 4 / 5; object-fit: cover; }
.hw-muted { color: var(--wp--preset--color--muted); }
.hw-services { display: grid !important; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 2rem; }
.hw-services > .wp-block-group { margin-block: 0; min-width: 0; padding-top: 1.5rem; }
.hw-services h3 { font-size: clamp(1.35rem, 1.8vw, 1.65rem); }
.hw-services p { font-size: .9375rem; }
.hw-section, .hw-hero { scroll-margin-top: 2rem; }
.hw-header .wp-block-navigation-item__content { padding-block: .65rem; }
.hw-footer a { display: inline-block; padding-block: .6rem; }
.wp-block-button__link:hover { background: var(--wp--preset--color--accent); color: var(--wp--preset--color--base); }
:where(.wp-site-blocks, .editor-styles-wrapper) a { text-underline-offset: .2em; }
:where(.wp-site-blocks, .editor-styles-wrapper) a:focus-visible,
:where(.wp-site-blocks, .editor-styles-wrapper) button:focus-visible { outline: 2px solid currentColor; outline-offset: 5px; }
:where(.wp-site-blocks, .editor-styles-wrapper) p,
:where(.wp-site-blocks, .editor-styles-wrapper) h1,
:where(.wp-site-blocks, .editor-styles-wrapper) h2,
:where(.wp-site-blocks, .editor-styles-wrapper) h3 { overflow-wrap: break-word; }
@media (max-width: 1050px) { .hw-services { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 781px) {
  .hw-header { gap: 1rem; }
  .hw-hero .wp-block-columns { gap: 2.5rem; }
  .hw-hero .is-style-hw-portrait { max-width: 30rem; }
}
@media (max-width: 520px) {
  .hw-services { grid-template-columns: minmax(0, 1fr); }
  .hw-header { flex-direction: column; align-items: flex-start; }
  .hw-header .wp-block-navigation { width: 100%; }
}
