/* pacifico-regular - latin */
@font-face {
 font-display: swap;
 font-family: 'Pacifico';
 font-style: normal;
 font-weight: 400;
 src: url('./fonts/pacifico-v22-latin-regular.woff2') format('woff2'),
  url('./fonts/pacifico-v22-latin-regular.ttf') format('truetype');
}
/* roboto-regular - latin */
@font-face {
 font-display: swap;
 font-family: 'Roboto';
 font-style: normal;
 font-weight: 400;
 src: url('./fonts/roboto-v32-latin-regular.woff2') format('woff2'),
  url('./fonts/roboto-v32-latin-regular.ttf') format('truetype');
}
/* roboto-700 - latin */
@font-face {
 font-display: swap;
 font-family: 'Roboto';
 font-style: normal;
 font-weight: 700;
 src: url('./fonts/roboto-v32-latin-700.woff2') format('woff2'),
  url('./fonts/roboto-v32-latin-700.ttf') format('truetype');
}

/* 
die alten Farben
rot:        #a93d31
text rot:   #821417
beige:      #ffe5c1
text beige: #fdd48f
braun:      #3e2611 62,38,17
dunkles beige: e8ae77,eab58f

neue Farben
rot 153,18,26
grau 236,236,236
dunkelbraun 58,33,0
*/

* {font-family:'Roboto',sans-serif;}
.pacifico {font-family:'Pacifico',sans-serif;}

