/*--------------------------------------------------------------------
	Author: {ths} Thomas Schostok Design
	Version: 1.0-uikit
---------------------------------------------------------------------*/
/*@import url("ths_fonts_static.css");*/
@import url("ths_fonts_vf.css");
@view-transition {
	navigation: auto;
}
/* Swatch Variables */
:root{
--thsBodyBG: #DCE2E7;	
--thsContentBG: #ffffff;
--thsTextfarbe: #3a3d3f;
--thsRahmen: #2f2f2f;
--thsRahmenHover: #2f2f2f;
--thsLinks: #3a3d3f;
--thsLinksHover: #000000;
--thsLinksNav:#3a3d3f;
--thsLinksNavHover:#1677ab;
--thsFooterLinks: #ffffff;
--thsFooterLinksHover: #DCE2E7;
--thsToggler: #2f2f2f;
--thsDivider: #2f2f2f;
--thsGray: #d6d6d6;
--thsFooterBg: #DCE2E7;
--uk-column-divider: #838383;	/* Spaltentrenner */

/* @link https://utopia.fyi/type/calculator?c=360,16,1.08,1500,16,1.08,6,2,&s=0.75|0.5|0.25,1.5|2|3|4|6,s-l&g=s,l,xl,12 */

  /* Step -2: 13.7174px → 13.7174px */
  --fluid--2: clamp(0.8573rem, 0.8573rem + 0vw, 0.8573rem);
  /* Step -1: 14.8148px → 14.8148px */
  --fluid--1: clamp(0.9259rem, 0.9259rem + 0vw, 0.9259rem);
  /* Step 0: 16px → 16px */
  --fluid-0: clamp(1rem, 1rem + 0vw, 1rem);
  /* Step 1: 17.28px → 17.28px */
  --fluid-1: clamp(1.08rem, 1.08rem + 0vw, 1.08rem);
  /* Step 2: 18.6624px → 18.6624px */
  --fluid-2: clamp(1.1664rem, 1.1664rem + 0vw, 1.1664rem);
  /* Step 3: 20.1554px → 20.1554px */
  --fluid-3: clamp(1.2597rem, 1.2597rem + 0vw, 1.2597rem);
  /* Step 4: 21.7678px → 21.7678px */
  --fluid-4: clamp(1.3605rem, 1.3605rem + 0vw, 1.3605rem);
  /* Step 5: 23.5092px → 23.5092px */
  --fluid-5: clamp(1.4693rem, 1.4693rem + 0vw, 1.4693rem);
  /* Step 6: 25.39px → 25.39px */
  --fluid-6: clamp(1.5869rem, 1.5869rem + 0vw, 1.5869rem);
}
.uk-navbar-container:not(.uk-navbar-transparent) {
    background-color: var(--thsFooterBg) !important;
}
.uk-background-secondary {
	background-color: var(--thsFooterBg) !important;
}
.ths-bg1 {
	background-color: #597584!important;
}
.ths-bg2 {
	background-color: #eae2dd!important;
}
p a:not([href*="rainerrothe.de"]):not([href^="#"]):not([href^="/"]):not([href^="mailto:"]):not([role="button"]):not(.uk-button):not(.no-icon):not([href^="tel:"]):not([id])::after {
  content: '\2197';
  display: inline-block;
  margin-left: 5px;
  font-size: var(--fluid--0)!important;
}
body {
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	font-family:"Familyname";
	min-height: 100vh;	/*footer at bottom*/
	display: grid;	/*footer at bottom*/
	grid-template-rows: auto 1fr auto;	/*footer at bottom*/
	background-color: var(--thsBodyBG);
}
html {
	color:var(--thsTextfarbe);
	scroll-behavior: smooth;
	scroll-padding-top: 120px; /* Offset für die gesamte Seite */
}
body, html {font-size: var(--fluid-0)!important;}
.fs-1, h1 {font-size: var(--fluid-6)!important; font-weight: 550!important;}
.fs-2, h2 {font-size: var(--fluid-5)!important; font-weight: 550!important;}
.fs-3, h3 {font-size: var(--fluid-4)!important; font-weight: 600!important;}
.fs-4, h4 {font-size: var(--fluid-3)!important; font-weight: 600!important;}
.fs-5, h5 {font-size: var(--fluid-2)!important; font-weight: 600!important;}
.fs-6, h6 {font-size: var(--fluid-1)!important; font-weight: 600!important;}

