/* =========================================================
   HELI AIR - PAGE DECARBONATION
   Polices :
     - Titres (H1 a H6) : "Montserrat", sans-serif (600/700/800)
     - Texte courant     : "Open Sans", sans-serif (400/600/700)
   Couleurs : voir variables ci-dessous (communiquees a part).
========================================================= */

.heliair-page {
	--heliair-navy: #0B3B54;
	--heliair-navy-dark: #082A3C;
	--heliair-blue: #16647E;
	--heliair-blue-light: #3A87A0;
	--heliair-bg-light: #EFF5F8;
	--heliair-white: #FFFFFF;
	--heliair-text: #1B2B33;
	--heliair-text-light: #5C7180;
	--heliair-border: #DCE6EB;

	--heliair-font-title: "Montserrat", Arial, sans-serif;
	--heliair-font-body: "Open Sans", Arial, sans-serif;

	font-family: var(--heliair-font-body);
	color: var(--heliair-text);
	line-height: 1.5;
}

.heliair-page * {
	box-sizing: border-box;
}

.heliair-page h1,
.heliair-page h2,
.heliair-page h3,
.heliair-page h4,
.heliair-page h5,
.heliair-page h6 {
	font-family: var(--heliair-font-title);
	color: var(--heliair-navy);
	line-height: 1.2;
	margin: 0 0 .5em;
}

.heliair-page h1 { font-size: clamp(2.1rem, 3.6vw, 3.4rem); font-weight: 800; text-transform: uppercase; }
.heliair-page h2 { font-size: clamp(1.5rem, 2.4vw, 2.1rem); font-weight: 700; }
.heliair-page h3 { font-size: 1.2rem; font-weight: 700; }
.heliair-page h4 { font-size: 1.05rem; font-weight: 600; }
.heliair-page h5,
.heliair-page h6 { font-size: 1rem; font-weight: 600; }

.heliair-page p { margin: 0 0 1em; color: var(--heliair-text-light); }

.heliair-page .is-accent { color: var(--heliair-blue); }

.heliair-eyebrow {
	display: inline-block;
	font-family: var(--heliair-font-title);
	font-weight: 700;
	font-size: .8rem;
	letter-spacing: .08em;
	text-transform: uppercase;
	color: var(--heliair-blue);
	margin-bottom: .5em;
}
.heliair-eyebrow--light { color: var(--heliair-white); }

/* --------- boutons --------- */
.heliair-btn {
	display: inline-flex;
	align-items: center;
	gap: .5em;
	font-family: var(--heliair-font-title);
	font-weight: 700;
	font-size: .75rem;
	letter-spacing: .03em;
	text-transform: uppercase;
	text-decoration: none;
	padding: .9em 1.6em;
	border-radius: 4px;
	border: 2px solid transparent;
	transition: opacity .2s ease;
}
.heliair-btn:hover { opacity: .85; }
.heliair-btn--primary { background: var(--heliair-navy); color: var(--heliair-white); }
.heliair-btn--dark { background: var(--heliair-navy-dark); color: var(--heliair-white); }
.heliair-btn--outline { background: transparent; color: var(--heliair-navy); border-color: var(--heliair-navy); }
.heliair-btn--light { background: var(--heliair-white); color: var(--heliair-navy); }

/* --------- emplacements d'image (tant que le Customizer est vide) --------- */
.heliair-placeholder {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	overflow: hidden;
	background: repeating-linear-gradient(
		45deg,
		#F0F4F6,
		#F0F4F6 10px,
		#E4ECF0 10px,
		#E4ECF0 20px
	);
	border: 2px dashed var(--heliair-blue-light);
	border-radius: 6px;
	color: var(--heliair-blue);
	font-family: var(--heliair-font-body);
	font-size: .85rem;
	font-weight: 600;
	text-align: center;
	line-height: 1.4;
	padding: 1em;
}

.heliair-img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* =========================================================
   HEADER
========================================================= */
.heliair-topbar {
	position: relative;
	display: flex;
	align-items: center;
	gap: 1.5em;
	flex-wrap: wrap;
	overflow: hidden;
}
.heliair-topbar__bg { position: absolute; inset: 0; z-index: 0; }
.heliair-topbar__bg .heliair-placeholder,
.heliair-topbar__bg .heliair-img { height: 100%; }
.heliair-topbar__left,
.heliair-topbar__mid,
.heliair-topbar__right { position: relative; z-index: 1; display: flex; align-items: center; gap: .6em; }
.heliair-topbar__left { color: var(--heliair-white); }
.heliair-topbar__text { display: flex; flex-direction: column; font-size: .8rem; }
.heliair-topbar__text strong { font-family: var(--heliair-font-title); }
.heliair-topbar__mid { flex-direction: column; align-items: flex-start; gap: .2em; font-size: .78rem; color: var(--heliair-white); }
.heliair-topbar__right { margin-left: auto; gap: 1em; }
.heliair-topbar__msg { font-size: .8rem; color: var(--heliair-white); max-width: 260px; }

