/*!
 * style-fkfs_bs.css — Ersatz für Bootstrap 3.3.7 auf fkfs.de
 *
 * Enthält nur die Teile von Bootstrap 3.3.7 (MIT-Lizenz, getbootstrap.com),
 * auf die sich style.css und die Inhalte tatsächlich stützen:
 *   normalize, Basis (box-sizing, Schrift, Links), Überschriften,
 *   Tabellen, Formular-Grundwerte und die benutzten Klassen
 *   (container-fluid, row, sr-only, breadcrumb, pager, table,
 *   text-justify, tab-content, show/hide, clearfix).
 * Ermittelt über alle Templates, die Formular-Konfiguration, script.js und
 * die Klassen auf allen Seiten von www.fkfs.de (Stand 11/2026).
 * Das eigentliche Aussehen kommt aus style.css.
 *
 * Neue Bootstrap-Klassen in Inhalten oder Templates (z. B. btn-*, col-*)
 * haben ohne Ergänzung hier keine Wirkung.
 */

/* ============================================================
   Icons: Glyphicons Halflings, reduziert auf die drei Zeichen,
   die style.css nutzt: \e026 Download, \e080 Pfeil (News "mehr"),
   \e164 externer Link. Weitere Zeichen müssen neu erzeugt werden
   (pyftsubset --unicodes=U+E026,U+E080,U+E164,...).
   ============================================================ */

@font-face {
	font-family: 'Glyphicons Halflings';
	src: url('../Fonts/glyphicons-fkfs.woff2') format('woff2'),
		url('../Fonts/glyphicons-fkfs.woff') format('woff');
}

/* ============================================================
   normalize.css v3.0.3
   ============================================================ */

html {
	font-family: sans-serif;
	-webkit-text-size-adjust: 100%;
	text-size-adjust: 100%;
}
body {
	margin: 0;
}
aside, figcaption, figure, footer, header, main, nav, section {
	display: block;
}
video {
	display: inline-block;
	vertical-align: baseline;
}
[hidden] {
	display: none;
}
a {
	background-color: transparent;
}
a:active, a:hover {
	outline: 0;
}
b, strong {
	font-weight: bold;
}
sub, sup {
	position: relative;
	font-size: 75%;
	line-height: 0;
	vertical-align: baseline;
}
sup {
	top: -.5em;
}
sub {
	bottom: -.25em;
}
img {
	border: 0;
}
svg:not(:root) {
	overflow: hidden;
}
hr {
	height: 0;
	box-sizing: content-box;
}
button, input, optgroup, select, textarea {
	margin: 0;
	font: inherit;
	color: inherit;
}
button {
	overflow: visible;
}
button, select {
	text-transform: none;
}
button, html input[type="button"], input[type="reset"], input[type="submit"] {
	-webkit-appearance: button;
	cursor: pointer;
}
button[disabled], html input[disabled] {
	cursor: default;
}
button::-moz-focus-inner, input::-moz-focus-inner {
	padding: 0;
	border: 0;
}
input {
	line-height: normal;
}
input[type="checkbox"], input[type="radio"] {
	box-sizing: border-box;
	padding: 0;
}
input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
	height: auto;
}
input[type="search"] {
	box-sizing: border-box;
	-webkit-appearance: none;
}
input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}
textarea {
	overflow: auto;
}
optgroup {
	font-weight: bold;
}
table {
	border-spacing: 0;
	border-collapse: collapse;
	background-color: transparent;
}
td, th {
	padding: 0;
}
th {
	text-align: left;
}

/* ============================================================
   Basis
   ============================================================ */

