/**
Theme Name:   Lane+Lane Astra Child
Author:       Lane+Lane
Author URI:   https://www.laneandlane.com
Description:  Basic starter child theme for Astra.
Version:      1.0.0
License:      GNU General Public License v2 or later
License URI:  http://www.gnu.org/licenses/gpl-2.0.html
Text Domain:  lanelane-astra-child
Template:     astra
*/

/***** Temp Show Header Levels *****/
/*
h2:after { content: 'H2'; color: green; }
h3:after { content: 'H3'; color: purple; }
h4:after { content: 'H4'; color: blue; }
h5:after { content: 'H5'; color: magenta; }
h6:after { content: 'H6'; color: orange; }
*/

/********** WORDPRESS/ASTRA CORRECTIONS **********/

/* Add global float clear rule (until added back in with future Astra update) */
.clear:before,
.clear:after,
.site-header:before,
.site-header:after,
.site-content:before,
.site-content:after,
#primary:before,
#primary:after,
.site-main:before,
.site-main:after,
#secondary:before,
#secondary:after,
.sidebar-main:before,
.sidebar-main:after,
.site-footer:before,
.site-footer:after,
.ast-row:before,
.ast-row:after,
.ast-container:before,
.ast-container:after {
  content: "";
  display: table;
}

.clear:after,
.site-header:after,
.site-content:after,
#primary:after,
.site-main:after,
#secondary:after,
.sidebar-main:after,
.site-footer:after,
.ast-row:after,
.ast-container:after {
  clear: both;
}

/* Override rules added to new Astra sites for controlling block layouts (e.g, normal, wide, full - v.3.7.4+ 
	Style defaults max-widths are very strange and arbitrary. Adding 'Layout' settings to theme.json doesn't seem to have much affect.	*/

/* Restore old Default width style - fits container width */
.entry-content > .wp-block-group, 
.entry-content > .wp-block-media-text, 
.entry-content > .wp-block-cover:not(.alignleft):not(.alignright):not(.aligncenter), 
.entry-content > .wp-block-columns {
    max-width: none;
    width: auto;
}

/* Restore old Wide width style - allows .alignwide content to extend beyond container width. 
	Need media query to set fixed max negative margin for larger screens */

.site-main .entry-content > .alignwide {
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
}

/* Media query = container width + margins */
@media screen and (min-width: 1400px) {		
	.site-main .entry-content > .alignwide {
		margin-left: -100px;
		margin-right: -100px; 
	}
}

.entry-content [class*="__inner-container"] > *:not(.alignwide):not(p):not(.alignfull):not(.alignleft):not(.alignright):not(.is-style-wide):not(iframe) {
    max-width: unset;
}

/**** 
FONT-SIZE OVERRIDE
Override default font sizes set in WP blocks theme.json in WP v5.9. Example uses default sizes from WP v.5.8.x. 
Using theme.json in child theme, however, to make these changes so they apply to both editor & front end.
Can override here for specific purposes, though, such as applying different size to a heading. 
****/
/*
body {
    --wp--preset--font-size--small: .8125em;
    --wp--preset--font-size--medium: 1.25em;
    --wp--preset--font-size--large: 2.25em;
    --wp--preset--font-size--x-large: 2.625em;
    --wp--preset--font-size--normal: 1em;
}
*/
/*** Apply override to a specific element, eg. H3 ***/
/*
h3 {
    --wp--preset--font-size--small: .99rem;
}
*/


/********** GLOBAL VARIABLES **********/

/* Set to match Container width set in Customizer in case it isn't picked up by default */	
body { --ast-content-width-size: 1200px; }

/* Set default site left/right padding */
body { --global-page-padding: 2em; }


/********** GLOBAL STYLES **********/

/***** LAYOUT *****/

/* Global left/right padding */
.ast-container,
.ast-container-fluid,
#masthead .ast-container,
.site-header-focus-item + .ast-breadcrumbs-wrapper.ast-container, 
.site-primary-footer-wrap[data-section="section-primary-footer-builder"] .ast-builder-grid-row {
    padding-left: var(--global-page-padding);
    padding-right: var(--global-page-padding);
}
/* Correct to account for custom global padding */
.ast-container { 
	max-width: calc(var(--ast-content-width-size) + var(--global-page-padding) + var(--global-page-padding)); 
}

/* Set Cover block inner container max-width */
.ast-plain-container.ast-no-sidebar .entry-content .alignwide .wp-block-cover__inner-container, 
.ast-plain-container.ast-no-sidebar .entry-content .alignfull .wp-block-cover__inner-container {
    width: 100%;
    max-width: var(--ast-content-width-size);
}
/* Cover block padding */
.entry-content > .wp-block-cover {
	padding: 3em;
}
.entry-content > .wp-block-cover.alignwide,
.entry-content > .wp-block-cover.alignfull {
	padding: 3em var(--global-page-padding);
}
/* Remove margin bottom on last element in Cover block */
.wp-block-cover__inner-container > *:last-child {
    margin-bottom: 0;
}
/* Remove min-height from Cover blocks */
.wp-block-cover, .wp-block-cover-image {
    min-height: 0;
}