.ths-container { /*breite eines containers*/
	max-width: 1020px !important;
	background-color: var(--thsContentBG);
}
.hero-container { /*breite eines containers*/
	max-width: 1100px !important;
	background-color: var(--thsContentBG);
}
a {
	color:var(--thsLinks)!important;
	transition: all .2s ease-out;
	/*text-decoration: none!important;*/
}
a:hover {
	color:var(--thsLinksHover)!important;
	text-decoration: underline!important;
	text-decoration-thickness: 1px;
	text-decoration-color: var(--thsLinksHover);
	text-underline-offset: 4px;
	text-decoration-skip-ink: none;
}
footer {
	background-color: var(--thsFooterBg)!important;
}
footer a {
	color:var(--thsFooterLinks)!important;
	transition: all .2s ease-out;
	text-decoration: none!important;
}
footer a:hover, .footer-text a:hover {
	color:var(--thsLinks)!important;
	text-decoration: underline!important;
	text-decoration-thickness: 1px;
	text-decoration-color: var(--thsLinks);
	text-underline-offset: 4px;
	text-decoration-skip-ink: none;
}
.footer-link {
	color:var(--thsFooterLinks)!important;
}
.footer-link:hover {
	text-decoration: none!important;
	color:var(--thsFooterLinksHover)!important;
}
.footer-text a {
	color:var(--thsFooterLinks)!important;
	transition: all .2s ease-out;
	text-decoration: underline!important;
	text-decoration-thickness: 1px;
	text-decoration-color: var(--thsLinks);
	text-underline-offset: 4px;
	text-decoration-skip-ink: none;
}
h1,h2,h3,h4,h5,h6, .uk-h1, .uk-h2, .uk-h3, .uk-h4, .uk-h5, .uk-h6, .uk-heading-2xlarge, .uk-heading-3xlarge, .uk-heading-large, .uk-heading-medium, .uk-heading-small, .uk-heading-xlarge {
	font-family: "M", serif;
	margin: 0 !important;
	font-weight: 800!important;
	margin-bottom: 5px!important;
}

p{
	margin-top: 0 !important;
}
.ths-dark {color: rgb(0, 0, 0)!important; opacity:1!important;}
.ths-light {color: rgb(255, 255, 255,1)!important; opacity:1!important;}

.uk-hr, hr {
	border-color: var(--thsDivider)!important;
}
.uk-text-meta {
	color: var(--thsTextfarbe)!important;
}
.text {
	overflow-wrap: break-word;
	word-wrap: break-word;
	-webkit-hyphens: auto;
	-ms-hyphens: auto;
	hyphens: auto;
	/*letter-spacing: 0.00625em;*/
	opacity: 1!important;
}
.text p:last-child {
	margin-bottom: 0;
}
.text a{
	color: var(--thsLinks);
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-decoration-color: var(--thsLinks);
	text-underline-offset: 4px;
	text-decoration-skip-ink: none;
	transition: all .2s ease-out;
}
.text a:hover{
	color: var(--thsLinksHover);
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-decoration-color: var(--thsLinksHover);
	text-underline-offset: 4px;
	text-decoration-skip-ink: none;
}
.linklight.text a {
	color:white!important;
	text-decoration-color: white;
}
.uk-light.text {color: rgba(255, 255, 255, 1);}
.sidebar h5 {margin-bottom: 0.625rem!important}
em {
	color: inherit;
}
blockquote {
	font-size: var(--fluid--0)!important;
	color:var(--thsTextfarbe);
	display: grid;
	grid-template-columns: 50px auto; /* Eine Spalte für das Icon (50px breit), eine für den Text (restliche Breite) */
	grid-gap: 1rem; /* Abstand zwischen den Spalten */
}
blockquote p {
	font-style: italic;
	margin: 0; /* Remove default margins */
	grid-column: 2; /* Platziere alle <p>-Elemente in der zweiten Spalte */
}
blockquote::before {
	content: "";
	width: 36px;
	height: 36px;
	background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" viewBox="0 0 16 16"><path d="M2 1a1 1 0 0 0-1 1v8a1 1 0 0 0 1 1h9.586a2 2 0 0 1 1.414.586l2 2V2a1 1 0 0 0-1-1zm12-1a2 2 0 0 1 2 2v12.793a.5.5 0 0 1-.854.353l-2.853-2.853a1 1 0 0 0-.707-.293H2a2 2 0 0 1-2-2V2a2 2 0 0 1 2-2z"/><path d="M7.066 4.76A1.665 1.665 0 0 0 4 5.668a1.667 1.667 0 0 0 2.561 1.406c-.131.389-.375.804-.777 1.22a.417.417 0 1 0 .6.58c1.486-1.54 1.293-3.214.682-4.112zm4 0A1.665 1.665 0 0 0 8 5.668a1.667 1.667 0 0 0 2.561 1.406c-.131.389-.375.804-.777 1.22a.417.417 0 1 0 .6.58c1.486-1.54 1.293-3.214.682-4.112z"/></svg>');
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}
.text-muted {color: var(--thsGray)!important;}
.text-white {color: white!important;}

