/*
 Theme Name:     Pruf Consulting
 Theme URI:      https://app.prufconsulting.com
 Description:    Child Theme for GeneratePress
 Author:         Brightsol Web Design
 Author URI:     https://brightsol.nl
 Template:       generatepress
 Version:        1.0.0
*/


/* =Theme customization starts here
 * 
------------------------------------------------------- */

/***** [ VARIABLES ] *****/
:root, .editor-styles-wrapper {
	--headline-font: Inter, sans-serif;
	--text-font: Inter, sans-serif;
	--headline-font-weight: 700;
	--button-font-weight: 600;
	--text-font-weight: 400;
	
	/* Scales 
	 * 
	 * Minor Second: 1.067
	 * Major Second: 1.125
	 * Minor Third: 1.200
	 * Major Third: 1.250
	 * Perfect Fourth: 1.333
	 * Augmented Fourth: 1.414
	 * Perfect Fifth: 1.500
	 * Minor Sixth: 1.600
	 * Golden Ratio: 1.618
	 * 
	 **/
	
    --scale-base: 1rem;
    --scale-min: 1.067;
    --scale-max: 1.125;
    --scale-vw: 0.34vw;
    --scale-rem: 0.91rem;

    /* Headline Vars - Min */
    --fs-headline-pre-min: calc(var(--scale-base) / var(--scale-min));
    --fs-headline-s-min: var(--scale-base);
    --fs-headline-h6-min: calc(var(--scale-base) * var(--scale-min));
    --fs-headline-h5-min: var(--fs-headline-h6-min);
    --fs-headline-h4-min: var(--fs-headline-h6-min);
    --fs-headline-h3-min: calc(var(--fs-headline-h4-min) * var(--scale-min));
    --fs-headline-h2-min: calc(var(--fs-headline-h3-min) * var(--scale-min));
    --fs-headline-h1-min: calc(var(--fs-headline-h2-min) * var(--scale-min));
    --fs-headline-xl-min: calc(var(--fs-headline-h1-min) * var(--scale-min));
    --fs-headline-xxl-min: calc(var(--fs-headline-xl-min) * var(--scale-min));

    /* Headline Vars - Max */
    --fs-headline-pre-max: calc(var(--scale-base) * var(--scale-max));
    --fs-headline-s-max: calc(var(--fs-headline-pre-max) * var(--scale-max));
    --fs-headline-h6-max: calc(var(--fs-headline-s-max) * var(--scale-max));
    --fs-headline-h5-max: var(--fs-headline-h6-max);
    --fs-headline-h4-max: var(--fs-headline-h6-max);
    --fs-headline-h3-max: calc(var(--fs-headline-h4-max) * var(--scale-max));
    --fs-headline-h2-max: calc(var(--fs-headline-h3-max) * var(--scale-max));
    --fs-headline-h1-max: calc(var(--fs-headline-h2-max) * var(--scale-max));
    --fs-headline-xl-max: calc(var(--fs-headline-h1-max) * var(--scale-max));
    --fs-headline-xxl-max: calc(var(--fs-headline-xl-max) * var(--scale-max));

    /* Headline Vars - Preferred */
    --fs-headline-pre-pref: calc((var(--scale-vw) / var(--scale-max)) + (var(--scale-rem) / var(--scale-max)));
    --fs-headline-s-pref: calc(var(--scale-vw) + var(--scale-rem));
    --fs-headline-h6-pref: calc((var(--scale-vw) * var(--scale-max)) + (var(--scale-rem) * var(--scale-max)));
    --fs-headline-h5-pref: var(--fs-headline-h6-pref);
    --fs-headline-h4-pref: var(--fs-headline-h6-pref);
    --fs-headline-h3-pref: calc(var(--fs-headline-h4-pref) * var(--scale-max));
    --fs-headline-h2-pref: calc(var(--fs-headline-h3-pref) * var(--scale-max));
    --fs-headline-h1-pref: calc(var(--fs-headline-h2-pref) * var(--scale-max));
    --fs-headline-xl-pref: calc(var(--fs-headline-h1-pref) * var(--scale-max));
    --fs-headline-xxl-pref: calc(var(--fs-headline-xl-pref) * var(--scale-max));

    /* Headline Vars */
    --fs-headline-xxl: clamp(var(--fs-headline-xxl-min), var(--fs-headline-xxl-pref), var(--fs-headline-xxl-max));
    --fs-headline-xl: clamp(var(--fs-headline-xl-min), var(--fs-headline-xl-pref), var(--fs-headline-xl-max));
    --fs-headline-h1: clamp(var(--fs-headline-h1-min), var(--fs-headline-h1-pref), var(--fs-headline-h1-max));
    --fs-headline-h2: clamp(var(--fs-headline-h2-min), var(--fs-headline-h2-pref), var(--fs-headline-h2-max));
    --fs-headline-h3: clamp(var(--fs-headline-h3-min), var(--fs-headline-h3-pref), var(--fs-headline-h3-max));
    --fs-headline-h4: clamp(var(--fs-headline-h4-min), var(--fs-headline-h4-pref), var(--fs-headline-h4-max));
    --fs-headline-h5: clamp(var(--fs-headline-h5-min), var(--fs-headline-h5-pref), var(--fs-headline-h5-max));
    --fs-headline-h6: clamp(var(--fs-headline-h6-min), var(--fs-headline-h6-pref), var(--fs-headline-h6-max));
    --fs-headline-s: clamp(var(--fs-headline-s-min), var(--fs-headline-s-pref), var(--fs-headline-s-max));
    --fs-headline-pre: clamp(var(--fs-headline-pre-min), var(--fs-headline-pre-pref), var(--fs-headline-pre-max));
	
	--fs-text-xxl: clamp(1.4rem, 1.35rem + 0.4vw, 1.75rem);
	--fs-text-xl: clamp(1.25rem, 1.2rem + 0.3vw, 1.5rem);
	--fs-text-l: clamp(1.11rem, 1.082rem + 0.1399999999999999vw, 1.25rem);
	--fs-text: clamp(1rem, 0.974rem + 0.1299999999999999vw, 1.13rem);
	--fs-text-s: clamp(0.95rem, 0.9339999999999999rem + 0.08000000000000007vw, 1.03rem);
	--fs-text-xs: clamp(0.89rem, 0.888rem + 0.010000000000000009vw, 0.9rem);

    --space-inline: clamp(1rem, 0.848rem + 0.758vw, 1.5rem);
    --space-xxs: clamp(0.75rem, 0.75rem, 0.75rem);
    --space-xs: clamp(0.75rem, 1rem, 1rem);
    --space-s: clamp(1.5rem, 1.5rem + 0vw, 1.5rem);
    --space-m: clamp(1.5rem, 1.197rem + 1.515vw, 2.5rem);
    --space-d: clamp(3rem, 2.394rem + 3.03vw, 5rem);
    --space-l: clamp(4.5rem, 3.591rem + 4.545vw, 7.5rem);
    --space-xl: clamp(6rem, 4.788rem + 6.061vw, 10rem);
    --space-xxl: clamp(7.5rem, 5.985rem + 7.576vw, 12.5rem);
    --space-xxxl: clamp(9rem, 7.182rem + 9.091vw, 15rem);
	
	--width-2xs: 26rem;
	--width-xs: 32rem;
	--width-s: 48rem;
	--width-m: 64rem;
	--width-tb: 1024px;
	--width-d: 1280px; /** Standard section width - set in customiser - update here if changed! **/
	--width-l: 80rem;
	--width-xl: 90rem;
	--width-max: 1920px;
	--width-full: 100%;

	--shadow-color: var(--surface-rgb);
	--shadow-100-1: 0 1px 2px rgba(var(--shadow-color),.24);
	--shadow-100-2: 0 1px 3px rgba(var(--shadow-color),.12);
	--shadow-200-1: 0 3px 6px rgba(var(--shadow-color),.15);
	--shadow-200-2: 0 2px 4px rgba(var(--shadow-color),.12);
	--shadow-300-1: 0 10px 20px rgba(var(--shadow-color),.15);
	--shadow-300-2: 0 3px 6px rgba(var(--shadow-color),.10);
	--shadow-400-1: 0 15px 25px rgba(var(--shadow-color),.15);
	--shadow-400-2: 0 5px 10px rgba(var(--shadow-color),.05);
	--shadow-500: 0 20px 40px rgba(var(--shadow-color),.2);

    --radius-xs: 0.125rem;
    --radius-s: 0.25rem;
    --radius-m: 0.5rem;
	--radius-d: 0.75rem;
    --radius-l: 1rem;
    --radius-xl: 1.5rem;
    --radius-xxl: 2rem;
    --radius-50: 50%;
    --radius-circle: var(--radius-50);
    --radius-pill: 100vw;
	
	--primary-alt: var(--primary-600);
	--contrast-alt: var(--contrast-600);
}

