*{box-sizing: border-box;}
body {
	margin:0px;
	padding:0px;
	font-size:14px;
	color:#303030;
	font-family:"Montpellier";
  font-weight:400;
  min-width:900px;
	background:linear-gradient(214deg, rgba(0, 0, 0, 0.00) 34.25%, var(--pink, rgba(204, 7, 215, 0.20)) 67%), linear-gradient(77deg, rgba(118, 123, 189, 0.00) 74.32%, var(--Purple, #696FB9) 102.58%), radial-gradient(199.99% 81.37% at 59.79% 56.59%, #E3EEE8 0%, rgba(130, 136, 133, 0.00) 97.6%);
	background:white;
}

.displaynone {
	display:none;
}

img {
	display:block;
	max-width:100%;
	height:auto;
}

a {
	
}


h1, p.main-title {
	font-weight:400;
	font-size:34px;
	margin-top:0px;
}
h1 span.color, p.main-title span.color {
	font-weight:500;
	background: linear-gradient(90deg, #696FB9, #CC07D7);
	  -webkit-background-clip: text;   /* WebKit/Blink */
	  background-clip: text;           /* Firefox */
	  -webkit-text-fill-color: transparent; /* WebKit/Blink */
	  color: transparent;              /* Firefox */
}

h2 {
	font-size:30px;
	margin-bottom:10px;
}


.inner {
	padding:20px;
}

input[type="text"],
input[type="email"],
input[type="password"],
input[type="search"],
input[type="url"],
input[type="tel"],
input[type="number"],
textarea,
select,
.chosen-container-single .chosen-single {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background-color: white;
  border: 1px solid #E5E7EB;   /* garde le gabarit sans bord visible */
  border-radius: 10px;                 /* supprime l'arrondi iOS/Safari */
  box-shadow: none;
  outline: none; 
  padding:12px 20px;
  font-family:"Montpellier";
  color:#303030;
  font-size:16px;
  font-weight:400;
  margin:0px;
  max-width:300px;

}
input[type=number] {
  -moz-appearance: textfield;
}

input[type="text"],
input[type="email"],
input[type="password"],
input[type="search"],
input[type="url"],
input[type="tel"],
input[type="number"] {
	font-size:16px;
}

select {
	padding-right:30px;
	background:url("../images/dropdown.svg") center right 10px no-repeat white;
	cursor:pointer;
	max-width:300px;
}
.chosen-container {
	width:auto!important;
}

.chosen-container a {
	max-width:250px;
}

.fake-reset-button {
	background:url("../images/reset.svg") bottom center no-repeat;
	background-size:contain;
	font-size:0px;
	cursor:pointer;
	width:40px;
	height:50px;
}


.breadcrumb ol {
	list-style:none;
	display:flex;
	flex-wrap:wrap;
	padding: 0px;
}

.breadcrumb ol li:after {
	content:' > ';
}
.breadcrumb ol li:last-child:after {
	content:'';
}

.ajax-progress {
	position:fixed;
	background:url("../images/tube-spinner.svg") center center no-repeat rgba(255,255,255,0.9);
	background-size:280px auto;
	top:0px;
	left:0px;
	width:100%;
	height:100%;
}

button, 
input[type="submit"] {
	all: unset;
	padding:14px 20px;
	background:#ee7016;
	color:white;
	cursor:pointer;
	border-radius:10px;

}

input[type="submit"].visually-hidden {
	display:none;
}









/******* HEADER *******/

header {
	position:relative;
	background:url("../images/fond-header.jpg") center center no-repeat;
	background-size:cover;
	padding-bottom:30px;
}

header #logo-footer {
	position:absolute;
	top:20px;
	left:3%;
	z-index:3;
}
header #logo-footer a {
	display:block;
}

header .inner {
	position:relative;
	display:flex;
	align-items:center;
	padding : 132px 0px 0px 129px;
	margin-left:47%;
	transform:translateX(-50%);
}

header .inner:after {
	content:'';
	display:block;
	position:absolute;
	top:0px;
	left:0px;
	width:193px;
	height:191px;
	background:url("../images/hand.png") top left no-repeat;
	background-size:contain!important;
}

header .inner .region-header {
background:white;
max-width:500px;
padding:30px 60px 30px 75px
}

header .inner .region-header h1 {
	line-height:50px;
	font-family:'Marianne';
}

header .inner .region-header .menu--main-menu ul.menu {
	list-style:none;
	margin:0px;
	padding:0px;
	display:flex;
	justify-content:end;
	gap:4%;
}

header .inner .region-header .menu--main-menu ul.menu li a {
	color:inherit;
	text-decoration:none;
	font-weight:bold;
	transition:all 0.2s ease;
}

header .inner .region-header .menu--main-menu ul.menu li a.is-active,
header .inner .region-header .menu--main-menu ul.menu li a:hover {
	color:#CC07D7;
	text-decoration:underline;
}

header .logos-header {
	position:absolute;
	padding:20px;
}

header .logos-header img {
	height:80px;
	width:auto;
}

header .logos-header#logo-header {
	top:0px;
	left:0px;
}

