/* 

========================================================== 
LIBURU 
partners.css 
Design espace partenaires 
========================================================== 
*/ 

/****************************************************** 
VARIABLES 
******************************************************/ 
:root 
{ 
	--partners-green:#4ca875; 
	--partners-green-dark:#37885d; 
	--partners-green-light:#e8f7ef; 
	--partners-green-soft:#f1faf5; 
	--partners-text:#333333; 
	--partners-text-light:#777777; 
	--partners-border:#eeeeee; 
	--partners-background:#f8faf9; 
	--partners-white:#ffffff; 
	--partners-shadow: 0 8px 25px rgba(0,0,0,.06); 
	--partners-radius:16px; 
} 

/****************************************************** 
GLOBAL 
******************************************************/ 
* 
{ 
	box-sizing:border-box; 
} 

html 
{ 
	scroll-behavior:smooth; 
} 

body 
{ 
	margin:0; 
	font-family: Arial, Helvetica, sans-serif; 
	color:var(--partners-text); 
	background: var(--partners-background); 
	line-height:1.6; 
} 

a 
{ 
	text-decoration:none; 
} 

button, input 
{ 
	font-family:inherit; 
} 

/****************************************************** 
HEADER 
******************************************************/ 
.partners_header 
{ 
	width:100%; 
	background: var(--partners-white); 
	border-bottom: 1px solid var(--partners-border); 
} 

.partners_header_inner 
{ 
	width:100%; 
	min-height:75px; 
	padding: 0 30px; 
	display:flex; 
	align-items:center; 
	justify-content:space-between; 
	gap:25px; 
} 

/****************************************************** 
LOGO 
******************************************************/ 
.partners_header_logo 
{ 
	display:flex; 
	flex-direction:column; 
	align-items:flex-start; 
	flex:1 1 auto; 
	min-width:0; 
} 

.partners_logo 
{ 
	font-size:28px; 
	font-weight:700; 
	color: var(--partners-green); 
	letter-spacing:1px; 
	line-height:1; 
	transition:.2s; 
} 

.partners_logo:hover 
{ 
	opacity:.85; 
} 

.partners_slogan 
{ 
	font-size:12px; 
	color:#777; 
	font-style:italic; 
	margin-top:3px; 
	letter-spacing:.4px; 
} 

/****************************************************** 
TITRE ESPACE PARTENAIRES 
******************************************************/ 
.partners_header_title 
{ 
	display:flex; 
	align-items:center; 
	justify-content:center; 
} 

.partners_header_title span 
{ 
	padding: 8px 16px; 
	border-radius:12px; 
	background: var(--partners-green-light); 
	color: var(--partners-green-dark); 
	font-size:14px; 
	font-weight:600; 
	white-space:nowrap; 
} 

/****************************************************** 
RETOUR LIBURU 
******************************************************/ 
.partners_header_action 
{ 
	display:flex; 
	justify-content:flex-end; 
	flex:1 1 auto; 
} 

.partners_back 
{ 
	padding: 10px 18px; 
	border-radius:12px; 
	background: var(--partners-green-light); 
	color: var(--partners-green-dark); 
	font-size:14px; 
	font-weight:500; 
	transition:.2s; 
} 

.partners_back:hover 
{ 
	background: #d7f0e2; 
} 

/****************************************************** 
PAGE 
******************************************************/ 
.partners_page 
{ 
	width:100%; 
} 

