/*
Theme Name: T2023
Author: Peter Kundrath
Version: 1.0
*/

:root {
	--col-txt: #333;
	--col-bg: #FFF;
	--col-brd: #BCBCBC;
	--col-1: #FF7F00;
	--col-2: #3E6733;
	--font: 'Merriweather';
	--font-2: 'Instrument Serif';
}

.bg-dark {
	--col-bg: #333;
	--col-txt: #FFF;
	--col-2: #FF7F00;
}
.bg-orange {
	--col-bg: #FF7F00;
	--col-1: #FFF;
	--col-2: #FFF;
}
.bg-green {
	--col-bg: #3E6733;
	--col-1: #FFF;
	--col-2: #FFF;
}

body {
	margin:0; padding:0; font-family:var(--font), sans-serif; color:var(--col-txt);
	background-color:var(--col-bg); font-weight:400; font-size:20px; line-height:1.25; min-height:100vh;
	min-width:20em; display:flex; flex-direction:column; align-items:center; justify-content:space-between; gap:2em;
}

header, main, footer { width:100%; }
main { line-height:1.75; flex:1 1; }

h1,h2,h3,h4,h5,h6 {
	line-height:1.25; margin-top:0; margin-bottom:.5em; padding:0; font-weight:400;
	font-family:var(--font-2); color:var(--col-2);
}
h1, .content-first .post-title { font-size:3em; margin-bottom:1em; font-family:var(--font); }
h2 { font-size:1.5em; }
h3 { font-size:1.25em; }
h4,h5,h6 { font-size:1em; }

a, h2 a, h3 a { color:inherit; text-decoration:none; }
main a { color:var(--col-1); }
main blockquote { color:var(--col-2) !important; border-left:.5em solid var(--col-1); padding-left:1em; }
main p:not(:empty), main blockquote, main figure { margin:0 0 2em; }
main p:last-child, main blockquote:last-child, main figure:last-child { margin:0; }
main a:hover { text-decoration:underline; }
ul, ol { margin:.5em 0 2em; padding:0 0 0 1em; }
ul { padding-left:1.5em; }
ul:last-child, ol:last-child { margin-bottom:0; }
li { padding-left:.5em; }
li:not(:last-child) { padding-bottom:.5em; }
ol > li:not(:last-child) { padding-bottom:2em; }
ol { padding-left:2em; }
ol > li::marker {
	font-size:2em; color:var(--col-2); line-height:1; margin-bottom:-.5em; 
}

img, iframe { max-width:100% !important; }
img { height:auto; vertical-align:top; }

.aligncenter { margin:0 auto; display:block; }
.alignleft { float:left; margin-right:.5em; margin-bottom:.5em; }
.alignright { float:right; margin-left:.5em; margin-bottom:.5em; }

input:not([type=hidden]),select,textarea,button,.multiselect {
	display:inline-block; font-family:inherit; font-size:inherit; color:inherit; padding:.25em .5em;
	border: 1px solid var(--col-brd); background:var(--col-bg); line-height:inherit; width:100%; max-width:25em;
}
input[type=submit],button { cursor:pointer; width:auto; }

.hidden { display:none !important; }

.screen-reader-text { display:none; }

* { box-sizing:border-box; }

#body { margin:0; }

.ico-menu { display:block; width:calc(1em - 4px); height:4px; margin:calc(.5em - 2px) 0; position:relative;  }
.ico-menu:before, .ico-menu:after { content:''; position:absolute; left:-2px; width:100%; }
.ico-menu, .ico-menu:before, .ico-menu:after { border:2px solid; transition:all .2s ease; }
.ico-menu:before { top:-.375em; }
.ico-menu:after { bottom:-.375em; }
.open .ico-menu { transform:rotate(45deg); }
.open .ico-menu:before { top:-2px; }
.open .ico-menu:after { transform:rotate(-90deg); bottom:-2px; }

#searchform { position:relative; margin:0 0 0 auto; padding:0; }
#searchform button {
	position:absolute; top:0; right:0; border:0; padding:0 0 .125em; font-size:2rem; width:1.25em; line-height:1.125;
	text-align:center; background:var(--col-bg); border-radius:.375rem; color:var(--col-1);
}
#searchform input {
	display:block; height:2.5rem; line-height:2.5rem; background:var(--col-bg); border:0; margin:0 0 0 auto;
	padding:0 2.5rem 0 .5rem; width:5em; border-radius:.375rem;
}
#searchform input:focus { width:15em; outline:0; margin-left:-10em; }

.cw { max-width:62.5rem; margin:0 auto; padding:0 .5em; }
@media (min-width:62.5em) {
	.fw { margin-left:calc(31.25rem - 50vw); margin-right:calc(31.25rem - 50vw); }
}

@font-face {
  font-family: 'icons'; src: url('assets/icons.woff') format('woff');
  font-weight: normal; font-style: normal;
}

.ico {
  font-family: 'icons' !important; font-style: normal; font-weight: normal; font-variant: normal;
  text-transform:none; display:inline-block; vertical-align:top;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}

.ico-search:before {
  content:"\e908";
}

ul.nav, .nav ul, .nav li { margin:0; padding:0; list-style:none; line-height:1.25; }

article::before, article:after, .frame:before, .frame:after { content:''; clear:both; display:table; }

