:root{
    --block-spacing: 40px;
}

@media(max-width: 768px)
{
    :root{
        --block-spacing: 30px;
    }
}

html :is(.wp-block){
    margin-top: 0px;
    margin-bottom: var(--block-spacing);
}

figure{
    margin-inline: 0px;
    position: relative;
	max-width: 100%;
}

.post-content figure:not(.alignfull):not(.alignwide){
    max-width: 100%;
}

.blocks-gallery-grid:not(.has-nested-images), .wp-block-gallery:not(.has-nested-images),
.post-content > *{
    margin-bottom: var(--block-spacing);
}

.post-content > :is(h1,h2,h3,h4,h5,h6){
    margin-top: 0px;
}

/* ALIGNMENT */
.aligncenter{
    display: block;
    margin: 0 auto;
    margin-bottom: var(--block-spacing);
}

.alignright {
    float:right;
    margin: 5px 0 20px 20px!important;
}

.alignleft {
    float: left;
    margin: 5px 20px 20px 0!important;
}

.alignfull{
	margin: 0 calc(50% - 50vw - 10px);
    margin-bottom: var(--block-spacing);
	max-width: 100vw;
	width: 100vw;
}

body.editor-styles-wrapper .alignfull,
[class*="block-editor"].alignfull{
    max-width: 100%;
    margin: 0px;
}

.alignwide{
	margin: 0 calc(50% - min(100vw,var(--content-width)) / 2);
    margin-bottom: var(--block-spacing);
	max-width: min(100vw,var(--content-width));
	width: min(100vw,var(--content-width));
}

@media(min-width: 1025px)
{
    .post-content .alignwide{
        margin: 0 calc(50% - min(100vw,var(--content-width)) / 2);
        margin-bottom: var(--block-spacing);
    }
}

@media (max-width: 1024px)
{
    .post-content .alignwide{
        width: 100%;
        margin: 0 auto;
        margin-bottom: var(--block-spacing);
    }
}

@media (max-width: 540px)
{
    .alignleft,
    .alignright {
        float: none;
        margin: var(--block-spacing) 0px var(--block-spacing) 0!important;
    }
    
    .alignleft {
        float: none;
        margin: var(--block-spacing) 0px var(--block-spacing) 0!important;
    }
}

.post-content-wrap:not(.st-grid-narrow) .alignfull,
.post-content-wrap:not(.st-grid-narrow) .alignwide{
    margin-left: 0px;
    margin-right: 0px;
    max-width: 100%;
}

/* END ALIGNMENT */

/* GALLERY */
.blocks-gallery{
    margin-bottom: var(--block-spacing);
}

ul.wp-block-gallery .blocks-gallery-image, 
ul.wp-block-gallery .blocks-gallery-item{
    margin: 0px!important;
}

.blocks-gallery-item{
    padding: 0px;
    overflow: hidden;
}

div[id*="gallery"] img{
    border: none!important;
}

.gallery-item{
    padding: 5px;
}
/* END GALLERY */

/* CAPTIONS */
.gallery-caption,
.wp-caption-text,
figcaption{
    font-size: 85%;
    opacity: 0.6;
    text-align: center;
}

.blocks-gallery-item__caption{
    opacity: 1;
}
/* END CAPTIONS */

/* LATEST POSTS */
.wp-block-latest-posts__post-title{
    font-size: var(--heading-4-font-size);
    font-weight: var(--heading-font-weight);
    color: var(--heading-color);
    text-decoration: none;
    line-height: var(--heading-line-height);
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;  
    overflow: hidden;
    word-break: break-word;
    margin: 20px 0px;
}

.wp-block-latest-posts__post-title:hover{
    color: var(--link-hover-color);
}

.wp-block-latest-posts__post-author, .wp-block-latest-posts__post-date{
    font-size: var(--article-meta-font-size);
}
/* END LATEST POSTS */

/* LATEST COMMENTS */
.wp-block-latest-comments{
    padding: 0px; 
}

.wp-block-latest-comments__comment{
    display: flex;
    gap: 20px;
}

.wp-block-latest-comments__comment article{
    margin: 0px;
}

