/*skin modifié par coye29*/
body {
  background: #FFFFFF;
}

/* ==========================================================
   COYE29 — PAGE DE RECHERCHE HOPER
   Gabarit rapide : search_result_item_hoper
   ========================================================== */

.newcoye29-search-results,
body.disp_search main {
	--c29-search-red: #C92F45;
	--c29-search-red-dark: #A92337;
	--c29-search-ink: #1D1F20;
	--c29-search-muted: #707276;
	--c29-search-line: #DEDEDA;
	--c29-search-soft: #F3F3F1;
	width: 100%;
	max-width: 1240px;
	margin-right: auto;
	margin-left: auto;
	padding: 38px 24px 72px;
	color: var(--c29-search-ink);
}

:is(.newcoye29-search-results, body.disp_search) main > h2:first-child {
	display: flex;
	align-items: center;
	gap: 14px;
	margin: 0 0 24px;
	color: var(--c29-search-ink);
	font-family: "Arial Narrow", "Liberation Sans Narrow", "Helvetica Neue", Arial, sans-serif;
	font-size: clamp(34px, 4vw, 48px);
	font-weight: 700;
	line-height: 1.05;
	letter-spacing: -.015em;
}

:is(.newcoye29-search-results, body.disp_search) main > h2:first-child::before {
	content: "";
	flex: 0 0 6px;
	width: 6px;
	height: .72em;
	background: var(--c29-search-red);
}

/* Formulaire de recherche avancée. */
:is(.newcoye29-search-results, body.disp_search) main > .well,
:is(.newcoye29-search-results, body.disp_search) .c29-search-form-panel {
	margin: 0 0 34px;
	padding: 28px;
	background: var(--c29-search-soft);
	border: 1px solid var(--c29-search-line);
	border-left: 5px solid var(--c29-search-red);
	border-radius: 0;
	box-shadow: none;
}

:is(.newcoye29-search-results, body.disp_search) div.extended_search_form {
	width: 100%;
	max-width: 820px;
	margin: 0 auto;
	text-align: left;
}

:is(.newcoye29-search-results, body.disp_search) .extended_search_form .input-group {
	width: 100%;
}

body.disp_search .c29-search-form-panel .input-group .form-control,
body.disp_search .c29-search-form-panel .input-group input[type="text"],
body.disp_search .c29-search-form-panel .input-group input[type="search"] {
	box-sizing: border-box !important;
	height: 46px !important;
	min-height: 46px !important;
	max-height: 46px !important;
	margin: 0 !important;
}

body.disp_search .c29-search-form-panel .input-group-btn {
	vertical-align: top !important;
}

:is(.newcoye29-search-results, body.disp_search) .extended_search_form .form-control,
:is(.newcoye29-search-results, body.disp_search) .extended_search_form input,
:is(.newcoye29-search-results, body.disp_search) .extended_search_form select {
	height: 46px;
	border-color: #CFCFCA;
	border-radius: 0;
	background: #fff;
	box-shadow: none;
	color: var(--c29-search-ink);
	font-size: 16px;
}

:is(.newcoye29-search-results, body.disp_search) .extended_search_form .form-control:focus,
:is(.newcoye29-search-results, body.disp_search) .extended_search_form input:focus,
:is(.newcoye29-search-results, body.disp_search) .extended_search_form select:focus {
	border-color: var(--c29-search-red);
	box-shadow: 0 0 0 2px rgba(201, 47, 69, .12);
}

:is(.newcoye29-search-results, body.disp_search) .extended_search_form .btn-primary,
body.disp_search .c29-search-form-panel .btn-primary,
body.disp_search .c29-search-form-panel button[type="submit"],
body.disp_search .c29-search-form-panel input[type="submit"] {
	box-sizing: border-box !important;
	height: 46px !important;
	min-height: 46px !important;
	max-height: 46px !important;
	margin: 0 !important;
	padding: 0 22px !important;
	background: var(--c29-search-red) !important;
	background-image: none !important;
	border-color: var(--c29-search-red) !important;
	border-radius: 0;
	color: #fff !important;
	font-size: 15px;
	font-weight: 700;
	line-height: 44px !important;
	vertical-align: top !important;
	box-shadow: none;
}

:is(.newcoye29-search-results, body.disp_search) .extended_search_form .btn-primary:hover,
:is(.newcoye29-search-results, body.disp_search) .extended_search_form .btn-primary:focus,
body.disp_search .c29-search-form-panel .btn-primary:hover,
body.disp_search .c29-search-form-panel .btn-primary:focus,
body.disp_search .c29-search-form-panel button[type="submit"]:hover,
body.disp_search .c29-search-form-panel button[type="submit"]:focus,
body.disp_search .c29-search-form-panel input[type="submit"]:hover,
body.disp_search .c29-search-form-panel input[type="submit"]:focus {
	background: var(--c29-search-red-dark) !important;
	border-color: var(--c29-search-red-dark) !important;
}

:is(.newcoye29-search-results, body.disp_search) .extended_search_form .search_options {
	display: grid;
	grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr) minmax(150px, .72fr);
	gap: 8px;
	width: 100%;
	margin-top: 8px;
	text-align: left;
}

:is(.newcoye29-search-results, body.disp_search) .extended_search_form .search_options .search_option {
	display: block;
	width: 100%;
	margin: 0;
}

:is(.newcoye29-search-results, body.disp_search) .extended_search_form .search_options .search_option > * {
	width: 100%;
}

