::selection {
  background: black;
  color: white;
}

body {
	margin: 0;
	padding: 0;
	overflow-x: hidden;
	min-height: 100vh;
	min-height: 100dvh;
	font-family: ObjectSans;
	scroll-behavior: smooth;
	background: #f3f3f3;
	scroll-snap-type: y mandatory;
font-size: clamp(14px, 1.2vw, 22px);
}


body[template="home"] {
	background: black;
}

header {
	display: flex;
	background: black;
	font-family: Jaro;
	overflow: hidden;
	position: sticky;
	top: 0;
	z-index: 1;
}

header a {
	color: black;
	background: #f3f3f3;
	font-size: clamp(10px, 1.75vw, 22px);
	text-decoration: none;
}

header .logo img {
	height: 47px;
}

header .logo {
	display: flex;
}

header .logo a:last-child {
	flex: 1;
	padding: 15px 25px;
}

header .logo a:first-child {
	display: flex;
}

header .item {
	padding: 15px;
    line-height: 20px;
    margin-top: -3px;
    height: fit-content;
    min-width: fit-content;
}

.bloc-item {
	width: 37.1vw;
	display: flex;
}

header .bloc-item .item  {
	flex: 1;
	text-align: center;
}



header a:hover {
	cursor: pointer;
	text-decoration: underline;
}

header .bloc-ag {
	position: fixed;
    top: 47px;
    z-index: 50;
    left: var(--leftAg, 1vh);
    width:var(--widthAg, 1vh);
    background: #007e64;
    display: none;
}

header.actif .bloc-ag, nav.actif .bloc-ag {
	display: block;
}

.bloc-ag h2 {
	    background: #007e64;
    padding-left: 0.6em;
    border: none;
    position: relative;
    border-bottom: 1px solid black;
}

.bloc-ag button {
	color: black;
	border: none;
}

.bloc-ag .allevents {
	width: calc(100% - 30px);
	text-align: right;
	padding: 10px 15px;
	font-family: ObjectSans;
	display: block;
	font-size: clamp(18px, 1.2vw, 22px);
	padding-top: 7px;
	background: #d6d6d6;
	text-transform: none;
}



.triangle {
	display: flex;
	flex-wrap: wrap;
	flex-direction: row;
}

.triangle div {
	width: 12.5%;
	aspect-ratio: 1/1;
	height: 12.5%;
	overflow: hidden;
	position: relative;
	background: black;
}

.triangle div:after {
	content:'';
	position: absolute;
	width: 12.5vw;
	height: 12.5vw;
	top: 0;
	left: -6.25vw;
	background: white;
}

.triangle div:nth-child(n+9) {
	background: white;
}

.triangle div:nth-child(n+9):after {
	background: black !important;
}

[template="action"] .triangle div:after, [template="action"] .accordion-details, [template="action"] .triangle div:nth-child(n+9), [template="action"] .year {
	background: #0093d7;
}



[template="blog"] .triangle div:after, [template="blog"] .accordion-details, [template="blog"] .triangle div:nth-child(n+9), [template="blog"] .year {
	background: #6c63ab;
}


[template="event"] .triangle div:after, [template="event"] .accordion-details, [template="event"] .triangle div:nth-child(n+9), [template="event"] .year {
	background: #007e64;
}



.triangle div:nth-child(2n):nth-child(-n+8):after, .triangle div:nth-child(2n+1):nth-child(n+9):after {
	-webkit-transform:skew(45deg);
	-moz-transform:skew(45deg);
	-o-transform:skew(45deg);
	tranform:skew(45deg);
}

.triangle div:nth-child(2n+1):nth-child(-n+8):after, .triangle div:nth-child(2n):nth-child(n+9):after {
	-webkit-transform:skew(-45deg);
	-moz-transform:skew(-45deg);
	-o-transform:skew(-45deg);
	tranform:skew(-45deg);
}

.lookfor { 
padding: 0 !important;
}

.bar {
	display: flex;
}

.bar input {
	height: 50px;
	flex: 1;
	padding: 0px 15px;
	font-family: Jaro;
		font-size: clamp(10px, 1.75vw, 22px);

	background: transparent;
	border: none;
}

.bar button {
	border: none;
	background: transparent;
	padding: 0px 10px;
	cursor: pointer;
}


.bar button:hover svg {
	opacity: 1;
}

.bar svg {
	    filter: invert(1);
    padding-top: 6px;
    opacity: 0.3;
}



.bloc-ag .event img {
	    width: clamp(150px, 20vw, 550px) !important;
    height: clamp(150px, 20vw, 550px);
    object-fit: cover;
}

.bloc-ag .event {
	display: flex;
	background: white;
	column-gap: 15px;
	cursor: pointer;
	color: black;
	text-decoration: none;
}

