/* @override 
	http://localhost/zenphoto_complete/themes/collections/styles.css
	https://collections.rolandtisserand.fr/themes/collections/styles.css */

/*div, h1, h2, img, ul, li, p, header, aside, section, footer {
	outline-width: 1px;
	outline-style: solid;
	outline-color: rgba(206,206,206,0.7);
}*/

/* @group Reset */

*, *:after, *:before {
	box-sizing: border-box;
}

a {
	background: transparent;
	color: #000;
	text-decoration: none;
}

a:active, a:hover {
	outline: 0;
}

abbr {
	border-bottom: none;
	cursor: help;
	text-decoration: underline dotted;
}

figure {
	margin: 0;
}

h1, h2, h3, h4, h5, h6 {
	margin: 0 0 1.5rem;
	font-weight: 500;
	line-height: 1.2;
}

hr {
	height: 0;
	border-bottom-style: solid;
	border-bottom-width: 1px;
	border-top-style: none;
	border-left-style: none;
	border-right-style: none;
}

img {
	border: 0;
	height: auto;
	max-width: 100%;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

caption, th {
	text-align: left;
}

tr {
	border-bottom: 1px solid;
}

td, th {
	height: 3.5rem;
	padding-left: .7rem;
	padding-right: .7rem;
}

	strong {
		font-weight: 500;
	}
	
	code {
		font-size: 110%;
		font-family: monospace;
	}

/* @end */

/* @group Structure */

@font-face {
font-family: Inter;
src: url('fonts/Inter-Light.woff2') format('woff2'),
        url('fonts/Inter-Light.woff') format('woff');
font-weight: 300;
font-style: normal;
font-display: swap;
}

@font-face {
font-family: Inter;
src: url('fonts/Inter-Medium.woff2') format('woff2'),
        url('fonts/Inter-Medium.woff') format('woff');
font-weight: 500;
font-style: normal;
font-display: swap;
}

html {
	box-sizing: border-box;
	font-size: 62.5%;
}

html, body {
	height: 100%;
}

body {
	font-family: Inter,-apple-system,system-ui,'Helvetica Neue', sans-serif;
	font-size: 1.4rem;
	line-height: 1.5;
	margin: 0;
	font-weight: 300;
	min-height: 100%;
	display: grid;
	font-variant: common-ligatures;
}


.grid-container {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr;
	grid-template-rows: auto 1fr auto;
	grid-template-areas: "header header header header" "main main main main" "footer footer footer footer";
}

.header {
	grid-area: header;
	position: sticky;
	top: 0;
	background-color: rgba(255, 255, 255, 0.8);
	backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
	z-index: 500;
}

.main {
	grid-area: main;
	/* Les 3 lignes poussent la navigation en pied de page. */
	display: flex;
	/*	justify-content: space-between;*/
	flex-direction: column;
}

.footer {
	grid-area: footer;
}

.centered {
	display: flex; /* contexte sur le parent */
	flex-direction: column; /* direction d'affichage verticale */
	justify-content: center; /* alignement vertical */
}

.container {
	margin: 0 auto;
	/*	max-width: 1800px;*/
	padding-left: 2rem;
	padding-right: 2rem;
	width: 100%;
}


#index_gal {
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-column-gap: 2rem;
	grid-row-gap: 2rem;
	grid-template-rows: auto;
	max-width: 1700px;
	padding-left: 2rem;
	padding-right: 2rem;
}

#index_gal figure {
	display: flex;
	flex-direction: column;
}

#index_gal figure a {
		display: flex;
	flex-direction: column;
}

.index_gal_desc {
		margin-bottom: 3rem;
		max-width: 1700px;
	}

figure.sub_album img, #index_gal figure img {
		border-radius: 10px;
	box-shadow: 0 1px 2px 0  rgba(60,64,67,0.2) ,0 2px 6px 2px rgba(60,64,67,0.2);
	border: 1px solid white;
	display: block;
	margin-bottom: 1rem;
	}

@media (min-width: 700px) {
	body {
		font-size: 1.5em;
	}
	
	.container {
		padding-left: 3rem;
		padding-right: 3rem;
	}
	
	#index_gal {
		grid-template-columns: 1fr 1fr 1fr;
		grid-column-gap: 24px;
		grid-row-gap: 24px;
		padding-left: 3rem;
		padding-right: 3rem;
	}
	
	.footer {
		padding-top: 2rem;
		padding-bottom: 2rem;
	}
	
.album-title {
		font-size: 125%;
		font-weight: 500;
		padding-top: 1rem;
	}
	
	.two-cols {
		display: grid;
		grid-template-columns: 1fr 2fr;
		grid-column-gap:6%;
		max-width: 1400px;
		margin-left: auto;
		margin-right: auto;	
	}
	
	
	.xl-space {
	margin-top: 2rem;
}

}


@media screen and (min-width: 1280px) {
	body {
		font-size: 1.6rem;
	}
	.container {
		padding-left: 6rem;
		padding-right: 6rem;
	}
#index_gal {
		grid-template-columns: 1fr 1fr 1fr 1fr;
				grid-column-gap: 56px;
		grid-row-gap: 56px;
		padding-left: 56px;
		padding-right: 56px;
		margin-left: auto;
		margin-right: auto;
}
.xl-space {
	margin-top: 3rem;
}


}

@media screen and (min-width: 1800px) {
	.container {
		padding-left: 76px;
		padding-right: 76px;
	}
#index_gal {
		grid-template-columns: 1fr 1fr 1fr 1fr;
		grid-column-gap: 56px;
		grid-row-gap: 76px;
		padding-left: 76px;
		padding-right: 76px;
	}	
h1.page_title {
	font-size: 300%;
	line-height: 1.2;
}


}