:root:has(.single-post) {
    --scale-max: 1.125;
}

/***** [ TYPOGRAPHY ] *****/
@font-face {
  font-family: 'Inter';
  font-weight: 100 900;
  font-display: swap;
  font-style: normal;
  src: url("./assets/fonts/Inter.var.woff2") format("woff2");
}

/* Icon Font in Backend */
@font-face {
  font-family: 'Pruf Consulting';
  src: url('./assets/fonts/Pruf-Consulting.woff2'),
  src: url('./assets/fonts/Pruf-Consulting.woff2') format('woff2'),
       url('./assets/fonts/Pruf-Consulting.woff') format('woff'),
}

.menu-item a {
	outline-offset: -3px;
}

.menu-icon a,
#account-nav-dropdown .account-nav-balance div {
    padding-block: 0.75em!important;
    display: flex!important;
    gap: 0.5em;
    align-items: center;
    line-height: 1em;
}

.menu-icon a:before,
#account-nav-dropdown .account-nav-balance div:before {
    font-family: 'Pruf Consulting';
    font-size: 18px;
	flex: 0 0 18px;
}

/* Account Nav Balance */
#account-nav-dropdown .account-nav-balance div:before {
	content: '\ea0c';
}

/* Menu Company */
.menu-icon.menu-company a:before {
    content: "\ea0d";
}

.menu-icon.menu-company a[aria-current="page"]:before,
.menu-icon.menu-company a:is(:hover, :focus-visible):before {
    content: "\ea0e";
}

/* Menu Team */
.menu-icon.menu-team a:before {
    content: "\ea13";
}

.menu-icon.menu-team a[aria-current="page"]:before,
.menu-icon.menu-team a:is(:hover, :focus-visible):before {
    content: "\ea14";
}

/* Menu User Registration */
.menu-icon.menu-user a:before {
    content: "\ea0f";
}

.menu-icon.menu-user a[aria-current="page"]:before,
.menu-icon.menu-user a:is(:hover, :focus-visible):before {
    content: "\ea10";
}

/* Menu Credits */
.menu-icon.menu-credits a:before {
    content: "\ea0b";
}

.menu-icon.menu-credits a[aria-current="page"]:before,
.menu-icon.menu-credits a:is(:hover, :focus-visible):before {
    content: "";
	background-image: url(data:image/svg+xml,%3Csvg%20id%3D%22Layer_1%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2224%22%20height%3D%2224%22%20viewBox%3D%220%200%2024%2024%22%3E%3Cpolygon%20points%3D%2220.5%203.5%2020.5%200%2018.5%200%2018.5%203.5%2015%203.5%2015%205.5%2018.5%205.5%2018.5%209%2020.5%209%2020.5%205.5%2024%205.5%2024%203.5%2020.5%203.5%22%20stroke-width%3D%220%22%2F%3E%3Cpath%20d%3D%22m20.9827%2C12.8378c-1.0709-.5355-2.4804-.8378-3.9827-.8378s-2.9118.3023-3.9827.8378c-.0058.0029-.0115.0066-.0173.0095v-1.3474c0-1.2732-1.0061-2.1566-2.0173-2.6622-1.0709-.5355-2.4804-.8378-3.9827-.8378s-2.9118.3024-3.9827.8378c-1.0112.5056-2.0173%2C1.389-2.0173%2C2.6622v8.0639c0%2C1.2692%2C1.0251%2C2.1338%2C2.0264%2C2.6216%2C1.0687.5207%2C2.4748.8145%2C3.9736.8145s2.905-.2938%2C3.9736-.8145c.3472-.1691.6948-.3868%2C1.004-.6478.3243.276.6949.5001%2C1.0588.6724%2C1.0661.505%2C2.4686.7899%2C3.9637.7899s2.8976-.2849%2C3.9637-.7899c.9899-.4689%2C2.0363-1.3131%2C2.0363-2.5785v-4.1316c0-1.2732-1.0061-2.1566-2.0173-2.6622Zm-17.9827%2C1.3148c.0058.0029.0115.0067.0173.0095%2C1.0709.5355%2C2.4804.8378%2C3.9827.8378s2.9118-.3023%2C3.9827-.8378c.0058-.0029.0115-.0066.0173-.0095v1.3474c0%2C.1075-.1132.4741-.9117.8733-.7387.3694-1.8292.6267-3.0883.6267s-2.3496-.2573-3.0883-.6267c-.7985-.3992-.9117-.7658-.9117-.8733v-1.3474Zm7.0976%2C6.2349c-.7409.361-1.8348.6124-3.0976.6124s-2.3567-.2514-3.0977-.6124c-.8083-.3939-.9023-.7474-.9023-.8237v-1.4113c.0058.0029.0115.0067.0173.0095%2C1.0709.5355%2C2.4804.8378%2C3.9827.8378s2.9118-.3023%2C3.9827-.8378c.0058-.0029.0115-.0066.0173-.0095v1.4113c0%2C.0763-.0941.4298-.9024.8237Zm10.0099.015c-.7435.3522-1.841.5974-3.1075.5974s-2.364-.2452-3.1075-.5974c-.8198-.3883-.8925-.7283-.8925-.771v-1.4789c.0058.0029.0115.0067.0173.0095%2C1.0709.5355%2C2.4804.8378%2C3.9827.8378s2.9118-.3023%2C3.9827-.8378c.0058-.0029.0115-.0066.0173-.0095v1.4789c0%2C.0427-.0727.3827-.8925.771Z%22%20stroke-width%3D%220%22%2F%3E%3C%2Fsvg%3E);
	background-size: cover;
	background-repeat: no-repeat;
	height: 17px;
    margin-top: -2px;
}

/* Menu Results */
.menu-icon.menu-results a:before {
    content: "\ea18";
}

.menu-icon.menu-results a[aria-current="page"]:before,
.menu-icon.menu-results a:is(:hover, :focus-visible):before {
    content: "\ea19";
}


/* Menu Edit Account */
.menu-icon.menu-edit a:before {
    content: "\ea11";
}

.menu-icon.menu-edit a[aria-current="page"]:before,
.menu-icon.menu-edit a:is(:hover, :focus-visible):before {
    content: "\ea12";
}

/* Menu Logout */
.menu-icon.menu-logout a:before {
    content: "\ea16";
}

.menu-icon.menu-logout a[aria-current="page"]:before,
.menu-icon.menu-logout a:is(:hover, :focus-visible):before {
    content: "\ea17";
}

/* Fonts Fallback */
html, body, button, input, select, textarea {
    font-family: var(--text-font);
}

/*** Outline Offset ***/
html * {
    outline-offset: 4px;
}


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

/* Default Headings weight, margin, font-family */
h1,
h2,
h3,
h4,
h5,
h6,
.headline-xxl,
.headline-xl,
.headline-h1,
.headline-h2,
.headline-h3,
.headline-h4,
.headline-h5,
.headline-h6,
.headline-pre,
.headline-s {
	font-family: var(--headline-font);
	font-weight: var(--headline-font-weight);
	letter-spacing: -.03em;
	margin-bottom: 1rem;
}

