body {
margin: 0;
padding: 0;
font-family:Calibri, arial, sans-serif;
background-color:black;
}

html, body {
  margin: 0;
  padding: 0;
}
nav {
  display: none!important;
}

/* Burger-Icon */
.burger {
  font-size: 2rem;
  cursor: pointer;
  color: white;
  text-align: right;
  margin-right: 10px;
  display: none;
}

/* Mobile Navigation */
.mobile-nav {
 background-color: #4980ad;
 display: flex;
 flex-direction: column;
 align-items: center;
 position:absolute;
 top: 0;
 right: 0;
 padding-right: 0px;
 padding-top: 50px;
 padding-bottom: 50px;
 width: 100%;
  z-index: 100;
}





.mobile-nav a {
  padding: 15px;
  text-decoration: none;
  color: white;
  font-weight: bold;
  width: 100%;
  text-align: center;
}

.mobile-nav a:hover {
  background-color: #3a6b8f;
}

/* Desktop Navigation */
.desktop-nav {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 12px;
  background: #fdc72d;
  padding: 18px 0 4px 0;
  font-size: 18px;
  position: fixed;
  width: 100%;
  height: 32px;
  z-index: 100;
}

/* Versteckt */
.hidden {
  display: none;
}

/* Mobile: nur Burger und mobile-nav sichtbar */
@media screen and (max-width: 767px) {
.burger {
    display: block;
}

.desktop-nav {
    display: none;
}

.mobile-nav.hidden {
    display: none;
}

.mobile-nav.show {
    display: flex;
}
}

/* Desktop: mobile-nav und burger ausblenden */
@media screen and (min-width: 768px) {
.mobile-nav {
    display: none!important;
}

.burger {
    display: none;
}
.desktop-nav {
  display: flex!important;
}


}


#current-date-time {
position: absolute;
top: 20px;
right: 20px;
z-index: 3;
font-size: 15px; 
color:white;
padding-right: 10px;
}
  
        
header {
 display: flex;
  flex-direction: column;
 position:fixed;
text-align: center;
gap: 10px;
top: 0px;
width:100%;
height:170px;
padding:20px 0px 0px 0px;
background-color:black;
color: #fff;
z-index: 1;
 }


#logo {
 position: fixed;
  top: 2vh;       /* 2% der Höhe des Viewports */
  left: 5vw;      /* 5% der Breite des Viewports */
  width: 10vw;    /* Logo skaliert mit Bildschirmbreite */
  max-width: 150px;
 }


#smiley {  
position: fixed;
top: 10px;
right:350px;
        }

.desktop-nav {
  position: fixed;
  top:195px;
  width: 100%;
  height:52px;
  background: #fdc72d;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 12px;
  font-size: 18px;
  z-index: 99;
  box-sizing: border-box;
}


.desktop-nav a {
position:relative;
padding: 12px 25px 40px 20px;
height: 0px;
margin-top:-15px;
margin-right: -20px;
text-decoration:none;
color: black;
background-color:#fdc72d;
transition: background-color 0.3s ease;

}

.desktop-nav a::after {
content: '';
position: absolute;
bottom: 12px;
left: 0;
width: 0;
height: 5px;
background-color: #3aaee0; /* schönes Blau */
transition: width 0.4s ease;
}
.desktop-nav a:hover {
background:#223b50;
color: white;
text-decoration: none;
}

.desktop-nav a:hover::after {
text-decoration:none;
width: 100%;
}

.desktop-nav a.active {
background:#223b50;
color:white;
}


picture {
  display: block;
position: relative;
  margin:250px 0px 0px 0px;
  max-width: 100%;
  height: auto;
}

section {
  position: relative;
  padding: 40px 20px;
  border-radius: 25px;
  width: 90%;
  max-width: 800px;
  height: 1000px;
  margin: 100px auto;
  min-height: auto;
  text-align: center;
  z-index: 0;
}


   #leistungen {
    height:1000px;
}

   #schluss {
    height:650px;
}

  #impressum {
    height:auto;
}

  #datenschutz{
    height:auto;
}