*, *::before, *::after {
	box-sizing: border-box;
}
html {
	font-size: 10px;
	-webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
body {
	font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
	font-size: 14px;
	line-height: 1.42857143;
	color: #333;
	background-color: #fff;
}
input, button, select, textarea {
	font-family: inherit;
	font-size: inherit;
	line-height: inherit;
}
a {
	color: #337ab7;
	text-decoration: none;
}
a:hover, a:focus {
	color: #23527c;
	text-decoration: underline;
}
a:focus {
	outline: 5px auto -webkit-focus-ring-color;
	outline-offset: -2px;
}
figure {
	margin: 0;
}
img {
	vertical-align: middle;
}
hr {
	margin-top: 20px;
	margin-bottom: 20px;
	border: 0;
	border-top: 1px solid #eee;
}
[role="button"] {
	cursor: pointer;
}

/* Nur für Screenreader sichtbar (z. B. Label der Suchbox) */
.sr-only {
	position: absolute;
	width: 1px;
	height: 1px;
	padding: 0;
	margin: -1px;
	overflow: hidden;
	clip: rect(0, 0, 0, 0);
	border: 0;
}

/* ============================================================
   Typografie
   ============================================================ */

h1, h2, h3, h4 {
	font-family: inherit;
	font-weight: 500;
	line-height: 1.1;
	color: inherit;
}
h1, h2, h3 {
	margin-top: 20px;
	margin-bottom: 10px;
}
h4 {
	margin-top: 10px;
	margin-bottom: 10px;
}
h1 {
	font-size: 36px;
}
h2 {
	font-size: 30px;
}
h3 {
	font-size: 24px;
}
h4 {
	font-size: 18px;
}
p {
	margin: 0 0 10px;
}
ul, ol {
	margin-top: 0;
	margin-bottom: 10px;
}
ul ul, ol ul, ul ol, ol ol {
	margin-bottom: 0;
}
.text-justify {
	text-align: justify;
}

/* ============================================================
   Layout
   ============================================================ */

.container-fluid {
	padding-right: 15px;
	padding-left: 15px;
	margin-right: auto;
	margin-left: auto;
}
.row {
	margin-right: -15px;
	margin-left: -15px;
}

/* RTE-Tabellen: CKEditor setzt <figure class="table"> um die Tabelle */
.table {
	width: 100%;
	max-width: 100%;
	margin-bottom: 20px;
}

/* ============================================================
   Formulare
   ============================================================ */

fieldset {
	min-width: 0;
	padding: 0;
	margin: 0;
	border: 0;
}
legend {
	display: block;
	width: 100%;
	padding: 0;
	margin-bottom: 20px;
	font-size: 21px;
	line-height: inherit;
	color: #333;
	border: 0;
	border-bottom: 1px solid #e5e5e5;
}
label {
	display: inline-block;
	max-width: 100%;
	margin-bottom: 5px;
	font-weight: bold;
}
input[type="radio"], input[type="checkbox"] {
	margin: 4px 0 0;
	line-height: normal;
}
input[type="file"] {
	display: block;
}
input[type="range"] {
	display: block;
	width: 100%;
}
select[multiple], select[size] {
	height: auto;
}
input[type="file"]:focus, input[type="radio"]:focus, input[type="checkbox"]:focus {
	outline: 5px auto -webkit-focus-ring-color;
	outline-offset: -2px;
}
input[type="radio"][disabled], input[type="checkbox"][disabled],
fieldset[disabled] input[type="radio"], fieldset[disabled] input[type="checkbox"] {
	cursor: not-allowed;
}

/* ============================================================
   Komponenten
   ============================================================ */

/* Brotkrumen (lib.breadcrumb), Optik in style.css */
.breadcrumb {
	padding: 8px 15px;
	margin-bottom: 20px;
	list-style: none;
	background-color: #f5f5f5;
	border-radius: 4px;
}
.breadcrumb > li {
	display: inline-block;
}
.breadcrumb > li + li::before {
	padding: 0 5px;
	color: #ccc;
	content: "/\00a0";
}
.breadcrumb > .active {
	color: #777;
}

/* News-Detail: Vor/Zurück */
.pager {
	padding-left: 0;
	margin: 20px 0;
	text-align: center;
	list-style: none;
}
.pager li {
	display: inline;
}
.pager li > a, .pager li > span {
	display: inline-block;
	padding: 5px 14px;
	background-color: #fff;
	border: 1px solid #ddd;
	border-radius: 15px;
}
.pager li > a:hover, .pager li > a:focus {
	text-decoration: none;
	background-color: #eee;
}
.pager .next > a, .pager .next > span {
	float: right;
}
.pager .previous > a, .pager .previous > span {
	float: left;
}

/* Tabs-Container: aktiver Tab (script.js) */
.tab-content > .active {
	display: block;
}
.open > a {
	outline: 0;
}

/* ============================================================
   Hilfsklassen (teils von script.js gesetzt)
   ============================================================ */

.clearfix::before, .clearfix::after,
.container-fluid::before, .container-fluid::after,
.row::before, .row::after,
.pager::before, .pager::after {
	display: table;
	content: " ";
}
.clearfix::after, .container-fluid::after, .row::after, .pager::after {
	clear: both;
}
.hide {
	display: none !important;
}
.show {
	display: block !important;
}

/* ============================================================
   Druck
   ============================================================ */

@media print {
	*, *::before, *::after {
		color: #000 !important;
		text-shadow: none !important;
		background: transparent !important;
		box-shadow: none !important;
	}
	a, a:visited {
		text-decoration: underline;
	}
	a[href]::after {
		content: " (" attr(href) ")";
	}
	a[href^="#"]::after, a[href^="javascript:"]::after {
		content: "";
	}
	thead {
		display: table-header-group;
	}
	tr, img {
		page-break-inside: avoid;
	}
	img {
		max-width: 100% !important;
	}
	p, h2, h3 {
		orphans: 3;
		widows: 3;
	}
	h2, h3 {
		page-break-after: avoid;
	}
}