/****************************************************** 
HERO 
******************************************************/ 
.partners_hero 
{ 
	padding: 80px 30px; 
	background: linear-gradient( 135deg, #f1faf5 0%, #ffffff 100% ); 
	border-bottom: 1px solid var(--partners-border); 
	text-align:center; 
} 

.partners_hero_content 
{ 
	width:100%; 
	max-width:850px; 
	margin:0 auto; 
} 

.partners_hero h1 
{ 
	margin: 0 0 20px; 
	font-size:42px; 
	line-height:1.2; 
	color: var(--partners-green-dark); 
} 

.partners_hero p 
{ 
	max-width:700px; 
	margin: 0 auto; 
	font-size:19px; 
	color: var(--partners-text-light); 
} 

/****************************************************** 
AUTHENTIFICATION 
******************************************************/ 
.partners_auth 
{ 
	padding: 60px 30px; 
} 

.partners_auth_cards 
{ 
	width:100%; 
	max-width:1050px; 
	margin:0 auto; 
	display:grid; 
	grid-template-columns: repeat(2, minmax(0,1fr)); 
	gap:30px; 
} 

/****************************************************** 
CARTES 
******************************************************/ 
.partners_card 
{ 
	padding:35px; 
	background: var(--partners-white); 
	border: 1px solid var(--partners-border); 
	border-radius: var(--partners-radius); 
	box-shadow: var(--partners-shadow); 
} 

.partners_card h2 
{ 
	margin: 0 0 12px; 
	color: var(--partners-green-dark); 
	font-size:25px; 
} 

.partners_card > p 
{ 
	margin: 0 0 25px; 
	color: var(--partners-text-light); 
} 

/****************************************************** 
FORMULAIRE 
******************************************************/ 
.partners_form_group 
{ 
	margin-bottom:18px; 
} 

.partners_form_group label 
{ 
	display:block; 
	margin-bottom:6px; 
	font-size:14px; 
	font-weight:600; 
	color:#444; 
} 

.partners_form_group input 
{ 
	width:100%; 
	padding: 12px 14px; 
	border: 1px solid #dddddd; 
	border-radius:10px; 
	background:#fff; 
	color:#333; 
	font-size:15px; 
	outline:none; 
	transition: border-color .2s, box-shadow .2s; 
} 

.partners_form_group input:focus 
{ 
	border-color: var(--partners-green); 
	box-shadow: 0 0 0 3px rgba(76,168,117,.12); 
} 

/****************************************************** 
BOUTONS 
******************************************************/ 
.partners_button 
{ 
	display:inline-flex; 
	align-items:center; 
	justify-content:center; 
	min-height:46px; 
	padding: 11px 22px; 
	border:none; 
	border-radius:12px; 
	font-size:15px; 
	font-weight:600; 
	cursor:pointer; 
	transition:.2s; 
} 

.partners_button_primary 
{ 
	width:100%; 
	background: var(--partners-green); 
	color:#ffffff; 
} 

.partners_button_primary:hover 
{ 
	background: var(--partners-green-dark); 
} 

.partners_button_secondary 
{ 
	background: var(--partners-green-light); 
	color: var(--partners-green-dark); 
} 

.partners_button_secondary:hover 
{ 
	background: #d7f0e2; 
} 

.partners_button_cta 
{ 
	background:#ffffff; 
	color: var(--partners-green-dark); 
	padding: 13px 28px; 
} 

.partners_button_cta:hover 
{ 
	background: #f1faf5; 
} 

/****************************************************** 
MOT DE PASSE OUBLIE 
******************************************************/ 
.partners_forgot_password 
{ 
	display:block; 
	margin-top:18px; 
	text-align:center; 
	font-size:13px; 
	color: var(--partners-green-dark); 
} 

.partners_forgot_password:hover 
{ 
	text-decoration:underline; 
} 

/****************************************************** 
MESSAGE 
******************************************************/ 
.partners_message 
{ 
	min-height:20px; 
	margin-top:12px; 
	text-align:center; 
	font-size:14px; 
} 

/****************************************************** 
NOTICE VALIDATION 
******************************************************/ 
.partners_validation_notice 
{ 
	margin-top:22px !important; 
	padding: 12px 14px; 
	border-radius:10px; 
	background: var(--partners-green-soft); 
	color: var(--partners-green-dark) !important; 
	font-size:13px; 
} 

/****************************************************** 
SECTIONS 
******************************************************/ 
.partners_why, .partners_how 
{ 
	padding: 70px 30px; 
} 

.partners_why 
{ 
	background:#ffffff; 
} 

.partners_section_title 
{ 
	max-width:750px; 
	margin: 0 auto 45px; 
	text-align:center; 
} 

.partners_section_title h2 
{ 
	margin: 0 0 12px; 
	font-size:32px; 
	color: var(--partners-text); 
} 

.partners_section_title p 
{ 
	margin:0; 
	color: var(--partners-text-light); 
	font-size:16px; 
} 

/****************************************************** 
AVANTAGES 
******************************************************/ 
.partners_benefits 
{ 
	width:100%; 
	max-width:1100px; 
	margin:0 auto; 
	display:grid; 
	grid-template-columns: repeat(3, minmax(0,1fr)); 
	gap:25px; 
} 

.partners_benefit 
{ 
	padding:28px; 
	background: var(--partners-background); 
	border: 1px solid var(--partners-border); 
	border-radius: var(--partners-radius); 
	text-align:center; 
	transition: transform .2s, box-shadow .2s; 
} 

.partners_benefit:hover 
{ 
	transform: translateY(-4px); 
	box-shadow: var(--partners-shadow); 
} 

.partners_benefit_icon 
{ 
	width:55px; 
	height:55px; 
	margin: 0 auto 18px; 
	display:flex; 
	align-items:center; 
	justify-content:center; 
	border-radius:50%; 
	background: var(--partners-green-light); 
	font-size:25px; 
} 

.partners_benefit h3 
{ 
	margin: 0 0 10px; 
	color: var(--partners-green-dark); 
	font-size:19px; 
} 

.partners_benefit p 
{ 
	margin:0; 
	color: var(--partners-text-light); 
	font-size:14px; 
} 

/****************************************************** 
FONCTIONNEMENT 
******************************************************/ 
.partners_how 
{ 
	background: var(--partners-background); 
} 

.partners_steps 
{ 
	width:100%; 
	max-width:1100px; 
	margin:0 auto; 
	display:grid; 
	grid-template-columns: repeat(3, minmax(0,1fr)); 
	gap:25px; 
} 

.partners_step 
{ 
	position:relative; 
	padding:25px; 
	background:#ffffff; 
	border: 1px solid var(--partners-border); 
	border-radius: var(--partners-radius); 
	text-align:center; 
} 

.partners_step_number 
{ 
	width:45px; 
	height:45px; 
	margin: 0 auto 15px; 
	display:flex; 
	align-items:center; 
	justify-content:center; 
	border-radius:50%; 
	background: var(--partners-green); 
	color:#ffffff; 
	font-weight:700; 
	font-size:18px; 
} 

.partners_step h3 
{ 
	margin: 0 0 10px; 
	font-size:18px; 
	color: var(--partners-green-dark); 
} 

.partners_step p 
{ 
	margin:0; 
	color: var(--partners-text-light); 
	font-size:14px; 
} 

/****************************************************** 
CTA 
******************************************************/ 
.partners_cta 
{ 
	padding: 70px 30px; 
	background: var(--partners-green); 
	text-align:center; 
	color:#ffffff; 
} 

.partners_cta h2 
{ 
	margin: 0 0 12px; 
	font-size:32px; 
} 

.partners_cta p 
{ 
	max-width:650px; 
	margin: 0 auto 25px; 
	color: rgba(255,255,255,.9); 
	font-size:16px; 
} 

/****************************************************** 
FOOTER 
******************************************************/ 
.partners_footer 
{ 
	padding: 25px 30px; 
	background: #ffffff; 
	border-top: 1px solid var(--partners-border); 
	text-align:center; 
} 

.partners_footer_links 
{ 
	display:flex; 
	align-items:center; 
	justify-content:center; 
	gap:10px; 
	flex-wrap:wrap; 
	font-size:14px; 
} 

.partners_footer_links a 
{ 
	color: var(--partners-green-dark); 
} 

.partners_footer_links a:hover 
{ 
	text-decoration:underline; 
} 

.partners_footer_version 
{ 
	margin-top:8px; 
	color:#999; 
	font-size:12px; 
} 

/****************************************************** 
TABLETTE 
******************************************************/ 
@media(max-width:1000px) 
{ 
	.partners_header_inner 
	{ 
		min-height:75px; 
		padding: 12px 20px; 
		flex-wrap:wrap; 
		gap:12px; 
	} 
	
	.partners_header_logo 
	{ 
		flex: 1 1 auto; 
	} 
	
	.partners_header_title 
	{ 
		order:3; width:100%; 
	} 
	
	.partners_header_action 
	{ 
		flex: 0 1 auto; 
	} 
	
	.partners_hero 
	{ 
		padding: 65px 25px; 
	} 
	
	.partners_hero h1 
	{ 
		font-size:36px; 
	} 
	
	.partners_benefits 
	{ 
		grid-template-columns: repeat(2, minmax(0,1fr)); 
	} 
	
	.partners_steps 
	{ 
		grid-template-columns: repeat(2, minmax(0,1fr)); 
	} 
} 
	
/****************************************************** 
MOBILE 
******************************************************/ 
@media(max-width:700px) 
{ 
	.partners_header_inner 
	{ 
		min-height:65px; 
		padding: 12px 15px; 
		gap:12px; 
	} 
	
	.partners_logo 
	{ 
		font-size:24px; 
	} 
	
	.partners_slogan 
	{ 
		font-size:11px; 
	} 
	
	.partners_header_title span 
	{ 
		padding: 7px 13px; 
		font-size:13px; 
	} 
	
	.partners_back 
	{ 
		padding: 8px 11px; 
		font-size:13px; 
	} 
	
	.partners_hero 
	{ 
		padding: 55px 20px; 
	} 
	
	.partners_hero h1 
	{ 
		font-size:30px; 
	} 
	
	.partners_hero p 
	{ 
		font-size:16px; 
	} 
	
	.partners_auth 
	{ 
		padding: 45px 15px; 
	} 
	
	.partners_auth_cards 
	{ 
		grid-template-columns:1fr; 
		gap:20px; 
	} 
	
	.partners_card 
	{ 
		padding:25px 20px; 
	} 
	
	.partners_card h2 
	{ 
		font-size:22px; 
	} 
	
	.partners_why, .partners_how 
	{ 
		padding: 50px 15px; 
	} 
	
	.partners_section_title h2 
	{ 
		font-size:27px; 
	} 
	
	.partners_benefits 
	{ 
		grid-template-columns:1fr; 
		gap:18px; 
	} 
	
	.partners_steps 
	{ 
		grid-template-columns:1fr; 
		gap:18px; 
	} 
	
	.partners_cta 
	{ 
		padding: 55px 20px; 
	} 
	
	.partners_cta h2 
	{ 
		font-size:27px; 
	} 
	
	.partners_footer 
	{ 
		padding: 22px 15px; 
	} 
} 

/****************************************************** 
PETITS MOBILES 
******************************************************/ 
@media(max-width:400px) 
{ 
	.partners_header_inner 
	{ 
		padding: 10px; 
	} 
	
	.partners_logo 
	{ 
		font-size:22px; 
	} 
	
	.partners_slogan 
	{ 
		font-size:10px; 
	} 
	
	.partners_header_title span 
	{ 
		font-size:12px; 
	} 
	
	.partners_back 
	{ 
		padding: 7px 9px; 
		font-size:12px; 
	} 
	
	.partners_hero 
	{ 
		padding: 45px 15px; 
	} 
	
	.partners_hero h1 
	{ 
		font-size:27px; 
	} 
	
	.partners_card 
	{ 
		padding: 22px 17px; 
	} 
}