body {color:rgb(58,33,0); background:white; text-align:center; margin:0; padding:0;}
.banner { }
.site {width:100%;margin:0 auto;}
.holz {border:1px solid #27262c; background:#27262c url(bilder/holz.jpg);color:white;}
.site1 {max-width:1440px;margin:0 auto;padding-bottom:30px;}
.banner {width:100%;max-width:1920px;margin:0 auto;position:relative;}
 .banner img {width:100%}
 .banner .overlay {position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background-color:rgba(255,255,255,.5);padding:.6% 1.5%;color:rgb(153,18,26);font-size:2.1em;font-weight:bold;text-transform:uppercase;letter-spacing:.17rem;}
 .pikto_oben{position:absolute;right:10%;bottom:0px;width:15%;min-width:150px;}
 .button{background-color:#800000;border:0px;color:#fff;padding:10px;}
 .button:hover {color:#eee;}

.inhalt {width:100%; line-height:1.4em;}
.inhalt_ges {width:96%;margin-left:auto;margin-right:auto;line-height:1.4em;padding-bottom:40px;}

.menuwrap {display:flex;padding-top:1%;width:1440px;margin-left:auto;margin-right:auto;}
.logo {display:block;width:140px;margin:0 1% 1% 1%;cursor:pointer;}
.logo img {width:100%;}
.logo_m {display:none;}
.div_ka50{width:46%;margin:1%;border:1px solid #800000;}

.flexi {display:flex;flex-wrap:wrap;justify-content:center;gap:2.6%;align-items: stretch;}
.flexi_b {display:flex;flex-wrap:wrap;justify-content:center;gap:2.6%}
.flexi_r {display:flex;flex-wrap:wrap;justify-content:right;align-items:center;gap:2.6%}
.flexi_l {display:flex;flex-wrap:wrap;justify-content:left;align-items:center;gap:2.6%;align-items: stretch;}

.praline {display:block;margin:1% 0;width:10%;min-width:90px;text-align:left;}
.div05 {display:block;margin:1% 0;width:280px;text-align:left;}
.div15 {display:block;margin:1% 0;width:63%;min-width:280px;text-align:left;}

.div_start{margin:1% 0;width:350px;height:350px;position:relative;overflow:hidden;}
.div_start img{width:100%;height:100%;object-fit: cover;transition: transform .2s;}
.div_start img:hover{transform: scale(1.1);}
.div3 {margin:1% 0;width:31.3%;min-width:280px}
.div3b {display:block;margin:1% 0;width:31.6%;}
.div4 {display:block;margin:20px 10px 40px 10px;width:20%;text-align:left;font-size:.9em;}
.div4 img {width:100%;display:block}
.d_50{width:45%;text-align:left;}
 
.titelunten {position:absolute;bottom:3%;left:50%;transform:translate(-50%);padding:7px;background-color:white;z-index:9999;font-size:1.2em;text-transform: uppercase;letter-spacing: 1px;}
.slogan {font-size:3em;color:rgb(153,18,24);margin: 2% auto ;line-height:140%}

.fotowrap .button {display:block;width:180px;height:28px;line-height:30px;font-size:.85em;background-color:#fdcf8c;border:1px solid #fbb652;color:#333;padding:4px 6px;font-weight:bold;text-transform:uppercase;}
.fotowrap .hell {background-color:rgb(255,245,216);padding:8px 12px;margin:.5% 0;}
.fotowrap .dunkel {background-color:rgba(255,245,216,.75);padding:4px 6px;margin:1% 0;}
 
.us {display:none;} 
.grauhg {background:rgb(236,236,236);} 
.rot {color:rgb(153,18,26);}
.rothg {background:rgb(153,18,26);border:1px solid rgb(153,18,26);}
.weis {color:white;}
.weishg {background:white;}
.gelb {color:rgb(254,208,0)}
.lu_grau{border-bottom:1px solid gray;}
legend{font-size:1.2em;}
fieldset{padding-top:20px;padding-bottom:20px;max-width:800px;margin-left:auto;margin-right:auto;}
.d_800{max-width:800px;margin-left:auto;margin-right:auto;}

h1 {text-align:center;font-family: 'Pacifico', cursive;font-size:3em;  color:rgb(153,18,24);font-weight:normal;line-height:1.4;}
h2 {
  color: rgb(153, 18, 26);
  font-size: 1.8rem;
  margin-bottom: 1rem;
  border-bottom: 2px solid rgb(153, 18, 26);
  padding-bottom: 0.4rem;
  font-weight: 700;line-height:1.5;text-transform:uppercase;
}


h2 .klein {font-size:.6em;font-weight:normal;line-height:100%}

.news .markerwrap {position:relative;max-width:1000px;margin:0 auto;}
.news .marker {position:absolute;margin-top:0;left:0;height:70px;line-height:70px;font-weight:bold;font-size:1.8em;}
.news h3, .news .marker {background-color:rgb(153,18,26);color:white;padding:.5% 2%;display:inline-block;}
.news_inhalt {padding-bottom:50px;}

.mini {font-size:.75em;color:#666;padding-bottom:10px;}
.hervor {background-color:#f7f7f7;font-weight:bold;}
.hervor td {padding:4px;}

.artikel {font-weight:bold;margin:2% auto;}
.cl {clear:both;}

.fuss {font-size:.9em;max-width:1440px;margin-left:auto;margin-right:auto;padding-top:40px;padding-bottom:20px;padding-left:40px;}
.fuss a {color:white;}
.fuss a:hover {color:#fabd43;}
.fuss_25{width:23%;text-align:left;padding-top:20px;padding-bottom:20px;}

.kkarte {width:1000px;height:400px;color:black;margin-left:auto;margin-right:auto;}
.kmenu {width:100%;min-width:160px;text-align:left;line-height:2.4em;}
.kmenu a {display:block;}
.weis {color:white}

.u_jobs{text-align:left;display:none;}
.o_jobs{text-align:left;background:#ececec;font-size:1.2em;padding:10px 5px 0px 5px;margin-bottom:3px;text-align:center;}
.d_gold{background:#fdcf8c;padding-top:10px;padding-bottom:10px;margin-top:30px;}
.bild13{width:31%;}
.bild12{width:45%;margin:1%;}
.bildm{width:30%;margin-left:auto;margin-right:auto;}
.d_filiale{width:400px;border:1px solid #333333;margin:10px;}
.d_i{padding:10px;}
.d_filialbild{width:84%;margin-left:auto;margin-right:auto;height:180px;overflow:hidden;}
.plz_suche{margin-left:auto;margin-right:auto;width:300px;}
.d13{width:290px;}
.hg_grau{background:#eeeeee;}
.inhalt_text{text-align:left;max-width:1000px;margin-left:auto;margin-right:auto;line-height:1.4em;}
.pt_30{padding-top:30px;}
.ueb_fuss{font-size:1.2em;text-transform: uppercase;}
.d_13{width:30%;float:right;}
.d_23{width:65%;text-align:left;float:left;}

.ueb_bildbox{width:100%;height:300px;}
.ueb_bildbox img{width:100%;height:100%;object-fit:cover;}
.db_ersatz{height:100px;}

.angebot-box {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  background: #fff;
  border: 1px solid #ddd;
  box-shadow: 0 2px 10px rgba(0,0,0,0.06);
  padding: 2rem;
  margin: 2rem 0;
  max-width: 1000px;
  margin-left: auto;
  margin-right: auto;
}


.angebot-bilder {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 1rem;
  margin-top: 1rem;
}

.angebot-img {
  display: block;
  margin: 1rem auto 0 auto;
  width: 85%;
  max-width: 400px;
  min-width: 160px;
  box-shadow: 0 2px 6px rgba(0,0,0,0.1);
  transition: transform 0.3s ease;
}

.angebot-img:hover {
  transform: scale(1.02);
}


.angebot-titel {
  color: rgb(153,18,26);
  font-size: 1.6em;
  margin-bottom: 0.5rem;
}

.angebot-text {
  font-size: 1.05em;
  color: rgb(58,33,0);
  line-height: 1.6em;
  text-align: left;
  margin-bottom: 1rem;
}

ul.dienstleistungen-liste {
  list-style: none;
  padding: 0;
  max-width: 1000px;
  margin: 0 auto;
  text-align: left; 
}

ul.dienstleistungen-liste li {
  margin-bottom: 10px;
  padding-bottom: 10px;
  border-bottom: 1px solid #ddd;
  text-align: left; 
}

[data-fancybox] {
  cursor: zoom-in;
}

.dienstleistungen-eintrag {
  padding: 2rem; 
  margin-bottom: 3rem; 
}

.inhalt_mod > div[style] {
  margin-top: 2rem;
  padding: 1.5rem;
  background-color: #ececec;
}

/*.inhalt_mod a {
  color: #991212; 
  text-decoration: none;
  font-weight: 600;
  cursor: pointer;
  transition: color 0.3s ease;
}

.inhalt_mod a:hover {
  color: #d43737;
}*/

.slogan_modell{margin-top:30px;font-size:2em;}

.inhalt_mod {
  max-width: 1000px;
  margin: 2rem auto;
  padding: 0 1rem;
  font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
  color: #3a2100;
}

.ohne_l{border-bottom:none;}

.text-content {
  font-size: 1.05rem;
  line-height: 1.6;
  color: #5a4b29;
}

.text-content a {
  color: rgb(153, 18, 26);
  text-decoration: underline;
}

.tabelle {
  width: 100%;
  border-collapse: collapse;
  font-size: 1rem;
  color: #5a4b29;
}

.tabelle thead th {
  border-bottom: 2px solid #ddd;
  padding-bottom: 0.5rem;
}

.tabelle td {
  padding: 0.5rem 0.5rem 0.5rem 0;
  vertical-align: top;
}

.preis-text {
  font-size: 0.9rem;
  padding-left: 24px;
  color: #7a6b48;
  font-style: italic;
}

.u_fuss{list-style: none;margin-left:0px;margin-right:0px;padding-left:0px;padding-right:0px;width:90%;}
.u_fuss li{padding-top:5px;padding-bottom:5px;border-bottom:1px solid rgba(255,255,255,0.5);}
.u_fuss .oli{border:none;}
.button_wkorb{display:inline-block;background-color:maroon;padding:1.5% 2% 1.5% 3%;margin-left:4%;max-width:25px;}
.d_card_button_u{position:absolute;bottom:20px;left: 50%;transform: translateX(-50%);}
.d-card-text{min-height:130px;margin-top:10px;}
.d-card-bild{width:100%;height:200px;overflow:hidden;}
.d_brevo{width:96%;max-width:1150px;margin-left:auto;margin-right:auto;}

@media (max-width: 720px) {
  .flexi {
    flex-direction: column;
    gap: 1.5rem;
  }
}

.rot {
  color: rgb(153, 18, 26);
}

.div2 {
  flex: 1 1 45%;
  background-color: #ececec;
  padding: 2rem;
  box-shadow: 0 2px 8px rgba(0,0,0,0.05);
  transition: box-shadow 0.3s ease;
  display:block;margin:1%;width:46%;min-width:280px;text-align:left;
}

.div2:hover {
  box-shadow: 0 6px 20px rgba(0,0,0,0.1);
}

.d_mod_grau{width:96%;max-width:700px;margin-left:auto;margin-right:auto;padding:10px 10px 10px 20px;background:#ececec;margin-top:20px;text-align:left;}
.b_grau{background:#ececec;}

.pacifico {
  font-family: 'Pacifico', cursive;
}

.special-text {
  margin-top: -6%;
  font-size: 1.8em;
  line-height: 1.4;
  text-align: center;
  transform: rotate(-6deg);
}

.fakten-table {
  width: 100%;
  max-width: 800px;
  margin: 2rem auto 3rem;
  border-collapse: collapse;
  font-size: 1rem;
  color: #5a4b29;
}

.fakten-table td {
  vertical-align: top;
  padding: 8px 12px;
  border-bottom: 1px solid #ddd;
}

.fakten-img {
  display: block;
  float: left;
  margin: 0 1rem 1rem 14rem;
  max-width: 300px;
  border-radius: 8px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}

.facts-heading {
  font-weight: 700;
  margin-bottom: 1rem;
}

.d_kurs3{background:#eeeeee;width:30%;align-self: stretch;}
.d_kurs2{background:#eeeeee;width:48%;align-self: stretch;}
.d_kurs_i{padding:0px 15px 15px 15px;text-align:left;}
.d_seite_uebers{background:#800000;border:1px solid #800000;color:#ffffff;padding-bottom:30px;}
.d_seite_uebers_i{width:1440px;margin-left:auto;margin-right:auto;}
.d_seite_uebers h2{color:#ffffff;border-bottom:1px solid white;}
.d_seite_uebers .slogan{color:#ffffff;}
.d_seite_uebers h1{color:#ffffff;}
.d_uebers{background:#ffffff;width:80%;margin-left:auto;margin-right:auto;margin-bottom:40px;}
.d_uebers_l{width:25%;height:240px;float:left;}
.d_uebers_l img{object-fit: cover;}
.d_uebers_r{width:74%;float:right;text-align:left;line-height:1.4;text-align:center;color:#000000;}
.p_15{padding:15px;}
.p_25{padding:25px;}
.d_uebers_r h2{font-size:1.8em;text-transform: uppercase;border:1px solid black;padding:5px;width:300px;margin-left:auto;margin-right:auto;color:#fecc00;text-align:center;}

.link {
 background-color:#800000;border:0px;color:#fff;padding:10px;
}

.link:hover {
 color:#eee;
}

@media (max-width: 1439px) {
.d_seite_uebers_i{width:96%;}
.menuwrap {width:96%;}
}

@media (max-width: 1150px) {
.div_start{width:300px;height:300px;}

}

@media (max-width: 1000px) {
.d-card-bild{width:60%;margin-left:auto;margin-right:auto;}
}

@media (max-width: 900px) {
  #f_info{display:none;}
  #f_kontakt{display:none;}
  .fuss_25{width:96%;margin-left:auto;margin-right:auto;}
}

@media (max-width: 720px) {
  .flexi {
    flex-direction: column;
  }
  h2{font-size:1.3em;}
  .div_start{margin-left:auto;margin-right:auto;}

  .div2 {
    flex: 1 1 100%;
  }

  .fakten-img {
    float: none;
    margin: 0 0 1rem 0;
    max-width: 100%;
  }


.div3 {
  flex: 1 1 45%;
  padding: 4rem 2rem 2rem 2rem;
  border-radius: 10px;
  box-shadow: 0 0 0 0 white;
  transition: none;
}

.flexi2 {
  display: flex;
  gap: 2rem;
  flex-wrap: wrap;
  margin-bottom: 2rem;
  justify-content: center; 
  max-width: 1200px;   
  margin-left: auto;
  margin-right: auto;
}

.div4 {
  flex: 1 1 45%;
  padding: 1rem 2rem 2rem 2rem;
  border-radius: 10px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.05);
  transition: box-shadow 0.3s ease;
  max-width: 600px; 
  text-align: center; 
}

.div4 img {
  display: block;       
  margin-left: auto;    
  margin-right: 9rem;
}

.welcome-container {
  max-width: 900px;
  margin: 40px auto;
  padding: 30px;
  background-color: #f9f9f9;
  border-radius: 12px;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1);
  font-family: "Segoe UI", Tahoma, Geneva, Verdana, sans-serif;
  color: #333;
  line-height: 1.7;
}

.welcome-container h2 {
  text-align: center;
  margin-bottom: 20px;
  color: #444;
}

.welcome-container p {
  margin-bottom: 15px;
}

.welcome-container .highlight {
  text-align: center;
  font-weight: bold;
  font-size: 1.1em;
  margin-top: 25px;
}
.db_ersatz{height:80px;}

.d_13{width:96%;float:none;margin-left:auto;margin-right:auto;}
.d_23{width:96%;float:none;margin-left:auto;margin-right:auto;}

.d_uebers_r h2{font-size:1.3em;width:200px;}
.angebot-titel {font-size:1.1em;}

}

@media (max-width: 600px) {
  .welcome-container {
    padding: 20px;
  }
  .bildm{width:96%;}
  h1{font-size:1.5em;}
}


/* Zertifikate Layout */
.zertifikate-grid {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 20px;
  margin: 0 auto 50px;
  padding: 0 20px;
  max-width: 1000px;
}

.zertifikat-item {
  background: #f9f9f9;
  border-radius: 12px;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.05);
  padding: 20px;
  max-width: 320px;
  flex: 1 1 280px;
  text-align: center;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.zertifikat-item:hover {
  transform: translateY(-4px);
  box-shadow: 0 6px 14px rgba(0, 0, 0, 0.12);
}

.zertifikat-item img {
  width: 100%;
  height: auto;
  border-radius: 6px;
  margin-bottom: 10px;
}

/* Auszeichnungen Layout */
.auszeichnungen-grid {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 20px;
  margin: 0 auto 60px;
  padding: 0 20px;
  max-width: 1200px;
}

.auszeichnung-item {
  background: #fff;
  border-radius: 12px;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.08);
  padding: 16px;
  max-width: 260px;
  flex: 1 1 220px;
  text-align: center;
  transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.auszeichnung-item:hover {
  transform: translateY(-5px);
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.12);
}

.auszeichnung-item img {
  max-width: 100%;
  height: auto;
  border-radius: 6px;
  margin-bottom: 10px;
}

.auszeichnung-item p {
  font-size: 0.95em;
  margin: 0;
}

.zertifikat-item img,
.auszeichnung-item img {
  width: 100%;
  height: 180px;      
  object-fit: contain; 
  border-radius: 6px;
  margin-bottom: 10px;
}

/* Responsive */
@media (max-width: 768px) {
  .zertifikat-item,
  .auszeichnung-item {
    flex: 1 1 100%;
    max-width: 100%;
  }
}

@media all and (max-width: 999px) {
.kkarte {height:400px;width:98%; margin-bottom:2%;border:1px solid silver;}
.inhalt{width:96%;margin-left:auto;margin-right:auto;}
.inhalt_text{width:96%;margin-left:auto;margin-right:auto;}
.div4 {margin:.5% 0;width:48%;}
}

@media all and (max-width:780px) {
 .news .marker {position:static;height:40px;line-height:40px}
 .div15 {width:94%;text-align:justify;}
 .div15 h3 {margin: 0 auto;}
 .bild13{width:45%;}
 .d_kurs3{width:96%;margin-left:auto;margin-right:auto;}
 .d_kurs2{width:96%;margin-left:auto;margin-right:auto;}
 .d_50{width:96%;margin-left:auto;margin-right:auto;}
 .d_uebers_l{width:100%;float:none;}
 .d_uebers_r{width:96%;margin-left:auto;margin-right:auto;float:none;}
 #filialfilter{display:none;}
 }
 
@media all and (max-width: 600px) {
  body {font-size:0.9em;}
  .slogan {font-size:1.5em;}
  .banner .overlay {font-size:1.3em;letter-spacing:.1rem;}
  .bild13{width:96%;margin-left:auto;margin-right:auto;}
  .d13{margin-left:auto;margin-right:auto;}
  }
  
 @media all and (max-width: 500px) {
 .div3 {
  padding: 10px;
  border-radius: 0px;
  box-shadow: 0 2px 8px rgba(0,0,0,0.05);
  transition: box-shadow 0.3s ease;
  margin-left:auto;margin-right:auto;  
}
.div05 {margin-left:auto;margin-right:auto;}
.d-card-bild{width:100%;margin-left:auto;margin-right:auto;}
.d_filiale{width:96%;margin-left:auto;margin-right:auto;}
}

/* ab hier alt */
a {text-decoration:none;color:maroon;}
a:hover {color:#d2691e;}

.e {background-color:rgba(255,255,255,.6);}

.c_submit{background-color:#800000;border:0px;color:#fff;padding:10px;font-size:1.2em;}
.c_submit:hover {color:#eee;}
.linkbutton {font-size:1.1em; padding:5px 12px 4px 18px; border:1px solid #fbb652; min-width:100px; background:#fdcf8c;}
