/* ==========================================================================
   Fiches de détail Bridge – socle commun (maquette Travelik tour-details.html)
   Page claire, titres Bebas bleu nuit, encart latéral #EDF5F6, boutons sombres.
   fiche5 n'utilise que ce socle (galerie 1 + 2, sommaire en pilule).
   Règles propres à un modèle : fiche1.css, fiche2.css… fiche-itineraire.css.
   ========================================================================== */

body.single-fiche_sit.single { background-color: #FFFFFF; }

.bridge-fiche {
	--fd-title: #1C2D31;
	--fd-text: #5F6E72; /* #909DA1 de la maquette, assombri pour la lisibilité */
	--fd-light: #EDF5F6;
	--fd-line: #E3ECEE;
	--fd-primary: #0CB2DB;
	font-family: "Inter", sans-serif;
	font-size: 16px;
	line-height: 28px;
	color: var(--fd-text);
}
.bridge-fiche #detailfiche { padding: 70px 0 40px; }
.bridge-fiche #detailfiche > .uk-container { max-width: 1320px; padding: 0 24px; }
.bridge-fiche #bridge-fiche-stop-sticky { height: 60px; }

/* ---------- Titre (breadcumb-section) */
.bridge-fiche #chapeau { padding: 0; margin-bottom: 26px; }
.bridge-fiche .bridge-titre-fiche {
	margin: 0;
	font-family: "Bebas Neue", sans-serif;
	font-size: 54px;
	font-weight: 400;
	line-height: 1.1;
	letter-spacing: 0.01em;
	color: var(--fd-title);
}
.bridge-fiche .bridge-titre-fiche .blockSection { display: inline; }

/* Pictogrammes : pastilles rondes */
.bridge-fiche .pictogrammes { margin-top: 18px; }
.bridge-fiche .pictogrammes .blockSection { display: flex !important; flex-wrap: wrap; gap: 10px; } /* .uk-display-inline-block est en !important */
.bridge-fiche .pictogrammes .blockItem {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	background: var(--fd-light);
	border-radius: 50%;
}
.bridge-fiche .pictogrammes .blockItem .itemTextValue { display: flex; width: auto; }
.bridge-fiche .pictogrammes:not(.classements-labels) svg { width: 22px; height: 22px; fill: var(--fd-title); color: var(--fd-title);margin-left:0 }

/* Classements & labels (étoiles, labels…) : badges larges, gardés à leurs proportions dans une pilule */
.bridge-fiche .classements-labels { margin-top: 16px; }
.bridge-fiche .classements-labels .blockSection { display: flex !important; flex-wrap: wrap; gap: 10px; height: auto !important; margin-left: 0; }
.bridge-fiche .classements-labels .blockSection > * { width: auto; margin-top: 0 !important; padding-left: 0; }
.bridge-fiche .classements-labels .itemTextValue {
	display: inline-flex;
	align-items: center;
	height: auto !important; /* Bridge fige les pictogrammes à 30px */
	padding: 8px 16px;
	background: var(--fd-light);
	border-radius: 30px;
}
.bridge-fiche .classements-labels svg,
.bridge-fiche .classements-labels img {
	display: block;
	width: auto !important;
	height: 26px !important;
	max-width: none;
}
.bridge-fiche .classements-labels + .pictogrammes { margin-top: 12px; }

/* ---------- Galerie */
.bridge-fiche #galerie { border-radius: 20px; overflow: hidden; }
.bridge-fiche #galerie img { display: block; width: 100%; object-fit: cover; border-radius: 20px; transition: transform 0.6s; }
.bridge-fiche #galerie a { display: block; overflow: hidden; border-radius: 20px; }
.bridge-fiche #galerie a:hover img { transform: scale(1.04); }
/* fiche5 : 1 grande + 2 petites */
.bridge-fiche #galerie > .uk-grid > .uk-width-2-3 img { height: 440px; }
.bridge-fiche #galerie > .uk-grid > .uk-width-1-3 { gap: 20px; }
.bridge-fiche #galerie > .uk-grid > .uk-width-1-3 img { height: 210px; }
/* fiche2 : diaporama */
.bridge-fiche #galerie .uk-slideshow-items img { height: 100%; border-radius: 0; }
.bridge-fiche #galerie .uk-slidenav {
	display: flex !important;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	padding: 0;
	margin: 0 16px;
	color: #fff;
	background: var(--fd-title);
	border-radius: 50%;
	opacity: 1;
	transition: background-color 0.3s;
}
.bridge-fiche #galerie .uk-slidenav:hover { background: var(--fd-primary); }
.bridge-fiche #galerie .uk-slidenav svg { width: 9px; height: 16px; }