/* @end */

/* @group global */


a:active, a:hover, .imagetitle {
	color: black;
}

.imagetitle {
	margin-left: 3px;
}

.disabledlink {
	opacity: 0;
	display: none;
}

.errorbox {
	color: red;
}

.errorbox h2 {
	font-size: unset;
	margin-bottom: 0;
}

.skip-to-content {
	position: absolute;
    width: 1px;
    height: 1px;
    margin: -1px;
    padding: 0;
    overflow: hidden;
    white-space: nowrap;
    border: 0;
    visibility: inherit;
    clip: rect(0,0,0,0);
}
 .skip-to-content:focus {
 	  top: 30px;
    left: 0;
    z-index: 9999;
    display: flex;
    align-items: center;
    width: auto;
    height: 3rem;
    padding: 0 1rem;
    color: #f4f4f4;
    background-color: #161616;
    border: 4px solid #0f62fe;
    outline: none;
    clip: auto;
 }

/* @end */



/* @group navbar */

.navbar {
	width: 100%;
	display: flex;
	justify-content: flex-end;
	align-items: center;
	padding-left: 2rem;
	padding-right: 2rem;
	padding-top: 1rem;
	padding-bottom: 1rem;
	font-weight: 300;
	position: -webkit-sticky;
	position:sticky;
	flex-direction: row;
		font-size: 100%;
}

.navbar a:hover {
	color: inherit;
}

.navbar_title_container {
flex-grow: 1;
padding-right: 15px;
/*order: 1;*/
}

#nav-links {
	list-style: none;
	padding: 0;
	margin: 0;
	transform: translateY(-100%);
	transition: transform 0.2s ease;
}

#nav-links.active {
	transform: translateY(0);
	height: 100vh;
	overflow: hidden;
}



#nav-links a, 
#nav-links li.menu_menulabel, 
#nav-links .menu-active {
	display: inline-block;
	padding: 1rem;
	padding-top: 1.5rem;
	padding-bottom: .25rem;
	margin-bottom: .75rem;
	position: relative;
}

.navbar_title_container a {
	display: inline-block;
position: relative;
}

.navbar .toggle_nav {
		   appearance: none;
    -moz-appearance: none;
-webkit-appearance: none;
	background-color: unset;
	border: none;
	padding: 0;
	padding-top: 2px;
	font-size: unset;
	margin-left: 12px;
	z-index: 250;
	position: relative;
	display: flex;
align-items: center;
cursor: pointer;
}



/* Animation */
#menu-icon-anime {
  width: 15px;
  height: 13px;
  position: relative;
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: .5s ease-in-out;
  -moz-transition: .5s ease-in-out;
  -o-transition: .5s ease-in-out;
  transition: .5s ease-in-out;
	overflow: hidden;
}

#menu-icon-anime span {
  display: block;
  position: absolute;
  height: 2px;
  width: 100%;
  background: black;
  opacity: 1;
  left: 0;
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: .25s ease-in-out;
  -moz-transition: .25s ease-in-out;
  -o-transition: .25s ease-in-out;
  transition: .25s ease-in-out;
}

.toggle_nav:hover > #menu-icon-anime span {
  background: gray;
	
}

#menu-icon-anime span:nth-child(1) {
  top: 0px;
}

#menu-icon-anime span:nth-child(2),
#menu-icon-anime span:nth-child(3) 
{
  top: 5px;
}

#menu-icon-anime span:nth-child(4) {
  top: 10px;
}

#menu-icon-anime.open span:nth-child(1) {
  top: 18px;
  width: 0%;
  left: 50%;
}

#menu-icon-anime.open span:nth-child(2) {
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
}

#menu-icon-anime.open span:nth-child(3) {
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg);
}

#menu-icon-anime.open span:nth-child(4) {
  top: 18px;
  width: 0%;
  left: 50%;
}
/* End Animation */

.navbar .toggle_nav a {
	display: flex;
}

.navbar .toggle_nav:hover {
color: grey;
}



a.navbar_title {
	font-weight: 500;
}

.navbar_title_container {
/*white-space: nowrap;*/
}


#nav-links a::after, 
#nav-links li.menu_menulabel::after, 
#nav-links .menu-active::after, 
.navbar_title_container a::after {
	content: "";
	position: absolute;
	width: 100%;
	height: 1px;
	bottom: 0;
	left: 0;
	background-color: #000;
	opacity: 0;
	transform: scaleX(0);
	transition: transform .5s cubic-bezier(.165,.84,.44,1),opacity .3s cubic-bezier(.165,.84,.44,1);
}

#nav-links a:hover::after, a.menu-active::after, #nav-links li.menu_menulabel:hover::after, #nav-links .menu-active::after,.navbar_title_container a:hover::after   {
	opacity: 1;
	transform: scaleX(1);
}

#nav-links li {
	display: flex;
	align-items: center;
	justify-content: center;
}

#nav-links li:hover, li:focus-within {
  cursor: pointer;
}

#nav-links li:focus-within a {
  outline: none;
}

[hidden] { display: none; }


/* Sub-Menu */
ul.nav-links-sub {
  background: white;
/*  visibility: hidden;*/
/*  opacity: 0;*/
  position: absolute;
  transition: all 0.5s ease !important;
  margin-top: 0;
  left: 12px;
	padding-left: 10px;
	padding-right: 10px;
	padding-top: 10px;
	border-radius: 5px;
	box-shadow: 0 3px 5px #bfbfbf;
	z-index: 20;
	display: flex;
	flex-direction: column;
}
/* Hide sub-menu count */
ul.nav-links-sub span {
	display: none;
}

