/**
 * En-tête et navigation principale (template-parts/header/nav.php, assets/nav/pany-nav.js).
 * Mobile d'abord ; desktop à partir de 1180px (même valeur dans pany-nav.js, constante DESKTOP).
 */

/* Polices de la charte (dossier fonts/ du thème), communes à tout le site ; Caveat est déclarée par la home */
@font-face {
	font-family: "Plus Jakarta Sans";
	font-style: normal;
	font-weight: 600;
	font-display: swap;
	src: url("../../fonts/plus-jakarta-sans-latin-600.woff2") format("woff2");
}

@font-face {
	font-family: "Plus Jakarta Sans";
	font-style: normal;
	font-weight: 700;
	font-display: swap;
	src: url("../../fonts/plus-jakarta-sans-latin-700.woff2") format("woff2");
}

@font-face {
	font-family: "Plus Jakarta Sans";
	font-style: normal;
	font-weight: 800;
	font-display: swap;
	src: url("../../fonts/plus-jakarta-sans-latin-800.woff2") format("woff2");
}

@font-face {
	font-family: "DM Sans";
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url("../../fonts/dm-sans-latin-400.woff2") format("woff2");
}

@font-face {
	font-family: "DM Sans";
	font-style: normal;
	font-weight: 600;
	font-display: swap;
	src: url("../../fonts/dm-sans-latin-600.woff2") format("woff2");
}

@font-face {
	font-family: "DM Sans";
	font-style: normal;
	font-weight: 700;
	font-display: swap;
	src: url("../../fonts/dm-sans-latin-700.woff2") format("woff2");
}

/*
 * Couleurs : celles du site (variables --t-* générées depuis les tables $themes de _colors.scss, dans base.css),
 * avec les valeurs PANY par défaut. « yellow » = couleur d'accent du site, « accent-txt » = texte posé dessus.
 */
