/**
 * Pinyon Script — chargement direct (ne dépend pas des presets globaux / theme.json dans le navigateur).
 */
@font-face {
	font-family: "Pinyon Script";
	font-style: normal;
	font-weight: 400;
	font-display: swap;
	src: url("../fonts/pinyon-script/PinyonScript-Regular.woff2") format("woff2");
}

/**
 * Imbue 36pt Medium — fichier local (WOFF2), pour le mot « MOTEL » (poids 500).
 */
@font-face {
	font-family: "Imbue";
	font-style: normal;
	font-weight: 500;
	font-display: swap;
	src: url("../fonts/Imbue/Imbue-36pt-Medium.woff2") format("woff2");
}

/* Force la largeur du contenu principal à 1280px — override toute contrainte 720px */
main .wp-block-post-content,
main .entry-content {
	max-width: 1280px !important;
	margin-left: auto !important;
	margin-right: auto !important;
}

/* Logo plus grand sur mobile uniquement (réduction largeur navigateur) */
@media (max-width: 768px) {
	img.custom-logo {
		transform: scale(1.35);
		transform-origin: center;
	}
}

/* Clippe l'overflow du header pour permettre l'extension du bouton tel jusqu'au bord droit sur toutes les pages */
header {
	overflow-x: hidden;
}

/*
 * Menu mobile — zone cliquable au-dessus des éléments du header (téléphone, etc.).
 */
@media (max-width: 781px) {
	.wp-block-navigation {
		position: relative;
		z-index: 500;
		isolation: isolate;
		flex-shrink: 0;
	}

	.wp-block-navigation__responsive-container-open {
		position: relative;
		z-index: 501;
		display: inline-flex !important;
		align-items: center;
		justify-content: center;
		box-sizing: border-box;
		min-width: 44px;
		min-height: 44px;
		width: 48px;
		height: 48px;
		padding: 12px;
		margin: 0;
		border: none;
		background: transparent;
		pointer-events: auto !important;
		touch-action: manipulation;
		-webkit-tap-highlight-color: rgba(0, 0, 0, 0.1);
		cursor: pointer;
	}

	.wp-block-navigation__responsive-container-open svg {
		width: 24px;
		height: 24px;
		flex-shrink: 0;
		display: block;
	}

	.blk-btn-tel-header {
		position: relative;
		z-index: 1;
	}
}

/*
 * Overlay menu ouvert — ancré au viewport (pas au header / layout contraint).
 * Le header utilise justifyContent:right → items-justified-right qui poussait
 * les liens hors écran une fois l'overlay porté dans <body>.
 */