ul#nav-links li:hover > ul.nav-links-sub,
ul#nav-links li:focus-within > ul.nav-links-sub,
ul#nav-links li ul.nav-links-sub:hover,
ul#nav-links li ul.nav-links-sub:focus {
  visibility: visible;
  opacity: 1;
  display: block
}

ul.nav-links-sub li {
  clear: both;
  width: 100%;
		justify-content: unset !important;
}

ul.nav-links-sub a  {
padding: 0rem !important;
margin: 0!important;
text-align: left ;
width: 100%;
padding-bottom: 10px !important;
}


#search {
	display: flex;
}

#search #search_form div {
	display: flex;
	align-items: center;
	justify-content: center;
}

#search #search_input {
	border-radius: 5px;
	transition: width .6s ease-in-out 0s;
	will-change: transform;
	width: 20px;
	height: 20px;
	float: right;
	background: url(images/search_light.svg) right center no-repeat;
	background-size: 18px;
	border: none;
	cursor: pointer;
	color: transparent;
}

#search #search_input:focus {
	width: 200px;
	background: #ededed;
	background-repeat: no-repeat;
	background-position: 13px center;
	color: black;
}

#search_alt #search_form div {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
	width: 100%;
	max-width: 70rem;
	margin-left: auto;
	margin-right: auto;
}

#search_alt  .tagSuggestContainer {
	width: 100%;
}

#search_alt #search_submit {
margin-left: 20px;
}

#search_alt #search_input {
}

#search #search_submit {
	margin-bottom: 0;
	margin-right: 0;
	display: none;
}

#search .toggle_searchextrashow, #search_alt .toggle_searchextrashow {
	display: none;
}

span.tagMatches { 
	width: 300px !important;
	position: absolute;
	z-index: 100;
	max-height: 300px;
	text-align: left;
	overflow: auto;
	border: 0;
	top: 30px;
	left: -5px;
} 
    
span.tagMatches span { 
	color: black;
	cursor: pointer; 
	background-color: #ffffff; 
	box-shadow: 0 0px 4px #bbbbbb;
	padding: 5px;
	border-radius: 5px;
	margin-top: 5px;
	margin-bottom: 5px;
	margin-left: 5px;
	margin-right: 5px;
	width: 200px;
	transition: box-shadow .2s ease-in-out 0s;
} 

span.tagMatches span:hover {
	box-shadow: 0 0 5px #727272;
}


.tagSuggestContainer {
	position: relative;
}

span.breadcrumb a:before {
	content: '\00a0/ ';
}

@media (max-width:700px) {
	
	.navbar_title_container {
		order: 1;
	}
	
	#nav-links {
		order: 2;
	}
	
	#search {
		order: 3;
	}
	
	.navbar .toggle_nav {
		order: 4;
	}
	
	.index_gal_desc h1 {
		display: none;
	}
	
	
	
	.grid-container {
		display: grid;
		grid-template-columns: 1fr 1fr 1fr 1fr;
		grid-template-rows: auto 1fr auto;
		grid-template-areas: "header header header header" "main main main main" "footer footer footer footer";
	}
	
	.header {
		min-height: auto;
		padding-bottom: .8rem;
	}
	
#nav-links {
		position: fixed;
		justify-content: space-evenly;
		z-index: 200;
		background-color: rgba(255, 255, 255, 0.9);
		width: 100vw;
		left: 0;
		top: 0;
		padding-top: 30px;
		padding-bottom: 10%;
		flex-direction: column;
		display: flex;
		backdrop-filter: blur(5px);
  -webkit-backdrop-filter: blur(5px);
	}
	
	#nav-links li {
font-size: 125%;
	}
	
	span.breadcrumb {
		font-size: 1.2rem;
	}
}

@media (min-width: 700px) {
.navbar .toggle_nav {display:none}

			.navbar {
		padding-left: 3rem;
		padding-right: 3rem;
		padding-top: 0;
		padding-bottom: 0;
		font-size: 100%;
	flex-direction: row;
}
	a.navbar_title {
	padding-right: 1rem;
}
	#nav-links {
	list-style: none;
	display: flex;
	flex-direction: row;
	padding: 0;
	margin: 0;
		transform: translateY(0);

}
}

@media (min-width:1280px) {
#nav-links a, #nav-links li.menu_menulabel, #nav-links .menu-active, a.navbar_title {
		padding: 2rem;
		padding-bottom: .5rem;
		margin-bottom: 1.5rem;
		font-size: 90%;
	}
	
	 .breadcrumb a {
		font-size: 90%;
			padding-bottom: .5rem;
		margin-bottom: 1.5rem; }
	
		a.navbar_title {
		padding-right: 0;
	}
	
		.navbar {
		padding-left: 56px;
		padding-right: 56px;
	}
	
	#search #search_input {
	width: 30px;
	height: 35px;
	background-size: 20px;
}

#search #search_input:focus { 
width: 300px;
}

span.tagMatches { 
	top: 45px;
}

}
@media (min-width:1800px) {
	#nav-links a, 
	#nav-links li.menu_menulabel, 
	#nav-links .menu-active, 
	a.navbar_title {
		padding-top: 2rem;
		padding-bottom: 2rem;
		margin-top: 2rem;
		margin-bottom: 2rem;
		font-size: 100%;
	}
	
		 .breadcrumb {
	 }
	 
	 	 .breadcrumb a {
		font-size: 100%;
			padding-bottom: .5rem;
		margin-bottom: 1.5rem; 
		padding-top: 2rem;
		padding-bottom: 2rem;
		margin-top: 2rem;
		margin-bottom: 2rem;	 	 }
		
	.navbar {
		padding-left: 76px;
		padding-right: 76px;
	}
	
	#search #search_input {
		width: 30px;
		height: 40px;
		background-size: 25px;
	}
}

