@charset "UTF-8";
/*
Theme Name: D+S Tischlerei
Theme URI:
Author: Andreas Meier, Kentro Design
Author URI: http://www.kentro-design.de
Description: Kentro Design Basis-Gutenberg-Theme
Version: 1.0
Tags: white, black
Text Domain: dstischlerei

*/
/*! normalize.css v1.0.1 | MIT License | git.io/normalize */
/* @import url("https://fast.fonts.net/lt/1.css?apiType=css&c=834caab9-d20a-4002-9f7e-af32d35e8b8f&fontids=743023,743026,743029"); */ 
/* einbindung der linotype-links mit @import ergab einen unangenehmen FOUT: die navigationslinks erschienen kurz ungestylt in blau, bevor die seite dargestellt wurde */
/*
        This CSS resource incorporates links to font software which is the valuable copyrighted property of Monotype and/or its suppliers. You may not attempt to copy, install, redistribute, convert, modify or reverse engineer this font software. Please contact Monotype with any questions regarding Web Fonts:  https://www.linotype.com
*/
article, aside, details, figcaption, figure, footer, header, hgroup, nav, section, summary {
    display: block;
}

audio, canvas, video {
    display: inline-block;
    *display: inline;
    *zoom: 1;
}

audio:not([controls]) {
    display: none;
    height: 0;
}

[hidden] {
    display: none;
}

html {
    font-size: 100%;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
}

html, button, input, select, textarea {
    font-family: sans-serif;
}

body {
    margin: 0;
}

a:focus {
    outline: thin dotted;
}

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

abbr[title] {
    border-bottom: 1px dotted;
}

b, strong {
    font-weight: bold;
}

blockquote {
    margin: 1em 40px;
}

dfn {
    font-style: italic;
}

mark {
    background: #ff0;
    color: #000;
}

p, pre {
    margin: 1em 0;
}

code, kbd, pre, samp {
    font-family: monospace,serif;
    _font-family: 'courier new',monospace;
    font-size: 1em;
}

pre {
    white-space: pre;
    white-space: pre-wrap;
    word-wrap: break-word;
}

q {
    quotes: none;
}

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

small {
    font-size: 80%;
}

sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline;
}

sup {
    top: -0.5em;
}

sub {
    bottom: -0.25em;
}

dl, menu, ol, ul {
    margin: 1em 0;
}

dd {
    margin: 0 0 0 40px;
}

menu, ol, ul {
    padding: 0 0 0 40px;
}

nav ul, nav ol {
    list-style: none;
    list-style-image: none;
}

img {
    border: 0;
    -ms-interpolation-mode: bicubic;
}

svg:not(:root) {
    overflow: hidden;
}

figure {
    margin: 0;
}

form {
    margin: 0;
}

fieldset {
    border: 1px solid #c0c0c0;
    margin: 0 2px;
    padding: .35em .625em .75em;
}

legend {
    border: 0;
    padding: 0;
    white-space: normal;
    *margin-left: -7px;
}

button, input, select, textarea {
    font-size: 100%;
    margin: 0;
    vertical-align: baseline;
    *vertical-align: middle;
}

button, input {
    line-height: normal;
}

button, html input[type="button"], input[type="reset"], input[type="submit"] {
    -webkit-appearance: button;
    cursor: pointer;
    *overflow: visible;
}

button[disabled], input[disabled] {
    cursor: default;
}

input[type="checkbox"], input[type="radio"] {
    box-sizing: border-box;
    padding: 0;
    *height: 13px;
    *width: 13px;
}

input[type="search"] {
    -webkit-appearance: textfield;
    box-sizing: content-box;
}

input[type="search"]::-webkit-search-cancel-button, input[type="search"]::-webkit-search-decoration {
    -webkit-appearance: none;
}

button::-moz-focus-inner, input::-moz-focus-inner {
    border: 0;
    padding: 0;
}

textarea {
    overflow: auto;
    vertical-align: top;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}
    
 
 
 
    
/* ========================================================================== */
/* !0. FARBEN ---------------------------------------- */
/* ========================================================================== */

/* !Hauptfarben

	Typo
	#b3282c		rot				heads, strong, bullets
	#666		anthrazit		bodytext
	#fff		weiß			main nav
	#000		schwarz			links
	#f60		dunkelorange	buttons-hover
	
*/
    




/* ========================================================================== */
/* !0. FONTS UND ICONS ---------------------------------------- */
/* ========================================================================== */

@font-face{
    font-family:"RotisSansSerif";
    src:url("fonts/743023/a78ea274-2047-4fe1-bf7c-8b9c303a89d9.eot?#iefix");
    src:url("fonts/743023/a78ea274-2047-4fe1-bf7c-8b9c303a89d9.eot?#iefix") format("eot"),url("fonts/743023/ab0dbe10-e14c-4114-a36c-81f498110d3b.woff2") format("woff2"),url("fonts/743023/b811690f-c172-4bf5-89a9-70abcaacf324.woff") format("woff"),url("fonts/743023/e0cebd99-4f75-4c30-8954-9f6070e9625e.ttf") format("truetype");
    font-display: swap;
}
@font-face{
    font-family:"RotisSansSeriItalic";
    src:url("fonts/743026/4221ed90-99b9-4c54-8fa7-aa07af4ca79b.eot?#iefix");
    src:url("fonts/743026/4221ed90-99b9-4c54-8fa7-aa07af4ca79b.eot?#iefix") format("eot"),url("fonts/743026/def010c6-0657-49cb-87ca-b68bd8dd86c9.woff2") format("woff2"),url("fonts/743026/ad6cccfb-0236-438d-ad21-fbc021eef018.woff") format("woff"),url("fonts/743026/e23a7a1e-4ab9-4e05-af4d-76272410edf3.ttf") format("truetype");
    font-display: swap;
}
@font-face{
    font-family:"RotisSansSerifBold";
    src:url("fonts/743029/5674d94c-ceed-4ab0-bb91-2a08094f49b7.eot?#iefix");
    src:url("fonts/743029/5674d94c-ceed-4ab0-bb91-2a08094f49b7.eot?#iefix") format("eot"),url("fonts/743029/4bc0c94e-4540-41d8-af12-eb921b493d4f.woff2") format("woff2"),url("fonts/743029/69dfb4a1-a0ed-4805-9523-901448a8f8ae.woff") format("woff"),url("fonts/743029/cc35ff9e-589d-48dc-9650-24af3a6d7a64.ttf") format("truetype");
    font-display: swap;
}

/* icon-font */
@font-face {
    font-family: 'Entypo';
    src: url("fonts/entypo-kd-basic.eot");
    src: url("fonts/entypo-kd-basic.eot?#iefix") format("embedded-opentype"), url("fonts/entypo-kd-basic.woff") format("woff"), url("fonts/entypo-kd-basic.ttf") format("truetype");
    font-weight: normal;
    font-style: normal;
}

/* !icon fonts ---------------------------------------- */
[data-icon]:before {
    font-family: 'Entypo';
    color: #000;
    content: attr(data-icon);
    speak: none;
    font-size: 1em;
    font-weight: normal;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
}

