html .wp-admin.template-front-page :where(.wp-block) {
    max-width: var(--w-cont-m);
}
html .wp-admin.template-page :where(.wp-block) {
    max-width: var(--w-cont-s);
}
.block-editor-iframe__body {
    margin-left: var(--sp-h);
    margin-right: var(--sp-h);
}
.editor-styles-wrapper {
    padding-left: var(--sp-h);
    padding-right: var(--sp-h);
}

/*/*/

.main__content section {
    margin-left: var(--sp-h);
    margin-right: var(--sp-h);
}

.home__section--spacing {
    padding-top: var(--sp-v);
    padding-bottom: var(--sp-v);
}
.page__section--spacing {
    margin-top: var(--sp-v);
    margin-bottom: var(--sp-v);
}
.home__section--blue {
    padding-top: var(--sp-v);
    padding-bottom: var(--sp-v);
    position: relative;
    isolation: isolate;
}
.home__section--blue:before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    width: 100vw;
    left: 50%;
    translate: -50% 0;
    z-index: -1;
    background-color: var(--cl-background);
}
.home__section--gray {
    padding-top: var(--sp-v);
    padding-bottom: var(--sp-v);
    position: relative;
    isolation: isolate;
}
.home__section--gray:before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    width: 100vw;
    left: 50%;
    translate: -50% 0;
    z-index: -1;
    background-color: var(--cl-light);
}
.home__section--dark {
    padding-top: var(--sp-v);
    padding-bottom: var(--sp-v);
    position: relative;
    isolation: isolate;
}
.home__section--dark:before {
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    width: 100vw;
    left: 50%;
    translate: -50% 0;
    z-index: -1;
    background-color: var(--cl-tertiary);
}

.heading--eyebrow {
    margin-bottom: 0 !important;
    color: var(--cl-primary);
    font-weight: 600;
}
.heading--decoration {
    position: relative;
    isolation: isolate;
    height: auto;
    margin-bottom: 4rem !important;
    line-height: 1.5 !important;
}
.heading--decoration:after {
    content: "";
    position: absolute;
    top: calc(100% + 1.5rem);
    left: 0;
    height: 3px;
    width: 6rem;
    background-color: var(--cl-primary);
}

.home__section--dark .heading--decoration {
    color: var(--cl-white);
}
.home__section--dark .heading--decoration:after {
    background-color: var(--cl-accent-blue);
}


.wp-block-columns .content--offset {
    max-width: 612px !important;
    margin-left: auto !important;
    margin-right: 0 !important;
}

.wp-block-columns {
    gap: 4.5rem;
}
.wp-block-column > *:last-child {
    margin-bottom: 0;
}
.wp-block-column > figure {
    margin-top: 0;
    margin-bottom: 0;
    position: sticky !important;
    top: 8rem;
    text-align: center;
}
.is-style-rounded img {
    border-radius: 1.5rem;
    filter: drop-shadow(0 0 0.4rem rgba(0,0,0,0.24));
}

.editor-styles-wrapper {
    overflow: hidden;
}

/*/*/

.home__section--actions .wp-block-columns {
    gap: 2rem;
    margin-top: 0;
    margin-bottom: 0;
}
.home__section--actions .wp-block-column .wp-block:not(.wp-block-heading) {
    margin-top: 0;
    height: 100%;
}
.home__section--actions .wp-block-columns:has( + .wp-block-columns ) {
    margin-bottom: 2rem;
}

/*/*/

body .editor-visual-editor :where(.editor-styles-wrapper) {
    font-family: var(--ff-primary) !important;
}

/*/*/

