/* Headings style */
h1, h2, h3, h4, h5, h6 { color: #027D9D; font-weight: 400; }
h1 { font-size: 2.2rem; }

/* H3 heading style SP PageBuilder */
.sppb-feature-box-title::after {
	display: none !important;
}

.sppb-addon h3.sppb-addon-title {
	padding-right: 0px;
	box-shadow: none;
	line-height: inherit;
}

/* Doc Center page - H3 heading style SP PageBuilder */
.h3-doc-center .sppb-addon-title::after {
  	display: none !important;
}

.header-section-doc-center {
  	background-image: linear-gradient(to bottom, #f8f9fa 0%, #f8f9fa 50%, #eff3f7 100%);
  	box-shadow: 0 10px 15px -8px rgba(0, 0, 0, 0.05) !important;
}

.search-bar-section-doc-center, .suggested-section-doc-center {
	background-color: #ffffff;
 	background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='28' height='49' viewBox='0 0 28 49'%3E%3Cg fill-rule='evenodd'%3E%3Cg id='hexagons' fill='%23f8f9fa' fill-opacity='1' fill-rule='nonzero'%3E%3Cpath d='M13.99 9.25l13 7.5v15l-13 7.5L1 31.75v-15l12.99-7.5zM3 17.9v12.7l10.99 6.34 11-6.35V17.9l-11-6.34L3 17.9zM0 15l12.98-7.5V0h-2v6.35L0 12.69v2.3zm0 18.5L12.98 41v8h-2v-6.85L0 35.81v-2.3zM15 0v7.5L27.99 15H28v-2.31h-.01L17 6.35V0h-2zm0 49v-8l12.99-7.5H28v2.31h-.01L17 42.15V49h-2z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E");
}

.articles-section-doc-center {
	background-image: linear-gradient(to bottom, #f8f9fa 0%, #f8f9fa 50%, #eff3f7 100%);
  	box-shadow: 0 10px 15px -8px rgba(0, 0, 0, 0.05) !important;
}

.search-bar-section-doc-center .sppb-row-container {
	max-width: 650px !important;
}

.custom-search-doc-center .inputbox {
  	height: 40px;
	font-size: 17px;
}

/* Doc Center page - Articles cards */

.doc-cards .sppb-article-introtext,
.doc-cards .sppb-addon-article-introtext {
  	display: -webkit-box;
  	-webkit-line-clamp: 7;              /* adjust if needed (height) */
  	-webkit-box-orient: vertical;
  	overflow: hidden;
  	text-overflow: ellipsis;
  	hyphens: auto;
  	word-break: break-word;
  	position: relative;
  	padding-bottom: 14px;
}

.doc-cards .sppb-article-introtext::after,
.doc-cards .sppb-addon-article-introtext::after {
  	content: "";
  	position: absolute;
  	left: 0; right: 0; bottom: 0;
  	height: 2.2em;                       /* fade effect height */
  	pointer-events: none;
  	/* (Chrome/Edge/Safari) */
 	 -webkit-mask-image: linear-gradient(to bottom, rgba(0,0,0,0) 0%, #000 80%);
 	 mask-image: linear-gradient(to bottom, rgba(0,0,0,0) 0%, #000 80%);
  	background: linear-gradient(to bottom, rgba(255,255,255,0) 0%, #fdfdfd 85%);
}

.articles-module-doc-center .sppb-addon-article-layout-editorial-content {
	border: none !important;
	border-left: 3px solid #5997B0 !important;
}

.h3-doc-center .sppb-addon-title-icon {
  	font-size: 25px !important;
}

/* Doc Center page - popular tags */
.popular-tags-doc-center {
  	text-align: center;
	font-size: 20px;
}

.popular-tags-doc-center .tag-name {
  	width: 200px;
  	height: 35px;
  	border-color: #999999 !important;
  	background: rgba(255,255,255,0.85) !important;
}

.popular-tags-doc-center .tag-name:hover {
  	background-color: #fff !important;
  	color: #03a0c6 !important;
  	border-color: #03a0c6 !important;
}

/* END of Doc Center page */

.sppb-addon.sppb-addon-module.titre-demande-produit h2, .sppb-addon.sppb-addon-module.titre-demande-services h2, .sppb-addon.sppb-addon-module.titre-offre-produit h2, .sppb-addon.sppb-addon-module.titre-offre-services h2 {
	display: block;
	width: 100%;
	border-bottom: 1px solid #dee2e6 !important;
	padding-bottom: 10px;
}

/*Search button on Doc Center page*/
#mod-finder-searchform151 .flex-search {
  	display: flex;
}

#mod-finder-searchform151 input[type="text"] {
  	height: 38px;
  	border-radius: 15px 0 0 15px !important;
  	border: 1px solid #ddd;
    	border-right-width: 1px;
    	border-right-style: solid;
    	border-right-color: rgb(221, 221, 221);
  	border-right: none;
}

#mod-finder-searchform151 button[type="submit"] {
  	height: 38px;
  	border-radius: 0 15px 15px 0 !important;
  	background: rgba(3,160,198,0.9);
  	border: 1px solid rgba(3,160,198,0.9);
  	color: #fff;
  	cursor: pointer;
  	transition: background 0.2s ease-in-out;
  	display: flex;
  	align-items: center;
  	margin-top: 0 !important;
	padding: 10px !important;
  	max-width: 150px !important;
}

#mod-finder-searchform151 .search::before {
  	display: none !important;
}

#mod-finder-searchform151 button i {
	color: #fff;
	font-size: 22px;
	font-weight: 600;
	padding-left: 5px;
}

#mod-finder-searchform151 button:hover {
  	background: #0390b2;
  	border-color: #0390b2;
}