footer {
position: fixed;
text-align: center;
background-color:black;
color: white;
padding: 15px 0px 15px 0px;
margin-top; 50px;
bottom: 0px;
width: 100%;
font-size: 15px; 
z-index:4;
border-top: 1px solid grey;
}

footer a:link {
margin-right: 10px;
color:white;
text-decoration:none;
}

footer a:hover {
text-decoration:underline;          
color:white;
}

footer a:visited  {
margin-right: 140px;
text-decoration: none;
color: white;
}




   
#sabrina{ 
position: relative;
width: 200px;
margin: 0 auto;
color: white;
}

#sabrina img{ 
 display: inline-block;
border: 1px solid white;
}


#center{ 
text-align: center;
color: white;
font-size: 25px;
        }

b { 
color:white;

        }

 
@font-face {
  font-family: 'unicode.impact';
  src: url('../fonts/unicode.impact.ttf') format('truetype');
  font-weight: normal;
  font-style: normal;
}


    
    @keyframes bop {
      0% {
        transform: scale(0.9);
      }
      50%,
      100% {
        transform: scale(1);
      }
    }
    
    @keyframes bop {
      0% {
        transform: scale(0.9);
      }
      80%,
      100% {
        transform: scale(1) rotateZ(-3deg);
      }
    }
    

@keyframes textclip {
  to {
    background-position: 200% center;
  }
} 

p { 
    color: white;
   font-size: 20px;

}


h1 {

font-family: 'unicode.impact', Haettenschweiler, 'Arial Narrow Bold', sans-serif;text-shadow: 0 0.1em 20px rgba(0, 0, 0, 1), 0.05em -0.03em 0 rgba(0, 0, 0, 1),
             0.05em 0.005em 0 rgba(0, 0, 0, 1), 0em 0.08em 0 rgba(0, 0, 0, 1),
             0.05em 0.08em 0 rgba(0, 0, 0, 1), 0px -0.03em 0 rgba(0, 0, 0, 1),
            -0.03em -0.03em 0 rgba(0, 0, 0, 1), -0.03em 0.08em 0 rgba(0, 0, 0, 1), -0.03em 0 0 rgba(0, 0, 0, 1);

text-align: center;
font-size: 340%;
color: white;
margin: -10px 20px -10px 20px;
padding:0px;
}


h2  {
font-family: 'unicode.impact', Haettenschweiler, 'Arial Narrow Bold', sans-serif;text-shadow: 0 0.1em 20px rgba(0, 0, 0, 1), 0.05em -0.03em 0 rgba(0, 0, 0, 1),
             0.05em 0.005em 0 rgba(0, 0, 0, 1), 0em 0.08em 0 rgba(0, 0, 0, 1),
             0.05em 0.08em 0 rgba(0, 0, 0, 1), 0px -0.03em 0 rgba(0, 0, 0, 1),
            -0.03em -0.03em 0 rgba(0, 0, 0, 1), -0.03em 0.08em 0 rgba(0, 0, 0, 1), -0.03em 0 0 rgba(0, 0, 0, 1);

text-align: center;
font-size: 240%;
color: white;
margin: 20px 20px 50px 20px;
padding:0px;
}

h3  {
font-family: 'unicode.impact', Haettenschweiler, 'Arial Narrow Bold', sans-serif;text-shadow: 0 0.1em 20px rgba(0, 0, 0, 1), 0.05em -0.03em 0 rgba(0, 0, 0, 1),
             0.05em 0.005em 0 rgba(0, 0, 0, 1), 0em 0.08em 0 rgba(0, 0, 0, 1),
             0.05em 0.08em 0 rgba(0, 0, 0, 1), 0px -0.03em 0 rgba(0, 0, 0, 1),
            -0.03em -0.03em 0 rgba(0, 0, 0, 1), -0.03em 0.08em 0 rgba(0, 0, 0, 1), -0.03em 0 0 rgba(0, 0, 0, 1);

text-align: center;
font-size: 200%;
color: white;
margin: 20px 20px 50px 20px;
padding:0px;
}



