/*  -- THEME TWEAKS -- */

/* Brings padding back on the outer container */
.site-header {
	padding-inline: clamp(1rem, 0.848rem + 0.758vw, 1.5rem);
}

/* Text Balance / Pretty */

:is(h1, h2, h3, h4, h5, h6), .balance {
	text-wrap: balance;
}

/* This could take some more efford from the browser and slow things down, but in practice is not a problem unless really a lot of paragraphs */
p, blockquote, li {
	text-wrap: pretty;
}

p:last-child:last-of-type {
	margin-bottom: 0px;
}

/* -- UTILITIES -- */

/* Line Limits */
/* Use these classes to limit the amount of lines of text to 2 or 3 lines */
.line-limit-4, .line-limit-3, .line-limit-2 {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.line-limit-4 {
    -webkit-line-clamp: 4;
}

.line-limit-3 {
	-webkit-line-clamp: 3;
}

.line-limit-2 {
	-webkit-line-clamp: 2;
}

/* 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;
}

/* Transition */

/* This could take some more efford from the browser and slow things down, but in practice is not a problem. Used to save a little bit of time. */
.transition {
	transition: all .25s ease-in-out;
}

/* -- 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;
}

/* -- CONTAINER LINKS -- */


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

/*.image-left {
    display: flex;
    align-items: flex-start;
	float: left;
    
    & img:first-of-type{
        margin-right: 15px;    
    }
}


.image-right {
    display: flex;
    align-items: flex-start;
    float: right;
    
    & img:first-of-type{
        margin-left: 15px;    
    }
}*/

.alignleft {
	margin-right: 1em !important;
}
.alignright {
    margin-left: 1em !important;
}
.hidden {
	display: none !important;
}