.icon-alone {
    display: inline-block;
    /* Chrome 19 was weird with clickability without this */
}

a[href$=".pdf"]::before {
	font-size: 16px;
    font-size: 1rem;
    content: '\e622'; /* text document */
    color: #000;
    font-family: 'Entypo';
    padding-right: .5em;
    height: 60px;
    width: 60px;
}





/* ========================================================================== */
/* !0. ALLGEMEINE SEITENBEREICHE ---------------------------------------- */
/* ========================================================================== */
/* .site-header, */
.site-content,
.site-footer {
    display: flex;
    background-color: #fff;
    flex: 1 0 auto;
    padding: 2rem 0 2rem;
    width: 100%;
}

.site-content {
	background-color: transparent;
}

.site-header {
  	background: transparent;
	height: 100px;
	margin: 0 auto;
	position: fixed;
	top: 0;
/* 	transition: all 0.4s ease-in-out; */
	width: 100%;
	z-index: 9999;    
}

.site-banner {
	background-image: url('images/bg-massband.svg'),
		url('images/bg-nav.png'),
		url('images/bg-header-ladenbau-regale.jpg'),
		url('images/bg-footer.jpg');
	background-repeat: repeat-x,
		repeat-x,
		no-repeat,
		repeat-x;
	background-position: top left,
		top left,
		bottom center,
		top left;
	height: 340px;
	width: 100%;
}

.site-banner-high {
	background-image: url('images/bg-massband.svg'),
		url('images/bg-nav.png'),
		url('images/bg-header-ladenbau-regale-home.jpg'),
		url('images/bg-footer.jpg');
	background-repeat: repeat-x,
		repeat-x,
		no-repeat,
		repeat;
	background-position: top left,
		top left,
		bottom center,
		top left;
	height: 635px;
	width: 100%;
}

.site-footer {
    background-image: url('images/bg-massband.svg'),
		url('images/bg-footer.jpg');
	background-repeat: repeat-x,
		repeat;
    padding: 3em 0 1em;
}

.site-header::after,
.site-content::after,
.site-footer::after {
    content: " ";
    display: block;
    height: 0;
    margin-top: 1.5em;
    visibility: hidden;
}

.container {
    margin-right: auto;
    margin-left: auto;
    width: 75rem;
}

.row {
    display: flex;
    flex: 0 1 auto;
    flex-direction: row;
    flex-wrap: wrap;
    padding-left: -1rem;
    padding-right: -1rem;
}

.center {
    justify-content: center;
    text-align: center;
}

.middle {
    align-items: center;
}

.bottom {
    align-items: flex-end;
}

.around {
    justify-content: space-around;
}

.between {
    justify-content: space-between;
}

.first {
    order: -1;
}

.last {
    order: 1;
}
    




/* ========================================================================== */
/* !1. BASIC CONTAINERS ---------------------------------------- */
/* ========================================================================== */
.row {
    margin-bottom: 1em;
}

.header-wrap,
.content-wrap,
.footer-wrap {
    padding: 0 1em;
}

.main-wrap {
    flex: 0 0 auto;
    flex-basis: 100%;
    max-width: 100%;
}

.container > header,
.container > footer {
    display: flex;
    flex: 0 1 auto;
}

.main,
.main-with-sidebar {
    display: flex;
}

.main-with-sidebar article {
	flex-basis: 73.25%;
    max-width: 73.25%;
    padding-right: 10%;
}

.main-with-sidebar aside {
    flex-basis: 26.654%; /* den selben wert auch bei aside als width angegeben > sonst ist die spalte immer nur so breit wie der content! */
    max-width: 26.654%;
}

.footer-wrap {
    display: flex;
    flex-wrap: wrap;
}
    




/* ========================================================================== */
/* !2. GENERAL HTML TAGS                     ---------------------------------------- */
/* ========================================================================== */
*,
*::after,
*::before {
    box-sizing: border-box;
}

body {
    background-color: #fff;
    color: #666;
    font-family: "RotisSansSerif", Arial, sans-serif;
    font-weight: normal;
    -webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
    height: 100%;
    text-rendering: optimizeLegibility;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    color: #b3282c;
    font-size: 21px;
    font-size: 1.3125rem;
    font-family: "RotisSansSerif", Arial, sans-serif;
    font-weight: normal;
    line-height: 1.3;
    margin: 2em 0 .5em;
    word-wrap: break-word;
}

h1 {
    font-size: 38px;
    font-size: 2.375rem;
    hyphens: none;
    line-height: 1.2;
    margin-bottom: 1em;
    margin-top: 0;
}

h2 {
    font-size: 28px;
    font-size: 1.75rem;
    margin-bottom: .5em;
}

h1 + h2 {
    margin-top: 0;
}

h2 + h3 {
    margin-top: 1em;
}

.content h2:first-of-type {
	margin-top: 0;
}

h3 {
    font-size: 24px;
    font-size: 1.5rem;
    margin-bottom: .3125em;
    margin-top: 2em;
}

h4,
h5,
h6 {
	font-size: 18px;
    font-size: 1.125rem;
}

h4 {
    margin-bottom: .2em;
    margin-top: 1.5em;
}

h5,
h6 {
    margin-bottom: 0;
    margin-top: 1.25em;
}

h1 a,
h2 a,
h3 a,
h4 a,
h5 a,
h6 a,
h1 a:hover,
h2 a:hover,
h3 a:hover,
h4 a:hover,
h5 a:hover,
h6 a:hover,
h1 a:visited,
h2 a:visited,
h3 a:visited,
h4 a:visited,
h5 a:visited,
h6 a:visited {
    background: transparent;
    border-bottom: none;
    color: #b3282c;
    text-decoration: none;
}

p,
ul,
ol {
  font-size: 21px;
  font-size: 1.3125rem;
  -webkit-hyphens: auto;
  -ms-hyphens: auto;
  hyphens: auto;
  line-height: 1.4;
  margin: 0 0 1em;
}

p:empty {
    display: none;
}

strong {
    color: #b3282c;
    font-family: "RotisSansSerifBold", Arial, sans-serif;
    font-weight: normal;
}

em {
    color: #333;
    font-family: "RotisSansSerifItalic", Arial, sans-serif;
    font-style: italic;
    font-weight: normal;
}

blockquote {
    font-family: "RotisSansSerifItalic", Arial, sans-serif;
    font-style: italic;
    font-weight: normal;
    margin: 0 2em;
}
    
blockquote p {
	line-height: 1.4;
}

ul,
ol,
dl,
menu {
    margin-left: 0;
    padding-left: 0;
}

ul li,
ol li {
    padding-bottom: .5em;
    padding-left: 1.2em;
}

ul li ul,
ol li ol,
ul li ol,
ol li ul {
	margin-bottom: 0;
	padding-bottom: 0;
	padding-top: .5em;
}

ul li:before {
	font-size: 16px;
	font-size: 1rem;
	color: #b3282c;
	content: "";
	display: inline-block;
	font-family: "Entypo";
	font-weight: normal;
	margin-left: -1.5em;
	speak: none;
	vertical-align: -10%;
	width: 1.5em;
	/*same as padding-left set on li*/
	-webkit-font-smoothing: antialiased;
}

