
/* https://coolors.co/palette/004b23-006400-007200-008000-38b000-70e000-9ef01a-ccff33
*/


body {
    font-family:Arial, Helvetica, sans-serif;
    background-color: var(--bright);
    margin: 0;
    padding: 0;
    overflow-x: hidden;
    
}

p, li{
    font-size: var(--font-large);
    overflow: hidden;
}

button{
    box-sizing: border-box;
    border: 0;
    border-radius: var(--border-radius);
    height: auto;
    font-size: var(--font-medium);
    padding: var(--button-padding);
    background-color: var(--dark);
    height: auto;
    color: var(--bright);
    /*text-decoration: underline;*/
    overflow: hidden;
    border:var(--dark) 2px solid !important;
}
.large{
    
    border-radius: calc(2 * var(--border-radius)) ;
    font-size: var(--font-xlarge);
    padding: var(--button-padding-large);
}
.bright{
    background-color: var(--bright);
    border:var(--bright) 2px solid !important;
    color: #000000;
}
button:hover{
    opacity: 0.75;
}
.outline{
    box-sizing: border-box !important;
    background-color: var(--dark)00 !important;
    border:var(--dark) 5px solid !important;
    color: #000000 !important;
}

select{
    
    padding: var(--button-padding);
    box-sizing: border-box;
    border: 0;
    border-radius: var(--border-radius);
    
    
    
    background-color: var(--bright)00;
    
    color: #000000;
    text-align: center; 
    /*border:var(--dark) 1px solid !important;*/
    appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  font-size: var(--font-medium);
  overflow: hidden;
  border:var(--dark) 2px solid !important;
  
}

select:valid {
    
    
    
  background-color: var(--bright);
  
  
  
}
select:focus {
  outline: none;
  box-shadow: none;
}





header{
    background-color: var(--bright);
    /*padding: 10px;*/
    padding: var(--header-footer-padding);
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: var(--gap);
    position: sticky;
    top: 0;
    align-content: flex-start;
    border-bottom: 1px solid var(--dark);
    color: #000000;
    z-index: 2;
}
#headerleft{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    overflow: hidden;
}
#headerright {
    display: flex;
    flex-wrap: wrap;
    gap: var(--gap);

    justify-content: center;
}
p, h1, a{
    padding: 0;
    margin: 0;
    text-decoration: none;
    
    color: var(--dark);
}

#headerleft p{
    overflow: hidden;
}

footer{
    background-color: var(--dark);
    
}

footer p, footer li, footer a {
    font-size: var(--font-medium);
    color: var(--bright);
}

li::marker{
    display: none;
}
.footerlinks{
    border-bottom: 1px var(--dark) solid;
    padding: var(--gap);
    color: var(--bright);
    z-index: 1;
}

#copyright{
    padding: var(--gap);
}
.logo{
    font-size: var(--font-xlarge);
    color: #000000;

}

#slogan{
    background-color: var(--dark);
    /*border-bottom: var(--bright) 1px solid;*/
    /*height: 100px;*/
    display: flex;
    flex-wrap: wrap;
    min-height: 550px;
    justify-content: center;
    border-bottom: var(--bright) 1px solid;
    align-items: center;
    flex-direction: column;
        gap: 50px;
padding: 0 var(--gap);
overflow: hidden;




    
}

.description{
    display: flex;
    font-size: var(--font-medium);
    color: var(--bright);
        display: flex;
    flex-direction: row;
    justify-content: flex-start;
    width: 100%;
    padding-left: var(--header-footer-padding);
}
.descriptioncard{
    padding-left: 0;
    height: 100%;
    min-height: 200px;
    justify-content: center;
    text-align: center;
    align-items: center;


    color: var(--dark);
    
}