/* LandingPage - welcome section */
.welcome-section {
	background-image: linear-gradient(to bottom, #f8f9fa 0%, #f8f9fa 50%, #eff3f7 100%);
	box-shadow: 0 10px 15px -8px rgba(0, 0, 0, 0.05) !important;

}

/* HomePage - service section */
.homepage-services-section {
	background-image: linear-gradient(to bottom, #f8f9fa 0%, #f8f9fa 50%, #eff3f7 100%);
	box-shadow: 0 10px 15px -8px rgba(0, 0, 0, 0.05) !important;

}

/* HomePage - services section - Cards */
.services-row-cards .sppb-nested-row {
  	display: grid !important;
  	grid-template-columns: repeat(4, 20%);
  	justify-content: center;
  	gap: 25px;
}

/* Bootstrap columns neutralise */
.services-row-cards .sppb-nested-row > .sppb-row-column,
.services-row-cards .sppb-nested-row > [class*="sppb-col"] {
  	max-width: none !important;
}

/* Title word break in Cards */
.services-row-cards .sppb-addon-feature .sppb-addon-title,
.services-row-cards .sppb-addon-feature .sppb-addon-title a {
  	display: inline-block !important;
  	white-space: normal !important;
  	word-break: break-word !important;
  	overflow-wrap: break-word !important;
  	hyphens: auto !important;
  	text-align: center;
  	line-height: 1.2em;
}

/* === Responsive === */
@media (max-width: 992px) {
  .services-row-cards .sppb-nested-row {
    	grid-template-columns: repeat(2, 45%);
  }
}

@media (max-width: 600px) {
  .services-row-cards .sppb-nested-row {
    	grid-template-columns: 90%;
  }
}

.services-row-cards .sppb-feature-box-title:hover {
  	border-bottom: 1px solid #027D9D;
}

/* HomePage - search section */
.homepage-search-section {
	background-color: #ffffff;
	background-image: url("data:image/svg+xml,%3Csvg width='44' height='12' viewBox='0 0 44 12' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M20 12v-2L0 0v10l4 2h16zm18 0l4-2V0L22 10v2h16zM20 0v8L4 0h16zm18 0L22 8V0h16z' fill='%23eff3f7' fill-opacity='0.5' fill-rule='evenodd'/%3E%3C/svg%3E");
}

/* HomePage - articles section */
.homepage-articles-section .sppb-articles-carousel-img {
  	display: none !important;
}

/* HomePage - articles section dots */
.homepage-articles-section .slick-dots {
	bottom: -30px !important;
}

.sppb-img-responsive.welcome-section-image {
  	box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.06);
}

.welcome-section-button {
  	background-color: #4b9ebc !important;
	border-color: #4b9ebc !important;
}

.welcome-section-button:hover {
  	background-color: #3a90ae !important;
	border-color: #3a90ae !important;
}

/* LandingPage - divider */
@media only screen and (max-width: 767.98px) {
  .sppb-addon-divider-wrap {
    	float: none !important;
    	display: flex !important;
    	justify-content: center !important;
    	text-align: center !important;
  }

  .sppb-addon-divider-wrap .sppb-divider {
    	display: inline-block !important;
    	margin: 30px auto !important;
  }
}

/* LandingPage - search ads section */
.search-section {
	background-color: #ffffff;
	background-image: url("data:image/svg+xml,%3Csvg width='44' height='12' viewBox='0 0 44 12' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M20 12v-2L0 0v10l4 2h16zm18 0l4-2V0L22 10v2h16zM20 0v8L4 0h16zm18 0L22 8V0h16z' fill='%23eff3f7' fill-opacity='0.5' fill-rule='evenodd'/%3E%3C/svg%3E");
	box-shadow: 0 10px 15px -8px rgba(0, 0, 0, 0.05) !important;
}

/* LandingPage - Feature Box section */
.sppb-section.feature-box-section-buttons-row .sppb-btn-rounded {
  	background-color: #4b9ebc !important;
	border-color: #4b9ebc !important;
}

.sppb-section.feature-box-section-buttons-row .sppb-btn-rounded:hover {
  	background-color: #3a90ae !important;
	border-color: #3a90ae !important;
}

/* Landing & Listings Page - Buttons style */
.homepage-button, .all-listings-page-button {
  	background-color: #4b9ebc !important;
	border-color: #4b9ebc !important;
}

.homepage-button:hover, .all-listings-page-button:hover {
  	background-color: #3a90ae !important;
	border-color: #3a90ae !important;
}

/* LandingPage - Classified Ads section */
.classified-ads-section {
  	background-image: linear-gradient(to bottom, #f8f9fa 0%, #f8f9fa 50%, #eff3f7 100%);
	box-shadow: 
    	0 -6px 15px rgba(0, 0, 0, 0.03),
    	0 6px 15px rgba(0, 0, 0, 0.03) !important;
}

.sppb-img-responsive.classified-ads-section-image {
  	box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.06);
}

/* LandingPage - Priority section */
.priority-section {
  	background-image: linear-gradient(to bottom, #f8f9fa 0%, #f8f9fa 50%, #eff3f7 100%);
	box-shadow: 
    	0 -6px 15px rgba(0, 0, 0, 0.03),
    	0 6px 15px rgba(0, 0, 0, 0.03)  !important;
}

.sppb-img-responsive.priority-section-image {
  	box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.06);
}

/* LandingPage - Join Us section */
.joinus-section {
  	background-image: linear-gradient(to bottom, #f8f9fa 0%, #f8f9fa 50%, #eff3f7 100%);
	box-shadow: 
    	0 -6px 15px rgba(0, 0, 0, 0.03),
    	0 6px 15px rgba(0, 0, 0, 0.03)  !important;
}

.sppb-img-responsive.joinus-section-image {
  	box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.06);
}

/* Listings Page - Fabrik Slick Slide adjust */
.all-listings-page-mainsection .slick-slide img {
  	display: block !important;
  	max-width: 100% !important;
  	max-height: 270px !important;
  	width: auto !important;
  	height: auto !important;
  	object-fit: contain !important;
}

/*Media queries (responsive margins)*/

/* ≥1200px: widen from 1170px to 1200px */
@media (min-width: 1200px) {
  .maincomponent-custom .sppb-row-container {
    width: 1300px !important;
  }
}

@media (min-width: 1300px) {
  .container {
    max-width: 1300px !important;
  }
}

@media (min-width: 1200px) and (max-width: 1300px) {
  .container, .container-lg, .container-md, .container-sm, .container-xl {
    max-width: 1140px !important;
  }
}

@media (min-width: 992px) and (max-width: 1200px) {
  .container, .container-lg, .container-md, .container-sm {
    max-width: calc(960px + (180 * (100vw - 992px) / 208));
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  .container, .container-md, .container-sm {
    max-width: calc(720px + (80 * (100vw - 768px) / 223)); /* 223 = 991 - 768 */
    padding-left: 20px;
    padding-right: 20px;
  }
}

@media (min-width: 576px) and (max-width: 767px) {
  .container, .container-sm {
    max-width: calc(560px + (160 * (100vw - 576px) / 191));
  }
}

/* Safari - avoid Logo image distortion */
#sp-logo .sp-default-logo, #sp-logo .sp-retina-logo {
	object-fit: contain;
	max-width:250px;
}

/* Top bar */

.top-bar {
	border-bottom: 1px solid #e6e6e6;
}

/* === TOP BAR MENU (positions) === */
.user1,
.user2 {
  	padding: 0;
	float: none;
	display: flex;
	justify-content: flex-end;
	align-items: center;
	width: 100%;
}

.user1 .mod-menu,
.user2 .mod-menu {
  	display: flex;
  	align-items: center;
  	justify-content: flex-end;
  	list-style: none;
  	margin: 0;
  	padding: 0;
}

/* Menu items */
.user1 .mod-menu > li,
.user2 .mod-menu > li {
  	display: flex;
  	align-items: center;
  	line-height: 2;
  	position: relative;
  	border: none;
	padding-top: 5px;
	padding-bottom: 5px;
}

/* Vertical bar between items */
.user1 .mod-menu > li:not(:last-child)::after,
.user2 .mod-menu > li:not(:last-child)::after {
  	content: "";
  	position: absolute;
  	top: 50%;
  	right: 0;
  	transform: translateY(-50%);
  	width: 1px;
  	height: 18px;
  	background: rgba(0, 0, 0, 0.2);
}

/* Link */
.user1 .mod-menu > li > a,
.user2 .mod-menu > li > a {
  	display: flex;
  	align-items: center;
  	font-size: 16px;
  	text-decoration: none;
  	transition: color 0.3s ease, background-color 0.3s ease;
  	color: #333;
  	padding: 0 9px;
}

.user1 .mod-menu > li > a:hover,
.user2 .mod-menu > li > a:hover {
  	color: #027D9D;
}

/* Icônes */
.user1 .mod-menu > li > a i,
.user2 .mod-menu > li > a i {
  	font-size: 20px;
  	color: #027D9D;
  	line-height: 1;
  	display: inline-block;
  	transform: translateY(0.5px);
	padding-right: 6px;
}

/* Responsive : remove vertical bars from mobile view */
@media (max-width: 992px) {
  .user1 .mod-menu > li::after,
  .user2 .mod-menu > li::after {
    	display: none;
  }

  .user1,
  .user2 {
    	justify-content: center;
  }

  .user1 .mod-menu,
  .user2 .mod-menu {
    	justify-content: center;
    	flex-wrap: wrap;
    	gap: 10px;
  }
}

/* .user2 horizontal align */
.user2 {
  	display: flex;
  	justify-content: flex-end;
  	align-items: center;
  	text-align: center;
  	width: 100%;
}

/* Menu container get all the width */
.user2 .sp-module-content {
  	width: 100%;
  	display: flex;
  	justify-content: flex-end;
  	align-items: center;
}

/* === Align user1 top-bar with main menu === */

/* Adjust top bar container with the container of the main menu */
#sp-top-bar .container {
   	max-width: 1300px !important;
   	margin: 0 auto;
	padding: 0px;
}