header { padding-top:4rem; }
.head-1 .cw, .head-2 .nav { display:flex; align-items:center; justify-content:center; min-height:4rem; }
.head-1 { position:fixed; top:0; left:0; z-index:100; width:100%; background:var(--col-txt); }
.head-1 .cw { justify-content:space-between; position:relative; gap:.5rem 1.5rem; }
.head-1 .logo img { width:12em; }
.head-1 .logo { flex:1 1; }
body.bg-white .logo { filter:grayscale(1) brightness(0) invert(1); }
.head-1 .nav { position:absolute; top:calc(100% + 1px); right:0; background:var(--col-bg); color:var(--col-2); border:1px solid; min-width:200px; }
header:not(.open) .head-1 .nav { display:none; }
.head-1 .nav a { padding:.5em 1em; display:block; }
.head-1 + .head-2 { margin-top:1em; }
.head-2 { border-top:3px solid var(--col-2); border-bottom:3px solid var(--col-2); text-transform:uppercase; }
.head-2 .nav li { display:flex; align-items:center; }
.head-2 .nav li:not(:last-child)::after { content:'\2022'; color:var(--col-2); font-size:2em; }
.head-2 .nav a { padding:.25em .5em; display:block; color:var(--col-2); text-align:center; }
@media (min-width:40em) {
	.head-2 { font-size:1.25em; }
}

.navbar-toggle { 
	display:inline-block; font-size:2rem; color:var(--col-2); background:var(--col-bg);
	padding:.125em .25em; border-radius:.375rem;
}

footer { background:var(--col-txt); color:var(--col-bg); }
footer .cw {
	font-size:.875em; display:flex; align-items:center; justify-content:space-between; min-height:2rem; gap:.5em 4em; padding:1em .5em;
}
footer .copy { text-align:center; }
footer .nav { display:flex; justify-content:center; align-items:center; }
footer .nav li { display:flex; align-items:center; }
footer .nav li:not(:last-child)::after { content:'|'; color:var(--col-2); }
footer .nav a { padding:.25em .5em; display:block; color:inherit; text-align:center; }
@media (max-width:50em) {
	footer .cw { flex-direction:column-reverse; justify-content:center; }
	footer .nav { flex-wrap:wrap; }
}

section, article { position:relative; }

main .wp-block-image:not(:last-child) { margin-bottom:2rem; }
main .wp-block-pullquote { margin:0 0 2rem; text-align:left; padding:0; }
main .wp-block-pullquote p { font-size:1.5em; }

.frame { border:2px solid var(--col-2); padding:.5em; margin-bottom:2em; }
.frame.fill { background:var(--col-2); }

.load-more:after { content:''; display:block; clear:both; }
.load-more { margin-bottom:2rem; }
.load-more a { margin:.5em 0; font-weight:inherit; padding:0 .5em .1em; }
a.load-prev { float:left; }
a.load-next { float:right; }

.post-title-sup { 
	text-transform:uppercase; color:var(--col-1); background:none; border:1px solid; padding:.125em .5em 0; display:inline-block;
	margin-bottom:.5em;
}
.post-image { text-align:center; }
.post-image img { display:block; object-fit:contain; margin:1em auto; max-height:30rem; }
.post-author { margin:-1.5em 0 1.5em; color:var(--col-1); font-size:.875em; }
.post-date { margin:-.5em 0 .5em; font-size:.875em; }
.post-desc p { margin-bottom:1em; }

.list-item { padding:1rem; margin:2em .5em 4em; background:var(--col-bg); color:var(--col-txt); position:relative; }
.list-item.bg-white { padding:0 1rem; }
.list-item:not(:last-of-type)::after {
	position:absolute; bottom:-2.5em; left:12.5%; z-index:1; content:''; width:75%; height:1em;
	background:url(assets/vonalzo-bg.svg) repeat-x top center; background-size:contain;
}
.list-item h2 a { color:inherit; text-decoration:none !important; }

.content-body h2, .content-body h3 { margin-top:1.5em; }

.content-first .post-desc { border-left:.5em solid var(--col-2); padding-left:.5em; margin-top:3em; }
.content-other .post-image img { width:20rem; max-height:15rem; }
.content-body { max-width:50rem; margin:0 auto; }

@media (min-width:50em) {
	.content-first .post-desc { margin-left:22em; }
  .content-other .list-item.thumb { padding-left:22rem; position:relative; min-height:17rem; }
	.content-other .list-item.thumb.bg-white { min-height:15rem; }
	.content-other .post-image { position:absolute; top:1rem; left:1rem; }
	.content-other .list-item.bg-white .post-image { top:0; }
	.content-other .post-image img { margin:0; }
}

figure { margin:0; }
figcaption { text-align:center; font-style:italic; font-size:.875em; }

.widget ~ .widget { margin-top:2em; }

@media (max-width:62.49em) {
	header nav .text span { display:block; }
	header nav .text span:last-child { font-size:.75em; line-height:1.125; }
}

@media (max-width:49.99em) {
	h1, .content-first .post-title { font-size:2em; }
	main .wp-block-pullquote p { font-size:1.25em; }
	.frame { padding:1em; }
}

@media (max-width:34.99em) {
	header nav .mark:not(.nav-more) { display:none; }
}