#gruß-start{
font-family: 'unicode.impact', Haettenschweiler, 'Arial Narrow Bold', sans-serif;text-align: center;
width: 100%;
font-size: 280% !important;
color: white;
padding: 0;
position:relative;
top:-50px; 
left: 0px;
z-index:0;
}

#tagline1 { font-family: 'unicode.impact', Haettenschweiler, 'Arial Narrow Bold', sans-serif;
text-shadow: 0 0.1em 20px rgba(0, 0, 0, 1), 0.05em -0.03em 0 rgba(0, 0, 0, 1),
             0.05em 0.005em 0 rgba(0, 0, 0, 1), 0em 0.08em 0 rgba(0, 0, 0, 1),
             0.05em 0.08em 0 rgba(0, 0, 0, 1), 0px -0.03em 0 rgba(0, 0, 0, 1),
            -0.03em -0.03em 0 rgba(0, 0, 0, 1), -0.03em 0.08em 0 rgba(0, 0, 0, 1), -0.03em 0 0 rgba(0, 0, 0, 1);
font-size:255%;
color: white;
position: relative;
top: 0px;
left:0px;
z-index: 99;
        }



#tagline {  font-family: 'unicode.impact', Haettenschweiler, 'Arial Narrow Bold', sans-serif;
text-shadow: 0 0.1em 20px rgba(0, 0, 0, 1), 0.05em -0.03em 0 rgba(0, 0, 0, 1),
             0.05em 0.005em 0 rgba(0, 0, 0, 1), 0em 0.08em 0 rgba(0, 0, 0, 1),
             0.05em 0.08em 0 rgba(0, 0, 0, 1), 0px -0.03em 0 rgba(0, 0, 0, 1),
            -0.03em -0.03em 0 rgba(0, 0, 0, 1), -0.03em 0.08em 0 rgba(0, 0, 0, 1), -0.03em 0 0 rgba(0, 0, 0, 1);
font-size: 200%;
color: #fdc72d;
position: relative;
top: 0px;
left:0px;
z-index: 99;
text-align: center;
        }

  
.animated-border-box, .animated-border-box-glow{
   position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0; 
  overflow: hidden; 
  z-index: 0;
border-radius: 10px;
}
 
.animated-border-box-glow{
  overflow: hidden;
  filter: blur(20px);
}
 
.animated-border-box:before, .animated-border-box-glow:before {
  content: '';
  z-index: -2;
  text-align: center;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%) rotate(0deg);
  position: absolute;
	width: 99999px;
	height: 99999px;
	background-repeat: no-repeat;
	background-position: 0 0;
  /*border color, change middle color*/
	background-image: conic-gradient(rgba(0,0,0,0), #1976ed, rgba(0,0,0,0) 25%);
  /* change speed here */
	animation: rotate 4s linear infinite;
}
 
.animated-border-box:after {
	content: '';
	position: absolute;
	z-index: -1;
  /* border width */
	left: 5px;
	top: 5px;
  /* double the px from the border width left */
	width: calc(100% - 10px);
	height: calc(100% - 10px);
 	background: linear-gradient(to bottom, black, #6bbcff);
	border-radius: 7px;
}
 
@keyframes rotate {
	100% {
		transform: translate(-50%, -50%) rotate(1turn);
	}
}
 
/*// Border Animation END//*/
 
 


#pfeil {
position: absolute;
bottom: 10px;
right: 10px;
 }




a {
color:white;
    }


a:hover img {
 filter: brightness(90%);
 }

a:hover {
text-decoration:none;
        }

      
a:visited  {
 color: white;
 text-decoration: underline;

 }



strong  { 
font-family: Impact, Haettenschweiler, 'Arial Narrow Bold', sans-serif;
text-shadow: 0 0.1em 20px rgba(0, 0, 0, 1), 0.05em -0.03em 0 rgba(0, 0, 0, 1),
        0.05em 0.005em 0 rgba(0, 0, 0, 1), 0em 0.08em 0 rgba(0, 0, 0, 1),
        0.05em 0.08em 0 rgba(0, 0, 0, 1), 0px -0.03em 0 rgba(0, 0, 0, 1),
        -0.03em -0.03em 0 rgba(0, 0, 0, 1), -0.03em 0.08em 0 rgba(0, 0, 0, 1), -0.03em 0 0 rgba(0, 0, 0, 1);

color: #fdc72d;
font-size: 30px;
}



