:root{
	--aw-paper: #f6f2e9;
	--aw-surface: #fbf8f2;
	--aw-ink: #2d2a26;
	--aw-muted: #6e6255;
	--aw-line: #ddd5c9;
	--aw-bordeaux: #7a1f2a;
	--bs-secondary:#eee9e2;
	--bs-secondary-rgb:238,233,226;
}

body{
	background: var(--aw-paper);
	color: var(--aw-ink);
	font-family: Georgia,"Times New Roman",serif;
	line-height: 1.7;
}

h1,h2,h3,h4,h5,h6{
	font-family: Georgia,"Times New Roman",serif;
	font-weight: 400;
	line-height: 1.15;
	color: var(--aw-ink);
	margin-top: 0;
	margin-bottom: 1rem;
}

h1{
	font-size: clamp(2.3rem,5vw,4rem);
}
h2{
	font-size: clamp(1.8rem,3.5vw,2.6rem);
}
h3{
	font-size: clamp(1.45rem,2.4vw,2rem);
}
h4{
	font-size: 1.25rem;
}
h5{
	font-size: 1.05rem;
}
h6{
	font-size: .95rem;
}

p{
	margin-bottom: 1.25rem;
}

hr{
	border: 0;
	border-top: 1px solid var(--aw-line);
	opacity: 1;
	margin: 2rem 0;
}
a{
	color: var(--aw-ink);
	text-decoration: none;
}

a:hover{
	color: var(--aw-muted);
}
.aw-border-color {
	border-top-color: var(--aw-line) !important;
}
.aw-clamp-4 {
	display: -webkit-box;
	-webkit-line-clamp: 4;
	-webkit-box-orient: vertical;
	overflow: hidden;
}

.aw-success-title {
	color: #557c63;
}

.navbar{
	background: var(--aw-paper);
	border-bottom: 1px solid var(--aw-line);
	padding: 1.4rem 0;
}

.navbar-brand{
	font-family: Georgia,"Times New Roman",serif;
	font-size: 1.25rem;
	letter-spacing: .04em;
	color: var(--aw-ink);
}

.nav-link{
	font-family: Arial,sans-serif;
	font-size: .92rem;
	color: var(--aw-ink);
}

.aw-hero{
	padding: 5rem 0;
}

.aw-hero h1{
	font-size: clamp(2.6rem,6vw,4.4rem);
	line-height: 1.05;
	font-weight: 400;
	margin-bottom: 1.5rem;
}

.aw-lead{
	font-size: 1.16rem;
	max-width: 62ch;
}

.aw-section{
	padding: 4.5rem 0;
}

.aw-section h2:not(.h3):not(.h4):not(.h5):not(.h6){
	font-size: clamp(1.9rem,4vw,2.7rem);
	font-weight: 400;
	margin-bottom: 1.8rem;
}

.aw-bg-gradient-top {
	background: #EEE9E2;
	background: linear-gradient(180deg,rgba(238, 233, 226, 1) 0%, rgba(246, 242, 233, 1) 100%);
}
.aw-bg-gradient-radial {
	background: #EEE9E2;
	background: radial-gradient(circle,rgba(238, 233, 226, 1) 0%, rgba(246, 242, 233, 1) 100%);
}

.aw-kicker,
.aw-meta{
	font-family: Arial,sans-serif;
	font-size: .82rem;
	text-transform: uppercase;
	letter-spacing: .1em;
	color: var(--aw-muted);
	margin-bottom: .75rem;
}
.aw-meta-banner{
	font-family: Arial, sans-serif;
	font-size: .82rem;
	text-transform: uppercase;
	letter-spacing: .1em;
	color: #FFFFFF;
	background-color: #6e6255;
	width: 100%;
	display: block;
	padding: .75rem 0;            /* Ajoute de l'espace autour du texte */
	text-align: center;         /* Centre le texte horizontalement */
	margin-bottom: .75rem;
}

.aw-card{
	background: var(--aw-surface);
	border: 1px solid var(--aw-line);
	border-radius: 0;
	padding: 1.75rem;
}

.aw-card h3,
.aw-book-title{
	font-weight: 400;
	font-size: 1.45rem;
}

.aw-book-cover{
	max-width: 250px;
	width: 100%;
	height: auto;
	border: 1px solid var(--aw-line);
}

.aw-btn{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: .55rem;
	min-height: 44px;
	padding: .75rem 1.35rem;
	border-radius: 999px;
	background: var(--aw-ink);
	color: var(--aw-paper);
	font-family: Arial,sans-serif;
	font-size: .92rem;
	line-height: 1;
	border: 1px solid var(--aw-ink);
	text-decoration: none;
	transition: background .18s ease,color .18s ease,border-color .18s ease,transform .18s ease;
}

.aw-btn:hover{
	background: var(--aw-muted);
	color: var(--aw-paper);
	border-color: var(--aw-muted);
	transform: translateY(-1px);
}

.aw-btn svg{
	width: 18px;
	height: 18px;
	flex: 0 0 auto;
	fill: currentColor;
}