/* =========================================================
   HERO
========================================================= */
.heliair-hero {
	position: relative;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 2em;
	padding: 3em 3em 1em;
	align-items: center;
}
.heliair-hero__subtitle { font-family: var(--heliair-font-title); font-weight: 700; color: var(--heliair-navy); font-size: 1.1rem; }
.heliair-hero__actions { display: flex; gap: 1em; margin-top: 1.5em; flex-wrap: wrap; }
.heliair-hero__visual { position: relative; }
.heliair-hero__tagline {
	position: absolute;
	top: -1.5em;
	left: 0;
	font-family: "Georgia", serif;
	font-style: italic;
	color: var(--heliair-navy);
	font-size: 1.1rem;
	z-index: 2;
}
.heliair-hero__visual .heliair-img,
.heliair-hero__visual .heliair-placeholder { border-radius: 12px; }
.heliair-hero__badge {
	position: absolute;
	top: 1em;
	right: 1em;
	width: 100px;
	height: 100px;
	border-radius: 50%;
	background: var(--heliair-navy-dark);
	color: var(--heliair-white);
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	text-align: center;
	font-family: var(--heliair-font-title);
	font-size: .50rem;
	font-weight: 700;
	letter-spacing: .04em;
	gap: .2em;
	z-index: 2;
}
.heliair-hero__features {
	grid-column: 1 / -1;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	gap: 1.5em;
	list-style: none;
	margin: 2em 0 0;
	padding: 1.5em 0 0;
	border-top: 1px solid var(--heliair-border);
	font-family: var(--heliair-font-title);
	font-weight: 600;
	font-size: .82rem;
	color: var(--heliair-navy);
	text-align: center;
}
.heliair-hero__features li { display: flex; flex-direction: column; align-items: center; gap: .4em; flex: 1; min-width: 120px; }
.heliair-hero__features .dashicons,
.heliair-hero__features [class*="fa-"] { font-size: 1.6rem; width: auto; height: auto; color: var(--heliair-blue); }

/* =========================================================
   ETAPES
========================================================= */
.heliair-steps { background: var(--heliair-bg-light); padding: 3em; }
.heliair-steps__intro { margin-bottom: 2em; }
.heliair-steps__row { display: grid; grid-template-columns: 1fr 40px 1fr 40px 1fr 1.3fr; align-items: start; gap: 1.5em; }
.heliair-step { text-align: center; }
.heliair-step__img--round { width: 160px; height: 160px; margin: 0 auto 1em; border-radius: 50%; overflow: hidden; }
.heliair-step__img--round .heliair-img,
.heliair-step__img--round .heliair-placeholder { border-radius: 50%; }
.heliair-step__arrow { align-self: center; justify-self: center; margin-top: 4.5em; font-size: 1.6rem; color: var(--heliair-blue); }

@media (max-width: 1100px) {
	.heliair-steps__row { grid-template-columns: 1fr; }
	.heliair-step__arrow { display: none; }
}
.heliair-steps__results { background: var(--heliair-white); border-radius: 8px; padding: 1.5em; box-shadow: 0 4px 20px rgba(11,59,84,.08); }
.heliair-steps__results ul { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: .6em; font-size: .88rem; }
.heliair-steps__results .dashicons { color: var(--heliair-blue); margin-right: .4em; }

/* =========================================================
   SECTEURS
========================================================= */
.heliair-sectors { padding: 3em; }
.heliair-sectors__intro { display: flex; justify-content: space-between; align-items: flex-end; flex-wrap: wrap; gap: 1em; margin-bottom: 2em; }
.heliair-sectors__grid { display: grid; grid-template-columns: repeat(6, 1fr); gap: 1.2em; }
.heliair-sector-card { position: relative; border-radius: 10px; overflow: hidden; background: var(--heliair-navy-dark); }
.heliair-sector-card__img { aspect-ratio: 340/220; position: relative; }
.heliair-sector-card__icon {
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translate(-50%, 50%);
	z-index: 1;
	width: 46px;
	height: 46px;
	border-radius: 50%;
	background: var(--heliair-blue);
	color: var(--heliair-white);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.1rem;
}
.heliair-sector-card h3,
.heliair-sector-card p { color: var(--heliair-white); padding: 0 .9em; text-align: center; }
.heliair-sector-card h3 { font-size: .85rem; margin-top: 2.6em; }
.heliair-sector-card p { font-size: .72rem; padding-bottom: 1em; }