.fs-1, .fs-2, .fs-3, .fs-4, .fs-5, .fs-6
{ color: var(--thsTextfarbe)!important; }
/* Images inside Text */
.align_left {float: left; margin: 0 15px 0 0;}
.align_right {float: right; margin: 0 0 0 15px;}
.align_center{margin: 0px auto; margin-bottom:15px;display:block; text-align: center;}

p.align_left {text-align: left;}
p.align_center {text-align: center;}
p.align_right {text-align: right;}
.ths-button,
.ths-button a {
	font-weight: 500!important;
	background-color: transparent;
	color: var(--thsRahmen)!important;
	border: 1px solid var(--thsRahmen);
	text-decoration: none!important;
}
.ths-button a:hover {
	color: white!important;
}
.ths-button {
	background-color: transparent;
	color: var(--thsRahmen)!important;
	text-decoration: none!important;
}

/* Border nur für direkte <a> Buttons, nicht für Spans */
a.ths-button {
	border: 1px solid var(--thsRahmen);
}

/* Styles für Links innerhalb von .ths-button Spans */
.ths-button a {
	color: var(--thsRahmen)!important;
	text-decoration: none!important;
}
/* Hover für direkte <a> Buttons */
a.ths-button:hover {
	color: white!important;
	background-color: var(--thsRahmenHover)!important;
	border-color: var(--thsRahmenHover)!important;
	text-decoration: none!important;
}
/* Hover für Span-Buttons */
span.ths-button:hover {
	background-color: var(--thsRahmenHover)!important;
	border-color: var(--thsRahmenHover)!important;
}
span.ths-button:hover a {
	color: white!important;
	text-decoration: none!important;
}
/* Border für Span-Buttons */
span.ths-button {
	border: 1px solid var(--thsRahmen);
	display: inline-block;
}
span.ths-button a {
	border: none!important;
}
span.ths-button a:hover{
	color: white!important;
}
a.color-toggle {
	color: var(--thsToggler)!important;
}
/* Logo */
.navbar-brand img { width:auto; height:88px;transition: all .2s ease-out;}
@media (min-width:768px) { /* ab MD */
	.navbar-brand img { height:98px;}
}
/* navigation */
.uk-navbar-item, .uk-navbar-nav>li>a, .uk-navbar-toggle {font-family: "Familyname"!important;}

