/**
 * Theme Name:     GeneratePress Child
 * Author:         Tom Usborne
 * Template:       generatepress
 * Text Domain:	   generatepress-child
 * Description:    GeneratePress is a lightweight WordPress theme built with a focus on speed and usability. Performance is important to us, which is why a fresh GeneratePress install adds less than 10kb (gzipped) to your page size. We take full advantage of the block editor (Gutenberg), which gives you more control over creating your content. If you use page builders, GeneratePress is the right theme for you. It is completely compatible with all major page builders, including Beaver Builder and Elementor. Thanks to our emphasis on WordPress coding standards, we can boast full compatibility with all well-coded plugins, including WooCommerce. GeneratePress is fully responsive, uses valid HTML/CSS, and is translated into over 25 languages by our amazing community of users. A few of our many features include 60+ color controls, powerful dynamic typography, 5 navigation locations, 5 sidebar layouts, dropdown menus (click or hover), and 9 widget areas. Learn more and check out our powerful premium version at https://generatepress.com
 */


.site-header {
    position: sticky;
    top: 0;
    z-index: 10000;
    background: #ffffff;
    box-shadow: rgb(0 0 0 / 9%) 0px 2px 8px, rgb(0 0 0 / 18%) 0px -4px 9px;
}

nav#site-navigation {
	background: #ffffff !important;
}

.inside-header {
	position: relative;
}

/* Navigation mobile permanente */
.mobile-menu-control-wrapper,
.mobile-menu-control-wrapper .menu-toggle {
	display: flex;
	align-items: center;
}

.mobile-menu-control-wrapper {
	position: absolute;
	top: 50%;
	right: 40px;
	justify-content: center;
	margin-left: 0;
	transform: translateY(-50%);
}

.mobile-menu-control-wrapper .menu-toggle {
	justify-content: center;
}

body:not(.has-inline-mobile-toggle) .main-navigation .menu-toggle {
	display: flex;
	align-items: center;
	justify-content: center;
}

button.menu-toggle,
.mobile-menu-control-wrapper button.menu-toggle {
	width: auto;
	color: #133370;
	background: transparent;
	border: 0;
	box-shadow: none;
}

button.menu-toggle .gp-icon,
.mobile-menu-control-wrapper button.menu-toggle .gp-icon {
	font-size: 2em;
}

button.menu-toggle:hover,
button.menu-toggle:focus,
button.menu-toggle:active,
.mobile-menu-control-wrapper button.menu-toggle:hover,
.mobile-menu-control-wrapper button.menu-toggle:focus,
.mobile-menu-control-wrapper button.menu-toggle:active {
	color: #133370;
	background: transparent;
	box-shadow: none;
}

#site-navigation:not(.toggled) .main-nav > ul {
	display: none;
}

#site-navigation.toggled {
	position: absolute;
	top: 100%;
	left: 50%;
	z-index: 9999;
	width: 100vw;
	margin-top: 0 !important;
	background: #ffffff;
	transform: translateX(-50%);
}

.has-inline-mobile-toggle #site-navigation.toggled {
	margin-top: 0 !important;
}

#site-navigation.toggled .inside-navigation {
	display: flex;
	align-items: flex-start;
	justify-content: center;
	padding: 0 24px 24px;
	box-sizing: border-box;
}

#site-navigation.toggled .main-nav {
	width: auto;
	max-width: 100%;
}

#site-navigation.toggled .main-nav > ul {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 0;
	width: auto;
	margin: 0;
	padding: 0;
}

#site-navigation.toggled .main-nav li {
	width: auto;
	text-align: center;
}

#site-navigation.toggled .main-nav ul li a {
	font-size: inherit;
	line-height: 60px;
	font-weight: inherit;
	text-align: center;
	text-transform: none;
}

#site-navigation.toggled .main-nav ul li a:hover,
#site-navigation.toggled .main-nav ul li a:focus {
	text-decoration: none;
}

.has-inline-mobile-toggle #site-navigation .menu-toggle {
	display: none !important;
}

.main-navigation .menu-toggle .mobile-menu {
	display: none;
}

.featured-image.page-header-image.grid-container.grid-parent {
    display: none;
}
.site-content {
    display: block;
}

html,
body {
	min-height: 100%;
}

body {
	display: flex;
	flex-direction: column;
	min-height: 100vh;
}

