/*
 Theme Name:   GeneratePress Child
 Theme URI:    http://generatepress.com
 Description:  GeneratePress child theme
 Author:       M.C.M.
 Author URI:   http://createxan.com
 Template:     generatepress
 Version:      0.1
 Tags: two-columns, three-columns, one-column, right-sidebar, left-sidebar, fluid-layout, responsive-layout, custom-header, custom-background, custom-menu, custom-colors, sticky-post, threaded-comments, translation-ready, featured-images, theme-options, light, white, dark, black, blue, brown, gray, green, orange, pink, purple, red, silver, tan, yellow
*/


/* --TYPOGRAPHY -- */
:root {
	/* These HAVE TO match what is in the Customizer > Typography. Pull in font familys using font manager. Set headline-font as 'All Headings', set body-font as HTML */ 
	--headline-font: 'Arvo', sans-serif;
	--body-font: 'Open Sans', sans-serif;
	
	--fs-body: clamp(1rem, 0.21vw + 0.96rem, 1.13rem);
	
	/* TYPOGRAPHY: TEXT SIZE SCALE */
    /* https://www.fluid-type-scale.com/calculate?minFontSize=16&minWidth=320&minRatio=1.125&maxFontSize=18&maxWidth=1280&maxRatio=1.2&steps=xs,s,m,l,xl&baseStep=m&prefix=text&decimals=2&useRems=on&remValue=16&previewFont=Inter&previewText=Preview&previewWidth=900 */	

	--text-xs: clamp(0.79rem, -0.01vw + 0.79rem, 0.78rem);
    --text-s: clamp(0.89rem, 0.08vw + 0.87rem, 0.94rem);
    --text-m: clamp(1rem, 0.21vw + 0.96rem, 1.13rem);
    --text-l: clamp(1.13rem, 0.37vw + 1.05rem, 1.35rem);
    --text-xl: clamp(1.27rem, 0.59vw + 1.15rem, 1.62rem);
	--text-xxl: clamp(1.33rem, 0.59vw + 1.20rem, 1.82rem);

    
    /* TYPOGRAPHY: HEADING SIZE SCALE */
    /* https://www.fluid-type-scale.com/calculate?minFontSize=20&minWidth=320&minRatio=1.25&maxFontSize=22&maxWidth=1280&maxRatio=1.333&steps=6,5,4,3,2,1,title&baseStep=4&prefix=h&decimals=2&useRems=on&remValue=16&previewFont=Inter&previewText=Preview&previewWidth=900 */	
	--h-pre: clamp(1rem, 0.974rem + 0.1299999999999999vw, 1.13rem);
	--h-s: clamp(1rem, 0.974rem + 0.1299999999999999vw, 1.13rem);
	--h6: clamp(1.1rem, -0.04vw + 0.81rem, 1.15rem);
    --h5: clamp(1.18rem, 0.05vw + 0.99rem, 1.22rem);
    --h4: clamp(1.25rem, 0.21vw + 1.21rem, 1.38rem);
    --h3: clamp(1.56rem, 0.45vw + 1.47rem, 1.83rem);
    --h2: clamp(1.95rem, 0.82vw + 1.79rem, 2.44rem);
    --h1: clamp(2.44rem, 1.36vw + 2.17rem, 3.26rem);
    --h-title: clamp(3.05rem, 2.15vw + 2.62rem, 4.34rem);
	--h-xl: clamp(3.05rem, 2.15vw + 2.62rem, 4.34rem);
}


/* Default Body / p font settings */ 
p {
    font-size: var(--fs-body);
	font-weight: 400;
	line-height: 1.5;
	margin-bottom: 1.5rem;
	font-family: var(--body-font);
}

ul li {
    font-size: var(--fs-body);
	font-weight: 400;
	line-height: 1.5;
	font-family: var(--body-font);
}

/* Default Headings weight, margin, font-family */ 
h1, h2, h3, h4, h5, h6, .gb-headline-xxl, .gb-headline-xl, .gb-headline-h1, .gb-headline-h2, .gb-headline-h3, .gb-headline-h4, .gb-headline-h5, .gb-headline-h6 {
	font-weight: 600;
	margin-bottom: 1.5rem;	
	font-family: var(--headline-font);
}

/* Heading font-size and line-height */ 
.gb-headline-xl, .gb-headline-title{
    font-size: var(--h-xl);
    line-height: 1.05;
}

h1, .gb-headline-h1 {
    font-size: var(--h1);
    line-height: 1.05;
}

h2, .gb-headline-h2 {
font-size: var(--h2);
    line-height: 1.1;

}

h3, .gb-headline-h3 {
    font-size: var(--h3);
    line-height: 1.15;

}

h4, .gb-headline-h4 {
    font-size: var(--h4);
    line-height: 1.1;

}

h5, .gb-headline-h5 {
    font-size: 1.375rem;
    font-size: var(--h5);
    line-height: 1.25;
}

h6, .gb-headline-h6 {
    font-size: 1.25rem;
    font-size: var(--h6);
    line-height: 1.4;
}

.gb-headline-s {
    font-size: 1rem;
    font-size: var(--h-s);
}

.gb-headline-pre {
    font-size: var(--h-pre);
	text-transform: uppercase; 
	letter-spacing: .1em
	font-family: var(--body-font);
}

/* Additional Body font-size */ 

.gb-headline-text-xxl {
	font-family: var(--body-font);
    font-size: 1.25rem;
    font-size: var(--text-xxl);
}

.gb-headline-text-xl {
	font-family: var(--body-font);
    font-size: var(--text-xl);
}

.gb-headline-text-l {
	font-family: var(--body-font);
    font-size: var(--text-l);
}

