/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Reset
# Elements
# Forms
# Links
# Alignments
# Accessibility
# Post Navigation
# Post Content
# Widgets
# Content Layout
# Sidebars
# Footer
# Featured Images
# Icons
# Compatibility
# Mobile
# GeneratePerf
# Animated SVGS
--------------------------------------------------------------*/
/*--------------------------------------------------------------
# Reset
--------------------------------------------------------------*/
html,
body,
p,
ol,
ul,
li,
dl,
dt,
dd,
blockquote,
figure,
fieldset,
legend,
textarea,
pre,
iframe,
hr,
h1,
h2,
h3,
h4,
h5,
h6 {
	margin: 0;
	padding: 0;
	border: 0;
}

html {
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	-webkit-tap-highlight-color: transparent;
	box-sizing: border-box;
}

body {
	overflow-x: hidden;
}

*,
*::before,
*::after {
	box-sizing: inherit;
}

/**
 * Components spacing based on root 10px (1 rem).
 */

:root {
	--spacing: 2rem;
  	--spacer: 2rem;
	--spacing-100: .5rem;
	/* 8px */
	--spacing-200: 1rem;
	/* 16px */
	--spacing-300: 1.5rem;
	/* 24px */
	--spacing-400: 2rem;
	/* 32px */
	--spacing-500: 2.5rem;
	/* 40px */
	--spacing-600: 3rem;
	/* 48px */
	--spacing-700: 3.5rem;
	/* 56px */
	--spacing-800: 4rem;
	/* 64px */
	--spacing-900: 5rem;
	/* 80px */
	--spacing-1000: 7rem;
	/* 112px */
}

/**
 * Scrollbar color.
 */

:root {
	scrollbar-color: var(--primary) var(--lightest);
}

.social-links {
	opacity: 0;
}

/* Copy from here for admin styles. */

/**
 * Render the `main` element consistently in IE.
 */
