/* impressum.css - Custom styles for the Impressum page */

/* Force override for any table formatting */
table, tbody, tr, td, th {
  display: block !important;
  width: 100% !important;
  border: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  color: inherit !important;
  font-size: inherit !important;
  text-align: left !important;
  vertical-align: baseline !important;
}

/* Adjust container to reduce space */
.container {
  grid-template-rows: auto auto auto !important;
  min-height: 100vh;
}

/* Main wrapper with reduced padding */
.impressum-wrapper {
  grid-column: full-start / full-end;
  padding: 3rem 2rem; /* Reduced from 8rem to 3rem */
  display: flex;
  justify-content: center;
  align-items: flex-start;
  background-color: var(--color-light_gray);
  position: relative;
  z-index: 1;
  margin-top: -3rem; /* Negative margin to reduce space */
}

/* Container for impressum content */
.impressum-container {
  max-width: 80rem;
  width: 100%;
  background-color: var(--color-white);
  border-radius: 0.5rem;
  box-shadow: 0 1rem 2rem rgba(0, 0, 0, 0.1);
  padding: 3rem; /* Reduced from 4rem */
  margin: 0 auto;
  position: relative;
  z-index: 2;
}

/* Main title */
.impressum-title {
  font-size: 3rem; /* Reduced from 3.6rem */
  font-weight: 700;
  color: var(--color-green);
  margin-bottom: 2rem; /* Reduced from 3rem */
  text-align: center;
}

/* Company details section */
.company-details {
  margin-bottom: 2.5rem; /* Reduced from 4rem */
}

.company-details p {
  font-size: 1.6rem;
  color: var(--color-dark_gray);
  margin-bottom: 0.5rem; /* Reduced from 0.8rem */
  line-height: 1.5; /* Reduced from 1.6 */
  display: block !important;
}

.company-details a {
  color: var(--color-green) !important;
  text-decoration: none !important;
}

.company-details a:hover {
  color: var(--color-orange) !important;
  text-decoration: underline !important;
}

/* Disclaimer section */
.disclaimer-title {
  font-size: 2.5rem; /* Reduced from 2.8rem */
  font-weight: 700;
  color: var(--color-green);
  margin-bottom: 1.5rem; /* Reduced from 2.5rem */
}

.disclaimer-subtitle {
  font-size: 1.8rem; /* Reduced from 2rem */
  font-weight: 700;
  color: var(--color-orange);
  margin-top: 1.8rem; /* Reduced from 2.5rem */
  margin-bottom: 1rem; /* Reduced from 1.5rem */
}

.disclaimer-content p {
  font-size: 1.6rem;
  color: var(--color-dark_gray);
  margin-bottom: 1.5rem; /* Reduced from 2rem */
  line-height: 1.5; /* Reduced from 1.6 */
  display: block !important;
}

/* Force override for all elements in the impressum container */
.impressum-container * {
  display: block;
  max-width: 100%;
}

.impressum-container a {
  display: inline;
}

.impressum-container strong {
  display: inline;
  font-weight: 700;
}

/* Override any potential conflicting styles */
.impressum-container,
.company-details,
.disclaimer-section,
.disclaimer-content {
  float: none !important;
  position: static !important;
  width: auto !important;
  height: auto !important;
  overflow: visible !important;
  clear: both !important;
}

/* Adjust header height */
.header {
  min-height: auto !important;
  height: auto !important;
  padding: 2rem 0;
}

/* Adjust footer spacing */
.footer {
  padding: 3rem 6rem 2rem 6rem !important;
  margin-top: -2rem; /* Reduce space before footer */
}

.copyright {
  padding: 1.5rem !important;
  margin-top: 0 !important;
}

/* Responsive styles */
@media only screen and (max-width: 75em) {
  .impressum-container {
    padding: 2.5rem;
  }
  
  .impressum-wrapper {
    padding: 2.5rem 2rem;
  }
}

@media only screen and (max-width: 58em) {
  .impressum-wrapper {
    padding: 2rem 2rem;
  }
  
  .impressum-container {
    max-width: 60rem;
    padding: 2rem;
  }
  
  .impressum-title {
    font-size: 2.5rem;
  }
  
  .disclaimer-title {
    font-size: 2.2rem;
  }
  
  .disclaimer-subtitle {
    font-size: 1.7rem;
  }
}

@media only screen and (max-width: 37.5em) {
  .impressum-wrapper {
    padding: 1.5rem 1.5rem;
  }
  
  .impressum-container {
    padding: 1.5rem;
  }
  
  .impressum-title {
    font-size: 2.2rem;
  }
  
  .company-details p,
  .disclaimer-content p {
    font-size: 1.4rem;
  }
  
  .disclaimer-title {
    font-size: 2rem;
  }
  
  .disclaimer-subtitle {
    font-size: 1.5rem;
  }
}
