/*
 Theme Name:   GeneratePress Child
 Theme URI:    https://generatepress.com
 Description:  Default GeneratePress child theme
 Author:       Tom Usborne
 Author URI:   https://tomusborne.com
 Template:     generatepress
 Version:      0.1
*/

/* Variables */
:root {
      /* Fluid Typography Scale */
	--fs-h1: clamp(2.5rem, 1.377vw + 2.225rem, 3.4rem);
	--fs-h2: clamp(2.1rem, 0.918vw + 1.916rem, 2.7rem);
	--fs-h3: clamp(1.5rem, 0.765vw + 1.347rem, 2rem);
	--fs-p: clamp(0.95rem, 0.167vw + 0.896rem, 1.125rem);


    /* Fluid Spacing Scale */
	--space-s-m: clamp(1.125rem, 0.8182rem + 1.3636vw, 1.875rem);
	--space-m-l: clamp(1.6875rem, 1.3551rem + 1.4773vw, 2.5rem);
	--space-l-xl: clamp(2.25rem, 1.6364rem + 2.7273vw, 3.75rem);

	/* Custom pairs */
	--space-s-l: clamp(1.125rem, 0.5625rem + 2.5vw, 2.5rem);
	--space-0-550: clamp(0rem, 5.258vw + -1.683rem, 5.5rem);
	--space-100-175: clamp(1rem, 1.147vw + 0.771rem, 1.75rem);
	--space-100-200: clamp(1rem, 0.956vw + 0.694rem, 2rem);
	--space-100-250: clamp(1rem, 1.434vw + 0.541rem, 2.5rem);
	--space-100-550: clamp(1rem, 4.302vw + -0.377rem, 5.5rem);
	--space-200-300: clamp(2rem, 0.956vw + 1.694rem, 3rem);
	--space-250-550: clamp(2.5rem, 2.868vw + 1.582rem, 5.5rem);

	/* Em Spaces */
	--space-em_xs-s: clamp(0.875em, 0.7216em + 0.6818vw, 1.25em);
	--space-em_s-m: clamp(1em, 0.8182em + 1.3636vw, 1.87em);
	--space-em_m-l: clamp(1.6875em, 1.3551em + 1.4773vw, 3em);
	--space-em_l-xl: clamp(2.25em, 1.6364em + 2.7273vw, 4em);
	--btn-padding-y: 0.75em;
	--btn-padding-x: clamp(1em, 0.765vw + 0.847em, 1.5em);

	/* Radii */
	--card-radius: 0.8rem;
	--button-radius: 100rem;
	--card-media-radius: 0.6rem;

	/* Animation Offset */
	--anim-offset: 10px;
	
}

/* Site Wrapper */
.site-wrapper {
    width: 100%;
    max-width: 1920px;
    margin-inline: auto;
	position: relative;
}

/* Remove bottom margin on last paragraph */
.gb-container p:last-child:last-of-type {
    margin-bottom: 0px;
}

.block-editor-block-list__layout .gb-container p:nth-last-child(2) {
    margin-bottom: 0px;
}

section, article, div p:last-child:last-of-type {
    margin-bottom: 0px;
}

/* Aspect ratio utility classes */
.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;}

 /* Fluid Typography Classes */
h1, .fs-h1 {font-size: var(--fs-h1);}
h2, .fs-h2 {font-size: var(--fs-h2);}
h3, .fs-h3 {font-size: var(--fs-h3);}
p, .fs-p {font-size: var(--fs-p);}

/* Selection Color */
::selection {
	background-color: var(--secondary-500);
	color: var(--primary-100);
}

/* Scrollbar Color */
html {
  scrollbar-color: var(--primary-200) var(--base-700);
}

/* fade in effect */
.fade-in {
  opacity: 0;
  transition: all 0.6s ease-in-out;
}

.fade-in[data-anim="fade-up"] {
	transform: translate(0, var(--anim-offset))
}

.fade-in[data-anim="fade-right"] {
	transform: translate(calc(-1 * var(--anim-offset)) , 0);
}

.fade-in.visible {
  opacity: 1;
  transform: translate(0, 0);
}