header .logos-header#logo-ministere {
	top:0px;
	right:0px;
}


header .logos-header#logo-pays {
	right:0px;
	bottom:0px;
	
}








/******** PAGES *********/

main .inner {
	max-width:1400px;
	margin:auto;
}

.layout-content a {
	color:#ee7016;
}



/**** NODE EDITION ******/

.page-node-type-edition h1 {
	text-align:center;
	margin:20px 0px;
	color: #314092;
  font-weight: 600;
}


				/******** ACCUEIL / LIEUX  *********/

.vue-lieux  .view-header .entetesite {
	text-align:center;
	font-size:14px;
}
.vue-lieux  .view-header h1 {
	font-weight:400;
	font-size:50px;
	margin-top:0px;
}

.vue-lieux  .view-header h1 span {
	font-weight:500;
	background: linear-gradient(90deg, #696FB9, #CC07D7);
	  -webkit-background-clip: text;   /* WebKit/Blink */
	  background-clip: text;           /* Firefox */
	  -webkit-text-fill-color: transparent; /* WebKit/Blink */
	  color: transparent;              /* Firefox */
}

.view-filters .form-item-from-me-value,
.view-filters .proximity-origin,
.view-filters .form-item-from-adress-value,
.view-filters .form-item-from-adress-source-configuration-origin-address label,
.view-filters .fieldset-wrapper .description,
.view-filters .proximity-filter-summary,
.view-filters [id*="edit-activite-date-wrapper"] > fieldset > legend,
.view-filters [id*="edit-activite-date-wrapper"] .form-item-activite-date-min,
.view-filters [id*="edit-activite-date-wrapper"] .form-item-activite-date-max {

	display:none;
}


.view-filters .form--inline {
	display:flex;
	flex-wrap:wrap;
	gap:20px;
	align-items: center;
}

.view-filters .bef--secondary {

}


.view-filters .bef-exposed-form .form--inline > .form-item, 
.view-filters .bef-exposed-form .form--inline .js-form-wrapper > .form-item {
	float:none;
	position:relative;
}
.view-filters .form-item-combine {
	position:relative;
}

.view-filters .form-item-combine label {
	position:absolute;
	left:20px;
	top:50%;
	transform:translateY(-50%);
}
.view-filters .form-item-combine input{
	 width:100%;
	 max-width:500px;
	 padding:20px;
	 padding-left:140px;
	 border-radius:10px;
}

.view-filters input.form-number {
width:100px;
}

.view-filters fieldset {
	display:block;
	border:0px;
	margin:0px;
	padding:0px;

}

.view-filters .bef--secondary summary {
	/* display:none; */
	cursor:pointer;
}

.view-filters .bef--secondary .details-wrapper {
	display:flex;
	flex-wrap: wrap;
	gap:20px;
  justify-content: flex-start;
  align-items: center;
}
.view-filters .bef--secondary .details-wrapper > div {
	flex: 0 0 auto;           /* ne grandit pas, ne rétrécit pas, largeur = contenu/width */
  min-width: auto;          /* pas nécessaire, mais explicite */
  box-sizing: border-box;
}
.view-filters  label {
	display:block;
}

.view-filters .form-type-checkbox label {
	display:inline;
}

.button--geolocate {
	position:relative;
		padding-left:40px;
}
.button--geolocate:before {
	position:absolute;
	top:50%;
	left:15px;
	content:'';
	display:inline-block;
	width:20px;
	height:20px;
	background: white; /* la couleur que tu veux appliquer */
  -webkit-mask: url("../images/locate-me.svg") no-repeat center / contain;
  mask: url("../images/locate-me.svg") no-repeat center / contain;
  transform:translateY(-50%);
}

.vue-lieux > .view-content {
	display:flex;
	gap:15px;
	flex-wrap:wrap;
	justify-content:center;
	margin-top:30px;
}

.view-content > .views-row {
	position:relative;
}

.vue-lieux  > .view-content > .views-row {
	position: relative;
  width: 320px;
  background: white;
  border: 1px solid #E5E7EB;
  border-radius: 10px;
  overflow: hidden;
  transform: scale(1);
  box-shadow: 0px 0px 0px 0px black;
  transition: all 0.2s ease;
}
.vue-lieux  > .view-content > .views-row:hover {
	z-index:1;
	box-shadow : 0px 0px 20px -10px black;
	transform:scale(1.04);
}

.vue-lieux  .image {
	position:relative;
  height: 200px;         /* ta hauteur fixe */
  width: 100%;           /* largeur variable */
  overflow: hidden;      /* cache ce qui dépasse */
}

.vue-lieux  .image > img {
  width: 100%;
  height: 100%;
  object-fit: cover;     /* comportement équivalent à background-size: cover */
  object-position: center; /* centré comme background-position: center */
  display: block;        /* supprime l'espace blanc du inline-img */
}

.vue-lieux .image .nouveau {
	position:absolute;
	padding:5px 30px;
	top: 20px;
  left: -32px;
	text-transform:uppercase;
	transform:rotate(-45deg);
	background:#ee7016;
	color:white;
}
.commune {
	font-family: 'Barlow', Arial;
	font-weight:bold;
	text-transform:uppercase;
	color:#314092;
	letter-spacing:1px;

}

.vue-lieux  > .view-content > .views-row h3 {
	font-size:20px;
	margin:10px 0px;
	line-height:25px;
}

.vue-lieux  > .view-content > .views-row h3 a {
	text-decoration:none;
}


.vue-lieux  > .view-content > .views-row .picto {
	padding:3px 0px 3px 35px;
	margin:10px 0px;
	background-repeat:no-repeat; 
	background-position:top left;
	background-size: auto 24px ;
}

.vue-lieux  > .view-content > .views-row .adresse {
	background-image:url("../images/pin.svg"); 
}

.vue-lieux  > .view-content > .views-row .dates {
	background-image:url("../images/date.svg"); 
}


.vue-lieux  > .view-content > .views-row .types {
	font-weight:bold;
	/* background-image:url("../images/cup.svg"); */
}


.vue-lieux  > .view-content > .views-row .distance {
  position: absolute;
  bottom: 10px;
  left: 10px;
  background: white;
  padding: 4px 10px;
  border-radius: 10px;
}

.vue-lieux  > .view-content > .views-row .thematiques {
	position:absolute;
	z-index:5;
	top:0px;
	right:0px;
	padding:10px;
}
.vue-lieux  > .view-content > .views-row  .thematiques .view-content {
	display:flex;
	gap:10px;
}

.vue-lieux  > .view-content > .views-row  .thematiques .views-row img {
	width:36px;
	height:auto;
}



a.card-link {
	position:absolute;
	top:0px;
	left:0px;
	width:100%;
	height:100%;
}



.pager ul {
display:flex;
padding-top:20px;
gap:10px;
list-style:none;
justify-content:center;
}
.pager ul .pager__item--first,
.pager ul .pager__item--last {
	display:none;
}

.pager ul li a {
	display:block;
	text-decoration:none;
	width:30px;
	height:30px;
	display:flex;
	justify-content:center;
	align-items:center;
	border-radius:15px;
	background:none;
	transition:all 0.2s ease;

}


.pager ul li.is-active a,
.pager ul li a:hover  {
	background:#ee7016 ;
	color:white;
}





/******* NODE LIEU ********/

.view-lieu.view-display-id-breadcrumb {
	margin:10px 0px;
}

.inner-lieu {
	display:flex;
	width:100%;
	gap:20px;
}

.inner-lieu .infoslieu {
	flex:1;
}

.inner-lieu .activites {
	flex:2;
}


.page-node-type-lieu .commune {
	font-size:22px;
}

.view-lieu.view-display-id-infoslieu .views-field-field-photo {
	position:relative;
	border-radius:10px;
	overflow:hidden;
}

.view-lieu.view-display-id-infoslieu .views-field-field-photo .credits-photo {
	position:absolute;
	left:0px;
	bottom:0px;
	width:100%;
	padding:4px 10px;
	color:white;
	background:rgba(0,0,0,0.6);
	font-size:10px;
	text-align:right;
	opacity:0.9;
}

.view-lieu.view-display-id-infoslieu  .views-field-field-adresse {
	margin-top:20px;
}




.views-field-field-emplacement {
	border-radius:10px;
	overflow:hidden;
}





.vue-activites > .view-content > .views-row {
	border: 1px solid #E5E7EB;
	padding:20px;
	border-radius:10px;
	margin-bottom:20px;
	display:flex;
	flex-wrap:wrap;
	align-items: start;
	gap:10px;
}


.vue-activites > .view-content > .views-row h3 {
	margin:0px;
}


.vue-activites > .view-content > .views-row > .views-field {
	display:flex;
	gap:10px;
}

.vue-activites > .view-content > .views-row > .views-field-field-titre-activite {
	padding-right:50px;
}

.vue-activites > .view-content > .views-row > .views-field.grey-item {
	background:#EEE;
	padding:10px 15px;
	border-radius:10px;
}

.vue-activites > .view-content > .views-row .views-field .views-label {
	font-weight:bold;
}


.vue-activites .view-display-id-thematiques {
	position:absolute;
	top:15px;
	right:15px;
}



.vue-activites .view-display-id-thematiques .view-content {
	display:flex;
	gap:15px;
}

.vue-activites .view-display-id-thematiques .view-content img {
	width:40px;
	height:auto;
}

.vue-activites .champ-vue-dates {
	width:100%;
}

.vue-activites .view-display-id-dates {
	background:#314092;
	color:white;
	padding:10px 20px;
	border-radius:10px;
}

.vue-activites .view-display-id-dates .item-list {
	display:flex;
	align-items:start;
	gap:5px;
	margin:10px 0px;
}

.vue-activites .view-display-id-dates .item-list h3 {
	font-size:16px;
	white-space:nowrap;
}

.vue-activites .view-display-id-dates .item-list ul {
	display:flex;
	flex-wrap:wrap;
	list-style:none;
	padding:0px;
	padding-top:2px;
	margin:0px;
}
.vue-activites .view-display-id-dates .item-list ul li::marker {display:none; content:'';}
.vue-activites .view-display-id-dates .item-list ul li {
	white-space:nowrap;
}
.vue-activites .view-display-id-dates .item-list ul li:not(:last-child) .field-content::after {
	content: "|";
	margin:0px 10px
}





















/***** FOOTER ******/
footer {
	color:white;
	background: #ee7016;
	font-size:12px;
}

footer .inner {
	display:flex;
	align-items:center;
	gap:40px;
	padding-top:36px;
	padding-bottom:0px;
}
footer #logo-footer {
	flex:0 auto;
	margin-left:6%;
}