#page {
	flex: 1 0 auto;
}

.site-footer {
	flex-shrink: 0;
}

.site-info {
	background: #ffffff;
	color: #133370;
	padding: 0;
}

.site-info .inside-site-info {
	width: 100%;
	max-width: none;
	padding: 0;
}

.site-info .copyright-bar {
	width: 100%;
}

.site-info a {
	color: #133370;
}

.industrie-footer-credit {
	width: 100%;
	color: #133370;
	text-align: center;
}

.industrie-footer-copyright {
	width: 100%;
	margin: 0;
	padding: 12px 24px;
	box-sizing: border-box;
	background: #133370;
	color: #ffffff;
	font-size: 14px;
}

.industrie-footer-logos {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 18px;
	padding: 20px 24px;
	background: #ffffff;
}

.industrie-footer-logos img {
	display: block;
	width: auto;
	height: 50px;
	object-fit: contain;
}



/* Accueil magazine */

.accueil-magazine {
	margin: 0;
	padding: 0;
}

.accueil-magazine-layout {
	display: grid;
	grid-template-columns: 50% 50%;
	width: 100%;
	align-items: stretch;
}

.accueil-cover {
	position: relative;
	background: #f2f2f2;
	overflow: hidden;
}

.accueil-cover-image {
	display: block;
	width: 100%;
	height: auto;
}

.accueil-summary {
	display: flex;
	align-items: center;
	background: #ffffff;
	padding: clamp(28px, 5vw, 50px);
	overflow: hidden;
	box-sizing: border-box;
}

.accueil-summary-inner {
	width: 100%;
	max-width: 720px;
	margin: 0 auto;
}

.accueil-summary-main-title {
	margin: 0 0 44px;
	color: #133370;
	font-size: clamp(30px, 3vw, 38px);
	line-height: 1;
	font-weight: 800;
	letter-spacing: 0;
}

.accueil-summary-section {
	--section-color: #111111;
	margin: 0 0 clamp(22px, 3vw, 30px);
}

.accueil-summary-section:last-child {
	margin-bottom: 0;
}

.accueil-summary-section-header {
	display: block;
	margin: 0 0 12px;
}

.accueil-summary-logo {
	width: 96px;
	margin: 0 0 4px;
}

.accueil-summary-logo-image {
	display: block;
	width: 96px;
	height: auto;
	max-height: 96px;
	object-fit: contain;
}

.accueil-summary-line {
	display: block;
	width: 96px;
	height: auto;
	margin: 0 0 12px;
}

.accueil-summary-title {
	margin: 0;
	max-width: 560px;
	color: var(--section-color);
	font-size: clamp(22px, 2vw, 24px);
	line-height: 1.02;
	font-weight: 700;
	letter-spacing: 0;
	text-transform: none;
}

.accueil-summary-title a {
	color: var(--section-color);
	text-decoration: none;
}

.accueil-summary-title a:hover,
.accueil-summary-title a:focus {
	color: var(--section-color);
	text-decoration: underline;
	text-underline-offset: 0.14em;
}

.accueil-summary-pages {
	margin: 12px 0 0;
	padding: 0 0 0 20px;
	list-style: none;
}

.accueil-summary-page {
	position: relative;
	margin: 0 0 9px;
	padding: 0 0 0 18px;
	color: var(--section-color);
	font-size: clamp(16px, 1.5vw, 18px);
	line-height: 1.22;
	font-weight: 500;
}

.accueil-summary-page::before {
	content: "";
	position: absolute;
	top: 0.56em;
	left: 0;
	width: 7px;
	height: 7px;
	border-top: 2px solid var(--section-color);
	border-right: 2px solid var(--section-color);
	transform: rotate(45deg);
}

.accueil-summary-page:last-child {
	margin-bottom: 0;
}

.accueil-summary-page a {
	color: #133370;
	text-decoration: none;
}

.accueil-summary-page a:hover,
.accueil-summary-page a:focus {
	color: var(--section-color);
	text-decoration: underline;
	text-underline-offset: 0.16em;
}

.accueil-actions {
	width: 100%;
	background: transparent;
	padding: clamp(28px, 5vw, 56px) 24px;
	box-sizing: border-box;
}

.accueil-actions-inner {
	display: flex;
	justify-content: center;
	gap: 18px;
	width: 100%;
	max-width: 720px;
	margin: 0 auto;
}