.home__contact--item.home__contact--item {
    align-items: flex-start;
    gap: 1.25rem;
}
.home__contact--item.home__contact--item:not(:last-child) {
    margin-bottom: 1.5rem;
}
.home__contact--item .wp-block-npx-icon-block {
    padding-top: 0.5rem !important;
    padding-bottom: 0.5rem !important;
}
.home__contact--item .home__contact--eyebrow {
    font-size: var(--fs-body-xs);
    color: #999999;
}
.home__contact--item .wp-block-group__inner-container p {
    margin: 0;
}
.home__contact--item .wp-block-group__inner-container p:not(.home__contact--eyebrow):not(.home__contact--extra) {
    font-weight: 600;
}
.home__contact--item .wp-block-group__inner-container p span {
    font-size: var(--fs-body-s);
    color: #999999;
    font-weight: 400;
}
.home__contact--item .wp-block-group__inner-container p a {
    color: var(--cl-text);
}
.home__contact--item .wp-block-group__inner-container p a:hover {
    color: var(--cl-primary);
    text-decoration: underline;
}
.home__contact--item .home__contact--extra {
    font-size: var(--fs-body-xs);
    color: var(--cl-text);
}


/*/*/

.editor-styles-wrapper h2.page__section--heading,
.editor--content h2.page__section--heading {
    font-size: var(--fs-28) !important;
    line-height: 1;
    letter-spacing: 0.1em;
    font-weight: 400;
    color: #333333;
    text-align: center;
    width: 100%;
    margin-bottom: 3rem;
    display: flex;
    align-items: center;
    text-align: center;
    margin: 0 auto 3rem auto;
}
.editor-styles-wrapper h2.page__section--heading::before,
.editor-styles-wrapper h2.page__section--heading::after,
.editor--content h2.page__section--heading::before,
.editor--content h2.page__section--heading::after {
    content: "";
    flex-grow: 1;
    height: 1px;
    background-color: #333333;
}
.editor-styles-wrapper h2.page__section--heading::before,
.editor--content h2.page__section--heading::before {
    margin-right: 2rem;
}

.editor-styles-wrapper h2.page__section--heading::after,
.editor--content h2.page__section--heading::after {
    margin-left: 2rem;
}

.page__item--icon-row p {
    margin-bottom: 0 !important;
}
.page__item--icon-row {
    margin-bottom: 1rem;
    margin-top: 0;
    gap: 0.5rem;
}
.page__item--icon-row + ul {
    margin-left: 1rem !important;
}

/*/*/

.page__columns--margin {
    margin-bottom: 3rem;
}

/*/*/

.editor--content .header__action--see-all,
.editor-styles-wrapper .header__action--see-all {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    border-radius: var(--br-s);
}
@media only screen and (max-width: 1023px) {
    .editor--content .header__action--see-all,
    .editor-styles-wrapper .header__action--see-all {
        display: none;
    }
}
.editor--content .header__action--see-all p,
.editor-styles-wrapper .header__action--see-all p {
    margin-bottom: 0;
}
.editor--content .header__action--see-all a,
.editor-styles-wrapper .header__action--see-all a {
    color: var(--cl-accent-blue) !important;
    text-decoration: none !important;
}
.editor--content .header__action--see-all .npx-icon,
.editor-styles-wrapper .header__action--see-all .npx-icon {
    color: var(--cl-accent-blue);
}
.editor--content .header__action--see-all a:hover,
.editor-styles-wrapper .header__action--see-all a:hover {
    color: var(--cl-white);
    text-decoration: underline dotted;
    text-underline-offset: 0.25rem;
}
.editor--content .header__action--see-all:hover .npx-icon,
.editor-styles-wrapper .header__action--see-all:hover .npx-icon {
    color: var(--cl-white) !important;
}
.editor--content .header__action--see-all:focus-within {
    outline: 0.125rem solid var(--cl-white);
    outline-offset: 0.125rem;
}

.editor--content .footer__action--see-all,
.editor-styles-wrapper .footer__action--see-all {
    align-items: center;
    gap: 0.5rem;
    display: none;
    border-radius: var(--br-s);
}
@media only screen and (max-width: 1023px) {
    .editor--content .footer__action--see-all,
    .editor-styles-wrapper .footer__action--see-all {
        display: flex;
    }
}
.editor--content .footer__action--see-all p,
.editor-styles-wrapper .footer__action--see-all p {
    margin-bottom: 0;
}
.editor--content .footer__action--see-all a,
.editor-styles-wrapper .footer__action--see-all a {
    color: var(--cl-accent-blue) !important;
    text-decoration: none;
}
.editor--content .footer__action--see-all .npx-icon,
.editor-styles-wrapper .footer__action--see-all .npx-icon {
    color: var(--cl-accent-blue);
}
.editor--content .footer__action--see-all a:hover,
.editor-styles-wrapper .footer__action--see-all a:hover {
    color: var(--cl-white);
    text-decoration: underline dotted;
    text-underline-offset: 0.25rem;
}
.editor--content .footer__action--see-all:hover .npx-icon,
.editor-styles-wrapper .footer__action--see-all:hover .npx-icon {
    color: var(--cl-white) !important;
}
.editor--content .footer__action--see-all:focus-within {
    outline: 0.125rem solid var(--cl-white);
    outline-offset: 0.125rem;
}