main {
	display: block;
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */
progress {
	vertical-align: baseline;
}

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
*/
button,
input,
optgroup,
select,
textarea {
	font-family: inherit;
	font-size: 100%;
	margin: 0;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */
[type="search"] {
	-webkit-appearance: textfield;
	outline-offset: -2px;
}

/**
  * Remove the inner padding in Chrome and Safari on macOS.
  */
[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

/**
 * Remove the inner border and padding in Firefox.
 */
::-moz-focus-inner {
	border-style: none;
	padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
:-moz-focusring {
	outline: 1px dotted ButtonText;
}

/*--------------------------------------------------------------
# Elements
--------------------------------------------------------------*/

body.overlayed {
  overflow: hidden;
  height: 100%;
}

body,
button,
input,
select,
textarea {
	font-weight: 400;
	text-transform: none;
	font-size: 18px;
	line-height: 1.6;
}

p {
	margin-bottom: 1.5em;
}

pre {
	background-color: var(--darkest);
	color: var(--lightest);
	font-size: 14px;
	line-height: 1.75;
	margin-bottom: 1.5em;
	border-radius: .375rem;
	padding: 1em 1.5em;
	overflow: auto;
	max-width: 100%;
}

blockquote {
	border-left: 4px solid var(--primary);
	padding-left: 32px;
	margin: 64px 0;
}

blockquote > p {
	font-size: 20px;
    font-weight: 500;
    line-height: 33px;
    margin-bottom: 16px;
}

blockquote > p:last-child {
	margin: 0;
}

blockquote > cite {
    color: var(--dark);
    font-size: 16px;
}

blockquote > cite a {
	color: var(--dark);
	border-bottom-color: var(--dark);
}

blockquote > .icon-quote {
	width: 24px;
	height: 24px;
	color: var(--primary);
	margin-bottom: 24px;
}

embed,
iframe,
object {
	max-width: 100%;
}

table,
th,
td {
	border: 1px solid rgba(0, 0, 0, 0.1);
}

table {
	border-collapse: separate;
	border-spacing: 0;
	border-width: 1px 0 0 1px;
	margin: 0 0 1.5em;
	width: 100%;
}

th,
td {
	padding: 8px;
}

th {
	border-width: 0 1px 1px 0;
	background-color: var(--light);
	color: var(--primary);
	font-family: "Jetbrains Mono", monospace;
}

td {
	border-width: 0 1px 1px 0;
}

hr {
	background-color: var(--lightgray);
	border: 0;
	height: 1px;
	margin: 32px 0;
}

fieldset {
	padding: 0;
	border: 0;
	min-width: inherit;
}

fieldset legend {
	padding: 0;
	margin-bottom: 1.5em;
}

h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
h5,
h6 {
	font-style: inherit;
	text-wrap: balance;
	font-weight: 550;
	line-height: 107%;
}

h1,
.h1 {
	font-size: 40px;
	letter-spacing: -1.75px;
	margin-bottom: 48px;
}

h2,
.h2 {
	font-size: 28px;
	letter-spacing: -1.25px;
	margin-bottom: 32px;
}

h3,
.h3 {
	font-size: 22px;
	letter-spacing: -.75px;
	margin-bottom: 24px;
}

h4 {
	font-size: 20px;
	letter-spacing: -.5px;
}

h4,
h5,
h6 {
	margin-bottom: 20px;
}

@media(min-width: 769px) {
	h1,
	.h1 {
		font-size: 56px;
		letter-spacing: -2px;
	}
	h2,
	.h2 {
		font-size: 40px;
		letter-spacing: -1.75px;
	}
	h3,
	.h3 {
		font-size: 24px;
		letter-spacing: -1px;
	}
}

ul,
ol {
	margin: 0 0 32px 0;
}

li>ul,
li>ol {
	margin-bottom: 0;
	margin-left: 1.5em;
}

dt {
	font-weight: 600;
}

dd {
	margin: 0 1.5em 1.5em;
}

b,
strong {
	font-weight: 600;
}

dfn,
cite,
blockquote,
em,
i {
	font-style: italic;
	font-style: oblique 13deg;
}

address {
	margin: 0 0 1.5em;
}

p code,
li code {
	background-color: var(--lightest);
	border-radius: .2em;
	padding-left: 0.33em;
	padding-right: 0.33em;
	border: 1px solid rgba(9, 38, 82, 0.2);
	font-size: 14px;
}

abbr,
acronym {
	border-bottom: 1px dotted #666;
	cursor: help;
}

mark,
ins {
	text-decoration: none;
}

p:not(.h1,.nomark) mark,
li mark,
pre mark {
	border-radius: 4px;
	padding-left: .25em;
	padding-right: .25em;
	background-color: transparent;
	border: 1px solid rgba(46, 105, 232, 0.66);
	color: inherit;
}

sup,
sub {
	font-size: 75%;
	height: 0;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sup {
	bottom: 1ex;
}

sub {
	top: .5ex;
}

small {
	font-size: 75%;
}

big {
	font-size: 125%;
}

figure {
	margin: 0;
}

table {
	margin: 0 0 1.5em;
	width: 100%;
}

th {
	font-weight: 600;
}

img {
	height: auto;
	max-width: 100%;
}

/*--------------------------------------------------------------
# Forms
--------------------------------------------------------------*/
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
	background-color: var(--darkest);
	color: var(--lightest);
	border: 1px solid transparent;
	cursor: pointer;
	-webkit-appearance: button;
	padding: 10px 20px;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="tel"],
input[type="number"],
textarea,
select {
	border: 1px solid var(--lightgray);
	padding: 10px 15px;
	max-width: 100%;
	background-color: var(--lightest);
}

textarea {
	width: 100%;
}

.search-modal-form {
	border-radius: var(--border-radius);
	overflow: hidden;
}

/*--------------------------------------------------------------
# Links
--------------------------------------------------------------*/
a,
button,
input {
	transition: color 0.1s ease-in-out, background-color 0.1s ease-in-out;
}

a {
	text-decoration: none;
}

.entry-content p a:not(.wp-block-latest-posts__post-title):not(.gb-container):not(.gb-button),
.entry-content li a:not(.wp-block-latest-posts__post-title):not(.gb-container):not(.gb-button),
.entry-content figcaption a,
.entry-content cite a {
	background-image: linear-gradient(to right, var(--light), var(--light));
    transition: .15s cubic-bezier(.2, 0, 1, 1);
    background-position: 80% 100%;
    background-repeat: no-repeat;
    background-size: 100% 0;
	border-bottom: 1px solid var(--primary);
    transition-property: background-size, background-position, border-radius, border-color;
	font-weight: 475;
}

.entry-content p a:not(.wp-block-latest-posts__post-title):not(.gb-container):not(.gb-button):hover,
.entry-content li a:not(.wp-block-latest-posts__post-title):not(.gb-container):not(.gb-button):hover,
.entry-content figcaption a:hover,
.entry-content cite a:hover {
	background-size: 100% 100%;
    background-position: 0 100%;
    border-radius: 2px;
	border-color: transparent;
}

.button,
.wp-block-button .wp-block-button__link {
	padding: 10px 20px;
	display: inline-block;
}

.wp-block-button .wp-block-button__link {
	font-size: inherit;
	line-height: inherit;
}

.using-mouse :focus {
	outline: 0;
}

.using-mouse ::-moz-focus-inner {
	border: 0;
}

figcaption,
blockquote cite {
  text-wrap: balance;
}

[data-goto]:hover,
[data-share-url]:hover,
[data-gpmodal-trigger]:hover,
[data-tf-popup]:hover {
  cursor: pointer;
}

/*--------------------------------------------------------------
# Alignments
--------------------------------------------------------------*/
.alignleft {
	float: left;
	margin-right: 1.5em;
}

.alignright {
	float: right;
	margin-left: 1.5em;
}

.aligncenter {
	clear: both;
	display: block;
	margin: 0 auto;
}

.size-auto,
.size-full,
.size-large,
.size-medium,
.size-thumbnail {
	max-width: 100%;
	height: auto;
}

.no-sidebar .entry-content .alignfull {
	margin-left: calc(-100vw / 2 + 100% / 2);
	margin-right: calc(-100vw / 2 + 100% / 2);
	max-width: 100vw;
	width: auto;
}

.text-center {
	text-align: center;
}

/*--------------------------------------------------------------
# Accessibility
--------------------------------------------------------------*/
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	-webkit-clip-path: inset(50%);
	clip-path: inset(50%);
	height: 1px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute !important;
	width: 1px;
	word-wrap: normal !important;
}

.screen-reader-text:focus {
	background-color: #f1f1f1;
	border-radius: 3px;
	box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
	clip: auto !important;
	-webkit-clip-path: none;
	clip-path: none;
	color: #21759b;
	display: block;
	font-size: 0.875rem;
	font-weight: 600;
	height: auto;
	left: 5px;
	line-height: normal;
	padding: 15px 23px 14px;
	text-decoration: none;
	top: 5px;
	width: auto;
	z-index: 100000;
}

/* Do not show the outline on the skip link target. */
#primary[tabindex="-1"]:focus {
	outline: 0;
}

/*--------------------------------------------------------------
# Post Navigation
--------------------------------------------------------------*/
.site-main .comment-navigation,
.site-main .posts-navigation,
.site-main .post-navigation {
	margin: 0 0 2em;
	overflow: hidden;
}

.site-main .post-navigation {
	margin-bottom: 0;
}

.paging-navigation {
	text-align: center;
}

.paging-navigation .nav-previous,
.paging-navigation .nav-next {
	display: none;
}

.paging-navigation .nav-links>.page-numbers {
	padding: 0 5px;
}

.paging-navigation .nav-links .current {
	font-weight: 600;
}

/* Less specific so we don't overwrite existing customizations. */
.nav-links>.page-numbers:first-child {
	padding-left: 0;
}

/*--------------------------------------------------------------
# Post Content
--------------------------------------------------------------*/
.sticky {
	display: block;
}

.posted-on .updated,
.entry-header .gp-icon {
	display: none;
}

.byline,
.single .byline,
.group-blog .byline,
.entry-header .cat-links,
.entry-header .tags-links,
.entry-header .comments-link {
	display: inline;
}

footer.entry-meta .byline,
footer.entry-meta .posted-on {
	display: block;
}

.page-content:not(:first-child),
body:not(.full-width-content) .entry-content:not(:first-child),
.entry-summary:not(:first-child) {
	margin-top: 2em;
}

.page-links {
	clear: both;
	margin: 0 0 1.5em;
}

.blog .format-status .entry-title,
.archive .format-status .entry-title,
.blog .format-aside .entry-header,
.archive .format-aside .entry-header,
.blog .format-status .entry-header,
.archive .format-status .entry-header,
.blog .format-status .entry-meta,
.archive .format-status .entry-meta {
	display: none;
}

.entry-content>.gb-container {
	contain: layout style;
}

.blog .format-aside .entry-content,
.archive .format-aside .entry-content,
.blog .format-status .entry-content,
.archive .format-status .entry-content {
	margin-top: 0;
}

.blog .format-status .entry-content p:last-child,
.archive .format-status .entry-content p:last-child {
	margin-bottom: 0;
}

.site-content,
.entry-header {
	word-wrap: break-word;
}

.entry-title {
	margin-bottom: 0;
}

.entry-meta {
	font-size: 85%;
	margin-top: .5em;
	line-height: 1.5;
}

footer.entry-meta {
	margin-top: 2em;
}

.cat-links,
.tags-links,
.comments-link {
	display: block;
}

.taxonomy-description p:last-child,
.read-more-container,
.page-content>p:last-child,
.entry-content>p:last-child,
.entry-summary>p:last-child,
.entry-summary>ul:last-child,
.entry-summary>ol:last-child {
	margin-bottom: 0;
}

/*--------------------------------------------------------------
# Media
--------------------------------------------------------------*/

.rounded {
  border-radius: 50%;
}

/*--------------------------------------------------------------
## Captions
--------------------------------------------------------------*/
.wp-caption {
	margin-bottom: 1.5em;
	max-width: 100%;
	position: relative;
}

.wp-caption img[class*="wp-image-"] {
	display: block;
	margin: 0 auto 0;
	max-width: 100%;
}

.wp-caption .wp-caption-text {
	font-size: 75%;
	padding-top: 5px;
	opacity: 0.8;
}

.wp-caption img {
	position: relative;
	vertical-align: bottom;
}

.wp-block-video figcaption,
.wp-block-image figcaption,
.wp-block-table figcaption,
.wp-block-embed figcaption {
	font-size: 16px;
	text-align: center;
	margin-bottom: 32px !important;
	color: var(--dark);
}

.wp-block-table th,
.wp-block-table tr,
.wp-block-table td,
.wp-block-table thead,
.wp-block-table tbody {
	border-color: var(--primary) !important;
}

/*--------------------------------------------------------------
## Post Loop Block
--------------------------------------------------------------*/
.wp-block-post-template {
	margin-left: 0;
}

/*--------------------------------------------------------------
# Content Layout
--------------------------------------------------------------*/
.site-content {
	display: flex;
}

.grid-container {
	margin-left: auto;
	margin-right: auto;
	max-width: 1200px;
}

.both-right .inside-left-sidebar,
.both-left .inside-left-sidebar {
	margin-right: 10px;
}

.both-right .inside-right-sidebar,
.both-left .inside-right-sidebar {
	margin-left: 10px;
}

.component {
  margin-top: var(--spacing);
  margin-bottom: var(--spacing);
}

/*--------------------------------------------------------------
## One Container
--------------------------------------------------------------*/
.one-container.right-sidebar .site-main,
.one-container.both-right .site-main {
	margin-right: 40px;
}

.one-container.left-sidebar .site-main,
.one-container.both-left .site-main {
	margin-left: 40px;
}

.one-container.both-sidebars .site-main {
	margin: 0px 40px 0px 40px;
}

.one-container.archive .post:not(:last-child):not(.is-loop-template-item),
.one-container.blog .post:not(:last-child):not(.is-loop-template-item) {
	padding-bottom: 40px;
}

.one-container .site-content {
	padding: 40px;
}

/*--------------------------------------------------------------
## Full Width Content
--------------------------------------------------------------*/
.full-width-content .container.grid-container {
	max-width: 100%;
}

.full-width-content.one-container .site-content {
	padding: 0;
}

.full-width-content .entry-content .alignwide {
	margin-left: 0;
	width: auto;
	max-width: unset;
}

/*--------------------------------------------------------------
## Contained Content
--------------------------------------------------------------*/

.contained-content.one-container .site-content {
	padding: 0;
}

/*--------------------------------------------------------------
# Sidebars
--------------------------------------------------------------*/

.sidebar {
	contain: content;
}

.sidebar .grid-container {
	max-width: 100%;
	width: 100%;
}

.left-sidebar .sidebar {
	order: -10;
}

@media(min-width: 768px) {
	.left-sidebar .sidebar {
		margin-right: 30px;
		overscroll-behavior: contain;
	}
}

/*--------------------------------------------------------------
# Footer
--------------------------------------------------------------*/

.site-footer {
	content-visibility: auto;
	contain-intrinsic-height: 1800px;
	contain-intrinsic-width: 100%;
}

@media(min-width: 768px) {
	.site-footer {
		contain-intrinsic-height: 790px;
	}
}

/*--------------------------------------------------------------
# Featured Images
--------------------------------------------------------------*/
.post-image:not(:first-child) {
	margin-top: 2em;
}

.featured-image {
	line-height: 0;
}

.one-container .inside-article>.featured-image {
	margin-top: 0;
	margin-bottom: 2em;
}

/*--------------------------------------------------------------
# Compatibility
--------------------------------------------------------------*/
/* Bootstrap fix */
.container.grid-container {
	width: auto;
}

/*--------------------------------------------------------------
## Breakpoint (768px)
--------------------------------------------------------------*/
@media (max-width: 768px) {
	.hide-on-mobile {
		display: none !important;
	}

	/*--------------------------------------------------------------
	## Links
	--------------------------------------------------------------*/
	a,
	body,
	button,
	input,
	select,
	textarea {
		transition: all 0s ease-in-out;
	}

	/*--------------------------------------------------------------
	## Content Area
	--------------------------------------------------------------*/
	.site-content {
		flex-direction: column;
	}

	.container .site-content .content-area {
		width: auto;
	}

	.is-left-sidebar.sidebar,
	.is-right-sidebar.sidebar {
		width: auto;
		order: initial;
	}

	.is-left-sidebar+.is-right-sidebar .inside-right-sidebar {
		margin-top: 0;
	}

	.both-right .inside-left-sidebar,
	.both-left .inside-left-sidebar,
	.both-right .inside-right-sidebar,
	.both-left .inside-right-sidebar {
		margin-right: 0;
		margin-left: 0;
	}

	#main {
		margin-left: 0;
		margin-right: 0;
	}

	body:not(.no-sidebar) #main {
		margin-bottom: 0;
	}

	.alignleft,
	.alignright {
		float: none;
		display: block;
		margin-left: auto;
		margin-right: auto;
	}

	.comment .children {
		padding-left: 10px;
		margin-left: 0;
	}

	.entry-meta {
		font-size: inherit;
	}

	.entry-meta a {
		line-height: 1.8em;
	}
}