.bloc-ag .event:not(:first-child) {
	border-top: 1px solid black;
}

.bloc-ag .event .info h3 {
	font-family: Jaro;
	margin: 5px 0;
font-size: clamp(20px, 2.2vw, 70px);	
line-height: 100%;	
		font-weight: normal;
}

.bloc-ag .event .info {
	font-family: ObjectSans;
	font-size: clamp(18px, 1.2vw, 22px);
	flex: 1;	
	padding: 20px;
}


.agenda .bloc-ag .event img {
	width: 150px;
	height: 150px;
}

.agenda .bloc-ag .event {
	padding: 20px;
}

.agenda .bloc-ag .event .info  {
	padding: 0px;
}



.bloc-ag .event .info p {
	margin: 0;
	max-width: 780px;
}



.bloc-ag h2 button {
	background: transparent;
	border: none;
		font-family: ObjectSans;
	position: absolute;
	right: 20px;
	font-size: clamp(30px, 2.7vw, 70px);
	cursor: pointer;
}

header button.mobile:not(.open) span:first-child, header button.mobile.open span:last-child {
	display: block;
}

header button.mobile:not(.open) span:last-child, header button.mobile.open span:first-child {
	display: none;
}

header button.mobile span:last-child {
	font-size: 27px;
	padding: 0px 3px;
}

.bloc-ag .event .actions {
	    background: #0093d7;
    width: fit-content;
    padding: 5px 10px;
    border-radius: 50px;
    margin-left: -10px;
    border: 1px solid black;
    margin-bottom: 10px;
    text-align: center;
    color: black;
    text-decoration: none;
}

.bloc-ag .event .description {
	max-width: 960px;
}

.bloc-ag.big {
	width: 100vw;
}


.bloc-ag.big .event h3 {
	font-size: clamp(30px, 2.7vw, 70px);
	line-height: 90%;
}


.bloc-ag.big figure {
    width: 50vw;
    margin: 0;
    height: 50vw;
}




.bloc-ag.big img {
    height: unset;
    object-fit: cover;
    max-width: 50vw;
    margin: auto;
    width: 100% !important;
    max-height: 100%;
    padding: 0;
    margin: 0;
    height: 50vw;

}

.bloc-ag .tags {
    font-family: 'Jaro';
    font-size: clamp(18px, 1.75vw, 22px);
}

div.text p a {
	color: black;
}

.bloc-ag.big .event[t='event'] img  { 
      background: #007e64;
 }

.bloc-ag.big .event[t='blog'] img { 
background: #6c63ab;
 }


.bloc-ag.big .event[t='action'] img { 
      background: #0093d7;
 }

@media screen and (max-width: 1250px) {

	header .bloc-item  {
	width: 49.3vw;
}

header .logo a:last-child {
	flex: 1;
	padding: 15px 30px;
}

div.annonce div.bloc:last-child {
	width: unset !important;
flex: 1;
}


@media screen and (max-width: 980px) {

	header {
		background: white;
	}

	header div {
		background: black;
	}

	header .item {
		display: none;
	}

	header button {
		display: block !important;
	    position: fixed;
	    background: transparent;
	    border: none;
	    top: 12px;
	    right: 12px;
	    color: black;
	}

	header button img {
		height: 14px;
		padding-top: 10px;
	}

	header img {
				filter: invert(100%);
	}

	header .logo img {
		    height: 47px;
    padding: 15px 0px 10px 10px;
    background: black;
	}

	nav:not(.actif) .bloc-ag {
		display: none;
	}

	nav.mobile {
	    flex-direction: column;
	    position: fixed;
	    left: 0;
	    z-index: 5;
	    background: #f3f3f3;
	    width: 100%;
	    align-items: self-end;
	}

	nav.mobile.open {
		display: flex;
	}

	nav a, nav {
		font-family: Jaro;
		color: black;
		text-decoration: none;
		font-size: 18px;
	}

	nav a {
		padding: 10px 13px;
		width: calc(100% - 26px);
		font-size: 22px;
		padding-top: 7px;
	}

	.bloc-ag {
		position: unset;
		top: unset;
		left: unset;
		width: 100%;
	}

	.bloc-ag .event img {
		width: 100px;
		height: 100px;
		display: none;
	}

	.search {
    width: 100%;
    background: #cccccc;
	}

	.bar input {
		height: 47px;
		font-size: 22px;
	}

	.bloc-ag h2 button {
	font-size: 20px;
	top: 15px;
}

@media screen and (max-width: 580px) {


.triangle div:nth-child(n+3) {
	display: none;
}

.triangle div, .triangle div:after {
	flex: 1;
}

 .triangle div:after {
	left: 50%;
	width: 100%;
	height: 100%;
}

}




}

.bar input::placeholder {
  color: #363636;
}

}