ol {
    list-style-position: inside;
}
    
ol li {
    text-indent: -1.2em;
    margin-left: .8em;
}

ul li {
    list-style-type: none;
}

dt {
    font-style: bold;
}

dd {
    font-style: italic;
    margin-left: 0;
    padding-left: 0;
}

sup {
    font-size: .65em;
}

address {
    font-style: normal;
}

table {
    border-collapse: collapse;
    border-spacing: 5px;
    color: #333;
    margin: 2em 0;
}

tr:nth-child(odd) {
    background-color: #ececec;
}

tr:nth-child(even) {
    background-color: #fafafa;
}

td,
th {
    border-top: 1px solid #333;
    padding-left: 0;
    text-align: left;
    vertical-align: top;
}

td {
    border-right: 0.5em solid #fff;
    padding: .3em .5em;
}

tr:last-of-type {
	border-bottom: 1px solid #333;
}

th {
    border-right: 0.3125em solid #fff;
    color: #333;
    padding: .2em .5em;
}
    
th.sub {
    font-weight: normal;
}

th.left,
td.left {
    padding-left: .625em;
    text-align: left;
}

fieldset {
    background-color: #fff;
}

legend {
    padding-top: 2em;
}

form label {
    cursor: pointer;
    display: block;
    margin: 1.25em 0 -0.625em;
}

textarea,
input,
select {
    font-size: 16px;
    font-size: 1rem;
    background: #fff;
    border: #ccc solid 1px;
    border-radius: .4em;
    box-shadow: inset 1px 1px 3px rgba(0, 0, 0, 0.3);
    color: #333;
    font-family: "RotisSansSerif", Arial, sans-serif;
    padding: .15em .3em .05em;
}

input#reset,
input#submit {
    background: none;
    margin: 1.25em 1.25em 0 0;
    width: auto;
}

select {
    font-size: 16px;
    font-size: 1rem;
    padding: .3em 0 .3em .5em;
}

optgroup {
    font-style: normal;
}

input[type="radio"],
input[type="checkbox"] {
    margin-right: .3125em;
}

img {
    font-size: 12px;
    font-size: 0.75rem;
    border: none;
    float: left;
    margin: .3125em 0 1.5625em;
    max-width: 100%;
    height: auto;
}

abbr[title] {
    cursor: help;
    display: inline-block;
    line-height: 1;
    padding-bottom: 1px;
}

a {
    border-bottom: 1px solid #000;
    color: #000;
    -webkit-hyphens: none;
    -ms-hyphens: none;
    hyphens: none;
    line-height: 1;
    text-decoration: none;
/*     transition: all 0.3s ease-in-out; */
}
    
a:visited,
a:hover,
a:active {
	border-bottom: none;
	text-decoration: none;
}

a:visited {
	border-bottom: 1px solid #666;
	color: #666;
}
    
a:hover {
	border-bottom: 1px solid #b3282c;
	color: #b3282c;
}

a:active {
	
}

a[href^="mailto:"] {
    -webkit-hyphens: auto;
    -ms-hyphens: auto;
    hyphens: auto;
}

a[href^="tel:"] {
    border-bottom: none;
}

a.thumb,
a.inline {
    display: inline;
}

a img {
    border: none;
}

a.svg-item:after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}

a.svg-item {
    border-bottom: none;
}

::-moz-selection {
    background: #fdecd9;
    /* Auswahlfarbe Safari */
}

::selection {
    background: #fdecd9
};
    /* Auswahlfarbe Safari */
}

::-moz-selection {
    background: #fdecd9
};
    /* Auswahlfarbe Firefox */
}

.screen-reader-text {
    position: absolute;
    top: -9999px;
    left: -9999px;
}

.icon-alone {
    display: inline-block;
}

a.icon-alone:hover,
a.icon-alone:hover {
    border-bottom: none;
}

object {
    width: 100%;
}





/* ========================================================================== */
/* !3. CUSTOM CLASSES ---------------------------------------- */
/* ========================================================================== */

.small {
    font-size: 12px;
    font-size: 0.75rem;
}

.box {
    background-color: #fdecd9;
}

.padded {
    padding: 1em;
}

.left {
    float: left;
}

.right {
    float: right;
}

.inline {
    display: inline;
}

.first {
    margin-top: 0;
    padding-top: 0;
}

.tight {
    margin-bottom: 0;
}

.tighter {
    margin-bottom: .3125em;
}

.topspace-1 {
    margin-top: 0.625em;
}

.topspace-2 {
    margin-top: 1.5em;
}

.topspace-3 {
    margin-top: 2em;
}

.topspace-4 {
    margin-top: 3em;
}

.bottomspace-1 {
    margin-bottom: 0.625em;
}

.bottomspace-2 {
    margin-bottom: 1.5em;
}

.bottomspace-3 {
    margin-bottom: 2em;
}

.bottomspace-4 {
    margin-bottom: 3em;
}


/* !breadcrumb ---------------------------------------- */
.breadcrumb {
    
}

.breadcrumb p {
    font-size: 15px;
    font-size: 0.9375rem;
    color: #999;
    -webkit-hyphens: none;
    -ms-hyphens: none;
    hyphens: none;
    margin-bottom: .5em;
}

.breadcrumb span {
    color: #999;
    font-size: 1em;
}

.breadcrumb span[data-icon] {
    vertical-align: -10%;
}

.breadcrumb span[data-icon]:before {
    color: #aaa;
}

.breadcrumb a {
    border-bottom: 1px solid #fff;
    color: #888;
    padding-bottom: .1em;
}

.breadcrumb a:hover {
    border-bottom: 1px solid #888;
}

.breadcrumb .current {
    color: #888;
}

span.separator {
/*
    margin-left: .2em;
    margin-right: .2em;
*/
}

span.separator::before {
    font-size: 10px;
    font-size: 0.625rem;
    content: '\e605'; /* chevron small right */
    color: #888;
    font-family: 'Entypo';
    height: 60px;
    width: 60px;
}



    

/* ========================================================================== */
/* !4. HEADER                     ---------------------------------------- */
/* ========================================================================== */

/* !Wrapper-Lösung für Sticky Footer bei wenig Content -------------------- */

.wrapper {
	min-height: 100vH;
    display: flex;
    flex-direction: column;
}

.site-header,
.site-banner,
.site-footer {
	flex-shrink: 0;
	flex-grow: 0;
}

.site-content {
	flex: 1;
}
/* Ende Wrapper-Lösung für Sticky Footer bei wenig Content -------------------- */

.site-header .row {
/*     display: block; */
    position: relative;
}

.logo {
	position: absolute;
	top: 0;
	left: 0;
	
	display: flex;
	align-items: center;
	justify-content: center;
	
	background-color: rgba(255, 255, 255, 0.6);
	box-shadow: 0 5px 10px rgba(0, 0, 0, 0.5);;
	height: 162px;
	transition: all 0.3s ease-in-out;
	width: 154px;
}