/* Heading font-size and line-height */
.headline-xxl {
	font-size: var(--fs-headline-xxl);
	line-height: 1.05;
}

.headline-xl {
	font-size: var(--fs-headline-xl);
	line-height: 1.05;
}

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

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

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

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

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

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

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

.headline-pre {
	font-size: var(--fs-headline-pre);
	text-transform: uppercase;
	font-weight: var(--text-font-weight);
	letter-spacing: .1em;
}

/* Additional Body font-size */
.text-xxl,
.text-xl,
.text-l,
.text-d,
.text-s,
.text-xs {
	font-family: var(--text-font);
}

.text-xxl {
	font-size: 1.25rem;
	font-size: var(--fs-text-xxl);
	letter-spacing: -0.35px;
	line-height: 1.3;
}

.text-xl {
	font-size: var(--fs-text-xl);
	letter-spacing: -0.3px;
	line-height: 1.3;
}

.text-l {
	font-size: var(--fs-text-l);
	line-height: 1.25;
}

.text-d {
	font-size: var(--fs-text);
}

.text-s {
	font-size: var(--fs-text-s);
}

.text-xs {
	font-size: var(--fs-text-xs);
}

.single-post #content p {
	line-height: 1.8;
	max-width: 68ch;
}

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

/* Add top margin to blog post H2-H6 */
.single-post
  .dynamic-content-template
  :is(h2, h3, h4, h5, h6):not(:first-child) {
  margin-top: 1.5em;
}

/* List Styles */
.site-content ul,
.site-content ol {
	margin-left: 1.25rem;
}

.site-content li {
	font-family: var(--text-font);
	font-size: var(--fs-text);
	font-weight: var(--text-font-weight);
	line-height: 1.75rem;
}

/*** LINKS ***/
a {
	scroll-behavior: smooth;
	scroll-margin-top: 4rem;
}
a:not(.gb-button), p a:not(.gb-button), .inside-article a:not(.gb-button), .paging-navigation a, .comments-area a, .page-header a:not(.gb-button) {
	color: var(--primary);
}

a:not(.gb-button):hover, p a:not(.gb-button):hover, .inside-article a:not(.gb-button):hover, .paging-navigation a:hover, .comments-area a:hover, .page-header a:not(.gb-button):hover {
	color: var(--primary-alt);
}

a:not(.gb-button) {
	text-underline-offset: 2px;
}

.no-underline:not(:hover),
.no-underline a:not(:hover){
	text-decoration: none;
}

.bwd-external-link-icon:before {
    content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cg fill='%232c2c2d'%3E%3Cpath d='M15.5,0h-5a.5.5,0,0,0-.354.854l1.793,1.792L6.293,8.293A1,1,0,1,0,7.707,9.707l5.647-5.646,1.792,1.793A.5.5,0,0,0,15.5,6a.512.512,0,0,0,.191-.038A.5.5,0,0,0,16,5.5V.5A.5.5,0,0,0,15.5,0Z'%3E%3C/path%3E%3Cpath d='M13,9a1,1,0,0,0-1,1v4H2V4H6A1,1,0,0,0,6,2H2A2,2,0,0,0,0,4V14a2,2,0,0,0,2,2H12a2,2,0,0,0,2-2V10A1,1,0,0,0,13,9Z' fill='%232c2c2d'%3E%3C/path%3E%3C/g%3E%3C/svg%3E");
    width: 16px;
    margin-left: 6px;
	display: inline-block;
}

.gb-button:hover .bwd-external-link-icon:before {
	content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cg fill='%23ffffff'%3E%3Cpath d='M15.5,0h-5a.5.5,0,0,0-.354.854l1.793,1.792L6.293,8.293A1,1,0,1,0,7.707,9.707l5.647-5.646,1.792,1.793A.5.5,0,0,0,15.5,6a.512.512,0,0,0,.191-.038A.5.5,0,0,0,16,5.5V.5A.5.5,0,0,0,15.5,0Z'%3E%3C/path%3E%3Cpath d='M13,9a1,1,0,0,0-1,1v4H2V4H6A1,1,0,0,0,6,2H2A2,2,0,0,0,0,4V14a2,2,0,0,0,2,2H12a2,2,0,0,0,2-2V10A1,1,0,0,0,13,9Z' fill='%23ffffff'%3E%3C/path%3E%3C/g%3E%3C/svg%3E");
}

footer .bwd-external-link-icon:before {
	content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 16 16'%3E%3Cg fill='%23ffffff'%3E%3Cpath d='M15.5,0h-5a.5.5,0,0,0-.354.854l1.793,1.792L6.293,8.293A1,1,0,1,0,7.707,9.707l5.647-5.646,1.792,1.793A.5.5,0,0,0,15.5,6a.512.512,0,0,0,.191-.038A.5.5,0,0,0,16,5.5V.5A.5.5,0,0,0,15.5,0Z'%3E%3C/path%3E%3Cpath d='M13,9a1,1,0,0,0-1,1v4H2V4H6A1,1,0,0,0,6,2H2A2,2,0,0,0,0,4V14a2,2,0,0,0,2,2H12a2,2,0,0,0,2-2V10A1,1,0,0,0,13,9Z' fill='%23ffffff'%3E%3C/path%3E%3C/g%3E%3C/svg%3E");
	width: 12px;
}

footer h3:not(.gb-heading-alt) {
    font-size: 0.875rem;
    letter-spacing: 1px;
    text-transform: uppercase;
    margin-bottom: 0.5em;
}

p a[href*="tel:"],
p a[href*="mailto:"] {
	display: inline-block;
}

/* Policy styles */
#policy h2 + p{
 	margin-top:0px;
}

#policy article h2:first-child{
 	display:none;
}

body #policy h2 {
	margin-bottom: 12px;
    padding-top: 12px;
	font-size: 1.728rem;
	font-weight: 500;
}

body #policy .text-center{
	text-align: left!important;
}


/*** [ GB Resets ] ***/
/* Archive Page Full Width */
.archive .grid-container,
.single .grid-container {
    max-width: 100%;
    width: 100%;
}

/*** [ HEADER ] ***/
.site-header {
	padding: 0 20px;
}

/* Menu CTA */
.main-navigation .main-nav ul li[class*="menu-cta"] a {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 4px;
	padding: 2px 24px;
    border-radius: 4px;
	line-height: 1.2em!important;
    height: 54px;
	transition: .3s all ease-in-out;
}

.main-navigation .main-nav ul .menu-cta a,
.main-navigation .main-nav ul .menu-cta.current-menu-item a{
    color: #ffffff;
    background-color: var(--c-prim-600);
}

.main-navigation .main-nav ul .menu-cta a:hover{
    background-color: var(--c-prim-700);
    color: #ffffff!important;
    border-color: var(--c-prim-700);
}

@media (min-width: 1040px) and (max-width: 1300px) {
    .gb-menu-login {
        display: none;
    }
	.main-navigation .inside-navigation .main-nav .sf-menu > li:nth-last-child(2) {
        margin-left: auto;
    }
}


@media (min-width: 1040px) and (max-width: 1200px) {
    .menu-cta-sec {
        display: none;
    }
    .main-navigation .inside-navigation .main-nav .sf-menu > li:nth-last-child(1) {
        margin-left: auto;
    }
}

/* Menu Separator */
.menu-separator:after {
    content: '';
    display: block;
    height: 2px;
    margin: 8px 16px;
    background: var(--primary-200);
}

@media (max-width: 1024px) {
	.menu-item + .menu-separator:before {
		content: '';
		display: block;
		height: 2px;
		margin: 8px 16px;
		background: var(--primary-200);
	}
}

/* Menu Login */
.gb-menu-login a {
    display: flex;
    flex-direction: row;
    gap: 0.5em;
    align-items: center;
}