.element {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    width: 100%;
    position: relative;
    
    background-color: var(--dark);
    border-bottom: 1px solid var(--bright);
    z-index: 1;
}
.titel {
    display: flex;
    min-height: 100px;
    width: 100%;
    padding-left: var(--header-footer-padding);
    color: var(--bright);
    /*padding: 0;*/
    margin: 0;
    text-align: center;
    /* margin-top: 20px; */
    align-items: center;
    z-index: 1;
    justify-content: center;
    /*justify-content: flex-start;*/
}
.titelcard {
    color: var(--dark);
    justify-content: center;
    padding-left: 0;
    /*font-weight: bold;*/
    font-size: var(--font-large);



}
#slogan p{
    min-height: 200px;
    display: flex;
    align-items: center;
    
    padding-left: 20px;
    color: var(--bright);
    padding: 0;
    margin: 0;
    justify-content: center;


    text-align: center;
    /*margin-top: 20px;*/
    font-size: var(--font-xxxlarge);  
}


#bestellen{
    overflow: hidden;
    background-color: var(--dark);
    
    
    display: flex;
    /*flex-wrap: wrap;*/
    justify-content: center;
    /*padding-top: 20px;*/
      

    align-content: center;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    padding: 0 var(--gap);









}
#weiter{
    /*background-color: var(--bright);*/
    /*border-bottom: var(--bright) 1px solid;*/
    
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    padding-top: 20px;
    padding-bottom: 20px;
    gap: var(--gap);
    align-items: center;
}



.cardgrid{
    display: grid;
    gap: var(--gap);
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    width: calc(100% - var(--gap) * 2);
        padding-bottom: 50px;

    max-width: 1500px;
    /*width: 1000px;
    aspect-ratio: 1/0.5;*/
    overflow: hidden;
    
    
}
.card{
    display: flex;
    background-color: var(--bright);
    border-radius: var(--border-radius);
    /*min-height: 400px;*/
    flex: 1 1 200px;
    padding: calc(2*var(--gap)) ;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;


}
#faq {
    justify-content: flex-start;
    border-bottom: 1px solid var(--bright);
    
}
.faqgrid{
    display: grid;
    flex-direction: column;
    gap: calc(3 * var(--gap));
        padding-bottom: 50px;
        overflow: hidden;

    
}
.faq {
    border-radius: var(--border-radius);
    /*background-color: var(--bright);*/
    margin: 0px var(--gap);
    color: var(--bright);
    
}
.question{
    color: var(--bright);
    font-size: var(--font-large);
    padding-bottom: var(--gap);
    /*font-weight: bold;*/
    
}
.answer {
    color: var(--bright); 
    font-size: var(--font-medium);
    /*height: 100px;*/
}

.answer a{
    
    text-decoration: underline;
    color: var(--bright);
}


#International_borders
	{
		opacity:1;
		fill:none;
		stroke: var(--bright) !important;
		stroke-width:1;
	}
#text
	{
		opacity:1;
		fill: #000000 !important;
		
		
	}
#Cantons_default
	{
		fill:none !important;
		fill-opacity:0 !important;
		stroke: #000000 !important;
		stroke-width:1;
	}



#SZ {fill: var(--bright) !important;
fill-opacity:1;}
#textSZ{fill:var(--dark)}

:root {
  /*--font-small: 18px;
  --font-medium: 24px;
  --font-large: 32px;
  --font-xlarge: 48px;
  --font-xxlarge: 60px;
  --font-xxxlarge: 74px;*/
  --font-small: clamp(18px, 1.2vw, 18px);

  --font-medium: clamp(20px, 1.5vw, 24px);

  --font-large: clamp(24px, 2vw, 32px);

  --font-xlarge: clamp(32px, 3vw, 48px);

  --font-xxlarge: clamp(42px, 4vw, 60px);

  --font-xxxlarge: clamp(54px, 5vw, 74px);

  --button-padding: 11.75px calc(11.75px * 2);
  --button-padding-large: 12px 24px;
  --header-footer-padding: 11.75px;
  --gap: 11.75px;
  --border-radius: 27.5px;

      --bright: #9EF01A;
    /* --dark: #004B23; */
    --dark: #e5e5e5;
    --dark: #14213d;


  
}
/*font-size: var(--font-xxlarge);*/
/*padding: var(--button-padding);*/
/*padding: var(--header-footer-padding);*/
/*gap: var(--gap);*/
/*border-radius: var(--border-radius);*/