.pany-header {
	--pany-ink: var(--t-ink, #14140f);
	--pany-yellow: var(--t-accent, #fbd45c);
	--pany-accent-txt: var(--t-accent-txt, #14140f);
	--pany-cream: var(--t-cream, #fdf3de);
	--pany-search: var(--t-search, #f4f2ee);
	--pany-line: var(--t-line-2, #eeeae3);
	--pany-muted: var(--t-text-3, #57534a);
	--pany-title: "Plus Jakarta Sans", system-ui, sans-serif;
	--pany-text: "DM Sans", system-ui, sans-serif;
	--pany-speed: 0.2s;

	position: relative;
	z-index: 1000;
	color: var(--pany-ink);
	font-family: var(--pany-text);
	font-size: 16px;
	line-height: 1.3;
}

.pany-header *,
.pany-header *::before,
.pany-header *::after {
	box-sizing: border-box;
}

/*
 * Remises à zéro en :where() : spécificité d'une seule classe, pour passer devant les styles d'éléments
 * du thème (a, span, ul, button) tout en laissant gagner les règles des composants, plus bas.
 */
.pany-header :where(ul) {
	margin: 0;
	padding: 0;
	list-style: none;
}

.pany-header :where(li)::before {
	content: none;
}

.pany-header :where(a) {
	font-family: inherit;
	font-weight: inherit;
	text-decoration: none;
}

/* Le thème fixe police et couleur sur tous les span */
.pany-header :where(span) {
	color: inherit;
	font: inherit;
}

.pany-header :where(button) {
	margin: 0;
	padding: 0;
	border: 0;
	border-radius: 0;
	background: none;
	color: inherit;
	font: inherit;
	text-align: inherit;
	cursor: pointer;
}

/* Couleur des liens : le thème la fixe avec « .pany a » */
.pany-header a {
	color: inherit;
}

/* Survol des liens du thème (fond et couleur) neutralisé, sauf boutons qui ont leur propre fond */
header.pany-header a:where(:not(.pany-actions__link, .pany-round)):hover {
	background-color: transparent;
	color: inherit;
}

header.pany-header svg {
	margin: 0;
}

.pany-header :focus-visible {
	outline: 2px solid var(--pany-ink);
	outline-offset: 2px;
}

.pany-header .pany-icon {
	flex: none;
	width: 22px;
	height: 22px;
}

.pany-header .screen-reader-text {
	position: absolute;
	width: 1px;
	height: 1px;
	margin: -1px;
	padding: 0;
	overflow: hidden;
	clip: rect(0 0 0 0);
	white-space: nowrap;
	border: 0;
}

/* Boutons ronds (burger, loupe, compte, réseaux) : 44px de zone cliquable */
.pany-header .pany-round {
	display: inline-flex;
	flex: none;
	align-items: center;
	justify-content: center;
	width: 44px;
	height: 44px;
	border-radius: 50%;
}

.pany-header .pany-round--cream {
	background: var(--pany-cream);
}

/* Barre ------------------------------------------------------------------ */

.pany-header__bar {
	display: flex;
	align-items: center;
	gap: 12px;
	min-height: 64px;
	padding: 10px 16px;
	background: #fff;
	box-shadow: 0 4px 20px rgba(20, 20, 15, 0.06);
}

.pany-header__logo {
	display: flex;
	align-items: center;
	min-height: 44px;
	margin-right: auto;
}

.pany-header__logo img {
	display: block;
	width: auto;
	height: 38px;
}

.pany-header__burger-open,
.pany-header__burger-close {
	display: inline-flex;
}

.pany-header__burger-close,
.pany-header__burger[aria-expanded="true"] .pany-header__burger-open {
	display: none;
}

.pany-header__burger[aria-expanded="true"] .pany-header__burger-close {
	display: inline-flex;
}

.pany-header__search-open,
.pany-header__search-close {
	display: inline-flex;
}

.pany-header__search-close,
.pany-header__search[aria-expanded="true"] .pany-header__search-open {
	display: none;
}

.pany-header__search[aria-expanded="true"] .pany-header__search-close {
	display: inline-flex;
}

.pany-header .pany-header__account {
	display: none;
}

/* Liens et boutons d'action ------------------------------------------------ */

.pany-actions__link {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	min-height: 48px;
	padding: 0 18px;
	border-radius: 999px;
	background: var(--pany-yellow);
	color: var(--pany-accent-txt);
	font-family: var(--pany-title);
	font-size: 15px;
	font-weight: 700;
	text-align: center;
	white-space: nowrap;
}

/* 1er bouton noir (Guide offert), les suivants jaunes */
.pany-header .pany-actions > li:first-child .pany-actions__link {
	background: var(--pany-ink);
	color: #fff;
}

.pany-actions__link .pany-icon {
	width: 20px;
	height: 20px;
	color: var(--pany-yellow);
}

/* Champ de recherche (composant Vue de la recherche du site) ---------------- */

.pany-search #search-form-vue {
	width: auto;
	margin: 0;
	border: 0;
	box-shadow: none;
}

/* Bloc : le bouton est placé en absolu, les suggestions passent sous le champ */
.pany-search .searchform {
	display: block;
	position: relative;
}

.pany-search #search-form-vue input[type="search"] {
	width: 100%;
	height: 52px;
	padding: 0 20px 0 52px;
	border: 0;
	border-radius: 999px;
	background: var(--pany-search);
	color: var(--pany-ink);
	font-family: var(--pany-text);
	font-size: 16px;
}

.pany-search #search-form-vue input[type="search"]::placeholder {
	color: var(--pany-muted);
}

.pany-search #search-form-vue input[type="search"]:focus {
	border-radius: 999px;
	outline: 2px solid var(--pany-ink);
	outline-offset: 0;
}

/* Bouton d'envoi : loupe dans le champ, à gauche */
.pany-search .searchform button[type="submit"] {
	position: absolute;
	top: 4px;
	left: 4px;
	width: 44px;
	height: 44px;
	margin: 0;
	border-radius: 50%;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='22' height='22' viewBox='0 0 24 24' fill='none' stroke='%2314140F' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.5-3.5'/%3E%3C/svg%3E") center / 22px no-repeat;
}

.pany-search #searchPanel {
	top: 58px;
	border-radius: 16px;
}

/* Suggestions : survol identique aux sous-menus de la navigation (fond gris clair, sans soulignement ni couleur) */
.pany-search #search-form-vue #searchPanel .search-results li {
	min-height: 44px;
	margin-bottom: 2px;
	padding: 5px 14px;
	border-radius: 10px;
}

.pany-search #search-form-vue #searchPanel .search-results li:hover,
.pany-search #search-form-vue #searchPanel .search-results li:focus-within {
	background: var(--pany-search);
}