/*/*/

.editor--content .homepage__faq--eyebrow.homepage__faq--eyebrow,
.editor-styles-wrapper .homepage__faq--eyebrow.homepage__faq--eyebrow {
    margin-bottom: 0;
}
.editor--content .homepage__faq--text.homepage__faq--text,
.editor-styles-wrapper .homepage__faq--text.homepage__faq--text {

}
.editor--content .homepage__faq--action.homepage__faq--action .wp-block-npx-icon-block,
.editor-styles-wrapper .homepage__faq--action.homepage__faq--action .wp-block-npx-icon-block {
    margin-top: 0;
    margin-bottom: 0;
    position: relative;
}
.editor--content .homepage__faq--action.homepage__faq--action .wp-block-npx-icon-block:after,
.editor-styles-wrapper .homepage__faq--action.homepage__faq--action .wp-block-npx-icon-block:after {
    content: "";
    display: inline-block;
    width: 52.122px;
    height: 44.163px;
    background: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='52.122' height='44.163' viewBox='0 0 52.122 44.163'><path d='M7.176,8.022a2.223,2.223,0,0,1,.635.256,57.959,57.959,0,0,0,13.917,4.727,39.5,39.5,0,0,0,21.928-1.85,24.421,24.421,0,0,0,7.586-4.563,9.967,9.967,0,0,0,3.246-5.03A2.169,2.169,0,0,0,54.541.428.5.5,0,0,0,54.157.01a.514.514,0,0,0-.526.254c-.409.508-.847,1-1.228,1.522a18.171,18.171,0,0,1-7.2,5.646,34.249,34.249,0,0,1-11.893,3A41.358,41.358,0,0,1,17.5,8.484,48.568,48.568,0,0,1,9.868,5.508c-.124-.063-.243-.133-.361-.2-.014-.008-.014-.037-.022-.062a.7.7,0,0,1,.409-.032,54.1,54.1,0,0,0,7.333-.244,7.827,7.827,0,0,0,1.855-.439,2.4,2.4,0,0,0,.75-.421c.468-.413.347-.873-.286-1.028a15.2,15.2,0,0,0-3.132-.413C14.275,2.6,12.136,2.55,10,2.481a55.806,55.806,0,0,1-7.747-.816c-.128-.022-.257-.044-.387-.055A1.536,1.536,0,0,0,.026,3.35a3.045,3.045,0,0,0,.411.978,19.526,19.526,0,0,0,1.214,1.8Q3.05,8.007,4.465,9.88A11.047,11.047,0,0,0,6.188,11.7a13.025,13.025,0,0,1,1.264,1.294c.254.28.507.561.774.832a.931.931,0,0,0,1.015.279.854.854,0,0,0,.551-.855,1.989,1.989,0,0,0-.321-1c-.839-1.319-1.287-2.81-2.247-4.075a.592.592,0,0,1-.048-.149' transform='matrix(0.799,-0.602,0.602,0.799,0,32.857)' fill='%23333' fill-rule='evenodd'/></svg>") no-repeat center;
    background-size: contain;
    position: absolute;
    left: calc(100% + 1rem);
    top: -0.75rem;
}

.editor--content .homepage__faq--background,
.editor-styles-wrapper .homepage__faq--background {
    background-image: url('../images/water-tower-watermark.png');
    background-size: 85% auto;
    background-position: bottom right;
    background-repeat: no-repeat;
}

/*/*/

.wp-block-npx-icon-block:focus-within {
    outline: 0.125rem solid var(--cl-tertiary);
    outline-offset: 0.125rem;
}