footer #logo-footer img {
	height:100px;
	width:auto;
}

footer .region-footer {
	flex:1;
	display:flex;
	justify-content:space-between;
	margin-top:0px;
	border-top:1px solid white;
	padding-top:20px;
}

footer .inner ul.menu {
	list-style:none;
	margin:0px;
	padding:0px;
	display:flex;
	gap:20px;
	font-size:12px;
}

.view-footer.view-display-id-rs .view-content {
	display:flex;
	gap:20px;
}

footer .inner ul.menu a {
	color:white;
	font-weight:bold;
	text-decoration:none;
}
footer .inner ul.menu a:hover {
	text-decoration:underline;
}

footer .inner a svg {
	height:20px;
	width:auto;
}


.region-footer2 {
	padding:20px;
	padding-top:0px;
	text-align:center;

}









@media all and (max-width:700px) {


body {
	min-width:0px;
}
header .logos-header {
    padding: 10px;
}

header .logos-header img {
	height:50px;
}

header .inner {
	padding: 44px 0px 0px 43px;
}
header .inner .region-header {
    padding: 10px 10px 10px 15px;
}
header .inner:after {

    width: 63px;
    height: 100px;
}
.page-node-type-edition h1 {
    font-size:20px;

}

.inner-lieu {
 flex-direction:column;
}

.vue-activites .view-display-id-dates .item-list {
	flex-wrap:wrap;
}
.page-node-type-lieu .commune {
	font-size:18px;
}
h1, p.main-title {
    font-weight: 400;
    font-size: 22px;
    margin-top: 0px;
}






footer .region-footer {
    flex-direction: column;
    gap: 10px;
}


}