.item {
  border: 2px solid rgb(95 97 110);
  border-radius: 0.5em;
  padding: 20px;
  width: 10em;
}

.container {
width: 50%;
margin: 0 auto;
background:white;
padding: 20px 50px 20px 130px;
text-align:left; 
border-radius: 8px;
}

#leistungen ul {
list-style-type: none;
}

#leistungen li::before {
content: '✿';
position: relative;
left: 0;
color: black; /* oder eine andere Farbe */
font-size: 18px;
line-height: 2;
}

 #leistungen ul li{
  text-indent: -1.5em;
  padding-left: 1.5em;
}

#leistungen ul a:link {   
text-decoration: none;
color: black;
}

#leistungen ul a:aktive {   
text-decoration: none;
color: black;
}
#leistungen ul a:visited {   
text-decoration: none;
color: black;
}



/* Allgemeines Styling fÃ¼r das Formular */
#contact-form {
 width: 60%;
 margin: 0 auto;
 background:white;
 padding: 20px;
 border-radius: 6px;
}

input[name="user_name"]:hover,
input[name="user_name"]:focus,
input[name="user_email"]:hover,
input[name="user_email"]:focus,
textarea:hover,
textarea:focus {
  background-color: #4980ad;
}



textarea::placeholder {
  color: white;
  opacity: 1;
}

input[name="user_name"],
input[name="user_email"],
textarea {
  width: 100%;
  background: #223b50;
  border: none;
  border-radius: 8px;
  padding: 10px;
  margin-bottom: 15px;
  font-family: Arial, sans-serif;
  font-size: 20px;
  color: white;
  box-sizing: border-box;
  transition: background-color 0.3s ease;
}

input::placeholder,
textarea::placeholder {
  color: white;
  opacity: 1;
}

input:focus,
textarea:focus {
  outline: none;
  color: white;
  background-color: #223b50;
}


input::placeholder,
textarea::placeholder {
  color: white;
  opacity: 1;
}


/* Placeholder-Farbe */
input[name="user_name"],
input[name="user_email"],
textarea {
font-family:Arial, sans-serif;
font-size: 17px;
color:white;
background: #223b50;
border-radius: 8px;
}
                          /* Senden-Button */
button[type="submit"] {
color: white;
background: #223b50;
border-radius: 8px;
padding: 10px 20px;
font-size: 16px;
cursor: pointer;
display: inline-flex;
align-items: center;
gap: 10px;
border: none; 
transition: background-color 0.3s ease, transform 0.2s ease;
}
    
button[type="submit"]:hover {
filter: brightness(150%); 
border: none;
}
                      /*Antwort- senden */
#confirmation-message {
 position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 9999;
  background-color: rgba(255,255,255,0.95);
  border: 2px solid #223b50;
  border-radius: 10px;
  padding: 20px 30px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.2);
  animation: fadeIn 0.6s ease-in-out;
 }

.confirmation-box h2 {
  margin-top: 0;
  color: #6db0d0;
  font-size: 250%;
}

.confirmation-box p {
  margin: 10px 0 0;
  font-size: 16px;
  color: #333;
}

.checkmark-container {
  display: flex;
  justify-content: center;
  margin-bottom: 10px;
}

.checkmark {
  width: 60px;
  height: 60px;
  stroke: #6db0d0;
  stroke-width: 4;
  stroke-linecap: round;
  stroke-linejoin: round;
  animation: scaleIn 0.3s ease-in-out forwards;
}

.checkmark-circle {
  stroke-dasharray: 166;
  stroke-dashoffset: 166;
  stroke: #6db0d0;
  animation: strokeCircle 0.6s ease-out forwards;
}

.checkmark-check {
  stroke-dasharray: 48;
  stroke-dashoffset: 48;
  stroke: #6db0d0;
  animation: strokeCheck 0.3s 0.6s ease-out forwards;
}

@keyframes strokeCircle {
  to { stroke-dashoffset: 0;}
}

