.error404 {
    text-align: center;
}

.error404 .inner {
    padding: var(--wp--custom--cabb-block-padding-y) 0;
}

.error404 h1 {
    margin: 0;
}

.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%;
}

h1, h2, h3, h4, h5, h6 {
    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;
    /*padding: var(--wp--style--block-gap) var(--wp--style--block-gap);*/
    width: 100%;
    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 {
    max-width: none !important;
}

.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/group */

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

/* widget section */
.widget.widget_block> :first-child {
    margin-top: 0 !important;
}

.widget.widget_block> :last-child {
    margin-bottom: 0 !important;
}