/**
 * Add external icons to _blank links.
 */

:is(p, li, h2, h3, h4, figcaption, cite) a[target="_blank"]::after,
.site-footer p a[target="_blank"]::after {
  display: inline-block;
  content: "";
  margin-left: 8px;
  width: .8em;
  height: .8em;
  aspect-ratio: 1;
  clip-path: shape(from 62.5% 0%,arc by -4.17% 4.17% of 4.17% 4.17% small ccw,arc by 4.17% 4.17% of 4.17% 4.17% small ccw,hline by 23.28%,line by -34.58% 34.53%,arc by 0% 5.94% of 4.17% 4.17% small ccw,arc by 5.94% 0% of 4.17% 4.17% small ccw,line to 91.67% 14.22%,vline to 37.5%,arc by 4.17% 4.17% of 4.17% 4.17% small ccw,arc by 4.17% -4.17% of 4.17% 4.17% small ccw,vline to 4.17%,arc by -1.2% -2.97% of 4.17% 4.17% small ccw,line by -0.36% -0.26%,line by -0.31% -0.21%,line by -0.83% -0.42%,line by -0.26% -0.1%,line by -1.2% -0.21%,close,move to 8.33% 16.67%,curve by -8.33% 8.33% with -4.53% 0%/-8.33% 3.8%,vline by 66.67%,curve by 8.33% 8.33% with 0% 4.53%/3.8% 8.33%,hline by 66.67%,curve by 8.33% -8.33% with 4.53% 0%/8.33% -3.8%,vline by -37.5%,arc by -4.17% -4.17% of 4.17% 4.17% small ccw,arc by -4.17% 4.17% of 4.17% 4.17% small ccw,vline by 37.5%,hline to 8.33%,vline to 25%,hline by 37.5%,arc by 4.17% -4.17% of 4.17% 4.17% small ccw,arc by -4.17% -4.17% of 4.17% 4.17% small ccw,close);
  vertical-align: -.075em;
  background-color: currentColor;
}