.uk-navbar-nav > li > a {
	color: var(--thsLinksNav)!important;
	transition: all .2s ease-out;
}
.uk-navbar-nav > li > a:hover {
	color: var(--thsLinksNavHover)!important;
	transition: all .2s ease-out;
	text-decoration: none!important;
}
.uk-navbar-dropdown .uk-navbar-dropdown-nav a {
	color: var(--thsLinksNav)!important;
}
.uk-navbar-dropdown .uk-navbar-dropdown-nav a:hover {
	color: var(--thsLinksNavHover)!important;
	text-decoration: none!important;
}
.uk-navbar-dropdown .uk-navbar-dropdown-nav .uk-active a {
	color: var(--thsLinksNavHover)!important;
}
.uk-navbar-left { /* fix für schrumpfendes logo */
    min-width: fit-content;
    flex-shrink: 0;
}
.searchbutton [uk-icon], 
.searchbutton svg { /* fix für schrumpfendes icon */
    width: 18px !important;
    height: 18px !important;
    min-width: 18px !important;
    min-height: 18px !important;
}
/*off canvas */
.ths-offcanvas {
	background: white!important;
	color: var(--thsTextfarbe)!important;
	width: 95% !important;
	max-width: 600px;
	text-transform: uppercase;
}
/* Close-Button auch anpassen */
.ths-offcanvas .uk-offcanvas-close {
	color: var(--thsTextfarbe)!important;
}
.ths-offcanvas .uk-offcanvas-close svg {
	fill: var(--thsTextfarbe)!important;
}
.ths-offcanvas a,
.ths-offcanvas a:link,
.ths-offcanvas a:visited {
	color: var(--thsTextfarbe)!important;
	font-size: 1.1475rem;
	line-height: 1.3;
}
.ths-offcanvas .uk-nav-default > li > a {
color: var(--thsTextfarbe)!important;
}
.ths-offcanvas .uk-nav-default > li > a:hover {
/* Hier kannst du die übliche hover-Farbe einsetzen, z. B. primary oder eine andere */
color: var(--thsLinks)!important;
text-decoration: none!important;
}
.ths-offcanvas .uk-nav-default > li.uk-active > a {
color: var(--thsLinks)!important; 
}
/* Subnav-Links: active */
.ths-offcanvas .uk-nav-sub > li.uk-active > a {
	color: var(--thsLinks)!important; 
}
.ths-offcanvas .uk-nav-sub > li > a:hover
{
	color: var(--thsLinks)!important;
	text-decoration: none!important;
}
.hroffcanvas {
	margin: 8px 0 8px 0;
}
.uk-nav-default .uk-nav-divider {
	border-top: 1px solid var(--thsDivider)!important;
}
.uk-search-navbar .uk-search-input {
	border: 1px solid var(--thsRahmen)!important;
}
.uk-search-icon {
	color: var(--thsToggler)!important;
}
/*footer icon links*/
/* Mobile: nur margin-right */
.scm {
	margin-right: 10px; /* small = ca. 10px */
}
.scm  svg { /* fix für schrumpfendes icon */
    width:20px !important;
    height: 20px !important;
    min-width: 20px !important;
    min-height: 20px !important;
}
/* Ab Small-Breakpoint: nur margin-left */
@media (min-width: 960px) {
	.scm {
		margin-right: 0;
		margin-left: 10px;
	}
}
/* Images */
.imgmaxH {
	max-height: 70vh;
	width: auto;
}
.imgmaxHsmall {
	max-height: 150px;
	width: auto;
}
/* News-Blog */
.blog_thumbnail {
	width:400px; max-height:400px;
	max-width:100%;
	object-fit: cover;
}
@media (max-width: 640px) {
	.blog_thumbnail {
		width:100%; max-height:400px;
		max-width:100%;
		object-fit: cover;
	}
}
/* Textaufklapper */
.text-clamp {
	display: -webkit-box;
	-webkit-line-clamp: 5;
	line-clamp: 5;
	-webkit-box-orient: vertical;
	overflow: hidden;
	}
