/*
 Theme Name:   AWD 2025 Theme
 Theme URI:    https://adamwrightdesign.com
 Description:  GeneratePress child theme by AWD.
 Author:       Adam Wright Design
 Author URI:   https://adamwrightdesign.com
 Template:     generatepress
 Version:      1.0
*/

/* ========== TOC ====================== 

* Theme Changes
* Text Balance
* Utilities
* Typography

======================================== */

/******** THEME CHANGES *********/

.mobile-menu-control-wrapper .menu-toggle {
	background-color:transparent;
}

.mobile-menu-control-wrapper .menu-toggle:hover {
	background-color:transparent;
}

.main-navigation ul ul {
	box-shadow:none;
}

@media (max-width:515px) {
	.nav-button {
		display:none;
	}
}

@media (min-width:515px) {
	.nav-mobile-only {
		display:none;
	}
}

/* Container Padding Overrides */
.inside-header {
    padding-inline: 0px !important;
}

.site-header {
    padding-inline: clamp(1rem, 0.848rem + 0.758vw, 1.5rem) !important;
}

.site-content, #content {
    padding: 0px;
}

/******** TEXT BALANCE *********/

.balance {
	text-wrap:balance;
}

p, blockquote, li {
	text-wrap:pretty;
}

/******** GP MENU ACCESSIBILITY TWEAK *********/

#site-navigation ul.sub-menu {
	display:block;
}

#site-navigation li:hover .gp-icon svg {
	transform: rotate(180deg);
}

#site-navigation li:hover .sub-menu {
	visibility:visible;
}

/******** UTILITIES *********/

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

/* Remove bottom margin on last paragraph */
p:last-child {
	margin-bottom: 0;
}

/* Remove bottom margin on last paragraph in container (front end) */
p:last-child:last-of-type {
	margin-bottom: 0px;
}

/* Stretch Link to Make full Container Clickable */
.stretch-link{
	position: relative;
}

.stretch-link a::after{
	content: '';
	position: absolute;
	inset: 0;
}

.stretch-link a:is(:focus-visible)::after{
	outline: 2px solid;
}

.stretch-link a:is(:hover, :focus){
	outline: none;
}

.image-background {
	position: relative;
	isolation: isolate;
	
	& img:first-of-type {
		position:absolute;
		inset: 0; 
		z-index:-1; 
		width:100%; 
		height:100%;
	}
}

/******** TYPOGRAPHY *********/

:root {
	/* Set the Font in Customizer > Typography using the Font Manager. Set Headline font as All Headings, and Body font to HTML.*/
	--body-font: Outfit, sans-serif;
	--headline-font:  Outfit, sans-serif;
	--fs-body: clamp(1rem, 0.929rem + 0.19vw, 1.1rem);
	--fs-body-xs: clamp(0.625rem, 0.536rem + 0.238vw, 0.75rem);
	--fs-body-s: clamp(0.75rem, 0.661rem + 0.238vw, 0.875rem);
	--fs-body-l: clamp(1.25rem, 1.036rem + 0.238vw, 1.5rem);
	--fs-h1: clamp(2.875rem, 2.25rem + 1.667vw, 3.75rem);
	--fs-h2: clamp(2.25rem, 1.714rem + 1.429vw, 3rem);
	--fs-h3: clamp(1.625rem, 1.268rem + 0.952vw, 2.125rem);
	--fs-h4: clamp(1.375rem, 1.196rem + 0.476vw, 1.625rem);
	--fs-h5: clamp(1.25rem, 1.161rem + 0.238vw, 1.375rem);
	--fs-headline-sub: clamp(0.75rem, 0.911rem + 0.238vw, 0.9rem);
	--fs-headline-l: clamp(3.625rem, 3.268rem + 0.952vw, 4.125rem);
}

p {
	font-family: var(--body-font);
	font-size: var(--fs-body);
	font-weight: 400;
	line-height: 1.4;
}

h1, h2, h3, h4, h5, .hl-1, .hl-2, .hl-3, .hl-4, .hl-5 {
	font-family: var(--headline-font);
	font-weight: 600;
	margin-bottom: .5em;	
}

h1, .hl-1 {
	font-size: var(--fs-h1);
	line-height: 1.1;
}

h2, .hl-2 {
	font-size: var(--fs-h2);
	line-height: 1.15;
}

h3, .hl-3 {
	font-size: var(--fs-h3);
	line-height: 1.1;
}

h4, .hl-4 {
	font-size: var(--fs-h4);
	line-height: 1.3;
}

h5, .hl-5 {
	font-size: var(--fs-h5);
	line-height: 1.4;
}

.hl-body-xs {
	font-size: var(--fs-body-xs);
	font-weight: 400;
}

.hl-body-s {
	font-size: var(--fs-body-s);
	font-weight: 400;
}

.hl-body-lg {
	font-size: var(--fs-body-l);
	font-weight: 400;
}

.hl-sub {
	font-size: var(--fs-headline-sub);
	text-transform: uppercase;
	letter-spacing:0.2em;
}

.hl-large {
	font-size: var(--fs-headline-l);
	line-height:1;
	margin-bottom:0.5em;
}

/* Blog Headings Size & Spacing */
.blog-content h2 {font-size: var(--fs-h3); margin-top:1.5em; margin-bottom:10px;}

.blog-content h3 {font-size:var(--fs-h4); margin-top:1.5em;}

.blog-content h4 {font-size: var(--fs-h5);margin-top:1.5em;}

.blog-content p {line-height:1.5em; font-size: clamp(1.063rem, 0.996rem + 0.179vw, 1.156rem);}