@media (min-width: 769px) and (max-width: 1024px) {
	.hide-on-tablet {
		display: none !important;
	}
}

@media (min-width: 1025px) {
	.hide-on-desktop {
		display: none !important;
	}
}

/* Translation block */

.translations {
	background-color: var(--light);
	border: 1px solid var(--light);
	border-radius: 8px;
	padding: 24px;
	font-weight: 500;
	display: grid;
	grid-template-columns: 1fr;
	align-items: center;
	justify-content: space-between;
	column-gap: 32px;
	row-gap: 16px;
}

.translations p:first-child {
	margin-bottom: 4px;
	display: flex;
	align-items: center;
	column-gap: 12px;
	font-weight: 600;
	color: var(--primary);
	font-family: "Jetbrains Mono", monospace;
    font-weight: 500;
    letter-spacing: -2%;
	text-transform: uppercase;
}

.translations p:last-child {
	margin-bottom: 0;
	font-size: 18px;
	padding-left: 36px;
}

.translations:hover {
	border-color: var(--primary);
}

.translations .button-ternary {
	margin-left: 36px;
}

.translations:hover .button-ternary {
	color: var(--primary);
}

@media(min-width: 880px) {
	.translations {
		grid-template-columns: auto auto;
	}
	.translations .button-ternary {
		margin-left: 0;
	}
}

