/* http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
*/

* {
    box-sizing: border-box;
}

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
	scroll-behavior: smooth;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
/** end reset css**/
body {
	max-width: 1140px;
	margin:auto;
	font-family: 'Work Sans' ;
	font-size: 14px;
	background-color: #FFFEF8;;
}
header {
	display: flex;
	justify-content: space-between;
	margin: 50px 0
}
section {
	margin: 50px 0
}

h1{
	display: flex;
	flex-direction: column;
	font-family: 'Syne';
	font-size: 22px;
	font-weight: 800;
	color: #B1663C
}

h1 > span {
	font-family: 'Work Sans';
	font-size:10px;
	letter-spacing: 0.1em;
;
}

h2{
	font-family: 'Syne';
	font-weight: 700;
	font-size: 30px;
	color: #1D6154
}
nav ul {
	display: flex;
	align-items: center;
	list-style-type: none;

}
nav li {
	padding: 0 10px;
	font-size: 1.2em;
}

li:hover, #nav-login:hover {
	color: #B1663C;
}
#introduction {
	display: flex;
	align-items: center;
}
#introduction figure {
	flex: 1
}

#introduction figcaption {
	padding-left: 10%;
	padding-top: 13px;
}
#introduction img {
	display: block;
	margin: auto;
	width: 80%;
}

#introduction article {
	flex: 1
}
#introduction h2 {
	margin-bottom: 1em;
}

#introduction p {
	margin-bottom: 0.5em;
}
#portfolio h2 {
	text-align: center;
	margin-bottom: 1em;
}
.gallery {
	width: 100%;
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	grid-column-gap: 20px;
	grid-row-gap: 20px;
}

.gallery img {
	width: 100%;

}
#contact {
	width: 50%;
margin: auto;
}
#contact > * {
	text-align: center;

}
#contact h2{
	margin-bottom: 20px;
}
#contact form {
	text-align: left;
	margin-top:30px;
	display: flex;
	flex-direction: column;
}

#contact input {
	height: 50px;
	font-size: 1.2em;
	border: none;
	box-shadow: 0px 4px 14px rgba(0, 0, 0, 0.09);
}
#contact label {
	margin: 2em 0 1em 0;
}
#contact textarea {
	border: none;
	box-shadow: 0px 4px 14px rgba(0, 0, 0, 0.09);
}

input[type="submit"] {
	font-family: 'Syne';
	font-weight: 700;
	color: white;
	background-color: #1D6154;
	margin : 2em auto ;
	width: 180px;
	text-align: center;
	border-radius: 60px ;
}

footer nav ul {
	display: flex;
	justify-content: flex-end;
	margin: 2em
}


.filters {
	display : flex;
	justify-content : center;
	margin-bottom: 51px;
	gap : 10px;
}

.btn-filter {
	border: 1px solid #1D6154;
	color : #1D6154;
	text-align: center;
	font-size : 16px;
	font-family : Syne;
	font-style : normal;
	font-weight: 700;
	line-height: normal;
	background-color : white;
	padding: 9px 15px;
	cursor: pointer;
	border-radius : 60px; 
}

.btn-filter:hover {
	background-color : #1D6154;
	color: white;
}


a {
	text-decoration: none;
	cursor: pointer;
}

a:link {
	color : black
}

a:visited {
	color : #000;
}

a:hover {
	color: #B1663C;
}

#nav-login {
	color: #000;
	text-align: center;
	font-family: Work Sans;
	font-size: 16px;
	font-style: normal;
	font-weight: 600;
	line-height: normal;
}

#footer-login a:visited {
	color: #000;
}

#container-login {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap : 37px;
	margin-top: 155px;
}

#login-form {
	display: flex;
    flex-direction: column;
}

.container-login-label {
	display: flex;
	flex-direction: column;
}

label[for="password"], label[for="email"] {
	color: #3D3D3D;
	font-family: Work Sans;
	font-size: 14px;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
}

label[for="password"] {
	margin-bottom: 6px;
	margin-top: 30px;
}

label[for="email"] {
	margin-bottom: 7px;
}

#password, #email {
	width: 379px;
	height: 51px;
	flex-shrink: 0;
	border: transparent;
	background: #FFF;
	box-shadow: 0px 4px 14px 0px rgba(0, 0, 0, 0.09);
}


#lost-password {
	text-decoration:underline;
	color: #3D3D3D;
	font-family: Work Sans;
	font-size: 14px;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
	text-decoration-line: underline;
	margin-bottom: 355px ;
}

#footer-login  {
	margin: 0;
	padding: 0;
	background-color: #FFF;
	height: 60px;
	display: flex;
	justify-content: flex-end;
	align-items: center;
	width: 100%;
}