.aw-btn-outline{
	background: transparent;
	color: var(--aw-ink);
	border: 1px solid var(--aw-line);
}

.aw-btn-outline:hover{
	background: var(--aw-ink);
	color: var(--aw-paper);
}

.btn-linkedin{
	background: #0A66C2;
	border-color: #0A66C2;
	color: #fff;
}

.btn-linkedin:hover{
	background: #084f96;
	border-color: #084f96;
	color: #fff;
}

.btn-fetlife{
	background: var(--aw-bordeaux);
	border-color: var(--aw-bordeaux);
	color: #fff;
}

.btn-fetlife:hover{
	background: #5f1720;
	border-color: #5f1720;
	color: #fff;
}

.btn-author{
	background: #232f3e;
	border-color: #232f3e;
	color: #fff;
}

.btn-author:hover{
	background: #131a22;
	border-color: #131a22;
	color: #fff;
}

.aw-portrait{
	max-width: 430px;
	width: 100%;
	display: block;
	border: 1px solid var(--aw-line);
}

.aw-caption{
	margin-top: .9rem;
	font-size: .95rem;
	color: var(--aw-muted);
	font-style: italic;
}

.aw-divider{
	border-top: 1px solid var(--aw-line);
}

.aw-quote{
	font-size: 1.35rem;
	line-height: 1.55;
	font-style: italic;
	color: var(--aw-muted);
	border-left: 1px solid var(--aw-line);
	padding-left: 1.5rem;
}

.aw-badge{
	display: inline-flex;
	align-items: center;
	padding: .25rem .65rem;
	border: 1px solid var(--aw-line);
	border-radius: 999px;
	font-family: Arial,sans-serif;
	font-size: .76rem;
	letter-spacing: .04em;
	color: var(--aw-muted);
	margin-right: .35rem;
	margin-bottom: .35rem;
}

.form-control{
	background: var(--aw-surface);
	border: 1px solid var(--aw-line);
	border-radius: 0;
	color: var(--aw-ink);
	font-family: Georgia,"Times New Roman",serif;
	padding: .85rem 1rem;
}

.form-control:focus{
	background: var(--aw-surface);
	border-color: var(--aw-muted);
	box-shadow: 0 0 0 .15rem rgba(110,98,85,.15);
	color: var(--aw-ink);
}

.form-label{
	font-family: Arial,sans-serif;
	font-size: .86rem;
	text-transform: uppercase;
	letter-spacing: .08em;
	font-weight: 700;
	color: var(--aw-muted);
}

.aw-social-pill{
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border-radius: 50%;
	margin-right: .7rem;
	box-shadow: 0 2px 8px rgba(0,0,0,.08);
}

.aw-social-pill svg{
	width: 20px;
	height: 20px;
	display: block;
}

.aw-social-pill svg path{
	fill: #fff;
}

.aw-linkedin{
	background: #0A66C2;
}
.aw-fetlife{
	background: var(--aw-bordeaux);
}
.aw-mae{
	background: #2d2a26;
}

.aw-legal-nav{
	position: sticky;
	top: 6rem;
	max-height: calc(100vh - 7rem);
	overflow: auto;
}

.aw-legal-nav ul{
	list-style: none;
	padding-left: 0;
	margin-bottom: 0;
}

.aw-legal-nav li{
	margin-bottom: .55rem;
}

.aw-legal-nav a{
	font-family: Arial,sans-serif;
	font-size: .92rem;
	color: var(--aw-muted);
}

.aw-legal-nav a:hover{
	color: var(--aw-ink);
}

.aw-legal-content section{
	scroll-margin-top: 6rem;
	padding-top: 2rem;
	margin-top: 2rem;
	border-top: 1px solid var(--aw-line);
}

.aw-legal-content section:first-of-type{
	margin-top: 1.5rem;
}

.aw-legal-content h2{
	margin-bottom: 1.25rem;
}

.aw-legal-content h3{
	margin-top: 1.5rem;
	font-size: 1.35rem;
}
/*REFLEXIONS*/
.aw-reflexions .card-title{
	font-size: 1.65rem;
	line-height: 1.25;
	margin-bottom: .75rem;
}

.aw-reflexions .card-text{
	font-size: 1.00rem;
	line-height: 1.55;
}
.aw-reflexions .aw-kicker{
	font-family: Arial,sans-serif;
	font-size: .82rem;
	text-transform: uppercase;
	letter-spacing: .1em;
	color: var(--aw-muted);
	margin-bottom: .75rem;
}

.aw-tooltip{
	position:relative;
}

.aw-tooltip::after{
	content:attr(data-label);
	position:absolute;
	bottom:-32px;
	left:50%;
	transform:translateX(-50%);
	background:var(--aw-ink);
	color:var(--aw-paper);
	font-size:.75rem;
	padding:.25rem .5rem;
	border-radius:4px;
	white-space:nowrap;
	opacity:0;
	pointer-events:none;
	transition:opacity .15s ease, transform .15s ease;
	transform:translateX(-50%) translateY(4px);
}