/* Fix internal flex */
#sp-top-bar .row {
   	justify-content: flex-end;  /* pousse user1 à droite dans la même marge que le main menu */
}

/* Remove all overflow */
.user1 {
   	width: auto !important;
   	padding: 0 !important;
   	margin: 0 !important;
   	float: none !important;
}
 
/* Header */
.aerobridge-header {
	box-shadow: 0px 2px 6px rgba(0, 0, 0, 0.08);
}

.aerobridge-header a:hover {
	color: #03a0c6 !important;
}

.aerobridge-header .sp-dropdown li.sp-menu-item a:hover {
	background: linear-gradient(90deg, #E6F7FB, #D4F0F7) !important;
}

/* Made in France - French flag */
/*.aerobridge-header .row {
	position: relative;
}

.aerobridge-header .row::before {
	content: "";
	position: absolute;
	top: 14px;
	left: 20px;
	height: 16%;
	width: 21px; /* 3 x 7px */
	z-index: 1;
	background:
	linear-gradient(to bottom, #0055A4 0%, #0055A4 100%),  /* Bleu */
	linear-gradient(to bottom, #FFFFFF 0%, #FFFFFF 100%),  /* Blanc */
	linear-gradient(to bottom, #EF4135 0%, #EF4135 100%);  /* Rouge */
	background-repeat: no-repeat;
	background-size: 7px 100%, 7px 100%, 7px 100%;
	background-position: 0 0, 7px 0, 14px 0;
	border-radius: 2px;
}

@media (min-width: 576px) and (max-width: 767px) {
  .aerobridge-header .row::before {
	left: 10px !important; /* Avant : 20px */
  }
}
*/

/*Language switcher*/
.language-switcher {
  	display: flex;
  	align-items: center;
  	gap: 8px;
  	margin-right: 12px;
  	white-space: nowrap;
}

/*Breadcrumbs*/
.aerobridge-breadcrumbs {
	background: #f8f9fa;
  	padding: 12px 0px 0px 0px;
  	line-height: 18px;
}

/* Liste horizontale sans bordures ajoutées par le template */
.language-switcher .mod-languages ul.lang-inline {
  	display: flex;
	padding: 0px !important;
	text-align: center;
}

.language-switcher .mod-languages ul.lang-inline li {
  	list-style: none;
  	display: inline-flex;
  	align-items: center;
  	margin: 0 4px;
}

.language-switcher .mod-languages ul.lang-inline li a {
  	display: inline-flex;
  	align-items: center;
  	text-decoration: none;
  	line-height: 1;
}

.language-switcher .mod-languages ul.lang-inline img {
  	margin: 15px 0px 0px 5px;
}

.language-switcher img {
	display: none !important;
}

.language-switcher a::after {
	font-family: Barlow, sans-serif;
	font-size: 14px;
	font-weight: 600;
	background: #027D9D;
	color: #fff;
	padding: 4px 6px;
	border-radius: 3px;
	margin: 15px 0px 0px 5px;
}

.language-switcher a[href*="en"]::after { content: "EN"; }
.language-switcher a[href*="fr"]::after { content: "FR"; }


/* Effets d’état : actif/hover */
	.language-switcher .mod-languages ul.lang-inline li a { opacity: .7; }
	.language-switcher .mod-languages ul.lang-inline li a:hover,
	.language-switcher .mod-languages ul.lang-inline li.lang-active a { opacity: 1; }

#sp-top1 {
  	width: 30px;
}

/* Flex Template - Pagination override */
.pagination {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	margin: 30px 0px 30px 0px;
}

/* ====== CB Login Module - User Menu – compact grid ====== */

.ab-login-panel .ab-actions{
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 12px !important;
  align-items: stretch;
  grid-auto-rows: 1fr;
}

@media (max-width: 640px){
  .ab-login-panel .ab-actions{
    grid-template-columns: 1fr !important;
  }
}

@media (min-width: 1400px){
  .ab-login-panel .ab-actions{
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  }
}

.ab-login-panel .ab-tile{
  height: 100%;
  align-items: flex-start;
  padding: 12px 14px;
  border-radius: 12px;
  border: 1px solid #e5e7eb;
  background: #fff;
  box-shadow: 0 2px 10px rgba(0,0,0,.04);
  transition: box-shadow .15s ease, border-color .15s ease; /* plus de translation */
}

.ab-login-panel .ab-tile:hover{
  box-shadow: 0 6px 18px rgba(0,0,0,.08);
  border-color: #d0d7de;
}

.ab-login-panel .ab-ico{ width:32px; height:32px; }
.ab-login-panel .ab-ico i{ font-size:16px; }

.ab-login-panel .ab-label{ font-size:1rem; line-height:1.2; font-weight:400; }
.ab-login-panel .ab-sub{ font-size:.90rem; line-height:1.25; color:#6b7280; }
.ab-login-panel .ab-label, 
.ab-login-panel .ab-sub{ word-break: break-word; }

/* ====== CB Login Module - User Menu – END ====== */


/* Joomla alert message */
joomla-alert {
  	padding: 8px 20px;
	margin: 1rem 0 1rem 0;
}

.alert-message {
  	padding: 8px 30px;
	margin: 0;
  	line-height: 1;
	font-size: 108%;
}

/* CB Login Module custom */
#login-form {
	position: relative;
	padding: 30px;
	background-color: #fff;
	border: 0.5px solid #ddd;
	border-radius: 8px;
	box-shadow: 0px 2px 6px rgba(0, 0, 0, 0.08);
	display: block;
	margin: 2rem auto;
	justify-self: center;
}

@media (max-width: 768px) {
#login-form {
    	padding: 15px;
  }
}

body.com-comprofiler.view-login #sp-component .maincomponent-custom{
	display: grid;	
	text-align: initial !important;
  	justify-content: initial !important;
}