.logo object {
	transition: all 0.3s ease-in-out;
	width: 98px;
}

.sb-search {
    height: 30px;
    min-width: 30px;
    overflow: hidden;
    position: absolute;
    top: 37px;
    right: 1em;
    transition: all 0.3s ease-in-out;
    -webkit-backface-visibility: hidden;
    width: 0%;
}

.sb-search-input {
    font-size: 16px;
    font-size: 1rem;
    background: transparent;
    border: none;
    box-shadow: none;
    color: #fff;
    font-family: inherit;
    height: 30px;
    margin: 0;
    outline: none;
    padding: 5px 40px 5px 10px;
    position: absolute;
    right: 0;
    top: 0;
    width: 100%;
    z-index: 10;
}

.sb-search-input::-webkit-input-placeholder {
    color: #fff;
}

.sb-search-input:-moz-placeholder {
    color: #fff;
}

.sb-search-input::-moz-placeholder {
    color: #fff;
}

.sb-search-input:-ms-input-placeholder {
    color: #fff;
}

.sb-icon-search,
.sb-search-submit {
    cursor: pointer;
    display: block;
    height: 30px;
    line-height: 30px;
    margin: 0;
    padding: 0;
    position: absolute;
    right: 0;
    text-align: center;
    top: 0;
    width: 30px;
}

.sb-search-submit {
    background: #fff;
    /* IE needs this */
    border: none;
    color: transparent;
    opacity: 0;
    outline: none;
    z-index: -1;
}

.sb-icon-search {
    font-size: 22px;
    font-size: 1.375rem;
    background: transparent;
    color: #fff;
    font-family: 'Entypo';
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    speak: none;
    text-transform: none;
    transition: all 0.3s ease-in-out;
    -webkit-font-smoothing: antialiased;
    z-index: 90;
}

.sb-icon-search:hover {
	color: #fff;
}

.sb-icon-search:before {
    content: '\e61a'; /* lupe */
}

/* Open state */
.sb-search.sb-search-open,
.no-js .sb-search {
/*     border: 1px solid #ccc; */
    width: 200px;
}

.sb-search.sb-search-open .sb-search-input {
    background-color: rgba(83, 71, 64, 1);
    border: 1px solid #fff;
}

.sb-search.sb-search-open .sb-search-input::placeholder {
	color: #fff;
	opacity: .3;
}

.sb-search.sb-search-open .sb-icon-search,
.no-js .sb-search .sb-icon-search {
    background: transparent;
    color: #fff;
    z-index: 11;
}

.sb-search.sb-search-open .sb-search-submit,
.no-js .sb-search .sb-search-submit {
    z-index: 90;
}

/* sticky header */
.site-header.sticky {
	background-color: rgba(83, 71, 64, 1);
	height: 60px; 
	position: fixed;
}

.site-header.sticky .logo {
	position: absolute;
	left: 0;
	background: #fff;
	height: 99px;
	width: 90px;
}

.site-header.sticky .logo object {
	width: 57px;
}

.site-header.sticky .nav-wrap {
	top: 0;
}

.site-header.sticky ul.nav > li {
	padding-top: 0;
}

.site-header.sticky .sub-menu {
    background-color: rgba(83, 71, 64, 1);
}

.site-header.sticky .sb-search {
	top: 15px;
}






/* ========================================================================== */
/* !5. NAVIGATION                        ---------------------------------------- */
/* ========================================================================== */

/* smartphone-menu */
/* menu icon, wird dynamisch per js eingefügt */
#menu-icon {
    display: none;
}

ul.widget {
    margin-top: 0;
}

/* main navigation */
.nav-wrap {
    position: absolute;
    top: 11px;
    right: 70px;
    transition: top 0.3s ease-in-out;
}

.nav-wrap ul {
    font-size: 19px;
    font-size: 1.1875rem;
    line-height: 1.2;
}

ul.nav > li {
    display: inline-block;
    float: left;
    padding: .5em 1em;
    position: relative;
}

ul.nav li:before {
	content: '';
	display: none;
}

ul.nav a {
    border-bottom: 1px solid transparent;
    color: #fff;
    padding-bottom: 3px;
    transition: border-bottom 0.3s ease-in-out;
/*     text-transform: uppercase; */
}

ul.nav > li > a {
	
}

ul.nav > li:last-of-type > a {
    padding-right: 0;
}

.nav-main a:focus,
.nav-main .current-page-item > a,
.nav-main .current-page-ancestor > a {
    color: #fff;
}

.nav-main li:hover > a,
.nav-main .current-page-item > a:hover,
.nav-main .current-page-ancestor > a:hover {
    border-bottom: 1px solid #fff;
}

.nav-main .current-menu-item > a,
.nav-main .current-page-ancestor > a,
.nav-main .current-menu-item > a:hover,
.nav-main .current-page-ancestor > a:hover,
ul.nav a:hover {
    border-bottom: 1px solid #fff;
    color: #fff;
    font-weight: normal;
}

.sub-menu {
    background-color: rgba(83, 71, 64, 0.8);
    border-left: 1px solid #fff;
    left: -1px;
    opacity: 0;
    padding-bottom: .7em;
    position: absolute;
/*     transition: opacity 0.4s ease-in; */
    top: 2.1em;
    width: 240px;
    z-index: -1;
}

ul.nav li:hover .sub-menu {
    opacity: 1;
    z-index: 1;
}

.sub-menu li {
    padding: .2em .5em .2em 1em;
}

.sub-menu li a {
    color: #fff;
    padding: 0;
}

/* styling für webkit placeholder */
::-webkit-input-placeholder {
    color: #333;
}





/* ========================================================================== */
/* !6. CONTENT ---------------------------------------- */
/* ========================================================================== */


.container-main {
	margin-top: 2em;
	position: relative;
}

.hauptspalte {
	/* nur für seitenspalten-layout. klasse wird dann über gutenberg-block zugewiesen */
/* 	background-color: aqua; */
	-webkit-box-flex: 1;
    flex: 1 0 auto;
}

.hauptspalte ul li,
.seitenspalte ul li {

}

article {
    margin-bottom: 1.5em;
    width: 100%;
}

p + p.searchresultlink {
	margin-bottom: 2.5em;
	margin-top: -1em;
}


/* ========================================================================== */
/* !7. WORDPRESS Gutenberg ---------------------------------------- */
/* ========================================================================== */


/* bilder ------------------------------------------------------- */
.wp-block-image .alignleft,
.main-with-sidebar .wp-block-image .alignleft {
    float: left;
    margin-right: 1.875em;
}

.wp-block-image .alignright,
.main-with-sidebar .wp-block-image .alignright {
    float: right;
    margin-left: 1.875em;
}

.wp-block-image figcaption {
	margin-top: 0;
}


/* weite und volle breite ------------------------------------------------------- */
.alignfull {
	margin: 32px calc(50% - 50vw);
	max-width: 100vw;
	width: 100vw;
}

.alignwide {
	margin-left: -100px;
	margin-right: -100px;
	max-width: calc( 100% + 200px);
}


 /* spalten ------------------------------------------------------- */   