@keyframes strokeCheck {
  to { stroke-dashoffset: 0;}
}

@keyframes scaleIn {
  0% { transform: scale(0); opacity: 0;}
  100% { transform: scale(1); opacity: 1;}
}

@keyframes fadeIn {
  from { opacity: 0; transform: translateX(-50%) scale(0.9);}
  to { opacity: 1; transform: translateX(-50%) scale(1);}
}

footer {
height: 20px;
position: fixed;
text-align: center;
background-color:black;
color: white;
padding: 15px 0px 15px 0px;
margin-top: 150px;
bottom: 0px;
width: 100%;
font-size: 15px; 
z-index:4;
border-top: 1px solid grey;
}

footer a:link {
margin-right: 10px;
color:white;
text-decoration:none;
}

footer a:hover {
text-decoration:underline;          
color:white;
}

footer a:visited  {
margin-right: 140px;
text-decoration: none;
color: white;
}


#sterne{
position:fixed;
bottom: 0px;
right:200px;
z-index: 100;
}


#siegel {
position:fixed;
bottom: 0px;
right: 100px;
z-index: 100;
}

#pfeile{
display: flex;
gap: 20px;
position: fixed;
bottom: 80px;
right: 300px;
}

                                @media screen and (min-width:768px) and (max-width: 1440px) {
  body {
    font-size: 16px;
  
}
 
 #sterne, #siegel,#current-date-time {
    display: none;
}
 #logo {
    top: 10px;
    left: 10px;
} 
  
#logo img {
 width: 115px;
}

#smiley{
    top: 10px;
    right: 10px;
} 
  
 
  #gruß-start {
    font-size:160%;
}

  #tagline-gruss {
    text-align: center;
    margin: -0px 0px 20px 0px;
   
}

#pfeile{
position: fixed;
bottom: 50px;
right: 10px;
}
.container {
width:70%;
padding:20px 0px 20px 0px;
}

#leistungen ul {
width: 80%;
list-style-position: outside;
padding: 0px 10px 10px 5px:
align: left;
}


}



                           
                                      @media screen and (max-width: 767px) {
p  {
   font-size: 18px;
     padding: 20px;
  text-align: justify;

 }

 #sterne,#siegel,#smiley,#current-date-time {
    display: none;
}


strong {
   font-size: 22px;
 }

 #current-date-time{
    display: none;
}


  header {
    background-image:url('images/bg.webp');

    position: relative;
    top: 0px;
    height: 400px !important;
    padding: 0px;
    text-align: center;
    background: black;
    border-bottom: 2px solid white;
 }

 #logo {
 position: relative;
    top: 0px;
    left: 10px;
width: 200px;
margin: 0 auto;
}

 #tagline{
background:transparent !important;
margin-top:-10px !important;
font-size: 140% !important;
}

h1 {
    font-size:300%;
  
}


 #tagline1{
font-size:180% !important;
margin-top:5px!important;

}



#gruß-start {
    font-size:160%;
 
}
picture {
margin-top: 30px !important;
}



  section {
    width: 80%;
    height:1000px;
    margin: -40px 0px 100px 20px;
    z-index: 0;
}


  #datenschutz {
  margin-top: 60px;
}


#about{
    height:1000px !important;
 }

 

 picture {
    margin: 130px 0px 50px 0px;
}

.container {
width:90%;
padding:20px 0px 20px 0px;
}

#leistungen ul {
width: 80%;
list-style-position: outside;
padding: 0px 10px 10px 5px:
align: left;
}


#contact-form {
    width:80%;
}

#pfeile{
position: fixed;
bottom: 50px;
right: 10px;
}

#confirmation-message {
width: 80%;
}


}



                                                   @media screen and (max-width: 480px) {
 


  #tagline{
   margin-top: -70px;
   background: #4980ad; 
   font-size: 120% !important;
   color: #facf0e;
}

 #tagline1 {
    text-align: center;
    margin: -0px 0px 20px 0px;
    font-size: 150% !important;
}

#about {
height: 1150px;
}


  #leistungen ul {
  width: 90%;
  padding-left: 20px;
}


}