/* Joomla alert message centering after login */
body.com-comprofiler.view-login #system-message-container.centered{
	margin-left:0;           /* coupe le centrage */
	margin-right:0;
}

/* CB Login - Form Login Links adjustment */
#form-login-links {
    	margin-top: 10px;
    	padding-left: 0;
    	list-style: none;
    	display: block;
}

/* Connection button in Login Module */
.loginbutton-custom, .logoutbutton-custom {
	padding: .375rem .75rem;
  	margin: 10px 0px;
  	border-radius: .25rem;
	background-color: #1ba9cb;
  	color: #fff;
}

.loginbutton-custom:hover, .logoutbutton-custom:hover {
	background-color: #0390b2;
  	color: #fff;
}

/* Login remember checkbox override */
#modlgn-remember {
    	position: static !important;
    	opacity: 1 !important;
    	visibility: visible !important;
    	width: auto !important;
    	height: auto !important;
}

#login-form label[for="modlgn-remember"]::before, #login-form label[for="modlgn-remember"]::after {
    display: none !important;  /* Supprime la pseudo-case */
}

#login-form label[for="modlgn-remember"] {
	padding: 0px !important;
	cursor: pointer;
	display: inline-flex;
	position: absolute;
}

/* Login Module custom fields */
.username-custom, .password-custom, .loginbutton-custom {
  	width: 300px;
	border-radius: var(--bs-border-radius);
	margin-top: 0.2rem;
}

input[type="text"].username-custom,
input[type="password"].password-custom,
.fabrikForm .fabrikinput {
	font-size: 16px;
}

/* CB Login Module - logout view */
#login-form.cbLogoutForm {
  	text-align: center;
}

.login-avatar.cb_template.cb_template_default {
  	display: flex;
  	justify-content: center;
  	align-items: center;
  	flex-direction: column;
}

/* CB registration form - tabs */
.nav-tabs .nav-link {
	color: #038DB9;
}

.nav-tabs .nav-link:hover {
	color: #495057;
}

/* CB registration form - Subscribe button */
.row.no-gutters.cbRegistrationButtons {
	margin-top: 50px;
}

/* CB registration form - fields */

#message {
  	width: 600px !important;
  	max-width: 100% !important;
}

.cb_template .form-auto .form-control, .cb_template .form-auto .form-select {
	width: 350px !important;
	height: auto !important;
	box-sizing: border-box;
	margin-bottom: 1rem;
	font-size: 16px;
}

@media (max-width: 576px) {
.cb_field.col-sm-9 {
	width: 100% !important;
	flex: 0 0 100% !important;
	max-width: 100% !important;
  }
.cb_template .form-auto .form-control,
.cb_template .form-auto .form-select {
	width: 100% !important;
	max-width: 100% !important;
  }
}
}

/* MegaMenu dropdown style */
.aerobridge-menu .sp-megamenu-parent .sp-dropdown li.sp-menu-item a:hover {
  	background: linear-gradient(90deg, #E6F7FB, #D4F0F7) !important;
}

.aerobridge-menu .sp-megamenu-parent .sp-dropdown li.sp-menu-item.current-item > a {
  	background: linear-gradient(90deg, #E6F7FB, #D4F0F7) !important;
	color: #03a0c6 !important;
}

.aerobridge-menu {
  	font-size: 20px;
}

.aerobridge-menu .sp-megamenu-parent > li > a {
	min-width: 100px;
	text-align: center;
	max-height: 95px !important;
}


/* New ad dropdown menu */
.ad-menu .sp-dropdown-inner {
	width: 120px;
}

/* Main Menu sub-menu */
.aerobridge-menu .sp-megamenu-parent .sp-dropdown .sp-dropdown-inner {
	min-width: 245px;
}

/*Logout sub-item separator*/
.menu-separator {
  	border-top: 1px solid #ddd;
  	margin-top: 8px;
  	padding-top: 4px !important;
}

/* OffCanvas Menu - Contact item separator */
.offcanvas-menu .offcanvas-inner .sp-module ul.accordion-menu > li:last-child {
  	border-top: 1px solid #ccc;
  	margin-top: 10px;
  	padding-top: 10px;
}



/* OffCanvas Menu style mobile portrait */
@media (max-width: 480px) and (orientation: portrait) { 
    .offcanvas-menu {
        width: 100vw !important; /* Couvre toute la largeur */
    }
}

/* Basculer en off-canvas sous 1200px sans masquer le bouton */
@media (max-width: 1149.99px) {
  .sp-megamenu-parent { 
    	display: none !important; 
  }

  /* Assure l’affichage du bouton burger */
  #offcanvas-toggler,
  .offcanvas-toggler,
  .hamburger,
  .burger-icon {
    	display: inline-flex !important;
    	align-items: center;
  }
}

/* Header fluide entre 1200px et 1399px pour éviter le "resserrement" */
@media (min-width: 1200px) and (max-width: 1399.98px) {
  #sp-header .container,
  .aerobridge-header .container {
    	max-width: 100% !important;
    	width: 100% !important;
    	padding-left: 24px;
    	padding-right: 24px;
  }

  /* (Optionnel) ne pas autoriser le retour à la ligne dans la rangée du header */
  #sp-header .container > .row {
    	flex-wrap: nowrap;
  }

  /* (Optionnel) compresser un peu les liens si besoin */
  .sp-megamenu-parent > li > a {
    	padding: 0 .7rem;
  }
}

/* Fabrik custom items */
.cbPointsFieldIncrement.cbPointsFieldIncrementPlus, .cbPointsFieldIncrement.cbPointsFieldIncrementMinus {
  	color: #1ba9cb;
}

/* Fabrik Group Legend style */
.mt-3.legend {
 	margin-bottom: 30px;
  	border-bottom: 1px solid #ccc;
}

/* OpenMind Project form Fabrik - titre de légende commun (form + détail) */
[id^="form_16"] .mt-3.legend {
  margin-top: 4rem !important;
  font-size: 1.8rem;
  font-weight: 300;
  color: #027D9D;
}

/* OpenMind Project Fabrik View - stars*/

.fabrikRating span.starRating {
  	display: inline-block;
  	width: 1.35rem;
  	height: 1.35rem;
  	line-height: 1.35rem;
  	text-align: center;
  	margin: 0 .12rem;
  	vertical-align: middle;
 	transition: none !important;
}	

.fabrikRating .icon-star:before,
.fabrikRating .icon-star-empty:before {
  	font-family: "Font Awesome 6 Free","Font Awesome 5 Free",FontAwesome,inherit !important;
  	font-weight: 900 !important;
  	transition: none !important;
}

.fabrikRating .icon-star-empty:before {
  	content: "\f006" !important;    /* étoile vide */
  	color: #cfd4da !important;
 	opacity: 0.45 !important;
	font-size: 1em !important;
	
}

.fabrikRating .icon-star:before {
 	content: "\f005" !important;    /* étoile pleine */
  	color: #dfb02e !important;
  	opacity: 1 !important;
}

.fabrikRating .fa, 
.fabrikRating .fa:before,
.fabrikRating .starRating,
.fabrikRating .starRating:before {
  	transform: none !important;
  	animation: none !important;
  	transition: none !important;
}

.fabrikRating .fa.starRating:hover:before {
  	color: #dfb02e !important;
}

/* OpenMind Project Fabrik Detailed View - stars*/
.fabrikElementContainer.plg-rating .starRating {
  	display: inline-block;
  	width: 1.35rem;
  	height: 1.35rem;
  	line-height: 1.35rem;
  	text-align: center;
  	margin: 0 .12rem;
 	vertical-align: middle;
  	transition: none !important;
}

.fabrikElementContainer.plg-rating .icon-star:before,
.fabrikElementContainer.plg-rating .icon-star-empty:before {
  	font-family: "Font Awesome 6 Free","Font Awesome 5 Free",FontAwesome,inherit !important;
  	font-weight: 900 !important;
  	transition: none !important;
}

.fabrikElementContainer.plg-rating .icon-star-empty:before {
  	content: "\f006" !important;
  	color: #cfd4da !important;
  	opacity: 0.45 !important;
  	font-size: 1em !important;
}
.fabrikElementContainer.plg-rating .icon-star:before {
  	content: "\f005" !important;
  	color: #dfb02e !important;
  	opacity: 1 !important;
}

.fabrikElementContainer.plg-rating .fa,
.fabrikElementContainer.plg-rating .fa:before,
.fabrikElementContainer.plg-rating .starRating,
.fabrikElementContainer.plg-rating .starRating:before {
  	transform: none !important;
  	animation: none !important;
 	transition: none !important;
}

.fabrikElementContainer.plg-rating .fa.starRating:hover:before {
  	color: #dfb02e !important;
}

body.com-fabrik.view-details .fabrikElementContainer.plg-rating .icon-remove { 
  	display: none !important;
}

/* Ne jamais afficher la position below-component sur les LISTES Fabrik */
body.com-fabrik.view-list .below-component { 
  	display: none !important; 
}

/* OpenMind - Force to display the fields */
#group59 label.form-label.fabrikLabel[for*="_image_"],
#group59 label.form-label.fabrikLabel[for*="_titre_"],
#group59 label.form-label.fabrikLabel[for*="_description_"] {
  display: block !important;
}