.gb-menu-login a svg {
    width: 20px;
    height: 20px;
}

/* Menu Item Description */
.main-navigation .menu-item-description {
    font-size: 12px;
    line-height: 1em;
    font-weight: 300;
    opacity: .7;
}

@media (max-width: 1040px) {
	.has-inline-mobile-toggle #site-navigation.toggled {
		margin-top: 0;
		position: absolute;
		width: 100%;
		left: 0;
		top: 51px;
		background: #fff;
		padding: 0 1em 1em;
		box-shadow: 1px 1px 3px 1px rgba(0,0,0,.07);
	}
	
	.main-navigation .main-nav > ul > li:not(.menu-cta):not(.menu-cta-sec) > a {
		border-left: 1px solid var(--c-base-250);
	}
	
	.main-navigation .main-nav > ul > li:not(.menu-cta):not(.menu-cta-sec) > a:hover,
	.main-navigation .main-nav > ul > li:not(.menu-cta):not(.menu-cta-sec).current-menu-item > a {
		border-left-color: inherit;
	}
	
	.main-navigation .main-nav ul .menu-cta-sec {
		margin-top: 16px;
		margin-bottom: 16px;
		text-align: center;
	}
}

/*** [ MAIN ] ***/
body {
    background-color: var(--primary-100);
}

/* Set the main content area height */
#main {
    min-height: calc(100vh - 90px);
}

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

/*** [ FOOTER ] ***/
footer p a {
	color: var(--c-base-250);
}

footer p a:focus,
footer p a:hover {
    color: var(--c-base-100);
}

/* Footer Nav */
.gb-nav-footer {
    margin: 0px;
    display: flex;
    list-style: none;
    font-size: 16px;
}

.gb-nav-footer a {
    font-size: 16px;
    color: var(--c-base-250);
	text-decoration: none;
}

.gb-nav-footer a:hover {
	text-decoration: underline;
}

.gb-nav-footer.gb-menu-vertical {
    flex-direction: column;
    gap: 4px;
}

.gb-nav-footer.gb-menu-horizontal {
    flex-direction: row;
    gap: 24px;
}

.gb-nav-footer.gb-menu-horizontal a {
    font-size: 14px;
}


@media (max-width: 768px) {
    .gb-nav-footer.gb-menu-horizontal {
        flex-wrap: wrap;
    }
    .gb-nav-footer.gb-menu-horizontal li {
        flex: 0 0 calc(50% - 12px);
		
    }
}

@media (max-width: 480px) {
    .gb-nav-footer.gb-menu-horizontal {
        flex-direction: column;
        gap: 12px;
        flex: 0 0 100%;
    }
}

/*** [ GLOBAL ] ***/
/* Remove Margin Bottom from last item in column container */
.gb-grid-column .gb-container > :last-child {
    margin-bottom: 0;
}


/*** [ COMPONENT STYLES ] ***/

/*** Gravity Forms ***/
.gform_fields {
    grid-row-gap:24px!important;
}

.gchoice > *,
.gform_fields select,
.ginput_container_fileupload input,
.gform_footer .gform_button,
.ginput_container_consent > * {
    cursor: pointer;
}

/* Gravity Forms */
.gform_wrapper {
    width: 100%;
}

.gfield,
.gfield--type-address span {
    position: relative;
}

.gfield input[type=text],
.gfield input[type=text]:focus,
.gfield input[type=tel],
.gfield input[type=tel]:focus,
.gfield input[type=email],
.gfield input[type=email]:focus,
.gfield input[type=password],
.gfield input[type=password]:focus,
.gfield--type-address span input,
.gfield--type-address span input:focus,
.gfield textarea,
.gfield textarea:focus,
.gfield select,
.gfield select:focus,
.gfield .chosen-choices,
.gfield .chosen-container-active .chosen-choice {
    background: transparent;
    border-radius: 4px!important;
	font-size: 16px!important;
	text-transform: unset;
	padding: 8px 16px!important;
	border-width: 2px!important;
}

.gfield input[type=text]:not(:focus),
.gfield input[type=tel]:not(:focus),
.gfield input[type=email]:not(:focus),
.gfield input[type=password]:not(:focus),
.gfield select:not(:focus),
.gfield .chosen-container:not(.chosen-container-active) .chosen-choices{
	border-color: var(--surface-400);
}

.account-update fieldset legend,
.user-registration fieldset legend,
.company-registration fieldset legend,
.team-registration fieldset legend,
.assessment-upload fieldset legend,
.user-registration .gfield--has-description label {
    margin-bottom: 8px!important;
}

.account-update fieldset legend + .ginput_complex .gform-field-label,
.user-registration fieldset legend + .ginput_complex .gform-field-label,
.user-registration .gfield--has-description label + .gfield_description,
.company-registration fieldset legend + .ginput_complex .gform-field-label,
.team-registration fieldset legend + .ginput_complex .gform-field-label,
.assessment-upload fieldset legend + .ginput_complex .gform-field-label {
    padding-top: 0px!important;
    margin-bottom: 4px;
}

.user-registration .gfield--has-description label + .gfield_description {
    padding-bottom: 0px!important;
	margin-top: 0!important;
}

.gfield--type-text input:focus,
.gfield--type-phone input:focus,
.gfield--type-email input:focus,
.gfield--type-address span input:focus,
.gfield--type-textarea textarea:focus {
	border-color: var(--surface-900);
}

.gfield--type-address span input {
	height: 46px;
}

.gfield-choice-input:checked + label {
	font-weight: 700;
}

.gform_footer {
	padding-bottom: 0px!important;
}

.gform_confirmation_wrapper  {
    max-width: 50ch;
    margin-top: 2rem;
    padding: 1rem;
    background: #e7f2ec;
    border-radius: 8px;
}

/* Restructure Form */
#main .account-update .account-section__profile,
#main .account-update .account-section__login,
#main .user-registration .user-section__personal,
#main .user-registration .user-section__account,
#main .user-registration .user-section__preferences,
#main .company-registration .company-section__details,
#main .team-registration .team-section__details,
#main .assessment-upload .assessment-section__details{
    grid-column: span 4;
}

#main .account-update .account-section__login,
#main .user-registration .user-section__personal,
#main .assessment-upload .assessment-section__details{
	grid-row: span 2;
}

#main .company-registration .company-section__details,
#main .team-registration .team-section__details{ 
    grid-row: span 5;
}

#main .user-registration .user-section__account { 
    grid-row: span 5;
}

#main .user-registration .user-section__preferences { 
    grid-row: span 1;
}

#main .account-update .account-section__name,
#main .account-update .account-section__email,
#main .account-update .account-section__password,
#main .user-registration .user-section__name,
#main .user-registration .user-section__email,
#main .user-registration .user-section__clientid,
#main .user-registration .user-section__company,
#main .user-registration .user-section__team,
#main .user-registration .user-section__position,
#main .user-registration .user-section__gender,
#main .user-registration .user-section__role,
#main .company-registration .company-section__name,
#main .company-registration .company-section__logo,
#main .team-registration .team-section__name,
#main .assessment-upload .assessment-section__consent,
#main .assessment-upload .assessment-section__upload {
    grid-column: span 8;
}

@media (max-width: 768px) {
    #main .account-update .gform_fields > *,
	#main .user-registration .gform_fields > *,
	#main .company-registration .gform_fields > *,
	#main .team-registration .gform_fields > *,
	#main .assessment-upload .gform_fields > * {
        grid-column: 1 / -1;
    }
}

#main .account-update .gfield--type-section,
#main .user-registration .gfield--type-section,
#main .company-registration .gfield--type-section,
#main .team-registration .gfield--type-section,
#main .assessment-upload .gfield--type-section {
    border-bottom: 0;
    position: relative;
}

