body 

{
	font-family:lato, sans-serif;
	font-size:.95em;
	font-weight:500;
	line-height:1.48;	
	padding:0;
	margin:0;
}

*
{
	box-sizing:border-box;
}

.open_menu
{
	position:fixed;
	top:0;
	right:0;
	margin:10px;
	z-index:150;
}
.close_menu
{
	position:fixed;
	top:0;
	right:0;
	margin:10px;
	display:none;
	z-index:150;
}

.close_menu:hover, .open_menu:hover

{
	cursor:pointer;
}
#menu
{
	width:100vw;
	height:100vh;
	display:none;
	position:fixed;
	top:0;
	left:0;
	background:#fff;
	z-index:100;
}

#innermenu
{
	
	display:flex;
	align-items:center;
	flex-direction:column;
	justify-content:center;width:100vw;
	height:100vh;
		font-family:raleway;

	font-size:1.25em;
}

#innermenu a, #innermenu a:visited
{
	color:#333;
}
#innermenu a:hover
{
	color:#ededff;
}

#loading

{
	position:fixed;
	top:0;
	left:0;
	height:100vh;
	width:100vw;
	background:#fff;
	z-index:250;
}

.main

{
	padding:0rem;
	margin:0;
}

a, a:visited
{
	text-decoration:none;
	color:#1212ff;
	transition:.2s;
}

a:hover
{
	color:#ededff;
	transition:.2s;
}
header
{
	padding:4rem 3rem 3rem 3rem;
}

h1
{
	font-family:raleway;
	font-weight:800;
	text-transform:none;
	text-align:center;
}

h2 {
	text-align:center;
padding: 2rem;}

img

{
	width:100%;
	padding:1rem 0;
}
footer

{
    text-align: center;
    padding: 2rem;
	margin:2rem 0 0 0;
    background: #1552ff;
    color:#fff;
}


section

{
	width:50%;
	border:2px solid red;
	margin:0 auto;
}

.medium
{
	width:25%;
	margin:0 auto;
}

.medium2
{
	width:75%;
	margin:0 auto;
}
@media (min-width:768px) {section  { width:65%;margin:0 auto;}}
@media (max-width:768px) {.medium2, .medium  { width:100%;margin:0 auto;}}

.caption
{
	text-align:center;
	font-size:.9em;
	font-weight:600;
	color:#444;
}


picture
{
  display: flex;
  position:relative;
}
.grid_picture

{
  display: grid;
  grid-gap: 1rem;
  max-width: 72rem;
  margin:0 auto;
  grid-template-columns: repeat(auto-fit, minmax(15rem, 1fr));
  grid-auto-rows: 5rem;
  padding:1rem;
}

@media (max-width:560px) {
	.grid_picture
{
  display: grid;
  grid-gap: 1rem;
  max-width: 72rem;
  margin:0 auto;
  grid-template-columns: repeat(auto-fit, minmax(7.5rem, 1fr));
  grid-auto-rows: 2.5rem;
  padding:1rem;
}

}
  img {
    width:100%;
    height:100%;
    align-self:start;
    object-fit:cover;
	transition:.2s;
	margin:0;
	padding:0;
  }
  
.square-size

{
	    grid-row:span 3;

}
  
  .high-size
  {
    grid-column: span 2;
    grid-row: span 3;
  }
  
  .medium-size
  {	
  grid-column: span 1;
    grid-row: span 3;
  }
  
  .low-size
  {
    grid-row:span 3;
  }
  
nav
{
display:flex;
margin: 0 0 1rem 0;
	display:none;
}

.nav{

	text-align:center;
	color:#fff;
	flex:0 0 auto;
	flex:0 0 15%;
	flex:0 0 auto;
}	

@media (max-width:1200px) {.nav{flex:0 0 auto;}}

.logo
{
	
	background:#ff4676;	
	background:#ff4676;
	text-align:center;
	display:flex;
	align-items:center;
	justify-content:center;
	border:1px solid #fff;
	color:#fff;
	text-transform:lowercase;
	font-size:.95em;
	letter-spacing:0.05em;
	font-weight:700;
	transition:0.2s;	
max-height:55px;
padding-top:5px;
}

.logo a, .logo a:visited
{
	width:50px;
	padding:1rem;
}
.logo a svg, .logo a:visited svg
{
	fill:#fff;
}

.logo a:hover svg

{
	fill:#ff4676;
}
.logo a:hover
{
		fill:#ff4676;
		background:#fff;
		color:#ff4676;
		margin-top:-2px;
}

.limit
{

	flex:auto;
	background:#ff4676;
	border:1px solid #fff;
}
.nav a, .nav a:visited{
	padding:1rem;	
	background:#ff4676;	
	background:#ff4676;

	text-align:center;
	display:flex;
	align-items:center;
	justify-content:center;
	border:1px solid #fff;
	color:#fff;
	text-transform:lowercase;
	font-size:.95em;
	letter-spacing:0.05em;
	font-weight:700;
	transition:0.2s;	

}	


.nav a:hover
{
	background:#fff;
	color:#ff4676;
	transition:0.2s;
}




.grid2
{
	display: grid;
  grid-gap: 1rem;
  max-width: 72rem;
  margin:0 auto;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-auto-rows: 5rem;
  padding:0rem;
}

.grid_big

{
	grid-column: span 3;
	grid-row: span 3;
}

.grid_small

{
	grid-column: span 1;
	grid-row: span 3;
}

.hover
{
position:absolute;
display:flex;
justify-content:center;
align-items:center;
height:100%;
width:100%;
opacity:0;
color:#fff;
	transition:.2s;
}

.low-size:hover .hover
{
	opacity:1;
	transition:.2s;
background:#3865FF;
}