.error404 {
    text-align: center;
}

.error404 main> :first-child:not(.hero-basic) {
    margin-top: calc(var(--header-height) + (var(--wp--preset--spacing--x-large)*1.5));
}

.error404 main> :last-child {
    margin-bottom: calc(var(--wp--preset--spacing--x-large)*1.5);
}

.editor-styles-wrapper .acf-block-fields.acf-fields {
    width: 100%;
    max-width: 950px;
    margin: 0 auto;
}

.wp-block-site-logo {
    width: 100%;
}

.wp-block-site-logo img {
    width: 100%;
    height: auto;
}

.wp-site-blocks>* {
    margin: 0;
}

.aligncontent,
main> :where(:not(.alignleft):not(.alignright)),
.is-root-container> :where(:not(.alignleft):not(.alignright)) {
    width: var(--wp--custom--cabb-block-content-size);
    max-width: 90%;
    margin-left: auto !important;
    margin-right: auto !important;
}

.alignwide,
main .alignwide,
.wp-block[data-align="wide"],
.editor-styles-wrapper .edit-post-visual-editor__post-title-wrapper>.alignwide,
.editor-styles-wrapper .block-editor-block-list__layout.is-root-container>.alignwide {
    width: var(--wp--custom--cabb-block-content-wide-size);
    max-width: 90% !important;
    margin-left: auto;
    margin-right: auto;
}

.alignfull,
main .alignfull,
.wp-block[data-align="full"] {
    width: 100%;
    max-width: 100%;
}

.editor-styles-wrapper h1.wp-block-post-title {
    text-transform: initial !important;
}

.wp-block h1, .wp-block h2, .wp-block  h3, .wp-block h4, .wp-block h5, .wp-block h6,
.wp-block h1.wp-block-heading, .wp-block h2.wp-block-heading, .wp-block h3.wp-block-heading, .wp-block h4.wp-block-heading, .wp-block h5.wp-block-heading, .wp-block h6.wp-block-heading {
    max-width: var(--wp--custom--cabb-block-content-wide-size) !important;
    width: 100%;
    line-height: 1.2 !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

.cabb-block,
.cabb-inner-block {
    display: flex;
    box-sizing: border-box;
}

.cabb-block.container,
.cabb-inner-block.container {
    padding: 0;
}

.cabb-block.block-index-1 {
    margin-top: 0;
}

.cabb-block.block-align-items-center,
.cabb-inner-block.block-align-items-center {
    align-items: center;
}

.cabb-block.block-align-items-top,
.cabb-inner-block.block-align-items-top {
    align-items: flex-start;
}

.cabb-block.block-align-items-bottom,
.cabb-inner-block.block-align-items-bottom {
    align-items: flex-end;
}

.cabb-block.center .cabb-inner-block.center {
    text-align: center;
    justify-content: center;
}

.cabb-block.left,
.cabb-inner-block.left {
    text-align: left;
    justify-content: flex-start;
}

.cabb-block.right,
.cabb-inner-block.right {
    text-align: right;
    justify-content: flex-end;
}

body :where(*.has-text-color:not(.has-link-color)) a {
    color: inherit !important;
}

*:target {
    margin-top: 147px;
}

/* core/navigation */
.wp-block-navigation .wp-block-navigation-item__label {
    white-space: nowrap;
}

.wp-block-navigation {
    width: 100%;
}

@media (min-width: 600px) {
    .wp-block-navigation__responsive-container-open:not(.always-shown) {
        display: block;
    }
}

@media (min-width: 756px) {
    .wp-block-navigation__responsive-container-open:not(.always-shown) {
        display: none;
    }
}

@media (max-width: 756px) {
    .wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
        display: none;
    }
}

/* core/image */
figure.wp-block-image,
figure.wp-block-image img,
.wp-block-image figure,
.wp-block-image figure img,
.wp-block-image .components-resizable-box__container img,
.wp-block-image .components-resizable-box__container img{
    width: 100%;
}

.wp-block-image .components-resizable-box__container {
    /*width: 100% !important;
    height: auto !important;*/
}

/* core/text_media */
.wp-block-media-text .wp-block-media-text__content {
    padding-top: var(--wp--style--block-gap);
    padding-bottom: var(--wp--style--block-gap);
}

.wp-block-media-text .wp-block-media-text__content> :first-child {
    margin-top: 0;
}

.wp-block-media-text .wp-block-media-text__content> :last-child {
    margin-bottom: 0;
}

.wp-block-media-text .wp-block-media-text__content>* {
    max-width: 600px;
}

/* core/columns */
.wp-block-columns {
    gap: 1.5rem;
    --wp--style--block-gap: 1.5rem;
}

.wp-block-column.has-background {
    padding: var(--wp--style--block-gap);
    overflow: hidden;
}

.wp-block-column.has-background>.wp-block-image:first-child {
    --image-margins: calc(var(--wp--style--block-gap) - (var(--wp--style--block-gap) * 2));
    --image-width: calc(var(--wp--style--block-gap) * 2 + 100%) !important;
    position: relative;
    left: var(--image-margins);
    max-width: var(--image-width) !important;
    width: var(--image-width) !important;
    margin-block-start: var(--image-margins) !important;
    margin: 0 var(--image-margins) 0 0;
    display: block;

}

@media (min-width: 782px) {
    .wp-block-columns {
        flex-wrap: wrap !important;
    }
}

/* core/buttons */
.wp-block-buttons {
    display: flex;
    flex-wrap: wrap;
    gap: 1.5em;
    flex-direction: row;
    align-items: center;
    justify-content: center;
}

/* editor empty blocks styling */
.editor-styles-wrapper .is-root-container .cabb-block:empty {
    background-color: lightgray;
    height: 100px;
    width: 100%;
}

.editor-styles-wrapper .is-root-container .cabb-block:empty::before {
    content: "Empty Block";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: black;
    font-weight: 700;
    font-size: 14px;
    text-align: center;
}