#footer-login a {
	color: #000;
	font-family: Work Sans;
	font-size: 14px;
	font-style: normal;
	font-weight: 300;
	line-height: normal;
}

/* CSS for Edition mode */ 

.edition-mod {
	display: none;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	gap: 21px;
	background-color: #000;
	width: 100%;
	height: 59px;
	top: 0;
	right: 0;
	left: 0;
	color: #FFF;
	text-align: center;
	font-family: Work Sans;
	font-size: 16px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;

  }
  

  .btn-edition {
	background-color: #FFF;
	max-width: 216px;
	color: #000;
	text-align: center;
	font-family: Work sans;
	font-size: 14px;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
	padding: 11px;
	border-radius : 60px; 
}

.data-active {
	color: white;
	background: #1D6154;
}

.btn-modify, .btn-edit-modal {
	display: flex;
	background: transparent;
	border: none;
	cursor: pointer;
}

.btn-modify:before{ 
	content: "\f044";
	font-family: "Font Awesome 5 Free" ;
	font-size: 15px;
	font-weight: 200;
	padding-right: 10px;
	width: 15px;
	height: 15px;
}


  .row {
	display: flex;
	justify-content: center;
	align-items: baseline;
	gap : 31px;
  }

  /* Modal "Gallery */

  .modale {
	position:fixed ;
	background-color: #FFF;
	padding: 10px;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	max-width: 631px;
	border-radius: 10px;

  }

  .modale h2 {
	margin-bottom: 46px;
  }
  
  .obstructor {
	position: fixed;
	inset: 0;
	background-color: #00000066;
  }

  .title-modal-projects {
	color: #000;
	text-align: center;
	font-family: Work Sans;
	font-size: 26px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	margin-top: 60px;
  }

  .close-modale {
	position: absolute;
	cursor: pointer;
	background: transparent;
	border: none;
	width: 24px;
	height: 24px;
	flex-shrink: 0;
	right: 0;
	margin-right: 30px;
	margin-top: 26px;

  }

.modal-option {
	display: flex;
	justify-content: center;
	flex-direction: column;
	margin: auto;
	width: 60%;
	align-items: center;
	border-top: 1px solid #B3B3B3;
	margin-top: 27px;
}

.btn-add-modal {
	display: flex;
	justify-content: center;
	padding: 10px 49px 9px 49px;
	margin-top: 38px;
	cursor: pointer;
}

.btn-add-modal p {
	color: #D65353;
	text-align: center;
	font-family: Syne;
	font-size: 14px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	margin-bottom: 48px;
}

.suppr-gallery {
	color: #D65353;
	text-align: center;
	font-size: 14px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	cursor: pointer;
}

.gallery-modal {
	margin-left: 90px;
	margin-right: 90px;
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	color: #FFF;
	justify-content: flex-start;
}

.gallery-modal img {
	max-width: 78px;
	height: 105px;
}

.container-modal {
	display: flex;
	flex-direction: column;
	position: relative;
}

.btn-edit-modal {
	color: #000;
	text-align: center;
	font-family: Work Sans;
	font-size: 12px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	padding: 0;
}

.container-modal .garbageit {
	position: relative;
	bottom: 110px;
	left: 58px;
	width: 17px;
	height: 17px;
	background-color: #000000;
	cursor: pointer;
}

.container-modal .garbageit:before {
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	font-family: "Font Awesome 5 Free" ;
	content : "\f2ed";
	font-weight: 200;
	color : #FFF;
	font-size: 9px;
	top: 25%;
	left: 50%;
	transform: translateX(-50%);
}

.container-modal .moveit {
	display: none;
	position: absolute;
	bottom: 110px;
	left: 38px;
	width: 17px;
	height: 17px;
	background-color: #000000;
}

.container-modal:hover .moveit {
	display: flex;
	cursor: grab;
}


.container-modal .moveit:before {
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	font-family: "Font Awesome 5 Free" ;
	content : "\f047";
	font-weight: 900;
	color : #FFF;
	font-size: 9px;
	top: 25%;
	left: 50%;
	transform: translateX(-50%);
}


/* Modal "Add a photo" */

.modale-add {
	position:fixed ;
	background-color: #FFF;
	padding: 10px;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	display : flex;
	justify-content : flex-start;
	flex-direction : column;
	width : 630px;
	height: 670px;
	border-radius: 10px;
	flex-shrink: 0;
}

.btn-add-photo {
	border : none;
	margin-bottom : 7px;
  }

.title-modal-projects {
	margin-bottom : 36px;
}