.gb-headline-text-s {
	font-family: var(--body-font);
    font-size: var(--text-s);
}

.gb-headline-text-xs {
	font-family: var(--body-font);
    font-size: var(--text-xs);
}

/* Add top margin to blog post H2-H6 */
/*
.type-post :is(h2, h3, h4, h5, h6) {
	margin-top: 1.5em;
}*/


/* DEFINE SPACING FRAMEWORK VARIABLES */
:root {
    /* GAP SCALE */
    /* https://utopia.fyi/space/calculator?c=320,16,1.2,1280,18,1.25,5,2,&s=0.75|0.5|0.25,1.5|2|3|4|6,s-l&g=s,l,xl,12 */
    --gap-xxxs: clamp(0.25rem, 0.15rem + 0.52vw, 0.56rem);
    --gap-xxs: clamp(0.5rem, 0.38rem + 0.63vw, 0.88rem);
    --gap-xs: clamp(0.75rem, 0.63rem + 0.63vw, 1.13rem);
    --gap-s: clamp(1rem, 0.77rem + 1.15vw, 1.69rem);
    --gap-m: clamp(1.5rem, 1.25rem + 1.25vw, 2.25rem);
    --gap-l: clamp(2rem, 1.54rem + 2.29vw, 3.38rem);
    --gap-xl: clamp(3rem, 2.5rem + 2.5vw, 4.5rem);
    --gap-xxl: clamp(4rem, 3.08rem + 4.58vw, 6.75rem);

    /* SECTION TOP AND BOTTOM PADDING SCALE */
    /* https://utopia.fyi/space/calculator?c=320,24,1.2,1280,40,1.25,5,2,&s=0.75|0.5|0.25,1.5|2|3|4|6,s-l&g=s,l,xl,12 */
    --section-xxxs: clamp(0.38rem, 0.08rem + 1.46vw, 1.25rem);
    --section-xxs: clamp(0.75rem, 0.38rem + 1.88vw, 1.88rem);
    --section-xs: clamp(1.13rem, 0.67rem + 2.29vw, 2.5rem);
    --section-s: clamp(1.5rem, 0.75rem + 3.75vw, 3.75rem);
    --section-m: clamp(2.25rem, 1.33rem + 4.58vw, 5rem);
    --section-l: clamp(3rem, 1.5rem + 7.5vw, 7.5rem);
    --section-xl: clamp(4.5rem, 2.67rem + 9.17vw, 10rem);

    /* CONTEXTUAL GAP VARIABLES */
    --grid-gap: var(--gap-m); /* Gap between columns */
    --content-gap: var(--gap-s); /* Gap between content elements */
    --container-gap: var(--gap-m); /* Gap between multiple containers in SECTIONS */
}

/* SECTION HEIGHT UTILITY CLASSES */
/* Do NOT set any section styles in Theme Styles. */
/* 'padding-block' is top and bottom. 'padding-inline' is left and right */

.section-xl {
    padding-block: var(--section-xl);
}
.section-l {
    padding-block: var(--section-l);
}
section, .section-m { /* Default section padding, all sections */
    padding-block: var(--section-m); /* Top and bottom padding */
    padding-inline: var(--gap-m); /* Left and right padding */
    row-gap: var(--container-gap); /* Vertical gap between containers inside sections */ 
}
.section-s {
    padding-block: var(--section-s);
}
.section-xs {
    padding-block: var(--section-xs);
}
.section-xxs {
    padding-block: var(--section-xxs);
}
.section-xxxs {
    padding-block: var(--section-xxxs);
}


/* GAP UTILITY CLASSES */
/* Set on a parent element to affect its direct children */

/* Gap between grid columns. Set in addition to a grid class.  */
.grid-gap { 
    gap: var(--grid-gap);
}

/* Vertical spacing between CONTENT elements. Set on parent of the elements you want the gap between. */
.content-gap { 
    gap: var(--content-gap);
}

/* If you want smaller vertical spacing between content elements. As above. */
.content-gap-s { 
    gap: calc(var(--content-gap)/1.5);
}

/* Vertical gap between CONTAINERS inside a section. 
You don't usually have to set this, because we already have a default row gap set for sections, above */
.container-gap { 
    gap: var(--container-gap);
}


/*HELPERS*/

.ar-16-9 {
    aspect-ratio: 16/9;
}

.ar-9-16 {
    aspect-ratio: 9/16;
}

.ar-4-3 {
    aspect-ratio: 4/3;
}

.ar-1-1 {
	aspect-ratio: 1/1;
}

/* Visually Hidden */
.visually-hidden:not(:focus):not(:active) {
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    height: 1px;
    overflow: hidden;
    position: absolute;
    white-space: nowrap;
    width: 1px;
}

/* No Underline */
.no-ul, .no-ul a {
	text-decoration: none;
}

/* Remove bottom margin on last paragraph */
.gb-container p:last-child:last-of-type {
    margin-bottom: 0px;
}
/*to make block editor work*/
.block-editor-block-list__layout .gb-container p:nth-last-child(2) {
    margin-bottom: 0px;
}

.list-space li {
    margin:1rem 0;
}

/*screen reader styles*/
.screen-reader-text,
.screen-reader-text span {
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    position: absolute !important;
    width: 1px;
    height: 1px;
    border: 0;
    word-wrap: normal !important
}

.screen-reader-shortcut:focus,
.screen-reader-text:focus,
.widget_search input[type="submit"]:focus {
    display: block;
    clip: auto !important;
    z-index: 100000;
    width: auto;
    height: auto;
    padding: 15px 23px 14px;
    color: #353537;
    background: #fff;
    box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
    font-size: 1em;
    font-weight: 700;
    text-decoration: none
}