/* CSS Document */

* {
	margin:0; padding:0;
	font-size:100%;
}

body{
	background:#131212;
	text-align:center;
	min-width:1025px;
}

img {vertical-align:top;}
a img { border:0;}

ul { list-style:none;}

.left { float:left;}
.right {float:right;}
.clear  { clear:both;}

html, input, textarea
	{
		font-family:Arial, Helvetica, sans-serif;
		font-size:0.8125em;
		line-height:1.3846em;
		color:#504d3b;
	}

input, select { vertical-align:middle; font-weight:normal;}

a {color:#7bab00; outline:none;}
a:hover{text-decoration:none;}
p {padding-top:18px;}

/* ============================= main layout ====================== */

li { background:url(images/marker.gif) no-repeat 0 10px; padding-left:19px; line-height:2em;}
li a {color:#504d3b;}

.imgindent {margin:0 17px 0 0; float:left;}

.extra {background:url(images/extra-bg.gif) left top repeat-x #fdfcfa;}

h2 {font-size:1.92307em; line-height:1.2em; color:#323130; padding:0 0 43px 0;}
h3 {font-size:3.0769em; line-height:1.2em; color:#323130; padding:0 0 20px 0; margin:-18px 0 0 0; position:relative; letter-spacing:-2px;}
h3 strong {display:block; margin-top:-15px;}
#header h3 {font-size:3.0769em; line-height:1.2em; color:#323130; padding:0 0 0 0; margin:0 0 0 0; letter-spacing:0px; position:relative;}
h4 {font-size:1.1538em; color:#898783; line-height:1.2em; font-style:italic; font-weight:normal; padding:0 0 6px 10px; border-bottom:1px solid #7b7b7b; margin-bottom:25px;}
.none {border:none; padding-left:0px; margin:0;}
.col-1 h2 {padding-left:5px;}

/* ============================= header ====================== */
.logo {float:left; width:141px; padding:0 25px 0 11px;}
#header .inner {float:left; width:845px; text-align:right; padding-top:10px;}
.border {border-bottom:1px solid #ceccc2; padding:10px 25px 11px 0;}
#header .border {border-bottom:1px solid #ceccc2; padding:15px 15px 15px 0;}

.contact {display:inline-block; background:url(images/phone-bg.gif) left 0px no-repeat; padding-left:32px; font-size:1.0769em;}
.contact strong {color:#6e9705;}

.menu  {padding-top:15px;}
.menu li {float:left; background:none; padding:0 8px 0 0; line-height:1.2em; font-size:1.1538em; text-transform:uppercase;}
.menu li a {text-decoration:none; color:#131212; display:inline-block; cursor:pointer;}
.menu li a strong {display:inline-block; padding:0 6px 0 8px;}
.menu li a strong strong {padding:12px 8px 10px 8px;}

.menu li a:hover, .menu .active {background:url(images/menu-li-left-bg.gif) left top no-repeat; color:#fff;}
.menu li a:hover strong, .menu .active strong {background:url(images/menu-li-right-bg.gif) right top no-repeat;}
.menu li a:hover strong strong, .menu .active strong strong {background:url(images/menu-li-tail-bg.gif) left top repeat-x;}

.menu .last {padding-right:0px;}
.header-bg {height:296px; margin-top:5px; text-align:center; padding-top:44px;}

/* ============================= content ====================== */
.indent {padding:35px 0 49px 13px;}

.col-pad {padding-right:34px;}

.border1 {border-bottom:1px solid #f1e7bf; padding-bottom:11px; margin-bottom:12px;}
.border2 {border-bottom:1px solid #f1e7bf; padding-bottom:15px; margin-bottom:18px;}

.title {color:#7bab00; font-size:1.1538em; line-height:1.0666em; display:block; padding:12px 0 5px 0;}
.title1 {display:block; padding-bottom:5px;}

.date {background:url(images/bg_date.gif) left top no-repeat; color:#131212; font-size:1.2307em; float:left; width:45px; padding:20px 10px 6px 18px; }
.block {float:left; width:150px;}
.block a {color:#a1a1a1; padding-left:10px; font-style:italic;}
.block1 {width:220px;}
.block1 a {color:#a1a1a1; padding-left:10px; font-style:italic;}

.link {background:url(images/link-bg.gif) left 0px no-repeat; color:#7bab00; font-size:0.923em; padding-left:20px; font-style:italic; margin-top:25px; display:inline-block;}

.pad {padding-top:20px;}

.link-margin {margin-top:23px}
.link-margin1 {margin-top:20px}

.list li {background:none; padding:0; line-height:1.53846em; width:100%; vertical-align:top; overflow:hidden;}
.list li a {text-decoration:none; float:left;}
.list li a:hover {text-decoration:underline;}
.list li span {float:right; color:#7bab00; font-weight:bold;}
.list li strong {display:block; background:url(images/line-dot.gif) repeat-x 0% 15px; overflow:hidden;}

.phone {display:inline-block; width:100px;}

.row {background:url(images/row-bg.gif) left top repeat-x #1a1818; min-height:209px; height:auto !important; height:209px; color:#898783;}
.row .indent {padding:36px 0 0 20px;}
.row a {color:#898783; text-decoration:none;}
.row a:hover {text-decoration:underline;}

.row .col-pad {padding-right:110px;}
.row .col-pad1 {padding-right:110px;}
.col-indent {padding-left:10px;}

.row .phone {display:inline-block; width:90px;}

.twitter {font-size:1.1538em; color:#898783; line-height:1.2em; font-style:italic; font-weight:normal; display:inline-block; padding:5px 0 8px 41px; background:url(images/twitter.gif) left 0px no-repeat; margin-top:25px}
.facebook {font-size:1.1538em; color:#898783; line-height:1.2em; font-style:italic; font-weight:normal; display:inline-block; padding:5px 0 8px 41px; background:url(images/facebook.gif) left 0px no-repeat; margin-top:5px;}

/* ============================= footer ====================== */
#footer {background:url(images/footer-bg.gif) left top repeat-x; text-transform:uppercase; color:#898783; font-size:0.8461em;}
#footer .main {text-align:center; padding-top:25px;}
#footer a {color:#898783; text-decoration:none;}
#footer a:hover {text-decoration:underline;}

/* ============================= forms ============================= */
#SearchForm {padding:3px 1px 0 0;}
#SearchForm label {height:24px; display:inline-block; margin-right:1px;}
#SearchForm .input {width:146px; border:1px solid #696969; padding:3px 3px 0px 5px; font-size:0.8461em;  vertical-align:top; color:#898783; background:#4c4b4b; line-height:1.2em; vertical-align:top;}
#SearchForm input {vertical-align:top;}

.alignright {text-align:right;}
#ContactForm { font-weight:bold;}
#ContactForm label {height:42px; display:block;}
#ContactForm .link {margin:25px 0 0 30px; font-weight:normal;}
.column1 {float:left; width:220px;}
.column2 {float:left; width:232px;}
.input {width:200px;  border:1px solid #a09b96; background:#fff; padding:2px 0 1px 5px; font-size:1em; line-height:1.2em;}
textarea {width:224px; height:102px; border:1px solid #a09b96; background:#fff; padding:0 0 0 5px; overflow:auto; font-size:1em;}

.thumbcontainer {float:left; width:468px; margin:0px 10px 10px 0px;}

.projektthumb {
	float:left; 
	width:98px; 
	height: 68px; 
	margin-right: 18px; 
	margin-bottom: 18px; 
	overflow:hidden; 
}


/* ===== Herrhammer: Announcement Banner Upgrade ===== */
.announcement {
  /* dezenter Verlauf statt flacher Farbe */
  background: linear-gradient(
    180deg,
    #f7d66a 0%,
    #f2c94c 60%,
    #e8bd42 100%
  );

  border-bottom: 2px solid rgba(0,0,0,0.2);

  /* etwas mehr Tiefe */
  box-shadow:
    0 6px 18px rgba(0,0,0,0.12),
    inset 0 1px 0 rgba(255,255,255,0.5);

  padding: 22px 22px;

  /* immer sichtbar, auch beim Scrollen */

    position: sticky;
  top: 0;
  z-index: 999;



}

.announcement__inner {
  max-width: 1100px;
  margin: 0 auto;

  display: flex;
  align-items: center;        /* vertikal exakt mittig */
  justify-content: space-between;

  gap: 16px;
  min-height: 60px;           /* sorgt für saubere Höhe */
}

/* Icon-Badge links (ohne HTML-Änderung) */
.announcement__text:before {
  content: "🚧";
  display: inline-flex;
  align-items: center;
  flex-shrink: 0;
  justify-content: center;
  width: 30px;
  height: 30px;
  margin-right: 12px;
  border-radius: 999px;
  background: rgba(255,255,255,0.55);
  border: 1px solid rgba(0,0,0,0.12);
  font-size: 16px;
  line-height: 1;
  vertical-align: middle;
}

/* Text: besser lesbar & moderner */
.announcement__text {
  display: flex;
  align-items: center;        /* Emoji + Text exakt mittig */
  flex: 1;

  font-size: 17px;
  font-weight: 700;
  line-height: 1.45;
}

/* Dein <b>Wichtiger Hinweis</b> bekommt mehr Punch */
.announcement__text b,
.announcement__text strong {
  font-weight: 900;
}

/* Link als Button */
.announcement__link {
  display: inline-block;
  padding: 10px 14px;
  border-radius: 10px;
  text-decoration: none;
  font-weight: 800;
  color: #1f1f1f;
  background: rgba(255,255,255,0.75);
  border: 1px solid rgba(0,0,0,0.18);
  white-space: nowrap;
}

.announcement__link:hover {
  background: rgba(255,255,255,0.95);
}

/* Mobile: Button unter Text, alles luftiger */
@media (max-width: 768px) {
  .announcement {
    padding: 14px 14px;
  }

  .announcement__inner {
    gap: 10px;
  }

  .announcement__text {
    font-size: 15px;
  }

  .announcement__link {
    width: 100%;
    text-align: center;
  }
}

/* ============================= Anfahrts Bilder ====================== */

.anfahrt-download{
  margin-top:10px;
}

.anfahrt-download a{
  text-decoration:underline;
  font-weight:bold;
}

.anfahrt-images{
  margin-top:18px;
}

.anfahrt-images a{
  display:block;
  margin-bottom:18px;
}

.anfahrt-images img{
  width:100%;
  height:auto;
  display:block;
  border:1px solid #e6e0c8;
  background:#fff;
}