#main .account-update .gfield--type-section .gsection_title,
#main .user-registration .gfield--type-section .gsection_title,
#main .company-registration .gfield--type-section .gsection_title,
#main .team-registration .gfield--type-section .gsection_title,
#main .assessment-upload .gfield--type-section .gsection_title{
    margin-bottom: 11px;
    font-size: var(--fs-headline-h4);
    color: var(--surface-900);
	line-height: 1;
	text-wrap: pretty;
    max-width: 35ch;
}

#main .account-update .gfield--type-section .gsection_description,
#main .user-registration .gfield--type-section .gsection_description,
#main .company-registration .gfield--type-section .gsection_description,
#main .team-registration .gfield--type-section .gsection_description,
#main .assessment-upload .gfield--type-section .gsection_description {
    margin: 0;
    padding: 0;
    color: var(--surface-800);
	font-size: var(--fs-text-s);
}

.company-registration .gsection_description strong,
.team-registration .gsection_description strong{
    display: block;
    margin-top: 1em!important;
}

/* Submit */
.gform_wrapper.gravity-theme .gform_footer {
    justify-content: flex-end;
}

.gform_footer input[type=submit].btn--primary,
.gform_page_footer .btn--primary{
    background-color: var(--primary);
    border-color: var(--primary);
    color: var(--surface-0);
	min-width: 240px;
}

.gform_footer input[type=submit].btn--primary:is(:hover, :focus),
.gform_page_footer .btn--primary:is(:hover, :focus) {
    background-color: var(--primary-alt);
    border-color: var(--primary-alt);
    color: var(--surface-0);
}


/* Mobile Submit Line Height */
@media only screen and (max-width: 641px) {
    #main .gform_footer input[type="submit"] {
        line-height: 1.5em;
    }
}

/* Strength Meter */
.gform_wrapper.gravity-theme .gfield_password_strength {
    background-color: transparent!important;
    border: none!important;
    border-radius: var(--radius-pill);
    margin-top: 8px;
    padding: 4px 8px;
    text-align: center;
    font-size: 14px;
    width: calc(50% - 12px);
    position: relative;
    border-width: 2px!important;
    font-weight: bold;
    z-index: 1;
    border: 2px solid var(--surface-200)!important;
}

.gform_wrapper.gravity-theme .gfield_password_strength:after {
    content: '';
    height: 29px;
    width: 0;
    background: #e0e0e0;
    position: absolute;
    left: 0px;
    top: 0px;
    border-radius: var(--radius-pill) 0 0 var(--radius-pill);
    z-index: -1;
}

.gform_wrapper.gravity-theme .gfield_password_strength.short:after {
    width: 25%;
    background: darkred;
}

.gform_wrapper.gravity-theme .gfield_password_strength.bad:after {
    width: 50%;
    background: orange;
}

.gform_wrapper.gravity-theme .gfield_password_strength.good:after {
    width: 75%;
    background: yellow;
}

.gform_wrapper.gravity-theme .gfield_password_strength.strong {
    color: #fff;
}
.gform_wrapper.gravity-theme .gfield_password_strength.strong:after {
    background: green;
    width: 100%;
    border-radius: var(--radius-pill);
}

@media (max-width: 768px) {
    .gform_wrapper.gravity-theme .gfield_password_strength {
        width: 100%;
    }
}

/* Radio Buttons */
@media (min-width: 769px) {
    .user-registration .gfield_radio {
        display: flex;
        flex-wrap: wrap;
        gap: 16px;
    }
	
	.user-registration .gfield_radio .gchoice {
        flex-basis: calc(33% - 10.66px);
	}	
}

.user-registration .gchoice {
    z-index:1;
    position:relative;
    margin:0 0 10px 0;
    padding:0;
    height:70px;
    width: 100%!important;
}

.user-registration .gchoice.gfield--type-radio legend {
	margin-bottom: 16px!important;
}

.user-registration .gchoice input.gfield-choice-input {
    z-index:2;
    appearance:none;
    margin:0;
    padding:0;
    width: 100%;
    border-radius: 5px;
    height:100%;
    background: white;
    transition: .3s all ease-in-out;
    position:absolute;
	border: 2px solid var(--surface-300);
    position:absolute;
}

.user-registration .gchoice input.gfield-choice-input:hover,
.user-registration .gchoice input.gfield-choice-input:focus{
	background:var(--surface-300);
	border-color:var(--surface-300);
}

.user-registration .gchoice input.gfield-choice-input:checked {
	border: 2px solid var(--primary);
    background:var(--primary);
}

.user-registration .gchoice input.gfield-choice-input:checked + label {
    color:white;
}

.user-registration .gchoice label {
    z-index:3;
    font-weight:700;
    color: var(--surface-900);
    display:block;
    position: absolute;
    padding: 0 0 0 30px;
    top: 50%;
    left: 40px;
    transform: translateY(-50%);
    width:100%;
    overflow:visible;
}

.user-registration .gchoice input.gfield-choice-input + label:before {
    content: "";
    position: absolute;
    left: -20px;
    transform: translateY(-50%);
    width: 30px;
    height: 30px;
    border: 2px solid var(--surface-400);
    z-index: 2;
    top: 50%;
    transition: .3s all ease-in-out;
    color: white;
    font-size: 25px;
    text-align: center;
    line-height: 25px;
    font-weight: 500;
}

.user-registration .gchoice input.gfield-choice-input:hover + label:before,
.user-registration .gchoice input.gfield-choice-input:focus + label:before{ 
	border-color: var(--surface-700);
}

.user-registration .gchoice input[type="checkbox"].gfield-choice-input + label:before { 
    border-radius: 5px;
}

.user-registration .gchoice input[type="radio"].gfield-choice-input + label:before {
    border-radius: 50px;
}

.user-registration .gchoice input.gfield-choice-input:checked + label:before {
    border: none;
	top: calc(50% + 3px);
    content: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24'%3E%3Cg fill='%23ffffff'%3E%3Cpath d='M12,24a1,1,0,0,1,0-2A10,10,0,0,0,12,2a1,1,0,0,1,0-2,12,12,0,0,1,0,24Z' fill='%23ffffff'%3E%3C/path%3E%3Cpath d='M1.045,13.913a1,1,0,0,1-1-.919C.022,12.665,0,12.336,0,12s.022-.665.049-.994a1,1,0,1,1,1.993.162C2.021,11.442,2,11.719,2,12s.021.558.042.832a1,1,0,0,1-.916,1.078Q1.086,13.913,1.045,13.913Z' fill='%23ffffff'%3E%3C/path%3E%3Cpath d='M6.243,3.641a1,1,0,0,1-.526-1.852,12.022,12.022,0,0,1,1.774-.9,1,1,0,1,1,.754,1.851,10.133,10.133,0,0,0-1.478.757A.993.993,0,0,1,6.243,3.641Z' fill='%23ffffff'%3E%3C/path%3E%3Cpath d='M2.188,8.044a.988.988,0,0,1-.451-.108A1,1,0,0,1,1.3,6.592,12.131,12.131,0,0,1,2.342,4.9,1,1,0,0,1,3.953,6.083,10.1,10.1,0,0,0,3.081,7.5,1,1,0,0,1,2.188,8.044Z' fill='%23ffffff'%3E%3C/path%3E%3Cpath d='M3.128,19.482a1,1,0,0,1-.808-.409,12.049,12.049,0,0,1-1.041-1.7,1,1,0,1,1,1.787-.9,10.047,10.047,0,0,0,.868,1.418,1,1,0,0,1-.217,1.4A.986.986,0,0,1,3.128,19.482Z' fill='%23ffffff'%3E%3C/path%3E%3Cpath d='M7.853,23.185a.983.983,0,0,1-.377-.075A11.879,11.879,0,0,1,5.7,22.2,1,1,0,0,1,6.75,20.5a10.041,10.041,0,0,0,1.48.761,1,1,0,0,1-.377,1.926Z' fill='%23ffffff'%3E%3C/path%3E%3Cpath d='M10,17a1,1,0,0,1-.707-.293l-4-4a1,1,0,0,1,1.414-1.414L10,14.586l7.293-7.293a1,1,0,1,1,1.414,1.414l-8,8A1,1,0,0,1,10,17Z' fill='%23ffffff'%3E%3C/path%3E%3C/g%3E%3C/svg%3E");
}