/* Just remove left padding for site title */
a.navbar_title {
	padding-left: 0;
}

/* @end */

/* @group Album */

figure.document img[src*="textDefault"] {
	background: url(images/textDefault.svg) center center #f6f6f6;
	background-size: cover;	
}

img[src*="imageDefault"] {
	background: url(images/imageDefault.svg) center center #f6f6f6;
	background-size: 100%;
}

.galeries figcaption strong {
	display: block;
}

.galeries figcaption {
	margin-top: 1rem;
}

/* @end */

/* @group Pagination */

.pagelist {
	padding-left: 0;
	padding-right: 0;
}

.pagelist-container {
	width: 100%;
	text-align: center;	
	padding-bottom: 3rem;
	padding-top: 3rem;
}

.pagelist ul {
	display: inline-block;
	padding: 0;
	margin-bottom: 3rem;
	margin-top: 3rem;
}

.pagelist li {
	display: inline-block;
	list-style-type: none;
	margin-right: 1rem;
	cursor: pointer;
	font-size: 100%;
}

.pagelist li.next {
	margin-right: 0;
}

/* @end */

/* @group Galeries */

.album_thumbnail img, .galeries #album_masonry img {
	width: 100%;
}

.album_thumbnail figure, .galeries #album_masonry figure,.search_images_bloc figure {
	transition: all .2s ease-out;
	
}

.album_thumbnail figure:hover, .galeries #album_masonry figure:hover, .search_images_bloc figure:hover {
	transform: translateY(-3px);
}

img[alt*="protected"] {
	background: url(images/err-passwordprotected.svg) center center no-repeat #f6f6f6;
	background-size: 100%;
}

.galeries #album_masonry img {
	width: 100%;
	height: auto;
	cursor: zoom-in;
	display: block !important;
}

.album_head h1 {
	margin-top: 1.5rem;
	font-size: 200%;
	text-align: center;
	line-height: 1.2;
}


.album_head .albumdes {
	max-width: 130rem;
max-width: 100ch;
	margin-right: auto;
	margin-left: auto;
	text-align: center;
}

.album_head {
	margin-bottom: 2rem;
}

@media (min-width:700px) {
.album_head {
	margin-bottom: 2rem;
	margin-top: 3rem;
}	
}

@media (min-width:1280px) {
.album_head {
	margin-bottom: 8rem;
	margin-top: 4rem;
}	
}



/* @end */

/* @group Image */

.picture_container img {
	width: auto;
	display: block;
	max-height: 85vh;
}

.picture_container {
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 6rem;
	overflow: hidden;
	background: url(images/icon-loader-2.gif) center center no-repeat;
	background-size: 30px;
	min-height: 75vh;
	display: flex;
	width: 100%;
  align-items: center;
  justify-content: center;
	position: relative;
	
}

.album_detail {
		display: flex;
		margin-bottom: 3rem;
}

.picture_detail {
		max-width: 1700px;
		width: 100%;
		margin-left: auto;
		margin-right: auto;
		padding-left: 3rem;
		padding-right: 3rem;
		display: block;
		margin-bottom: 3rem;
}

.picture_detail_nav .desc {
	text-align: center;
	max-width: 70rem;
	margin-left: auto;
	margin-right: auto;
}

.picture_descr, .album_descr {
	flex-grow: 1;
	padding-right: 6rem;
}

.picture_descr h1 {
	font-weight: 500;
	font-size: 125%;
}

#picture_breadcrumb {
	text-align: center;
	font-size: 1.3rem;
}

@media (min-width:700px) {
	.picture_detail {
		display: flex;
	}
}
@media (max-width:700px) {
	.picture_detail img {
		margin-bottom: 2rem;
		margin-top: 1rem;
	}
	
	.picture_detail_nav {
		grid-template-columns: 50px 1fr 50px;
		margin-bottom: 3rem;
	}
	
	.picture_container {
		margin-bottom: 2rem;
		margin-top: 0;
		min-height: unset;
	}
	
	.picture_descr, .album_descr {
	flex-grow: 1;
	padding-right: 2rem;
}
	
	
	
}

ul.taglist{
	list-style-type: none;
	margin-left: 0;
	margin-right: 0;
	padding: 0;
}

.taglist li {
	display: inline-block;
}

.article_single ul.taglist {
	margin-bottom: 2rem;
}
	

.taglist a {
	text-transform: uppercase;
	letter-spacing: .1rem;
	font-weight: 500;
	font-size: 1rem;
	display: inline-block;
	margin-left: 0.2rem;
	margin-right: 0.2rem;
	margin-bottom: 0.8rem;
	padding-top: 4px;
	padding-bottom: 4px;
	padding-left: 7px;
	padding-right: 7px;
	text-decoration: none;
	transition: box-shadow .1s ease-out 0s,transform .1s ease-out 0s;
		color: #6a6a6a;
	border-radius: 5px;
	border: 1px solid #e2e2e2;
		box-shadow: 0px 1px 5px #fff;
}

.taglist a:hover, .pagelist a:hover {
			transform: translateY(-2px);
}

.taglist li:first-child > a {
	margin-left: -1px;
}

		.prev_img, .next_img {
	-webkit-tap-highlight-color: transparent;
	box-shadow: 0 1px 2px 0  rgba(60,64,67,0.2) ,0 2px 6px 2px rgba(60,64,67,0.2);
	background: #fff;
	border: 0;
	border-radius: 50%;
	bottom: auto;
	display: block;
	height: 24px;
	width: 24px;
	top: calc(50vh - 30px);
	outline: none;
	position: absolute;
	transition: background-color 200ms ease-out,opacity 150ms ease-out,box-shadow 150ms ease-out;
	z-index: 500;
	cursor: pointer;
	opacity: 1;
	pointer-events: auto;
}