/* Fabrik Col-sm-2 width (larger) */
@media (min-width: 576px) {
    .form-label.fabrikLabel.col-sm-2.col-form-label {
        width: 45% !important;
    }
}

@media (min-width: 992px) {
  .form-label.fabrikLabel.col-sm-2.col-form-label {
    width: 30% !important;
  }
}

/* Fabrik Col-sm-2 width on image crop popup (Ajax upload) */
input.col-sm-2[type="number"][name="rotate-val"], input.col-sm-2[type="number"][name="zoom-val"] {
  	width: 35%;
}

/* Textarea Element Fabrik - Bootstrap behavior */
@media (min-width: 576px) {
  .col-sm-8 textarea.form-control {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box;
  }
}

/* Behavior fix under 576px */
@media (max-width: 575px) {
  .col-sm-8,
  .col-sm-7,
  .col-sm-6,
  .col-sm-9,
  .col-sm-10 {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }

  textarea.form-control {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box;
    overflow: hidden;
    resize: none; /* Deactivate resizing */
  }
}

/* Fabrik groups margin */
.fabrikGroup {
  	margin-bottom: 30px !important;
}

/* Fabrik jCalendar element */
[id$="_cal_btn"]::before {
  	font-family: 'Font Awesome 6 Free';
 	content: "\f073";
  	font-weight: 900;
  	font-size: 16px;
  	color: #fff;
  	position: absolute;
  	transform: translateY(-50%);
  	pointer-events: none;
}

[id$="_cal_btn"] {
  	padding-left: 14px;
}

.field-calendar .input-group {
	display: flex;
	flex-wrap: nowrap;
	align-items: stretch;
	width: 100%;
	max-width: 100%; /* S'assure que ça ne dépasse jamais */
	overflow: hidden; /* Cache les débordements éventuels */
}

.field-calendar input[type="text"] {
	flex: 1 1 auto !important;
	width: auto !important; /* Écrase tout width fixe */
	min-width: 0;
	max-width: 100%;
	box-sizing: border-box;
}

.field-calendar button.btn {
	flex: 0 0 auto;
	white-space: nowrap;
}

/* Fabrik validation element icon */
.fa.icon-icon-.fa-asterisk.small {
	font-size: 0.6em;
	vertical-align: super;
	color: #cc2828;
}

/* Fabrik product request - drag and drop area */
.plupload {
	height: 180px !important;
	border: 1.5px dashed rgb(204, 204, 204);
}

/* Fabrik list view - alignment */
.fabrik_divrow {
	display: flex;
  	justify-content: center;
  	align-items: center;
  	flex-direction: column;
  	text-align: center;
}

/* Fabrik action buttons in list view */
.fabrik_actions {
	position: absolute;
	top: 0;
	right: 0;
	z-index: 2000 !important;
	padding: 0.2rem;
}

.fabrik_actions .btn-group .btn {
	display: none;
}

.fabrik_actions::before {
	content: "\f044";
	font-family: "Font Awesome 5 Free";
	font-weight: 500;
	font-size: 1.1rem;
	color: #00b2e2;
	cursor: pointer;
	background: white;
	border: 1px solid #00b2e2;
	border-radius: 6px;
	padding: 6px 10px;
	display: inline-block;
	z-index: 2;
	position: relative;
}

.fabrik_actions:hover .btn-group .btn {
	display: block;
	background: white;
	border: none;
	padding: 8px 12px;
	width: 160px;
	text-align: left;
}

.fabrik_actions .btn-group .btn:hover {
	color: #00b2e2;
}

.fabrik_actions .btn-group {
 	display: flex;
	flex-direction: column;
	overflow: hidden;
	position: absolute;
	top: 100%;
	right: 0;
	background: white;
	border: 1px solid #ccc;
	border-radius: 6px;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
	z-index: 999;
	margin-top: -1px;
}

.fabrik_actions .fa {
	margin-right: 8px;
}

/* Fabrik module on landing page - hide buttons */
.accueil-latest .fabrikButtonsContainer {
  	display: none !important;
}

.accueil-latest .fabrik_row {
  	width: 100% !important;
  	max-width: 100%;
  	flex: 0 0 100%;
}

.accueil-latest .fabrik_actions {
  	display: none !important;
}

.accueil-latest .emptyDataMessage {
  	text-align: center !important;
}

.fabrik_divrow .fabrikGalleryImage {
	margin: 15px auto; /* pour centrer le conteneur lui-même */
}

.fabrik_divrow .fabrikDefaultImage {
	width: 200px;
	height: 200px;
	margin: 15px auto;
}