.pany-search #search-form-vue #searchPanel .search-results li:hover a {
	color: inherit;
	text-decoration: none;
}

/* Mobile (< 1180px) -------------------------------------------------------- */

@media (max-width: 1179.98px) {
	.pany-header .pany-hide-mobile {
		display: none !important;
	}

	/* Menu ouvert : la barre reste en haut de l'écran, la page derrière ne défile plus */
	html.pany-menu-open,
	html.pany-menu-open body {
		overflow: hidden;
	}

	/* Bouton flottant des cookies (Axeptio) : masqué tant que le menu est ouvert, il couvrait la barre d'action */
	html.pany-menu-open #axeptio_overlay {
		display: none;
	}

	/* La barre sort du flux : sa place est gardée pour que la page ne bouge pas */
	.pany-header.is-menu-open {
		min-height: var(--pany-bar-h, 64px);
	}

	.pany-header.is-menu-open .pany-header__bar {
		position: fixed;
		top: var(--pany-bar-top, 0);
		right: 0;
		left: 0;
		z-index: 3;
		border-bottom: 1px solid var(--pany-line);
		box-shadow: none;
	}

	.pany-header.is-menu-open .pany-header__search {
		visibility: hidden;
	}

	.pany-menu {
		position: fixed;
		top: var(--pany-menu-top, 64px);
		right: 0;
		bottom: 0;
		left: 0;
		z-index: 1;
		background: #fff;
		visibility: hidden;
		opacity: 0;
		transition: opacity var(--pany-speed), visibility 0s var(--pany-speed);
	}

	.pany-header.is-menu-open .pany-menu {
		visibility: visible;
		opacity: 1;
		transition: opacity var(--pany-speed);
	}

	.pany-menu__scroll {
		height: 100%;
		padding: 16px 0 calc(var(--pany-actions-h, 88px) + 16px);
		overflow-y: auto;
		overscroll-behavior: contain;
		transition: visibility 0s;
	}

	/* Niveau 1 masqué une fois le niveau 2 arrivé par-dessus (plus de focus ni de lecture derrière) */
	.pany-menu__scroll.has-open-child {
		overflow: hidden;
		visibility: hidden;
		transition: visibility 0s var(--pany-speed);
	}

	/* Recherche : le champ seul (suggestions réservées au desktop) */
	.pany-search {
		padding: 0 16px 8px;
	}

	.pany-search__extras,
	.pany-overlay {
		display: none;
	}

	.pany-search .searchform-label {
		position: absolute;
		width: 1px;
		height: 1px;
		overflow: hidden;
		clip: rect(0 0 0 0);
		white-space: nowrap;
	}

	/* Rubriques */
	.pany-nav__link {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 12px;
		width: 100%;
		min-height: 52px;
		padding: 12px 20px;
		border-bottom: 1px solid var(--pany-line);
		font-family: var(--pany-title);
		font-size: 17px;
		font-weight: 600;
	}

	.pany-nav__level-1 > li > .pany-nav__link {
		font-size: 18px;
		font-weight: 700;
	}

	.pany-nav__link .pany-icon {
		width: 20px;
		height: 20px;
	}

	.pany-header .pany-nav__item--intro > .pany-nav__link {
		background: var(--pany-cream);
	}

	/* Niveaux 2 et 3 : glissent par-dessus le niveau précédent, sous la barre d'action */
	.pany-nav__sub {
		position: absolute;
		top: 0;
		right: 0;
		bottom: 0;
		left: 0;
		z-index: 1;
		padding-bottom: calc(var(--pany-actions-h, 88px) + 16px);
		overflow-y: auto;
		overscroll-behavior: contain;
		background: #fff;
		visibility: hidden;
		transform: translateX(100%);
		transition: transform var(--pany-speed), visibility 0s var(--pany-speed);
	}

	.pany-nav__sub.is-open {
		visibility: visible;
		transform: none;
		transition: transform var(--pany-speed);
	}

	.pany-nav__sub.is-open.has-open-child {
		overflow: hidden;
		visibility: hidden;
		transition: transform var(--pany-speed), visibility 0s var(--pany-speed);
	}

	.pany-nav__back-button {
		display: flex;
		align-items: center;
		gap: 12px;
		width: 100%;
		min-height: 56px;
		padding: 12px 20px;
		border-bottom: 1px solid var(--pany-line);
		font-family: var(--pany-title);
		font-size: 19px;
		font-weight: 700;
	}

	.pany-nav__back-button .pany-icon {
		width: 20px;
		height: 20px;
	}

	/* Bloc compte */
	.pany-account {
		margin: 24px 16px 0;
		overflow: hidden;
		border-radius: 20px;
		background: var(--pany-cream);
	}

	.pany-account > li + li {
		border-top: 1px solid rgba(20, 20, 15, 0.08);
	}

	.pany-account__link {
		display: flex;
		align-items: center;
		gap: 12px;
		min-height: 56px;
		padding: 12px 20px;
	}

	.pany-account__label {
		font-family: var(--pany-title);
		font-size: 17px;
		font-weight: 700;
	}

	.pany-account__description {
		margin-left: auto;
		color: var(--pany-muted);
		font-size: 14px;
		text-align: right;
	}

	/* Réseaux sociaux */
	.pany-social {
		display: flex;
		flex-wrap: wrap;
		gap: 12px;
		padding: 24px 16px 0;
	}

	.pany-social__link {
		background: var(--pany-search);
	}

	.pany-social__link .pany-icon {
		width: 20px;
		height: 20px;
	}

	/* Liens secondaires */
	.pany-utility__list {
		display: flex;
		flex-wrap: wrap;
		gap: 0 20px;
		padding: 12px 16px 0;
	}

	.pany-header .pany-utility__link {
		display: inline-flex;
		align-items: center;
		min-height: 44px;
		color: var(--pany-muted);
		font-size: 14px;
		text-decoration: underline;
	}

	/* Barre d'action collée en bas, hors de la zone qui défile */
	.pany-actions {
		position: fixed;
		right: 0;
		bottom: 0;
		left: 0;
		z-index: 2;
		display: flex;
		gap: 12px;
		padding: 12px 16px calc(12px + env(safe-area-inset-bottom, 0px));
		border-top: 1px solid var(--pany-line);
		background: #fff;
		visibility: hidden;
		opacity: 0;
		transition: opacity var(--pany-speed), visibility 0s var(--pany-speed);
	}

	.pany-header.is-menu-open .pany-actions {
		visibility: visible;
		opacity: 1;
		transition: opacity var(--pany-speed);
	}

	.pany-actions > li {
		flex: 1 1 0;
		min-width: 0;
	}

	.pany-actions__link {
		padding: 0 12px;
		font-size: 14px;
	}

	.pany-actions__link span {
		overflow: hidden;
		text-overflow: ellipsis;
	}
}

