/*!
Theme Name: Apollo blocks light 2026
Theme URI: http://underscores.me/
Author: Underscores.me
Author URI: http://underscores.me/
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: apollo-blocks-light-2026
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

Apollo blocks light 2026 is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Generic
	- Normalize
	- Box sizing
# Base
	- Typography
	- Elements
	- Links
	- Forms
## Layouts
# Components
	- Navigation
	- Posts and pages
	- Comments
	- Widgets
	- Media
	- Captions
	- Galleries
# plugins
	- Jetpack infinite scroll
# Utilities
	- Accessibility
	- Alignments

--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Generic
--------------------------------------------------------------*/

/* Normalize
--------------------------------------------- */

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
	 ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */
html {
	line-height: 1.15;
	-webkit-text-size-adjust: 100%;
}

/* Sections
	 ========================================================================== */

/**
 * Remove the margin in all browsers.
 */
body {
	margin: 0;
}

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

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */
h1 {
	font-size: 2em;
	margin: 0.67em 0;
}

/* Grouping content
	 ========================================================================== */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */
hr {
	box-sizing: content-box;
	height: 0;
	overflow: visible;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
pre {
	font-family: monospace, monospace;
	font-size: 1em;
}

/* Text-level semantics
	 ========================================================================== */

/**
 * Remove the gray background on active links in IE 10.
 */
a {
	background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */
abbr[title] {
	border-bottom: none;
	text-decoration: underline;
	text-decoration: underline dotted;
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */
b,
strong {
	font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */
code,
kbd,
samp {
	font-family: monospace, monospace;
	font-size: 1em;
}

/**
 * Add the correct font size in all browsers.
 */
small {
	font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */
sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sub {
	bottom: -0.25em;
}

sup {
	top: -0.5em;
}

/* Embedded content
	 ========================================================================== */

/**
 * Remove the border on images inside links in IE 10.
 */
img {
	border-style: none;
}

/* Forms
	 ========================================================================== */

/**
 * 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%;
	line-height: 1.15;
	margin: 0;
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */
button,
input {
	overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */
button,
select {
	text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */
button,
[type="button"],
[type="reset"],
[type="submit"] {
	-webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
	border-style: none;
	padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
	outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */
fieldset {
	padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *		`fieldset` elements in all browsers.
 */
legend {
	box-sizing: border-box;
	color: inherit;
	display: table;
	max-width: 100%;
	padding: 0;
	white-space: normal;
}

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

/**
 * Remove the default vertical scrollbar in IE 10+.
 */
textarea {
	overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */
[type="checkbox"],
[type="radio"] {
	box-sizing: border-box;
	padding: 0;
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

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

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */
::-webkit-file-upload-button {
	-webkit-appearance: button;
	font: inherit;
}

/* Interactive
	 ========================================================================== */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */
details {
	display: block;
}

/*
 * Add the correct display in all browsers.
 */
summary {
	display: list-item;
}

/* Misc
	 ========================================================================== */

/**
 * Add the correct display in IE 10+.
 */
template {
	display: none;
}

/**
 * Add the correct display in IE 10.
 */
[hidden] {
	display: none;
}

/* Box sizing
--------------------------------------------- */

/* Inherit box-sizing to more easily change it's value on a component level.
@link http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
*,
*::before,
*::after {
	box-sizing: inherit;
}

html {
	box-sizing: border-box;
}

/*--------------------------------------------------------------
# Base
--------------------------------------------------------------*/

/* Typography
--------------------------------------------- */
body,
button,
input,
select,
optgroup,
textarea {
	color: #404040;
	font-family: Space Grotesk, Inter, ui-sans-serif, system-ui, sans-serif;
	font-size: 1rem;
	line-height: 1.5;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	clear: both;
}

p {
	margin-bottom: 1.5em;
}

dfn,
cite,
em,
i {
	font-style: italic;
}

blockquote {
	margin: 0 1.5em;
}

address {
	margin: 0 0 1.5em;
}

pre {
	background: #eee;
	font-family: "Courier 10 Pitch", courier, monospace;
	line-height: 1.6;
	margin-bottom: 1.6em;
	max-width: 100%;
	overflow: auto;
	padding: 1.6em;
}

code,
kbd,
tt,
var {
	font-family: monaco, consolas, "Andale Mono", "DejaVu Sans Mono", monospace;
}

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

mark,
ins {
	background: #fff9c0;
	text-decoration: none;
}

big {
	font-size: 125%;
}

/* Elements
--------------------------------------------- */
body {
	background: #fff;
}

hr {
	background-color: #ccc;
	border: 0;
	height: 1px;
	margin-bottom: 1.5em;
}

ul,
ol {
	margin: 0 0 1.5em 3em;
}

ul {
	list-style: disc;
}

ol {
	list-style: decimal;
}

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

dt {
	font-weight: 700;
}

dd {
	margin: 0 1.5em 1.5em;
}

/* Make sure embeds and iframes fit their containers. */
embed,
iframe,
object {
	max-width: 100%;
}

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

figure {
	margin: 1em 0;
}

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

/* Links
--------------------------------------------- */
a {
	color: #4169e1;
}

a:visited {
	/* color: #800080; */
}

a:hover,
a:focus,
a:active {
	color: #191970;
}

a:focus {
	outline: unset;
}

a:hover,
a:active {
	outline: 0;
}

/* Forms
--------------------------------------------- */
button,
input[type="button"],
input[type="reset"],
input[type="submit"] {
	border: 1px solid;
	border-color: #ccc #ccc #bbb;
	border-radius: 3px;
	background: #e6e6e6;
	color: rgba(0, 0, 0, 0.8);
	line-height: 1;
	padding: 0.6em 1em 0.4em;
}

button:hover,
input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
	border-color: #ccc #bbb #aaa;
}

button:active,
button:focus,
input[type="button"]:active,
input[type="button"]:focus,
input[type="reset"]:active,
input[type="reset"]:focus,
input[type="submit"]:active,
input[type="submit"]:focus {
	border-color: #aaa #bbb #bbb;
}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="password"],
input[type="search"],
input[type="number"],
input[type="tel"],
input[type="range"],
input[type="date"],
input[type="month"],
input[type="week"],
input[type="time"],
input[type="datetime"],
input[type="datetime-local"],
input[type="color"],
textarea {
	color: #666;
	border: 1px solid #ccc;
	border-radius: 3px;
	padding: 3px;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="password"]:focus,
input[type="search"]:focus,
input[type="number"]:focus,
input[type="tel"]:focus,
input[type="range"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="week"]:focus,
input[type="time"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="color"]:focus,
textarea:focus {
	color: #111;
}

select {
	border: 1px solid #ccc;
}

textarea {
	width: 100%;
}

/*--------------------------------------------------------------
# Layouts
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Components
--------------------------------------------------------------*/

/* Navigation
--------------------------------------------- */
.main-navigation {
	display: block;
	width: 100%;
}

.main-navigation ul {
	display: none;
	list-style: none;
	margin: 0;
	padding-left: 0;
}

.main-navigation ul ul {
	box-shadow: 0 3px 3px rgba(0, 0, 0, 0.2);
	float: left;
	position: absolute;
	top: 100%;
	left: -999em;
	z-index: 99999;
}

.main-navigation ul ul ul {
	left: -999em;
	top: 0;
}

.main-navigation ul ul li:hover>ul,
.main-navigation ul ul li.focus>ul {
	display: block;
	left: auto;
}

.main-navigation ul ul a {
	width: 200px;
}

.main-navigation ul li:hover>ul,
.main-navigation ul li.focus>ul {
	left: auto;
}

.main-navigation li {
	position: relative;
}

.main-navigation a {
	display: block;
	text-decoration: none;
}

/* Small menu. */
.menu-toggle,
.main-navigation.toggled ul {
	display: block;
}

@media screen and (min-width: 37.5em) {

	.menu-toggle {
		display: none;
	}

	.main-navigation ul {
		display: flex;
	}
}

.site-main .comment-navigation,
.site-main .posts-navigation,
.site-main .post-navigation {
	margin: 0 0 1.5em;
}

.comment-navigation .nav-links,
.posts-navigation .nav-links,
.post-navigation .nav-links {
	display: flex;
}

.comment-navigation .nav-previous,
.posts-navigation .nav-previous,
.post-navigation .nav-previous {
	flex: 1 0 50%;
}

.comment-navigation .nav-next,
.posts-navigation .nav-next,
.post-navigation .nav-next {
	text-align: end;
	flex: 1 0 50%;
}

/* Posts and pages
--------------------------------------------- */
.sticky {
	display: block;
}

.post,
.page {
	margin: 0 0 1.5em;
}

.updated:not(.published) {
	display: none;
}

.page-content,
.entry-content,
.entry-summary {
	margin: 1.5em 0 0;
}

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

/* Comments
--------------------------------------------- */
.comment-content a {
	word-wrap: break-word;
}

.bypostauthor {
	display: block;
}

/* Widgets
--------------------------------------------- */
.widget {
	margin: 0 0 1.5em;
}

.widget select {
	max-width: 100%;
}

/* Media
--------------------------------------------- */
.page-content .wp-smiley,
.entry-content .wp-smiley,
.comment-content .wp-smiley {
	border: none;
	margin-bottom: 0;
	margin-top: 0;
	padding: 0;
}

/* Make sure logo link wraps around logo image. */
.custom-logo-link {
	display: inline-block;
}

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

.wp-caption img[class*="wp-image-"] {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.wp-caption .wp-caption-text {
	margin: 0.8075em 0;
}

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

/* Galleries
--------------------------------------------- */
.gallery {
	margin-bottom: 1.5em;
	display: grid;
	grid-gap: 1.5em;
}

.gallery-item {
	display: inline-block;
	text-align: center;
	width: 100%;
}

.gallery-columns-2 {
	grid-template-columns: repeat(2, 1fr);
}

.gallery-columns-3 {
	grid-template-columns: repeat(3, 1fr);
}

.gallery-columns-4 {
	grid-template-columns: repeat(4, 1fr);
}

.gallery-columns-5 {
	grid-template-columns: repeat(5, 1fr);
}

.gallery-columns-6 {
	grid-template-columns: repeat(6, 1fr);
}

.gallery-columns-7 {
	grid-template-columns: repeat(7, 1fr);
}

.gallery-columns-8 {
	grid-template-columns: repeat(8, 1fr);
}

.gallery-columns-9 {
	grid-template-columns: repeat(9, 1fr);
}

.gallery-caption {
	display: block;
}

/*--------------------------------------------------------------
# Plugins
--------------------------------------------------------------*/

/* Jetpack infinite scroll
--------------------------------------------- */

/* Hide the Posts Navigation and the Footer when Infinite Scroll is in use. */
.infinite-scroll .posts-navigation,
.infinite-scroll.neverending .site-footer {
	display: none;
}

/* Re-display the Theme Footer when Infinite Scroll has reached its end. */
.infinity-end.neverending .site-footer {
	display: block;
}

/*--------------------------------------------------------------
# Utilities
--------------------------------------------------------------*/

/* Accessibility
--------------------------------------------- */

/* Text meant only for screen readers. */
.screen-reader-text {
	border: 0;
	clip: rect(1px, 1px, 1px, 1px);
	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;
	clip-path: none;
	color: #21759b;
	display: block;
	font-size: 0.875rem;
	font-weight: 700;
	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;
}

/* Alignments
--------------------------------------------- */
.alignleft {

	/*rtl:ignore*/
	float: left;

	/*rtl:ignore*/
	margin-right: 1.5em;
	margin-bottom: 1.5em;
}

.alignright {

	/*rtl:ignore*/
	float: right;

	/*rtl:ignore*/
	margin-left: 1.5em;
	margin-bottom: 1.5em;
}

.aligncenter {
	clear: both;
	display: block;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 1.5em;
}


/* PALETTE DE COULEURS GLOBALE */

:root {
	--blueapollo1: #020D23;
	--blueapollo2: #1E2A54;
	--blueapollo3: #366DBF;
	--redapollod: #B5030F;
	--redapollol: #F40616;
	--lightforeground: #fafafa;
	--lightforeground20: #fafafa20;
	--lightforeground10: #fafafa10;
	--lightgrey: #DEE0E3;
	--lightborder14: rgb(255 255 255 / 14%);

	--lightblueapollo3: rgb(54 109 191 / 10%);
	--lightredapollol: rgb(244 6 22 / 10%);
}

/* Typos globales */

@font-face {
	font-family: 'Space Grotesk';
	src: url('fonts/space-grotesk-v22-latin-300.woff2') format('woff2');
	font-weight: 300;
	font-style: normal;
	font-display: swap;
	/* Important pour l'affichage immédiat du texte */
}

@font-face {
	font-family: 'Space Grotesk';
	src: url('fonts/space-grotesk-v22-latin-500.woff2') format('woff2');
	font-weight: 500;
	font-style: normal;
	font-display: swap;
	/* Important pour l'affichage immédiat du texte */
}

@font-face {
	font-family: 'Space Grotesk';
	src: url('fonts/space-grotesk-v22-latin-600.woff2') format('woff2');
	font-weight: 600;
	font-style: normal;
	font-display: swap;
	/* Important pour l'affichage immédiat du texte */
}

@font-face {
	font-family: 'Space Grotesk';
	src: url('fonts/space-grotesk-v22-latin-700.woff2') format('woff2');
	font-weight: 700;
	font-style: normal;
	font-display: swap;
	/* Important pour l'affichage immédiat du texte */
}

@font-face {
	font-family: 'Space Grotesk';
	src: url('fonts/space-grotesk-v22-latin-regular.woff2') format('woff2');
	font-weight: regular;
	font-style: normal;
	font-display: swap;
	/* Important pour l'affichage immédiat du texte */
}

html {
	scroll-behavior: smooth;
}

.text-sm {
	font-size: .875rem;
	line-height: 1.25rem;
}

.text-xs {
	font-size: .75rem;
	line-height: 1rem;
}

.text-lg {
	font-size: 1.125rem;
	line-height: 1.75rem;
}

.text-4xl {
	font-size: 2.25rem;
	line-height: 2.5rem;
}

.text-2xl {
	font-size: 1.5rem;
	line-height: 2rem;
}

.text-xl {
	font-size: 1.25rem;
	line-height: 1.75rem;
}

.container {
	max-width: 1400px;
	margin-left: auto;
	margin-right: auto;
	padding: 0.7rem 1rem;
}

.page,
.post {
	margin: 0;
}

header.entry-header {
	display: none;
}

.page-content,
.entry-content,
.entry-summary {
	margin: 0;
}


a.btn.btn-primary:hover,
a.btn.btn-primary:focus,
a.btn.btn-primary:active {
	filter: brightness(0.8);
	color: white;
}

.btn-secondary:hover,
.btn-secondary:focus,
.btn-secondary:active {
	color: var(--redapollol);
	filter: brightness(0.8);
}


.btn-primary {
	background: var(--redapollod);
	color: white;
}

a.btn,
.btn {
	text-decoration: none;
	padding: 12px 20px;
	font-weight: 500;
	letter-spacing: -4%;
}

.btn-secondary {
	color: var(--redapollol);
	border: solid 1px;
}

a.btn,
.btn {
	text-decoration: none;
	padding: 12px 20px;
	font-weight: 500;
	letter-spacing: -4%;
	display: flex;
	align-items: center;
	gap: 8px;
	transition: transform 200ms cubic-bezier(.4, 0, .25, 1) 0ms, opacity 0.3s cubic-bezier(.4, 0, .25, 1) 0ms, filter 0.3s cubic-bezier(.4, 0, .25, 1) 0ms;
}


.entry-content {
	display: flex;
	flex-direction: column;
	gap: 2px;
	background: #1C2639;
}

/* Header */

.main_header {
	border-bottom: solid 2px var(--lightforeground20);
}

header.site-header {
	background-color: var(--blueapollo1);
}

.subheader {
	background-color: rgb(255, 255, 255, 0.1);
	color: var(--lightgrey);
	font-size: 15px;
	font-weight: 300;
}

.subheader>.container {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.subheader a {
	color: var(--lightgrey);
	text-decoration: none;
}

.subheader_left {
	display: flex;
	gap: 25px;
}

.subheader_left>* {
	display: flex;
	gap: 8px;
	align-items: center;
}

.social_subheader {
	display: flex;
	gap: 25px;
	align-items: center;
}

.subheader_right {
	display: flex;
	gap: 25px;
}

a.cta_subheader {
	background-color: var(--lightforeground20);
	padding: 8px 22px;
	font-weight: 400;
	letter-spacing: -4%;
}

.main_header .container {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0.4rem 1rem;
}

.main_header .logo {
	max-width: 183px;
}

.main_header_left {
	display: flex;
	align-items: center;
	gap: 50px;
}

ul.menu.mainheader_menu {
	list-style: none;
	margin: unset;
	padding: unset;
	display: flex;
	gap: 25px;
	font-size: 14px;
}

.menu-item a {
	text-decoration: none;
	color: var(--lightforeground);
}

.menu-item a {
	text-decoration: none;
	color: var(--lightforeground);
	display: flex;
	align-items: center;
	gap: 6px;
}

a.btn-header {
	text-decoration: none;
	color: white;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background-color: var(--redapollod);
	padding: 10px 24px;
	font-size: 15px;
	letter-spacing: -0.04em;
	font-weight: 500;
	transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
	box-shadow: 0 0 0 rgba(0, 0, 0, 0);
}

a.btn-header i {
	transition: transform 0.3s ease;
}

a.btn-header:hover {
	background-color: #d12a2a;
	transform: translateY(-2px);
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
}

a.btn-header:hover i {
	transform: translate(2px, -2px) scale(1.1);
}

a.btn-header:active {
	transform: translateY(0);
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.chevron_main_header {
	font-size: 11px;
}

/* Footer */

.header_container {
	background-color: rgb(255, 255, 255, 0.1);
}

.subheader_container {
	background-color: var(--blueapollo1);
}

.site-info {
	background-color: var(--blueapollo1);
	color: var(--lightgrey);
	padding-top: 1.5rem;
	padding-bottom: 1.5rem;
	padding-left: 1rem;
	padding-right: 1rem;
	display: flex;
	justify-content: space-between;
}

.sub_footer_left {
	display: flex;
	gap: 1rem;
}

.madeinfrance {
	font-weight: 700;
	border: solid 1px;
	border-radius: 100px;
	padding: 0.1rem 0.5rem;
	display: flex;
	align-items: center;
	gap: 0.4rem;
	color: var(--redapollol);
}

.main_footer {
	color: var(--lightforeground);
	padding-top: 1.5rem;
	padding-bottom: 1.5rem;
	padding-left: 1rem;
	padding-right: 1rem;
	display: grid;
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: 3rem;
	font-weight: 300;
}

footer#colophon {
	background-color: var(--blueapollo1);
}

.footer_col1 {
	grid-column: span 2 / span 2;
	display: flex;
	flex-direction: column;
}

footer .logo {
	max-width: 183px;
}

.mini_manifesto p strong {
	color: var(--redapollol);
	font-weight: 600;
}

.footer-stats {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 1.5rem;
}

.stat-item {
	border: solid 1px;
	border-color: #ffffff14;
	text-align: center;
	display: flex;
	flex-direction: column;
	align-items: center;
	padding: 20px;
	justify-content: center;
}

.stat-item p {
	margin: unset;
	line-height: 1.25rem;
	font-size: 0.875rem;
}

span.number {
	font-size: 24px;
	font-weight: 800;
	color: var(--redapollol);
}

footer ul {
	list-style: none;
	margin: unset;
	padding: unset;
}

.footer_menu a {
	text-decoration: none;
	color: var(--lightgrey);
}

.h3_footer i,
.h3_box_contact i {
	color: var(--redapollol);
	font-size: 21px;
}

h3.h3_footer {
	display: flex;
	align-items: center;
	gap: 8px;
	font-size: 18px;
	font-weight: 500;
}

footer .social_subheader i {
	font-size: 20px;
	color: var(--lightgrey);
	border: solid 1px;
	padding: 0.5rem;
	display: flex;
	border-color: #ffffff14;
}

.social_subheader a {
	text-decoration: none;
}

.contact_express {
	border: solid 1px;
	padding: 1rem;
	border-color: #ffffff14;
	font-size: 12px;
	display: flex;
	flex-direction: column;
	gap: 5px;
	margin-top: 1rem;
}

h3.h3_box_contact {
	margin: 0px 0px 0px 0px;
	display: flex;
	align-items: center;
	gap: 10px;
}

.contact_express>div {
	display: flex;
	gap: 10px;
}

.form_footer i {
	color: var(--redapollol);
}

.form_footer h3 {
	font-size: 18px;
	font-weight: 500;
}

footer p {
	color: var(--lightgrey);
}

footer .social_subheader {
	gap: 15px;
}

.certifications_footer h3 {
	font-size: 14px;
	font-weight: 400;
	margin-top: 40px;
}

.social_footer h3 {
	font-size: 18px;
	font-weight: 500;
}

/* Mega menu */

li.menu-item {
	position: static;
}

.menu-item:hover .mega-menu {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
	background-color: var(--blueapollo1);
	top: 119px;
	left: 50%;
	transform: translateX(-50%) !important;
}

.mega-menu {
	position: absolute;
	z-index: 10;
	top: 100%;
	left: 0;
	width: 1000px;
	opacity: 0;
	visibility: hidden;
	transform: translateY(10px);
	transition: all .2s ease;
	padding: 1.5rem;
	border: solid 1px;
	border-color: var(--lightforeground20);
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 1rem;
	min-height: 24rem;
	top: 125px;
	left: 50%;
	transform: translateX(-50%) !important;
}

.mega-menu ul {
	list-style: unset;
	margin: unset;
	padding: unset;
}

.mega-menu h3 {
	color: var(--redapollol);
	margin-top: 0;
}

.mega-column ul>li>a {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 2px;
}

.global-rating-value-group {
	display: flex;
	gap: .5rem;
}

span.rating-value {
	color: var(--redapollol);
	font-weight: 900;
}

.global-rating p {
	margin: 0;
}

.mega-reviews-container {
	color: var(--lightgrey);
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.mini-review-item {
	border: solid 1px var(--lightforeground20);
	padding: 1rem;
}

.mini-reviews-list {
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.review-stars.text-xs {
	color: #ffc107;
}

.mega-column>ul {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.mega-column>ul>li {
	padding: 5px;
	transition: 0.2s;
}

.mega-column>ul>li:hover {
	background: var(--lightforeground10);
}

small.link-description {
	font-weight: 200;
	color: var(--lightgrey);
}

.featured-column h3 {
	color: white;
}

span.featured-tag {
    color: var(--redapollol);
    border: solid 1px;
    padding: 0px 4px;
    display: flex;
    gap: 4px;
}

.featured-job-item:hover, .featured-case-study:hover {
	background: var(--lightforeground10);
}

.featured-job-item, .featured-case-study {
	transition: 0.2s;
}

a.job-link {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	border: solid 1px var(--lightforeground20);
	padding: 1rem;
}

img.featured-img {
	position: absolute;
	z-index: -1;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.mega-column.featured-column {
	position: relative;
	border: solid 1px;
	border-color: var(--lightforeground20);
}

.featured_info {
	position: absolute;
	bottom: 0;
	padding: 0px 20px 20px 20px;
}

.gradient_featured {
	position: absolute;
	width: 100%;
	height: 100%;
	background: linear-gradient(to bottom, transparent 0%, var(--blueapollo1) 70%);
}

p.featured-desc {
	color: var(--lightgrey);
	font-weight: 200;
}

.mainheader_menu>li>a {
	padding: 17px 0px;
}

.link-icon {
	display: flex;
	align-items: center;
	color: var(--redapollol);
	margin-bottom: 3px;
}

span.link-label {
	display: flex;
	align-items: center;
	gap: 7px;
}

a.featured-cta {
	width: 100%;
	height: 100%;
	position: relative;
	overflow: hidden;
	display: flex;
}

a.featured-cta:hover>img {
	transform: scale(1.1);
}

a.featured-cta>img {
	transition: transform 400ms cubic-bezier(.4, 0, .25, 1) 0ms, opacity 1s cubic-bezier(.4, 0, .25, 1) 0ms, filter 1s cubic-bezier(.4, 0, .25, 1) 0ms;
}

a.case-study-link {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    border: solid 1px var(--lightforeground20);
    padding: 1rem;
}


/* block hero */


.hero-img {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 0;
	width: 100%;
	height: 100%;
	z-index: 0;
}

.hero-img>img {
	height: 100%;
	width: 100%;
	object-fit: cover;
	object-position: top;
}

.hero-block {
    position: relative;
    min-height: 600px;
    display: flex;
    align-items: center;
    background: var(--blueapollo1);
}

.hero-content {
	z-index: 2;
	position: relative;
	margin: auto;
	display: flex;
	flex-direction: column;
	gap: 20px;
}

.overlay_hero {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: linear-gradient(to left, transparent 20%, var(--blueapollo1) 60%);
	z-index: 1;
}


.container.container_hero {
	width: 100%;
}

.hero-content h1 {
	color: var(--lightgrey);
	font-size: 100px;
	line-height: 90px;
	max-width: 12ch;
	letter-spacing: -4%;
	margin: 0;
	font-weight: 600;
}

p.soustitre_hero {
	color: var(--lightgrey);
	font-size: 24px;
	line-height: 30px;
	max-width: 35ch;
	font-weight: 600;
	margin: 0;
}


.hero-actions {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	gap: 20px;
	margin-top: 40px;
}


.svgicon svg {
	inline-size: 20px;
	block-size: 20px;
}

.svgicon {
	display: flex;
}


/* Bloc frise */

.frise-heading p {
	font-size: 54px;
	letter-spacing: -4%;
	font-weight: 600;
	line-height: 54px;
	color: var(--lightforeground);
	margin: 0;
}

.frise-block {
	background: var(--blueapollo1);
}

.title_element_frise {
	display: flex;
	align-items: center;
	gap: 10px;
}

a.frise-item {
	max-width: 22rem;
	display: flex;
	text-decoration: none;
	background: #3b4a63;
	padding: 1px;
	clip-path: polygon(0% 0%,
			80% 0%,
			100% 50%,
			80% 100%,
			0% 100%,
			20% 50%);
	color: var(--lightforeground);
	transition: transform 200ms cubic-bezier(.4, 0, .25, 1) 0ms, opacity 1s cubic-bezier(.4, 0, .25, 1) 0ms, filter 1s cubic-bezier(.4, 0, .25, 1) 0ms;
}

.frise-item_inner {
	background: #1f2c3f;
	padding: 30px 20px 30px 80px;
	clip-path: polygon(0% 0%,
			80% 0%,
			100% 50%,
			80% 100%,
			0% 100%,
			20% 50%);
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.frise_action {
	display: flex;
}


.item-icon {
	display: flex;
	color: var(--blueapollo3);
	background: var(--lightblueapollo3);
	padding: 8px;
}

.item-icon svg {
	inline-size: 23px;
	block-size: 23px;
}

p.item-subtitle {
	color: var(--lightgrey);
}

.frise-items {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
}

p.item-title {
	font-size: 34px;
	line-height: 34px;
	margin: 0;
	font-weight: 500;
}

p.item-subtitle {
	color: var(--lightgrey);
	font-weight: 300;
	line-height: normal;
	margin: 0;
}

a.frise-item:not(:first-child) {
	margin-left: -60px;
}

.frise_content {
	display: flex;
	gap: 40px;
	flex-direction: column;
	padding: 80px 0px;
}

.frise-heading strong {
	color: var(--redapollol);
}

a.frise-item:hover {
	transform: scale(1.03);
	opacity: 0.9;
}

/* Bloc grille logos tech */


header.logo-tech-header {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.logo-tech-block {
	background: var(--blueapollo1);
}

.subtitle_home {
	color: var(--lightgrey);
	font-size: 27px;
	line-height: 34px;
	letter-spacing: -4%;
	max-width: 920px;
}

.subtitle_home p {
	margin: 0;
}

.logo-tech-grid {
	display: flex;
	gap: 10px;
	flex-wrap: wrap;
	max-width: 93ch;
}

.logo-item {
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: var(--lightforeground10);
	aspect-ratio: 1;
	border: solid 1px var(--lightborder14);
	padding: 20px;
	width: 120px;
}


.logos_tech_content {
	display: flex;
	flex-direction: column;
	gap: 40px;
	padding: 80px 0px;
}

img.svg-logo {
	aspect-ratio: 1;
}

/* Bloc cards features */

.features-block {
	background-color: var(--blueapollo1);
}

.feature-card {
	max-width: 300px;
	background-color: var(--lightforeground10);
	border: solid 1px var(--lightborder14);
	padding: 1rem;
	color: var(--lightforeground);
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 14px;
}

.features-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(0, 300px));
	gap: 1rem;
}

.feature-icon {
	display: flex;
	color: var(--redapollol);
	background: var(--lightredapollol);
	padding: 8px;
}

.feature-icon svg {
	inline-size: 40px;
	block-size: 40px;
}

span.feature-subtitle {
	font-size: 1.15rem;
	line-height: 1.15rem;
	color: var(--lightgrey);
}

.feature-detail {
	font-size: 0.8rem;
	font-weight: 300;
	line-height: 27px;
}

.separator_cart_detail {
	height: 1px;
	width: 100%;
	background: var(--lightforeground10);
}

h3.feature-title {
	margin: 0;
}

.feature-content {
	gap: 20px;
	display: flex;
	flex-direction: column;
}

.feature-detail p {
	margin: 0;
}

.content_features {
	display: flex;
	flex-direction: column;
	gap: 40px;
	padding: 80px 0px;
}

header.features-header {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

a.feature-card {
	text-decoration: none;
	transition: transform 200ms cubic-bezier(.4, 0, .25, 1) 0ms, opacity 1s cubic-bezier(.4, 0, .25, 1) 0ms, filter 1s cubic-bezier(.4, 0, .25, 1) 0ms;
}

a.feature-card:hover {
	text-decoration: none;
	transform: scale(1.05);
}

a.feature-card:hover,
a.feature-card:focus,
a.feature-card:active {
	color: var(--lightforeground);
}

/* bloc logos clients */

.logos-clients-block {
	background-color: var(--lightforeground);
}

.logos-clients-grid {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 50px;
}

.logo-client-item {
	aspect-ratio: 1;
}

.content_logo_clients {
	padding: 80px 0px;
}

/* BLoc CTA Apollo */

.main-cta-block {
	background-color: var(--blueapollo1);
}

.cta-buttons {
	display: flex;
	gap: 20px;
	flex-wrap: wrap;
	margin-top: 2rem;
}

.separator_dot {
	width: 4px;
	height: 4px;
	border-radius: 100px;
	background: var(--redapollol);
}

.cta-mentions {
	display: flex;
	align-items: center;
	gap: 6px;
	color: var(--lightgrey);
}

.cta-header {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.content_cta {
	display: flex;
	flex-direction: column;
	gap: 15px;
	padding: 80px 0px;
}

span.mention-item {
	font-weight: 300;
}


/* Block testimonials */


.testimonials-block .testimonials-grid {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
}

.testimonials-block {
	background-color: var(--blueapollo1);
}

.testimonials-content {
	padding: 80px 0px;
	display: flex;
	flex-direction: column;
	gap: 40px;
}

.testimonials-header {
	display: flex;
	flex-direction: column;
	gap: 25px;
}

.reassurance-item {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}

span.reassurance-number {
	font-size: 54px;
	letter-spacing: -4%;
	font-weight: 600;
	line-height: 54px;
	color: var(--redapollol);
	margin: 0;
}

span.reassurance-label {
	font-size: 20px;
	color: var(--lightgrey);
	line-height: 26px;
}

.reassurance-grid {
	display: flex;
	gap: 40px;
	flex-wrap: wrap;
}

.testimonial-card {
	max-width: 100%;
	background-color: var(--lightforeground10);
	border: solid 1px var(--lightborder14);
	padding: 1.5rem;
	color: var(--lightforeground);
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 14px;
}

.star-rating {
	position: relative;
	display: inline-block;
	font-size: 15px;
	line-height: 1;
	color: #e0e0e0;
}

.star-foreground {
	position: absolute;
	top: 0;
	left: 0;
	white-space: nowrap;
	overflow: hidden;
	color: #ffc107;
	/* Couleur des étoiles pleines (or) */
}

.testimonials-grid {
	display: flex;
	gap: 1rem;
	flex-direction: column;
}

.testimonial-title {
	display: flex;
	flex-direction: column;
}

.testimonial-top {
	display: flex;
	justify-content: space-between;
	width: 100%;
}

h3.testimonial_entreprise {
	margin: 0;
}

.testimonial-text {
	color: var(--lightgrey);
	margin: 0px;
}

.testimonial-meta {
	display: flex;
	align-items: center;
	gap: 10px;
}

.author-info {
	display: flex;
	flex-direction: column;
}

.testimonial-card .separator_cart_detail {
	margin-top: auto;
}

.testimonial-meta i {
	font-size: 30px;
	color: var(--blueapollo3);
	opacity: 0.4;
}

.testimonials-footer {
	display: flex;
}

.testimonial-content {
	position: relative;
	margin-top: 20px;
	width: 100%;
}

.testimonial-content .bi-quote {
	opacity: 0.1;
	position: absolute;
	top: -49px;
	left: -11px;
	font-size: 62px;
}

span.author-role {
	font-weight: 200;
}

/* Bloc Cas clients */

a.btn.btn-cas-client:hover {
	opacity: 0.8;
}


.cas-clients-header {
	display: grid;
	grid-template-columns: 1fr 1fr;
}

.cas-clients-block .reassurance-item {
	align-items: center;
}

.cas-clients-footer {
	display: flex;
}


.cas-clients-grid {
	display: flex;
	flex-wrap: wrap;
	gap: 1rem;
}

.tech-item i {
	display: block;
	font-size: 33px;
	border: solid 1px var(--lightforeground20);
	padding: 6px;
	aspect-ratio: 1;
}

.stack-tech {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
}

.btn-cas-client {
	border: solid 1px var(--lightforeground10);
	display: flex;
	justify-content: center;
	padding: 8px;
	background: var(--lightforeground20);
	gap: 10px;
	width: 100%;
	margin-top: auto;
}

.stack-tech span {
	border: solid 1px var(--lightforeground20);
	padding: 4px 7px;
}

.cas-client-title {
	display: flex;
	align-items: center;
	gap: 12px;
	margin-bottom: 5px;
}

.cas-client-title img.svg-logo {
	filter: brightness(0) invert(1);
	width: 55px;
	max-height: 55px;
	border: solid 1px var(--lightforeground10);
	padding: 10px;
	background-color: var(--lightforeground20);
}

.card_cas_client_top {
	position: relative;
}

.card_cas_client_top .img-cover {
	position: absolute;
	top: 0;
	left: 0;
	object-fit: cover;
	width: 100%;
	height: 100%;
}


.overlay_img_cas_client {
	position: absolute;
	width: 100%;
	height: 100%;
	background: linear-gradient(to bottom, transparent -70%, var(--blueapollo1) 90%);
	top: 0;
	left: 0;
	z-index: 1;
}

.card_cas_client_bottom {
	max-width: 100%;
	background-color: var(--lightforeground20);
	border: solid 1px var(--lightborder14);
	padding: 1.5rem;
	color: var(--lightforeground);
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 14px;
	border-top: none;
	padding-top: 0.8rem;
	flex: 1;
}

.card_cas_client_top {
	position: relative;
	color: var(--lightforeground);
	border: solid 1px var(--lightborder14);
}

.card_cas_client_top_content {
	z-index: 2;
	position: relative;
	padding: 1.5rem;
	padding-bottom: 0.8rem;
	min-height: 180px;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
}

.cas-clients-block {
	background-color: var(--blueapollo1);
}


.cas_client_content {
	padding: 80px 0px;
	display: flex;
	flex-direction: column;
	gap: 40px;
}

.cas-details span {
	display: flex;
	gap: 6px;
}

.cas-details {
	display: flex;
	gap: 20px;
	margin-top: 10px;
}

.cas-details i {
	color: var(--blueapollo3);
}

p.cas-desc {
	margin: 0;
}

.cas-client-left {
	display: flex;
	flex-direction: column;
	gap: 30px;
}

.cas-client-title h3 {
	margin: 0;
}

.cas-desc_longue {
	margin: 0;
}



article.cas-client-card {
	flex: 1;
	display: flex;
	flex-direction: column;
}

span.cta-svg {
	display: flex;
}

/* bloc ressources experts */

.featured-description p {
	display: -webkit-box;
	-webkit-line-clamp: 6;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.ressources-experts-block {
	background-color: var(--blueapollo1);
}

.ressources_expertes_content {
	display: flex;
	padding: 80px 0px;
	flex-direction: column;
	gap: 50px;
}

.ressources-links-grid {
	display: flex;
	gap: 1rem;
	flex-wrap: wrap;
}

a.ressource-link-card {
	transition: 0.2s ease;
	color: var(--lightforeground);
	text-decoration: none;
	display: flex;
	flex-direction: column;
	align-items: center;
	background: var(--lightforeground20);
	padding: 1rem;
	gap: 20px;
	max-width: 200px;
	border: solid 1px var(--lightforeground20);
}

.ressource-link-text {
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
}

.ressource-icon {
	filter: brightness(0) invert(1);
}


img.svg-icon.ressource-icon {
	width: 75px;
	height: 75px;
	object-fit: contain;
	background-color: var(--lightforeground20);
	padding: 20px;
}

.featured-card {
	background-color: var(--lightforeground20);
	border: solid 1px var(--lightforeground20);
	padding: 1rem;
	max-width: 750px;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1rem;
}

header.ressources-header {
	display: flex;
	flex-direction: column;
	gap: 30px;
}

.featured-image img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.featured-image {
	position: relative;
	overflow: hidden;
}

span.post-type {
	color: var(--lightgrey);
	border: solid 1px var(--lightforeground20);
	padding: 4px;
	position: absolute;
	top: 1rem;
	left: 1rem;
	z-index: 1;
	background: var(--lightforeground20);
	display: flex;
	align-items: center;
	gap: 0.5rem;
	backdrop-filter: blur(5px) brightness(0.8);
}

.post-type>i.bi {
	font-size: 2.5ch;
	color: var(--redapollol);
}


.featured-body {
	color: var(--lightforeground);
	display: flex;
	flex-direction: column;
}

h4.featured-title {
	margin: 0;
}



.featured-description {
	margin: 1rem 0px;
	color: var(--lightgrey);
}



a.btn.btn-cas-client {
	color: var(--lightgrey);
}

.ressource-featured-section {
	display: block;
	margin-top: 40px;
}

span.link-sub {
	color: var(--lightgrey);
}

a.ressource-link-card:hover {
	opacity: 0.9;
	transform: scale(1.03);
}

.chaine_valeur_cas_client .frise-item {
	 width: 18rem;
	 padding: 1px;
    display: flex;
    text-decoration: none;
    background: #3b4a63;
    clip-path: polygon(0% 0%, 80% 0%, 100% 50%, 80% 100%, 0% 100%, 20% 50%);
    color: var(--lightforeground);
    transition: transform 200ms cubic-bezier(.4, 0, .25, 1) 0ms, opacity 1s cubic-bezier(.4, 0, .25, 1) 0ms, filter 1s cubic-bezier(.4, 0, .25, 1) 0ms;
}

.chaine_valeur_cas_client .frise-item_inner {
    background: #1f2c3f;
    padding: 50px 20px 50px 80px;
    clip-path: polygon(0% 0%,
			80% 0%,
			100% 50%,
			80% 100%,
			0% 100%,
			20% 50%);
    display: flex;
    flex-direction: column;
    gap: 6px;
}


.chaine_valeur_cas_client .frise-item.is-active {
	background-color: var(--redapollol)!important;
}

.chaine_valeur_cas_client .frise-item_inner {
	width: 100%;
}

.chaine_valeur_cas_client  .frise-item:not(:first-child) {
	    margin-left: -40px;
}

.frise-design.is-inactive {
    opacity: 0.3;
}

.frise-design.is-inactive .item-icon {
	color: var(--lightforeground20);
	background: var(--lightforeground10);
}

.frise-item.is-active .item-icon {
	color: var(--redapollol);
	background: var(--lightredapollol);
}

/* ARCHIVE CAS CLIENTS */

.archive-grid-section .cas-clients-grid {
	display: grid;
	flex-wrap: wrap;
	gap: 1rem;
	grid-template-columns: 1fr 1fr 1fr;
}

.container_hero_archive {
	padding: 80px 0px;
}

section.header_archive {
	background: var(--blueapollo1);
}

.filters_archive {
	background: var(--blueapollo1);
}

.filters_archive_wrapper {
	padding: 1rem;
	background: var(--lightforeground20);
	border: solid 1px var(--lightforeground20);
}

.filter-dropdown {
	flex: 1 1 0;
	min-width: 0;
	padding: 8px;
	height: 40px;
	color: var(--lightgrey);
	background: var(--lightforeground20);
	border: solid 1px var(--lightforeground20);
}

form.filter-form {
	width: 100%;
	display: flex;
	gap: 10px;
	align-items: center;
}

/* SINGLE CAS CLIENT */

.back-to-archive {
	margin-bottom: 2rem;
}

.grid-header-hero h1 {
	margin-top: 0;
}

section.header_cas_client {
	background: var(--blueapollo1);
	color: var(--lightforeground);
}

.header_cas_client_content {
	padding: 80px 0px;
}

.grid-header-hero {
	display: grid;
	grid-template-columns: 1fr 1fr;
	align-items: center;
	gap: 2rem;
}

a.btn-back {
	text-decoration: none;
	color: var(--lightgrey);
}

section.content_cas_client {
	background-color: var(--blueapollo1);
	color: var(--lightforeground);
}

.content_cas_client_content {
	padding: 80px 0px;
}

.box_light_container {
	background-color: var(--lightforeground10);
	border: solid 1px var(--lightforeground10);
	padding: 1rem;
}

.content_cas_client_content {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1rem;
}

.stack-technique-list .tech-icons {
	display: flex;
	gap: 1rem;
}

.stack-technique-list .tech-item i {
	font-size: 60px;
	padding: 1rem;
	background-color: var(--lightforeground10);
}

.stack-technique-list .tech-icons {
	display: flex;
	gap: 1rem;
	flex-wrap: wrap;
}

.stack-technique-list .tech-item {
	text-align: center;
	display: flex;
	flex-direction: column;
	gap: 7px;
}

.container_sous_elements_lightbox {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1rem;
}

.detail-item {
	border: solid 1px var(--lightforeground20);
	padding: 1rem;
	background-color: var(--lightforeground10);
}

.title_tuile {
	margin-bottom: 1rem;
	display: block;
}

.title_tuile_cas_client.title_tuile {
	display: flex;
	align-items: center;
	gap: 10px;
	font-weight: 500;
}

.title_tuile i {
	color: var(--redapollol);
	font-size: 24px;
}

.small_titre_detail i {
	color: var(--redapollol);
}

.small_titre_detail {
	font-weight: 200;
}

span.tag-item, .tag-item {
	border: 1px solid var(--lightforeground20);
	padding: 2px 5px;
	text-decoration: none;
	color: var(--lightgrey);
}

.tag-item:hover {
	color: var(--lightgrey);
}

.featured-image-single-hero img {
	aspect-ratio: 16/9;
	object-fit: cover;
	border: solid 2px var(--lightforeground20);
}

/* Archive avis clients */

.testimonials_with_sidebar .testimonials-grid {
	grid-template-columns: 1fr;
}

.testimonials_with_sidebar {
	grid-template-columns: 2fr 1fr;
	display: grid;
	gap: 1rem;
	padding: 80px 0px;
}

.sidebar_content_testimonials {
	display: flex;
	flex-direction: column;
	gap: 1rem;
	position: sticky;
	top: calc( 1rem + 68px );
}

.bullet-list,
.certif-list,
.links-list {
	display: flex;
	flex-direction: column;
	margin-top: 1rem;
	gap: 10px;
}


.links-list {
	display: flex;
	flex-direction: column;
}

.sidebar_testimonials h3 {
	color: var(--lightforeground);
	font-weight: 500;
	margin: 0;
}

.sidebar_testimonials p.subtitle {
	margin: 0;
	color: var(--lightgrey);
}

.sidebar_testimonials {
	position: relative;
}

.bullet_point_sidebar_element {
	display: flex;
	gap: 6px;
	color: var(--lightgrey);
}


.bullet-list i {
	color: var(--blueapollo3);
	font-size: 16px;
}

.certif-list i {
	color: var(--redapollol);
	font-size: 17px;
}

.links-list a {
	display: flex;
	gap: 1rem;
	text-decoration: none;
	color: var(--lightgrey);
	align-items: center;
}

.contact-info {
	display: flex;
	flex-direction: column;
	gap: 1rem;
	margin-top: 1rem;
}

.contact-info .btn {
	justify-content: center;
}

span.badge-tag.text-xs {
	color: var(--lightgrey);
	border: solid 1px var(--lightforeground20);
	padding: 1px 5px;
	background: var(--lightforeground10);
}

.testimonial-tags {
	margin-top: 1rem;
}

.testimonial_meta_container {
	width: 100%;
	display: flex;
	justify-content: space-between;
	align-items: center;
}

a.author-linkedin {
	text-decoration: none;
	display: flex;
	gap: 8px;
	align-items: center;
	background: var(--lightforeground20);
	padding: 4px 8px;
	border: solid 1px var(--lightforeground20);
	color: var(--lightforeground);
}

.mention_form_sidebar {
	text-align: center;
	color: var(--lightgrey);
	margin-top: 1rem;
}

.header_archive .reassurance-grid {
	margin-top: 2rem;
}

.content_logo_clients.frise_archive {
	padding: 10px 0px;
}

.sidebar_content_testimonials .feature-icon i {
	font-size: 32px;
}

.sidebar_content_testimonials .feature-icon {
	display: flex;
	color: var(--redapollol);
	background: var(--lightredapollol);
	padding: 8px;
	aspect-ratio: 1;
	max-width: 70px;
	align-items: center;
	justify-content: center;
	margin: auto;
	margin-bottom: 0.5rem;
}


.main_head_sidebar {
	text-align: center;
}

p.subtitle.text-sm.main_head_sidebar {
	margin-bottom: 1.5rem;
}

.offre-icon {
	filter: brightness(0) invert(1);
	width: 26px;
}

/* Template solution DSI */

.bullet_point_content {
	padding: 80px 0px;
	display: flex;
	flex-direction: column;
	gap: 40px;
}

.solution-icon-main svg {
	width: 13px;
}

.solution-icon-main {
	color: var(--redapollol);
	border: solid 1px;
	display: flex;
	width: fit-content;
	padding: 3px 6px;
	gap: 6px;
	margin-bottom: 1rem;
}

section.section_bullet_point_DSI {
	background: var(--blueapollo1);
	color: var(--lightforeground);
}

.bullet_point_content {
	padding: 80px 0px;
}

.grid_bullet_points_dsi {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1rem;
}

.description-dsi strong {
	color: var(--redapollol);
}

ul.bullet_points_list {
	list-style: none;
	padding: 0;
	margin: 0;
	display: flex;
	flex-direction: column;
	gap: 1rem;
	margin-top: 1rem;
}

.bullet_points_list svg {
	color: var(--redapollol);
	vertical-align: text-top;
	margin-right: 3px;
}

.content_section_cas_clients_solutions {
	padding: 80px 0px;
}

.title_bullet_main>svg {
	width: 24px;
	height: 24px;
	vertical-align: sub;
	color: var(--redapollol);
}

section.section_cas_clients {
	background-color: var(--blueapollo1);
}

.content_section_cas_clients_solutions {
	padding: 80px 0px;
	display: flex;
	gap: 40px;
	flex-direction: column;
}

/* Auto-eval */

section.section_autoeval_global {
	background-color: var(--blueapollo1);
}

.content_autoeval_global {
	padding: 80px 0px;
}

.autoeval-grid {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 2rem;
}

.autoeval-info {
	color: var(--lightforeground);
	display: flex;
	flex-direction: column;
	gap: 2rem;
}

.diag-feature-item {
	gap: 10px;
	display: flex;
	align-items: center;
}

.diag-features-list {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1rem;
}

.custom-bullet-list {
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
	margin-top: 1rem;
}


.autoeval-image-wrapper {
	position: relative;
	height: 100%;
}

.autoeval-visual {
	height: 100%;
	position: relative;
}

.autoeval-image-wrapper img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	z-index: 0;
}

.image-overlay-content {
	z-index: 1;
	position: absolute;
	bottom: 1rem;
	left: 1rem;
	color: var(--lightforeground);
}

.feat-icon svg {
	color: var(--redapollol);
}

.diag-bullets i {
	color: var(--redapollol);
}

.overlay_card {
	position: absolute;
	width: 100%;
	height: 100%;
	background: linear-gradient(to bottom, transparent 30%, var(--blueapollo1) 80%);
	top: 0;
	left: 0;
	z-index: 1;
}

.image-overlay-content p {
	margin: 0;
}

.autoeval-action {
	display: flex;
}

.diag-bullets h3 {
	margin: 0;
}

h3.diag-title {
	margin: 0px;
}

.content_autoeval_global {
	padding: 80px 0px;
	display: flex;
	flex-direction: column;
	gap: 40px;
}

header.autoeval-header {
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

span.custom-bullet-item {
	display: flex;
	align-items: center;
	gap: 9px;
}


/* Podcast */

section.podcast_main {
	background: var(--blueapollo1);
}

.podcast_content_main {
	padding: 1rem 0px;
}

.podcast_main {
	color: var(--lightforeground);
}

.title_ressource_container {
	display: flex;
	align-items: center;
	gap: 1rem;
}

.title_ressource_container i {
	font-size: 58px;
	color: var(--redapollol);
}

.podcast_desc {
	color: var(--lightgrey);
}


.podcast_description {
	max-width: 900px;
}

/* Limite à 6 lignes avec un fondu ou une coupure propre */
.js-description-container.is-collapsed {
	display: -webkit-box;
	-webkit-line-clamp: 5;
	/* Nombre de lignes souhaitées */
	-webkit-box-orient: vertical;
	overflow: hidden;
}

/* Optionnel : style du bouton */
.btn-show-more:hover {
	text-decoration: underline;
}

button#toggle-desc {
	color: var(--blueapollo3) !important;
}

.back_to_archive a {
	text-decoration: none;
	color: var(--lightgrey);
}


.ressource_related {
	background-color: var(--blueapollo1);
}


/* Archive podcasts */

section.archive_ressources {
	background: var(--blueapollo1);
}


.archive_ressources .featured-card,
.related_podcasts_wrapper .featured-card {
	display: flex;
	flex-direction: column;
}

.archive_ressources .featured-image,
.related_podcasts_wrapper .featured-image {
	width: 100%;
	height: 200px;
}

.related_podcasts_wrapper {
	color: var(--lightforeground);
}

/* Template livre blanc */

.download_link {
	display: flex;
}

/* Archive livres blancs */

.placeholder-image {
	height: 100%;
	width: 100%;
	background: var(--blueapollo1);
	display: flex;
	align-items: center;
	justify-content: center;
}

.featured-image .bi {
	font-size: 6ch;
	color: var(--lightgrey);
}

/* article technique */

section.article_tech_main {
	background: var(--blueapollo1);
	color: var(--lightforeground);
}

.container_article_technique,
.container_event {
	max-width: 800px;
}

.container_article_technique .entry-content,
.container_event .entry-content {
	background: none;
}

.article_featured_image img {
	width: 100%;
	max-height: 450px;
	object-fit: cover;
}

/* Evenement */

section.event_main_section {
	background: var(--blueapollo1);
	color: var(--lightforeground);
}

.related_events_section {
	background: var(--blueapollo1);
	color: var(--lightforeground);
}

.event_content_wrapper {
	padding: 1rem 0px;
}

.event_meta_bar {
	display: flex;
	flex-wrap: wrap;
	gap: 1.5rem;
}

.tag_container {
	display: flex;
	flex-wrap: wrap;
	gap: 1.5rem;
}

.event_registration_wrapper {
	display: flex;
}

/* archive event + actualite */

.filter-form-toggle {
	display: flex;
	justify-content: center;
}

.toggle-group {
	display: inline-flex;
	background: var(--lightforeground10);
	padding: 5px;
	border: 1px solid var(--lightforeground20);
	gap: 1rem;
}

.toggle-item {
	cursor: pointer;
	position: relative;
}

.toggle-item input {
	position: absolute;
	opacity: 0;
	/* On cache le bouton radio */
	cursor: pointer;
}

.toggle-item span {
	display: inline-block;
	padding: 8px 25px;
	font-size: 14px;
	font-weight: 500;
	color: var(--lightforeground);
	transition: all 0.3s ease;
	color: var(--lightforeground);
	border: solid 1px transparent;
}

.toggle-item span:hover {
	background: var(--lightforeground10);
}

.toggle-item.active span,
.toggle-item input:checked+span {
	background: var(--lightforeground20);
	color: var(--lightforeground);
	border: solid 1px var(--lightforeground20);
}

.pagination {
	color: var(--lightforeground);
}

a.page-numbers {
	color: var(--lightgrey);
}

/* Avis salaries */

.rating-row {
	position: relative;
}

.rating-row .star-foreground {
	right: 0;
}

/* Ligne de chaque critère */
.detail-rating-row {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

.detail-rating-label {
	font-size: 0.8rem;
	color: var(--lightforeground);
}

/* Système d'étoiles spécifique au détail */
.detail-star-rating {
	position: relative;
	display: inline-block;
	font-size: 14px;
	/* Plus petit que la note principale */
	line-height: 1;
	letter-spacing: 2px;
}

.detail-star-background {
	color: #e9ecef;
	/* Gris clair pour les étoiles vides */
}

.detail-star-foreground {
	position: absolute;
	top: 0;
	left: 0;
	white-space: nowrap;
	overflow: hidden;
	color: #ffb400;
	/* Ta couleur d'étoile (ex: ambre/jaune) */
}


.salary-ratings-detail {
	width: 100%;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1rem;
	margin: 2rem 0;
}

.positive-points {
	display: flex;
	flex-direction: column;
	gap: 5px;
}

.positive-points i {
	color: var(--blueapollo3);
}

.title_positive {
	display: flex;
	gap: 8px;
}


/* Template offre emploi */

section.filarianne {
	background: var(--blueapollo1);
}

.offre-emploi-content {
	display: grid;
	gap: 2rem;
	grid-template-columns: repeat(3, minmax(0px, 1fr));
}

.offre-emploi-main-container {
	grid-column: span 2 / span 2;
	display: flex;
	flex-direction: column;
	gap: 2rem;
}

.offre-emploi-top {
	color: var(--lightforeground);
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

.title_offre_container {
	display: flex;
	align-items: center;
	gap: 1rem;
	position: relative;
}

.icon_offre_emploi i {
	font-size: 38px;
	display: flex;
}

.icon_offre_emploi {
	color: var(--redapollol);
	background: var(--lightredapollol);
	display: flex;
	padding: 12px;
}

.title_offre_container h1 {
	margin: 0;
}

p.job-reference {
	margin: 0;
	color: var(--lightgrey);
}

.features-job {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

p.title_competence.job {
	margin: 0;
}

section.offre-emploi-main-wrapper {
	background: var(--blueapollo1);
}

.container_tags_job {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.container_tags_job span {
	border: solid 1px var(--lightforeground20);
	padding: 4px 8px;
}

.container_buttons_offre {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

span.date_publish {
	color: var(--lightgrey);
	display: flex;
	align-items: center;
	gap: 5px;
}

.competences-job {
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}


.offre-emploi-top .features-job i.bi {
	color: var(--redapollol);
	margin-right: 2px;
}

.offre-emploi-the-content {
	color: var(--lightforeground);
}

.title_tile_lightbox {
	display: flex;
	align-items: center;
	gap: 0.5rem;
	font-weight: 600;
}

.title_tile_lightbox p {
	margin: 0;
}

.icon_title_tile i {
	color: var(--redapollol);
	background-color: var(--lightredapollol);
	padding: 8px;
	display: flex;
}

.container_tags_job_wide {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 1rem;
}

.container_tags_job_wide .detail-item {
	display: flex;
	gap: 8px;
}

.container_tags_job_wide i {
	color: var(--redapollol);
}

.sidebar-emploi-content {
	display: flex;
	flex-direction: column;
	gap: 1rem;
	position: sticky;
	top: calc( 1rem + 68px );
}

.container_head_sidebar_emploi .main_head_sidebar {
	color: var(--lightforeground);
	font-weight: 500;
	margin: 0;
}

.container_head_sidebar_emploi p {
	margin: 0;
	color: var(--lightgrey);
}

.container_head_sidebar_emploi {
	text-align: center;
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}


/* CSS rapide pour la gestion de l'affichage */
.advantage-hidden {
	display: none !important;
}

.advantage-item {
	display: flex;
	align-items: center;
	gap: 10px;
	margin-bottom: 8px;
}

.adv-icon svg {
	width: 15px;
	height: 15px;
}

.btn-show-more {
	background: none;
	border: none;
	color: var(--redapollol);
	/* Ajuste selon ta charte */
	padding: 0;
	cursor: pointer;
	font-size: 0.9em;
	text-decoration: none;
	margin-top: 10px;
}

p.title_avantages {
	margin: 0;
}

span.adv-icon {
	color: var(--redapollol);
	background: var(--lightredapollol);
	padding: 6px;
	display: flex;
}

.avantages {
	color: var(--lightforeground);
}

.inner_sidebar_container {
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

p.title_avantages {
	margin: 0px 0px 10px 0px;
}

.sidebar-emploi-content .btn-primary {
	justify-content: center;
}

.image_eval_container {
	margin: -1rem -1rem 0 -1rem;
}

.image_eval_container img {
	max-height: 180px;
	width: 100%;
	object-fit: cover;
}

.box_evaluation_apollo {
	color: var(--lightgrey);
}

.bullets_eval {
	display: flex;
	flex-direction: column;
	margin-bottom: 1rem;
	gap: 0.5rem;
}

h3.heading_eval {
	margin-top: 10px;
}

.box_apollo_presentation {
	color: var(--lightgrey);
}

.container_infos_entreprise.text-sm {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 1rem;
}

.info_entreprise_item {
	display: flex;
	flex-direction: column;
}

.rating_container {
	display: flex;
	gap: 0.5rem;
	margin-top: 1rem;
	align-items: center;
}

.info_label {
	font-weight: 600;
}

span.info_value {
	font-weight: 300;
}

.box_apollo_presentation a.custom-logo-link {
	max-width: 200px;
}

.stars {
	color: #ffc107;
}

.cta_offre_emploi {
	background-color: var(--blueapollo1);
}

.inner_content_cta_offre_emploi {
	padding: 80px 0px;
}

.container_cartes_features {
	color: var(--lightforeground);
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 2rem;
	margin: 2rem 0;
}

.cta_lien_container {
	display: flex;
}

.carte_feature p {
	margin: 0;
}

.carte_feature h3 {
	margin: 0;
}

.feature_icon svg {
	width: 60px;
	height: 60px;
	color: var(--redapollol);
	background: var(--lightredapollol);
	padding: 12px;
}

.container_title_cta_emploi {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.archive_offres_emploi {
	background-color: var(--blueapollo1);
}

.content_archive_emploi_double_sidebar {
	display: grid;
	grid-template-columns: 1fr 3fr 1fr;
	gap: 1rem;
}

.share_button {
	margin-left: auto;
}

button#native-share-btn {
	background: none;
	color: var(--lightgrey);
	border: solid 1 px var(--lightgrey);
}

button#native-share-btn:hover {
	cursor: pointer;
}

/* Archive offres emploi */

.center_emploi {
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}

.title_offre_container a {
	text-decoration: none;
	color: var(--lightforeground);
}

.card-offre-emploi {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.container_buttons_offre.card {
	display: flex;
	flex-direction: column;
	gap: 1rem;
}

a.card-offre-emploi {
	text-decoration: none;
	transition: 0.2s;
}

a.card-offre-emploi:hover {
	box-shadow: rgba(0, 0, 0, 0.24) 0px 3px 8px;
	opacity: 0.9;
}

.featured-badge.text-xs.mb-3 {
	color: var(--blueapollo3);
}

.featured-sidebar-card a.btn-primary {
	width: 100%;
}

.featured-sidebar-card .features-job {
	gap: 0.5rem;
	font-size: 14px;
}

.sidebar-emploi-content a.btn.btn-primary {
	font-size: 14px;
}

/* Nous sommes Apollo */

.nous-sommes-apollo-main-container {
    grid-column: span 2 / span 2;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
    /* Très important : remplit les trous automatiquement */
    grid-auto-flow: dense; 
}

.tile_full_width {
    grid-column: span 3;
}

/* Style de base des tuiles images */
.tile-gallery {
    padding: 0; /* On retire le padding habituel pour que l'image soit bord à bord */
    overflow: hidden;
    height: 300px; /* Hauteur de base pour une rangée */
}

.tile-gallery img {
    width: 100%;
    height: 100%;
    object-fit: cover; /* L'image remplit la zone sans se déformer */
    display: block;
    transition: transform 0.3s ease;
}

/* Variantes de tailles */
.tile-vertical {
    grid-row: span 2; 
    height: 616px; /* (300px * 2) + 1rem de gap */
}

.tile-horizontal {
    grid-column: span 2;
}

/* Responsive : On repasse sur 1 ou 2 colonnes sur mobile */
@media (max-width: 768px) {
    .nous-sommes-apollo-main-container {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
    .tile_full_width, .tile-horizontal, .tile-vertical {
        grid-column: span 2;
        grid-row: span 1;
        height: 250px;
    }
}

.nous_somes_apollo_introduction {
    color: var(--lightforeground);
}

.container_cta_btn {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
}

.nous_sommes_apollo_cta {
    color: var(--lightforeground);
}

.tile-avis {
    text-decoration: none;
    color: var(--lightforeground);
    height: 300px;
	position: relative;
	transition: 0.2s;
}

a.box_light_container.tile-avis:hover {
    opacity: 0.8;
}

span.avis-stars {
    color: rgb(255, 193, 7);
}

span.read-more {
    position: absolute;
    bottom: 1rem;
    right: 1rem;
}

.offres-grid-inner {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 1rem;
}

.nous-sommes-apollo-main-container h3, .nous-sommes-apollo-main-container h2 {
    margin: 0;
}

.bloc-offres-intermediaire {
    color: var(--lightforeground);
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.offre-item-card {
    border: solid 1px var(--lightforeground20);
    padding: 1rem;
    background: var(--lightforeground10);
    display: flex;
    flex-direction: column;
}


span.voir_offre {
    margin-top: auto;
    text-align: right;
    text-decoration: none;
    color: var(--lightforeground);
}

.nous_somes_apollo_introduction>*:last-child {
    margin-bottom: 0;
}


a.tile-avis:hover {
    color: var(--lightforeground);
}

span.read-more {
    margin-top: 1rem;
    display: block;
}

.avis-meta-info-tile i {
    font-size: 20px;
    vertical-align: middle;
    color: var(--redapollol);
    background: var(--lightredapollol);
    padding: 5px;
}

.offre-info h4 {
    display: flex;
    align-items: center;
    gap: 10px;
}

.offre-info h4 i {
    color: var(--redapollol);
    font-size: 20px;
    background-color: var(--lightredapollol);
    display: flex;
    padding: 5px;
}

a.offre-item-card {
    text-decoration: none;
    color: var(--lightforeground);
	transition: 0.2s;
}

a.offre-item-card:hover {
    opacity: 0.8;
}

.cta_container_custom_nous_sommes {
    display: flex;
}

.flex-vertical-cta {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.sidebar-emploi-content a.btn.btn-secondary {
    justify-content: center;
}

.nous_somes_apollo_introduction  p {
    color: var(--lightgrey);
}

.nous_sommes_apollo_cta  h3 {
    font-size: 1.5rem;
    line-height: 2rem;
}

section.header_nous_sommes_apollo {
    max-height: 200px;
    display: flex;
    position: relative;
    overflow: hidden;
}

img.cover_nous_sommes_apollo {
    width: 100%;
    object-fit: cover;
}

.tile-certifications {
    color: var(--lightforeground);
	height: 300px;
}

.certif-logo {
    width: 40px;
    height: 40px;
    object-fit: contain;
    display: flex;
}

.certif-item {
    display: flex;
    gap: 10px;
    align-items: center;
    border: solid 1px var(--lightforeground20);
    padding: 0.5rem;
    background: var(--lightforeground10);
}


.certifs-list {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}

.tile-certifications {
    color: var(--lightforeground);
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

.nous_sommes_apollo_content {
    padding: 80px 0px;
}

/* bloc chiffres */ 

.chiffres-block {
    background: var(--blueapollo1);
}

.content_bloc_chiffres {
    padding: 80px 0px;
}

.reassurance-icon {
    display: flex;
    color: var(--redapollol);
    background: var(--lightredapollol);
    padding: 8px;
    margin-bottom: 1rem;
}

.reassurance-icon svg {
    inline-size: 40px;
    block-size: 40px;
}


/* blocs recompenses et certifications */ 

.recompenses-block {
    background: var(--blueapollo1);
}


.les-recompenses {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 1rem;
}

.content_recompenses {
    padding: 80px 0px;
}

.recompense-item {
    color: var(--lightforeground);
}

.recompense-logo {
    display: flex;
    max-height: 100px;
    max-width: 100px;
    aspect-ratio: 1;
    object-fit: contain;
}

.recompense-logo >img {
	object-fit: contain;
}

span.recompense-year {
    color: var(--redapollol);
    background: var(--lightredapollol);
    padding: 2px 4px;
    margin-bottom: 1rem;
    display: block;
    width: fit-content;
}

.recompense-tags {
    border: solid 1px var(--lightforeground20);
    padding: 4px 8px;
    width: fit-content;
}

.content_recompenses {
    display: flex;
    flex-direction: column;
    gap: 40px;
}

/* Tax secteur d'activite */ 

.tax-secteur-dactivite .cas-clients-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(350px, 1fr));
}

.btn-container {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
}

.section_formulaire_generique {
	background-color: var(--blueapollo1);
}

/* Formulaire générique */ 

.content_formulaire_generique {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: start;
    gap: 1rem;
	padding: 80px 0px;
}

.content_formulaire_generique h2.gform_title {
    font-size: 34px;
    line-height: 34px;
    margin: 0;
    font-weight: 500;
    color: var(--lightforeground);
}

p.gform_required_legend {
    display: none;
}

.gfield_label {
    color: var(--lightforeground)!important;
}

.gform-field-label--type-sub {
    color: var(--lightgrey)!important;
}

.ginput_counter {
    display: none!important;
}

.content_formulaire_generique input {
    border-radius: 0!important;
}

.gform-theme--foundation .gform_fields {
    row-gap: 1rem!important;
}

.formulaire_global input, .formulaire_global textarea {
    background: var(--lightforeground10)!important;
    color: var(--lightforeground)!important;
}

.formulaire_global input#gform_submit_button_1 {
    background: var(--redapollod)!important;
    text-decoration: none;
    padding: 12px 20px;
    font-weight: 500;
    letter-spacing: -4%;
    display: flex;
    align-items: center;
}

.form.form_half.box_light_container {
    padding: 2rem;
}

body .gform_wrapper ::placeholder,
body .gform_wrapper ::-webkit-input-placeholder,
body .gform_wrapper input[placeholder] {
  color: var(--lightgrey);
  opacity: 0.8;
}

.step-item {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.infos_form.form_half {
    color: var(--lightforeground);
}

.step-icon {
    color: var(--redapollol);
    background: var(--lightredapollol);
    display: flex;
    padding: 8px;
}

.step_text p {
    margin: 0;
}

.process-steps {
    display: flex;
    flex-direction: column;
    gap: 1rem;
}

p.step_description {
    color: var(--lightgrey);
}

.cartouche-contact p {
    margin: 0;
}

.separateur_horizontal {
    width: 100%;
    height: 1px;
    background: var(--lightforeground20);
    margin: 2rem 0px;
}

.cartouche-contact {
    display: flex;
    flex-direction: column;
    flex-wrap: wrap;
    gap: 1rem;
}

.cartouche-contact>p {
    display: flex;
    gap: 10px;
}

.cartouche-contact a {
    text-decoration: none;
    color: var(--lightforeground);
}

.cartouche-contact i {
    color: var(--redapollol);
}

.infos_form.form_half.box_light_container {
    padding: 2rem;
}

.infos_form.form_half.box_light_container h2 {
    margin: 0;
    margin-bottom: 1.5rem;
}

p.step_title {
    font-weight: 700;
}


.gform_confirmation_message {
    color: var(--lightforeground)!important;
}


/* Essais header */ 
/* --- COMPORTEMENT MOBILE (Par défaut) --- */
.site-header {
    position: relative; /* Le header suit le scroll normalement sur mobile */
    width: 100%;
}

/* --- COMPORTEMENT DESKTOP (Ex: à partir de 1024px) --- */
@media screen and (min-width: 1024px) {
    .site-header {
        position: fixed;
        top: 0;
        left: 0;
        z-index: 9999;
        transition: transform 0.3s ease-in-out;
    }

    /* On n'active l'animation que sur desktop */
    .header-scrolled-down {
        transform: translateY(-59px); /* Ajustez selon la hauteur du subheader */
    }

    .header-scrolled-up {
        transform: translateY(0);
    }

    /* On ajoute le padding au body seulement quand le header est fixe */
    body {
        padding-top: 120px; 
    }
}

html {
    /* Remplacez 120px par la hauteur totale de votre header (Main + Subheader) */
    scroll-padding-top: 120px;
}

/* Si vous avez désactivé le header fixe sur mobile, remettez la valeur à 0 */
@media screen and (max-width: 1023px) {
    html {
        scroll-padding-top: 0;
    }
}

/* Test formulaire principal */ 

/* Rend la progression de la barre plus fluide */
.gf_progressbar_percentage {
    transition: width 0.6s ease-in-out !important;
    background-color: #0073aa; /* Ta couleur personnalisée */
}

.main_form * {
    color: var(--lightforeground)!important;
}

/* 1. On cache la checkbox native tout en la gardant accessible */
.gfield_checkbox .gchoice input[type="checkbox"] {
    position: absolute;
    opacity: 0;
    width: 0;
    height: 0;
}

/* 2. On transforme le conteneur en grille pour les tuiles */
.ginput_container_checkbox .gfield_checkbox {
    display: grid !important;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr))!important;
    gap: 15px;
    padding: 10px 0;
}

/* 3. On stylise le Label pour en faire une tuile */
.gfield_checkbox .gchoice label {
    display: flex !important;
    flex-direction: column !important;
    align-items: center;
    justify-content: center;
    padding: 15px 15px !important;
    border: 2px solid #e5e7eb !important; /* Couleur grise légère */
    border-radius: 12px !important;
    background-color: #ffffff;
    cursor: pointer;
    transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
    margin: 0 !important;
    max-width: none !important;
    text-align: center;
    font-weight: 500;
}

.gfield_checkbox .gchoice label > span {
	transition: all 0.25s cubic-bezier(0.4, 0, 0.2, 1) !important;
}

/* 4. Style de l'icône Bootstrap */
.gfield_checkbox .gchoice label i {
    font-size: 2rem;
    margin-bottom: 10px;
    display: block;
    color: #6b7280;
    transition: color 0.25s ease;
}

/* 5. ÉTAT SURVOL (Hover) */
.gfield_checkbox .gchoice label:hover {
    border-color: var(--redapollol)!important;
    background-color: #f9fafb;
}

/* 6. ÉTAT SÉLECTIONNÉ (Coché) */
/* Quand l'input est coché, on cible le label qui suit (+) */
.gfield_checkbox .gchoice input[type="checkbox"]:checked + label {
    border-color: var(--redapollol)!important;
    background-color: var(--blueapollo1);
    box-shadow: 0 0 0 1px var(--redapollol)!important; /* Optionnel : renforce le contour */
}

/* On change la couleur de l'icône et du texte quand c'est coché */
.gfield_checkbox .gchoice input[type="checkbox"]:checked + label i,
.gfield_checkbox .gchoice input[type="checkbox"]:checked + label, .gfield_checkbox .gchoice input[type="checkbox"]:checked + label > span  {
    color: var(--redapollol)!important;
}

.gform-theme--framework .gfield--type-choice .gchoice {
display: block!important;

}

.gfield_checkbox .gchoice label {
    background: var(--lightforeground10)!important;
    border: solid var(--lightforeground20) 1px!important;
	border-radius: 0px!important;
}

.gform-theme--framework .gf_progressbar {
    background-color: var(--lightforeground10)!important;
}

.main_form label > span {
	font-size: 10px;
}

.form_tech .ginput_container_checkbox .gfield_checkbox {
    grid-template-columns: repeat(auto-fit, minmax(140px, 1fr))!important;
}

#gf-modal-content h2 {
    color: var(--lightforeground);
}

.main_form .gform_next_button {
	background: var(--lightforeground20)!important;
}


.main_form input, .main_form textarea {
    background: var(--lightforeground10)!important;
    color: var(--lightforeground)!important;
	border-radius: 0px!important;
}

.main_form input#gform_submit_button_1 {
    background: var(--redapollod)!important;
    text-decoration: none;
    padding: 12px 20px;
    font-weight: 500;
    letter-spacing: -4%;
    display: flex;
    align-items: center;
}

.main_form .gform_previous_button {
    border: transparent!important;
}

.main_form .gform_next_button, .main_form #gform_submit_button_2 {
	margin-left: auto!important;
}

/* Cache le spinner de chargement par défaut */
.gform-loader {
    display: none !important;
}

.gform-theme--framework .gf_progressbar .percentbar_blue {
	background-color: var(--redapollol)!important;
}

div#mon-recap-checkbox {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-top: 0.3rem;
}

span.badge-recap {
    display: flex;
    background: var(--redapollod);
    padding: 3px 5px;
}

.tip_besoin_conseils {
    margin: 1rem 0;
}


#gf-modal-content h2.gform_title {
    margin-top: 0;
}

.heading_conseils {
    display: flex;
    flex-wrap: wrap;
    gap: 5px;
}

/* Nos Agences */ 

.agences-grid {
    max-width: 800px;
    margin: auto;
    display: grid;
    gap: 1rem;
}

.agence-image {
    width: 100%;
    max-height: 250px;
    display: flex;
    overflow: hidden;
}

.agence-image img {
    width: 100%;
    object-fit: cover;
    object-position: top;
}

.agence-item {
    color: var(--lightforeground);
}

section.section-agences {
    padding: 80px 0px;
    background: var(--blueapollo1);
}

.agence-details a {
	text-decoration: none;
	color: var(--lightforeground);
}

.agence-details i {
    color: var(--redapollol);
    margin-right: 5px;
}