.wp-block-latest-comments__comment-meta,
.wp-block-latest-comments__comment-date{
    font-size: var(--article-meta-font-size);
}

.wp-block-latest-comments__comment-meta a{
    text-decoration: none;
    color: var(--text-color);
    font-weight: 700;
}

.wp-block-latest-comments__comment-meta a:hover{
    color: var(--link-hover-color);
}

.wp-block-latest-comments .avatar, .wp-block-latest-comments__comment-avatar{
    margin: 0px;
}

.has-avatars .wp-block-latest-comments__comment .wp-block-latest-comments__comment-excerpt, .has-avatars .wp-block-latest-comments__comment .wp-block-latest-comments__comment-meta{
    margin: 0px;
}
/* END LATEST COMMENTS */

/* COMMENTS BLOCK */
.wp-block-comments{
    font-size: var(--text-font-size);
}

.wp-block-post-comments-form .comment-form-cookies-consent #wp-comment-cookies-consent{
    margin: 0px;
}

.wp-block-comments .comment-reply-title{
    font-size: var(--heading-5-font-size);
}

.wp-block-comments .logged-in-as{
    margin-top: 10px;
}

.wp-block-comments .comment-reply-link{
    position: absolute;
    top: 0px;
    right: 0px;
    font-size: var(--input-font-size);
    text-decoration: none;
}

.wp-block-comments div:has(.wp-block-avatar){
    margin-inline-end: 20px;
    flex-shrink: 0;
}
/* END COMMENTS BLOCK */

/* BUTTON */

.is-style-squared .wp-block-button__link{
    border-radius: 0px;
}

/* END BUTTON */

/* EMBEDS */
iframe{
    display: block
}

.wp-block-embed iframe{
    width: 100%;
    max-width: 100%;
}

.wp-block-embed__wrapper .twitter-tweet{
    max-width: 100%;
}

/* END EMBEDS */

/* BLOCKQUOTE */
blockquote{
	position: relative;
	border-inline-start: 4px solid var(--main-green-light);
    margin-left: 0px;
    margin-right: 0px;
    font-style: italic;
}

blockquote p{
    margin: 0px;
}

blockquote,
.wp-block-quote.is-large:not(.is-style-plain), .wp-block-quote.is-style-large:not(.is-style-plain),
.wp-block-quote.is-large, .wp-block-quote.is-style-large{
	padding: 50px 50px;
}

cite{
    display: inline-block;
    margin-top: 25px;
    font-weight: normal;
    font-style: normal;
    font-size: var(--text-font-size);
}
/* END BLOCKQUOTE */

/* PULL QUOTE */
.wp-block-pullquote{
    padding: 0px;
}

.wp-block-pullquote blockquote{
    border: none;
    border-top: 4px solid var(--heading-color);
}

body .wp-block-pullquote blockquote:after,
body .wp-block-pullquote blockquote:before{
    top: 0px;
    left: 50%;
    right: auto;
    transform: translate(-50%,-50%);
}
/* END PULL QUOTE */

/* SEPARATORS */
.wp-block-separator{
    border-top-width: 1px;
    border-color: var(--line-divider-color);
    margin: 0px;
}
/* END SEPARATORS */


/* COVERS */
.post-content .wp-block-cover p{
    margin: 0px;
}

.wp-block-cover-image.is-light .wp-block-cover__inner-container, 
.wp-block-cover.is-light .wp-block-cover__inner-container,
.wp-block-cover{
    color: #fff;
}

.wp-block-cover{
    overflow: hidden;
}
/* END COVERS */

/* BLOCK IMAGE */
.wp-block-image img{
    display: block;

}

.wp-block-image.is-style-rounded img{
    border-radius: var(--block-image-border-radius, 20px);
}

@media(max-width: 540px)
{
    .wp-block-column .wp-block-image{
        text-align: center;
    }

    .wp-block-column .wp-block-image img{
        margin: 0 auto;
    }
}
/* END BLOCK IMAGE */

/* DROPCAP */
.has-drop-cap:after{
    content: '';
    display: table;
    clear: both;
}
/* END DROPCAP */