/* ---------- Contenu */
.bridge-fiche .descriptif { margin-bottom: 36px; font-size: 16px; line-height: 28px; color: var(--fd-text); }
.bridge-fiche .descriptif p:empty { display: none; }

.bridge-fiche .block-label,
.bridge-fiche .block-group-label {
	margin: 0 0 22px;
	font-family: "Bebas Neue", sans-serif;
	font-size: 32px;
	font-weight: 400;
	line-height: 1.2;
	color: var(--fd-title);
}
.bridge-fiche .block-label .itemIcon { margin-right: 6px; font-size: 0.75em; color: var(--fd-primary); }

/* Étiquettes (équipements, confort…) : puces à double chevron comme la maquette */
.bridge-fiche .custom-block .uk-tile.uk-tile-muted {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	margin: 0 10px 10px 0 !important;
	padding: 8px 18px !important;
	font-size: 15px;
	line-height: 22px;
	color: var(--fd-title);
	background: var(--fd-light);
	border-radius: 30px;
}
.bridge-fiche .custom-block .uk-tile.uk-tile-muted::before {
	content: "»";
	font-family: "Bebas Neue", sans-serif;
	font-size: 20px;
	line-height: 1;
	color: var(--fd-primary);
}

/* Tableaux (capacité, tarifs, horaires…) */
.bridge-fiche .uk-table {
	margin: 0;
	border: 1px solid var(--fd-line);
	border-collapse: separate;
	border-spacing: 0;
	border-radius: 16px;
	overflow: hidden;
}
.bridge-fiche .uk-table td,
.bridge-fiche .uk-table th {
	padding: 14px 22px;
	font-size: 15px;
	color: var(--fd-text);
	background: transparent; /* Bridge grise chaque cellule */
	border: 0;
	border-top: 1px solid var(--fd-line);
}
.bridge-fiche .uk-table tr:first-child > * { border-top: 0; }
.bridge-fiche .uk-table th { font-family: "Bebas Neue", sans-serif; font-size: 18px; font-weight: 400; color: var(--fd-title); background: var(--fd-light); }
.bridge-fiche .uk-table td:last-child:not(:first-child) { font-weight: 600; color: var(--fd-title); text-align: right; }
.bridge-fiche .uk-table tbody tr,
.bridge-fiche .uk-table-striped tbody tr:nth-of-type(odd) { background: #FFFFFF; } /* uk-table-striped grise une ligne sur deux */
.bridge-fiche .uk-table tbody tr:nth-child(even) { background: #F7FAFB; }

/* Séparateurs : simple filet */
.bridge-fiche .block-separator,
.bridge-fiche hr.uk-divider-icon {
	height: 1px;
	margin: 40px 0;
	background: var(--fd-line);
	background-image: none;
	border: 0;
}
.bridge-fiche hr.uk-divider-icon::before,
.bridge-fiche hr.uk-divider-icon::after { display: none; }

/* Galerie photos (bloc) */
.bridge-fiche .custom-block [uk-lightbox] img { border-radius: 14px; }

/* ---------- Sommaire */
/* fiche5 : barre horizontale en pilule */
.bridge-fiche .bridge-fiche-sommaire { margin-bottom: 40px; }
.bridge-fiche nav.sommaire.uk-navbar-container {
	padding: 6px;
	background: var(--fd-light) !important;
	border-radius: 60px;
}
.bridge-fiche nav.sommaire .uk-navbar-nav { gap: 4px; }
.bridge-fiche nav.sommaire .uk-navbar-nav > li > a {
	min-height: 0;
	padding: 10px 20px;
	font-family: "Bebas Neue", sans-serif;
	font-size: 18px;
	letter-spacing: 0.03em;
	text-transform: none;
	color: var(--fd-title);
	border-radius: 40px;
	transition: background-color 0.3s, color 0.3s;
}
.bridge-fiche nav.sommaire .uk-navbar-nav > li > a .itemIcon { margin-right: 6px; color: var(--fd-primary); }
.bridge-fiche nav.sommaire .uk-navbar-nav > li > a:hover { color: var(--fd-primary); }
.bridge-fiche nav.sommaire .uk-navbar-nav > li.uk-text-bold > a { color: #fff; background: var(--fd-primary); font-weight: 400; }
.bridge-fiche nav.sommaire .uk-navbar-nav > li.uk-text-bold > a .itemIcon { color: #fff; }
/* fiche2 : liste verticale dans un encart clair */
.bridge-fiche div.sommaire > .uk-nav {
	padding: 14px 24px;
	background: var(--fd-light);
	border-radius: 20px;
}
.bridge-fiche div.sommaire > .uk-nav > li > a {
	padding: 12px 0;
	font-family: "Bebas Neue", sans-serif;
	font-size: 19px;
	letter-spacing: 0.03em;
	color: var(--fd-title);
	transition: color 0.3s;
}
.bridge-fiche div.sommaire > .uk-nav > li > a:hover,
.bridge-fiche div.sommaire > .uk-nav > li.uk-text-bold > a { color: var(--fd-primary); font-weight: 400; }
.bridge-fiche div.sommaire > .uk-nav.uk-list-divider > li:nth-child(n+2) { margin-top: 0; padding-top: 0; border-top-color: #D3E0E3; }

/* ---------- Encart latéral (tour-sidebar-items « Tour Booking ») */
.bridge-fiche .bridge-fiche-aside .uk-card {
	overflow: hidden;
	color: var(--fd-text);
	background: var(--fd-light);
	border-radius: 20px;
	box-shadow: none;
}
.bridge-fiche .bridge-fiche-aside .uk-card-media-top .localisation { margin: 0; }
.bridge-fiche .bridge-fiche-aside .leaflet-container { height: 230px; }
.bridge-fiche .bridge-fiche-aside .uk-card-body { padding: 32px 30px 18px; text-align: left !important; } /* .uk-text-center est en !important */
.bridge-fiche .bridge-fiche-aside .uk-card-body > h3 {
	margin: 0 0 14px;
	font-family: "Bebas Neue", sans-serif;
	font-size: 26px;
	font-weight: 400 !important;
	line-height: 1.15;
	color: #122327;
}
.bridge-fiche .bridge-fiche-aside .coordonnees {
	position: relative;
	margin: 0 0 24px !important;
	padding: 0 0 22px 28px;
	font-size: 15px;
	line-height: 24px;
	color: var(--fd-text);
	border-bottom: 1px solid #D3E0E3;
}
.bridge-fiche .bridge-fiche-aside .coordonnees::before {
	content: "";
	position: absolute;
	top: 3px;
	left: 0;
	width: 18px;
	height: 18px;
	background: var(--fd-primary);
	mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M10 0C6.7 0 4 2.7 4 6c0 3.3 6 11 6 11s6-7.7 6-11c0-3.3-2.7-6-6-6Zm0 8a2 2 0 1 1 0-4 2 2 0 0 1 0 4Z'/%3E%3C/svg%3E") center / contain no-repeat;
	-webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M10 0C6.7 0 4 2.7 4 6c0 3.3 6 11 6 11s6-7.7 6-11c0-3.3-2.7-6-6-6Zm0 8a2 2 0 1 1 0-4 2 2 0 0 1 0 4Z'/%3E%3C/svg%3E") center / contain no-repeat;
}
.bridge-fiche .bridge-fiche-aside .coordonnees .uk-grid,
.bridge-fiche .bridge-fiche-aside .uk-card-body > .uk-grid { margin-left: 0; }
.bridge-fiche .bridge-fiche-aside .coordonnees .uk-grid > *,
.bridge-fiche .bridge-fiche-aside .uk-card-body > .uk-grid > * { padding-left: 0; }

/* Boutons (Book Now de la maquette) */
.bridge-fiche .bridge-fiche-aside .uk-button {
	display: block;
	width: 100%;
	margin: 0 0 12px;
	padding: 13px 24px;
	font-family: "Inter", sans-serif;
	font-size: 15px;
	font-weight: 500;
	line-height: 22px;
	text-transform: none;
	color: #fff;
	background: var(--fd-title);
	border: 0;
	border-radius: 10px;
	transition: background-color 0.3s;
}
.bridge-fiche .bridge-fiche-aside .uk-button:hover { background: var(--fd-primary); color: #fff; }
.bridge-fiche .bridge-fiche-aside .uk-button.site-s-web,
.bridge-fiche .bridge-fiche-aside .uk-button[class*="reservation"] { background: var(--fd-primary); }
.bridge-fiche .bridge-fiche-aside .uk-button.site-s-web:hover,
.bridge-fiche .bridge-fiche-aside .uk-button[class*="reservation"]:hover { background: var(--fd-title); }

/* ---------- « À voir autour » (listemini) dans une fiche : 2 colonnes lisibles */
.bridge-fiche .bridge-archive-container { padding: 0; max-width: none; }
.bridge-fiche .listemini .listeSIT { margin-left: -24px; }
.bridge-fiche .listemini .listeSIT > * { width: 50%; padding-left: 24px; }
.bridge-fiche .listemini .listeSIT > .uk-grid-margin { margin-top: 24px; }
.bridge-fiche .listemini .ficheproduit > .uk-card { padding: 24px 24px 26px; }
.bridge-fiche .listemini .ficheproduit .bridge-body { padding: 0 !important; }
.bridge-fiche .listemini .ficheproduit .titre-de-la-fiche h2 { font-size: 24px; }

@media (max-width: 959px) {
	.bridge-fiche #detailfiche { padding-top: 40px; }
	.bridge-fiche .bridge-titre-fiche { font-size: 40px; }
	.bridge-fiche #galerie > .uk-grid > .uk-width-2-3 img { height: 300px; }
	.bridge-fiche #galerie > .uk-grid > .uk-width-1-3 img { height: 140px; }
	.bridge-fiche .bridge-fiche-aside { margin-top: 40px; }
}
@media (max-width: 639px) {
	.bridge-fiche .listemini .listeSIT > * { width: 100%; }
	.bridge-fiche #galerie > .uk-grid > .uk-width-2-3 img { height: 230px; }
	.bridge-fiche #galerie > .uk-grid > .uk-width-1-3 img { height: 105px; }
}

/* ---------- Infos pratiques, carte et listes de valeurs (blocs de fiche7, sélecteurs communs) */
/* Infos pratiques (adresse, téléphone, site…) */
.bridge-fiche .bridge_infos_pratiques.uk-card {
	margin-bottom: 20px !important;
	padding: 26px 30px;
	background: var(--fd-light);
	border-radius: 20px;
	box-shadow: none;
}
.bridge-fiche .bridge_infos_pratiques .uk-description-list { margin: 0; }
.bridge-fiche .bridge_infos_pratiques .uk-description-list > li {
	margin: 0;
	padding: 14px 0;
	font-size: 15px;
	line-height: 24px;
	color: var(--fd-text);
	border-top: 1px solid #D3E0E3;
}
.bridge-fiche .bridge_infos_pratiques .uk-description-list > li:first-child { padding-top: 0; border-top: 0; }
.bridge-fiche .bridge_infos_pratiques .uk-description-list > li:last-child { padding-bottom: 0; }
/* l'adresse a déjà son icône ici : pas de pastille ajoutée */
.bridge-fiche .bridge_infos_pratiques .coordonnees { margin: 0 !important; padding: 0 0 14px; border-bottom: 0; }
.bridge-fiche .bridge_infos_pratiques .coordonnees::before { display: none; }
.bridge-fiche .bridge_infos_pratiques .uk-flex { gap: 14px; justify-content: flex-start; }
.bridge-fiche .bridge_infos_pratiques .bridge-icon {
	display: flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 36px;
	width: 36px;
	height: 36px;
	color: #fff;
	background: var(--fd-primary);
	border-radius: 50%;
}
.bridge-fiche .bridge_infos_pratiques .bridge-icon i,
.bridge-fiche .bridge_infos_pratiques .bridge-icon svg {
	width: 16px !important;
	height: 16px;
	font-size: 16px;
	color: #fff;
	fill: currentColor;
}
.bridge-fiche .bridge_infos_pratiques .uk-width-expand { align-self: center; }
.bridge-fiche .bridge_infos_pratiques .uk-grid { margin-left: 0; }
.bridge-fiche .bridge_infos_pratiques .uk-grid > * { padding-left: 0; }
.bridge-fiche .bridge_infos_pratiques a {
	font-weight: 500;
	color: var(--fd-title);
	text-decoration: none;
	transition: color 0.3s;
}
.bridge-fiche .bridge_infos_pratiques a:hover { color: var(--fd-primary); }
.bridge-fiche .bridge_infos_pratiques a.phone[role="button"] { color: var(--fd-primary); cursor: pointer; }

/* Carte de localisation sous les infos */
.bridge-fiche .bridge-fiche-aside > .localisation {
	overflow: hidden;
	border-radius: 20px;
}
.bridge-fiche .bridge-fiche-aside > .localisation .leaflet-container { height: 320px; }

/* Listes de valeurs courtes (spécialités culinaires…) : chevrons de la maquette */
.bridge-fiche .custom-block .blockSection:has(> .itemTextValue + .itemTextValue) { margin-left: 0; }
.bridge-fiche .custom-block .blockSection:has(> .itemTextValue + .itemTextValue) > .itemTextValue {
	position: relative;
	margin-top: 0 !important;
	padding: 0 0 12px 26px;
	font-size: 16px;
	line-height: 26px;
	color: var(--fd-title);
}
.bridge-fiche .custom-block .blockSection:has(> .itemTextValue + .itemTextValue) > .itemTextValue::before {
	content: "»";
	position: absolute;
	top: 0;
	left: 4px;
	font-family: "Bebas Neue", sans-serif;
	font-size: 22px;
	line-height: 26px;
	color: var(--fd-primary);
}