.fabrik_divrow .fabrikLightBoxImage {
	width: 200px;
	height: 200px;
	margin: 15px auto;
}

/* Fabrik list view - image slideshow in Ajax upload */
body.view-list.slick-slide {
  	margin: auto 10px;
}

.slick-list.draggable {
  	cursor: pointer;
}

.slick-dotted.slick-slider {
	margin-bottom: 0px;
}

.slick-dots {
	bottom: -5px !important;
}

.slick-dots li button::before {
  	font-size: 10px;

}

.slickCarouselImage, .fabrik_list .carousel-img-container {
  	height: 280px;
  	display: flex !important;
  	justify-content: center;
 	align-items: center;
  	overflow: hidden;
}

/* === Slider principal (vue détail) === */
body.view-details .slick-slider.main-carousel {
  	--ab-slide-h: 270px;
}

body.view-details .slick-slider.main-carousel .slick-slide {
  	display: flex !important;
  	align-items: center !important;
  	justify-content: center !important;
  	min-height: var(--ab-slide-h);
  	overflow: hidden !important;
}

/* Mobile : Avoid overflow of the image */
@media (max-width: 992px) {
  body.view-details .slick-slider.main-carousel .slick-slide {
   	justify-content: flex-start !important;
	max-width: 375px !important;
  }
}

body.view-details .slick-slider.main-carousel .slick-slide img {
  	display: block !important;
  	max-width: 100% !important;
  	max-height: var(--ab-slide-h) !important;
  	width: auto !important;
  	height: auto !important;
 	object-fit: contain !important;
}

/* === Slider des miniatures (vue détail) === */
body.view-details .slick-slider.thumbs-carousel {
  	--thumb-gap: 4px;
}

body.view-details .slick-slider.thumbs-carousel .slick-slide {
  	margin: 0 var(--thumb-gap);
}

body.view-details .slick-slider.thumbs-carousel .slick-list {
  	margin: 0 calc(-1 * var(--thumb-gap));
}

body.view-details .slick-slider.thumbs-carousel .slick-slide img {
  	display: block;
  	margin: 0 auto;
  	height: auto !important;
  	max-height: 90px;
  	object-fit: contain;
}

/* === Slider en vue liste === */
body.view-list .slick-slide {
  	height: 280px !important;
  	display: flex !important;
  	align-items: center !important;
 	justify-content: center !important;
  	margin: auto 10px;
}

body.view-list .slick-slide img {
  	height: 260px !important;
  	width: auto !important;
  	object-fit: contain !important;
  	display: block !important;
}

.zoomLens {
  	background: none !important;
  	opacity: 0 !important;
  	cursor: zoom-in !important;
}

/* Fabrik list view - image slideshow in Ajax upload on landing page */
.accueil-latest .slick-slide img {
  	width: 60% !important;
	border-radius: 5px;
}

.accueil-latest .fabrikForm {
  	margin-top: -1rem !important;
}

.slick-prev,
.slick-next {
  	display: none !important;
}

form.fabrikForm {
	margin-top: 2rem;
}

#form_17.fabrikForm {
	margin-top: 0rem;
}

.view-list [class*="titre_demande"],
.view-list [class*="titre_offre"] {
  	font-weight: 400;
  	line-height: 3em;
  	font-size: 20px;
}

.heading.fabrik_ordercell {
  	line-height: 25px;
  	font-weight: normal;
  	font-size: 17px;
}

body.view-list td[class*="titre_demande"],
body.view-list td[class*="titre_offre"] {
  	font-weight: normal;
  	line-height: 25px;
  	font-size: 17px;
}


body.view-details [class*="titre_demande"],
body.view-details [class*="titre_offre"] {
  	font-weight: 500;
  	line-height: 2em;
  	font-size: 1.5rem;
  	color: #008AB6;
	margin: 20px 0px 0px 0px;
  	border-top: 1px solid #ccc;
}

/* Fabrik list view - € symbol add in price element */
.prix_css::after {
  	content: "€";
	margin-left: 2px;
}

/* Fabrik list view - request priority */
.urgence_css {
	position: relative;
}

.urgence_css::before {
	font-family: 'Font Awesome 6 Free';
	content: "\f017";
	margin-right: 5px;
	color: #555;
}

.urgence_css:hover::after {
	content: "Urgence";
	position: absolute;
	top: -2px;
	left: 20%;
	transform: translateX(-150%);
	color: #fff;
	padding: 1px 6px;
	border-radius: 4px;
	font-size: 13px;
	white-space: nowrap;
	z-index: 9999;
	opacity: 1;
	pointer-events: none;
	background-color: rgb(217, 127, 127);
}

/* Fabrik list view - product state */
.etat_css {
	position: relative;
}

.etat_css::before {
	content: "ℹ️";
	margin-right: 5px;
}

.etat_css:hover::after {
	content: "État";
	position: absolute;
	left: 15%;
	top: -2px;
	transform: translateX(-150%);
	color: #fff;
	padding: 1px 6px;
	border-radius: 2px;
	font-size: 13px;
	white-space: nowrap;
	z-index: 9999;
	opacity: 1;
	pointer-events: none;
	background-color: #03a0c6;
}

/* Fabrik list view - Contact button */
/* A new container for the button (enable the alignement) */
.fabrik_element[class*="___contacter"] {
  	display: flex;
  	justify-content: center;
  	align-items: center;
  	min-height: 34px;
  	margin-top: 15px;
}

.btn-contact-neutre {
  	color: #008AB6;
  	border-bottom: 1px solid transparent;
  	text-decoration: none;
  	transition: all 0.2s ease-in-out;
  	display: inline-flex !important;
  	align-items: center;
  	gap: 4px;
}


.btn-contact-neutre:hover {
    	color: #00789f;
    	border-bottom: 1px solid #015b72;
}

/* Fabrik list view - checkbox */
.form-check.fabrikgrid_checkbox.col-sm-12 {
	padding-left: 2.2em;
}

/* Fabrik form - radio element */
.form-check.fabrikgrid_radio.col-sm-6 {
	padding-left: 2.5em;
}

.btn-outline-secondary {
  	padding: 6px 15px !important;
}

/* Fabrik form - Button group wrap */
.fabrikSubElementContainer .btn-group[role="group"] {
  	flex-wrap: wrap;
  	justify-content: flex-start;
  	gap: 0.2rem;
}

.fabrikSubElementContainer .btn-group[role="group"] .btn {
  	padding: 0.4rem 0.6rem;
	white-space: nowrap;
}

@media (max-width: 768px) {
  	.fabrikSubElementContainer .btn-group[role="group"] .btn {
    	flex: 1 0 48% !important;
  }
}

/* Fabrik list view - filters button */
.toggleFilters.btn {
	color: var(--bs-body-color);
	background-color: #fbfcfd !important;
	border: 1px solid #ddd;
	padding: 6.5px 30px;
}

.toggleFilters.btn:hover {
	color: #000;
	border-color: #aaa;
}

.toggleFilters.btn::before {
	font-family: 'Font Awesome 6 Free';
	content: "\f1de";
	font-weight: 600;
	margin-right: 0.5em;
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	text-rendering: auto;
	font-style: normal;
}