/* WIDGETS WITH LISTS (categories, archives nav menus, pages, etc...) */
.wp-block-page-list, 
.wp-block-categories-list, 
.wp-block-categories__list, 
.wp-block-archives-list,
.widget:not(.widget_block):not(.wp-block) > div > ul,
.widget:not(.widget_block):not(.wp-block) > ul,
.wp-block-column > ul,
.wp-widget-group__inner-blocks > ul{
    --list-padding: 8px;
    padding: 0px;
}

.wp-block-page-list > li:first-child, 
.wp-block-categories-list > li:first-child, 
.wp-block-categories__list > li:first-child, 
.wp-block-archives-list > li:first-child,
.widget:not(.widget_block):not(.wp-block) > div > ul > li:first-child,
.widget:not(.widget_block):not(.wp-block) > ul > li:first-child,
.wp-block-column > ul > li:first-child,
.wp-widget-group__inner-blocks > ul > li:first-child{
    padding-top: 0px;
}

.wp-block-page-list ul, 
.wp-block-categories-list ul, 
.wp-block-categories__list ul, 
.wp-block-archives-list ul,
.widget:not(.widget_block):not(.wp-block) ul,
.wp-block-column ul,
.wp-widget-group__inner-blocks ul{
    width: 100%;
}

.wp-block-page-list li, 
.wp-block-categories-list li, 
.wp-block-categories__list li, 
.wp-block-archives-list li,
.widget:not(.widget_block):not(.wp-block) li,
.wp-block-column li,
.wp-widget-group__inner-blocks li{
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
}

.wp-block-column li,
.wp-widget-group__inner-blocks li{
    justify-content: flex-start;
}

.wp-block-page-list li:before,
.wp-block-categories-list li:before,
.wp-block-categories__list li:before,
.wp-block-archives-list li:before,
.widget:not(.widget_block):not(.wp-block) li:before,
.wp-block-column ul:not(.list-unstyled) li:before,
.wp-widget-group__inner-blocks ul:not(.list-unstyled) li:before{
    content: ' ';
    width: 5px;
    height: 5px;
    background: var(--text-color);
    border-radius: 50%;
    margin-inline-end: 10px;
}

.wp-block-page-list a,
.wp-block-categories-list a,
.wp-block-categories__list a,
.wp-block-archives-list a,
.widget:not(.widget_recent_comments):not(.widget_block):not(.wp-block) li a,
.wp-block-column ul:not(.list-unstyled) li a,
.wp-widget-group__inner-blocks ul:not(.list-unstyled) li a{
    text-decoration: none;
    color: var(--text-color);
    margin-inline-start: 0px;
    margin-inline-end: auto;
}

.wp-block-page-list a:hover,
.wp-block-categories-list a:hover,
.wp-block-categories__list a:hover,
.wp-block-archives-list a:hover,
.widget:not(.widget_recent_comments):not(.widget_block):not(.wp-block) li a:hover,
.wp-block-column ul:not(.list-unstyled) li a:hover,
.wp-widget-group__inner-blocks ul:not(.list-unstyled) li a:hover{
    color: var(--link-hover-color);

}


.wp-block-post-content :is(ol,ul) :is(ul,ol,li).wp-bblock-list,
.wp-block-post-content :is(ol,ul) :is(ul,ol,li).wp-block{
    margin-top: var(--list-padding);
    margin-bottom: 0px;
}

.wp-block-list .wp-block-list{
    margin-bottom: 0px;
}

/* WIDGETS WITH LISTS (categories, archives nav menus, pages, etc...) */

/* CALENDAR */
.wp-block-table thead,
.wp-block-table tfoot{
    border: none;
}

table#wp-calendar th,
table#wp-calendar td{
    text-align: center;
    font-size: 90%;
    padding: 5px;
    background: transparent;
}

.wp-block-calendar table th{
    color: var(--text-color);
}

.wp-block-calendar th,
.wp-block-calendar tbody td{
    border-left: none;
    border-right: none;
}

nav.wp-calendar-nav{
    text-align: center;
    margin: 0px;
}