/* Résultat de type article. */
.c29-search-card {
	--c29-search-red: #C92F45;
	--c29-search-red-dark: #A92337;
	--c29-search-ink: #1D1F20;
	--c29-search-muted: #707276;
	--c29-search-line: #DEDEDA;
	--c29-search-accent: #C92F45;
	position: relative;
	width: 100%;
	margin: 0 0 20px;
	padding: 23px 27px 22px;
	background: #fff;
	border: 1px solid var(--c29-search-line);
	border-left: 5px solid var(--c29-search-accent);
	box-shadow: 0 3px 12px rgba(29, 31, 32, .045);
	transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.c29-search-card:hover {
	border-color: #CFCFCA;
	border-left-color: var(--c29-search-accent);
	box-shadow: 0 8px 22px rgba(29, 31, 32, .09);
	transform: translateY(-2px);
}

/* Palette Coye29 : une couleur distincte par résultat. */
body.disp_search .c29-search-card:nth-of-type(5n + 1) { --c29-search-accent: #C92F45; }
body.disp_search .c29-search-card:nth-of-type(5n + 2) { --c29-search-accent: #18A34A; }
body.disp_search .c29-search-card:nth-of-type(5n + 3) { --c29-search-accent: #337AB7; }
body.disp_search .c29-search-card:nth-of-type(5n + 4) { --c29-search-accent: #FCBE45; }
body.disp_search .c29-search-card:nth-of-type(5n)     { --c29-search-accent: #AA4BAF; }

.c29-search-card__topline {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 18px;
	margin-bottom: 12px;
}

.c29-search-card__category {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	min-width: 0;
	color: var(--c29-search-muted);
	font-size: 13px;
	font-weight: 700;
	line-height: 1.35;
}

.c29-search-card__category::before {
	content: "";
	flex: 0 0 10px;
	width: 10px;
	height: 10px;
	background: var(--c29-search-accent);
}

.c29-search-card__category a {
	color: var(--c29-search-muted);
	text-decoration: none;
}

.c29-search-card__category a:hover,
.c29-search-card__category a:focus {
	color: var(--c29-search-accent);
	text-decoration: underline;
}

.c29-search-card__type {
	flex: 0 0 auto;
	padding: 4px 8px 5px;
	background: var(--c29-search-ink);
	color: #fff;
	font-size: 11px;
	font-weight: 700;
	line-height: 1;
	letter-spacing: .055em;
	text-transform: uppercase;
}

.c29-search-card__title {
	margin: 0 0 10px;
	padding: 0;
	font-family: "Arial Narrow", "Liberation Sans Narrow", "Helvetica Neue", Arial, sans-serif;
	font-size: clamp(25px, 2.7vw, 34px);
	font-weight: 700;
	line-height: 1.12;
	letter-spacing: -.012em;
}

.c29-search-card__title a,
.c29-search-card__title a.nowrap {
	color: var(--c29-search-ink);
	white-space: normal !important;
	overflow-wrap: anywhere;
	text-decoration: none;
}

.c29-search-card__title a:hover,
.c29-search-card__title a:focus {
	color: var(--c29-search-accent);
	text-decoration: none;
}

.c29-search-card__excerpt {
	max-width: 1000px;
	margin: 0 0 15px;
	color: #343638;
	font-size: 16px;
	line-height: 1.55;
}

.c29-search-card__excerpt p {
	margin: 0;
}

.c29-search-card__meta {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 6px;
	color: var(--c29-search-muted);
	font-size: 13px;
	line-height: 1.4;
}

.c29-search-card__meta img {
	width: 22px;
	height: 22px;
	margin-right: 4px;
	border-radius: 50%;
	object-fit: cover;
	vertical-align: middle;
}

.c29-search-card__meta a {
	color: var(--c29-search-ink);
	font-weight: 700;
	text-decoration: none;
}

.c29-search-card__meta a:hover,
.c29-search-card__meta a:focus {
	color: var(--c29-search-accent);
	text-decoration: underline;
}

.c29-search-card__separator {
	color: #AAA9A4;
}

@media (prefers-reduced-motion: reduce) {
	.c29-search-card {
		transition: none;
	}
}

@media (max-width: 767px) {
	.newcoye29-search-results,
	body.disp_search main {
		padding: 26px 14px 48px;
	}

	:is(.newcoye29-search-results, body.disp_search) main > h2:first-child {
		margin-bottom: 18px;
		font-size: 32px;
	}

	:is(.newcoye29-search-results, body.disp_search) main > .well,
	:is(.newcoye29-search-results, body.disp_search) .c29-search-form-panel {
		margin-bottom: 24px;
		padding: 18px 14px;
	}

	:is(.newcoye29-search-results, body.disp_search) .extended_search_form .search_options {
		grid-template-columns: 1fr;
	}

	.c29-search-card {
		margin-bottom: 14px;
		padding: 18px 17px 17px;
		border-left-width: 4px;
	}

	.c29-search-card__topline {
		align-items: flex-start;
		gap: 12px;
	}

	.c29-search-card__title {
		font-size: 24px;
	}

	.c29-search-card__excerpt {
		font-size: 15px;
		line-height: 1.5;
	}
}
.evo_container__header {
  margin-bottom: 30px;
}
.evo_container__page_top {
  margin-top: 20px;
}
.evo_container__page_top .ufld_icon_links {
  text-align: right;
}
.evo_container__front_page_main_area {
  padding-bottom: 30px;
}
.evo_container__front_page_main_area .evo_widget {
  margin-top: 30px;
}
.evo_container__front_page_main_area .evo_widget div,
.evo_container__front_page_main_area .evo_widget h1,
.evo_container__front_page_main_area .evo_widget h2,
.evo_container__front_page_main_area .evo_widget p {
  margin-top: 0;
}
.evo_container__front_page_main_area .evo_widget div > p:last-child,
.evo_container__front_page_main_area .evo_widget:last-child > ul,
.evo_container__front_page_main_area .evo_widget > ul li:last-child {
  margin-bottom: 0 !important;
}
.evo_container__front_page_main_area .evo_widget[class$=_menu_link] {
  text-align: center;
}
.evo_container__front_page_secondary_area {
  padding-top: 30px;
}
.secondary_area {
  position: relative;
  z-index: 1;
  width: 100%;
}
.secondary_area p {
  margin-top: 10px;
}
body.pictured .secondary_area footer {
  color: #666;
}
body.pictured .secondary_area footer a {
  color: #666;
}
html {
  height: 100%;
}
body {
  overflow-x: visible !important;
  -webkit-font-smoothing: subpixel-antialiased;
}
div.front_main_area {
  width: 450px;
  max-width: 100%;
  padding: 0;
  margin-top: 85px;
  margin-bottom: 100px;
}
div.front_main_area .front_main_content {
  border-radius: 6px;
  padding: 5px 15px;
}
div.front_main_area div.widget {
  margin: 30px 0;
}
body.pictured {
  height: 100%;
}
body.pictured #skin_wrapper {
  width: 100%;
  height: 100%;
  overflow-x: hidden;
}
body.pictured #skin_wrapper.skin_wrapper_loggedin {
  margin-top: 0;
  padding-top: 27px;
}
body.pictured .container.main_page_wrapper {
  display: table;
  height: 100%;
  min-height: 100%;
}
body.pictured .container.main_page_wrapper .panel a:not([class]) {
  color: #337ab7;
  text-decoration: none;
}
body.pictured .container.main_page_wrapper .panel a:not([class]):hover {
  color: #23527c;
  text-decoration: underline;
}
body.pictured .container.main_page_wrapper .panel input {
  -webkit-font-smoothing: subpixel-antialiased;
}
body.pictured div#debug_info.debug {
  position: absolute;
  top: 100%;
}
body.pictured.dev_designer_mode {
  height: auto;
}
body.pictured.dev_designer_mode .secondary_area {
  position: initial;
}
.evo_pictured_layout {
  display: table;
  height: 100%;
  min-height: 100%;
  min-width: 100%;
  position: relative;
  width: 100%;
  background-attachment: fixed;
  background-size: cover;
  background-position: center center;
}
.evo_pictured_layout > .evo_pictured__image {
  display: none;
  width: 100%;
}
@media (min-width: 640px) and (min-device-width: 640px) {
  body.disp_front .slide-top {
    right: 29px;
  }
}
@media only screen and (max-width: 640px) {
  html {
    height: auto;
  }
  body.disp_front .evo_pictured_layout {
    position: relative;
    height: auto;
    min-height: auto;
  }
  body.disp_front .evo_pictured_layout > .evo_pictured__image {
    display: block;
  }
  body.disp_front div.front_main_area {
    width: auto;
    margin-top: 0;
    margin-bottom: 0;
  }
  body.disp_front .slide-top {
    right: 8px;
  }
}
@media only screen and (min-device-width: 1024px) {
  body.pictured #skin_wrapper.skin_wrapper_loggedin {
    margin-top: 0;
    padding-top: 27px;
  }
}
@media (min-width: 640px) and (max-device-width: 1024px) {
  .btn.slide-top.logged_in_margin_top {
    top: 35px;
  }
}
ul.profile_tabs {
  margin: 0 2ex 2ex;
  position: relative;
  top: 1px;
}
.profile_avatar {
  float: right;
  padding: 10px;
  margin-left: 10px;
}
.form-horizontal .controls textarea.form-control {
  width: 100%;
}
input.search_field {
  margin-bottom: 0;
  display: inline-block;
}
form.search .search_options {
  width: 100%;
}
form.search .search_options .search_option input {
  margin-right: 5px;
}
form.search .search_options .search_option label {
  margin-bottom: 0;
  margin-top: 5px;
}
div.compact_search_form input.search_field {
  width: 100%;
  margin: 0;
}
div.extended_search_form {
  text-align: center;
  margin: 0 auto 2em auto;
  max-width: 530px;
}
div.extended_search_form .search_options {
  text-align: center;
}
div.extended_search_form .search_options .search_option {
  display: inline-block;
  margin-right: 10px;
}
textarea.message_text {
  width: 95%;
}
.evo_post {
  margin-bottom: 2em;
}
.evo_post .small.text-muted {
  margin: 4px 0 10px;
}
.evo_post .small.text-muted a,
.evo_post .small.text-muted a .glyphicon {
  color: inherit;
}
.evo_hasbgimg {
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
}
div.bSideItem {
  background: #F7F5FA;
  border-radius: 5px;
  padding: 10px;
  margin-bottom: 10px;
  text-shadow: 0 1px 0 #FFFFFF;
}
div.bSideItem h4 {
  margin-top: 0;
}
.skin-form .panel-body .panel {
  border: none;
  box-shadow: none;
}
.skin-form .panel-body .panel-body {
  padding: 0;
}
.skin-form .fieldset {
  margin: 0;
}
.skin-form .fieldset div.input {
  margin: 0;
}
.skin-form .control-buttons,
.skin-form div.input {
  padding: 0;
  width: 100%;
  text-align: center;
}
.evo_panel__login,
.evo_panel__lostpass,
.evo_panel__register,
.evo_panel__activation {
  min-width: 290px;
  margin: 1.5em auto auto;
}
.evo_panel__login .panel,
.evo_panel__lostpass .panel,
.evo_panel__register .panel,
.evo_panel__activation .panel {
  margin: 5px 0;
}
.evo_panel__login .panel-body,
.evo_panel__lostpass .panel-body,
.evo_panel__register .panel-body,
.evo_panel__activation .panel-body {
  padding-top: 20px;
  padding-bottom: 0;
}
.evo_panel__login {
  max-width: 400px;
  min-width: auto;
}
.evo_panel__lostpass {
  max-width: 480px;
}
.evo_panel__lostpass #ffield_x label {
  display: none;
}
.evo_panel__activation {
  max-width: 530px;
}
.evo_panel__activation #activateinfo_form .control-buttons {
  text-align: left;
}
.evo_panel__register {
  max-width: 580px;
}
.evo_panel__register .form-control#country,
.evo_panel__register .form-control#u {
  width: 100%;
}
.evo_panel__register #fieldset_wrapper_captcha_qstn .panel {
  margin: 0;
}
.evo_panel__register #fieldset_wrapper_captcha_qstn .panel div[id$=_answer] .control-label {
  padding-right: 14px;
}
.evo_panel__register .panel-body {
  padding: 15px;
}
.evo_panel__register .panel-body p:last-child {
  margin-bottom: 0;
}
@media (min-width: 768px) {
  #fieldset_wrapper_captcha_qstn .panel div[id$=_answer] {
    max-height: 34px;
  }
}
.evo_register_buttons {
  text-align: center;
}
.evo_register_buttons input.btn {
  margin: 0 0 15px 0;
}
.evo_register_buttons a.btn {
  margin: 0;
}
.evo_form__login_links {
  padding: 0 5px;
  font-size: 92%;
}
.evo_form__login fieldset {
  margin-bottom: 20px;
}
.evo_form__login .controls {
  padding: 0;
  margin: 0;
  width: 100%;
}
.evo_form__login .control-buttons {
  margin-left: 0;
}
.evo_form__login input.form-control[type=text],
.evo_form__login input.form-control[type=password] {
  width: 100%;
}
.evo_form__login .btn {
  margin-top: 5px;
}
#login_form .control-buttons {
  text-align: left;
}
.standard_login_link {
  text-align: center;
  margin: 3em 0 1ex 0;
}
.form_footer_notes {
  margin-top: 0;
}
.pagination {
  margin: 0;
}
.filter_item div {
  height: 22px;
}
div.action_messages,
div.log_container {
  margin: 0;
}
.evo_post_title {
  display: table;
}
.evo_post_title h1 {
  margin-bottom: 0;
}
.evo_post_title h2 {
  display: table-cell;
  margin: 0;
  padding: 20px 0 0;
}
.evo_post_title h2 + .btn {
  margin: -10px 0 0 30px;
}
.evo_post_title .btn-group {
  display: table-cell;
  padding: 20px 0 10px 30px;
  vertical-align: middle;
}
.evo_post_title .evo_post_read_status {
  display: table-cell;
  vertical-align: middle;
  padding: 20px 2px 0 0;
}
body.pictured .front_main_content .ufld_icon_links a {
  width: 60px;
  height: 60px;
  margin: 5px;
}
body.pictured .front_main_content .ufld_icon_links a .fa {
  font-size: 30px;
  line-height: 60px;
}
.widget_core_org_members {
  margin: 5em 0 30px;
  color: #333;
}
.widget_core_org_members img {
  width: 200px;
  height: 200px;
  display: inline-block;
}
.widget_core_org_members h2.page-header {
  margin-top: 0;
}
.widget_core_org_members p.user_field {
  margin-bottom: 40px;
}
body.pictured .secondary_area .widget_core_org_members a.user_link {
  color: #000;
}
body.pictured .secondary_area .widget_core_org_members a.user_link:hover {
  color: #23527c;
}
@media (max-width: 640px) {
  body.pictured .front_main_content .ufld_icon_links a {
    width: 45px;
    height: 45px;
    margin: 5px;
  }
  body.pictured .front_main_content .ufld_icon_links a .fa {
    font-size: 20px;
    line-height: 45px;
  }
  .slide_button_wrap {
    display: none !important;
  }
}
.slide_button_wrap {
  position: fixed;
  bottom: 20px;
  left: 50%;
  line-height: 1em;
}
.slide_button_wrap #slide_button {
  display: inline-block;
  font-size: 55px;
  color: #ffffff;
  text-align: center;
  opacity: 0.5;
  transition: 0.1s all;
  position: relative;
  left: -50%;
}
.slide_button_wrap #slide_button:hover {
  cursor: pointer;
  opacity: 0.9;
}
.evo_content_block .evo_comment .evo_comment_footer .action_btn_group {
  float: right;
}
.evo_content_block .evo_comment .comment_edit_btn {
  margin-right: 5px;
}
.evo_content_block .evo_comment .btn-group > .btn.first-child {
  border-top-left-radius: 3px !important;
  border-bottom-left-radius: 3px !important;
}
img.alignleft, img[align="left"] {
float : left;
margin-top : 2px;
margin-right : 10px;
margin-bottom : 5px;
margin-left : 0;
}

img.alignright, img[align="right"] {
float : right;
margin : 2px 0 5px 10px;
}

/* Coye29: Stain-inspired article cards (post list only) */
#c29-stain-grid {
	display: flex;
	flex-wrap: wrap;
	margin-right: -8px;
	margin-left: -8px;
}

#c29-stain-grid .c29-stain-cell {
	display: flex;
	margin-bottom: 18px;
	padding-right: 8px;
	padding-left: 8px;
}

#c29-stain-grid .c29-stain-card {
	display: flex;
	flex-direction: column;
	overflow: hidden;
	position: relative;
	width: 100%;
	height: 410px;
	background: #fff;
	border: 1px solid rgba(24, 31, 38, .10);
	border-radius: 8px;
	box-shadow: 0 2px 9px rgba(20, 27, 35, .10);
	transition: box-shadow .32s ease;
}

#c29-stain-grid .c29-stain-media {
	flex: 0 0 270px;
	overflow: hidden;
	position: relative;
	height: 270px;
	background: #cfd4d8;
}

#c29-stain-grid .c29-stain-feature-image,
#c29-stain-grid .c29-stain-feature-image .evo_image_block {
	width: 100%;
	height: 100%;
	margin: 0;
}

#c29-stain-grid .c29-stain-image,
#c29-stain-grid .c29-stain-feature-image img {
	display: block;
	width: 100%;
	height: 100%;
	max-width: none;
	object-fit: cover;
	transform: scale(1.13);
	transition: transform .72s cubic-bezier(.2,.72,.2,1), filter .42s ease;
}

#c29-stain-grid .c29-stain-media--empty {
	background: linear-gradient(135deg, #d9dde0, #aeb6bc);
}

#c29-stain-grid .c29-stain-shade {
	position: absolute;
	z-index: 1;
	right: 0;
	bottom: 0;
	left: 0;
	height: 48%;
	background: linear-gradient(to bottom, rgba(13,18,22,0), rgba(13,18,22,.84));
	transition: height .38s ease, opacity .38s ease;
	pointer-events: none;
}

#c29-stain-grid .c29-stain-info {
	position: absolute;
	z-index: 3;
	right: 14px;
	bottom: 17px;
	left: 14px;
	color: #fff;
	pointer-events: none;
}

#c29-stain-grid .c29-stain-category {
	margin-bottom: 7px;
	transform: translateY(30px);
	transition: transform .4s ease .02s;
}

#c29-stain-grid .c29-stain-category a {
	display: inline-block;
	margin: 0;
	padding: 4px 10px 5px;
	border: 1px solid rgba(255,255,255,.9);
	border-radius: 0;
	background: rgba(10,10,10,.78);
	color: #fff !important;
	font-size: 11px;
	line-height: 1.2;
	letter-spacing: .04em;
	text-decoration: none;
	text-shadow: 0 1px 2px rgba(0,0,0,.45);
	pointer-events: auto;
	transition: background-color .25s ease, border-color .25s ease;
}

#c29-stain-grid .c29-stain-category a:hover,
#c29-stain-grid .c29-stain-category a:focus {
	background: #169447;
	border-color: #169447;
	color: #fff !important;
	text-shadow: 0 1px 2px rgba(0,0,0,.35);
}

#c29-stain-grid .c29-stain-title {
	display: -webkit-box;
	overflow: hidden;
	margin: 0;
	padding: 0;
	color: #fff;
	font-size: 18px;
	font-weight: 650;
	line-height: 1.24;
	text-align: left;
	text-shadow: 0 2px 5px rgba(0,0,0,.7);
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	transform: translateY(30px);
	transition: transform .48s ease .02s;
}

#c29-stain-grid .c29-stain-title a {
	position: relative;
	z-index: 5;
	color: inherit !important;
	text-decoration: none;
	pointer-events: auto;
}

#c29-stain-grid .c29-stain-meta {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	min-height: 30px;
	margin-top: 12px;
	color: #fff;
	font-size: 12px;
	line-height: 1.35;
	opacity: 0;
	transform: translateY(34px);
	transition: transform .6s ease .07s, opacity .32s ease .07s;
}

#c29-stain-grid .c29-stain-avatar {
	flex: 0 0 28px;
	width: 28px;
	height: 28px;
	margin-right: 7px;
}

#c29-stain-grid .c29-stain-avatar-link,
#c29-stain-grid .c29-stain-avatar-link img,
#c29-stain-grid .c29-stain-avatar-image {
	display: block;
	width: 28px;
	height: 28px;
	border-radius: 50%;
}

#c29-stain-grid .c29-stain-avatar-link img,
#c29-stain-grid .c29-stain-avatar-image {
	border: 1px solid rgba(255,255,255,.9);
	object-fit: cover;
}