/*/*/

.wp-block-image figure figcaption,
.wp-block figure figcaption {
    text-align: center;
    font-size: var(--fs-body-xs);
    opacity: 0.66;
    margin-top: 1rem;
    margin-bottom: 0;
}

/*/*/

.wp-block-contact-form-7-contact-form-selector > div {
    width: 100%;
}

/*/*/

.contact__map--embed iframe {
    width: 100%;
    height: 100%;
    border-radius: 1.5rem;
    filter: drop-shadow(0 0 0.4rem rgba(0,0,0,0.24));
}

/*/*/

.editor--content .page__water--row,
.editor-styles-wrapper .page__water--row {
    align-items: center !important;
}
.editor--content .page__water--row .wp-block:has(.wp-block-npx-callout-block),
.editor-styles-wrapper .page__water--row .wp-block:has(.wp-block-npx-callout-block) {
    margin-top: 0;
}
.editor--content .page__water--row p.wp-block,
.editor-styles-wrapper .page__water--row p.wp-block {
    margin-bottom: 0;
}
.editor--content .page__water--row .wp-block:has(.wp-block-npx-callout-block),
.editor-styles-wrapper .page__water--row .wp-block:has(.wp-block-npx-callout-block) {
    margin-top: 0;
}

/*/*/

.wp-block-group .page__section--gap-small,
.wp-block-columns.page__section--gap-small  {
    gap: 2rem;
}
.wp-block-column:has(.wp-block-npx-callout-block) {
    margin-top: 0;
}
.wp-block-column:has(.wp-block-npx-callout-block) > .wp-block {
    display: flex;
    margin: 0;
    height: 100%;
}
.wp-block-column:has(.wp-block-npx-callout-block) .wp-block-npx-callout-block {
    height: 100%;
}

@media only screen and (max-width: 1023px) {
    .editor--content .homepage__faq--eyebrow.homepage__faq--eyebrow {
        display: none;
    }
    .editor--content .homepage__faq--text.homepage__faq--text {
        display: none;
    }
    .editor--content .homepage__faq--action {
        display: none
    }
    .editor--content .homepage__faq--background {
        background: none;
    }
    .wp-block-columns {
        gap: 2.5rem;
    }
    .wp-block-columns:has(.homepage--faqs) {
        gap: 0rem;
    }
    .contact__map--embed iframe {
        aspect-ratio: 16/9;
    }
    .wp-block-columns .content--offset {
        max-width: 100% !important;
    }
}

@media only screen and (max-width: 767px) {
    .is-style-rounded img {
        border-radius: var(--br-s);
    }
    .home__section--actions .heading--decoration {
        margin-bottom: 2.5rem !important;
    }
    .editor-styles-wrapper h2.page__section--heading::before,
    .editor--content h2.page__section--heading::before {
        margin-right: 1rem;
    }
    .editor-styles-wrapper h2.page__section--heading::after,
    .editor--content h2.page__section--heading::after {
        margin-left: 1rem;
    }
    .editor-styles-wrapper h2.page__section--heading,
    .editor--content h2.page__section--heading {
        letter-spacing: 0.01em;
    }

    .wp-block-npx-notification-block {
        padding: 1rem 1rem 1rem 1.5rem;
        border-radius: var(--br-s);
    }
    .npx-notification-panel::before {
        width: 0.5rem;
    }
    .npx-notification-panel {
        grid-template-columns: 1fr;
        gap: 0.5rem;
    }
    .npx-notification-content {
        line-height: 1.45;
    }
    .wp-block-group .page__section--gap-small, 
    .wp-block-columns.page__section--gap-small {
        gap: 1rem;
    }
    .home__section--actions .wp-block-columns:has(+ .wp-block-columns) {
        margin-bottom: 1rem;
    }

    .wp-block-columns {
        gap: 1rem;
    }
    .wp-block-columns + .wp-block-spacer {
        height: 1rem !important;
    }
    .wp-block-spacer:has( + .wp-block-npx-notification-block) {
        height: 2rem !important;
    }
    .npx-notification-content-wrapper {
        font-weight: 400;
    }
}