.wp-block-columns.has-2-columns,
.wp-block-columns.has-3-columns,
.wp-block-columns.has-4-columns {
	margin-bottom: 2em;
}

.wp-block-column:not(:last-child) {
	margin-right: 30px;
}

.wp-block-column:nth-child(2n+1) {
	margin-right: 30px;
}

.wp-block-column:not(:first-child), 
.wp-block-column:nth-child(2n) {
	margin-left: 30px;
}

.wp-block-column:last-child {
	margin-right: 0;
}


 /* buttons ------------------------------------------------------- */
.wp-block-button {
	/* betrifft den gesamten block, den wp um den button herum erstellt, in gesamt-layout-breite */
}

/* der eigentliche button */
.is-style-outline .wp-block-button__link,
a.wp-block-button__link {
	background-color: #fff;
	border: 1px solid #000;
	border-radius: .5em;
	box-shadow: 2px 2px 5px rgba(0, 0, 0, 0.4);
	color: #000;
	font-size: 21px;
    font-size: 1.3125rem;
}

.is-style-outline .wp-block-button__link {
	
}
	

a.wp-block-button__link:hover {
	background-color: #fff;
	border: 1px solid #b3282c;
	color: #b3282c;
}

a.wp-block-button__link:active,
a.wp-block-button__link:focus {
	color: #000;
}


 /* blockquote ------------------------------------------------------- */
.wp-block-quote {
	margin-bottom: 2em;
}

.wp-block-quote p {
	margin-bottom: .5em;
}

.wp-block-pullquote p {
	font-size: 24px;
	font-size: 1.5rem;
	line-height: 1.5;
	margin-bottom: .7em;
}


 /* block-group ------------------------------------------------------- */
.wp-block-group {
	display: flex;
}

.wp-block-group__inner-container {
	display: flex;
	flex-flow: row wrap;
	align-items: flex-start;
	justify-content: space-between;
	width: 100%;
}

.wp-block-group__inner-container figure {
	margin-right: 1em;
}
 
 
 /* galerie-blöcke ------------------------------------------------------- */
.wp-block-gallery img {
	margin: 0;
}

.wp-block-gallery .blocks-gallery-image, 
.wp-block-gallery .blocks-gallery-item {
	margin: 0 30px 30px 0;
	width: calc((100% - 30px)/2);
}

.wp-block-gallery.columns-3 .blocks-gallery-image, 
.wp-block-gallery.columns-3 .blocks-gallery-item {
	margin-right: 30px;
	width: calc((100% - 60px)/3);
}

.wp-block-gallery.columns-4 .blocks-gallery-image, 
.wp-block-gallery.columns-4 .blocks-gallery-item {
	margin-right: 30px;
	width: calc((100% - 90px)/4);
}

.wp-block-gallery.columns-5 .blocks-gallery-image, 
.wp-block-gallery.columns-5 .blocks-gallery-item {
	margin-right: 30px;
	width: calc((100% - 120px)/5);
}

.wp-block-gallery.columns-3 .blocks-gallery-image:last-of-type, 
.wp-block-gallery.columns-3 .blocks-gallery-item:last-of-type,
.wp-block-gallery.columns-4 .blocks-gallery-image:last-of-type, 
.wp-block-gallery.columns-4 .blocks-gallery-item:last-of-type,
.wp-block-gallery.columns-5 .blocks-gallery-image:last-of-type, 
.wp-block-gallery.columns-5 .blocks-gallery-item:last-of-type {
	margin-right: 0;
}	

.blocks-gallery-item {
	padding-left: 0;
}

.blocks-gallery-item:before {
	content: '';
	display: none;
}

.wp-block-gallery .blocks-gallery-image figcaption, 
.wp-block-gallery .blocks-gallery-item figcaption {
	bottom: 8px; /* bei test ragte der captionfond unten über das bild hinaus */
}



/* cover image */
.wp-block-cover.alignwide, 
.wp-block-cover-image.alignwide {
	width: calc(100% + 200px);
}

.wp-block-cover__inner-container p {
	font-size: 32px;
	font-size: 2rem;
	margin-bottom: 0;
} /* beschriftung stylen */



/* hauptspalte + seitenspalte */
.wp-block-column.hauptspalte {
	flex-basis: 65%;
	max-width: 65%; 
	padding-right: 2em;
}

.wp-block-column.seitenspalte {
	flex-basis: 35%;
	max-width: 35%;
}

.hauptspalte .has-2-columns .wp-block-column {
	flex-basis: 47%;
	max-width: 47%;
	margin-right: 6%;
}

.hauptspalte .has-2-columns .wp-block-column:last-of-type {
	margin-right: 0;
}





/* ========================================================================== */
/* !7b. WORDPRESS Gutenberg: erweiterte Styles (über editor > erweitert eingegeben) ---- */
/* ========================================================================== */

/* block mit fondfarbe */
.wp-block-column.fondfarbe {
	background-color: #eee;
}

/* block mit padding */
.wp-block-column.innenabstand {
	padding: .7em 1em;
}

/* block mit großem padding */
.wp-block-column.innenabstand-2 {
	padding: .1em 2em;
}

/* absatz mit großem text */
p.grosstext {
	font-size: 24px;
	font-size: 1.5rem;
	line-height: 1.5;
}

/* block mit kleinem text */
.wp-block-column.kleintext p {
	font-size: 14px;
	font-size: .875rem;
	line-height: 1.4;
}

/* block mit css in zwei spalten geteilt */
p.aufgeteilt,
ul.aufgeteilt {
	column-count: 2;
	column-gap: 60px; /* margin-right von .wp-block-column * 2 */
	margin-bottom: 4em;
}

/* bild aus dem satzspiegel hinausgerückt */
.wp-block-image.links-hinaus,
.main-with-sidebar .wp-block-image.links-hinaus {
	margin-left: -60px;
}

/* tabelle über ganze breite gezogen */
.wp-block-table.ganze-breite {
	width: 100%;
}

.wp-block-table.alignwide.ganze-breite {
	width: calc( 100% + 200px);
}

/* spalten über ganze breite gezogen */
.wp-block-columns.alignwide.has-4-columns .wp-block-column {
	
}
	

/* block der direkt an den danebenliegenden stößt, ohne zwischenspalte */
.wp-block-column.kompakt {
	margin-bottom: 0;
}

.wp-block-column.kompakt:not(:first-child), 
.wp-block-column.kompakt:nth-child(2n) {
	margin-left: 0;
}

.wp-block-column.kompakt:not(:last-child) {
	margin-right: 0;
}

.wp-block-column.kompakt img {
	margin: 0;
}

.has-2-columns .wp-block-column.kompakt
.has-3-columns .wp-block-column.kompakt, 
.has-4-columns .wp-block-column.kompakt {
	flex-basis: 50%;
}

/* reihe die direkt an die darunterliegende stößt, ohne abstand */
.wp-block-columns.has-2-columns.abstandslos, 
.wp-block-columns.has-3-columns.abstandslos, 
.wp-block-columns.has-4-columns.abstandslos {
	margin-bottom: 0;
}