#c29-stain-grid .c29-stain-author {
	flex: 0 0 auto;
	margin-right: 8px;
	white-space: nowrap;
}

#c29-stain-grid .c29-stain-author-link {
	position: relative;
	z-index: 5;
	color: #fff !important;
	font-weight: 600;
	pointer-events: auto;
}

#c29-stain-grid .c29-stain-date {
	position: absolute;
	z-index: 6;
	right: 14px;
	bottom: 12px;
	color: rgba(255,255,255,.92);
	font-size: 12px;
	line-height: 1.2;
	opacity: 0;
	text-shadow: 0 1px 3px rgba(0,0,0,.75);
	transform: translateY(9px);
	transition: transform .48s ease .12s, opacity .32s ease .12s;
	pointer-events: none;
}

#c29-stain-grid .c29-stain-comments {
	display: flex;
	align-items: center;
	position: absolute;
	z-index: 6;
	top: 12px;
	right: 13px;
	color: #fff;
	font-size: 11px;
	font-weight: 600;
	line-height: 1.2;
	text-shadow: 0 1px 3px rgba(0,0,0,.75);
}

#c29-stain-grid .c29-stain-comments-link {
	color: #fff !important;
	text-decoration: none;
}

#c29-stain-grid .c29-stain-comments-link:hover,
#c29-stain-grid .c29-stain-comments-link:focus {
	text-decoration: underline;
}

#c29-stain-grid .c29-stain-comments-icon {
	display: inline-block;
	position: relative;
	width: 22px;
	height: 15px;
	margin-right: 5px;
}

#c29-stain-grid .c29-stain-comments-icon i {
	position: absolute;
	width: 12px;
	height: 9px;
	border: 1.5px solid #fff;
	border-radius: 4px;
}

#c29-stain-grid .c29-stain-comments-icon i::after {
	content: "";
	position: absolute;
	bottom: -4px;
	left: 3px;
	width: 0;
	height: 0;
	border-top: 4px solid #fff;
	border-right: 3px solid transparent;
}

#c29-stain-grid .c29-stain-comments-icon i:first-child {
	top: 1px;
	left: 0;
}

#c29-stain-grid .c29-stain-comments-icon i:last-child {
	right: 0;
	bottom: 0;
}

#c29-stain-grid .c29-stain-divider {
	position: absolute;
	z-index: 3;
	bottom: 9px;
	left: 14px;
	width: 0;
	height: 2px;
	background: #1eb058;
	transition: width .9s ease .08s;
	pointer-events: none;
}

#c29-stain-grid .c29-stain-cover-link {
	position: absolute;
	z-index: 2;
	inset: 0;
}

#c29-stain-grid .c29-stain-body {
	flex: 1 1 auto;
	overflow: hidden;
	position: relative;
	padding: 15px 16px;
}

#c29-stain-grid .c29-stain-excerpt {
	display: -webkit-box;
	overflow: hidden;
	color: #5d6266;
	font-size: 14px;
	line-height: 1.48;
	padding-right: 0;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 4;
}

#c29-stain-grid .c29-stain-body::after {
	content: "";
	position: absolute;
	z-index: 1;
	right: 16px;
	bottom: 15px;
	left: 16px;
	height: 32px;
	background: linear-gradient(to bottom, rgba(255,255,255,0), rgba(255,255,255,.88));
	pointer-events: none;
}

#c29-stain-grid .c29-stain-excerpt p { margin: 0; }
#c29-stain-grid .c29-stain-excerpt > :first-child { margin-top: 0; }
#c29-stain-grid .c29-stain-excerpt > :last-child { margin-bottom: 0; }

#c29-stain-grid .c29-stain-more {
	display: flex;
	align-items: center;
	justify-content: center;
	position: absolute;
	z-index: 2;
	right: 15px;
	bottom: 13px;
	width: 27px;
	height: 27px;
	border: 1px solid #169447;
	border-radius: 50%;
	background: #fff;
	color: #169447 !important;
	font-size: 18px;
	font-weight: 700;
	line-height: 1;
	letter-spacing: 1px;
	text-decoration: none;
	transition: color .22s ease, background-color .22s ease;
}

#c29-stain-grid .c29-stain-more:hover,
#c29-stain-grid .c29-stain-more:focus {
	background: #169447;
	color: #fff !important;
	text-decoration: none;
}

#c29-stain-grid .c29-stain-card:hover,
#c29-stain-grid .c29-stain-card:focus-within {
	box-shadow: 0 7px 19px rgba(20, 27, 35, .17);
}

#c29-stain-grid .c29-stain-card:hover .c29-stain-image,
#c29-stain-grid .c29-stain-card:hover .c29-stain-feature-image img,
#c29-stain-grid .c29-stain-card:focus-within .c29-stain-image,
#c29-stain-grid .c29-stain-card:focus-within .c29-stain-feature-image img {
	transform: scale(1);
	filter: brightness(.75);
}

#c29-stain-grid .c29-stain-card:hover .c29-stain-shade,
#c29-stain-grid .c29-stain-card:focus-within .c29-stain-shade {
	height: 100%;
}

#c29-stain-grid .c29-stain-card:hover .c29-stain-category,
#c29-stain-grid .c29-stain-card:focus-within .c29-stain-category {
	transform: translateY(-16px);
}

#c29-stain-grid .c29-stain-card:hover .c29-stain-title,
#c29-stain-grid .c29-stain-card:focus-within .c29-stain-title {
	transform: translateY(-16px);
}

#c29-stain-grid .c29-stain-card:hover .c29-stain-meta,
#c29-stain-grid .c29-stain-card:focus-within .c29-stain-meta {
	opacity: 1;
	transform: translateY(-16px);
}

#c29-stain-grid .c29-stain-card:hover .c29-stain-date,
#c29-stain-grid .c29-stain-card:focus-within .c29-stain-date {
	opacity: 1;
	transform: translateY(0);
}

#c29-stain-grid .c29-stain-card:hover .c29-stain-divider,
#c29-stain-grid .c29-stain-card:focus-within .c29-stain-divider {
	width: 72px;
}

@media (max-width: 767px) {
	#c29-stain-grid .c29-stain-card { height: 430px; }
	#c29-stain-grid .c29-stain-media {
		flex-basis: 284px;
		height: 284px;
	}
}

@media (hover: none), (pointer: coarse) {
	#c29-stain-grid .c29-stain-category,
	#c29-stain-grid .c29-stain-title { transform: translateY(-16px); }
	#c29-stain-grid .c29-stain-meta {
		opacity: 1;
		transform: translateY(-16px);
	}
	#c29-stain-grid .c29-stain-date {
		opacity: 1;
		transform: translateY(0);
	}
	#c29-stain-grid .c29-stain-divider { width: 72px; }
	#c29-stain-grid .c29-stain-shade { height: 100%; }
	#c29-stain-grid .c29-stain-image,
	#c29-stain-grid .c29-stain-feature-image img { transform: scale(1); }
}

@media (prefers-reduced-motion: reduce) {
	#c29-stain-grid *,
	#c29-stain-grid *::before,
	#c29-stain-grid *::after {
		animation-duration: .01ms !important;
		transition-duration: .01ms !important;
	}
	#c29-stain-grid .c29-stain-meta {
		opacity: 1;
		transform: translateY(-16px);
	}
	#c29-stain-grid .c29-stain-date {
		opacity: 1;
		transform: translateY(0);
	}
	#c29-stain-grid .c29-stain-category,
	#c29-stain-grid .c29-stain-title { transform: translateY(-16px); }
	#c29-stain-grid .c29-stain-shade { height: 100%; }
}

#c29-stain-grid .c29-stain-meta {
	display: flex;
	align-items: center;
	flex-wrap: nowrap;
	gap: 6px;
	min-height: 30px;
	margin-top: 12px;
	color: #fff;
	font-size: 12px;
	line-height: 1.35;
	white-space: nowrap;
	opacity: 0;
	transform: translateY(34px);
	transition: transform .6s ease .07s, opacity .32s ease .07s;
}

#c29-stain-grid .c29-stain-avatar {
	display: block;
	flex: 0 0 28px;
	width: 28px;
	height: 28px;
	margin: 0;
}

#c29-stain-grid .c29-stain-avatar a,
#c29-stain-grid .c29-stain-avatar img,
#c29-stain-grid .c29-stain-avatar-image {
	display: block;
	width: 28px;
	height: 28px;
	margin: 0;
	border-radius: 50%;
}

#c29-stain-grid .c29-stain-avatar img,
#c29-stain-grid .c29-stain-avatar-image {
	border: 1px solid rgba(255, 255, 255, .9);
	object-fit: cover;
}

#c29-stain-grid .c29-stain-author-label {
	display: inline-block;
	flex: 0 0 auto;
	color: #fff;
}

#c29-stain-grid .c29-stain-author {
	display: inline-block;
	flex: 0 1 auto;
	margin: 0;
	overflow: hidden;
	color: #fff;
	text-overflow: ellipsis;
	white-space: nowrap;
}

#c29-stain-grid .c29-stain-author a {
	color: #fff !important;
	font-weight: 600;
	text-decoration: none;
}

#c29-stain-grid .c29-stain-author a:hover,
#c29-stain-grid .c29-stain-author a:focus {
	color: #fff !important;
	text-decoration: underline;
}

/* Correction des bandes grises pendant le dézoom */

#c29-stain-grid .c29-stain-media {
	overflow: hidden;
	position: relative;
	background: #cfd4d8;
}

#c29-stain-grid .c29-stain-feature-image,
#c29-stain-grid .c29-stain-feature-image .evo_image_block,
#c29-stain-grid .c29-stain-feature-image a,
#c29-stain-grid .c29-stain-feature-image picture {
	display: block;
	overflow: hidden;
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
}

#c29-stain-grid .c29-stain-feature-image img {
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	width: 100%;
	height: 100%;
	max-width: none;
	min-width: 100%;
	min-height: 100%;
	margin: 0;
	object-fit: cover;
	object-position: center;
	transform: translate(-50%, -50%) scale(1.13);
	transition:
		transform .72s cubic-bezier(.2, .72, .2, 1),
		filter .42s ease;
}

#c29-stain-grid .c29-stain-card:hover .c29-stain-feature-image img,
#c29-stain-grid .c29-stain-card:focus-within .c29-stain-feature-image img {
	transform: translate(-50%, -50%) scale(1.01);
	filter: brightness(.75);
}

/* ==========================================================
   Coye29 — Article principal pleine largeur
   ========================================================== */

.c29-featured-wide-list {
	width: 100%;
	margin: 0 0 36px;
}

.c29-featured-wide-cell {
	width: 100%;
	padding: 0;
}

.c29-featured-wide {
	overflow: hidden;
	position: relative;
	width: 100%;
	margin: 0;
	background: #20262b;
	border-radius: 8px;
	box-shadow: 0 4px 16px rgba(20, 27, 35, .16);
}

.c29-featured-wide-media {
	overflow: hidden;
	position: relative;
	width: 100%;
	height: 500px;
	background: #cfd4d8;
}

.c29-featured-wide-image,
.c29-featured-wide-image .evo_image_block,
.c29-featured-wide-image a,
.c29-featured-wide-image picture {
	display: block;
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0;
}

.c29-featured-wide-image img {
	display: block;
	width: 100%;
	height: 100%;
	max-width: none;
	margin: 0;
	object-fit: cover;
	object-position: center;
}

/* Image volontairement statique : aucun zoom ou dézoom */

.c29-featured-wide-shade {
	position: absolute;
	z-index: 1;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	background:
		linear-gradient(
			to right,
			rgba(12, 17, 21, .88) 0%,
			rgba(12, 17, 21, .70) 38%,
			rgba(12, 17, 21, .25) 72%,
			rgba(12, 17, 21, .08) 100%
		);
	pointer-events: none;
}

.c29-featured-wide-content {
	position: absolute;
	z-index: 2;
	top: 50%;
	left: 54px;
	width: 52%;
	max-width: 650px;
	color: #fff;
	transform: translateY(-50%);
}

.c29-featured-wide-category {
	margin-bottom: 14px;
}

.c29-featured-wide-category a {
	display: inline-block;
	padding: 5px 11px 6px;
	border: 1px solid rgba(255, 255, 255, .9);
	background: rgba(10, 10, 10, .72);
	color: #fff !important;
	font-size: 12px;
	line-height: 1.2;
	letter-spacing: .05em;
	text-decoration: none;
	text-transform: uppercase;
}

.c29-featured-wide-category a:hover,
.c29-featured-wide-category a:focus {
	background: #169447;
	border-color: #169447;
	color: #fff !important;
}

.c29-featured-wide-title {
	margin: 0 0 15px;
	padding: 0;
	color: #fff;
	font-size: 38px;
	font-weight: 700;
	line-height: 1.12;
	text-shadow: 0 2px 7px rgba(0, 0, 0, .72);
}

.c29-featured-wide-title a {
	color: #fff !important;
	text-decoration: none;
}

.c29-featured-wide-title a:hover,
.c29-featured-wide-title a:focus {
	color: #fff !important;
	text-decoration: underline;
}