/*** Assessment Form ***/

/* Progress Bar */
.gform_wrapper .gf_progressbar_title {
    border: 0;
    clip: rect(1px, 1px, 1px, 1px);
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px;
    word-wrap: normal !important;
}

#main .gform_wrapper.gravity-theme .gf_progressbar.gf_progressbar_blue {
    --height: 1.5rem;
    background-color: var(--surface-300);
    margin-top: 4rem;
    height: var(--height);
}

#main .gform_wrapper.gravity-theme .gf_progressbar_percentage.percentbar_blue {
    background-color: var(--primary);
    height: var(--height);
}

#main .gform_wrapper.gravity-theme .gf_progressbar_percentage span {
    position: absolute;
    right: 0;
    top: -1.5rem;
    color: var(--surface);
    font-size: var(--fs-text);
}

/* Survey Field */
#main .gform_wrapper.gravity-theme .gfield--type-survey .gfield_label {
    font-size: var(--fs-headline-h4);
}

#main .gravity-theme table.gsurvey-likert,
#main .gravity-theme table.gsurvey-likert * {
    background-color: transparent!important;
    border: none!important;   
}

#main .gravity-theme table.gsurvey-likert thead {
    left: -9999px;
    position: absolute;
    top: -9999px
}

#main .gravity-theme table.gsurvey-likert td {
    background-position: 8px center !important;
    line-height: 2;
    min-height: 2.4em;
    text-align: left;
}

#main .gravity-theme .gform_fields table.gsurvey-likert td::after {
    content: attr(data-label);
    display: inline-block;
    font-weight: 400;
    line-height: 2;
    margin-left: 32px
}

@media only screen and (min-width: 1025px) {
    #main .gravity-theme table.gsurvey-likert td {
        text-align: left;
        padding-right: 2em!important;
    }
    
    #main .gravity-theme table.gsurvey-likert tr {
        display: flex;
    }

    #main .gravity-theme table.gsurvey-likert td.gsurvey-likert-choice {
        height: unset!important;
	}
    
    #main .gravity-theme table.gsurvey-likert td.gsurvey-likert-choice::after {
        line-height: 1.4em!important;
    }
}

@media only screen and (min-width: 1025px) and (max-width: 1330px) {
    #main .gravity-theme table.gsurvey-likert td {
        background-position: 8px 8px !important;
    }
}

@media only screen and (max-width: 1024px) {
	#main .gravity-theme table.gsurvey-likert td {
		vertical-align: middle;
		display: block;
	}
}

/*** Pruf Table ***/

/* Tables Styles */
.pruf-table,
.pruf-table .pruf-table__head th:first-child {
    border-top-left-radius: var(--radius-s);
}

.pruf-table,
.pruf-table .pruf-table__head th:last-child {
    border-top-right-radius: var(--radius-s);
}

.pruf-table,
.pruf-table .pruf-table__row:last-child td:first-child {
    border-bottom-left-radius: var(--radius-s);
}

.pruf-table,
.pruf-table .pruf-table__row:last-child td:last-child {
    border-bottom-right-radius: var(--radius-s);
}

.pruf-table .pruf-table__head th:not(:last-child),
.pruf-table .pruf-table__body td:not(:last-child){
    border-right-width: 0px;
}

/* Cell Styles */
.pruf-table th {
    background-color: var(--surface-100);
    text-align: left;
}

.pruf-table th,
.pruf-table td {
    font-size: var(--fs-text-s);
    padding-inline: var(--space-xs);
    padding-block: 0.5em;
	vertical-align: top;
}

/* Search */
.pruf-table-search__wrapper {
	--search-height: 44px;
    margin-bottom: var(--space-s);
}

.pruf-table-search__wrapper .credits-search__input {
    border-radius: var(--radius-m) 0 0 var(--radius-m);
    border: 1px solid var(--surface-400);
	height: var(--search-height);
}

.pruf-table-search__wrapper .credits-search__button--submit {
	border-radius: 0 var(--radius-m) var(--radius-m) 0;
	height: var(--search-height);
}

.credits-search__button--clear {
    float: right;
    margin-left: 1em;
}

.btn--error-alt {
    background-color: #ffe2e2;
    border-color: #ffa3a3;
    color: #af0e0e;
}

.btn--error-alt:is(:hover, :focus-visible) {
    background-color: #af0e0e;
    border-color: #af0e0e;
    color: #fff;
}

@media (max-width: 748px) {
    .pruf-table-search__wrapper {
        --gap: 0.5em;
        display: flex;
        flex-direction: row;
        gap: 0.5em;
        flex-wrap: wrap;
    }
    .pruf-table-search__wrapper input {
        flex-basis: 100%;
        border-radius: var(--radius-s)!important;
    }
    .pruf-table-search__wrapper .pruf-search__button {
        flex: 0 0 calc(50% - (var(--gap) / 2));
        margin-left: 0px;
        border-radius: var(--radius-s)!important;
    }
}

/* Manage Credits */
.pruf-table--manage-credits .credits-list {
    margin: 0;
    list-style: none;
}

.pruf-table--manage-credits .credits-list .credits-list__label {
    font-weight: bold;
}

.pruf-table--manage-credits .credits-list .credits-list__item:not(:first-child) {
    margin-top: 0.5em;
    padding-top: 0.5em;
}

.pruf-table--manage-credits .credits-list .credits-list__actions {
    display: flex;
    gap: 0.5em;
    margin-top: 0.25em;
}

/* Table Responsive */
@media only screen and (max-width: 800px) {
	table.pruf-table, 
	.pruf-table thead, 
	.pruf-table tbody, 
	.pruf-table th, 
	.pruf-table td, 
	.pruf-table tr { 
		display: block; 
	}
 
	.pruf-table thead tr { 
		position: absolute;
		top: -9999px;
		left: -9999px;
	}
 
	.pruf-table tr { 
		border-bottom: 1px solid var(--surface-200);
		border-right: 1px solid var(--surface-200);
		padding-block: 4px;
		padding-left: 4px;
	}
 
	.pruf-table td { 
		border: none;
		position: relative;
		padding-left: 50%; 
		white-space: normal;
		text-align:left;
	}
 
	.pruf-table td:before { 
		position: absolute;
		top: 6px;
		left: 6px;
		width: 45%; 
		padding-right: 10px; 
		white-space: nowrap;
		text-align:left;
		font-weight: bold;
		content: attr(data-title);
	}
}

/*** [ UTILITY CLASSES ] ***/
/* Aspect Ratios */
.aspect-16-9,
.aspect-9-16,
.aspect-4-3,
.aspect-square,
.aspect-1-1 {
  object-fit: cover;
}

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

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

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

.aspect-square,
.aspect-1-1 {
  aspect-ratio: 1/1;
}

/* Clickable Parent */
.clickable-parent {
  position: relative;
}

.clickable-parent a::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
}

.clickable-parent a:focus-within {
    outline: -webkit-focus-ring-color auto 1px;
}

.clickable-parent a:focus-within ::focus {
	box-shadow: none;
   	outline: none;
}

