/* variable css */

:root{
	--color-a:#bf4b42; /* ROT */
	--color-b:#dca375; /* ORANGE */
	--color-c:#782021; /* DUNKELROT */
	--color-d:#339900; /* Knallgrün */
	--color-e:#ffffff;
	--color-f:#222222;
	--color-g:#0f261d; /* DUNKELGRÜN */
}

.white{color:var(--color-e)}
#wpadminbar{top:unset;bottom:0}
body{font-family:'Helvetica', 'Arial', sans-serif;color:var(--color-f);font-size:16px;margin:0;padding:0;line-height:150%;}
html,body{width:100%;max-width:100%;overflow-x:hidden;box-sizing:border-box;}
*,*::before,*::after{box-sizing:border-box}
img,video,iframe,svg{max-width:100%;height:auto}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}

a,a:focus,a:visited{color:var(--color-a);text-decoration:none;border:none;outline:none}
a:hover,a:active{color:#999;text-decoration:none;border:none;outline:none}
a img,a img:hover,a img:focus,a img:active,a img:visited{border:none;outline:none}

strong,.strong,.bold{font-weight:600}
small,.small{font-size:.7em;opacity:.7}
.center{text-align:center}
ul,ol{margin:15px 0 10px 5px}
hr{margin:25px 0} 
.mobile_hr{margin:45px 0 25px !important}

button,.button,.btn-default{background:var(--color-d);color:var(--color-e);padding:.5em 0;text-align:center;border-radius:.6em;width:100%}
button:hover,.button:hover,.btn-default:hover{background-color: color-mix(in srgb,var(--color-d) 90%,black);color:color-mix(in srgb,var(--color-e) 55%,transparent)}
a.button:active,a.button:visited,butto:active,button:visited{color:#fff}
.center button,.center .button{display:inline-flex;width:auto;max-width:max-content;padding:1em;margin:2em auto}
button:disabled,button:disabled:hover,button:disabled:focus{background-color: color-mix(in srgb,var(--color-d) 90%,black);color:color-mix(in srgb,var(--color-e) 55%,transparent);cursor:not-allowed}

.clearfix:after{clear:both;content:".";display:block;height:0;visibility:hidden}
.clearfix{display:block}
.flex{display:flex;flex-wrap:wrap}
.grid{display:grid;padding:0}
.col2,.col3,.col4,.col5{grid-template-columns:1fr;gap:1em 0em}
.col2-2,.col4-2,.col8-2,.col6,.col8,.col10{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5em}
.show-more-toggle{display:block;width:100%;margin:2rem 0;padding:1rem;border:0;background:transparent;font:inherit;font-weight:700;text-align:center;cursor:pointer;}
.show-more-toggle span{display:block;}
.show-more-content{display:none;}
.show-more-content.is-open{display:grid;}


/*** FAQ-Accordion ***/
.faq{border:2px solid #ddd;border-radius:10px;overflow:hidden}
.faq label{margin:0 !important}
.faq p{margin:12px}
.faq-k{border-bottom:1px solid #ddd}
.faq-k:last-of-type{border:0}
.faq-q{display:flex;align-items:center;cursor:pointer;padding:12px 16px;background:#eee;font-weight:600}
.faq-q:hover{background:#ddd}
.faq-i{margin-right:.75em;font-size:2em;font-weight:300;transition:transform 0.3s}
.faq-a{max-height:0;overflow:hidden;padding:0 16px;transition:max-height 0.1s,padding 0.1s;background:#fff}
input[type="checkbox"]:checked + .faq-q + .faq-a{max-height:1000px;padding:12px 16px}
input[type="checkbox"]:checked + .faq-q .faq-i,.spec-toggle:checked + .row-label .icon{transform:rotate(45deg)}

@media screen and (min-width:300px){
.fluid{padding:0;margin:0}
.container{max-width:90%;padding:0;margin:0 auto}
#fooTop .container{max-width:unset}
.fluid.route {background:color-mix(in srgb,var(--color-d) 25%,transparent);}
.fluid.news {background:var(--color-b);}
.fluid.form {background:var(--color-g);color:#fff;padding:3em}
.fluid.form h2 {color:#fff}
section.container{padding-top:2em; padding-bottom:2em}

.fluid.form form {max-width:450px;margin:0 auto}
form * {border:none;outline:none}
form label {width:100%;display:block;margin:0 0 .25em .5em}
form input,form textarea {width:100%;padding:0.5em;font:inherit;font-size:1.2em;border-radius:.6em;margin-bottom:1.5em}
form textarea {min-height:10em;resize:vertical;border-bottom-right-radius:0}
form .hp-field{position:absolute;left:-9999px;width:1px;height:1px;opacity:0;pointer-events:none;}
form button {width:60%;font-size:1.1em;margin:0 auto 1.5em;display:block}
form .check{display:flex;align-items:flex-start;gap:1em;width:100%;margin:0 0 1.5em 0.5em;font-size:.9em}
form .check input{width:1.2em;height:1.2em;min-width:1.2em;margin:0;padding:0;border-radius:.6em;appearance:auto}
form .check span{display:block}
form .check a{text-decoration:underline}
	
/*** Presseartikel ***/
.tree {background:var(--color-g);border-radius:.6em;overflow:hidden;font-size:.875em;position:relative;z-index:-1}
.press{color:#fff;opacity:.9;padding:.5em;line-height:1.2em;margin-bottom:1.3em;}
.tree .source{position:absolute;left:1em;bottom:.6em;opacity:.6}
.tree .date{position:absolute;right:1em;bottom:.6em;opacity:.6}
.tree a,.tree a:hover,.tree a:active,.tree a:visited{color:#fff}


/*** Page TOUR ***/
#tour-data .grid > div {margin:0 2em}
#tour-data .table{list-style:none;padding:0}
#tour-data .table strong{min-width:25%;display:inline-block}
#tour-route h3{padding-top:0;}	
#tour-route .col2{gap:4em 0em}


/*** Page TEAM ***/
.team-card{border:3px solid #c00;padding:1em;display:flex;flex-direction:column;text-align:center;box-sizing:border-box}
.team-card img{width:100%;aspect-ratio:1/1.35;object-fit:cover;display:block;margin-bottom:.8em}
.team-card strong{display:block;font-size:1.15em}
.team-card>span{display:block;margin:.25em 0 .75em}
.team-card p{margin:auto 0 0;min-height:3.4em}
.team-card a{color:inherit;text-decoration:none}
.user{font-weight:bold;margin-right:.25em}


/* Headlines */
h1,h2,h3,h4,h5,h6{color:var(--color-b);word-wrap:break-word;text-align:center;line-height:120%}
h1,.h1{color:var(--color-a);padding:1em 0 0}
h1::after{content:"";display:block;width:7%;height:2px;background:var(--color-b);opacity:.5;margin:1em auto 0}	
h2,.h2{font-size:1.8em;padding:1.5em 0 0.3em;margin-top:0}
h3,.h3{font-family:'Palatino';font-size:1.6em;padding:1.5em 0 0.5em;margin:0;font-weight:900;font-stretch:condensed;color:var(--color-c);text-align:center}
h4,.h4{font-size:1.4em;padding:18px 0 10px}
section>:is(h2,h3):nth-child(1 of :is(h2,h3):not(.sr-only)),h2+h3{padding-top:0}


#intro p{font-size:1.2em;line-height:180%;text-align:center;width:90%;margin-left:auto;margin-right:auto}
.hightlight{font-weight:900;color:var(--color-c)}
	
/*header*/
header{}
/* Icons */	
.icon{font-family:'Icons'}
.phone:before{content:"\f095"}
.envelope:before{content:"\f0e0"}
.root:before{content:"\f57c"}
.home:before{content:"\f015"}	

	
/* Footer */	
#fooTop{background-color:var(--color-a);padding:10px 0}	
#fooBot{font-size:0.9em;color:var(--color-f);background:var(--color-e);padding:25px;text-align:center}
.fooLeft,.fooRight,.fooTxt{width:100%}
#fooBot a,#fooBot a:visited{color:var(--color-f)}
#fooBot a:hover,#fooBot a:focus,#fooBot a:active{color:var(--color-a);text-decoration:underline}	


.imprint{display:grid;grid-template-columns:repeat(2,1fr);gap:.3em;width:100%;padding:1em 0 .5em}
.imprint span{font-weight:600}

/*** Gallery ***/
.gallery section{width:90%;margin:0 auto}
.spg-thumb{display:block;width:100%;padding:0;border:0;background:none;cursor:pointer;overflow:hidden}
.spg-thumb picture,.spg-thumb img{display:block;width:100%;height:100%}
.spg-thumb img{aspect-ratio:1/1;object-fit:cover}
.spg-lightbox{position:fixed;inset:0;display:none;background:rgba(0,0,0,.94);z-index:99999}
.spg-lightbox.is-open{display:block}
.spg-close,.spg-nav{position:absolute;border:0;background:transparent;color:#fff;cursor:pointer}
.spg-close{position:fixed;right:16px;bottom:16px;top:auto;width:52px;height:52px;display:flex;align-items:center;justify-content:center;padding:0;border-radius:50%;font-size:42px;line-height:1;z-index:5;box-shadow:0 0 0 3px #fff3}
.spg-close:hover{box-shadow:0 0 0 3px #fff6}
.spg-nav{display:none;z-index:2}
.spg-big-list{height:100%;overflow-y:auto;scroll-snap-type:y mandatory;-webkit-overflow-scrolling:touch}
.spg-big{display:grid;height:100dvh;place-items:center;padding:0;scroll-snap-align:start}
.spg-big picture,.spg-big img{display:block;max-width:100vw;max-height:100dvh}
.spg-big img{width:100vw;height:100dvh;object-fit:contain}
body.spg-lock{overflow:hidden}
.spg-thumb.is-hidden{display:none}
.spg-more{display:flex;align-items:center;justify-content:center;gap:.5em;margin:2em auto 0;padding:.8em 1.2em;border:0;cursor:pointer}
.spg-more[hidden]{display:none}

}	
	
@media screen and (min-width:500px){
	
#tour-route .col2,.col2,.col2-2,.col3,.col4,.col5{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5em}
.col6{grid-template-columns:repeat(3,minmax(0,1fr))}	
.col8,.col10{grid-template-columns:repeat(4,minmax(0,1fr))}
.col8-2{grid-template-columns:repeat(8,minmax(0,1fr))}
#fooTop{padding:25px 0}
.fw_left{width:calc(40% - 25px)}
.fw_middle{width:calc(60% - 25x)}
.fooTxt{width:50%}

}


@media screen and (min-width:800px){

.content.schmal{max-width:700px}

.show-more-toggle{display:none}
.show-more-content{display:grid}
	
.col3{grid-template-columns:repeat(3,minmax(0,1fr))}
.col4,.col4-2,.col8{grid-template-columns:repeat(4,minmax(0,1fr))}
.col5,.col10{grid-template-columns:repeat(5,minmax(0,1fr))}

/* Footer */
#fooBot{display:flex}	
.fooRight{width:50%;text-align:right}
.fooLeft{width:50%;text-align:left}

/*** Globale Anpassungen ***/
.imprint{width:60%}

/*** Gallery ***/
.spg-lightbox{background:#030303;overflow:hidden;overscroll-behavior:contain;touch-action:none}
.spg-big-list{overflow:hidden;scroll-snap-type:none;overscroll-behavior:contain}
.spg-big{display:none;height:100%;padding:24px;scroll-snap-align:none;box-sizing:border-box}
.spg-big.is-active{display:grid}
.spg-big picture,.spg-big img{max-width:95vw;max-height:95dvh}
.spg-big img{width:auto;height:auto;object-fit:contain;margin:auto}
.spg-close{position:absolute;right:5%;bottom:5%;background:var(--color-d);outline:2px solid #fff;box-shadow:none}
.spg-nav{display:block;top:0;bottom:0;width:50%;font-size:0}
.spg-prev{left:0}
.spg-next{right:0}
.spg-prev:after,.spg-next:after{position:absolute;top:50%;transform:translateY(-50%);font-size:56px;line-height:1;opacity:.45}
.spg-prev:after{content:'‹';left:24px}
.spg-next:after{content:'›';right:24px}
.spg-nav:hover{background:transparent}
.spg-nav:hover:after{opacity:1}
body.spg-lock{overflow:hidden;touch-action:none}

}

@media screen and (min-width:1025px){
a,a:focus,a:active,a:visited{text-decoration:none!important}	
#bread{font-size:0.8em}
#bread a,#bread a:visited,#bread a:hover{text-decoration:underline;color:var(--color-a)}


.col6{grid-template-columns:repeat(6,minmax(0,1fr))}
.col8{grid-template-columns:repeat(8,minmax(0,1fr))}
.col10{grid-template-columns:repeat(10,minmax(0,1fr))}

#fooTop .container{max-width:90%}	
/* Startseite */
	
/*contact*/

.imprint{width:50%}
}

@media screen and (min-width:1500px){
.fluid{padding:3em 0}
.container,#fooTop .container{max-width:1200px}
.imprint{width:40%}

}