.c29-featured-wide-meta {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	gap: 6px;
	margin-bottom: 17px;
	color: rgba(255, 255, 255, .92);
	font-size: 13px;
	line-height: 1.4;
}

.c29-featured-wide-author,
.c29-featured-wide-author a,
.c29-featured-wide-comments,
.c29-featured-wide-comments a {
	color: #fff !important;
}

.c29-featured-wide-author a,
.c29-featured-wide-comments a {
	font-weight: 600;
	text-decoration: none;
}

.c29-featured-wide-author a:hover,
.c29-featured-wide-comments a:hover {
	text-decoration: underline;
}

.c29-featured-wide-separator {
	margin: 0 3px;
	color: rgba(255, 255, 255, .7);
}

.c29-featured-wide-excerpt {
	display: -webkit-box;
	overflow: hidden;
	margin-bottom: 22px;
	color: rgba(255, 255, 255, .94);
	font-size: 16px;
	line-height: 1.55;
	text-shadow: 0 1px 4px rgba(0, 0, 0, .65);
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
}

.c29-featured-wide-excerpt p {
	margin: 0;
}

.c29-featured-wide-button {
	display: inline-block;
	padding: 9px 17px;
	border: 1px solid #fff;
	border-radius: 3px;
	background: rgba(0, 0, 0, .28);
	color: #fff !important;
	font-size: 14px;
	font-weight: 600;
	text-decoration: none;
	transition:
		background-color .22s ease,
		border-color .22s ease;
}

.c29-featured-wide-button:hover,
.c29-featured-wide-button:focus {
	background: #169447;
	border-color: #169447;
	color: #fff !important;
	text-decoration: none;
}

@media (max-width: 991px) {

	.c29-featured-wide-media {
		height: 440px;
	}

	.c29-featured-wide-content {
		left: 36px;
		width: 68%;
	}

	.c29-featured-wide-title {
		font-size: 32px;
	}

	.c29-featured-wide-shade {
		background:
			linear-gradient(
				to right,
				rgba(12, 17, 21, .88) 0%,
				rgba(12, 17, 21, .68) 60%,
				rgba(12, 17, 21, .22) 100%
			);
	}

}

@media (max-width: 767px) {

	.c29-featured-wide-media {
		height: 460px;
	}

	.c29-featured-wide-shade {
		background:
			linear-gradient(
				to top,
				rgba(12, 17, 21, .94) 0%,
				rgba(12, 17, 21, .62) 62%,
				rgba(12, 17, 21, .22) 100%
			);
	}

	.c29-featured-wide-content {
		top: auto;
		right: 22px;
		bottom: 28px;
		left: 22px;
		width: auto;
		max-width: none;
		transform: none;
	}

	.c29-featured-wide-title {
		font-size: 27px;
	}

	.c29-featured-wide-excerpt {
		font-size: 14px;
		-webkit-line-clamp: 3;
	}

}

@media (max-width: 480px) {

	.c29-featured-wide-media {
		height: 430px;
	}

	.c29-featured-wide-content {
		right: 17px;
		bottom: 21px;
		left: 17px;
	}

	.c29-featured-wide-title {
		font-size: 23px;
	}

	.c29-featured-wide-excerpt {
		margin-bottom: 16px;
		-webkit-line-clamp: 2;
	}

}

/* Article principal : image entière, sans recadrage */

.c29-featured-wide-media {
	overflow: hidden;
	position: relative;
	width: 100%;
	height: auto;
	min-height: 0;
	background: #20262b;
}

.c29-featured-wide-image,
.c29-featured-wide-image .evo_image_block,
.c29-featured-wide-image a,
.c29-featured-wide-image picture {
	display: block;
	width: 100%;
	height: auto;
	margin: 0;
	padding: 0;
}

.c29-featured-wide-image img {
	display: block;
	position: relative;
	width: 100%;
	height: auto;
	max-width: 100%;
	margin: 0;
	object-fit: initial;
	object-position: initial;
}

@media (max-width: 991px) {
	.c29-featured-wide-media {
		height: auto;
	}
}

@media (max-width: 767px) {
	.c29-featured-wide-media {
		height: auto;
	}
}

@media (max-width: 480px) {
	.c29-featured-wide-media {
		height: auto;
	}
}
/* Article principal : pleine largeur, hauteur limitée, recadrage vertical */

/* Article principal — cadrage définitif */

.c29-featured-wide-media {
	position: relative;
	overflow: hidden;
	width: 100%;
	height: 360px;
	background: #20262b;
}

.c29-featured-wide-image,
.c29-featured-wide-image .evo_image_block,
.c29-featured-wide-image a,
.c29-featured-wide-image picture {
	position: absolute;
	inset: 0;
	display: block;
	width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

.c29-featured-wide-image img,
.c29-featured-wide-image .evo_image_block img {
	position: absolute !important;
	inset: 0 !important;
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	object-fit: cover !important;
	object-position: 50% 50% !important;
}

@media (max-width: 991px) {
	.c29-featured-wide-media {
		height: 320px;
	}
}

@media (max-width: 767px) {
	.c29-featured-wide-media {
		height: 280px;
	}
}

@media (max-width: 480px) {
	.c29-featured-wide-media {
		height: 240px;
	}
}


/* ==========================================================
   COYE29 — ARTICLE PRINCIPAL EN BANDEAU PLEINE LARGEUR
   ========================================================== */


/* ----------------------------------------------------------
   Évite l’apparition d’une barre de défilement horizontale
   lorsque le bandeau dépasse du conteneur Bootstrap
   ---------------------------------------------------------- */

html,
body {
	overflow-x: hidden;
}


/* ----------------------------------------------------------
   Fait sortir le bandeau du conteneur central Bootstrap
   pour lui donner toute la largeur de la fenêtre
   ---------------------------------------------------------- */

.c29-featured-wide-list {
	position: relative;
	left: 50%;
	width: 100vw;
	max-width: 100vw;
	margin-left: -50vw;
	margin-right: -50vw;
	padding: 0;
}


/* ----------------------------------------------------------
   Supprime les limites, marges et arrondis du bloc principal
   ---------------------------------------------------------- */

.c29-featured-wide-cell,
.c29-featured-wide {
	width: 100%;
	max-width: none;
	margin: 0;
	padding: 0;
	border-radius: 0;
}


/* ----------------------------------------------------------
   Hauteur générale du bandeau sur ordinateur
   Le contenu qui dépasse est masqué
   ---------------------------------------------------------- */

.c29-featured-wide-media {
	position: relative;
	overflow: hidden;
	width: 100%;
	height: 360px;
	background: #20262b;
	border-radius: 0;
}


/* ----------------------------------------------------------
   Force tous les conteneurs intermédiaires de l’image
   à occuper exactement toute la surface du bandeau
   ---------------------------------------------------------- */

.c29-featured-wide-image,
.c29-featured-wide-image .evo_image_block,
.c29-featured-wide-image a,
.c29-featured-wide-image picture {
	position: absolute;
	inset: 0;
	display: block;
	width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}


/* ----------------------------------------------------------
   Image du bandeau
   - remplit toute la largeur et toute la hauteur ;
   - conserve ses proportions ;
   - est recadrée si nécessaire ;
   - reste centrée horizontalement et verticalement.
   ---------------------------------------------------------- */

.c29-featured-wide-image img,
.c29-featured-wide-image .evo_image_block img {
	position: absolute !important;
	inset: 0 !important;
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	margin: 0 !important;
	object-fit: cover !important;
	object-position: 50% 50% !important;
}


/* ----------------------------------------------------------
   Tablettes et écrans moyens
   ---------------------------------------------------------- */

@media (max-width: 991px) {

	.c29-featured-wide-media {
		height: 320px;
	}

}


/* ----------------------------------------------------------
   Téléphones et petits écrans
   ---------------------------------------------------------- */

@media (max-width: 767px) {

	.c29-featured-wide-media {
		height: 280px;
	}

}


/* ----------------------------------------------------------
   Très petits téléphones
   ---------------------------------------------------------- */

@media (max-width: 480px) {

	.c29-featured-wide-media {
		height: 240px;
	}

}


/* ==========================================================
   COYE29 — RÉGLAGES DU BANDEAU DEPUIS LE WIDGET
   ========================================================== */


/* ----------------------------------------------------------
   HAUTEUR DU BANDEAU

   Dans le champ « Classe CSS du widget », utiliser :
   c29-banner-h380
   c29-banner-h400
   c29-banner-h420
   c29-banner-h450
   c29-banner-h520
   ---------------------------------------------------------- */

.c29-banner-h380 .c29-featured-wide-media {
	height: 380px !important;
}

.c29-banner-h400 .c29-featured-wide-media {
	height: 400px !important;
}

.c29-banner-h420 .c29-featured-wide-media {
	height: 420px !important;
}

.c29-banner-h450 .c29-featured-wide-media {
	height: 450px !important;
}

.c29-banner-h520 .c29-featured-wide-media {
	height: 520px !important;
}


/* ----------------------------------------------------------
   POSITION VERTICALE DE L’IMAGE

   20 = image déplacée vers le haut
   50 = image centrée
   80 = image déplacée vers le bas

   Dans le champ « Classe CSS du widget », utiliser :
   c29-banner-pos20
   c29-banner-pos35
   c29-banner-pos50
   c29-banner-pos65
   c29-banner-pos75
   c29-banner-pos80
   ---------------------------------------------------------- */

.c29-banner-pos20 .c29-featured-wide-image img {
	object-position: 50% 20% !important;
}

.c29-banner-pos35 .c29-featured-wide-image img {
	object-position: 50% 35% !important;
}

.c29-banner-pos50 .c29-featured-wide-image img {
	object-position: 50% 50% !important;
}

.c29-banner-pos65 .c29-featured-wide-image img {
	object-position: 50% 65% !important;
}

.c29-banner-pos75 .c29-featured-wide-image img {
	object-position: 50% 75% !important;
}

.c29-banner-pos80 .c29-featured-wide-image img {
	object-position: 50% 80% !important;
}

.c29-banner-pos85 .c29-featured-wide-image img {
	object-position: 50% 85% !important;
}



/* Coye29 / Stain : bouton de retour en haut — reprise exacte. */
#button {
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	position: fixed !important;
	right: 20px !important;
	bottom: 30px !important;
	width: 46px !important;
	height: 46px !important;
	line-height: 1 !important;
	text-align: center !important;
	background: #c92f45 !important;
	color: #fff !important;
	border: 1px solid #b7263b !important;
	border-radius: 50% !important;
	box-shadow: 0 7px 22px rgba(28, 29, 30, .22) !important;
	opacity: 0 !important;
	visibility: hidden !important;
	pointer-events: none !important;
	transform: translateY(12px) scale(.82);
	transition: opacity .22s ease, visibility .22s ease, transform .32s cubic-bezier(.2, .75, .25, 1), background-color .2s ease !important;
	z-index: 999999 !important;
	text-decoration: none !important;
	font-size: 25px !important;
}

#button.show {
	opacity: 1 !important;
	visibility: visible !important;
	pointer-events: auto !important;
	transform: translateY(0) scale(1);
	animation: c29-back-to-top-pop .38s cubic-bezier(.2, .8, .25, 1);
}

#button:hover {
	background: #aa2237 !important;
	transform: translateY(-2px) scale(1.04);
}

#button:focus-visible {
	outline: 3px solid rgba(201, 47, 69, .28) !important;
	outline-offset: 3px !important;
}

@keyframes c29-back-to-top-pop {
	0% { transform: translateY(12px) scale(.82); }
	68% { transform: translateY(-2px) scale(1.08); }
	100% { transform: translateY(0) scale(1); }
}

@media (max-width: 767px) {
	#button {
		right: 14px !important;
		bottom: 18px !important;
		width: 43px !important;
		height: 43px !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	#button,
	#button.show {
		animation: none !important;
		transition: none !important;
	}
}

/* Coye29 : formulaire de commentaire allégé.
 * Le formulaire public est généré par le widget b2evolution "comment_area".
 * On conserve les options, la notation et les boutons Prévisualiser/Envoyer. */
.evo_form__comment .comment_toolbars,
.evo_form__comment .comment_text_renderers,
.evo_form__comment #commentform_renderers,
.evo_form__comment .attachments_fieldset,
.evo_form__comment .evo_attachments_fieldset,
.evo_form__comment .fileuploader,
.evo_form__comment .qq-uploader,
.evo_form__comment fieldset[id*="attachment"],
.evo_form__comment fieldset:has(input[type="file"]) {
	display: none !important;
}

/* ==========================================================
   COYE29 — BARRE DE RECHERCHE AVEC LOGO CENTRAL
   ========================================================== */

.newcoye29-utilitybar,
.newcoye29-utilitybar * {
	box-sizing: border-box;
}

.newcoye29-utilitybar {
	position: relative;
	z-index: 20;
	width: 100%;
	height: 88px;
	margin: 0;
	padding: 0;
	background: #fff;
	border: 0;
	border-bottom: 1px solid #ededed;
}

.newcoye29-utilitybar__inner {
	display: flex;
	align-items: center;
	width: 100%;
	max-width: 1170px;
	height: 88px;
	margin: 0 auto;
	padding: 0 15px;
}

