/*
 * Bouton « Demande de soumission » dans l'en-tête (thème enfant argenta-child).
 * Rouge du site : #ed3124 (voir CSS additionnel du Customizer).
 */

#masthead .pg-quote {
	float: left;
	position: relative;
	margin-left: 24px;
	line-height: inherit; /* 90px / 66px (en-tête fixe) : centre le bouton verticalement */
}

/* ---- Bouton ---- */
#masthead .pg-quote .pg-quote-toggle {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	vertical-align: middle;
	margin: 0;
	padding: 13px 18px;
	border: 0;
	border-radius: 4px;
	background: #ed3124;
	color: #fff;
	font-family: inherit;
	font-size: 13px;
	font-weight: 700;
	line-height: 1;
	letter-spacing: .02em;
	text-transform: uppercase;
	white-space: nowrap;
	cursor: pointer;
	box-shadow: 0 2px 6px rgba(0, 0, 0, .15);
	-webkit-transition: background-color .15s ease-in-out;
	transition: background-color .15s ease-in-out;
}

#masthead .pg-quote .pg-quote-toggle:hover,
#masthead .pg-quote .pg-quote-toggle:focus-visible,
#masthead .pg-quote.is-open .pg-quote-toggle {
	background: #d4261a;
}

#masthead .pg-quote .pg-quote-toggle:focus-visible {
	outline: 2px solid #fff;
	outline-offset: 2px;
}

#masthead .pg-quote .pg-quote-label-short {
	display: none;
}

#masthead .pg-quote .pg-quote-chevron {
	fill: none;
	stroke: currentColor;
	stroke-width: 2.5;
	stroke-linecap: round;
	stroke-linejoin: round;
	-webkit-transition: transform .2s ease-in-out;
	transition: transform .2s ease-in-out;
}

#masthead .pg-quote.is-open .pg-quote-chevron {
	transform: rotate(180deg);
}

/* ---- Menu déroulant ---- */
#masthead .pg-quote .pg-quote-menu {
	position: absolute;
	top: calc(50% + 32px);
	right: 0;
	z-index: 1000; /* au-dessus du slider et du contenu (l'en-tête est déjà à z-index 50) */
	min-width: 240px;
	margin: 0;
	padding: 6px 0;
	list-style: none;
	background: #fff;
	border-radius: 6px;
	box-shadow: 0 10px 30px rgba(0, 0, 0, .18);
	line-height: 1.3;
	text-align: left;
	opacity: 0;
	visibility: hidden;
	transform: translateY(8px);
	-webkit-transition: opacity .18s ease-in-out, visibility .18s ease-in-out, transform .18s ease-in-out;
	transition: opacity .18s ease-in-out, visibility .18s ease-in-out, transform .18s ease-in-out;
}

/* Petite flèche sous le bouton */
#masthead .pg-quote .pg-quote-menu:before {
	content: '';
	position: absolute;
	top: -7px;
	right: 26px;
	border-right: 7px solid transparent;
	border-bottom: 7px solid #fff;
	border-left: 7px solid transparent;
}

/* Zone tampon : garde le menu ouvert quand la souris descend du bouton au menu */
#masthead .pg-quote .pg-quote-menu:after {
	content: '';
	position: absolute;
	top: -24px;
	right: 0;
	left: 0;
	height: 24px;
}

#masthead .pg-quote.is-open .pg-quote-menu {
	opacity: 1;
	visibility: visible;
	transform: translateY(0);
}

/* Ouverture au survol uniquement sur les appareils avec souris */
@media (hover: hover) and (pointer: fine) {
	#masthead .pg-quote:hover .pg-quote-menu,
	#masthead .pg-quote:focus-within .pg-quote-menu {
		opacity: 1;
		visibility: visible;
		transform: translateY(0);
	}

	#masthead .pg-quote:hover .pg-quote-chevron {
		transform: rotate(180deg);
	}
}

#masthead .pg-quote .pg-quote-menu li {
	margin: 0;
	padding: 0;
	border-bottom: 1px solid #f0f0f0;
}

#masthead .pg-quote .pg-quote-menu li:last-child {
	border-bottom: 0;
}

#masthead .pg-quote .pg-quote-menu a {
	display: flex;
	align-items: center;
	gap: 16px;
	padding: 13px 22px;
	color: #1a1a1a;
	font-size: 14px;
	font-weight: 600;
	text-transform: none;
	text-decoration: none;
	opacity: 1; /* annule l'effet d'opacité du thème sur les liens de l'en-tête */
	-webkit-transition: background-color .15s ease-in-out, color .15s ease-in-out;
	transition: background-color .15s ease-in-out, color .15s ease-in-out;
}

#masthead .pg-quote .pg-quote-menu a:hover,
#masthead .pg-quote .pg-quote-menu a:focus-visible {
	background: #ed3124;
	color: #fff;
	opacity: 1;
	outline: none;
}