.fa-arrow-left {
	content : "\f060";
	font-family: "Font Awesome 5 Free" ;
	font-size: 14px;
	font-weight: 800; 
	color: black;
	width: 21px;
	height: 21px;
	
	
}

.backtopreviousmodal {
	position: absolute;
	margin-left : 30px;
	margin-top: 26px;
	cursor: pointer;
	background: transparent;
	border: none;
	width: 24px;
	height: 24px;
	flex-shrink: 0;
	left: 0;
	margin-left: 30px;
	margin-top: 26px;
}

.bluerectangle {
	border-radius: 3px;
	background: #E8F1F6;
	width : 420px;
	height : 169px;
	display : flex;
	flex-direction : column;
	align-items : center;
}

label[for="image"] {
	cursor: pointer;
}

  svg {
	width: 58px;
	height: 58px;
	flex-shrink: 0;
	margin-bottom : 15px;
	margin-top: 22px;

  }
  
  .container-add-photo {
	display : flex;
	flex-direction : column;
	justify-content : center;
	align-items : center;
	margin-top : 36px;
  }
  
  .input-add-photo {
	width : 0;
	height : 0;
	opacity : 0;
  }
  

  #btn-add-photo {
	width: 173px;
	height: 36px;
	flex-shrink: 0;
	border-radius: 50px;
	background: #CBD6DC;
	padding : 10px 33px;
	border : none;
	color: #306685;
	text-align: center;
	font-family: Work Sans;
	font-size: 14px;
	font-style: normal;
	font-weight: 500;
	line-height: normal;
  }
  
  .container-option-photo {
	display : flex;
	flex-direction : column;
	justify-content : center;
  }
  
  #categorySelect, #title {
	display: flex;
	flex-direction : column;
	width: 420px;
	height: 51px;
	flex-shrink: 0;
	border-radius: 10px;
	background: #FFF;
	box-shadow: 0px 4px 14px 0px rgba(0, 0, 0, 0.09);
	margin: 0 auto;
  }


  #submitBtn:disabled {
	width: 237px;
	height: 36px;
	flex-shrink: 0;
	border-radius: 60px;
	background: #A7A7A7;
	color: #FFF;
	text-align: center;
	font-family: 'Syne';
	font-size: 14px;
	font-style: normal;
	font-weight: 700;
	line-height: normal;
	margin-top: 32px;
	border: none;
	cursor: not-allowed;
  }

#submitBtn {
	width: 237px;
	height: 36px;
	flex-shrink: 0;
	border-radius: 60px ;
	background-color: #1D6154;
	color: #FFF;
	text-align: center;
	font-family: 'Syne';
	font-size: 14px;
	font-weight: 700;
	cursor: pointer;
	font-size: 14px;
	font-style: normal;
	font-weight: 700;
	line-height: normal;
	margin-top: 32px;
	border: none;
	font-family: 'Syne';
	font-weight: 700;
	margin : 2em auto;
	margin-top: 32px;
}

label[for="title"] {
	margin-top: 30px;
    margin-bottom: 10px;
	margin-left: 95px;
}

label[for="category"] {
	margin-top: 21px;
	margin-bottom: 10px;
	margin-left: 95px;
}

option {
	color: #444444;
	font-family: Work Sans;
	font-size: 14px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	padding: 18px 16px 17px 16px;
}

.option-photo-input {
	color: #444444;
	font-family: Work Sans;
	font-size: 14px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	border: none;
	padding-top: 18px;
	padding-bottom: 17px;
	padding-left: 16px;
}

#categorySelect {
	border: none;
}

select[option]:checked {
	margin: 18px auto 17px 16px;
	color: #444444;
	font-family: Work Sans;
	font-size: 14px;
	font-style: normal;
	font-weight: 400;
	line-height: normal;
	padding: 18px 16px 17px 16px;
}

select[option]:focus,
select[container-option]:active {
	height: auto;
	margin: 18px auto 17px 16px;
  }

#imageStore {
	width: 129px ;
	height: 170px;
	object-fit: cover;
	cursor: pointer;
}

#info-file {
	margin-top: 7px;
	font-family: "work sans", sans-serif;
  }

.info-file-is-ok {
	background-color: #1D6154;
	color: #FFF;
	padding: 10px 10px;
	font-size: 14px;
	font-weight: 400;
	border-radius: 0;
  }

.info-file-is-not-ok {
	color: crimson;
	font-size: 14px;
	font-weight: 700;
	background: #ffffff;
	padding: 5px;
	border-radius: 5px;
	text-align: center;
  }

.dev-message {
	color: red;
	font-size: 14px;
	font-family: "work sans", sans-serif;
	text-align: center;
	background-color: white;
	border: 1px solid red;
	border-radius: 5px;
	padding: 5px 30px;
}

