@charset "UTF-8";

/*******************************************************************************
	                              GLOBAL / BODY
*******************************************************************************/

*,
*:before,
*:after {
    -webkit-box-sizing: border-box;
       -moz-box-sizing: border-box;
            box-sizing: border-box;
}

body * {
	-webkit-font-smoothing: antialiased;
}

body,
.wp-site-blocks,
main.site-main {
		overflow-x:hidden;
		overflow-y: auto;
}

/*******************************************************************************
								VARIABLES
					  
					  SET UP AS BOOTSTRAP DEFAULTS
*******************************************************************************/

:root {
    --ppm-container: 100%;
    --ppm-spacing: 1rem;
}

@media (min-width: 576px) {

    :root {
        --ppm-container: 540px;
    }

}

@media (min-width: 768px) {

    :root {
        --ppm-container: 720px;
    }

}

@media (min-width: 992px) {

    :root {
        --ppm-container: 960px;
    }

}

@media (min-width: 1200px) {

    :root {
        --ppm-container: 1140px;
    }

}

@media (min-width: 1400px) {

    :root {
        --ppm-container: 1320px;
    }

}

/*******************************************************************************
			                  DEFAULT SITE LAYOUT
*******************************************************************************/

body .wp-site-blocks {
		display: grid;
		min-height: 100vh;
	  	grid-template-rows: auto 1fr auto;
	  	grid-template-columns: 100%;
}

header.site-header {
		grid-row-start: 1;
		grid-row-end: 2;
}

main.site-main {
		grid-row-start: 2;
		grid-row-end: 3;
}

footer.site-footer {
		grid-row-start: 3;
		grid-row-end: 4;
}

/*******************************************************************************
							    DEFAULT SITE SPACING
*********************************************************************************/

.wp-site-blocks {
		width: 100%;
		padding-left: var(--ppm-spacing);
		padding-right: var(--ppm-spacing);	

}

.wp-site-blocks > *:where(header, main, aside, footer),
.wp-site-blocks .wp-block-post-content {
		margin-left: calc(-1 * var(--ppm-spacing));
		margin-right: calc(-1 * var(--ppm-spacing));
}

.wp-site-blocks > *:where(header, main, aside, footer),
.wp-block-post-content,
.edit-post-visual-editor__post-title-wrapper,
.wp-block-group.alignfull,
.wp-block-columns.alignfull {
		padding-left: var(--ppm-spacing);
		padding-right: var(--ppm-spacing);	
}


/*******************************************************************************
					     UPPER LIMIT FOR WIDE SCREENS
*********************************************************************************/

@media (min-width: 2560px) {

	body,
	.wp-site-blocks > header {
		max-width: 2560px;
		margin-right: auto;
		margin-left: auto;
	}

}

/*******************************************************************************
					            	ALIGNFULL
*******************************************************************************/

.alignfull {
		width: unset;
		max-width: none;
		margin-left: calc(-1 * var(--ppm-spacing)) !important;
		margin-right: calc(-1 * var(--ppm-spacing)) !important;
}

/*******************************************************************************
					            	COLUMNS
*******************************************************************************/

.wp-block-column {
	flex: 1 1 auto;
}

@media (max-width:575px) {

	.wp-block-columns:not(.is-not-stacked-on-mobile) {
		flex-wrap: wrap !important;
	}

    .wp-block-columns:not(.is-not-stacked-on-mobile)>.wp-block-column {
        flex: 1 0 100%;
    }
}

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