.text-clamp.expanded {
	-webkit-line-clamp: unset;
	line-clamp: unset;
}
.uk-column-divider {
	column-rule: 1px solid var(--uk-column-divider)!important;
}
/* Zitate */
.zitat {font-size: var(--fluid-2)!important;font-style: italic; padding-bottom: 5px;}
.zitat_person {font-weight: bold;}
.zitat_quelle {font-style: italic;}
/* Accordion */
a.ths-accordion-title {
	text-decoration: none!important;
	color: var(--thsRahmen)!important;
	transition: all .2s ease-out;
	font-size: var(--fluid-0)!important;
	font-weight: 700!important;
}
a.ths-accordion-title:hover {
	color: var(--thsLinks)!important;
}
/* lightbox */
.uk-lightbox {
	background-color: rgb(243, 243, 243)!important;  /* Weißer Hintergrund statt schwarz */
}
.uk-lightbox-caption, .uk-lightbox-counter {
	padding-top: 0;
	background: transparent!important;
	color: white!important;
	filter: drop-shadow(0 1px 1px rgba(0, 0, 0, 0.8));
	padding: 1rem;
}
.uk-lightbox-close, .uk-drop-close {
	color: var(--thsToggler)!important;
}
.uk-lightbox-slidenav {
	color: white!important;
	filter: drop-shadow(0 1px 1px rgba(0, 0, 0, 8));
}
/* slideshow */
.uk-slideshow-items img {
	object-fit: contain; /* Zeigt das komplette Bild mit korrekter Ratio */
	width: 100%;
	height: 100%;
}
.uk-slideshow .uk-slidenav {
	color: var(--thsToggler)!important;
}
#slideshow-caption {
	min-height: 50px;
	display: flex;
	align-items: center;
	justify-content: center;
}
/* superhero */
.halfscreen {
	min-height: 50vh!important;
}
.bgimage {
	background-repeat: no-repeat;
	background-position: 50% 50%;
	background-size: cover;
}
.ths-ken-burns {
	position: relative;
	overflow: hidden;
}
.ths-ken-burns::before {
	content: '';
	position: absolute;
	top: -10%;
	left: -10%;
	width: 120%;
	height: 120%;
	background-image: inherit;
	background-size: cover;
	background-position: center;
	animation: kenBurns 15s ease alternate infinite;
	-webkit-animation: kenBurns 15s ease alternate infinite;
	z-index: 0;
}
.ths-ken-burns > * {
	position: relative;
	z-index: 1;
}
@keyframes kenBurns {
	0% {
		transform: scale(1);
	}
	100% {
		transform: scale(1.1);
	}
}
@-webkit-keyframes kenBurns {
	0% {
		transform: scale(1);
	}
	100% {
		transform: scale(1.1);
	}
}
.uk-light *,.uk-dark *  {
  opacity: 1 !important;
}
.nolink {
	text-decoration: none!important;
}
/* Scroll to top button */
.scrollToTop {
	width:36px;
	height:36px;
	position:fixed;
	bottom:14px;
	right:20px;
	padding-left: 0; padding-right: 0;
	opacity:0;
	z-index:50;
	transition: all .3s ease-in-out;
	pointer-events:none;
	line-height: 34px
}
@media (min-width: 640px) { /*ab small*/
	.scrollToTop {
		bottom:14px;
	}
}
.scrollToTop, .scrollToTop:hover, .scrollToTop:focus {
	color: var(--thsTextfarbe);
	background-color: rgba(255, 255, 255, 1);
	border: 1px solid var(--thsGray);
	box-shadow: 0 0px 5px rgba(0, 0, 0, 0.2);
}
.scrollToTop:hover {
	opacity: 0.8;
}
.showScrollTop{
	opacity: 1;
	pointer-events:all;
}

/* Deaktiviert das Icon für alle Links innerhalb von .noicon */
.no-icon a::after {
	content: none !important;
}
.uk-accordion-content {
padding-right:1.875rem;
}
.uk-background-white{background-color:#ffffff}
/* ths ----------------------------------------- styles */
.editme {
	z-index:90000;
	color: #ff0946a1;
	background-color: rgba(247, 255, 14, 0.6);
	position: fixed;
	width:36px;
	height:36px;
	top: 5px; left: 5px;
	/*top: 105px; left: 5px;*/
	box-shadow: 5px 5px 5px rgba(169, 169, 169, 0.51);
	transition: all .2s ease-out;line-height: 34px;
	padding-left: 0; padding-right: 0;
	line-height: 34px
}
.editme:hover {
	background-color: rgba(247, 255, 14, 1);
}