@charset "UTF-8";

/* WORDPRESS *//*=======================*/
/*
Theme Name: Helm
Theme URL: http://www.helmgrafik.ch/
Description: Template für Yvonne Helm
Author: Agedo Gmbh // Florian Nyffenegger
Version: 1.0
*/

/* RESET *//*=======================*/

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

article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section { 
    display:block;
}

blockquote, q {
    quotes:none;
}

blockquote:before, blockquote:after,
q:before, q:after {
    content:'';
    content:none;
}

/* ELEMENTS *//*=======================*/

body {
	font-family: "Helvetica Neue LT W05 45 Light", "HelveticaNeue-Light", "Helvetica Neue Light", "Helvetica Neue", Helvetica, Arial, "Lucida Grande", sans-serif;
	background-color: #FFFFFF;
	min-height: 100%;
}

#site {
	max-width: 60em; /* 960px @16 */
	min-height: 100%;
	margin: 0 auto; /* customizer */
	padding:	1em;
	
	/* border:  1px dotted black; /*debug*/ 
}

header {
}

#logo {
	max-width: 11rem;
	padding: 1em;
}

#logo img {
	width: 100%;
	height: auto;
}

footer {
	text-align:	center;
	color:	#333333;
	margin-top: 1em;
}

footer > aside {
	padding-top: 0.5em;
	padding-bottom:	0.5em;
	border-top:	1px solid #333333;
}

/*debug*/
#siteindicator {
	position: absolute;
	left:  0;
	top:  42px;
}

/* Navigation *//*=======================*/

nav {
	font-weight: 700; /* customizer */
	font-size: 120%;
	list-style:none;
	margin:-2em 0 2em 0;
}

nav a {
	display: block;
	float: right;
	padding: 0.25em 1em 0.25em 1em;
	color:darkslategrey; /* customizer */
	text-decoration:none;
}

nav a:hover {
	text-decoration: underline;
	color:darkred; /* customizer */
}

nav a.active {
	color:#000000;
}

nav .current-menu-item a {
	color:darkred; /* customizer */
}

nav ul {
    list-style:none;
}

/* Menu Button *//*======================*/
nav .menuBtn {
		display: none;
    height: 1em;
    /* width: 1em; */
    position: absolute;
    right: 2em;
    top: 1em;
}
nav .menuBtn > span {
  background-color: darkslategrey; /* customizer */
  border-radius: 1px;
  height: 2px;
  width: 100%;
  position: absolute;
  left: 50%;
  top: 50%;
  margin: -1px 0 0 -15px;
  -webkit-transition: height 100ms;
  transition: height 100ms;
}
nav .menuBtn > span:after,
nav .menuBtn > span:before {
  content: '';
  background-color: darkslategrey; /* customizer */
  border-radius: 1px;
  height: 2px;
  width: 100%;
  position: absolute;
  left: 50%;
  margin-left: -1em;
  -webkit-transition: all 200ms;
  transition: all 200ms;
}
nav .menuBtn > span:after {
  top: -7px;
}
nav .menuBtn > span:before {
  bottom: -7px;
}

/* Menu Button Animation *//*============*/

nav .menuBtn.act > span {
  height: 0;
}
nav .menuBtn.act > span:after,
nav .menuBtn.act > span:before {
  background-color: darkslategrey; /* customizer */
  top: 1px;
}
nav .menuBtn.act > span:after {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
nav .menuBtn.act > span:before {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
}


/* Tiles *//*============================*/

.grid-container {
	display:  grid;
	grid-template-columns: repeat(3, 1fr); /* customizer */
	gap: 1rem;

	/* grid-template-columns: repeat(auto-fill, 200px);
	justify-content: space-between;  /* use for fixed width items */

}

.card {
	min-width: 3rem;
	min-height: 2rem;
  
 	text-align: center;
  overflow: hidden;

  /* box-shadow: 2px 2px 3px 0px #999999; /**/

	/* border:  1px solid black; /*debug*/ 
}

.card a {
	display:  block;
	position: relative;
	text-decoration: none;
	background-color: #333333; /* customizer */
	opacity: 1;

	transition: opacity .5s ease;
}

.card a:hover {
	opacity: 0.75;
}

.card img {
	display: block;
   margin: 0 auto;
	width:  100%;
	height:  auto;

	transition: transform .5s ease;
}

.card:hover img {
	transform: scale(1.14);
}

.card span {
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;

	font-size: 1.5em;
	padding:  0.25em;
	color: #666666;  /* customizer */
	background-color: #333333; /* customizer */
	opacity: 0;

	transition: opacity .5s ease;
}

.card a:hover span {
	opacity: 0.9;
}


/* Formatting *//*=======================*/

p {
	
}

#content {
	padding:1.5em 1em 2em 1em;
}

h1, h2, h3 {
	margin-top:1.5em;
	/* margin-bottom:0.5em; */
	color:#666666; /* customizer */
}

h1:first-of-type, h2:first-of-type, h3:first-of-type {
	margin-top:0;
}

h1 {
	font-size:140%;
}

h2 {
	font-size:120%;
}

hr.wp-block-separator {
	margin-top:1.5em;
	margin-bottom:1.5em;
	border-top:  1px solid grey;
	border-bottom: none;
	width:  50%;
}

.wp-block-verse {
	color:#666666; /* customizer todo */
	font-weight: 700;
	margin-bottom: 1em;
}

#site #content .wp-block-button__link {
	border: 1px solid;
    padding: 0.167em 1.333em;
    margin-top:  1em;
}

.metaslider, .wp-block-responsive-lightbox-gallery {
	margin-top:  2em;
}

/* MOBILE *//*=======================*/

@media screen and (max-width: 960px) {
	
	/*
	.grid-container {
		grid-template-columns: repeat(2, 1fr);
	}
	*/
	
}

@media screen and (max-width: 700px) { /* 641px*/
	
	.grid-container {
		grid-template-columns: repeat(1, 1fr) !important;
	}

	nav .menuBtn {
		display: block;
	}

/* Menu must be named "Navigation" because WP does .menu-[$menuname]-container */
	nav .menu-navigation-container {
		position: absolute;
  	right: 0;
  	top: 3.6em;
  	background-color: #FFFFFF;
  	z-index: 42;

		opacity: 0;
		transition: all 500ms cubic-bezier(0.68, -0.55, 0.265, 1.55);
		transform: scale(0);

		box-shadow: 3px 5px 5px 0px #666666;
	}

	nav .menu-navigation-container.act {
		opacity: 1;
		transform: scale(1);
	}
	nav .menu-navigation-container.act ul li {
		opacity: 1;
		transform: translateX(0);
	}

	nav .menu-navigation-container a {
		float: none;
		padding: 0.5em 1em 0.5em 1em;
	}

}