/* Fabrik list view - Add button */
.addbutton.addRecord.btn {
	color: var(--bs-body-color);
	background-color: #fbfcfd !important;
	border: 1px solid #ddd;
	padding: 6.5px 30px;
}

.addbutton.addRecord.btn:hover {
	color: #000;
	border-color: #aaa;
}

.addbutton.addRecord.btn::before {
	font-family: 'Font Awesome 6 Free';
	content: "\2b";
	font-weight: 600;
	margin-right: 0.5em;
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	text-rendering: auto;
	font-style: normal;
}

color: var(--bs-body-color);
  	background-color: #fbfcfd !important;
  	border: 1px solid #ddd;
  	padding: 6.5px 30px;

/* Fabrik list view - dropdown buttons */
.btn.dropdown-toggle {
	color: var(--bs-body-color) !important;
	background-color: #fbfcfd !important;
	border: 1px solid #ddd !important;
}

.btn.dropdown-toggle:hover {
	color: #000 !important;
	border-color: #aaa !important;
}

/* Fabrik list view - empty button */
.doempty.btn {
	color: var(--bs-body-color) !important;
	background-color: #fbfcfd !important;
	border: 1px solid #ddd !important;
	padding: 6.5px 30px;
}

.doempty.btn:hover {
	color: #000 !important;
	border-color: #aaa !important;
}

/* Fabrik list view - Search all field and button */
.fabrikSearchAll {
  	margin-top: -20px;
  	margin-left: auto;
  	gap: 10px;
}

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

.fabrikSearchAll input[type="search"] {
  	min-width: 240px;
	min-height: 37px;
  	margin-bottom: 0 !important;
}

.fabrikSearchAll input[type="button"] {
  	margin-bottom: 0 !important;
}

/* Fabrik list view - filter area */
.fabrikFilterContainer {
	border: 1px solid #eee;
	border-left: 4px solid #03b4df;
	border-radius: 4px;
	background-color: #fbfcfd !important;
	box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
	margin-bottom: 2rem !important;
	padding: 1rem 1.5rem !important;
}

.fabrikFilterContainer select,
.fabrikFilterContainer input[type="text"],
.fabrikFilterContainer input[type="number"] {
	width: 100%;
	padding: 0.45rem 0.75rem;
	border: 1px solid #ccc;
	border-radius: 8px;
	font-size: 0.95rem;
	background-color: white;
}

.fabrikFilterContainer .btn,
.fabrikFilterContainer .btn-primary {
	padding: 0.45rem 1rem;
	font-size: 0.9rem;
	border-radius: 8px;
}

/* Fabrik list view - control buttons hover color */
.nav-link:hover {
  	color: #03a0c6;
}

/* Fabrik list view - group by button */
.dropdown-menu.show {
	padding: 10px;
}

/* Fabrik - Hide elements "qr_code_annonce" in all forms (not in the detailed view) */
form.fabrikForm:not(.fabrikDetails) .fabrikElementContainer[class*="fb_el_"][class*="_qr_code_annonce"] {
  	display: none !important;
}

/* Fabrik list view - QR code min width */
[id$="___qr_code_annonce_ro"] {
  min-width: 95px;
}

/* Fabrik - Hide elements "lien_annonce" in all forms (not in the detailed view) */
form.fabrikForm:not(.fabrikDetails) .fabrikElementContainer[class*="fb_el_"][class*="_lien_annonce"] {
  	display: none !important;
}

/* < 768px : 1 column */
@media (max-width: 767.98px) {
  .fabrik_row {
    width: 100% !important;
  }
}

/* 768px to 992.98px : 2 columns */
@media (min-width: 768px) and (max-width: 992.98px) {
  .fabrik_row {
    width: 50% !important;
  }
}

/* 993px to 1199.98px : 2 columns */
@media (min-width: 993px) and (max-width: 1199.98px) {
  .fabrik_row {
    width: 50% !important;
  }
}


/* === CB CRITAL OVERRIDES START HERE === */

/* CB powered by message removal */
.cbPoweredBy.cb_template.cb_template_default {
	display: none !important;
}

/* CB registration form - badge */
.badge-primary {
	background-color: #03a0c6 !important;
	font-size: 85%;
	font-weight: 500;
	border-radius: .25rem;
	padding: .30em .5em;
	text-align: center;
	vertical-align: baseline;
	white-space: nowrap;
	margin-bottom: .1rem;
}

/* CB User Profile page - Nav menu */
.navbar.navbar-expand.navbar-light.bg-light.mb-0.border.rounded.cbNavBar.cbMenuNavBar {
	background: none !important;
	border-bottom: none !important;
	padding: 8px 8px;
}

/* CB User Profile page - H3 style */
.m-0.p-0.mb-2.cb-page-header-title {
	font-size: 2rem !important;
}

/* CB Manage Connections page */
.cbTooltip.border.btn.btn-light.btn-sm.cbCanvasLayoutMenu {
	color: #547081 !important;
	background-color: #fff !important;
}

.cbTooltip.border.btn.btn-light.btn-sm.cbCanvasLayoutMenu:hover,
.cbTooltip.border.btn.btn-light.btn-sm.cbCanvasLayoutMenu[aria-expanded="true"] {
	color: #495359 !important;
	background-color: #eaeaea !important;
}

/* CB User Profile Page - Connection tab buttons */
.h-100.btn.btn-sm.btn-light.border.btn-block {
	border-color: #0398bc !important;
	background-color: rgba(3,160,198,0.9);
	color: #fff;
}

.h-100.btn.btn-sm.btn-light.border.btn-block:hover {
	border-color: #02637b !important;
	background-color: #0390b2;
	color: #fff;
}

/* CB User Profile Page - Connection tab user status margins */
.m-2.text-truncate.cbCanvasLayoutContent {
	margin: 1.0rem !important;
}

/* CB registration form - password Show or Mask button */
.cb_template .input-group-append {
	display: inline-block;
}

.cbPasswordUnmaskShow, .cbPasswordUnmaskHide, #cbselect_connection {
	padding: 5.5px 12px;
}

/* CB private message form row margin */
.row.no-gutters {
	margin-top: 1rem;
}

/* CB private message form search button */
.btn-light {
  	color: #797979;
	height: 34px;
	padding: 2px 20px 0px 20px;
}

.btn-light:hover {
  	color: #333;
}

/* CB private message form message type button */
.select2-container--single {
  	height: 34px !important;
  	padding: 2px 40px 0px 30px;
}

/* CB User Profile page - connection with user icon */
.cb_template .cbConnectionPaths .cbImgPict, .cb_template .cbConnectionPaths img {
	position: relative;
	bottom: 5px;
	max-height: 40px;
	margin: 0 0 0 0.5rem;
	padding: 2px 2px 2px 2px;
}

/* CB Users List - firstname margin*/
.cbUserListFieldLine.cbUserListFL_firstname {
	margin: 0rem 0rem 0.2rem 0.2rem;
}

/* CB Private Message page - Message TinyMCE field height*/
div.tox.tox-tinymce {
	min-height: 300px !important;
}