.prev_img {
	left: 24px;
	
}

.next_img {
	right: 24px;
}

.next_img:hover, .prev_img:hover {
		box-shadow: 0 1px 2px 0  rgba(60,64,67,0.5) ,0 2px 6px 2px rgba(60,64,67,0.5);
}

.next_img:hover svg {
	fill: black;
}

.next_img svg, .prev_img svg {
	color: #dadce0;
	cursor: pointer;
	pointer-events: auto;
	-webkit-tap-highlight-color: transparent;
	fill: grey;
	height: 20px;
	left: 50%;
	margin: -10px 0 0 -10px;
	position: absolute;
	top: 50%;
	width: 20px;
}

.next_img svg {
	transform: rotate(180deg);	
}

.overlay_nav_container {
	position: absolute;
	height: 100%;
	width: 100%;
	display: flex;
}

.cursor_prev {
	border: none;
z-index: 2;
		cursor: url(images/cursor_left.svg),w-resize;
width: 100%;
height: 100%;
}

.cursor_next {
	border: none;
z-index: 2;
width: 100%;
height: 100%;
cursor: url(images/cursor_right.svg),e-resize;
}

.cursor_close {
	border: none;
z-index: 2;
    width: 100%;
		height: 100%;
		cursor: url(images/cursor_close.png),auto;
		cursor: url(images/cursor_close.svg),auto;
}

.picture_icons {
	display: flex;
	flex-direction: row;
}

a.svg_button {
	display: inline-block;
	padding-top: 12px;
	padding-left: 14px;
	width: 45px;
	height: 45px;
	transition: box-shadow .2s ease-out 0s,transform .2s ease-out 0s;
	border-radius: 5px;
	border: 1px solid #e2e2e2;
}

a.svg_button:hover {
		box-shadow: 0 1px 5px #c7c7c7;
			transform: translateY(-2px);
}

.img_responsive {
	position: relative;
}

.close_icon {
	position: absolute;
right: 0;
top: 0;
width: 40px;
height: 40px;
overflow: hidden;
background: url(images/cursor_close.svg) center center no-repeat;
box-shadow: 0 1px 5px #c7c7c7;
border-radius: 50px;
text-indent: 500px;
margin: -10px;
z-index: 900;
}

div.textobject {
	background-color: white;
	max-width: 80rem;
	padding-left: 2rem;
	padding-right: 2rem;
	max-height: 50vh !important;
	overflow: auto;
}

@media (min-width:1280px) {
	.prev_img, .next_img {
	height: 56px;
	top: calc(50vh - 28px);
	width: 56px;
}

.picture_descr h1 {
	font-size: 200%;
}

.taglist a {
	font-size: 1.2rem;
	padding-top: 7px;
	padding-bottom: 7px;
	padding-left: 10px;
	padding-right: 10px;
}

}


/* @end */

/* @group Blocks */

.media_supp_content section {
	padding: 2rem;
	border-radius: 5px;
	margin-bottom: 3vw;
}

div.bloc-favs .imagesFavorites_add, div.bloc-favs .albumsFavorites_add {
	background: url(images/f_add.svg) 7px center no-repeat;
	background-size: 30px;
}

div.bloc-favs .imagesFavorites_remove, div.bloc-favs .albumsFavorites_remove {
	background: url(images/f_rem.svg) 7px center no-repeat;
	background-size: 30px;
}

div.bloc-favs {
	display: inline-block;
	width: 45px;
	height: 45px;
	overflow: hidden;
	border-radius: 5px;
	margin-left: 12px;
	transition: background .3s ease-out 0s;
	border: 1px solid #e2e2e2;
		box-shadow: 0px 1px 5px #fff;
	transition: box-shadow .2s ease-out 0s,transform .2s ease-out 0s;
}


div.bloc-favs:hover {
		box-shadow: 0 1px 5px #c7c7c7;
transform: translateY(-2px);
}

div.bloc-favs form {
	margin: 0;
	padding: 0;
	display: inline-block;
}

div.bloc-favs input {
	margin: 0;
	padding: 0;
	width: 45px;
	height: 45px;
	border-radius:0;
	background-color: unset;
	color: blue;
	text-indent: 500px;
	cursor: pointer;
}

div.bloc-favs input:hover {
	background-color: unset;
}

div.comment {
background-color:#ededed;
border-radius: 5px;
padding: 1rem;
margin-bottom: 2rem;
}

section.bloc-rating form {
display: flex;
}

section.bloc-rating .star-rating-control {
	display: inline-block;
transform-origin: top left;
align-self: center;
padding-right: 2rem;
}

section.bloc-rating .vote {
flex-grow: 1;
align-self: center;
padding-left: 2rem;
}

.bloc-rating-content {
	display: flex;
	flex-direction: column;
}

section.bloc-rating .star-rating-control::after {
  content: "";
  display: table;
  clear: both;
}

div.commentinfo {
	display: inline-block;
}

div.commentinfo h4 {
	margin: 0;
	font-weight: 500;
}

#commentcontent h3 {
	font-size: 100%;
	font-weight: 500;
}

#commentcontent h3:first-child {
	display: none;
}

#commentcontent h3.empty {
	color: grey;
}

div.commentinfo h4:after {
	display: inline-block;
	content: '\00a0—\00a0';
}

div.commenttext {
	display: inline;
}

#commentform p {
	display: block;
font-size: 1.2rem;
}

#commentform input {
	display: block;
	width: 100%;
	font-size: 120%;
}

#commentform input[type='checkbox'] {
	display: inline-block;
	width: auto;
}

input#comment_dataconfirmation {
	display: block;
	float: right;
}