/**
   * Add GeneratePerf border-radius option on interface elements.
   */

button,
input,
textarea {
	border-radius: var(--border-radius);
}

@media(min-width: 768px) {
	.splitted-2 {
		column-count: 2;
		column-gap: 64px;
		margin-bottom: 0;
	}
}

.entry-content ul:not(.intoc):not(.wp-block-latest-posts__list),
.entry-content ol {
	list-style: none;
	margin-left: 0;
}

.entry-content ul:not(.intoc):not(.wp-block-latest-posts__list)>li,
.entry-content ol>li {
	position: relative;
	padding-left: 2.2em;
	margin-bottom: .75em;
}

.entry-content ol {
	counter-reset: content-counter;
}

.entry-content ol>li {
	counter-increment: content-counter;
}

.entry-content ul:not(.intoc):not(.wp-block-latest-posts__list)>li:before,
.entry-content ol>li::before {
	position: absolute;
	top: .1em;
	left: 0;
	display: flex;
	width: 24px;
	height: 24px;
	background-color: var(--primary);
	color: var(--lightest);
	border-radius: 8px;
	justify-content: center;
	align-items: center;
}

.entry-content ul:not(.intoc):not(.wp-block-latest-posts__list) li:before {
	content: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 256 256" width="20" height="20"><rect width="256" height="256" fill="none"/><polyline points="40 144 96 200 224 72" fill="none" stroke="white" stroke-linecap="round" stroke-linejoin="round" stroke-width="20"/></svg>');
	padding-top: 6px;
}