.newcoye29-utility-search {
	display: flex;
	align-items: center;
	height: 88px;
	margin: 0;
	padding: 0;
}

.newcoye29-utility-search__icon {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 22px;
	height: 88px;
	margin: 0;
	color: #555;
	cursor: text;
}

.newcoye29-utility-search__icon svg {
	display: block;
	width: 15px;
	height: 15px;
	fill: none;
	stroke: currentColor;
	stroke-width: 1.5;
	stroke-linecap: round;
}

.newcoye29-utility-search input[type="search"] {
	-webkit-appearance: none;
	appearance: none;
	display: block;
	width: 125px;
	height: 86px;
	margin: 0;
	padding: 0 3px;
	border: 0 !important;
	border-radius: 0 !important;
	outline: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
	color: #333;
	font-size: 13px;
	font-weight: 300;
	line-height: 86px;
}

.newcoye29-utility-search input[type="search"]::placeholder {
	color: #999;
	opacity: 1;
}

.newcoye29-utility-search input[type="search"]:focus {
	border: 0 !important;
	outline: 0 !important;
	box-shadow: none !important;
}

.newcoye29-utilitybar__logo {
	position: absolute !important;
	z-index: 3;
	top: 50% !important;
	left: 50% !important;
	display: block !important;
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	line-height: 0 !important;
	text-decoration: none !important;
	transform: translate(-50%, -50%) !important;
}

.newcoye29-utilitybar__logo img {
	display: block !important;
	width: auto !important;
	height: 110px !important;
	max-width: none !important;
	max-height: 110px !important;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
}

.newcoye29-utilitybar + .c29-home-hero {
	margin-top: 0 !important;
	padding-top: 18px;
}

@media (max-width: 480px) {
	.newcoye29-utilitybar {
		height: 64px;
	}

	.newcoye29-utilitybar__inner,
	.newcoye29-utility-search,
	.newcoye29-utility-search__icon {
		height: 64px;
	}

	.newcoye29-utility-search input[type="search"] {
		width: 90px;
		height: 62px;
		line-height: 62px;
	}

	.newcoye29-utilitybar__logo img {
		height: 50px !important;
		max-height: 50px !important;
	}

	.newcoye29-utilitybar + .c29-home-hero {
		padding-top: 10px;
	}
}

/* ==========================================================
   HOPER — 4 ARTICLES ÉDITORIAUX
   1 grand article à gauche + 3 articles simples à droite
   ========================================================== */

/* ----------------------------------------------------------
   Structure générale
   ---------------------------------------------------------- */

.c29-four-list {
	display: grid;
	grid-template-columns: minmax(0, 1.72fr) minmax(320px, .82fr);
	gap: 28px 34px;
	align-items: start;
	margin: 0 0 42px;
}

.c29-four-cell {
	width: auto !important;
	max-width: none !important;
	min-width: 0;
	margin: 0 !important;
	padding: 0 !important;
}

.c29-four-cell:nth-child(n+5) {
	display: none !important;
}

.c29-four-card {
	overflow: hidden;
	background: #fff;
}

.c29-four-media {
	position: relative;
	overflow: hidden;
	isolation: isolate;
	background: #20262b;
}


/* ----------------------------------------------------------
   Images : conteneurs et cadrage
   ---------------------------------------------------------- */

.c29-four-image,
.c29-four-image .evo_image_block,
.c29-four-image .evo_image_block > a,
.c29-four-image a,
.c29-four-image picture {
	position: absolute !important;
	inset: 0 !important;
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
	overflow: hidden !important;
}

.c29-four-image img,
.c29-four-image .evo_image_block img {
	position: absolute !important;
	inset: 0 !important;
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	min-width: 100% !important;
	min-height: 100% !important;
	margin: 0 !important;
	object-fit: cover !important;
	object-position: 50% 50% !important;
}


/* ----------------------------------------------------------
   Choix de l'image selon la position de l'article
   ---------------------------------------------------------- */

.c29-four-cell:first-child .c29-four-image--main {
	display: block !important;
}

.c29-four-cell:first-child .c29-four-image--side {
	display: none !important;
}

.c29-four-cell:not(:first-child) .c29-four-image--main {
	display: none !important;
}

.c29-four-cell:not(:first-child) .c29-four-image--side {
	display: block !important;
}


/* ==========================================================
   ARTICLE 1 — GRAND ARTICLE À GAUCHE
   ========================================================== */

.c29-four-cell:first-child {
	grid-column: 1;
	grid-row: 1 / span 3;
	position: sticky;
	top: 18px;
	align-self: start;
}

.c29-four-cell:first-child .c29-four-card {
	min-height: 520px;
}

.c29-four-cell:first-child .c29-four-media {
	height: 520px;
	min-height: 520px;
}

.c29-four-cell:first-child .c29-four-main-shade {
	position: absolute;
	z-index: 1;
	inset: 0;
	background:
		linear-gradient(
			to top,
			rgba(10, 15, 19, .92) 0%,
			rgba(10, 15, 19, .66) 42%,
			rgba(10, 15, 19, .16) 78%,
			rgba(10, 15, 19, .05) 100%
		);
	pointer-events: none;
}

.c29-four-cell:first-child .c29-four-main-content {
	position: absolute;
	z-index: 2;
	right: 40px;
	bottom: 38px;
	left: 40px;
	color: #fff;
}

.c29-four-cell:first-child .c29-four-main-category {
	margin-bottom: 12px;
	color: #fff;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .05em;
	text-transform: uppercase;
}

.c29-four-cell:first-child .c29-four-main-title {
	margin: 0 0 15px;
	color: #fff;
	font-size: clamp(34px, 3.3vw, 52px);
	font-weight: 700;
	line-height: 1.08;
	text-shadow: 0 2px 7px rgba(0, 0, 0, .70);
}

.c29-four-cell:first-child .c29-four-main-title a {
	color: #fff !important;
	text-decoration: none !important;
}

.c29-four-cell:first-child .c29-four-main-title a:hover,
.c29-four-cell:first-child .c29-four-main-title a:focus {
	text-decoration: underline !important;
}

.c29-four-cell:first-child .c29-four-main-excerpt {
	max-width: 90%;
	margin-bottom: 15px;
	color: rgba(255, 255, 255, .95);
	font-size: 16px;
	line-height: 1.5;
	text-shadow: 0 1px 4px rgba(0, 0, 0, .65);
}

.c29-four-cell:first-child .c29-four-main-excerpt p {
	margin: 0;
}

.c29-four-cell:first-child .c29-four-main-meta {
	color: rgba(255, 255, 255, .92);
	font-size: 13px;
	line-height: 1.4;
}

.c29-four-cell:first-child .c29-four-main-author a {
	color: #fff !important;
	font-weight: 600;
	text-decoration: none;
}

.c29-four-cell:first-child .c29-four-side-content {
	display: none;
}


/* ==========================================================
   ARTICLES 2 À 4 — COLONNE DROITE
   ========================================================== */

.c29-four-cell:not(:first-child) {
	grid-column: 2;
}

.c29-four-cell:not(:first-child) .c29-four-card {
	padding-bottom: 22px;
	border-bottom: 1px solid #d9d9d9;
}

.c29-four-cell:not(:first-child) .c29-four-media {
	height: 210px;
	min-height: 210px;
}

.c29-four-cell:not(:first-child) .c29-four-main-shade,
.c29-four-cell:not(:first-child) .c29-four-main-content {
	display: none;
}

.c29-four-cell:not(:first-child) .c29-four-side-content {
	padding-top: 14px;
}

.c29-four-side-category {
	margin-bottom: 7px;
	color: #169447;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .04em;
	text-transform: uppercase;
}

.c29-four-side-title {
	margin: 0 0 10px;
	font-size: 23px;
	font-weight: 700;
	line-height: 1.18;
}

.c29-four-side-title a {
	color: #191919 !important;
	text-decoration: none !important;
}

.c29-four-side-title a:hover,
.c29-four-side-title a:focus {
	text-decoration: underline !important;
}

.c29-four-side-excerpt {
	margin-bottom: 12px;
	color: #555;
	font-size: 14px;
	line-height: 1.48;
}

.c29-four-side-excerpt p {
	margin: 0;
}

.c29-four-side-meta {
	color: #777;
	font-size: 13px;
	line-height: 1.4;
}

.c29-four-side-author a {
	color: inherit !important;
	font-weight: 600;
	text-decoration: none;
}


/* ==========================================================
   RÉGLAGES PAR CLASSES AJOUTÉES DANS LE GABARIT MAÎTRE
   Exemple :
   <div class="c29-four-list c29-four-h620 c29-four-pos75">
   ========================================================== */

/* Hauteur fixe du grand article : 520 px */

/* Variante pilotable depuis la classe CSS du widget :
   c29-four-h420 réduit uniquement le grand article de gauche. */
.c29-four-h420 .c29-four-cell:first-child .c29-four-card {
	min-height: 420px !important;
}

.c29-four-h420 .c29-four-cell:first-child .c29-four-media {
	height: 420px !important;
	min-height: 420px !important;
}

/* Position verticale de l'image du grand article */

.c29-four-list.c29-four-pos20 > .c29-four-cell:first-child .c29-four-image img {
	object-position: 50% 20% !important;
}

.c29-four-list.c29-four-pos35 > .c29-four-cell:first-child .c29-four-image img {
	object-position: 50% 35% !important;
}

.c29-four-list.c29-four-pos50 > .c29-four-cell:first-child .c29-four-image img {
	object-position: 50% 50% !important;
}

.c29-four-list.c29-four-pos65 > .c29-four-cell:first-child .c29-four-image img {
	object-position: 50% 65% !important;
}

.c29-four-list.c29-four-pos75 > .c29-four-cell:first-child .c29-four-image img {
	object-position: 50% 75% !important;
}

.c29-four-list.c29-four-pos85 > .c29-four-cell:first-child .c29-four-image img {
	object-position: 50% 85% !important;
}

/* Position verticale des trois images de droite */

.c29-four-list.c29-four-side-pos20 > .c29-four-cell:not(:first-child) .c29-four-image img {
	object-position: 50% 20% !important;
}

.c29-four-list.c29-four-side-pos50 > .c29-four-cell:not(:first-child) .c29-four-image img {
	object-position: 50% 50% !important;
}

.c29-four-list.c29-four-side-pos75 > .c29-four-cell:not(:first-child) .c29-four-image img {
	object-position: 50% 75% !important;
}


/* ==========================================================
   RESPONSIVE
   ========================================================== */

@media (max-width: 991px) {

	.c29-four-list {
		grid-template-columns: 1fr;
		gap: 24px;
	}

	.c29-four-cell:first-child,
	.c29-four-cell:not(:first-child) {
		grid-column: 1;
		grid-row: auto;
		position: static;
	}

	.c29-four-cell:first-child .c29-four-media {
		height: 540px;
		min-height: 540px;
	}

}

@media (max-width: 767px) {

	.c29-four-cell:first-child .c29-four-media {
		height: 430px;
		min-height: 430px;
	}

	.c29-four-cell:first-child .c29-four-main-content {
		right: 22px;
		bottom: 24px;
		left: 22px;
	}

	.c29-four-cell:first-child .c29-four-main-title {
		font-size: 29px;
	}

	.c29-four-cell:first-child .c29-four-main-excerpt {
		max-width: none;
		font-size: 14px;
	}

	.c29-four-cell:not(:first-child) .c29-four-media {
		height: 235px;
		min-height: 235px;
	}

}


/* Recadrage piloté par les curseurs du skin Hoper */
.c29-four-image img,
.c29-four-image .evo_image_block img {
	object-position:
		var(--c29-four-x, 50%)
		var(--c29-four-y, 50%) !important;
}

/* ==========================================================
   RUBRIQUES / CATÉGORIES EN VERT ET BLANC
   ========================================================== */

/* Cartes Stain */
.c29-stain-category {
	display: inline-block;
	padding: 7px 14px;
	background: #18a34a;
	color: #ffffff;
	font-size: 14px;
	font-weight: 400;
	line-height: 1;
	text-transform: none;
	border-radius: 0;
	box-shadow: none;
}

.c29-stain-category a,
.c29-stain-category a:link,
.c29-stain-category a:visited,
.c29-stain-category a:hover,
.c29-stain-category a:focus {
	color: #ffffff !important;
	text-decoration: none !important;
}

/* Grand article des 4 articles */
.c29-four-main-category {
	display: inline-block;
	padding: 7px 14px;
	background: #18a34a;
	color: #ffffff;
	font-size: 14px;
	font-weight: 400;
	line-height: 1;
	text-transform: none;
	border-radius: 0;
	box-shadow: none;
	margin-bottom: 14px;
}

/* Petits articles à droite */
.c29-four-side-category {
	display: inline-block;
	padding: 7px 14px;
	background: #18a34a;
	color: #ffffff;
	font-size: 14px;
	font-weight: 400;
	line-height: 1;
	text-transform: none;
	border-radius: 0;
	box-shadow: none;
	margin-bottom: 12px;
}

/* ==========================================================
   ALIGNEMENT DES TROIS COLONNES DE LA ZONE SECONDAIRE
   ========================================================== */