.accueil-action-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 1 1 0;
	min-height: 54px;
	padding: 14px 24px;
	border: 2px solid #133370;
	background: #133370;
	color: #ffffff;
	font-size: clamp(15px, 1.2vw, 18px);
	font-weight: 800;
	line-height: 1.1;
	text-align: center;
	text-decoration: none;
	border-radius: 999px;
	box-shadow: 0 10px 24px rgba(19, 51, 112, 0.18);
	transition: color 160ms ease, background-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.accueil-action-button:hover,
.accueil-action-button:focus {
	background: #ffffff;
	color: #133370;
	text-decoration: none;
	box-shadow: 0 12px 28px rgba(19, 51, 112, 0.24);
	transform: translateY(-1px);
}

.accueil-action-button-secondary {
	background: #ffffff;
	color: #133370;
}

.accueil-action-button-secondary:hover,
.accueil-action-button-secondary:focus {
	background: #133370;
	color: #ffffff;
}

@media (max-width: 900px) {
	.mobile-menu-control-wrapper {
		right: 24px;
	}

	.accueil-magazine-layout {
		grid-template-columns: 1fr;
		min-height: 0;
	}

	.accueil-cover,
	.accueil-cover-image {
		min-height: 0;
	}

	.accueil-summary {
		min-height: 0;
		padding: 38px 24px 52px;
	}

	.accueil-summary-inner {
		max-width: none;
	}

	.accueil-summary-main-title {
		margin-bottom: 36px;
	}

	.accueil-summary-section {
		margin-bottom: 40px;
	}

	.accueil-summary-logo,
	.accueil-summary-logo-image {
		width: 82px;
		max-height: 82px;
	}

	.accueil-summary-line {
		width: 82px;
	}

	.accueil-summary-pages {
		padding-left: 34px;
	}

	.accueil-actions-inner {
		max-width: none;
	}
}

@media (max-width: 520px) {
	.mobile-menu-control-wrapper {
		right: 18px;
	}

	.accueil-cover,
	.accueil-cover-image {
		min-height: 0;
	}

	.accueil-summary {
		padding: 32px 18px 44px;
	}

	.accueil-summary-main-title {
		margin-bottom: 30px;
	}

	.accueil-summary-logo,
	.accueil-summary-logo-image {
		width: 72px;
		max-height: 72px;
	}

	.accueil-summary-line {
		width: 72px;
	}

	.accueil-summary-pages {
		padding-left: 22px;
		margin-top: 12px;
	}

	.accueil-summary-page {
		margin-bottom: 9px;
	}

	.accueil-actions {
		padding: 28px 18px;
	}

	.accueil-actions-inner {
		flex-direction: column;
		gap: 12px;
	}
}


.pictos img {
    margin-bottom: -3px !important;
    margin-right: 8px !important;
}

h2 {
    font-size: 24px;
    margin-bottom: 20px;
    line-height: 1.2em;
    font-weight: 500;
    text-transform: none;
}

.page:not(.home) {
    background: #fff;
    color: #0b3071;
}

.industrie-breadcrumb {
	margin: 0 0 14px;
	color: #133370;
	font-size: 14px;
	font-weight: 500;
	line-height: 1.4;
}

.industrie-breadcrumb a {
	color: #133370;
	text-decoration: none;
}

.industrie-breadcrumb a:hover,
.industrie-breadcrumb a:focus {
	text-decoration: underline;
	text-underline-offset: 0.16em;
}

.industrie-breadcrumb-separator {
	margin: 0 8px;
	color: rgba(19, 51, 112, 0.45);
}

.industrie-breadcrumb [aria-current="page"] {
	color: rgba(19, 51, 112, 0.72);
}

.industrie-page-category {
    position: relative;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    margin: 0 0px -7px 20px;
    padding: 7px 14px;
    background: #0b3071;
    color: #ffffff;
    border-radius: 3px 3px 0 0;
    font-size: 13px;
    font-weight: 700;
    line-height: 1;
    text-transform: uppercase;
    letter-spacing: 0;
}

.page:not(.home) h1.entry-title {
    background: #8ec89a;
    padding: 20px;
    font-size: 32px;
    color: #0b3071;
    font-weight: 600;
    border-radius: 3px;
}