/* teaser-text rot */
.teaser p {
	color: #b3282c;
	font-size: 19px;
    font-size: 1.1875rem;
    margin-bottom: 1em;
}

/* im absatz keine trennungen */
.keinetrennung {
    display: inline-block;
    -webkit-hyphens: none;
    -ms-hyphens: none;
    hyphens: none;
}




/* ========================================================================== */
/* !7c. WORDPRESS Plugins --------------------------------------------------- */
/* ========================================================================== */

.metaslider.ds-slider .flex-control-nav {
	bottom: -40px;
}

.metaslider.ds-slider .flex-control-nav li {
	padding-left: .5em;
}

.metaslider.ds-slider .flex-control-nav li:first-of-type {
	padding-left: 0;
}

.metaslider.ds-slider .flex-control-paging li a {
	background: rgba(0,0,0,.2);
}

.metaslider.ds-slider .flex-control-paging li a.flex-active {
	background: rgba(0,0,0,.4);
}

.metaslider.ds-slider .caption-wrap {
	background: rgba(83, 71, 64, .8);
	opacity: 1;
}

.metaslider.ds-slider .caption {
	font-size: 16px;
	font-size: 1rem;
	line-height: 1.3;
	padding: 5px 20px;
}



/* ========================================================================== */
/* !8. SIDEBAR ---------------------------------------- */
/* ========================================================================== */

/* wird auf seiten über das template „Mit Seitenspalte“ (page-sidebar.php) eingesetzt, inhalt wird über widgets eingesetzt */
aside {
	margin-top: 4.5em;
	width: 26.654%;
}

aside p,
aside ul,
aside ul li,
aside ol,
aside h3,
aside h4,
.seitenspalte p,
.seitenspalte ul,
.seitenspalte ul li,
.seitenspalte ol,
.seitenspalte h3,
.seitenspalte h4 {
    font-size: 19px;
    font-size: 1.1875rem;
    -webkit-hyphens: auto;
    -ms-hyphens: auto;
    hyphens: auto;
    line-height: 1.4;
    margin-bottom: .5em;
}
    
aside h3,
aside h4 {
	font-size: 21px;
    font-size: 1.3125rem;
	padding-bottom: .2em;
	margin-bottom: .5em;
}

aside img {
    margin-top: 0;
    margin-bottom: 1em;
}

aside img:first-of-type {
    margin-top: -12px;
}

aside ul.widget li {
	padding-left: 0;
}

aside ul.widget li:before {
	content: '';
	display: none;
}

.seitenspalte {
	/* nur für seitenspalten-layout. klasse wird dann über gutenberg-block zugewiesen */
/* 	background-color: yellow; */
}





/* ========================================================================== */
/* !9. FOOTER ---------------------------------------- */
/* ========================================================================== */

.site-footer .container {
    position: relative;
}

.site-footer .row {
	padding: .5em 0;
	margin-bottom: 0;
}
    
.site-footer .footer-box {
	color: #fff;
	flex-basis: 22%;
    max-width: 22%;
    padding-right: 2.68%;
}

.site-footer .footer-box:first-of-type {
	margin-right: 7.334%;
}	

.site-footer h3 {
	color: #fff;
	font-size: 16px;
	font-size: 1rem;
	margin-bottom: .5em;
}

.site-footer p,
.site-footer ul {
    font-size: 18px;
    font-size: 1.125rem;
    color: #fff;
    -webkit-hyphens: none;
    -ms-hyphens: none;
    hyphens: none;
    line-height: 1.2;
}

.site-footer p {
	margin-bottom: .7em;
}

.site-footer strong {
	color: #fff;
	font-family: "RotisSansSerifBold", Arial, sans-serif;
	font-weight: normal;
}

.site-footer ul.widget li {
	padding-left: 0;
}

.site-footer ul.widget li:before {
	content: '';
	display: none;
}

.site-footer ul.menu li {
	padding-left: 0;
}

.site-footer ul.menu li:before {
	content: '';
	display: none;
}

.site-footer p.small {
    font-size: 15px;
    font-size: 0.9375rem;
}

.site-footer ul {
    margin-top: 0;
}

.site-footer a {
    border-bottom: 1px solid transparent;
    color: #fff;
/*     transition: all 0.3s ease-in-out; */
}

.site-footer a:hover {
    border-bottom: 1px solid #fff;
}

a.to-top {
    display: block;
    margin-bottom: 1em;
    position: absolute;
    top: -100px;
}

a.to-top::before {
    font-size: 28px;
    font-size: 1.75rem;
    content: '\e60a'; /* chevron thin up */
    color: #000;
    font-family: 'Entypo';
    height: 60px;
    width: 60px;
}

a.to-top:link,
a.to-top:visited,
a.to-top:hover,
a.to-top:active {
    border-bottom: none;
}

a.to-top:hover::before {
	color: #b3282c;
}





/* ========================================================================== */
/* !10. RESPONSIVENESS ---------------------------------------- */
/* ========================================================================== */

/* ------------------------------------ large 1408 px ------------------------------------  */
/* ab hier verändern sich die container flexibel */
@media only screen and (max-width: 88rem) {
    
/*     h1 {color: gray;} */
    
    
    /* Allgemein/Layout -------------------------- */
    .container {
        margin-right: 6rem;
        margin-left: 6rem;
	}
    
    
    /* Header -------------------------- */
    .site-header .container {
	    width: 84.5%;
	}
	
	
	/* Wordpress ------------------------------------------------------- */ 
	.alignwide {
/*
		margin: 32px calc(50% - 50vw);
		max-width: 100vw;
		width: 100vw;
*/

		margin-left: -50px;
		margin-right: -50px;
		max-width: calc( 100% + 100px);
	}
	
	.wp-block-columns.has-2-columns.alignwide .wp-block-column {
		flex-basis: 50%;
	}
    
}
    

/* ------------------------------------ medium 1160 px ------------------------------------ */
@media only screen and (max-width: 72.5rem) {
    
/*     h1 {color: green;} */
    
    
    /* Allgemein/Layout -------------------------- */
    .container-main {
	    margin-top: 0;
	}
    
    .main {
        flex-wrap: wrap;
	}
    
    
    /* Content -------------------------- */
    .site.home .content {
        padding-right: 3em;
	}
	
    .site.home h1 {
	    margin-top: .5em;
	}
    
    h1 {
	    margin-bottom: .5em;
	}
    
    p,
    ul,
    ol {
        font-size: 19px;
		font-size: 1.1875rem;
	}
        
    
    /* Footer -------------------------- */
    .site-footer .footer-box {
		color: #fff;
		flex-basis: 24.5%;
	    max-width: 24.5%;
	    padding-right: 3%;
	}
	
	.site-footer .footer-box:first-of-type {
		margin-right: 0;
	}
	
	.site-footer .footer-box:last-of-type {
		padding-right: 0;
	}
	
	
	 /* Wordpress ------------------------------------------------------- */   
	.wp-block-columns.has-3-columns,
	.wp-block-columns.has-4-columns  {
		flex-wrap: wrap !important;
	}
	
	.has-3-columns .wp-block-column,
	.has-4-columns .wp-block-column {
		flex-basis: calc(50% - 32px);
		margin-bottom: 3em;
	}
	
	.has-3-columns .wp-block-column:nth-child(2n),
	.has-4-columns .wp-block-column:nth-child(2n) {
/* 		margin-right: 0; */
	}
	
	.has-3-columns .wp-block-column:nth-child(2n+1),
	.has-4-columns .wp-block-column:nth-child(2n+1) {
		margin-left: 0;
	}
	
}



