/* ------------------------------- Allgemeines Styling ------------------------------- */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}


/* Grundstil für die Seite */
        body {
            
            margin: 0;
            padding: 0;
            overflow-x: hidden;
			background-color:#3a3a3a;
			background-color:#001b27;
			background-color:#001727;
			animation:fadein 0.9s;
         -moz-animation:fadein 0.9s;
         -webkit-animation:fadein 0.9s;
         scroll-behavior: smooth;
        }






 .bgcolor_2 {background-color:#2f2f2f; }
 .bgcolor_brown {background-color:#312619; }
 .bgcolor_darkgreen {background-color:#0e2e20; }
 .bgcolor_lightgreen {background-color:#caebdb; }
 
 .bgcolor_darkblue {background-color:#000028; }
 
 
 .bgcolor_midgrey {background-color:#bfbfbf; }
 .bgcolor_midgrey {background-color:#b8b9c1; } 
 
 
 .bgcolor_darkergrey {background-color:#1c1c1c; }
 .bgcolor_darkergrey {background-color:#000b1a; }
  
  
  
  
 .bgcolor_black {background-color:#000000; }
 .bgcolor_white {background-color:#ffffff; }
 .bgcolor_military {background-color:#51534d; }
 
 


/* ------------------------------- Video Container  ----------------------------- */
		/* Video-Container */
        .video-container {
            position: relative;
            width: 100%;
            height: 90vh;
            overflow: hidden;
            margin-bottom: 0px;
			z-index:-500;
        }

        .video-container video {
            width: 100%;
            height: 100%;
            object-fit: cover;
			z-index:-500;
        }


/* ------------------------------- Video Container 2 (halbhohes Video) ----------------------------- */
        .video-container2 {
            position: relative;
            width: 100%;
            height: 40vh;
	
            overflow: hidden;
            margin-bottom: 0px;
			z-index:-10;
        }

        .video-container2 video {
            width: 100%;
            height: 100%;
            object-fit: cover;
            transform: scale(1.0); /* Mimics the zoom effect from the original slider */
        }
		
		

 /* ------------------------------- Slider-Container -------------------------------  */
    
        /* Slider-Container */
        .slider {
            position: relative;
            width: 100%;
            height: 90vh;
            overflow: hidden;
            margin-bottom: 0px;
			z-index:-500;
        }
        

        /* Einzelnes Slide */
        .slide {
            position: absolute;
            width: 100%;
            height: 100%;
            background-size: cover;
            background-position: center;
            opacity: 0;
            transition: opacity 3s ease, transform 5s ease;
        }

        /* Aktiver Slide */
        .active {
            opacity: 1;
            transform: scale(1.03);
        }

        /* Texte in Sliderbildern und Video */
        .headline {
            font-family: 'Cardo', Helvetica, Arial, sans-serif;
            font-weight: 700;
            position: absolute;
            left: 50%;
            top: 30%;
            transform: translate(-50%, -50%);
            width: 100%;
            color: #ffffff;
            font-weight: 900;
            padding: 10px 0;
            text-align: center;
            line-height: 100%;
            text-shadow: 1px 1px 70px rgba(0, 0, 0, 0.5);
        }

        .underline {
            font-family: 'Sofia Sans Semi Condensed', Helvetica, Arial, sans-serif;
            position: absolute;
            left: 50%;
            top: 50%;
            transform: translate(-50%, -50%);
            width: 100%;
			font-weight: 700;
            color: #ffffff;
           
            padding: 10px 0;
            text-align: center;
            line-height: 150%;
            letter-spacing: 0.3em;
            text-shadow: 1px 1px 70px rgba(0, 0, 0, 1.0);
        }

        .underline.gold {
            color: #FFD700; /* Gold color for the underline in video-container */
        }
		
		.overline {
            font-family: 'Sofia Sans Semi Condensed', Helvetica, Arial, sans-serif;
            position: absolute;
            left: 50%;
            top: 8%;
            transform: translate(-50%, -50%);
            width: 100%;
			font-weight: 700;
            color: #ffffff;
           
            padding: 10px 0;
            text-align: center;
            line-height: 120%;
            letter-spacing: 0.3em;
            text-shadow: 1px 1px 70px rgba(0, 0, 0, 1.0);
        }


 
    


	
	
	
	
	
 /* ------------------------------- New Grid Section für 3er/4er-Slider -------------------------------  */	
        .grid-section {
            display: grid;
            grid-template-columns: repeat(4, 1fr);
            gap: 0;
            width: 100%;
            margin: 0;
            padding: 0;
						
        }

        /* Grid Slider Container */
        .grid-slider		{
            position: relative;
            width: 100%;
            aspect-ratio: 1 / 1; /* Maintain square aspect ratio */
            overflow: hidden;
            border: none;
			z-index:0;
        }
		
		.grid-slider-hover:hover		{
        box-shadow: 0 0px 400px 400px rgba(184, 185, 193, 1.0);
		z-index:500;
		transform: scale(1.00);
		transition: 0.2s ease-in-out;    
        }

        /* Grid Slide */
        .grid-slide		{
            position: absolute;
            width: 100%;
            height: 100%;
            background-size: cover;
            background-position: center;
            opacity: 0;
            transition: opacity 0.2s ease;
				
        }

        /* Grid Active Slide */
        .grid-slide.active {
            opacity: 1;
			transform: scale(1.0);
		
        }
		
		
		/* Grid Video Container */
        .grid-video-container {
            position: relative;
            width: 100%;
            aspect-ratio: 1 / 1;
            overflow: hidden;
            border: none;
			z-index:0;
				
        }

        .grid-video-container video {
            width: 100%;
            height: 100%;
            object-fit: cover;
			
        }

        /* Responsive adjustments for grid sliders */
        @media (max-width: 768px) {
            .grid-section {
                grid-template-columns: repeat(2, 1fr) /* Stack vertically on small screens */
            }
        }


		







/* -------------- Grid Container für die Kacheln (Galleries)------------------------------- */
.grid-container {
  display: grid;
  width: 92vw;
}

.grid-container_4 {
  display: grid;
  width: 92vw;
}









/* -------------------- 2.) Bild zu Text-Kacheln ------------------------------ */
.tile-custom {
    position: relative;
    overflow: hidden;
    text-decoration: none; /* Entfernt die Unterstreichung der Links */
    display: block; /* Macht die gesamte Tile klickbar */
    width: 100%;
    aspect-ratio: 1 / 1; /* Quadrat */
    background-color: #293642;
    border: 0px solid #ffffff;
    box-shadow: 0 0px 0px 0px rgba(227, 250, 233, 0.9);
    cursor: pointer;
	

}

.content-custom {
    position: relative;
    width: 100%;
    height: 100%;
}

.content-custom img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: opacity 0.3s ease-in-out;
}

.content-custom .text {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    opacity: 0;
    transition: opacity 0.3s ease-in-out;

    font-family: 'Sofia Sans Semi Condensed', Helvetica, Arial, sans-serif; 
	font-weight:400;
    text-align: center;
    
    color: #ffffff;
    line-height:120%;
    letter-spacing:0.15em;
    text-transform:uppercase;
}

.tile-custom:hover img {
    opacity: 0; /* Bild wird unsichtbar */
	
}

.tile-custom:hover .text {
    opacity: 1; /* Text wird sichtbar */
}

.tile-custom:hover {
    box-shadow: 0 0px 40px 40px rgba(255, 255, 255, 1.0);
	box-shadow: 0 0px 40px 40px rgba(221, 224, 255, 1.0);
	z-index:500;
	transform: scale(1.6);
	transition: 0.2s ease-in-out;
}








/* ----------------- Zweispaltiges Layout ------------------------------ */
.two-columns {
  display: flex;
  gap: 1rem 2rem;
  flex-wrap: wrap;
								border:0px solid #FF0000;
}

.spalte{
  flex: 1;
  

  padding: 0.0rem;
  border: 0px solid #ddd;
}

.spalte1 {
  flex: 1;
  

  padding: 0.0rem;
  border: 0px solid #ddd;
}

.spalte2 {
  flex: 2;
  

  padding: 0.0rem;
  border: 0px solid #ddd;
}

.spalte3 {
  flex: 3;
  

  padding: 0.0rem;
  border: 0px solid #ddd;
}

/* Für kleinere Geräte */
@media (max-width: 768px) {
  .two-columns {
    flex-direction: column;
  }
}





img  { width:100%;}






/* ==== accordeon FAQ =================================================== ==== */
.akkoroom  {width:100%; margin:0 auto;}



.collapsible,
.collapsible_last {
	background-color:#1c1c1c;
	background-color:#000b1a;
    cursor: pointer;
    padding: 18px;
    width:100%;
    border-top: 1px solid #5f5f5f;
	border-bottom:0px dotted #000000;
    border-right: 0px dotted #000000;
	border-left:0px dotted #000000;	
    outline: none;

    font-family: 'Sofia Sans Semi Condensed', Helvetica, Arial, sans-serif; 
	font-weight:400;   
    color: #ffffff;  
    letter-spacing:0.05em;
    text-transform: none;
    text-align: center;
}



.collapsible:hover,
.collapsible_last:hover {
	color: #d6860d; 
	letter-spacing:0.07em;
    -webkit-transition: .3s ease-in-out;
    transition: .2s ease-in-out;

}

.accorcontent {
    padding: 20px 0px;
    display: none;
    overflow: hidden;
    
    -webkit-transition: .3s ease-in-out;
    transition: .3s ease-in-out;

}


.innertext {
        font-family: 'Sofia Sans Semi Condensed', Helvetica, Arial, sans-serif; 

	    letter-spacing:0.05em;      
        font-weight: 400;

        color: #cfcfcf;
        word-spacing: 0.1em;
        line-height:160%;
        margin-top:0;
        margin-bottom:50px;
        text-align:left;
}

@media all and (max-width: 1400px) {
        .innertext { line-height:155%;}
}


@media all and (max-width: 1200px) {
        .innertext { line-height:150%;}
}


@media all and (max-width: 960px) {
        .akkoroom     {width:100%; }
        .collapsible  {}
        .collapsible_last  { }
        .accorcontent  {padding: 20px 20px; }
}







.red {
    color: #ff0000;
}












/* ===========================     --- VIDEOS --- */
.wrappervideo {
        max-width: 1400px;
        padding: 0 0px 0em 0px;
        margin: 0 auto;
		z-index:-10;
         }


.backgroundvideo {
        background-color: #000;
		
         }
		 
		 
		 
#background-video {
   width: 100%;
   height: auto;
   object-fit: cover;

   border:0px solid #FF0000;
   z-index: -10;
}		 
		 

/* ===================== elastic video ========================= */
.elastic-video {
         position: relative;
         padding-bottom: 55%;
         padding-top: 15px;
         height: 0;
         overflow: hidden;
}

.elastic-video iframe {
         position: absolute;
         top: 0;
         left: 0;
         width: 100%;
         height: 100%;
}


















/*-------------------- Buttons ------------------------- */
.goto-button {
  padding: 10px 20px;

  cursor: pointer;
  margin: 0 auto;
  margin-bottom: 20px;

  background-color:#3a3a3a;
  background-color:#001727;
  border:1px solid #ffffff;

  font-family: 'Sofia Sans Semi Condensed', Helvetica, Arial, sans-serif; 
  font-weight:400;
  
            font-size: 0.9em;
			text-transform:uppercase;
			letter-spacing:0.15em;
						
  color: #ffffff;
  line-height:140%;

  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  text-decoration: none;
  

  transition: color 0.3s;
  
  box-shadow: 0px 0px 50px 50px #dde0ff;
  z-index:9000;
}



.goto-button:hover {
  background-color:#6a6a6a;
  background-color:#293642;
  border:0px solid #ffffff;
  color: #ffffff;
  transition: 0.3s;
  box-shadow: 0px 0px 60px 60px #dde0ff;
  

	z-index:9000;
	transform: scale(1.4);
	
}






.buttonongreen {
  background-color:#0e2e20;
  border: 1px solid #339c6e;
  color: #ffffff;
}



.buttonongreen:hover {
  background-color:#000000;
  border:1px solid #339c6e;
  color: #ffffff;
}





a {
text-decoration:none; color:#d1d1d1;
}

a:hover {
color:#ede1a8; transition: 0.3s; 
}





/* ----------------- TYPO ------------------------------ */
h1 {    
	font-family: 'Frank Ruhl Libre';
				
	font-weight:500;
	line-height:110%;
	
	color: #bfbfbf;
/*
text-shadow: 1px 1px 100px rgba(48, 100, 3, 0.6);
text-shadow: 1px 1px 100px rgba(0, 0, 0, 0.6);
*/

        }


h2 {    
	font-weight:500;
	font-family: 'Frank Ruhl Libre';
	
	text-align:left;
	color: #ffffff;
	letter-spacing:0.00em;
	
  	line-height:110%;
	margin-bottom:10px;
        }
		
		
	
		
h3 {    
	font-family: 'Frank Ruhl Libre';
	
	text-align:left;
	color: #ffffff;
	letter-spacing:0.01em;
	line-height:130%;
  	
	padding:0px 0px 0px 0;
	margin-top:-0px;
	
    }		
		
		
h4 {    
	font-family: 'Sofia Sans Semi Condensed', Helvetica, Arial, sans-serif; 
	font-weight:400;
	text-align:center;
	color: #737575;
	letter-spacing:0.15em;

	line-height:120%;

	padding:0px 0px 0px 0;
	margin-top:0px;
	text-transform:uppercase; 
    }	

p {     
	font-family: 'Sofia Sans Semi Condensed', Helvetica, Arial, sans-serif; 
	
	font-weight:400;
	text-align:left;
	color: #ffffff;
	hyphens: auto;
	margin;0;
	letter-spacing:0.05em;
        }

.pexplain {
	text-align:left;
	line-height:170%;	
	letter-spacing:0.05em;
        }



.lauftext{
	color: #ffffff;
	margin-left:0%;
	letter-spacing:0.05em;
        }



.first{
	font-weight:700;
	font-size:120%;
	color:#ffffff;

	margin-left:10%;
	padding:2px 2px 2px 10px;
	border-bottom:1px solid #d4890d;
	border-left:30px solid #d4890d;
        }

.subline {
    color: #b9c2a8;
	color: #ffffff;
	font-weight:400;
    padding-bottom:20px;
    text-align:center;
	line-height:150%;
	letter-spacing:0.3em;

        }
		
		
		
		

.count {
        color: #ab9350;
	
		font-weight:400;
        padding-bottom:3px;
        text-align:center;
	
        }

		
ul {
        color: #d6860d;	
		font-weight:400;
        line-heigth:200%;
		list-style: square;
        }		


.todo {
        color: #d6860d;	
		font-weight:400;
        padding-bottom:3px;
		margin-top:-8px;
        text-align:right;	
        }

.todopoint {     
	font-family: 'Sofia Sans Semi Condensed', Helvetica, Arial, sans-serif; 
	font-weight:400;
	letter-spacing:0.05em;
	text-align:left;
	
	color: #ffffff;

	hyphens: auto;
	margin:0;
        }


		



/* ----- 3 spaltige Artikelbox unter dem Bild --- */
.articlebox {
display: grid;
grid-template-columns: repeat(3, 32%);
grid-template-rows: 1fr;
grid-column-gap: 2%;
grid-row-gap: 60px;
margin-bottom:60px;
border:0px solid #FF0000;
z-index:1000;
}

.articleroom1 { grid-area: 1 / 1 / 2 / 2; border:0px solid #FF0000;}
.articleroom2 { grid-area: 1 / 2 / 2 / 3; border:0px solid #00FF00;}
.articleroom3 { grid-area: 1 / 3 / 2 / 4; border:0px solid #0000FF;} 


.sizes_sub {     
	font-family: 'Sofia Sans Semi Condensed', Helvetica, Arial, sans-serif; 
	font-weight:400;
	font-size:160%;
	line-height:140%;
	text-align:center;
	color: #FFFFFF;
	
        }

.sizes_tx {     
	font-family: 'Sofia Sans Semi Condensed', Helvetica, Arial, sans-serif; 
	font-weight:400;
	font-size:100%;
	line-height:140%;
	text-align:center;
	color: #a2a2a2;
	margin-bottom:10px;
        }

.sizes_lim {     
	color: #FF0000;
	letter-spacing:0.2em;
        }

.sizes_img { margin-bottom:10px; width:60%; margin-left:20%;}

.printsizes:hover {filter: brightness(3.5); transition: filter 0.3s; }




@media (max-width: 768px) {
	.articlebox {
	display: grid;
	grid-template-columns: repeat(1, 100%);
	grid-template-rows: 1fr;
	grid-column-gap: 2%;
	grid-row-gap: 60px;
	margin-bottom:60px;
	border:0px solid #FF0000;
	}

	.articleroom1 { grid-area: 1 / 1 / 2 / 2; border:0px solid #FF0000;}
	.articleroom2 { grid-area: 2 / 1 / 3 / 2; border:0px solid #00FF00;}
	.articleroom3 { grid-area: 3 / 1 / 4 / 2; border:0px solid #0000FF;} 
}



















.centersmall{
	text-align: center;
	width:80%;
	margin-left:10%;

        }








/* -----------------footer ----------------- */
 .footer {background-color:#000000; }
 
 .footer_tx {font-size:80%;   
	line-height:150%;
  	letter-spacing:0.15em;
  	text-transform:uppercase; }
	
	
	
.footerbox {
display: grid;
grid-template-columns: repeat(3, 32%);
grid-template-rows: 1fr;
grid-column-gap: 2%;
grid-row-gap: 60px;
margin-bottom:60px;
border:0px solid #FF0000;
z-index:1000;
}

.footerroom1 { grid-area: 1 / 1 / 2 / 2; border:0px solid #FF0000; z-index:1000;}
.footerroom2 { grid-area: 1 / 2 / 2 / 3; border:0px solid #00FF00; z-index:1000;}
.footerroom3 { grid-area: 1 / 3 / 2 / 4; border:0px solid #0000FF; z-index:1000;} 
	


@media (max-width: 768px) {
	.footerbox {
	display: grid;
	grid-template-columns: repeat(1, 100%);
	grid-template-rows: 1fr;
	grid-column-gap: 2%;
	grid-row-gap: 60px;
	margin-bottom:60px;
	border:0px solid #FF0000;
	}

	.footerroom1 { grid-area: 1 / 1 / 2 / 2; border:0px solid #FF0000;}
	.footerroom2 { grid-area: 2 / 1 / 3 / 2; border:0px solid #00FF00;}
	.footerroom3 { grid-area: 3 / 1 / 4 / 2; border:0px solid #0000FF;} 
}











.center{text-align:center;}

.right{text-align:right;}


.green{color: #B7E611;}

.white{color:#ffffff;}

.red {color: #ff0000;}

.gold {color:#d6860d;}


.black{color:#000000;}


hr {color:#c7a444; color:#000000; margin-bottom:20px; border-top: 10px solid;border-left:0px; border-bottom:0px;boder-right:0px;}
.dottedline {color:#afafaf; margin-bottom:20px; border-top: 2px dotted;border-left:0px; border-bottom:0px;boder-right:0px;}
.whiteline {color:#000000; color:#c7a444; margin-bottom:20px; border-top: 1px solid;border-left:0px; border-bottom:0px;boder-right:0px;}

.verticalLine,
.verticalLine_white
         {
         margin-left: auto;
         margin-right: auto;
         width: 0.0em;
         height:50px;
         background-color:#FFFFFF;
         }


.verticalLine        { border-left: 1px solid #000000;}
.verticalLine_white  { border-left: 1px solid #FFFFFF;}

@media all and (min-width: 1000px) {
        .verticalLine,
        .verticalLine_white
                     {height:100px;}
}





.verticalLineShort
         {
         margin-left: auto;
         margin-right: auto;
         width: 0.0em;
         height:50px;
         background-color:#FFFFFF;
         border-left: 1px solid #000000;
         }

@media all and (max-width: 1000px) {
        .verticalLineShort
                     {height:30px;}
}



/*  ----- distancer  --- */

.gap0   {height: 0px; margin:0; padding:0;}

.gap5   {border-left: 0px solid; height: 5px; width: 0px;}
.gap10   {border-left: 0px solid; height: 10px; width: 0px;}
.gap20   {border-left: 0px solid; height: 20px; width: 0px;}
.gap40   {border-left: 0px solid; height: 40px; width: 0px;}
.gap60   {border-left: 0px solid; height: 60px; width: 0px;}
.gap80   {border-left: 0px solid; height: 80px; width: 0px;}
.gap100   {border-left: 0px solid; height: 100px; width: 0px;}


@media all and (max-width: 860px) {
.gap5   {border-left: 0px solid; height: 5px; width: 0px;}
.gap10   {border-left: 0px solid; height: 5px; width: 0px;}
.gap20   {border-left: 0px solid; height: 10px; width: 0px;}
.gap40   {border-left: 0px solid; height: 10px; width: 0px;}
.gap60   {border-left: 0px solid; height: 40px; width: 0px;}
.gap80   {border-left: 0px solid; height: 40px; width: 0px;}
.gap100   {border-left: 0px solid; height: 50px; width: 0px;}
}


.pad50 {padding-left:50%;}
@media all and (max-width: 860px) {.pad50 {padding-left:0%;}}


/*  ----- displaying  --- */
.displaysmart_none {display: none;}
         @media all and (min-width: 560px) {.displaysmart_none {display: block;}
}


.displaysmart_on {display: none;}
         @media all and (max-width: 559px) {.displaysmart_on {display: block;}
}




/* Small screens - schaltet bei kleineren aus - bei größeren an: */
@media all and (max-width: 561px) {
        .displaynone {
                display:none;
                }
}



/*  ... schaltet bei kleineren ein
                 bei größeren  aus*/
@media all and (min-width: 560px) {
        .displaymob {
                display:none;
                }
}



@keyframes fadein{
        from{
        opacity:0;}to{opacity:1;}}
        @-moz-keyframes fadein{from{opacity:0;}to{opacity:1;}}
        @-webkit-keyframes fadein{from{opacity:0;}to{opacity:1;}}
        @-o-keyframes fadein{from{opacity:0;}to{opacity:1;}}