/* Desktop (>= 1180px) ------------------------------------------------------ */

@media (min-width: 1180px) {
	.pany-header .pany-hide-desktop {
		display: none !important;
	}

	/* Bandeau du haut (44px) au-dessus de la barre en pilule */
	.pany-header {
		padding: 44px 20px 0;
	}

	.pany-header__bar {
		position: relative;
		z-index: 1;
		gap: 8px;
		max-width: 1440px;
		min-height: 72px;
		margin: 0 auto;
		padding: 12px 12px 12px 24px;
		border-radius: 999px;
		box-shadow: 0 6px 24px rgba(20, 20, 15, 0.08);
	}

	.pany-header .pany-header__burger {
		display: none;
	}

	.pany-header__logo {
		order: 1;
		margin-right: 8px;
	}

	.pany-header__logo img {
		height: 48px;
	}

	/* Le panneau mobile s'efface : ses blocs deviennent des éléments de la barre */
	.pany-menu,
	.pany-menu__scroll {
		display: contents;
		visibility: visible;
	}

	.pany-account,
	.pany-social,
	.pany-nav__back {
		display: none;
	}

	.pany-nav {
		flex: 1 1 auto;
		order: 2;
		min-width: 0;
	}

	.pany-nav__level-1 {
		display: flex;
		align-items: center;
		justify-content: space-evenly;
	}

	.pany-nav__level-1 > li {
		position: relative;
	}

	.pany-nav__level-1 > li > .pany-nav__link {
		display: flex;
		align-items: center;
		min-height: 44px;
		padding: 10px clamp(4px, 0.7vw, 14px);
		font-family: var(--pany-title);
		font-size: 16px;
		font-weight: 700;
		white-space: nowrap;
	}

	.pany-nav__level-1 > li > .pany-nav__link .pany-icon {
		display: none;
	}

	.pany-header .pany-nav__level-1 > li > .pany-nav__link:hover,
	.pany-header .pany-nav__level-1 > li.is-open > .pany-nav__link,
	.pany-header .pany-nav__level-1 > li > .pany-nav__link[aria-current="page"] {
		text-decoration: underline;
		text-decoration-thickness: 2px;
		text-underline-offset: 6px;
	}

	/* Sous-menus déroulants */
	.pany-nav__sub {
		position: absolute;
		top: 100%;
		left: 0;
		z-index: 10;
		width: max-content;
		min-width: 260px;
		max-width: 340px;
		max-height: calc(100vh - 160px);
		padding: 8px;
		overflow-y: auto;
		border-radius: 18px;
		background: #fff;
		box-shadow: 0 12px 32px rgba(20, 20, 15, 0.14);
		visibility: hidden;
		opacity: 0;
		transform: translateY(6px);
		transition: opacity var(--pany-speed), transform var(--pany-speed), visibility 0s var(--pany-speed);
	}

	/* Dernières rubriques : sous-menu aligné à droite pour ne pas sortir de l'écran */
	.pany-nav__level-1 > li:nth-last-child(-n+2) > .pany-nav__sub {
		right: 0;
		left: auto;
	}

	/* Niveau 3 : en retrait sous son parent, dans la même liste déroulante */
	.pany-header .pany-nav__level-3 {
		position: static;
		width: auto;
		min-width: 0;
		max-width: none;
		max-height: none;
		padding: 0 0 0 12px;
		overflow: visible;
		border-radius: 0;
		background: none;
		box-shadow: none;
		visibility: inherit;
		opacity: 1;
		transform: none;
		transition: none;
	}

	.pany-nav__level-3 > .pany-nav__item--intro,
	.pany-nav__level-2 > .pany-nav__item--parent > .pany-nav__link .pany-icon {
		display: none;
	}

	.pany-nav__item--parent.is-open > .pany-nav__sub,
	.pany-header:not(.is-ready) .pany-nav__item--parent:hover > .pany-nav__sub,
	.pany-header:not(.is-ready) .pany-nav__item--parent:focus-within > .pany-nav__sub {
		visibility: visible;
		opacity: 1;
		transform: none;
		transition: opacity var(--pany-speed), transform var(--pany-speed);
	}

	.pany-nav__sub .pany-nav__link {
		display: flex;
		align-items: center;
		justify-content: space-between;
		gap: 12px;
		width: 100%;
		min-height: 44px;
		padding: 10px 14px;
		border-radius: 10px;
		font-family: var(--pany-title);
		font-size: 15px;
		font-weight: 600;
	}

	.pany-nav__sub .pany-nav__link:hover,
	.pany-nav__sub .pany-nav__link:focus-visible {
		background: var(--pany-search);
	}

	.pany-nav__sub .pany-nav__link .pany-icon {
		width: 18px;
		height: 18px;
	}

	.pany-nav__sub .pany-nav__item--intro > .pany-nav__link {
		margin-bottom: 4px;
		background: var(--pany-cream);
		font-weight: 700;
	}

	/* Loupe et compte : ronds de 42px dans une zone de 44px */
	.pany-header__search,
	.pany-header__account {
		padding: 1px;
		background-clip: content-box;
	}

	.pany-header__search {
		order: 3;
	}

	.pany-header .pany-header__account {
		display: inline-flex;
		order: 4;
		position: relative;
	}

	/* Connecté : pastille sur l'icône compte (classe de <body>, compatible avec le cache) */
	.logged-in .pany-header__account::after {
		content: "";
		position: absolute;
		top: 6px;
		right: 6px;
		width: 9px;
		height: 9px;
		border: 2px solid #fff;
		border-radius: 50%;
		background: var(--t-ok, #2e9e5b);
	}

	.pany-actions {
		display: flex;
		order: 5;
		gap: 8px;
		margin-left: 4px;
	}

	.pany-actions__link {
		padding: 0 20px;
	}

	/* Voile sur la page, sous la barre et le panneau de recherche ouvert */
	.pany-overlay {
		position: fixed;
		inset: 0;
		z-index: 0;
		background: rgba(20, 20, 15, 0.35);
		visibility: hidden;
		opacity: 0;
		transition: opacity var(--pany-speed), visibility 0s var(--pany-speed);
	}

	.pany-header.is-search-open .pany-overlay {
		visibility: visible;
		opacity: 1;
		transition: opacity var(--pany-speed);
	}

	/* Bouton flottant des cookies (Axeptio) : masqué tant que la recherche est ouverte, il restait au-dessus du voile */
	html.pany-search-open #axeptio_overlay {
		display: none;
	}

	/* Panneau de recherche sous la barre, sur toute sa largeur */
	.pany-header .pany-header__search[aria-expanded="true"] {
		background-color: var(--pany-yellow);
		color: var(--pany-accent-txt);
	}

	.pany-search {
		position: absolute;
		top: calc(100% + 16px);
		right: 0;
		left: 0;
		z-index: 20;
		padding: 40px 44px;
		border-radius: 32px;
		background: #fff;
		box-shadow: 0 16px 40px rgba(20, 20, 15, 0.14);
		visibility: hidden;
		opacity: 0;
		transform: translateY(6px);
		transition: opacity var(--pany-speed), transform var(--pany-speed), visibility 0s var(--pany-speed);
	}

	.pany-header.is-search-open .pany-search {
		visibility: visible;
		opacity: 1;
		transform: none;
		transition: opacity var(--pany-speed), transform var(--pany-speed);
	}

	/* Champ : loupe à gauche, bouton « Rechercher » à droite */
	.pany-search #search-form-vue input[type="search"] {
		height: 68px;
		padding: 0 180px 0 60px;
		border: 2px solid var(--pany-ink);
		background: var(--pany-search) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='26' height='26' viewBox='0 0 24 24' fill='none' stroke='%2314140F' stroke-width='2' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='m20 20-3.5-3.5'/%3E%3C/svg%3E") 22px center / 24px no-repeat;
		font-size: 18px;
	}

	/* Champ toujours bordé de noir : pas d'anneau de focus en plus */
	.pany-search #search-form-vue input[type="search"]:focus {
		outline: none;
	}

	.pany-search .searchform button[type="submit"] {
		top: 9px;
		right: 9px;
		left: auto;
		width: auto;
		height: 50px;
		padding: 0 28px;
		border-radius: 999px;
		background: var(--pany-ink);
		color: #fff;
		font-family: var(--pany-title);
		font-size: 17px;
		font-weight: 700;
	}

	/* Suggestions de la recherche : dans le panneau, à la place des colonnes pendant la frappe */
	.pany-search #search-form-vue #searchPanel {
		position: static;
		margin-top: 20px;
		padding: 0;
		border: 0;
		box-shadow: none;
	}

	.pany-search:has(#searchPanel.is-results, #searchPanel.is-loading) .pany-search__extras {
		display: none;
	}

	.pany-search__extras {
		display: grid;
		grid-template-columns: minmax(0, 2fr) minmax(0, 3fr);
		gap: 48px;
		margin-top: 36px;
	}

	.pany-search__title {
		margin: 0 0 16px;
		color: var(--pany-muted);
		font-family: var(--pany-text);
		font-size: 14px;
		font-weight: 700;
		letter-spacing: 0.08em;
		text-transform: uppercase;
	}

	.pany-search__chips {
		display: flex;
		flex-wrap: wrap;
		gap: 12px;
	}

	.pany-header .pany-search__chip {
		display: inline-flex;
		align-items: center;
		min-height: 48px;
		padding: 0 22px;
		border: 1.5px solid var(--t-line, #e6e2da);
		border-radius: 999px;
		font-family: var(--pany-title);
		font-size: 16px;
		font-weight: 600;
	}

	.pany-header .pany-search__chip:hover {
		border-color: var(--pany-ink);
		background: var(--pany-cream);
	}

	.pany-search__posts {
		display: grid;
		gap: 8px;
	}

	.pany-header .pany-search__post {
		display: flex;
		align-items: center;
		gap: 20px;
		min-height: 44px;
		padding: 10px 12px;
		border-radius: 18px;
	}

	.pany-header .pany-search__post:hover {
		background: var(--pany-search);
	}

	.pany-header .pany-search__thumb {
		flex: none;
		width: 104px;
		height: 80px;
		border-radius: 12px;
		object-fit: cover;
	}

	.pany-search__post-text {
		display: grid;
		flex: 1 1 auto;
		gap: 4px;
		min-width: 0;
	}

	.pany-header .pany-search__post-title {
		font-family: var(--pany-title);
		font-size: 18px;
		font-weight: 700;
	}

	.pany-header .pany-search__post-meta {
		color: var(--pany-muted);
		font-size: 15px;
	}

	/* Bandeau du haut, aligné à droite */
	.pany-utility {
		position: absolute;
		right: 28px;
		bottom: 100%;
	}

	.pany-utility__list {
		display: flex;
		gap: 0 20px;
	}

	.pany-header .pany-utility__link {
		display: inline-flex;
		align-items: center;
		min-height: 44px;
		color: var(--pany-muted);
		font-size: 13px;
		font-weight: 400;
	}

	.pany-header .pany-utility__link:hover {
		color: var(--pany-ink);
		text-decoration: underline;
	}
}

/* Desktop étroit : rubriques un peu plus petites pour garder de la marge */
@media (min-width: 1180px) and (max-width: 1279.98px) {
	.pany-nav__level-1 > li > .pany-nav__link {
		padding-right: 5px;
		padding-left: 5px;
		font-size: 15px;
	}

	.pany-actions__link {
		padding: 0 16px;
	}
}

/* Animations désactivées si demandé ------------------------------------------ */

@media (prefers-reduced-motion: reduce) {
	.pany-header,
	.pany-header * {
		transition: none !important;
	}
}