.tox-edit-area__iframe {
	min-height: 250px !important;
}

/* CB registration form - active tab bottom border */
.cbTabNavLink.nav-link.active {
	background-color: #fbfcfd !important;
	border-bottom: var(--bs-border-color);
}

/* CB registration form - NavMenu top margin */
#cbtabsCBNav {
	margin-top: 2rem;
}

/* CB User Profile page - avatar */
.cbImgPict.cbFullPict.img-thumbnail.rounded-circle.cbImgAvatar {
	max-width: 160px !important;
}

.cbImgAvatar {
	max-width: 80px;
}

/*CB New Message - Select Connections - Send to button*/
.cb_template .fa-before::before {
	color: #7b7b7b;
}

.cb_template .fa-before:hover::before {
	color: #212529;
}

.rounded-start-0.btn.btn-primary {
  	padding: 5.5px 25px;
}

/* CB Online module - on landing page */
.cbOnlineUsers {
  	display: flex;
  	justify-content: center;
  	flex-wrap: wrap;
	gap: 5px;
}

/* Flex - Articles info override */
.article-info {
  	padding-top: 20px;
	padding-bottom: 20px;
}

.article-info > dd {
  	font-size: 15px;
}

.tags > span > i {
  	color: #04c9f8;
}

.tags:hover > span > i {
  	color: #0390b2;
}

.tags {
  	font-size: 95%;
  	padding-top: 20px;
}

/* Read More HR removal from complete article */
.site.com-content.view-article article.item-page > hr:first-of-type {
  	display: none !important;
}

.entry-header h1 {
  	font-size: 210%;
  	font-weight: 300 !important;
	box-shadow: none;
}

.entry-header h1::after {
  	width: 100%;
	height: 1.5px;
}

.entry-header h2 {
  	font-weight: 300 !important;
	font-size: 170%;
	padding-right: 20px;
	box-shadow: none;
}

.entry-header h2::after {
  	width: 100%;
	height: 1.5px;
}

/*FAQ custom H2*/

.itemid-342 .entry-header h2 {
	box-shadow: none;
	font-weight: 500 !important;
 	font-size: 140%;
	color: rgb(7, 97, 119);
}

.itemid-342 .entry-header h2::after {
	display: none;
}

.itemid-342 dl.article-info {
  	display: none !important;
}

.entry-header.has-post-format .post-format {
  	width: 44px;
  	height: 44px;
  	font-size: 20px;
  	line-height: 42px;
}

/* Article header */
.site.com-content.view-article .com-content-article__body h2 {
  	color: #444;
	font-weight: 300 !important;
  	line-height: 1.35;
  	position: relative;
  	padding-left: 14px;
}

/* Article header on FAQ */
h2#headingForm337.accordion-header {
  	padding: 15px 0 15px 0;
}


/* Cyan bar before Header */
.site.com-content.view-article .com-content-article__body h2::before {
  	content: "";
  	position: absolute;
  	left: 0;
  	top: 0.60em;
  	width: 4px;
  	height: 0.9em;
  	background: #03b4df;
 	 border-radius: 2px;
}

/* Cyan bar before Header - removal on FAQ articles */
h2#headingForm337.accordion-header::before {
  	background: none !important;
}

/* Articles and Blog views Blockquotes */
.item-page .com-content-article__body blockquote,
.item-page .article-body blockquote,
.blog .items-row blockquote,
.article-details blockquote,
.com-content-article blockquote {
  	border-left-width: 4px !important;
  	border-left-style: solid !important;
  	border-left-color: #03a0c6 !important;
  	padding: .75rem 1rem !important;
  	margin: 1rem 0 !important;
  	background: rgba(3,160,198,.06) !important;
  	font-style: italic;
  	line-height: 1.6;
}

/* Article column padding */
.blog .col-lg-6.mb-4 article.item {
  	padding-right: 30px;
}

/* --- FAQ AeroBridge --- */
/* --- FAQ AeroBridge + section SP Page Builder (.main-section-faq) --- */

#faqAccordion .accordion-item,
.main-section-faq .accordion-item {
  	border: none;
  	border-bottom: 1px solid #e0e4e8;
  	border-radius: 0;
  	margin-bottom: .75rem;
}

#faqAccordion .accordion-button,
.main-section-faq .accordion-button {
  	background-color: transparent;
  	color: rgb(2, 119, 148); /* bleu foncé style EASA */
  	font-weight: 400;
 	font-size: 20px;
  	box-shadow: none !important;
  	padding: 0 0 25px 0;
}

#faqAccordion .accordion-body,
.main-section-faq .accordion-body {
  	font-size: 0.97rem;
  	line-height: 1.6;
  	color: #333;
  	padding: 0 0 1rem 0;
}

#faqAccordion .accordion-button::after,
.main-section-faq .accordion-button::after {
  	content: "\f078";
  	font-family: "Font Awesome 5 Free";
  	font-weight: 900;
  	color: #027D9D;
  	transition: transform 0.2s;
	background-image: none;
}

#faqAccordion .accordion-button:not(.collapsed)::after,
.main-section-faq .accordion-button:not(.collapsed)::after {
  	transform: rotate(180deg);
	background-image: none;
}

.accordion .accordion-collapse,
.main-section-faq .accordion-collapse {
  	transition: height 1.2s ease-in-out !important;
}



/*PhocaDownload customization*/

.pd-button-box-bt .btn.btn-info {
  	color: #fff;
  	background-color: #1ca9cc;
  	border-color: #0398bc;
}

/* Variantes de taille (optionnel) */
.site.com-content.view-article .com-content-article__body h3::before { height: 0.8em; }
.site.com-content.view-article .com-content-article__body h4::before { height: 0.7em; }

.helix-social-share .helix-social-share-blog ul {
  	background: none !important;
}

/* Password Reset on Com User Joomla page - height bug fixing */
.view-reset .jviewport-height60 {
  	height: auto !important;
  	min-height: 80vh !important;
}

.view-reset #sp-main-body {
  	padding-bottom: 100px !important;
}

@media (max-width: 768px) {
.view-reset #sp-main-body {
    	padding-bottom: 100px !important;
  }
}

/* Flex - Footer */
#sp-footer.aerobridge-footer {
	box-shadow: 0px -2px 6px rgba(0, 0, 0, 0.08) !important;
	padding: 15px 0px !important;
}

/* SP Cookie Consent */
div#sp-cookie-consent.position-bottom_right {
  	width: 500px;
  	max-width: 100%;
  	border-radius: 4px;
  	bottom: 20px;
  	right: 20px !important;
}

/* Cacher complètement le dropdown pour l'item 214 (Création/Annonce) */
#sp-header li.item-214 .sp-dropdown-sub {
  display: none !important;
}

/* Enlever la flèche/caret qui indique un sous-menu */
#sp-header li.item-214.sp-has-child > a:after {
  content: none !important;
}

/* Optionnel: annuler la largeur mini de l’inner si Helix la force */
#sp-header li.item-214 .sp-dropdown-inner {
  min-width: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  box-shadow: none !important;
}