#commentform .inputbox {
	  flex-grow: 2;
}

#imagemetadata_data table {
	width: 100%;
}

#imagemetadata_data tr {
	border-bottom: 1px solid #d8d4d4;
}
.media_supp,.bloc_relat_item {
		width: 100%;
		border-top: 1px solid #dbdbdb;
		padding-top: 3rem;
		display: block;
		padding-left: 1rem;
		padding-right: 1rem;
}

.media_supp_content, .bloc_relat_item_content {
		max-width: 1700px;
		margin-left: auto;
		margin-right: auto;	
}

.bloc_relat_item ul {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap:1rem;
	font-size: 90%;
	padding: 0;
	margin: 0;
	padding-bottom: 3rem;
}


.bloc_relat_item li {
	margin: 0;
	padding: 0;
	list-style-type: none;
	display: inline-block;
	position: relative;
	padding: 5px;
border-radius: 10px;
transition: box-shadow .15s ease-in-out 0s;
	box-shadow: 0 0 5px #e0e0e0;}

.bloc_relat_item p {
	margin: 0;
}

.bloc_relat_item li:hover {
	box-shadow: 0 0 5px #a9a9a9;
}

.bloc_relat_item li h4 a {
	color: inherit;
	border-bottom-style: solid;
	border-bottom-width: 2px;
	padding-top: 15px;
}

.bloc_relat_item img {
	display: block;
	border-radius: 5px;
	width: 100%;
}

a.relateditems_thumb {
display: inherit;
	margin-bottom: 15px;
}

.clearfix {
	border: 1px solid #333;
	  content: "";
  display: table;
  clear: both;
	padding-bottom: 2px;
}

@media (min-width:700px) {

.media_supp_content {
	display: grid;
	grid-template-columns : 1fr 1fr;
	gap:3vw;
}

.bloc_relat_item ul {
	grid-template-columns: repeat(auto-fill, calc(24.20%));
	gap:1%;
}

div.bloc-rating-content {
	flex-direction: row;
}
	.picture_detail,.media_supp,.bloc_relat_item {
		margin-bottom: 6rem;
	}
	.media_supp,.bloc_relat_item {
		padding-top: 6rem;
		padding-left: 3rem;
		padding-right: 3rem;
	}
	
	.media_supp_content section {
	box-shadow: 0 0 5px #e0e0e0;
}

	.bloc_relat_item li h4 {
		font-size: 110%;
	}
	.bloc_relat_item li.news, .bloc_relat_item li.pages {
		display: flex;
		flex-direction: column;
		justify-content: flex-end;
		background: url(images/textDefault.svg) center top no-repeat;
	}
	
	#commentform p {
	display: flex;
	font-size: 100%;
}

#commentform label {
	align-self: center;
  flex-grow: 1;
}

#commentform input {
	width: auto;
	font-size: unset;
}

}

@media (min-width:960px) {
	.bloc_relat_item ul {
	grid-template-columns: repeat(auto-fill, calc(19.20%));
	gap:1%;
}
}

@media (min-width:1280px) {
	
	.bloc_relat_item ul {
	grid-template-columns: repeat(auto-fill, calc(19.20%));
	gap:1%;
	font-size: 100%;
}

	.picture_detail,
	.media_supp,
	.bloc_relat_item {
		margin-bottom: 12rem;
		padding-left: 12rem;
		padding-right: 12rem;
	}
	.media_supp,
	.bloc_relat_item {
		padding-top: 11rem;
	}
}

/* @end */

/* @group News Template */

.singlenews_prev, .singlenews_next {
	display: inline-block;
	font-size: .8em;
	padding-right: 2rem;
	display: none;
}

.singlenews_prev a, .singlenews_next a {
text-decoration: underline;
}

.news_template h2,.article_single h1 {
	margin-bottom: 0;
}

.article_loop .article_infos {
	font-size: 1.1rem;
	border-bottom: 1px solid;
	padding-bottom: .5rem;
	margin-bottom: 1rem;
}

.news_template article {
	margin-bottom: 2rem;
}

.news_template ul.newscategories {
	display: inline;
	margin: 0;
	padding: 0;	
}

.news_template ul.newscategories a {
	text-decoration: underline;
}

.news_template ul.newscategories li {
	display: inline-block;
}

.news_template ul#categories_list {
	margin: 0;
	padding: 0;
	list-style-type: none;
	margin-bottom: 3rem;
}

.news_template ul#categories_list li {
	border-bottom-style: solid;
	border-bottom-width: 1px;
}

.news_template .categories_list_active {
	font-weight: 500;
	padding-bottom: 1rem;
	padding-top: 1rem;
}

.news_template ul#categories_list li a {
	display: block;
	padding-bottom: 1rem;
	padding-top: 1rem;
}

.news_template ul#categories_list li a:hover {
	background-color: #ebebeb;
}

.article_single .bloc-rating, .article_single .bloc-comments {
	padding-top: 2rem;
	padding-bottom: 2rem;
	border-top: 1px solid #333;
}




@media (min-width:700px) {
	.article_side {
	order: 1;
}

.article_loop, .article_single {
	order: 2;
}
}

@media (min-width:1280px) {
.article_loop .article_infos, .article_single .article_infos {
	font-size: 1.2rem;
	border-bottom: 1px solid;
	padding-bottom: .5rem;
	margin-bottom: 2rem;
}
.article_loop article, .article_single {
	margin-bottom: 6rem;
}
}

/* @end */

/* @group My favorites Page */

div.fav_thumb {
	position: relative;
}

div.fav_thumb .bloc-favs {
	position: absolute;
	top: 5px;
	left: 5px;
	border: none;
	box-shadow: none;
	transition: opacity .2s ease-in-out 0s;
}