/* =========================================================
   BANDEAU STATS
========================================================= */
.heliair-stats {
	display: flex;
	justify-content: space-around;
	flex-wrap: wrap;
	gap: 1em;
	background: var(--heliair-navy);
	color: var(--heliair-white);
	padding: 1.4em 2em;
	font-family: var(--heliair-font-title);
	font-size: .85rem;
}
.heliair-stat { display: flex; align-items: center; gap: .6em; }
.heliair-stat strong { font-weight: 800; }
.heliair-stat em { font-style: normal; opacity: .7; font-size: .75rem; }
.heliair-stat .dashicons,
.heliair-stat [class*="fa-"] { font-size: 1.3rem; color: var(--heliair-blue-light); }

/* =========================================================
   CTA / CONTACT
========================================================= */
.heliair-cta { padding: 4em 3em; background-position: center; background-size: cover; }
.heliair-cta.has-bg { position: relative; }
.heliair-cta.has-bg::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	background: linear-gradient(90deg, rgba(8,42,60,.72) 0%, rgba(8,42,60,.35) 100%);
}
.heliair-cta__placeholder-inline { margin-bottom: 2em; border-radius: 10px; }
.heliair-cta__overlay {
	position: relative;
	z-index: 2;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 2em;
	max-width: 1200px;
	margin: 0 auto;
}
.heliair-cta.no-bg { background: var(--heliair-bg-light); }
.heliair-cta__text { align-self: center; }
.heliair-cta.has-bg .heliair-cta__text,
.heliair-cta.has-bg .heliair-cta__text h2 { color: var(--heliair-white); }
.heliair-cta.has-bg .heliair-cta__text p { color: rgba(255,255,255,.85); }
.heliair-cta.no-bg .heliair-cta__text,
.heliair-cta.no-bg .heliair-cta__text h2 { color: var(--heliair-navy); }
.heliair-cta__signature { font-family: "Georgia", serif; font-style: italic; font-size: 1.3rem; }
.heliair-cta__form { background: var(--heliair-white); border-radius: 10px; padding: 2em; }

/* Emplacement / habillage du futur formulaire Forminator */
.heliair-cta__form-placeholder {
	border: 2px dashed var(--heliair-blue-light);
	border-radius: 6px;
	padding: 2em 1em;
	text-align: center;
	color: var(--heliair-text-light);
	background: var(--heliair-bg-light);
}
.heliair-cta__form-placeholder code { display: inline-block; margin-top: .5em; color: var(--heliair-blue); }

/* Styles prets pour Forminator une fois le shortcode en place */
.heliair-cta__form .forminator-row { margin-bottom: 1em; }
.heliair-cta__form .forminator-field label { font-family: var(--heliair-font-title); font-weight: 600; font-size: .82rem; color: var(--heliair-navy); }
.heliair-cta__form .forminator-input,
.heliair-cta__form textarea.forminator-textarea {
	width: 100%;
	border: 1px solid var(--heliair-border);
	border-radius: 4px;
	padding: .7em .9em;
	font-family: var(--heliair-font-body);
	font-size: .9rem;
}
.heliair-cta__form .forminator-button-submit {
	background: var(--heliair-navy);
	color: var(--heliair-white);
	font-family: var(--heliair-font-title);
	font-weight: 700;
	text-transform: uppercase;
	letter-spacing: .03em;
	border: none;
	border-radius: 4px;
	padding: .9em 1.6em;
	width: 100%;
	cursor: pointer;
}

/* =========================================================
   ILS NOUS FONT CONFIANCE
========================================================= */
.heliair-trust { background: var(--heliair-bg-light); padding: 3em; text-align: center; }
.heliair-trust__grid { display: flex; justify-content: center; flex-wrap: wrap; gap: 2.5em; margin-top: 2em; }
.heliair-trust__grid > div { display: flex; flex-direction: column; align-items: center; gap: .5em; font-size: .8rem; font-weight: 600; color: var(--heliair-navy); }
.heliair-trust__grid .dashicons,
.heliair-trust__grid [class*="fa-"] { font-size: 1.8rem; color: var(--heliair-blue); }