/* ------------------------------------ small 1008 px ------------------------------------ */
/* einspaltig */
@media only screen and (max-width: 63rem) {
    
/*     h1 {color: blue;} */
    
    /* Allgemein/Layout -------------------------- */
    
    
    /* Header -------------------------- */
    .sb-search {
        right: 2.5em; 
    }
    
    .main-wrap {
        flex-basis: 100%;
        max-width: 100%;
	}

    .main-with-sidebar article,
    aside {
        flex: 0 0 100%;
        max-width: 100%;
	}
        
    .main-with-sidebar article {
	    padding-right: 0;
	}
    
    .breadcrumb p {
        margin-bottom: 1em;
	}
	
	.site-banner {
/* 		height: 350px; */
	}
    
    
    /* Sidebar -------------------------- */
    aside {
        margin-top: 0;
        margin-bottom: 3em;
	}
    
    aside img {
        max-width: 48%;
        margin-right: 2em;
	}
    
    aside img.alignnone {
        margin-right: 2em;
	}
        
    
    /* Footer -------------------------- */
    .site-footer .footer-box {
		flex-basis: 55%;
	    max-width: 55%;
	    padding-right: 10%;
	}
	
	.site-footer .footer-box:nth-of-type(2n) {
		flex-basis: 45%;
	    max-width: 45%;
		padding-right: 0;
	}
	
		
	/* WordPress -------------------------- */	    
	.wp-block-column {
		flex-basis: 47%;
	}
	
	.wp-block-column:not(:last-child) {
		margin-right: 20px;
	}
	
	.wp-block-column:nth-child(2n+1) {
		margin-right: 20px;
	}
	
	.wp-block-column:not(:first-child), 
	.wp-block-column:nth-child(2n) {
		margin-left: 20px;
	}	
	
}

/* ------------------------------------ xsmall 832 px ------------------------------------ */
/* einspaltig */
@media only screen and (max-width: 52rem) {
    
/*     h1 {color: red;} */
    
    
    /* Allgemein/Layout -------------------------- */
    .container {
        margin-right: 3rem;
        margin-left: 3rem;
	}
	
	.site-content {
		padding-top: 1rem;
	}
	
	.container .wp-block-columns {
		flex-wrap: wrap;
	}
	
	.container .wp-block-column {
    	flex-basis: 100% !important;
	}
    
    
    /* Header -------------------------- */
    .site-banner,
    .site-banner-high {
		background-position: top left,
			top left,
			top center,
			top left;
		background-size: auto, auto, cover, auto;
		height: 200px;
	}
    
    .site-header .container {
	    width: 90%;
	}
		
	.site-header .row {
		margin-bottom: 0;
	}
	
	.logo {
		
	}
    
    /* menu-icon */
    #menu-icon {
        color: #aaa;
        cursor: pointer;
        display: block;
        /* show menu icon */
        font-size: 1em;
        padding: 0 0 .25em;
        text-align: right;
        width: 100%;
	}
    
    #menu-icon [data-icon]:before {
        color: #fff;
        font-size: 1.7em;
        margin-right: .2em;
        vertical-align: -25%;
	}
    
    #menu-icon:hover,
    #menu-icon.active {
        background: transparent;
	}
    /* anpassung der navigation an smartphones */
    
    .nav-main {
        display: none;
        /* menu-icon-function: visibility will be toggled with jquery */
        float: none;
	}
	
	.nav-wrap ul {
		font-size: 18px;
		font-size: 1.125rem;
	}
    
    ul.nav {
	    background-color: rgba(83, 71, 64, 1);
/*         border-left: 1px solid #aaa; */
        display: block;
        float: none;
        margin-top: 0;
        padding: .2em 1.4em;
        position: relative;
        z-index: 1000;
	}
    
    ul.nav > li {
        border-top: 1px solid #fff;
        display: block;
        float: none;
        margin-left: 0;
        padding: .5em 0 1em;
	}
    
    ul.nav li:first-child {
        border-top: none;
	}
    
    ul.nav > li > a {
        padding: 0;
	}
        
    .nav-main .current-menu-item > a, 
    .nav-main .current-page-ancestor > a, 
    .nav-main .current-menu-item > a:hover, 
    .nav-main .current-page-ancestor > a:hover {
		border-bottom: 1px solid transparent;
		font-weight: bold;
   
	}
    
    .nav-main li:hover > a, 
    .nav-main .current-page-item > a:hover, 
    .nav-main .current-page-ancestor > a:hover {
		border-bottom: 1px solid transparent;
	}
	
	.nav-main a:focus, 
	.nav-main .current-page-item > a, 
	.nav-main .current-page-ancestor > a {
		color: #fff;
	}
    
    .sub-menu {
        background: transparent;
        margin: 0;
        opacity: 1;
        padding-top: .2em;
        padding-bottom: .2em;
        position: relative;
        top: 5px;
        width: auto;
        z-index: 1;
	}
    
    .sub-menu li {
        padding: 0 0 .5em 1em;
	}
    
    .sub-menu li:last-of-type {
        padding: 0 0 0 1em;
	}
    
    .sub-menu li a {
        padding: 0;
	}
    /* ende anpassung der navigation an smartphones */
    
    /* Open state */
    /* font-size für input-felder auf 16px setzen > verhindert skalieren auf dem iphone */
    input[type="color"],
    input[type="date"],
    input[type="datetime"],
    input[type="datetime-local"],
    input[type="email"],
    input[type="month"],
    input[type="number"],
    input[type="password"],
    input[type="search"],
    input[type="tel"],
    input[type="text"],
    input[type="time"],
    input[type="url"],
    input[type="week"],
    select:focus,
    textarea {
        font-size: 16px;
	}
    
    /* menu-icon */
    #menu-icon {
        text-align: right;
	}
    
    .nav-wrap {
        padding: 0;
        top: 28px;
        left: auto;
        right: 65px;        
	}
    
    .sb-search {
		right: 1.5em;
		top: 26px;
	}
	
	.sb-search.sb-search-open, .no-js .sb-search {
		width: 170px;
	}
	
	/* sticky navigation smartphone */
	.site-header.sticky {
		height: 60px;
	}
	
	.site-header.sticky .logo {
		
	}
	
	.site-header.sticky .nav-wrap {
		top: 16px;
	}
	
	.site-header.sticky .sb-search {
		top: 15px;
	}
	
	.site-header.sticky ul.nav > li {
		padding-top: .5em;
	}
	
    
    
    /* Content -------------------------- */ 
    .site.home h1 {
	    margin-top: 1em;
	}
    
    h1,
    h2,
    h3,
    h4,
    h5,
    h6 {
        -webkit-hyphens: auto;
        -ms-hyphens: auto;
        hyphens: auto;
	}
	
	h1 {
		-webkit-hyphens: none;
        -ms-hyphens: none;
        hyphens: none;
	}
    
    a[href^="tel:"] {
        border-bottom: 1px solid #ee7c00;
        color: #ee7c00;
	}
	
	table {
		width: 100%;
	}
    
    
    /* Sidebar -------------------------- */
    aside img {
        max-width: 100%;
        margin-right: 0;
	}
    
    aside img.alignnone {
        margin-right: 0;
	}
    
    
    /* Footer -------------------------- */
    .site-footer a[href^="tel:"] {
        border-bottom: none;
        color: #fff;
	}
    
    .site-footer p, .site-footer ul {
        font-size: 18px;
        font-size: 1.125rem;
	}
    
    .site-footer p {
        line-height: 1.5;
	}
    
    .site-footer .footer-box,
    .site-footer .footer-box:nth-of-type(2n) {
        flex-basis: 100%;
        max-width: 100%;
        padding-right: 0;    
	}
    
    .site-footer .footer-box,
    .site-footer .footer-box ul {
        margin-bottom: 0;
	}
    
    .site-footer ul li {
        padding: .5rem 0;
	}
	
	.site-footer p.small {
		padding-top: 2em;
	}
	
	
	/* WordPress -------------------------- */	    
	.wp-block-column:not(:first-child) {
		margin-left: 0;
	}
	
	.wp-block-columns.has-2-columns,
	.wp-block-columns.has-3-columns,
	.wp-block-columns.has-4-columns  {
		flex-wrap: wrap !important;
		margin-bottom: 1em;
	}
	
	.has-2-columns .wp-block-column,
	.has-3-columns .wp-block-column,
	.has-4-columns .wp-block-column,
	.has-2-columns .wp-block-column.kompakt,
	.has-3-columns .wp-block-column.kompakt,
	.has-4-columns .wp-block-column.kompakt {
		flex-basis: 100%;
		margin: 1em 0 2em;
	}
	
	.has-2-columns.abstandslos .wp-block-column,
	.has-3-columns.abstandslos .wp-block-column,
	.has-4-columns.abstandslos .wp-block-column,
	.has-2-columns.abstandslos .wp-block-column.kompakt,
	.has-3-columns.abstandslos .wp-block-column.kompakt,
	.has-4-columns.abstandslos .wp-block-column.kompakt {
		margin: 0;
	}
	
	.wp-block-columns.has-2-columns.alignwide .wp-block-column {
		flex-basis: 100%;
	}
	
	.has-4-columns .wp-block-column.kompakt {
		margin: 0;
	}
	
	.wp-block-image img {
		width: 100%;
	}
	
	.wp-block-image.links-hinaus, 
	.main-with-sidebar .wp-block-image.links-hinaus {
		margin-left: 0;
	}
	
	.alignwide {
		margin-left: 0;
		margin-right: 0;
		max-width: 100%;
	}
	
	p.aufgeteilt,
	ul.aufgeteilt {
		column-count: 1;
		column-gap: 0;
		margin-bottom: 2em;
	}
	
	.wp-block-gallery.columns-3 .blocks-gallery-image, 
	.wp-block-gallery.columns-3 .blocks-gallery-item {
		margin-right: 0;
		width: 100%;
	}
	
	.wp-block-column.hauptspalte,
	.wp-block-column.seitenspalte {
		-webkit-box-flex: 0;
		flex: 0 0 100%;
		max-width: 100%;
	}
	
	.wp-block-column.hauptspalte {
    	padding-right: 0;
    }
	
	.wp-block-column.seitenspalte {
    	margin-left: 0;
    	margin-top: 0;
    }
    
    .metaslider.ds-slider .flex-control-nav {
      bottom: -60px;
    }
	
	
}


