.fsm-locations {
   display: flex;
   gap: 8px 16px;
   flex-wrap: wrap;
   margin-bottom: 20px;
   justify-content: space-between;
}
.fsm-location {
   padding: 4px 8px;
   border-radius: 4px;
}
.fsm-location:hover {
   text-decoration: underline;
   cursor: pointer;
}
.fsm-location.active {
   text-decoration: underline;
   outline: 2px solid transparent;
}
.fsm-location:focus-visible {
   outline: 2px solid #2271b1;
   outline-offset: 2px;
}


.fsm-page {
   display: flex;
   gap: 8px 16px;
   flex-wrap: wrap;
   padding: 16px;
   background-color: #f0f0f1;
   border-radius: 8px;
}
.fsm-page:not(.active) {
   display: none;
}
.fsm-page-link {
   color: inherit;
   text-decoration: none;
}
.fsm-page-link:hover {
   text-decoration: underline;
   cursor: pointer;
}
.fsm-page-link.active {
   text-decoration: underline;
}

.fsm-group {
   width: 100%;
}
.fsm-group-heading {
   font-weight: 600;
   margin-right: 8px;
}

/* Breadcrumbs Styles */
.fsm-breadcrumbs {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	list-style: none;
	margin: 0;
	padding: 0;
}

.fsm-breadcrumbs a {
	text-decoration: none;
	transition: opacity 0.2s ease;
}

.fsm-breadcrumbs a:hover {
	opacity: 0.8;
}

.fsm-breadcrumbs-current {
	font-weight: 500;
}

.fsm-breadcrumbs-separator {
	margin: 0 0.5em;
	opacity: 0.6;
}

/* Location Description Styles */
.fsm-location-description {
	line-height: 1.6;
}

.fsm-location-description p {
	margin-bottom: 1em;
}

.fsm-location-description p:last-child {
	margin-bottom: 0;
}

.fsm-location-description a {
	text-decoration: underline;
}

.fsm-location-description a:hover {
	opacity: 0.8;
}