/* L'ancien conteneur de gauche recevait 30 px de padding en haut.
   On neutralise cet ancien réglage pour aligner les trois colonnes. */
.secondary_area .c29-secondary-column > .evo_container,
.secondary_area .evo_container__front_page_secondary_area {
	padding-top: 0 !important;
	margin-top: 0 !important;
}

.secondary_area .c29-secondary-column > .evo_container > .evo_widget:first-child,
.secondary_area .c29-secondary-column > .evo_container > .evo_widget:first-child > :first-child {
	margin-top: 0 !important;
}

/* ==========================================================
   HOPER — CADRE ÉDITORIAL DU PREMIER ARTICLE (GABARIT 4)
   Couleur et position pilotées depuis le widget « Recadrage des 4 articles ».
   ========================================================== */
.c29-four-list > .c29-four-cell:first-child .c29-four-media::before,
.c29-four-list > .c29-four-cell:first-child .c29-four-media::after {
	content: "";
	position: absolute;
	z-index: 2;
	pointer-events: none;
	top: var(--c29-widget-frame-top, 92px);
}
.c29-four-list > .c29-four-cell:first-child .c29-four-media::before {
	bottom: 24px;
	left: 28px;
	right: 31%;
	border-top: 6px solid var(--c29-widget-frame-color, #AA4BAF);
	border-bottom: 6px solid var(--c29-widget-frame-color, #AA4BAF);
	border-left: 6px solid var(--c29-widget-frame-color, #AA4BAF);
}
.c29-four-list > .c29-four-cell:first-child .c29-four-media::after {
	bottom: 24px;
	left: 69%;
	width: 6px;
	background: linear-gradient(to bottom,
		var(--c29-widget-frame-color, #AA4BAF) 0 38px,
		transparent 38px calc(100% - 38px),
		var(--c29-widget-frame-color, #AA4BAF) calc(100% - 38px) 100%);
}
.c29-four-list > .c29-four-cell:first-child .c29-four-main-content { z-index: 3; }
.c29-four-list > .c29-four-cell:first-child .c29-four-main-category {
	display: inline-block;
	padding: 6px 12px;
	background: transparent !important;
	border: 1px solid rgba(255,255,255,.95) !important;
	color: #fff !important;
	box-shadow: none !important;
}
.c29-four-list > .c29-four-cell:first-child .c29-four-main-category a,
.c29-four-list > .c29-four-cell:first-child .c29-four-main-category a:link,
.c29-four-list > .c29-four-cell:first-child .c29-four-main-category a:visited,
.c29-four-list > .c29-four-cell:first-child .c29-four-main-category a:hover,
.c29-four-list > .c29-four-cell:first-child .c29-four-main-category a:focus {
	color: #fff !important;
	text-decoration: none !important;
}
@media (max-width: 767px) {
	.c29-four-list > .c29-four-cell:first-child .c29-four-media::before,
	.c29-four-list > .c29-four-cell:first-child .c29-four-media::after { top: 54px; }
	.c29-four-list > .c29-four-cell:first-child .c29-four-media::before {
		bottom: 14px; left: 14px; right: 18%; border-width: 4px;
	}
	.c29-four-list > .c29-four-cell:first-child .c29-four-media::after {
		bottom: 14px; left: 82%; width: 4px;
		background: linear-gradient(to bottom,
			var(--c29-widget-frame-color, #AA4BAF) 0 26px,
			transparent 26px calc(100% - 26px),
			var(--c29-widget-frame-color, #AA4BAF) calc(100% - 26px) 100%);
	}
}


/* ==========================================================
   HOPER 7.2.5 — ACCUEIL : LARGEUR, CADRE, CENTRAGE ET LOGO
   Cette section surcharge uniquement les éléments demandés.
   ========================================================== */

/* Le gabarit 4 articles sort du conteneur Bootstrap comme le grand bandeau. */
.c29-four-list {
	position: relative;
	left: 50%;
	width: 100vw;
	max-width: 100vw;
	margin-left: -50vw !important;
	margin-right: -50vw !important;
	box-sizing: border-box;
}

/* L’ancien cadre indépendant est neutralisé. */
.c29-four-list > .c29-four-cell:first-child .c29-four-media::before,
.c29-four-list > .c29-four-cell:first-child .c29-four-media::after {
	content: none !important;
	display: none !important;
}

/* Le texte complet est centré selon sa hauteur réelle. */
.c29-four-list > .c29-four-cell:first-child .c29-four-main-content {
	position: absolute !important;
	z-index: 3 !important;
	top: var(--c29-widget-content-y, 50%) !important;
	right: auto !important;
	bottom: auto !important;
	left: clamp(32px, 3.2vw, 64px) !important;
	width: min(68%, 820px) !important;
	max-width: calc(100% - 96px) !important;
	margin: 0 !important;
	padding: 18px 28px 16px 20px !important;
	box-sizing: border-box !important;
	transform: translateY(-50%) !important;
	display: block !important;
	color: #fff !important;
	border-top: 3px solid var(--c29-widget-frame-color, #18A34A) !important;
	border-bottom: 3px solid var(--c29-widget-frame-color, #18A34A) !important;
	border-left: 3px solid var(--c29-widget-frame-color, #18A34A) !important;
	border-right: 0 !important;
}

/* Ouverture du cadre sur la droite, avec deux petits segments. */
.c29-four-list > .c29-four-cell:first-child .c29-four-main-content::after {
	content: "" !important;
	position: absolute !important;
	z-index: 0 !important;
	top: -3px !important;
	right: -3px !important;
	bottom: -3px !important;
	width: 3px !important;
	background: linear-gradient(
		to bottom,
		var(--c29-widget-frame-color, #18A34A) 0 30px,
		transparent 30px calc(100% - 30px),
		var(--c29-widget-frame-color, #18A34A) calc(100% - 30px) 100%
	) !important;
	pointer-events: none !important;
}

/* Empilement vertical garanti, y compris pour un titre sur plusieurs lignes. */
.c29-four-list > .c29-four-cell:first-child .c29-four-main-content > * {
	position: relative !important;
	z-index: 1 !important;
}

.c29-four-list > .c29-four-cell:first-child .c29-four-main-category {
	display: inline-block !important;
	width: auto !important;
	margin: 0 0 12px !important;
	padding: 6px 12px !important;
	background: transparent !important;
	border: 1px solid rgba(255,255,255,.95) !important;
	color: #fff !important;
	box-shadow: none !important;
}

.c29-four-list > .c29-four-cell:first-child .c29-four-main-title,
.c29-four-list > .c29-four-cell:first-child .c29-four-main-excerpt,
.c29-four-list > .c29-four-cell:first-child .c29-four-main-meta {
	display: block !important;
	width: 100% !important;
	max-width: none !important;
}

/* Zone de logo administrable : conteneur « Bandeau accueil — logo central ». */
.newcoye29-utilitybar__inner {
	max-width: 1440px !important;
	padding-right: 18px !important;
	padding-left: 18px !important;
}

.newcoye29-utilitybar__logo {
	display: none !important;
}

.newcoye29-utilitybar__logo-slot {
	position: absolute !important;
	z-index: 3;
	top: 50% !important;
	left: 50% !important;
	display: flex !important;
	align-items: center;
	justify-content: center;
	width: min(48vw, 560px);
	height: 86px;
	margin: 0 !important;
	padding: 0 !important;
	transform: translate(-50%, -50%) !important;
}

.newcoye29-utilitybar__logo-slot .c29-header-hoper,
.newcoye29-utilitybar__logo-slot .c29-header-hoper__widget,
.newcoye29-utilitybar__logo-slot .evo_container,
.newcoye29-utilitybar__logo-slot .evo_widget,
.newcoye29-utilitybar__logo-slot p,
.newcoye29-utilitybar__logo-slot figure {
	display: flex !important;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	margin: 0 !important;
	padding: 0 !important;
	border: 0 !important;
	background: transparent !important;
}

.newcoye29-utilitybar__logo-slot .c29-header-hoper__title {
	display: none !important;
}

.newcoye29-utilitybar__logo-slot img {
	display: block !important;
	width: auto !important;
	height: auto !important;
	max-width: 100% !important;
	max-height: 78px !important;
	margin: 0 auto !important;
	padding: 0 !important;
	border: 0 !important;
	object-fit: contain;
}

@media (max-width: 991px) {
	.c29-four-list {
		left: 50%;
		width: 100vw;
		max-width: 100vw;
	}
}

@media (max-width: 767px) {
	.c29-four-list > .c29-four-cell:first-child .c29-four-main-content {
		top: var(--c29-widget-content-y, 50%) !important;
		right: 22px !important;
		left: 22px !important;
		width: auto !important;
		max-width: none !important;
		padding: 14px 18px 12px 14px !important;
		border-width: 2px !important;
	}

	.c29-four-list > .c29-four-cell:first-child .c29-four-main-content::after {
		top: -2px !important;
		right: -2px !important;
		bottom: -2px !important;
		width: 2px !important;
		background: linear-gradient(
			to bottom,
			var(--c29-widget-frame-color, #18A34A) 0 22px,
			transparent 22px calc(100% - 22px),
			var(--c29-widget-frame-color, #18A34A) calc(100% - 22px) 100%
		) !important;
	}

	.newcoye29-utilitybar__inner {
		max-width: none !important;
		padding-right: 12px !important;
		padding-left: 12px !important;
	}

	.newcoye29-utilitybar__logo-slot {
		width: 42vw;
		height: 62px;
	}

	.newcoye29-utilitybar__logo-slot img {
		max-height: 52px !important;
	}
}

/* ==========================================================
   COYE29 2026 — CHARTE COMMUNE / ACCUEIL HOPER
   Rouge validé : #C92F45.

   Cette couche ne modifie volontairement ni les hauteurs d'images,
   ni object-position, ni les variables de recadrage, ni la géométrie
   du cadre éditorial pilotée par le widget.
   ========================================================== */

body.disp_front.pictured {
	--c29-home-red: #C92F45;
	--c29-home-red-dark: #A92337;
	--c29-home-ink: #1D1F20;
	--c29-home-muted: #707276;
	--c29-home-line: #DEDEDA;
	--c29-home-soft: #F3F3F1;
	--c29-home-footer: #202224;
	background: #fff;
	color: var(--c29-home-ink);
}

body.disp_front.pictured #skin_wrapper {
	background: #fff;
	color: var(--c29-home-ink);
}

/* En-tête : même sobriété que le skin article, avec le rouge comme repère. */
body.disp_front .newcoye29-utilitybar {
	background: #fff;
	border-bottom-color: var(--c29-home-line);
	box-shadow: 0 1px 0 rgba(0, 0, 0, .025);
}

body.disp_front .newcoye29-utility-search__icon {
	color: var(--c29-home-red);
}

body.disp_front .newcoye29-utility-search input[type="search"] {
	color: var(--c29-home-ink);
}

body.disp_front .newcoye29-utility-search input[type="search"]::placeholder {
	color: #777A7D;
}

body.disp_front .newcoye29-utility-search input[type="search"]:focus {
	box-shadow: inset 0 -2px 0 var(--c29-home-red) !important;
}

body.disp_front .newcoye29-utilitybar__logo-slot {
	background: #fff;
}

/* Titres de sections : vocabulaire graphique repris de C29 Stain V4. */
body.disp_front .front_middle_title {
	position: relative;
	margin: 48px 0 24px;
	padding: 0 0 0 16px;
	border: 0;
	color: var(--c29-home-ink);
	font-family: "Arial Narrow", "Liberation Sans Narrow", "Helvetica Neue", Arial, sans-serif;
	font-size: clamp(27px, 3vw, 38px);
	font-weight: 700;
	line-height: 1.05;
	letter-spacing: -.015em;
}

body.disp_front .front_middle_title::before {
	content: "";
	position: absolute;
	top: .08em;
	bottom: .08em;
	left: 0;
	width: 5px;
	background: var(--c29-home-red);
}

/* Bandeau Featured : structure et cadrage inchangés, finition plus éditoriale. */
body.disp_front .c29-featured-wide {
	border-radius: 0;
	box-shadow: none;
}

body.disp_front .c29-featured-wide-title,
body.disp_front .c29-four-main-title,
body.disp_front .c29-four-side-title,
body.disp_front #c29-stain-grid .c29-stain-title {
	font-family: "Arial Narrow", "Liberation Sans Narrow", "Helvetica Neue", Arial, sans-serif;
}

body.disp_front .c29-featured-wide-category a:hover,
body.disp_front .c29-featured-wide-category a:focus,
body.disp_front .c29-featured-wide-button:hover,
body.disp_front .c29-featured-wide-button:focus {
	background: var(--c29-home-red);
	border-color: var(--c29-home-red);
}

/* Derniers articles : le cadre sur photo reste entièrement piloté par le widget. */
body.disp_front .c29-four-cell:not(:first-child) .c29-four-card {
	border-bottom-color: var(--c29-home-line);
}

body.disp_front .c29-four-side-category {
	margin-bottom: 9px;
	padding: 0 !important;
	background: transparent !important;
	color: var(--c29-home-red) !important;
	font-size: 12px;
	font-weight: 700;
	letter-spacing: .055em;
	text-transform: uppercase;
}

body.disp_front .c29-four-side-category a,
body.disp_front .c29-four-side-category a:link,
body.disp_front .c29-four-side-category a:visited {
	color: var(--c29-home-red) !important;
	text-decoration: none !important;
}

body.disp_front .c29-four-side-category a:hover,
body.disp_front .c29-four-side-category a:focus,
body.disp_front .c29-four-side-title a:hover,
body.disp_front .c29-four-side-title a:focus {
	color: var(--c29-home-red-dark) !important;
}

body.disp_front .c29-four-side-excerpt {
	color: #55595C;
}

body.disp_front .c29-four-side-meta {
	color: var(--c29-home-muted);
}

/* A découvrir : cartes carrées, ombre réduite, accents rouges. */
body.disp_front #c29-stain-grid .c29-stain-card {
	border-color: var(--c29-home-line);
	border-radius: 0;
	box-shadow: none;
	transition: border-color .25s ease, box-shadow .25s ease;
}

body.disp_front #c29-stain-grid .c29-stain-card:hover,
body.disp_front #c29-stain-grid .c29-stain-card:focus-within {
	border-color: rgba(201, 47, 69, .55);
	box-shadow: 0 9px 24px rgba(29, 31, 32, .10);
}

body.disp_front #c29-stain-grid .c29-stain-category {
	padding: 0 !important;
	background: transparent !important;
}

body.disp_front #c29-stain-grid .c29-stain-category a,
body.disp_front #c29-stain-grid .c29-stain-category a:link,
body.disp_front #c29-stain-grid .c29-stain-category a:visited,
body.disp_front #c29-stain-grid .c29-stain-category a:hover,
body.disp_front #c29-stain-grid .c29-stain-category a:focus {
	background: var(--c29-home-red) !important;
	border-color: var(--c29-home-red) !important;
	color: #fff !important;
}

body.disp_front #c29-stain-grid .c29-stain-divider {
	background: var(--c29-home-red);
}

body.disp_front #c29-stain-grid .c29-stain-more {
	border-color: var(--c29-home-red);
	color: var(--c29-home-red) !important;
}

body.disp_front #c29-stain-grid .c29-stain-more:hover,
body.disp_front #c29-stain-grid .c29-stain-more:focus {
	background: var(--c29-home-red);
	color: #fff !important;
}

/* Bandeau secondaire : trois colonnes perçues comme une seule zone d'information. */
body.disp_front .secondary_area {
	margin-top: 22px;
	padding-top: 44px;
	background: var(--c29-home-soft);
	border-top: 1px solid var(--c29-home-line);
}

body.disp_front .secondary_area .c29-secondary-column {
	padding-right: 32px;
	padding-bottom: 42px;
	padding-left: 32px;
}

body.disp_front .secondary_area .page-header {
	position: relative;
	margin: 0 0 22px;
	padding: 0 0 0 13px;
	border: 0;
	color: var(--c29-home-ink);
	font-family: "Arial Narrow", "Liberation Sans Narrow", "Helvetica Neue", Arial, sans-serif;
	font-size: 25px;
	font-weight: 700;
	line-height: 1.08;
}

body.disp_front .secondary_area .page-header::before {
	content: "";
	position: absolute;
	top: 1px;
	bottom: 1px;
	left: 0;
	width: 4px;
	background: var(--c29-home-red);
}

body.disp_front .secondary_area .panel,
body.disp_front .secondary_area .well {
	background: transparent;
	border: 0;
	border-radius: 0;
	box-shadow: none;
}

body.disp_front .secondary_area .panel-heading {
	padding-right: 0;
	padding-left: 0;
	background: transparent;
	border: 0;
}

body.disp_front .secondary_area .widget_core_org_members {
	margin-top: 0;
}

body.disp_front.pictured .secondary_area a {
	color: #343638;
}

body.disp_front.pictured .secondary_area a:hover,
body.disp_front.pictured .secondary_area a:focus {
	color: var(--c29-home-red);
}

@media (min-width: 992px) {
	body.disp_front .secondary_area .c29-secondary-column + .c29-secondary-column {
		border-left: 1px solid #D5D5D1;
	}
}

/* Pied de page intégré : anthracite commun à la nouvelle charte. */
body.disp_front .secondary_area footer.col-md-12 {
	clear: both;
	position: relative;
	left: 50%;
	display: flex;
	flex-direction: column;
	flex-wrap: wrap;
	align-items: center;
	justify-content: center;
	gap: 12px;
	float: none;
	width: 100vw;
	margin: 4px 0 0 -50vw;
	padding: 28px 28px 24px;
	background: var(--c29-home-footer);
	color: #C9CAC7;
}

/* Le conteneur de widgets du footer, s'il existe, garde sa ligne.
   Le logo b2evolution passe ensuite au premier plan, avant les liens. */
body.disp_front .secondary_area footer.col-md-12 > .evo_container {
	order: 0;
	flex: 0 0 100%;
}

body.disp_front .secondary_area footer.col-md-12 > .powered_by {
	order: 1;
	position: relative;
	z-index: 3;
	flex: 0 0 auto;
	margin: 0 !important;
	padding: 0 !important;
	line-height: 0;
	text-align: center;
}

body.disp_front .secondary_area footer.col-md-12 > p.center {
	order: 2;
	flex: 0 1 auto;
	width: 100%;
	height: auto !important;
	min-height: 0 !important;
	max-height: none !important;
	margin: 0 !important;
	padding: 0 !important;
	line-height: 1.5;
	text-align: center !important;
}

body.disp_front .secondary_area footer.col-md-12 > .powered_by img {
	display: block;
	position: relative;
	z-index: 4;
	width: 120px;
	height: 32px;
	max-width: 120px;
	margin: 0;
	background: #fff;
	border-radius: 4px;
	opacity: 1;
	filter: none;
}

body.disp_front.pictured .secondary_area footer.col-md-12 a,
body.disp_front.pictured .secondary_area footer.col-md-12 a:link,
body.disp_front.pictured .secondary_area footer.col-md-12 a:visited {
	color: #E3E3DF !important;
}

body.disp_front.pictured .secondary_area footer.col-md-12 a:hover,
body.disp_front.pictured .secondary_area footer.col-md-12 a:focus {
	color: #fff !important;
}


@media (max-width: 991px) {
	body.disp_front .secondary_area {
		padding-top: 18px;
	}

	body.disp_front .secondary_area .c29-secondary-column {
		padding-top: 26px;
		padding-right: 15px;
		padding-bottom: 28px;
		padding-left: 15px;
		border-bottom: 1px solid #D5D5D1;
	}
}

@media (max-width: 767px) {
	body.disp_front .front_middle_title {
		margin-top: 36px;
		margin-bottom: 19px;
		padding-left: 13px;
		font-size: 29px;
	}

	body.disp_front .front_middle_title::before {
		width: 4px;
	}

	body.disp_front .secondary_area footer.col-md-12 {
		padding: 24px 18px 20px;
	}

	body.disp_front .secondary_area footer.col-md-12 > .powered_by,
	body.disp_front .secondary_area footer.col-md-12 > p.center {
		flex-basis: 100%;
		text-align: center !important;
	}

	body.disp_front .secondary_area footer.col-md-12 > .powered_by img {
		margin: 0 auto;
	}
}

/* ==========================================================
   COYE29 2026 — HOPER / CHARTE ÉDITORIALE ROUGE

   L'ordre des widgets reste exclusivement celui défini dans
   l'administration b2evolution. Cette couche ne réordonne rien.
   Les variables de recadrage et de cadre du widget restent intactes.
   ========================================================== */

/* La navigation générale appartient désormais exclusivement à
   coye29_site_skin. Hoper se contente de l'inclure dans front.main.php. */

/* --- Grand bandeau blanc de marque. Le logo central est administrable
       dans le conteneur « Bandeau accueil — logo central ». --- */
body.disp_front .newcoye29-utilitybar {
	height: 94px !important;
	border-bottom: 1px solid #E8E7E3 !important;
	box-shadow: none !important;
}

body.disp_front .newcoye29-utilitybar__inner,
body.disp_front .newcoye29-utility-search,
body.disp_front .newcoye29-utility-search__icon {
	height: 94px !important;
}

body.disp_front .newcoye29-utility-search input[type="search"] {
	height: 92px !important;
	line-height: 92px !important;
}

body.disp_front .newcoye29-utilitybar__logo-slot {
	width: min(50vw, 520px) !important;
	height: 94px !important;
	overflow: hidden !important;
}

body.disp_front .newcoye29-utilitybar__logo-slot .c29-home-brand {
	display: flex !important;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	line-height: 0;
	text-decoration: none !important;
}

body.disp_front .newcoye29-utilitybar__logo-slot .c29-home-brand img,
body.disp_front .newcoye29-utilitybar__logo-slot .c29-header-hoper img {
	display: block !important;
	width: auto !important;
	height: auto !important;
	max-width: 100% !important;
	max-height: 78px !important;
	margin: 0 auto !important;
	border: 0 !important;
	object-fit: contain;
}

body.disp_front .newcoye29-utilitybar + .c29-home-hero {
	margin-top: 0 !important;
	padding-top: 0 !important;
}

/* --- On retire l'ancien grand titre texte de la composition. --- */
body.disp_front .c29-home-hero-widget.widget_core_free_text.h1 {
	display: none !important;
}

/* ==========================================================
   FEATURED — plein écran, cadre blanc à extrémités alignées
   ========================================================== */
body.disp_front .c29-home-hero-widget:has(> .c29-featured-wide-list) {
	margin-bottom: 0 !important;
}

body.disp_front .c29-featured-wide-list {
	margin-bottom: 0 !important;
}

body.disp_front .c29-featured-wide {
	background: #202224;
}

/* Hauteur de maquette par défaut. Les classes de réglage du widget
   (c29-banner-h380 / h400 / h420 / h450 / h520) restent prioritaires. */
body.disp_front .c29-featured-wide-media {
	height: 520px;
}

body.disp_front .c29-featured-wide-shade {
	background: linear-gradient(
		to right,
		rgba(14, 17, 19, .82) 0%,
		rgba(14, 17, 19, .64) 34%,
		rgba(14, 17, 19, .28) 62%,
		rgba(14, 17, 19, .04) 100%
	) !important;
}

body.disp_front .c29-featured-wide-content {
	top: var(--c29-widget-content-y, 50%) !important;
	right: auto !important;
	bottom: auto !important;
	left: clamp(54px, 6vw, 108px) !important;
	width: min(54%, 760px) !important;
	max-width: calc(100% - 120px) !important;
	margin: 0 !important;
	padding: 18px 30px 16px 20px !important;
	box-sizing: border-box;
	transform: translateY(-50%) !important;
}

/* Même base de calcul pour les lignes et leurs retours verticaux. */
body.disp_front .c29-featured-wide-content::before {
	content: "";
	position: absolute;
	z-index: 0;
	top: -22px;
	bottom: -22px;
	left: -28px;
	width: 100%;
	background:
		linear-gradient(#fff, #fff) left top /
			calc(var(--c29-widget-frame-line-length, 82%) + 28px)
			var(--c29-widget-frame-thickness, 3px) no-repeat,
		linear-gradient(#fff, #fff) left bottom /
			calc(var(--c29-widget-frame-line-length, 82%) + 28px)
			var(--c29-widget-frame-thickness, 3px) no-repeat,
		linear-gradient(#fff, #fff) left top /
			var(--c29-widget-frame-thickness, 3px) 100% no-repeat;
	pointer-events: none;
}

body.disp_front .c29-featured-wide-content::after {
	content: "";
	position: absolute;
	z-index: 0;
	top: -22px;
	bottom: -22px;
	left: var(--c29-widget-frame-line-length, 82%);
	width: var(--c29-widget-frame-thickness, 3px);
	background: linear-gradient(
		to bottom,
		#fff 0 30px,
		transparent 30px calc(100% - 30px),
		#fff calc(100% - 30px) 100%
	);
	pointer-events: none;
}

body.disp_front .c29-featured-wide-content > * {
	position: relative;
	z-index: 1;
}

body.disp_front .c29-featured-wide-category {
	margin-bottom: 12px;
}

body.disp_front .c29-featured-wide-category a,
body.disp_front .c29-featured-wide-category a:link,
body.disp_front .c29-featured-wide-category a:visited {
	padding: 5px 10px 6px;
	background: var(--c29-home-red) !important;
	border-color: var(--c29-home-red) !important;
	color: #fff !important;
	text-shadow: none;
}

body.disp_front .c29-featured-wide-title {
	margin-bottom: 12px;
	font-size: clamp(36px, 3.7vw, 58px);
	font-weight: 700;
	line-height: 1.02;
	letter-spacing: -.018em;
}

body.disp_front .c29-featured-wide-excerpt {
	max-width: 680px;
	margin-bottom: 16px;
	font-size: 16px;
	line-height: 1.48;
}

body.disp_front .c29-featured-wide-button {
	padding: 7px 13px 8px;
	border-radius: 0;
	background: rgba(0, 0, 0, .22);
}

/* ==========================================================
   BLOC 4 ARTICLES — titre piloté par le titre du widget
   ========================================================== */
body.disp_front .c29-home-hero-widget:has(> .c29-four-list) {
	position: relative;
	padding-top: 48px;
}

body.disp_front .c29-home-hero-widget:has(> .c29-four-list) > .front_middle_title {
	margin-top: 0;
	margin-bottom: 25px;
}

body.disp_front .c29-home-hero-widget:has(> .c29-four-list) > .c29-four-list {
	left: auto !important;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 0 64px !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
}

/* ==========================================================
   VIGNETTES 3 COLONNES — même langage que les 3 cartes de droite
   du gabarit « 4 articles ». Aucun effet Stain n'est ajouté ici.
   ========================================================== */
body.disp_front .c29-vignettes-list {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 36px 30px;
	width: 100%;
	margin: 0 0 42px !important;
	padding: 0;
}

body.disp_front .c29-vignettes-list .c29-vignette-cell {
	float: none !important;
	width: auto !important;
	min-width: 0;
	margin: 0 !important;
	padding: 0 !important;
}

body.disp_front .c29-vignettes-list .c29-vignette-card {
	position: relative !important;
	width: 100%;
	height: 100%;
	padding-bottom: 22px !important;
	background: #fff;
	border-bottom: 1px solid var(--c29-home-line) !important;
}

/* Neutralise le ratio Bootstrap du gabarit et reprend exactement
   la hauteur d'image des trois cartes de droite existantes. */
body.disp_front .c29-vignettes-list .c29-vignette-media {
	position: relative;
	overflow: hidden;
	height: 210px !important;
	min-height: 210px !important;
	padding: 0 !important;
	background: #20262b;
}

body.disp_front .c29-vignettes-list .c29-four-image,
body.disp_front .c29-vignettes-list .c29-four-image .evo_image_block,
body.disp_front .c29-vignettes-list .c29-four-image .evo_image_block > a,
body.disp_front .c29-vignettes-list .c29-four-image a,
body.disp_front .c29-vignettes-list .c29-four-image picture {
	position: absolute !important;
	inset: 0 !important;
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

body.disp_front .c29-vignettes-list .c29-four-image img,
body.disp_front .c29-vignettes-list .c29-four-image .evo_image_block img {
	position: absolute !important;
	inset: 0 !important;
	display: block !important;
	width: 100% !important;
	height: 100% !important;
	max-width: none !important;
	min-width: 100% !important;
	min-height: 100% !important;
	margin: 0 !important;
	object-fit: cover !important;
	object-position:
		var(--c29-vignette-crop-x, 50%)
		var(--c29-vignette-crop-y, 50%) !important;
	transform: scale(var(--c29-vignette-crop-scale, 1));
	transform-origin:
		var(--c29-vignette-crop-x, 50%)
		var(--c29-vignette-crop-y, 50%);
	image-rendering: auto;
}

body.disp_front .c29-vignettes-list .c29-four-side-content {
	padding-top: 14px !important;
}

/* C29-HOPER-FIX-COMMENTS-LOGO-20260805
   Commentaires : le bloc est physiquement placé dans la zone image par les
   gabarits c_four_item et c29-vignette. Même position que Stain. */
body.disp_front .c29-four-list .c29-four-comments,
body.disp_front .c29-vignettes-list .c29-vignette-comments {
	position: absolute !important;
	z-index: 12 !important;
	top: 12px !important;
	right: 13px !important;
	bottom: auto !important;
	left: auto !important;
	display: inline-flex !important;
	align-items: center;
	float: none !important;
	width: auto !important;
	height: auto !important;
	margin: 0 !important;
	padding: 0 !important;
	color: #fff !important;
	font-size: 11px;
	font-weight: 600;
	line-height: 1.2;
	text-shadow: 0 1px 3px rgba(0,0,0,.82);
	white-space: nowrap;
	pointer-events: auto;
}

body.disp_front .c29-four-list .c29-four-comments .c29-home-comments-link,
body.disp_front .c29-four-list .c29-four-comments .c29-home-comments-link:hover,
body.disp_front .c29-four-list .c29-four-comments .c29-home-comments-link:focus,
body.disp_front .c29-vignettes-list .c29-vignette-comments .c29-home-comments-link,
body.disp_front .c29-vignettes-list .c29-vignette-comments .c29-home-comments-link:hover,
body.disp_front .c29-vignettes-list .c29-vignette-comments .c29-home-comments-link:focus {
	color: #fff !important;
	text-shadow: 0 1px 3px rgba(0,0,0,.82);
}

/* Le séparateur appartenait à la ligne auteur + commentaires ; il n'a plus
   de raison d'être une fois le lien commentaires placé sur la photo. */
body.disp_front .c29-vignettes-list .c29-four-meta-separator {
	display: none !important;
}

/* Une couleur par billet : le widget injecte la même couleur que celle
   qui sera utilisée par le modèle correspondant du single post. */
body.disp_front .c29-vignettes-list .c29-four-side-category {
	display: inline-flex !important;
	align-items: center;
	gap: 8px;
}

body.disp_front .c29-vignettes-list .c29-four-side-category::before {
	content: "";
	flex: 0 0 10px;
	width: 10px;
	height: 10px;
	background: var(--c29-item-accent, #FCBE45);
}

/* Même repère couleur par billet sur le grand article et le bloc 4 articles.
   La variable est injectée par la Liste universelle d'item avec exactement la
   même attribution que les vignettes et le single display. */
body.disp_front .c29-featured-wide-cell .c29-featured-wide-category::before,
body.disp_front .c29-four-list .c29-four-main-category::before,
body.disp_front .c29-four-list .c29-four-side-category::before {
	content: "";
	display: inline-block;
	width: 10px;
	height: 10px;
	margin-right: 8px;
	background: var(--c29-item-accent, #FCBE45);
	vertical-align: 0;
}

/* b2evolution ajoute class="nowrap" aux permaliens de titre. On la
   neutralise ici : aucun titre de vignette ne doit être tronqué. */
body.disp_front .c29-vignettes-list .c29-four-side-title {
	font-size: clamp(19px, 2.2vw, 23px);
	line-height: 1.2;
}

body.disp_front .c29-vignettes-list .c29-four-side-title a,
body.disp_front .c29-vignettes-list .c29-four-side-title a.nowrap {
	white-space: normal !important;
	overflow-wrap: anywhere;
	word-break: normal;
}

/* Même protection pour les titres des autres compositions de l'accueil :
   le CMS applique aussi nowrap au featured et au bloc 4 articles. */
body.disp_front .c29-featured-wide-title a.nowrap,
body.disp_front .c29-four-list .c29-four-main-title a.nowrap,
body.disp_front .c29-four-list .c29-four-side-title a.nowrap {
	white-space: normal !important;
	overflow-wrap: anywhere;
	word-break: normal;
}

/* Commentaires : même mécanique b2evolution sur featured, 4 articles
   et vignettes. L'icône n'existe que si feedback_link produit un lien. */
body.disp_front .c29-home-comments-link,
body.disp_front .c29-featured-wide-comments-link {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	color: inherit !important;
	font-weight: 600;
	text-decoration: none !important;
}

body.disp_front .c29-home-comments-link::before,
body.disp_front .c29-featured-wide-comments-link::before {
	content: "\f075";
	font-family: FontAwesome;
	font-size: .92em;
	font-style: normal;
	font-weight: normal;
	line-height: 1;
}

body.disp_front .c29-home-comments-link:hover,
body.disp_front .c29-home-comments-link:focus,
body.disp_front .c29-featured-wide-comments-link:hover,
body.disp_front .c29-featured-wide-comments-link:focus {
	color: var(--c29-home-red) !important;
	text-decoration: underline !important;
}

body.disp_front .c29-four-cell:first-child .c29-home-comments-link,
body.disp_front .c29-featured-wide-comments-link {
	color: #fff !important;
}

body.disp_front .c29-four-cell:first-child .c29-home-comments-link:hover,
body.disp_front .c29-four-cell:first-child .c29-home-comments-link:focus,
body.disp_front .c29-featured-wide-comments-link:hover,
body.disp_front .c29-featured-wide-comments-link:focus {
	color: #fff !important;
}

body.disp_front .c29-four-meta-separator {
	margin: 0 6px;
	opacity: .7;
}

/* --- Zone basse : trois rubriques visuellement solidaires. --- */
body.disp_front .secondary_area {
	margin-top: 50px;
	padding-top: 48px;
	background: var(--c29-home-soft) !important;
	color: var(--c29-home-ink) !important;
}

body.disp_front .secondary_area .c29-secondary-column:nth-child(3)
	.widget_core_coll_search_form {
	display: none !important;
}

@media (max-width: 991px) {
	body.disp_front .newcoye29-utilitybar {
		height: 86px !important;
	}

	body.disp_front .newcoye29-utilitybar__inner,
	body.disp_front .newcoye29-utility-search,
	body.disp_front .newcoye29-utility-search__icon {
		height: 86px !important;
	}

	body.disp_front .newcoye29-utility-search input[type="search"] {
		height: 84px !important;
		line-height: 84px !important;
	}

	body.disp_front .newcoye29-utilitybar__logo-slot {
		width: min(52vw, 430px) !important;
		height: 86px !important;
	}

	body.disp_front .newcoye29-utilitybar__logo-slot .c29-home-brand img,
	body.disp_front .newcoye29-utilitybar__logo-slot .c29-header-hoper img {
		max-height: 70px !important;
	}

	body.disp_front .c29-featured-wide-content {
		left: 48px !important;
		width: min(66%, 680px) !important;
		max-width: calc(100% - 88px) !important;
	}

	body.disp_front .c29-featured-wide-media {
		height: 380px;
	}

	body.disp_front .c29-home-hero-widget:has(> .c29-four-list) {
		padding-top: 42px;
	}
}

@media (max-width: 767px) {
	body.disp_front .newcoye29-utilitybar {
		height: 72px !important;
	}

	body.disp_front .newcoye29-utilitybar__inner,
	body.disp_front .newcoye29-utility-search,
	body.disp_front .newcoye29-utility-search__icon {
		height: 72px !important;
	}

	body.disp_front .newcoye29-utility-search input[type="search"] {
		width: 82px;
		height: 70px !important;
		line-height: 70px !important;
	}

	body.disp_front .newcoye29-utilitybar__logo-slot {
		width: 52vw !important;
		height: 72px !important;
	}

	body.disp_front .newcoye29-utilitybar__logo-slot .c29-home-brand img,
	body.disp_front .newcoye29-utilitybar__logo-slot .c29-header-hoper img {
		max-height: 56px !important;
	}

	body.disp_front .c29-featured-wide-shade {
		background: linear-gradient(
			to top,
			rgba(14, 17, 19, .88) 0%,
			rgba(14, 17, 19, .64) 56%,
			rgba(14, 17, 19, .18) 100%
		) !important;
	}

	body.disp_front .c29-featured-wide-content {
		top: var(--c29-widget-content-y, 50%) !important;
		right: 22px !important;
		bottom: auto !important;
		left: 22px !important;
		width: auto !important;
		max-width: none !important;
		padding: 13px 16px 12px 14px !important;
		transform: translateY(-50%) !important;
	}

	body.disp_front .c29-featured-wide-content::before {
		top: -12px;
		bottom: -12px;
		left: -14px;
		background:
			linear-gradient(#fff, #fff) left top /
				calc(var(--c29-widget-frame-line-length, 82%) + 14px)
				var(--c29-widget-frame-thickness, 3px) no-repeat,
			linear-gradient(#fff, #fff) left bottom /
				calc(var(--c29-widget-frame-line-length, 82%) + 14px)
				var(--c29-widget-frame-thickness, 3px) no-repeat,
			linear-gradient(#fff, #fff) left top /
				var(--c29-widget-frame-thickness, 3px) 100% no-repeat;
	}

	body.disp_front .c29-featured-wide-content::after {
		top: -12px;
		bottom: -12px;
		background: linear-gradient(
			to bottom,
			#fff 0 22px,
			transparent 22px calc(100% - 22px),
			#fff calc(100% - 22px) 100%
		);
	}

	body.disp_front .c29-featured-wide-title {
		font-size: clamp(27px, 8vw, 38px);
	}

	body.disp_front .c29-featured-wide-excerpt {
		font-size: 14px;
		-webkit-line-clamp: 2;
	}

	body.disp_front .c29-featured-wide-media {
		height: 300px;
	}

	body.disp_front .c29-vignettes-list .c29-vignette-media {
		height: 235px !important;
		min-height: 235px !important;
	}

	body.disp_front .c29-vignettes-list {
		grid-template-columns: 1fr;
		gap: 30px;
	}

	body.disp_front .c29-home-hero-widget:has(> .c29-four-list) {
		padding-top: 34px;
	}

	body.disp_front .c29-home-hero-widget:has(> .c29-four-list) > .front_middle_title {
		margin-bottom: 22px;
	}

	body.disp_front .c29-home-hero-widget:has(> .c29-four-list) > .c29-four-list {
		margin-bottom: 46px !important;
	}

}