div.fav_thumb .bloc-favs:hover {
box-shadow: none;
transform: translateY(-0px);
opacity: .5;
}
	


/* @end */

/* @group Search */

ul.pages_search_blocs {
	padding: 0;
	list-style-type: none;
}

ul.pages_search_blocs li {
	box-shadow: 0 0 3px #434343;
	padding: 1rem;
	border-radius: 5px;
	transition: box-shadow .2s ease-in-out 0s;
	margin-bottom: 1rem;
}

ul.pages_search_blocs li:hover {
		box-shadow: 0 0 5px #434343;
}

ul.pages_search_blocs h3,ul.pages_search_blocs p {
	display: inline-block;
	margin: 0;
}

ul.pages_search_blocs h3 {
	margin-right: 15px;
}

ul.search_images_bloc {
		display: grid;
		grid-template-columns: 1fr 1fr 1fr 1fr;
		grid-column-gap: 24px;
		grid-row-gap: 24px;
		list-style-type: none;
		margin: 0;
		padding: 0;
}

.search_template {
	margin-bottom: 3rem;
}

/* @end */

/* @group Footer */

.footer {
	border-top: 1px solid #dbdbdb;
	text-align: center;
}

.footer a:hover {
	text-decoration: underline;
}

ul.foot-links li {
	display: inline-block;
	padding: 1rem;
}

@media (min-width:700px) {
ul.foot-links li {
	padding: 2rem;
}
}

/* @end */

/* @group Page (general template page, news, password…) */

.page_template article {
	max-width: 1000px ;
	margin-left: auto;
	margin-right: auto;	
	margin-top: 3rem;
	padding-left: 2rem;
	padding-right: 2rem;
margin-bottom: 3rem;
}

@media (min-width:700px) {
.page_template article {
	padding-left: 3rem;
	padding-right: 3rem;	
}	
}
@media (min-width:1280px) {
	.page_template {
		margin-top: 6rem;
	font-size: 120%;
	}
	.page_template article {
		margin-bottom: 10rem;
	}
}

.page a {
	text-decoration: underline;
}


/* @end */

/* @group Archive Page */

.archive_grid {
	display: grid;
	grid-template-columns: 2fr 1fr;
	column-gap: 3%;
}

ul.archive {
	list-style-type: none;
	padding-left: 0;
}

.archive_grid h3 {
	padding-bottom: 1rem;
	border-bottom-style: solid;
	border-bottom-width: 1px;
}

ul.month, ul.tags {
	padding-left: 0;
	list-style-type: none;
	margin-top: 1rem;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	padding-top: 1rem;
	padding-bottom: 2rem;
}

ul.month li, ul.tags li {
	flex-grow: 1;
	padding-left: 1rem;
	padding-right: 1rem;
	margin-bottom: 1rem;
}

ul.month li a, ul.tags li a {
	width: 100%;
	display: inline-block;
	text-align: center;
	padding-top: 1rem;
	padding-bottom: 1rem;
	padding-left: 10px;
	padding-right: 10px;
	text-decoration: none;
		color: #6a6a6a;
	border-radius: 5px;
	border: 1px solid #e2e2e2;
		box-shadow: 0px 1px 5px #fff;
	transition: box-shadow .2s ease-out 0s,transform .2s ease-out 0s;

}

ul.month li a:hover, ul.tags li a:hover {
		box-shadow: 0 1px 5px #c7c7c7;
			transform: translateY(-2px);
}

li.year {
	padding-top: 1rem;
}

/* @end */

/* @group Formulaires + Password */

.contact-form, .password-form {
margin-bottom: 3rem;
}

.password-form fieldset {
	border: 0;
	padding-left: 0;
	padding-right: 0;
	margin-top: 2rem;
}

#disclose_password {
	border: 1px solid #333;
	display: inline-block;
	width: 30px;
	bottom: 2px;
	position: relative;
}

.password-form button, input[type='submit'], .bloc-rating .button, main #register_link, .pagelist a {
	   appearance: none;
    -moz-appearance: none;
-webkit-appearance: none;
	padding-left: 2rem;
	padding-right: 2rem;
	padding-top: 1rem;
	padding-bottom: 1rem;
	border: none;
	border-radius: 4px;
	transition: box-shadow 0.1s ease-in-out 0s, background-color 0.1s ease-in-out 0s;
	box-shadow: rgba(0, 0, 0, 0.45) 0px 1px 2px 0px,0 0 0 1px rgb(0 0 0 / 9%);
	width: auto;
	background-color: white;
}

.password-form button:hover, input[type='submit']:hover, .bloc-rating .button:hover, main #register_link:hover, .pagelist a:hover {
/*	background-color: #606060;*/
box-shadow: 0 0 0 4px rgb(0 0 0 / 15%);
cursor: pointer;
}

.password-form img {
	display: none;
}

.password-form button[type*="reset"] {
	display: none;
}

#logon_box legend {
	font-weight: 500;
}

#logon_box fieldset legend {
	font-weight: 300;
}

.link_to_sub {
	margin-top: 3rem;
	margin-top: 6vh;
}

input, textarea {
	border: 1px solid #a29c9c;
	padding: 1rem;
	color: #000000;
	width: 100%;
	display: block;
	border-radius: 3px;
	font-size: 100%;
	font-weight: 300;
}

textarea {
	width: 100%;
	min-height: 20rem;
}

input[type='reset'] {
	display: none;
}

#mailform input[type='checkbox'] {
	display: inline-block;
	width: auto;
	margin-right: 10px;
}

/* @end */

/* @group Theme Switcher */