/* =========================================================
   PRESIDENT + CONGRES
========================================================= */
.heliair-double { display: grid; grid-template-columns: 1.4fr 1fr; }
.heliair-president { display: grid; grid-template-columns: 260px 1fr; gap: 2em; padding: 3em; align-items: start; align-content: center; }
.heliair-president__photo { width: 260px; height: 260px; border-radius: 50%; overflow: hidden; }
.heliair-president__photo .heliair-img,
.heliair-president__photo .heliair-placeholder { border-radius: 50%; }
.heliair-president__name { font-weight: 700; color: var(--heliair-navy); }
.heliair-president blockquote { margin: 0; font-size: .9rem; }
.heliair-president blockquote p { color: var(--heliair-text); }
.heliair-president__sign { display: flex; align-items: center; gap: 1em; margin-top: 1em; }
.heliair-signature-img { width: 160px; height: auto; }

.heliair-congres { padding: 3em; background-position: center; background-size: cover; }
.heliair-congres.has-bg { position: relative; color: var(--heliair-white); }
.heliair-congres.has-bg::before {
	content: "";
	position: absolute;
	inset: 0;
	z-index: 1;
	background: linear-gradient(180deg, rgba(8,42,60,.55) 0%, rgba(8,42,60,.8) 100%);
}
.heliair-congres.no-bg { background: var(--heliair-navy-dark); color: var(--heliair-white); }
.heliair-congres__placeholder-inline { margin-bottom: 2em; border-radius: 10px; }
.heliair-congres__content {
	position: relative;
	z-index: 2;
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 2em;
}
.heliair-congres__text { flex: 1 1 auto; min-width: 0; }
.heliair-congres__aside { flex: 0 0 200px; text-align: center; }
.heliair-congres__content h3 { color: var(--heliair-white); }
.heliair-congres__content p { color: rgba(255,255,255,.85); display: flex; align-items: center; gap: .5em; }
.heliair-congres__label { font-family: var(--heliair-font-title); font-weight: 700; text-transform: uppercase; font-size: .8rem; }
.heliair-congres__logo { width: 180px; margin: 0 auto 1em; }
.heliair-congres__logo img { max-width: 100%; height: auto; }
.heliair-congres__baseline { font-family: var(--heliair-font-title); font-weight: 700; text-transform: uppercase; font-size: .78rem; justify-content: center; }

.heliair-topbar {
    position: relative;
}

.heliair-topbar__bg {
    position: absolute;
    inset: 0;
    z-index: 0;
}

.heliair-topbar__bg::after {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.25);
    z-index: 1;
}

.heliair-topbar__bg-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.heliair-topbar__left,
.heliair-topbar__mid,
.heliair-topbar__right {
    position: relative;
    z-index: 2;
}

.heliair-president-mobile {
	display: none;
}
.heliair-president-mobile__img {
	display: block;
	width: 100%;
	height: auto;
}
@media (max-width: 767px) {
	.heliair-president-mobile {
		display: block;
	}
	.heliair-president {
		display: none;
	}
}

.heliair-president-img img {
	display: block;
	width: 100%;
	height: auto;

}
.heliair-president-img__mobile {
	display: none !important;
}
.heliair-president-img{
    	background-color: #e9f6fe !important;
}

@media (max-width: 767px) {
	.heliair-president-img__desktop {
		display: none !important;
	}
	.heliair-president-img__mobile {
		display: block !important;
	}
}

/* =========================================================
   RESPONSIVE
========================================================= */
@media (max-width: 1100px) {
	.heliair-sectors__grid { grid-template-columns: repeat(3, 1fr); }
	.heliair-double { grid-template-columns: 1fr; }
}

@media (max-width: 780px) {
	.heliair-hero,
	.heliair-steps,
	.heliair-sectors,
	.heliair-cta,
	.heliair-trust,
	.heliair-president,
	.heliair-congres { padding-left: 1.2em; padding-right: 1.2em; }
	.heliair-hero { grid-template-columns: 1fr; }
	.heliair-sectors__grid { grid-template-columns: repeat(2, 1fr); }
	.heliair-cta__overlay { grid-template-columns: 1fr; }
	.heliair-president { grid-template-columns: 1fr; text-align: center; }
	.heliair-president__photo { margin: 0 auto; }
	.heliair-topbar {
	    flex-direction: column;
	}
	.heliair-topbar__right {
	    margin-left: unset;
	    flex-direction: column;
	}
	.heliair-hero__visual {
		margin-left: -1.5em;
		margin-right: -1.5em;
	}
	.heliair-hero__visual .heliair-img{
	    border-radius: unset;
	}
	/*.heliair-sector-card__icon{*/
	/*    top : 10%;*/
	/*    left : 20%;*/
	/*}*/
	.heliair-sector-card h3{
	    margin-top : 2.6em;
	}
		.heliair-sector-card h3{
	    font-size : 0.80rem;
	}
	.heliair-congres__content {
		flex-direction: column;
		align-items: flex-start;
	}
	.heliair-congres__aside {
		flex-basis: auto;
		width: 100%;
	}
}
}