/* Line Limits */
.line-limit-3,
.line-limit-2 {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

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

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

/* Shadows */
.shadow-100 {
  box-shadow: var(--shadow-100-1), var(--shadow-100-2);
}

.shadow-200 {
  box-shadow: var(--shadow-200-1), var(--shadow-200-2);
}

.shadow-300 {
  box-shadow: var(--shadow-300-1), var(--shadow-300-2);
}

.shadow-400 {
  box-shadow: var(--shadow-400-1), var(--shadow-400-2);
}

.shadow-500 {
  box-shadow: var(--shadow-500);
}

.background--dark {
    --shadow-color: var(--surface-0-rgb);
	--shadow-100-1: 0 1px 2px rgba(var(--shadow-color),.24);
	--shadow-100-2: 0 1px 3px rgba(var(--shadow-color),.12);
	--shadow-200-1: 0 3px 6px rgba(var(--shadow-color),.15);
	--shadow-200-2: 0 2px 4px rgba(var(--shadow-color),.12);
	--shadow-300-1: 0 10px 20px rgba(var(--shadow-color),.15);
	--shadow-300-2: 0 3px 6px rgba(var(--shadow-color),.10);
	--shadow-400-1: 0 15px 25px rgba(var(--shadow-color),.15);
	--shadow-400-2: 0 5px 10px rgba(var(--shadow-color),.05);
	--shadow-500: 0 20px 40px rgba(var(--shadow-color),.2);
}

/* Auto Responsive CSS Grid */
.grid {
  --_multiplier: 0.8;
  --_col-width: calc(var(--container-width, var(--width-max)) - (var(--col-gap, var(--space-s)) * (var(--col-count, 1) - 1)) );
  --_column-width: calc(var(--_col-width) / var(--col-count, 1));
  --_template_column: calc(var(--_column-width) * var(--_multiplier));
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(var(--_template_column, 300px), 100%), 1fr) );
  gap: var(--row-gap, var(--space-s)) var(--col-gap, var(--space-s));
}

/* Grid Gap */
.grid__gap--xs {
  --col-gap: var(--space-xs);
  --row-gap: var(--space-xs);
}

.grid__gap--s {
  --col-gap: var(--space-s);
  --row-gap: var(--space-s);
}

.grid__gap--m {
  --col-gap: var(--space-m);
  --row-gap: var(--space-m);
}

.grid__gap--d {
  --col-gap: var(--space-d);
  --row-gap: var(--space-d);
}

.grid__gap--l {
  --col-gap: var(--space-l);
  --row-gap: var(--space-l);
}

.grid__gap--xl {
  --col-gap: var(--space-xl);
  --row-gap: var(--space-xl);
}

.grid__gap--xxl {
  --col-gap: var(--space-xxl);
  --row-gap: var(--space-xxl);
}

.grid__col-gap--xs {
  --col-gap: var(--space-xs);
}

.grid__col-gap--s {
  --col-gap: var(--space-s);
}

.grid__col-gap--m {
  --col-gap: var(--space-m);
}

.grid__col-gap--d {
  --col-gap: var(--space-d);
}

.grid__col-gap--l {
  --col-gap: var(--space-l);
}

.grid__col-gap--xl {
  --col-gap: var(--space-xl);
}

.grid__col-gap--xxl {
  --col-gap: var(--space-xxl);
}

.grid__row-gap--xs {
  --row-gap: var(--space-xs);
}

.grid__row-gap--s {
  --row-gap: var(--space-s);
}

.grid__row-gap--m {
  --row-gap: var(--space-m);
}

.grid__row-gap--d {
  --row-gap: var(--space-d);
}

.grid__row-gap--l {
  --row-gap: var(--space-l);
}

.grid__row-gap--xl {
  --row-gap: var(--space-xl);
}

.grid__row-gap--xxl {
  --row-gap: var(--space-xxl);
}

/* Grid Columns */
.grid__col--1 {
  --col-count: 1;
}

.grid__col--2 {
  --col-count: 2;
}

.grid__col--3 {
  --col-count: 3;
}

.grid__col--4 {
  --col-count: 4;
}

.grid__col--5 {
  --col-count: 5;
}

.grid__col--6 {
  --col-count: 6;
}

/* Widths */
.width-2xs {
  --container-width: var(--width-2xs);
}

.width-xs {
  --container-width: var(--width-xs);
}

.width-s {
  --container-width: var(--width-s);
}

.width-m {
  --container-width: var(--width-m);
}

.width-tb {
  --container-width: var(--width-tb);
}

.width-d {
  --container-width: var(--width-d);
}

.width-l {
  --container-width: var(--width-l);
}

.width-xl {
  --container-width: var(--width-xl);
}

.width-max {
  --container-width: var(--width-max);
}

/* Width & Alignment */
section {
    overflow-x: hidden;
    overflow-y: hidden;
}

section:not(.section__no-padding) {
    padding-left: var(--space-inline);
    padding-right: var(--space-inline)
}

section>.width-d {
    margin-left: auto;
    margin-right: auto;
    position: relative
}

section>.width-l {
    margin-left: auto;
    margin-right: auto;
    position: relative
}

section>.width-m {
    margin-left: auto;
    margin-right: auto;
    position: relative
}

section>.width-max {
    margin-left: auto;
    margin-right: auto;
    position: relative
}

section>.width-s {
    margin-left: auto;
    margin-right: auto;
    position: relative
}

section>.width-tb {
    margin-left: auto;
    margin-right: auto;
    position: relative
}

section>.width-xl {
    margin-left: auto;
    margin-right: auto;
    position: relative
}

section>.width-xs {
    margin-left: auto;
    margin-right: auto;
    position: relative
}

/* Padding */
.padding__block--xs {
  padding-block: var(--space-xs);
}

.padding__block--s {
  padding-block: var(--space-s);
}

.padding__block--m {
  padding-block: var(--space-m);
}

.padding__block--d {
  padding-block: var(--space-d);
}

.padding__block--l {
  padding-block: var(--space-l);
}

.padding__block--xl {
  padding-block: var(--space-xl);
}

.padding__block--xxl {
  padding-block: var(--space-xxl);
}

section.padding__block--m + section.padding__block--m {
    padding-top: 0;
}

.padding__inline--xs {
  padding-inline: var(--space-xs);
}

.padding__inline--s {
  padding-inline: var(--space-s);
}

.padding__inline--m {
  padding-inline: var(--space-m);
}

.padding__inline--d {
  padding-inline: var(--space-d);
}

.padding__inline--l {
  padding-inline: var(--space-l);
}

.padding__inline--xl {
  padding-inline: var(--space-xl);
}

.padding__inline--xxl {
  padding-inline: var(--space-xxl);
}

/* Margin */
/* margin */
.margin__block--xs {
  margin-block: var(--space-xs);
}

.margin__block--s {
  margin-block: var(--space-s);
}

.margin__block--m {
  margin-block: var(--space-m);
}

.margin__block--d {
  margin-block: var(--space-d);
}

.margin__block--l {
  margin-block: var(--space-l);
}

.margin__block--xl {
  margin-block: var(--space-xl);
}

.margin__block--xxl {
  margin-block: var(--space-xxl);
}

.margin__inline--xs {
  margin-inline: var(--space-xs);
}

.margin__inline--s {
  margin-inline: var(--space-s);
}

.margin__inline--m {
  margin-inline: var(--space-m);
}

.margin__inline--d {
  margin-inline: var(--space-d);
}

.margin__inline--l {
  margin-inline: var(--space-l);
}

.margin__inline--xl {
  margin-inline: var(--space-xl);
}

.margin__inline--xxl {
  margin-inline: var(--space-xxl);
}

/* Balance text elements */
.text-wrap {
	text-wrap: pretty;
}

/* Center only on desktop */
@media (min-width: 1024px) {
	.text-center--l {
		text-align: center;
	}
}