.themeSwitcherControlLink {
 position: fixed;
 z-index: 600;
font-size: 12px;
border: none;
height: 30px;
background-color: rgb(173, 173, 173) !important;
bottom: 0 !important;
left: 30vw;
}

.themeSwitcherControlLink input {
	display: inline-block;
	width: auto;
}


/* @end */

/* @group Bonus */


.btn-action {
  box-shadow: 0 5px 10px rgba(0,0,0,0.19), 0 6px 6px rgba(0,0,0,0.23);
    padding: 18px;
    margin: 6px;
    text-align: center;
    cursor: pointer;
    transition: 0.2s ease;
    text-decoration: none;
		border-radius: 5px;
		font-weight: 500;
}

.btn-action:hover {
    box-shadow: 0 3px 6px rgba(0,0,0,0.16), 0 3px 6px rgba(0,0,0,0.23);
}

.btn-space{
margin-top: 36px;
margin-bottom: 36px;
display: flex;
flex-basis: auto;
justify-content: center;
text-align: center;
}

.shadow {
  box-shadow: 0 10px 20px rgba(0,0,0,0.19), 0 6px 6px rgba(0,0,0,0.23);
}

.space-up-bottom {
	margin-top: 2rem;
	margin-bottom: 2rem;
}


/* @end */

@media (prefers-color-scheme: dark) {
	body, .header {
		background-color: #3b3b3b;
		color: #e5e5e5;
	}
	
	.header {
		background-color: rgba(59, 59, 59, 0.88);
	backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
	}
#nav-links a:hover::after, 
a.menu-active::after,
#nav-links .menu-active::after,
.navbar_title_container a::after  {
			background-color: #e5e5e5;
		}

	
	a, .imagetitle {
		color: #e5e5e5;
	}
	
	a:hover {
		color: #e5e5e5;
	}
	
	.taglist a, ul.month li a, ul.tags li a {
		background-color: #5a5a5a;
		color: #e5e5e5;
		box-shadow: none;
		border: none;
	}
		.taglist a:hover, ul.month li a:hover, ul.tags li a:hover {
			box-shadow: none;
		
		}
	
	img[alt*="protected"] {
		background: url(images/err-passwordprotected_night.svg) #535353;
	}
	
	img[alt*="protected"]:hover {
		background: url(images/err-passwordprotected_night.svg) #adadad;
	}
	
	input, textarea {
		border: 1px solid #6e6e6e;
		color: #e5e5e5;
		background-color: #444444;
	}
	
.bloc_relat_item li {
		box-shadow: 0 0 10px rgba(41, 41, 41, 0.95);
	}
	
		.media_supp_content section {
			background-color: #333333;
		box-shadow: none;
		}
	
	.bloc_relat_item li:hover {
				box-shadow: 0 0 15px rgb(21, 21, 21);

	}
	
		.bloc_relat_item li.news, .bloc_relat_item li.pages {
		background: url(images/textDefault_night.svg) center top no-repeat;
				display: flex;
		flex-direction: column;
		justify-content: flex-end;
	}
	
	figure.document img[src*="textDefault"] {
	background: url(images/textDefault_night.svg) center center #565656;
		background-size: cover;
		border-radius: 5px;
	}

img[src*="imageDefault"] {
	background: url(images/imageDefault_night.svg) center center #565656;
	background-size: 100%;
}

	div.comment {
			background-color: #444444;
		}
	
	section.bloc-rating  input.button {
		background-color: #5a5a5a;
	}
	
			.prev_img, .next_img {
				box-shadow: none;
		background-color: #1f1f1f;
			}
			
	#imagemetadata_data tr {
	border-bottom: 1px solid rgba(31, 31, 31, 0.40);;
}
	.media_supp,.bloc_relat_item, .footer {
		border-top-style: solid;
		border-top-color: rgba(31, 31, 31, 0.40);
	}
	
#search #search_input {
	background: url(images/search_dark.svg) right center no-repeat;
	background-size: 22px;
color: black;
}

.password-form button,
input[type='submit'],
.bloc-rating .button,
.bloc-favs,
	.taglist a,
a.svg_button,
	ul.pages_search_blocs li,
	main #register_link,
	.pagelist a {
			background-color: #5a5a5a;	
			box-shadow: none;
			border: none;
			color: unset;
	}
	
	.password-form button:hover,
	.bloc-rating .button:hover,
	.taglist a:hover, 
	input[type='submit']:hover,
	a.svg_button:hover,
	.bloc-rating .button:hover,
.bloc-favs:hover,
	.pagelist a:hover,
	ul.pages_search_blocs li:hover,
	main #register_link:hover   {
		background-color: #474747;
		border: none;
		color: unset;
			box-shadow: none;
	}

	.cursor_prev {
		cursor: url('images/cursor_left_night.svg'),w-resize;
}

.cursor_next,
.cursor_prev_next {
		cursor: url('images/cursor_right_night.svg'),e-resize;
}

.cursor_close {
		cursor: url('images/cursor_close_night.svg'), auto;
}

.toggle_nav {
	color: #e5e5e5;
}

#menu-icon-anime span {
	background-color: #e5e5e5;
}

.news_template ul#categories_list li a:hover {
	background-color: #5a5a5a;
}

@media (max-width:700px) {
	
	#nav-links {
	background-color: rgba(0, 0, 0, 0.67);
}

	
}
a.svg_button.download path {
	fill: #e5e5e5;
	
}

.bloc-favs .imagesFavorites_add, .bloc-favs .albumsFavorites_add {
	background: url(images/f_add_night.svg) 7px center no-repeat;
	background-size: 30px;
}

figure.sub_album img, #index_gal figure img {
box-shadow: 0 0 4px #000000;	
border: none;
	}
	
	div.textobject {
		background-color: #3b3b3b;
}
}