#masthead .pg-quote .pg-quote-icon {
	flex: 0 0 auto;
	fill: none;
	stroke: #ed3124;
	stroke-width: 1.6;
	stroke-linecap: round;
	stroke-linejoin: round;
	-webkit-transition: stroke .15s ease-in-out;
	transition: stroke .15s ease-in-out;
}

#masthead .pg-quote .pg-quote-menu a:hover .pg-quote-icon,
#masthead .pg-quote .pg-quote-menu a:focus-visible .pg-quote-icon {
	stroke: #fff;
}

/* ---- Formulaires Contact Form 7 : choix Oui / Non (.pg-radio-field) sur une ligne ---- */
.pg-radio-field {
	margin-bottom: 20px;
}

.pg-radio-field .wpcf7-radio {
	display: flex;
	gap: 28px;
	margin-top: 8px;
}

.pg-radio-field .wpcf7-list-item {
	margin: 0;
}

.pg-radio-field .wpcf7-list-item label {
	display: inline-flex;
	flex-direction: row;
	align-items: center;
	gap: 8px;
	cursor: pointer;
}

.pg-radio-field .wpcf7-list-item input[type="radio"] {
	margin: 0;
	accent-color: #ed3124;
}

/* ---- Écrans moyens (1280–1439px) : espacement réduit pour garder 6 liens + bouton sur une ligne ---- */
@media screen and (min-width: 1280px) and (max-width: 1439px) {
	#masthead #mega-menu-wrap > ul > li > a {
		padding: 0 10px; /* thème : 0 18px */
	}

	#masthead .menu-other {
		margin-left: 6px; /* thème : 25px */
	}

	#masthead .pg-quote {
		margin-left: 12px;
	}

	#masthead.site-header .header-wrap {
		padding-right: 28px;
		padding-left: 28px; /* thème : 42px */
	}
}

/* ---- Écrans intermédiaires : libellé court + espacement réduit pour garder le menu sur une ligne ---- */
@media screen and (min-width: 769px) and (max-width: 1279px) {
	#masthead #mega-menu-wrap > ul > li > a {
		padding: 0 7px; /* thème : 0 18px */
		font-size: 11.5px;
	}

	#masthead.site-header .header-wrap {
		padding-right: 20px;
		padding-left: 20px; /* thème : 42px */
	}

	#masthead .site-branding .site-title img {
		max-height: 60px;
		width: auto;
	}

	#masthead .menu-other {
		margin-left: 8px; /* thème : 25px */
	}

	#masthead .pg-quote {
		margin-left: 10px;
	}

	#masthead .pg-quote .pg-quote-toggle {
		padding: 12px 14px;
	}

	#masthead .pg-quote .pg-quote-label-full {
		display: none;
	}

	#masthead .pg-quote .pg-quote-label-short {
		display: inline;
	}
}

/* Tablette à l'horizontale : on gagne encore un peu de place */
@media screen and (min-width: 769px) and (max-width: 1023px) {
	#masthead.site-header .header-wrap {
		padding-right: 20px;
		padding-left: 20px; /* thème : 42px */
	}

	#masthead #mega-menu-wrap > ul > li > a {
		padding: 0 6px;
	}
}

/* ---- Tablette / téléphone (menu mobile du thème actif sous 769px) ---- */
@media screen and (max-width: 768px) {
	#masthead .pg-quote {
		margin-left: 0;
	}

	#masthead .pg-quote .pg-quote-toggle {
		min-height: 40px; /* cible tactile confortable */
		padding: 0 14px;
		font-size: 12px;
	}

	#masthead .pg-quote .pg-quote-label-full {
		display: none;
	}

	#masthead .pg-quote .pg-quote-label-short {
		display: inline;
	}

	#masthead .pg-quote .pg-quote-menu {
		top: calc(50% + 28px);
		min-width: 230px;
	}

	#masthead .pg-quote .pg-quote-menu a {
		padding: 15px 20px; /* cible tactile confortable */
	}
}

/* ---- Téléphone : logo un peu réduit pour garder logo + bouton + ☰ sur une ligne ---- */
@media screen and (max-width: 520px) {
	#masthead .site-branding .site-title img {
		max-height: 46px; /* thème : 86px */
		width: auto;
	}

	#masthead .pg-quote .pg-quote-toggle {
		gap: 6px;
		padding: 0 9px;
		font-size: 11px;
	}
}

/* Très petits téléphones (320–374px) */
@media screen and (max-width: 374px) {
	#masthead .site-branding .site-title img {
		max-height: 40px;
	}

	#masthead .pg-quote .pg-quote-chevron {
		display: none;
	}

	#masthead .hamburger-menu .btn-toggle {
		margin-left: 8px; /* thème : 15px */
	}
}