/* Dropshadow for transparent element */
.drop-shadow {
	filter: drop-shadow(3px 3px 8px #1079bf33);
}

/* Horizontally flip icon */
.gb-icon-flip .gb-icon {
    transform: scaleX(-1);
}

/* Equal Columns */
.gb-equal-columns .gb-grid-column > .gb-container {
    display: flex;
    flex-direction: column;
    height: 100%;
}

/* Invert Columns for Desktop */
@media (min-width: 1024px) {
    .gb-grid-wrapper.gb-invert-desktop{
        flex-direction: row-reverse;
    }
}

/* Invert Columns for Tablet & Larger */
@media (min-width: 769px) {
    .gb-grid-wrapper.gb-invert-tablet {
        flex-direction: row-reverse;
    }
}

/* Reset Unordered & Ordered List Styles */
.gb-list-reset ul,
.gb-list-reset ol {
    margin: 0;
    list-style: none;
}

/* Card Glass */
.card--glass {
    backdrop-filter: blur(5px);
}

/** Menu Customizations **/
header.section {
	z-index: 2;
	overflow: unset;
	border-bottom: 1px solid var(--surface-400);
    position: relative;
}

.account-nav {
	position: relative;
}

#account-nav-toggle {
    display: flex;
    flex-direction: row;
    background: #fff;
    color: var(--surface);
    gap: var(--space-xs);
    padding: 8px 12px;
    border-radius: var(--radius-d);
    border: 1px solid var(--surface-400);
    align-items: center;
	transition: .3s all ease-in-out;
}

#account-nav-toggle:hover, {
    border: 1px solid var(--surface-600);
    box-shadow: var(--shadow-200-2);
}

#account-nav-toggle:focus,
#account-nav-toggle[aria-expanded="true"] {
    box-shadow: var(--shadow-200-2);
}

#account-nav-toggle[aria-expanded="true"] {
	border-bottom-right-radius: 0;
}

.account-nav-toggle__profile {
    display: flex;
    flex-direction: row;
    gap: 8px;
    align-items: center;
}
.account-nav-toggle__profile--label {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}
.account-nav-toggle__profile--heading {
    font-size: 12px;
    text-transform: uppercase;
    color: var(--surface-700);
}

.single-assessment__logo > .single-assessment__logo--fallback,
.account-nav-toggle__profile--avatar {
    width: 35px;
    height: 35px;
    background: var(--primary);
    color: #fff;
    display: flex;
    line-height: 1;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    border-radius: var(--radius-pill);
	box-shadow: inset 0px 0px 0px 2px rgba(0, 0, 0, 0.1);
}

.single-assessment__logo > .single-assessment__logo--fallback {
	width: 80px;
	height: 80px;
	font-weight: var(--button-font-weight);
	font-size: var(--fs-text-xl);
}

#account-nav-dropdown {
	position: absolute;
    right: 0;
    top: calc(100% + 8px);
    background: var(--surface-0);
    padding: var(--space-xs) 0;
    box-shadow: var(--shadow-200-2);
    border: 1px solid var(--surface-400);
    border-radius: var(--radius-d) 0 var(--radius-d) var(--radius-d);
    min-width: 240px;
}

#account-nav-dropdown .dropdown-menu {
	margin: 0;
	list-style: none;
}

#account-nav-dropdown .dropdown-menu a,
#account-nav-dropdown .account-nav-balance div {
    text-decoration: none;
    padding: 8px var(--space-xs);
    width: 100%;
    display: block;
    color: var(--surface);
	transition: .3s all ease-in-out;
	font-size: 15px;
}

#account-nav-dropdown .dropdown-menu a:hover {
    background: var(--primary-200);
    color: var(--primary-600);
}

#account-nav-dropdown .dropdown-menu .menu-item a {
    position: relative;
}

#account-nav-dropdown .dropdown-menu .menu-item a:hover:after {
    content: '';
    display: block;
    height: 100%;
    width: 3px;
    background: var(--primary);
    position: absolute;
    left: 0;
}

/*** [ Assessment Overview ] ***/

/* User Assessment */
.assessment-list .assessment-list__team h3 {
    flex: 1 0 200px;
	color: var(--primary);
	margin-bottom: 0;
	margin-top: var(--space-xs);
}
    
.assessment-list .assessment-list__team .assessment-list__assessments {
    flex: 1 1 100%;
}
 
@media (max-width: 1040px) {
    .assessment-list .assessment-list__team {
        flex-direction: column;
        align-items: stretch;
    }
    .assessment-list .assessment-list__team h3,
    .assessment-list .assessment-list__team .assessment-list__assessments {
        flex: 1 1 auto;
    }
}

.assessment-list__team .assessment-list__assessments > article:first-child {
    padding-top: 0;
}

.assessment-list__team .assessment-list__assessments > article:last-child {
    padding-bottom: 0;
}

.assessment-list__team .assessment-list__assessments > article:not(:first-child) {
    border-top: 1px solid var(--surface-300)
}

.assessment-list__team .assessment-list__assessments > article h4,
.assessment-list__team .assessment-list__assessments > article .assessment-card__label,
article.wpgb-card:has(.wpgb-assessment-card) h2,
article.wpgb-card:has(.wpgb-assessment-card) .assessment-card__label,
.admin-assessment-grid article.assessment-card h3,
.admin-assessment-grid article.assessment-card .assessment-card__label{
    margin-bottom: 0.25rem;
}

section.admin-assessment-grid__results {
	padding-left: 0;
	padding-right: 0;
}

/* Admin Assessment Card */
.admin-assessment-grid .gb-grid-wrapper {
    gap: var(--space-s);
}

.admin-assessment-grid article.assessment-card {
    background-color: var(--surface-0);
    border-bottom-left-radius: var(--radius-m);
    border-bottom-right-radius: var(--radius-m);
    border-top-left-radius: var(--radius-m);
    border-top-right-radius: var(--radius-m);
    border: 1px solid var(--surface-300);
    opacity: 1;
    padding: var(--space-s) var(--space-m);
    row-gap: var(--space-xs);
    overflow: hidden;
}

.admin-assessment-grid article.assessment-card h3 {
    font-size: var(--fs-headline-h4);
    line-height: 1.1;
	font-weight: var(--headline-font-weight);
    letter-spacing: -.03em;
}

.admin-assessment-grid article.assessment-card .assessment-card__label {
	font-size: var(--fs-text-xs);
}

/* Admin Assessment Filters */
.admin-assessment-grid__filters .wpgb-facet:not(.no-border) {
    padding: var(--space-s) var(--space-s) var(--space-s);
    border: 1px solid var(--surface-400);
    border-radius: var(--radius-m);
    position: relative;
    background: var(--primary-100);
}

.admin-assessment-grid__filters .wpgb-facet:not(.no-border) .wpgb-facet-title {
    color: var(--surface-800);
    font-size: var(--fs-text-s);
    text-transform: uppercase;
    margin-bottom: 0;
    position: absolute;
    top: 0;
    left: 0;
    transform: translate(var(--space-xxs), -50%);
    background: var(--primary-100);
    padding: var(--space-xxs);
    line-height: 0;
	font-weight: var(--text-font-weight);
    letter-spacing: 0.5px;
}

.admin-assessment-grid__filters .wpgb-facet.no-border .wpgb-facet-title {
	display: none;
}

.admin-assessment-grid__filters .wpgb-facet.no-border .wpgb-search-facet input {
	border-radius: var(--radius-m);
}

.admin-assessment-grid__filters .wpgb-facet fieldset {
	margin-bottom: 0!important;
}

.admin-assessment-grid__filters .wpgb-hierarchical-list + button {
    box-shadow: var(--shadow-200-2);
}

.admin-assessment-grid__filters .wpgb-hierarchical-list + button:hover {
    box-shadow: var(--shadow-100-2);
}

/* Pagination */
.pagination-wrapper:has([hidden]) {
    border-top-color: transparent;
}

.pagination-wrapper .wpgb-facet {
    margin-top: -1px;
}

/*** [ Responsive Display ] ***/
@media (min-width: 1025px) {
	.hide-dt,
	.hide-d {
		display: none!important;
	}
}

@media (max-width: 1024px) and (min-width: 768px) {
	.hide-dt,
	.hide-t,
	.hide-tm {
		display: none!important;
	}
}

@media (max-width: 767px) {
	.hide-m,
	.hide-tm {
		display: none!important;
	}
}