/* ------------------------------------ xxsmall 780 px ------------------------------------ */
/* einspaltig */
@media only screen and (max-width: 48.75rem) {
  
  .wp-block-column:nth-child(2n+1) {
    margin-right: 0;
  }

}

/* ------------------------------------ xxsmall 512 px ------------------------------------ */
/* einspaltig */
@media only screen and (max-width: 32rem) {

/*     h1 {color: black;} */
    
	
	/* Allgemein/Layout -------------------------- */
    .container {
        margin-right: 2rem;
        margin-left: 2rem;
	}
	
	/* Header -------------------------- */
	.site-header .container {
	    width: 85%;
	}
	
	.logo {
		height: 130px;
		width: 124px;
	}
	
	.logo object {
		width: 79px;
	}
	
	.nav-wrap {
        padding: 0;
        top: 28px;
        left: auto;
        right: 40px;        
	}
	
	.sb-search {
		right: .5em;
	}
	
	/* sticky navigation smartphone */
	.site-header.sticky .logo {
		height: 80px;
		width: 77px;
	}
	
	.site-header.sticky .logo object {
		width: 50px;
	}

	
	
	/* Content -------------------------- */
	table {
		font-size: 12px;
		font-size: .75rem;
		word-break: break-word;
	}
    
/*
    table tr {
        border-bottom: 0;
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        margin-bottom: 0;
    }
    
    table td,
    table th {
        width: 100%;
    }
*/
	
	
	/* WordPress -------------------------- */
	.wp-block-image .alignleft,
	.main-with-sidebar .wp-block-image .alignleft {
	    float: none;
	    margin-right: 0;
	}
	
	.wp-block-image .alignright,
	.main-with-sidebar .wp-block-image .alignright {
	    float: none;
	    margin-left: 0;
	}
	
	.wp-block-image.links-hinaus {
		margin-left: 0;
	}
	
	.wp-block-table.alignwide.ganze-breite {
		width: 100%;
	}
	
	.hauptspalte .has-2-columns .wp-block-column {
    	flex-basis: 100%;
		max-width: 100%;
		margin-right: 0;
		margin-bottom: 1.5rem;
	}
	
	.metaslider.ds-slider .caption-wrap {
		opacity: 0;
	}
	
	.metaslider.ds-slider .flex-control-nav li a {
		margin: 0 3px;
	}

}



/* ------------------------------------ 400 px ------------------------------------ */
/* einspaltig */
@media only screen and (max-width: 25rem) {
  
  .metaslider.ds-slider .flex-control-nav {
    bottom: -80px;
  }
  
}





/* ========================================================================== */
/* !11. PRINT STYLES ---------------------------------------- */
/* ========================================================================== */

@media print {
    * {
        background: transparent !important;
        color: #000 !important;
        /* Black prints faster: h5bp.com/s */
        box-shadow: none !important;
        text-shadow: none !important;
	}
	
    pre,
    blockquote {
        border: 1px solid #000;
        page-break-inside: avoid;
	}
	
    tr,
    img {
        page-break-inside: avoid;
	}
	
    img {
        max-width: 100% !important;
	}
	
    @page {
        margin: 0.5cm;
	}
	
    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
	}
	
    h2,
    h3 {
        page-break-after: avoid;
	}
    /* !eigene print-styles */
}