.wp-block-navigation__responsive-container.is-menu-open {
	--navigation-layout-direction: column;
	--navigation-layout-justify: flex-start;
	--navigation-layout-align: flex-start;
	--navigation-layout-justification-setting: flex-start;

	display: flex !important;
	flex-direction: column !important;
	position: fixed !important;
	top: 0 !important;
	left: 0 !important;
	right: 0 !important;
	bottom: 0 !important;
	inset: 0 !important;
	width: 100vw !important;
	max-width: 100vw !important;
	min-width: 0 !important;
	height: 100dvh !important;
	max-height: 100dvh !important;
	margin: 0 !important;
	padding: 1rem !important;
	box-sizing: border-box !important;
	transform: none !important;
	translate: none !important;
	z-index: 1000000 !important;
	overflow-x: hidden !important;
	overflow-y: auto;
	-webkit-overflow-scrolling: touch;
	background-color: var(--wp--preset--color--white, #fff);
	visibility: visible !important;
	opacity: 1 !important;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-close,
.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-dialog {
	position: relative !important;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
	transform: none !important;
	box-sizing: border-box !important;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	justify-content: flex-start !important;
	width: 100% !important;
	max-width: 100% !important;
	padding-top: 2.5rem !important;
	padding-left: 0 !important;
	padding-right: 0 !important;
	box-sizing: border-box !important;
	overflow: visible !important;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container,
.wp-block-navigation__responsive-container.is-menu-open .wp-block-page-list {
	display: flex !important;
	flex-direction: column !important;
	align-items: stretch !important;
	justify-content: flex-start !important;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 !important;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item {
	width: 100% !important;
	text-align: left !important;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content {
	display: block !important;
	width: 100% !important;
}

.wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-close {
	position: absolute !important;
	top: 1rem !important;
	right: 1rem !important;
	left: auto !important;
	margin: 0 !important;
}

html.has-modal-open {
	overflow: hidden;
}

html.has-modal-open body {
	overflow: hidden;
	position: fixed;
	width: 100%;
}

.blk-btn-tel-header {
	position: relative;
}

.blk-btn-tel-header::after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: transparent;
	opacity: 1;
	pointer-events: none;
	padding-right: 9999px;
	margin-right: -9999px;
}

.blk-btn-tel-header .wp-block-buttons, .blk-btn-tel-header .adnbsl-icon { position: relative; z-index: 1; }

#footer a {text-decoration: none;}

/* Force Konnect — remplace Roboto (bibliothèque de polices WordPress / styles globaux) */
body,
.wp-block-heading,
h1, h2, h3, h4, h5, h6,
.wp-block-post-title,
.wp-block-query-title,
.wp-block-site-title,
.wp-block-paragraph {
	font-family: "Konnect", sans-serif !important;
}

/* Exception : préserver Serif où il est explicitement choisi */
.has-serif-font-family {
	font-family: var(--wp--preset--font-family--serif) !important;
}

/* Pinyon Script — nom explicite + spécificité sur les titres (var() peut être vide si le preset n’est pas chargé) */
h1 .has-pinyon-script-font-family,
h2 .has-pinyon-script-font-family,
h3 .has-pinyon-script-font-family,
.wp-block-heading.has-konnect-font-family .has-pinyon-script-font-family,
.wp-block-heading .has-pinyon-script-font-family,
.has-pinyon-script-font-family {
	font-family: "Pinyon Script", cursive !important;
}

/*
 * « MOTEL » — Imbue 36pt Medium (WOFF2) : spécificité élevée + * pour battre h1 { Konnect !important } hérité
 * si le HTML n’a pas de .__glyph (texte seul dans .__char).
 */
h1.wp-block-heading .adnbsl-motel-letters,
h1.wp-block-heading .adnbsl-motel-letters * {
	font-family: "Imbue", "Palatino Linotype", "Book Antiqua", Palatino, Georgia, serif !important;
	font-style: normal !important;
	font-weight: 500 !important;
	-webkit-font-smoothing: antialiased;
}

.wp-block-heading .adnbsl-motel-letters,
.adnbsl-motel-letters {
	display: inline-flex;
	flex-wrap: wrap;
	gap: 0.08rem;
	align-items: stretch;
	justify-content: center;
	vertical-align: middle;
	margin-left: 0.1em;
	font-size: 0.8em;
}

.wp-block-heading .adnbsl-motel-letters__char,
.adnbsl-motel-letters__char {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: min-content;
	padding: 0.16em 0.12em;
	box-sizing: border-box;
	background-color: var(--wp--preset--color--primary, #0f172a) !important;
	color: #fff !important;
	font-size: 1em;
	line-height: 1;
	border-radius: 2px;
	text-transform: uppercase !important;
}

.wp-block-heading .adnbsl-motel-letters__glyph,
.adnbsl-motel-letters__glyph {
	display: inline-block;
	font-size: 1em;
	line-height: 1;
	color: #fff !important;
	letter-spacing: 0.03em;
	text-transform: uppercase !important;
	/* Condensé sur le glyphe seulement (pas le fond) */
	transform: scaleX(0.76);
	transform-origin: center center;
}

/* Blocs avec bordure : supprime la marge externe (blockGap / layout constrained).
   WordPress ajoute margin-block-start/end aux blocs enfants ; une bordure rend cet espace visible. */
.wp-block-group[style*="border-width"],
.wp-block-group[style*="border-top-width"],
.wp-block-group[style*="border-right-width"],
.wp-block-group[style*="border-bottom-width"],
.wp-block-group[style*="border-left-width"] {
	margin: 0 !important;
}