.aw-tooltip:hover::after{
	opacity:1;
	transform:translateX(-50%) translateY(0);
}
.aw-alert{
	padding:1rem 1.25rem;
	margin-bottom:1.5rem;
	border:1px solid var(--aw-line);
	background:var(--aw-surface);
	font-family:Arial,sans-serif;
	font-size:.9rem;
}

.aw-alert-success{
	border-color:#c7d7c1;
	background:#f3f7f1;
	color:#2e4d2c;
}

.aw-alert-error{
	border-color:#e0b4b4;
	background:#faf3f3;
	color:#7a1f2a;
}
.aw-form-block{
	margin-bottom:1.25rem;
}

.aw-altcha{
	width:100%;
}

.aw-altcha altcha-widget{
	display:block;
	width:100%;
}
	altcha-widget {
	--altcha-max-width: 100%;
	--altcha-button-size: 24px;
	--altcha-color: #0d6efd;
	--altcha-bg-color: #eee9e2;
	--altcha-border-color: #eee9e2;
	--altcha-border-radius: 8px;
	--altcha-border-width: 0px !important;
	margin: 20px auto;
	display: block;
}
altcha-widget .altcha-logo {
	display: none !important;
}
altcha-widget::part(label) {
	margin-right: 0 !important;
	padding-right: 0 !important;
}
altcha-widget::part(label-container) {
	width: 100% !important;
}

.aw-altcha altcha-widget::part(altcha){
	width:100%;
	max-width:none;
	background:var(--aw-surface);
	border:1px solid var(--aw-line);
	border-radius:0;
	font-family:Arial,sans-serif;
	color:var(--aw-ink);
	background: var(--aw-paper);
	border: 1px solid var(--aw-line);
	padding: .6rem .8rem;
	font-size: .85rem;
}

.aw-altcha + .aw-btn{
	margin-top:.75rem;
}
/*figure*/
.aw-portrait-figure{
	max-width: 430px;
	margin: 0 auto;
	background: #eee9e2;
	padding: .9rem;
	border: 1px solid rgba(0,0,0,.04);
}

.aw-portrait-figure .aw-portrait{
	width: 100%;
	max-width: none;
	height: auto;
	display: block;
	margin: 0;
	border: 1px solid var(--aw-line);
}

.aw-portrait-figure .aw-caption{
	font-size: .8rem;
	color: #6f6a64;
	margin: .5rem 0 0;
	line-height: 1.4;
	text-align: right;
}

/*altcha*/
.aw-altcha{
	width: 100%;
}

.aw-altcha altcha-widget{
	display: block;
	width: 100%;
	--altcha-max-width: 100%;
	--altcha-button-size: 24px;
	--altcha-color: var(--aw-bordeaux);
	--altcha-bg-color: #ff557f;
	--altcha-border-color: var(--aw-line);
	--altcha-border-radius: 0;
	--altcha-border-width: 1px;
	--altcha-text-color: var(--aw-ink);
	--altcha-error-color: var(--aw-bordeaux);
	font-family: Arial,sans-serif;
}

.aw-altcha altcha-widget::part(altcha){
	width: 100%;
	max-width: none;
	box-sizing: border-box;
	min-height: 56px;
	background: #ffaa00;
	border: 1px solid var(--aw-line);
	border-radius: 0;
	padding: .75rem 1rem;
	font-size: .9rem;
	color: var(--aw-ink);
}

.aw-altcha altcha-widget::part(label-container){
	width: 100%;
}

.aw-altcha altcha-widget::part(label){
	font-family: Arial,sans-serif;
	color: var(--aw-ink);
}

.aw-altcha + .aw-btn{
	margin-top: .75rem;
}
/*footer*/
footer{
	border-top: 1px solid var(--aw-line);
	color: var(--aw-muted);
	font-size: .95rem;
}

@media (max-width:991px){
	.aw-legal-nav{
		position: relative;
		top: auto;
		max-height: none;
		overflow: visible;
		margin-bottom: 2rem;
	}

	.aw-legal-nav ul{
		display: grid;
		grid-template-columns: repeat(2,minmax(0,1fr));
		gap: .5rem 1rem;
	}

	.aw-legal-nav li{
		margin-bottom: 0;
	}
}

@media (max-width:768px){
	.aw-hero{
		padding: 3.5rem 0;
	}

	.aw-section{
		padding: 3.5rem 0;
	}

	.aw-card{
		padding: 1.25rem;
	}

	.aw-book-cover{
		max-width: 160px;
		margin-bottom: 1rem;
	}
}

@media (max-width:576px){
	.aw-legal-nav ul{
		grid-template-columns: 1fr;
	}

	.aw-section{
		padding: 2.75rem 0;
	}

	h1{
		font-size: clamp(2rem,10vw,2.6rem);
	}

	h2{
		font-size: clamp(1.5rem,7vw,2rem);
	}

	.aw-card{
		padding: 1.25rem;
	}

	.aw-btn{
		width: 100%;
	}
}