.wp-block-calendar caption{
    font-size: 80%;
    margin-bottom: 15px;
}
/* END CALENDAR */



/* COLUMNS */
body .wp-block-columns.is-not-stacked-on-mobile{
    flex-wrap: wrap!important;
}

.wp-block-column > *:first-child{
    margin-top: 0px;
}

.wp-block-column{
    position: relative;
}

.wp-block-columns{
    row-gap: 0px;
    flex-wrap: wrap!important;
    column-gap: var(--gap, 0px);
}

@media(max-width:768px)
{
    .wp-block-columns{
        column-gap: var(--gap-tablet, 0px);
    }

	.wp-block-columns .wp-block-column:not(:only-child) {
        flex-basis: var(--width-tablet, 100%)!important;
	}
}

@media(max-width:540px)
{
    .wp-block-columns{
        column-gap: var(--gap-mobile, 0px);
    }

	.wp-block-columns .wp-block-column:not(:only-child) {
        flex-basis: var(--width-mobile, 100%)!important;
	} 
}

/* END COLUMNS */

/* SEARCH */
.wp-block-search.wp-block-search__button-inside .wp-block-search__inside-wrapper .wp-block-search__button,
.wp-block-search__inside-wrapper .wp-block-search__button[type="submit"]{
    padding: 0 30px;
    margin-inline-start: 10px;
}

.wp-block-search__searchfield-hidden .wp-block-search__button{
    appearance: none;
    color: var(--text-color);
    border: 2px solid var(--text-color);
    border-radius: 18px;
    background: transparent;
    padding: 0 30px;
}

.widget_search form{
    position: relative;
}

.widget_search a{
    position: absolute;
    right: 20px;
    top: 5px;
    z-index: 2;
}

.wp-block-search.wp-block-search__button-inside .wp-block-search__inside-wrapper{
    border-radius: 15px;
    border-color: var(--input-border-color);
    padding: 0px;
    overflow: hidden;
    background: var(--input-background-color);
}

.wp-block-search.wp-block-search__button-inside .wp-block-search__inside-wrapper .wp-block-search__input{
    padding: 0px;
    padding-inline-start: 20px;
}

footer .wp-block-search__inside-wrapper{
    box-shadow: none;
}

:where(.wp-block-search__button-inside .wp-block-search__inside-wrapper){
    border: none;
}

.wp-block-search__button:not([type="submit"]){

}
/* END SEARCH */

/* RSS */
.wp-block-rss li,
.widget_rss li{
    margin-bottom: 20px;
}
/* END RSS */


/* SOCIAL */
.wp-block-social-links .wp-block-social-link.wp-social-link{
    width: 45px;
    height: 45px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.wp-block-social-links .wp-social-link svg{
    width: 25px;
}
/* END SOCIAL */

/* NAVIGATION BLOCK */
.wp-block-navigation ul{
    list-style: none;
}

.wp-block-navigation .wp-block-page-list li:before{
    content: none;
}

@media(min-width: 601px){
    .wp-block-navigation:not(.has-background) .wp-block-navigation__submenu-container{
        border: none;
        border-radius: 10px;
        box-shadow: 2px 2px 10px rgba(0, 0, 0, .05);
        padding: 10px 0px;
    }

    .wp-block-navigation .wp-block-page-list li{
        padding: 0px 5px;
    }
}

@media (max-width:600px){
    body .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content{
        padding-top: 0px;
    }

    .wp-block-navigation__responsive-container-content{
        padding-inline-start: 30px;
    }

    .wp-block-navigation .wp-block-page-list li{
        padding: 0px;
        padding-top: 10px;
    }    

    .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content .has-child .wp-block-navigation__submenu-container{
        margin: 0px;
        padding: 0px;
        padding-inline-start: 20px;
    }

    .wp-block-navigation__responsive-container-close{
        right: 20px;
    }
}
/* END NAVIGATION BLOCK */

/* MISCELLANEOUS */
.post-nav-links span{
    display: inline-block;
}

.wp-block-spacer{
    margin: 0px;
}
/* END MISCELLANEOUS */