.entry-content ol>li::before {
	content: counter(content-counter);
	font-family: "Jetbrains Mono", monospace;
	font-weight: 500;
	font-size: .8em;
}

body.full-width-content .entry-header {
	margin-left: auto;
	margin-right: auto;
	max-width: 1200px;
	padding-left: 20px;
	padding-right: 20px;
}

.simple-grid-2 input {
	width: 100%;
}

@media (min-width: 640px) {
	.simple-grid-2 {
		display: grid;
		grid-template-columns: 1fr 1fr;
		grid-gap: 1em;
	}
}

.wp-block-post-title a {
	text-decoration: none;
}

a.gb-container:hover,
a.gb-container:focus {
	text-decoration: none !important;
}

body.error404 .inside-article {
	text-align: center;
}

.drop-circle img {
	border: 4px solid #fff;
}

.related-articles {
	margin: 0 auto;
	max-width: 1200px;
	padding-left: 20px;
	padding-right: 20px;
}

.comments-area {
	margin-bottom: 64px;
}

#comments {
	padding-top: 64px;
	border-top: 1px solid var(--lightgray);
}

.comment-respond {
	background-color: var(--darkest);
	color: var(--lightest);
	padding: 40px;
	border-radius: 16px;
}

.comment-respond a {
	color: var(--lightest);
}

