/**
 * Villa Victoria — tableau de bord du hero mobile.
 *
 * Aucun sélecteur ne s'applique au-delà de 767 px. Le header et la barre de
 * navigation du site ne sont ni redessinés ni masqués.
 */
@media (max-width: 767px) {
	:root {
		--vv-home-navy: #0f1f34;
		--vv-home-mist: #f5f7fa;
		--vv-home-line: #dbe3ee;
		--vv-home-gold: #c39a6b;
		--vv-home-text: #5a6676;
	}

	/* Le thème Serava met #pxl-wapper / #pxl-main en overflow:hidden sous
	   1025 px : le geste vertical se perd dans ces blocs. clip rogne sans
	   créer de zone de défilement interne (même parade que Massages). */
	body.home #pxl-wapper,
	body.home #pxl-main,
	body.page-id-7829 #pxl-wapper,
	body.page-id-7829 #pxl-main {
		overflow: clip;
	}

	/* Carrousels Elementor / Serava : le doigt doit aussi pouvoir faire défiler la page. */
	body.home .swiper,
	body.page-id-7829 .swiper,
	body.home .elementor-main-swiper,
	body.page-id-7829 .elementor-main-swiper,
	body.home .pxl-swiper-container,
	body.page-id-7829 .pxl-swiper-container,
	body.home .swiper-container,
	body.page-id-7829 .swiper-container {
		touch-action: pan-x pan-y;
	}

	/* Le cercle « Me laisser surprendre » et le bouton « Composer » cèdent
	   leur place au tableau de bord, juste sous le chapô. */
	html.vv-home-app-on .elementor-7829 .elementor-element-c04fb0d,
	html.vv-home-app-on .elementor-7829 .elementor-element-82a698f {
		display: none !important;
	}

	.vv-home-app {
		position: relative;
		z-index: 4;
		display: block;
		width: 100%;
		margin: 14px 0 0;
		padding: 16px 12px 12px;
		border: 1px solid rgba(219, 227, 238, 0.9);
		border-radius: 22px;
		background: rgba(255, 255, 255, 0.98);
		box-shadow: none;
		filter: none;
		font-family: "Jost", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
		color: var(--vv-home-navy);
	}

	.vv-home-app[hidden] {
		display: none !important;
	}

	.vv-home-app *,
	.vv-home-app *::before,
	.vv-home-app *::after {
		box-sizing: border-box;
	}

	.vv-home-app__kicker {
		margin: 0 0 3px;
		color: var(--vv-home-gold);
		font-size: 10px;
		font-weight: 600;
		letter-spacing: 0.17em;
		text-transform: uppercase;
	}

	.vv-home-app__title {
		margin: 0 0 12px;
		color: var(--vv-home-navy);
		font-family: "Melodrama", "Jost", serif;
		font-size: 22px;
		font-weight: 500;
		line-height: 1.1;
		letter-spacing: 0;
		text-transform: none;
	}

	.vv-home-app__footer {
		display: flex;
		flex-wrap: wrap;
		align-items: flex-start;
		justify-content: flex-end;
		gap: 6px 12px;
		margin-top: 10px;
		padding: 0 2px;
	}

	.vv-home-app__footer:has(> .vv-home-app__resume[hidden]:only-child) {
		display: none;
	}

	.vv-home-app__resume {
		display: flex;
		flex-direction: column;
		align-items: flex-end;
		gap: 1px;
		margin: 0;
		padding: 0;
		border: 0;
		background: transparent;
		box-shadow: none;
		filter: none;
		color: var(--vv-home-navy);
		font-family: inherit;
		text-align: right;
		cursor: pointer;
	}

	.vv-home-app__resume[hidden] {
		display: none !important;
	}

	.vv-home-app__resume span {
		color: var(--vv-home-navy);
		font-size: 12px;
		font-weight: 600;
		letter-spacing: 0.01em;
		text-transform: none;
		white-space: nowrap;
	}

	.vv-home-app__resume strong {
		overflow: hidden;
		max-width: 180px;
		color: var(--vv-home-text);
		font-size: 12px;
		font-weight: 500;
		text-overflow: ellipsis;
		white-space: nowrap;
	}

	.vv-home-app__actions {
		display: grid;
		grid-template-columns: 1fr;
		gap: 8px;
	}

	.vv-home-app__action {
		display: grid;
		grid-template-columns: 34px minmax(0, 1fr);
		align-items: center;
		gap: 10px;
		min-height: 62px;
		padding: 10px 12px 10px 10px;
		border: 1px solid var(--vv-home-line);
		border-radius: 14px;
		background: #fff;
		color: var(--vv-home-navy);
		text-decoration: none !important;
		-webkit-tap-highlight-color: transparent;
	}

	.vv-home-app__action:active {
		background: var(--vv-home-mist);
	}

	.vv-home-app__action.is-primary {
		border-color: var(--vv-home-navy);
		background: var(--vv-home-navy);
		color: #fff;
	}

	.vv-home-app__action-icon {
		display: inline-flex;
		align-items: center;
		justify-content: center;
		width: 34px;
		height: 34px;
		border-radius: 10px;
		background: var(--vv-home-mist);
		color: var(--vv-home-navy);
	}

	.vv-home-app__action.is-primary .vv-home-app__action-icon {
		background: rgba(255, 255, 255, 0.13);
		color: #fff;
	}

	.vv-home-app__action-copy {
		display: flex;
		min-width: 0;
		flex-direction: column;
		gap: 2px;
		line-height: 1.2;
	}

	.vv-home-app__action-copy strong {
		font-size: 14px;
		font-weight: 600;
	}

	.vv-home-app__action-copy small {
		color: var(--vv-home-text);
		font-size: 12px;
		line-height: 1.3;
	}

	.vv-home-app__action.is-primary small {
		color: rgba(255, 255, 255, 0.7);
	}

	.vv-home-app__svg {
		display: block;
		width: 17px;
		height: 17px;
		flex: 0 0 auto;
	}

	@media (max-width: 359px) {
		.vv-home-app {
			padding-right: 10px;
			padding-left: 10px;
		}

		.vv-home-app__action {
			grid-template-columns: 30px minmax(0, 1fr);
			padding-right: 6px;
			padding-left: 8px;
		}
	}
}