/* Set Group block margins/padding */
.entry-content > .wp-block-group {
    margin-top: 1.5em;
    margin-bottom: 1.5em;
}
#primary .entry-content .wp-block-group {
	padding: 2em;
}
#primary .entry-content > .wp-block-group.alignwide,
#primary .entry-content > .wp-block-group.alignfull {
	padding-left: var(--global-page-padding);
	padding-right: var(--global-page-padding);
}
/* Account for Group blocks NOT setting 'Inherit Default Layout'.
   Forces inner content to be constrained to global content width. 
   Remove to get default behavior, where inner content spans */
/*   
.entry-content > .wp-block-group > .wp-block-group__inner-container {
    max-width: var(--ast-content-width-size);
    margin-left: auto;
    margin-right: auto;
}
*/

/* Set Media + Text block padding */
.entry-content .wp-block-media-text.alignwide .wp-block-media-text__content,
.entry-content .wp-block-media-text.alignfull .wp-block-media-text__content {
	padding-left: var(--global-page-padding);
	padding-right: var(--global-page-padding);
}
/* Match text column padding to columns, defaults */
.entry-content .wp-block-media-text .wp-block-media-text__content {
    padding-left: var(--wp--style--block-gap,2em);
}
.entry-content .wp-block-media-text.has-media-on-the-right .wp-block-media-text__content {
    padding-right: var(--wp--style--block-gap,2em);
}


/***** GENERAL *****/
.caps {
	text-transform: uppercase;
}

/* Allow equal height columns */
.equal-height-columns {
	display: flex;
}

/* Make sticky footer */
div#page {
	display: flex;
	min-height: 100vh;
	flex-direction: column;
}
div#content { flex: 1; }


/* HR (Horizontal Rules / Separator Blocks) */
#primary hr.wp-block-separator {
	border-top: 2px solid;
	border-bottom: none;
	background-color: transparent !important;
}
#primary hr.wp-block-separator:not(.alignwide) {
	max-width: 100px; 
}
#primary hr.wp-block-separator:not(.aligncenter):not(.alignwide) {
	margin-left: 0;
}	

/* Set default color
hr.wp-block-separator:not(.has-text-color) {
	color: #b91d15;
}
*/

/* Buttons (fix lack of 'visited' state setting - mostly for buttons with dark text) 
.wp-block-button__link:visited {
    color: var(--ast-global-color-5);
}
*/

/* Bullet Lists */
.entry-content ul:not(.blocks-gallery-grid),
.entry-content ol {
    margin: 0 0 1rem 1.15em;
    padding: 0;
}
.entry-content ol {
	margin-left: 1.55em;
}
.entry-content li:not(.blocks-gallery-item) {
    list-style-position: outside;
    padding-left: 0.4em;
    line-height: 1.4;
    margin-bottom: 0.7em;
}
.entry-content ul li:not(.blocks-gallery-item) {
    list-style-type: '›';
}
/*
li::marker {
	color: var(--ast-global-color-3);
}
*/

/* Blockquote */
.wp-block-quote,
.wp-block-quote.is-large, 
.wp-block-quote.is-style-large {
    border-left: none;
    margin-left: 0;
    margin-right: 0;
    padding: 0;
}
.wp-block-cover .wp-block-quote,
.wp-block-column.has-background .wp-block-quote {
	color: #fff;
}
/*
.wp-block-quote p {
	font-size: 1rem;
	line-height: 1.5
}
.wp-block-quote.is-large p, .wp-block-quote.is-style-large p {
 	font-size: 32px;
 	font-size: 2rem;
}
*/
.wp-block-quote cite, 
.wp-block-quote footer {
	font-size: 14px;
    font-size: 0.875rem;
    font-weight: 700;
    display: block;
}
.wp-block-quote.is-large cite, 
.wp-block-quote.is-large footer, 
.wp-block-quote.is-style-large cite, 
.wp-block-quote.is-style-large footer {
	font-size: 15px;
    font-size: 0.9375rem;
}

/* Gallery Block */
.wp-block-gallery.has-nested-images figure.wp-block-image {
    flex-grow: 0;
}




/******* FOOTER STYLES *********/


/* ============================================ 
RESPONSIVE STYLING
============================================= */

/* Correct issue on iOS devices for fixed backgrounds */
@supports ( -webkit-touch-callout : none) {
	.wp-block-cover.has-parallax, 
	.wp-block-cover-image.has-parallax,
	.ast-advanced-headers-parallax {
	background-attachment: scroll;
	background-position: center top !important;
	}
}

/***** OVER 1200px WIDTH *****/

@media screen and (min-width: 1200px) {



}

/***** UP TO 1200px WIDTH *****/

@media screen and (max-width: 1200px) {


}

/***** UP TO 840px WIDTH *****/

@media screen and (max-width: 840px) {



}

/***** UP TO 600px WIDTH *****/

@media screen and (max-width: 600px) {

	/* Media + Text Blocks */
	.entry-content .wp-block-media-text .wp-block-media-text__content {
		padding-left: 0;
	}
	.entry-content .wp-block-media-text.has-media-on-the-right .wp-block-media-text__content {
		padding-right: 0;
	}

}


/***** UP TO 599px WIDTH *****/

@media screen and (max-width: 599px) {



}