@media(min-width: 769px) {
	#comments:has(.comment-list) {
		display: grid;
		grid-template-columns: 1fr 1fr;
		grid-template-rows: auto auto;
		column-gap: 64px;
		align-items: start;
	}

	.comments-title {
		grid-column: 1/3;
		grid-row: 1;
	}

	.comment-list {
		grid-column: 2 / 2;
		grid-row: 2;
	}

	.comment-respond {
		grid-column: 1 / 2;
		grid-row: 2;
	}

	#respond {
		position: sticky;
		top: 24px;
	}
}

/*--------------------------------------------------------------
# Zoom sur les images (à supprimer)
--------------------------------------------------------------*/

img[src*="illustration"] {
	pointer-events: none;
}

.logos-bar img {
	min-width: 160px;
}


/* Split menu en gauche et droite */

.gb-menu-toggle {
	margin-left: -10px;
}

@media(min-width: 940px) {
	#menu-menu-principal > li:nth-child(4) {
    	margin-right: auto;
	}
}

/* Fix search modal layout */

#gb-overlay-1217 .gb-overlay__content {
	height: 100%;
}

svg.icon {
	vertical-align: unset;
}

.inside-article > .component:has(.social-share) {
	display: none !important;
}


/* slider logos */

.logos-slider {
  animation: scroll-logos 45s linear infinite;
}

@keyframes scroll-logos {
  to {
    transform: translateX(-50%);
  }
}

.logos-slider-wrapper:hover .logos-slider {
  animation-play-state: paused;
}

@media (prefers-reduced-motion: reduce) {
  .logos-slider {
    animation: none;
  }
  .logos-slider > div {
    flex-wrap: wrap;
    justify-content: center;
    padding-right: 0;
  }
}

/* Animations */

body .pause-offscreen {
	animation-play-state: paused;
}

body .pause-offscreen.playing {
	animation-play-state: running;
}

.tag-open,
.tag-close {
  display: inline-block;
  opacity: 0.40;
}

.tag-open  { animation: breathe-open  3.6s ease-in-out infinite; }
.tag-close { animation: breathe-close 3.6s ease-in-out infinite; }

@media (prefers-reduced-motion: reduce) {
	.tag-open,
	.tag-close {
		animation: none;
	}
}

@keyframes breathe-open {
  0%   { opacity: 1; transform: translateX(0); }
  50%  { opacity: 0.4;      transform: translateX(.25em); }
  100% { opacity: 1; transform: translateX(0); }
}

@keyframes breathe-close {
  0%   { opacity: 1; transform: translateX(0); }
  50%  { opacity: 0.4;      transform: translateX(-.25em); }
  100% { opacity: 1; transform: translateX(0); }
}

/* Dashed box */

.dashed-box::before,
.step-main-desc::before {
	background-repeat: repeat-y !important;
    background-size: 1px 16px !important;
}

.dashed-box::before {
	background-position: center bottom !important;
}

.dashed-box::after,
.steps-container::before,
.dashed-top::before,
.dashed-light::before {
	background-repeat: repeat-x !important;
    background-size: 16px 1px !important;
}

.margin-main:has(> .simple-logos) > h2 {
	margin-bottom: 32px;
}