/* therapie am sachsenring       */
/* Copyright 2026 Lutz Moppert   */
/************************************* 
 * Allgemeine Angaben
 *************************************/
html>body {
  margin: 0;
  padding-top: 100px;
  color: #545855;
  font-family: -apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Noto Sans",sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";
  font-size: 1rem;
  line-height: 1.5;
}
a:link, a:visited {
  text-decoration : none;
  color: #999;
  }
a:hover {
  text-decoration: underline;
  color: #d80;
  }
a:active {
  text-decoration : none;
  color: #d80;
  }
a.header-link {
  font-weight: 600;
  text-decoration : none;
  color: #d80;
  }
::marker, .cdc {
  color: #ffaa22;
}
img {
  display: block;
  border-radius: 2%;
  overflow: hidden;
}
li, p {
  max-width: 75ch;
}
code, pre    {
  font-family: monaco, "Bitstream Vera Sans Mono", "Courier New", courier, monospace;
  font-weight: normal;
  font-size: small;
}
.separator {
  color: #ffaa22;
}
.spacer {
  flex: 1 1 auto;
}

/************************************* 
 * Header mit Logo
 *************************************/
header {
  width: 100%;
  position: fixed;
  top: 0;
  left: 0;

  background: linear-gradient(
    to bottom, 
    white 60%, 
    #dddddd 60%,
    #dddddd 97%,
    white 97%
  );
}
.header-content, main, footer {
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 30px;
  padding-right: 30px;
}
.header-content {
  display: flex;
  flex-direction: row;
  padding-left: 10px;
}
.logo {
  margin-top: 40px;
  margin-bottom: 6px;
  height: 60px;
}
.header-link {
  padding-top: 75px;
  padding-left: 20px;
  padding-right: 20px;
}

/************************************* 
 * Hauptcontent
 *************************************/
.image-label {
  text-align: center;
}
main h1 {
  padding-top: 50px;
  font-size: clamp(1.5rem, 5vw, 2.5rem);
  color: #888;
}
main h2 {
  margin-top: 50px;
  scroll-margin-top: 140px;
  font-size: clamp(1.25rem, 4vw, 2rem);
  font-weight: bold;
  color: #666;
}
main h3 {
  margin-top: 30px;
  font-size: clamp(1.1rem, 3vw, 1.3rem);
  font-weight: 500;
  color: #666;
}
main h5 {
  margin-top: 25px;
}

/************************************* 
 * Allgemeine Angaben zur Praxis
 *************************************/
.general-info {
  display: flex;
  flex-direction: row;
  padding: 6px 0;
  gap: 2rem;
}
@media (max-width: 900px) {
  .general-info {
    flex-direction: column;
  }
}
.left-column {
  flex: 1.6;
  padding: 6px 0;
}
.right-column {
  flex: 1;
}
#Behandlungsraum {
  padding-top: 48px;
}
@media (max-width: 1140px) {
  #Behandlungsraum img {
    width: 377px;
    height: 252px;
  }
}
@media (max-width: 900px) {
  #Behandlungsraum {
    display: block;
    text-align: center;
    width: 100%
  }
  #Behandlungsraum img {
    width: 472px;
    height: 315px;
  }
}
.list-inline {
  list-style: none;
  padding: 0;
  margin: 1em 0;      /* Abstand zum Fließtext oben/unten */
  display: flex;      /* Flexbox für sauberen Umbruch */
  flex-wrap: wrap;    /* Erlaubt Zeilenumbruch bei vielen Links */
  gap: 0 10px;        /* 0px vertikal, 10px horizontaler Abstand */
}
.list-inline li {
  white-space: nowrap; /* Verhindert, dass ein Link-Titel mitten im Wort bricht */
}
.list-inline li:not(:last-child)::after {
  content: "|";
  margin-left: 10px;   /* Abstand nach dem Link zum Strich */
  color: #aaa;         /* Dezentes Grau für den Trenner */
  font-weight: 300;    /* Optional: Dünnerer Strich wirkt eleganter */
}

/************************************* 
 * Vorstellung des Teams
 *************************************/
.team-member {
  display: flex;
  flex-direction: row;
  gap: 2rem;
  margin: 4rem 0;
}
@media (max-width: 1260px) {
  .team-member {
    flex-direction: column;
  }
}
.image-column {
  overflow: hidden;
  padding: 5px 10px;
  width: 172px;
}
.image-frame{
  padding: 5px 5px 5px 5px;
  border-radius: 3%;
  border: 1px solid #ddd;
}
.member-column {
  flex: 1;
  overflow: hidden;
}
 
/************************************* 
 * Anfahrtbeschreibung
 *************************************/
.visit-us {
  display: flex;
  padding: 6px 0;
  gap: 2rem;
  margin-bottom: 8rem;
}
.visit-description, .visit-map {
  flex: 1;
  overflow: hidden;
  padding: 5px 0;
}
@media (max-width: 900px) {
  .visit-us {
    flex-direction: column;
  }
}
#details img {
  padding-bottom: 2rem;
}

/************************************* 
 * Footer Angaben
 *************************************/
footer {
  display: flex;
  gap: 2rem;
  border-top: 1px solid #ddd;
  color: rgba(0,0,0,.5);
  padding-top: 1rem;
  padding-bottom: 20rem;
}
.footer-address {
  margin-left: 1rem;
}
.footer-address .heading {
  font-weight: bold;
}
.static-links {
  display: flex;
  flex-direction: row;
  gap: 1rem;
}
@media (max-width: 900px) {
  .static-links {
    flex-direction: column;
  }
}
.nowrap {
    white-space: nowrap;
}

/************************************* 
 * Design des Impressums
 *************************************/
dt {
  display: block;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.5rem;
  color: #555
}
dd {
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5rem;
  margin-bottom: 8px;
  margin-left: 0;
  color: #555;
}
.mt-5 {
  margin-top: 60px;
}
.mt-4 {
  margin-top: 40px;
}
