/*
 Theme Name:   Knowledge Hub Template Child
 Description:  Child Theme for Knowledge Hub Template
 Author:       Teejit
 Author URI:   httpw://www.teejit.de
 Template:     knowledge-hub-template
 Version:      1.0.4
 Last Update: 2025-07-10
 Text Domain:  wp_tj_knowhub_template-child
*/

.t-kh-home-flag-navigation,
.t-kh-home-row-wrapper.t-notice.advise{
    display: none !important;
}

/*** ende ***/
#page-profile .page-header.small-header {
    height: 300px;
}
#t-nav-toggle-left-menu, .t-nav-head-user .t-tag-nav .material-icons {
	color: var(--primary-background);
}
.t-tag-nav-home-flag-active, .t-tag-nav:hover .t-nav-head-element-icon.material-symbols-outlined,
.t-nav-head-user .t-tag-nav:hover .material-icons{
    background-color: #27206A !important;
    color: white !important;
}

.center-login-button {
    flex-direction: column;
}
.center-login-button p {
    text-align: center;
}
.center-login-button a {
    justify-content: center;
    display: flex;
}


/* fall back if not defined in src/style.css */
.t-login-form-loading {
    background-color: rgba(255, 255, 255, 0.9);
    display: none !important;
    height: calc(100% - var(--teejit-padding-xl) * 2);
    position: absolute;
    width: calc(100% - var(--teejit-padding-xl) * 2);
    justify-content: center;
    align-items: center;
}

/* teejit loading logo  */
.lds-dual-ring,
.lds-dual-ring:after {
    box-sizing: border-box;
}
.lds-dual-ring {
    display: block !important;
    width: 50px;
    height: 50px;
}
.rotating-group {
    animation: teejit-loading 4s linear infinite;
    transform-origin: 218.4px 213.38px; /* Mittelpunkt des viewBox */
    fill: var(--primary-background);
}
.teejit-loading-2 {
    animation: teejit-loading-2 4s linear infinite;
}
.t-loading {
    fill: var(--primary-background);
}
@keyframes teejit-loading {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}
@keyframes teejit-loading-2 {
    from { transform: rotate(360deg); }
    to { transform: rotate(-360deg); }
}
@keyframes lds-dual-ring {
    0% {
        transform: rotate(0deg);
    }
    100% {
        transform: rotate(360deg);
    }
}
/* root */
:root {
    --gap-small: 8px;
    --gap-medium: 12px;
    --gap-large: 24px;
    --sidebar-nav-width: 250px;
    --text-color: #0e0b27;
    --teejit--accent--gray: #e9e9e9;
    --primary-background: #0e0b27; /*#e10019;*/
    --primary-color:#fff;
    --primary-background-hover: #fff; /* if not set --primary-color */
    --primary-color-hover: #0e0b27; /* if not set --primary-background */
    --primary-padding:8px 16px;
    --secondary-background:#ed7004;
    --secondary-color: #0e0b27;
    --secondary-background-hover:#fff; /* if not set --secondary-color */
    --secondary-color-hover: #0e0b27; /* if not set --secondary-background */
    --accordion-background:#eff9ff; /* if not set --secondary-background */
    --accordion-color: #0e0b27; /* if not set --secondary-color */
    --overlay-white-07:rgba(255, 255, 255, 0.7);
    --overlay-white-02:rgba(255, 255, 255, 0.2);
    --header-nav-bar-background: #ffffff;
    --teejit-success: #27ae60;
    --teejit-error: #c0392b;
    --teejit-advise: #ff8c00;
    --teejit-advise-contrast: #333;
    --process-background-done: #27ae60;
    --process-background-undone: #7f8c8d;
    --tag-label-background: #e4e4e4;
    --tag-label-color: #0e0b27;
    --tag-label-border-color: #ccece8;
    --tag-categroy-background: #fff;
    --tag-categroy-color: #0e0b27;
    --tag-categroy-border-color: #0e0b27;
    --tag-audience-background: #fff;
    --tag-audience-color: #0e0b27;
    --tag-audience-border-color: #ccece8;
    --teejit-tag-border-radius: 3px; /*könnte das gleich sein wie --teejit-btn-border-radius-small*/
    --teejit-box-shadow-1: 0px 1px 4px 0px rgba(0,0,0,0.2),
    0px 1px 4px 0px rgba(0,0,0,0.14),
    0px 2px 1px -1px rgba(0,0,0,0.12);
    --teejit-box-shadow-1-hover: 0px 0px 7px 0.8px rgba(0,0,0,0.6);
    --teejit-box-shadow-2:0 0 2px 0 rgba(0,0,0,.2); /*use for messages like login error*/
    --teejit-btn-inner-element-padding:16px 16px 0;
    --teejit-btn-inner-element-padding-bottom:16px;
    --teejit-padding-xxl:24px;
    --teejit-padding-xl:20px;
    --teejit-padding-l:16px;
    --teejit-padding-m:12px;
    --teejit-padding-s:8px;
    --teejit-padding-xs:4px;
    --font-size-p: 16px;
    --font-size-p-small:14px;
    --font-size-p-xsmall:12px;
    --font-size-h1: 24px;
    --font-weight-h1: ;
    --font-size-h2: 20px;
    --font-weight-h2: bold;
    --font-size-h3: 20px;
    --font-weight-h3: ;
    --teejit-btn-h1:16px;
    --teejit-btn-p:14px;
    --teejit-btn-span-medium: 12px;
    --teejit-btn-span-small: 10px;
    --teejit-btn-border-radius-medium: 0px;
    --teejit-btn-border-radius-small: 0px;
    --teejit-form-border: #e9e9e9;
    --teejit-input-border: #e9e9e9;
}

.nenndorf-feedback {
justify-content: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;	
}
.nenndorf-feedback h3, .nenndorf-feedback h4 {
	margin-bottom: 0;
}
.page-header.small-header {
	height:500px
}
#t-main-header .t-title {
	color:white;
	background-color: rgba(14, 11, 39, 0.6);
	padding: 50px;
}
p a, .text-link {
    color: #27206a !important;
    cursor: pointer;
    text-decoration: underline;
    font-weight: bold;
}
@font-face {
    font-family: 'League Spartan';
    src: url('/wp-content/themes/knowledge-hub-template-child/src/font/League_Spartan/LeagueSpartan-VariableFont_wght.ttf') format('truetype-variations');
}
body {
	font-family: 'League Spartan';
	line-height: 1.5;
}
#t-main-header {
	position:relative;
}
.header-copyright {
	position:absolute;
	bottom:20px;
	right:20px;
	font-size:12px;
	    z-index: 3;
    color: white;
}
#t-nav-toggle-left-menu {
    cursor: pointer;
    height: 44px;
}
.t-tag-nav .t-nav-head-element-icon.icon-after-text {align-items: center;}

.btn-primary, .t-btn-primary, .t-btn-dir-cta .t-btn-primary, .filter-submit button, .t-btn-search {
	background-color: #312783;
	border-width:2px;
}

.btn-primary:hover, .t-btn-primary:hover, .t-btn-dir-cta .t-btn-primary:hover, .filter-submit button:hover, .t-btn-search:hover {
	background-color: #fff;
	color: #312783;
	border-width:2px;
}
.t-btn-search {
	border-color: #312783;
}
.btn-secondary {
	border-width:2px;
}
.btn-secondary:hover {
	border-color: var(--secondary-background);
	border-width:2px;
}
.t-tag-nav {
	border: 2px solid #27206A;
	color: #27206A;
	background-color: white;
}

.t-tag {
	border-radius: 0px;
}
.t-tag-nav-home-flag-active, .t-tag-nav:hover {
	background-color: #27206A !important;
	color: white !important;
	border: 2px solid #27206A;
}

footer {
	background-color: #eff9ff !important;
}

.typo-m {font-size:22px;font-weight: bold;}
.typo-l {font-size:34px;font-weight: bold;}
.header__sub {
    margin-top: 1rem;
}
.media-item__figure img {
	height:90px;
	width: auto;
}
.copyright__text {
    font-family: Arial, "Helvetica Neue", Helvetica, sans-serif;
    font-weight: var(--typo-font-weight-bold);
    font-size: 12px;
    hyphens: auto;
    margin: 0;
    padding: 1px;
    text-transform: none;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-wrap: balance;
    min-width: 24px;
	text-shadow: 0px 0px 4px black;
	line-height: 1;
}
.copyright--absolute {
    --background: transparent;
    --text-align: right;
    --text-shadow: rgb(0, 0, 0) 1px 0 0, rgb(0, 0, 0) 0.5403px 0.8414px 0, rgb(0, 0, 0) -0.4161px 0.9092px 0, rgb(0, 0, 0) -0.9899px 0.1411px 0, rgb(0, 0, 0) -0.6536px -0.7568px 0, rgb(0, 0, 0) 0.2836px -0.9589px 0, rgb(0, 0, 0) 0.9601px -0.2794px 0;
    --padding: 0.25rem;
    --justify-content: right;
    --inset: auto 0 0 auto;
    --color: var(--color-media);
    --link-color: var(--color-media);
    --link-color-hover: var(--color-media);
    --link-background-hover: var(--color-media-dark);
    position: absolute;
}
.copyright.copyright--absolute {
	font-size: 12px !important;
}
.media-item__figure {
    position: relative;
    height: 100%;
    max-height: 100%;
}
/* Icon List Component */

/* Base Icon List Styles */
.iconlist {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  margin: 0;
  padding: 0;
  gap: 1rem;
  justify-content: center;
}

.iconlist__item {
  display: flex;
}

.iconlist__link {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 3rem;
  height: 3rem;
  border-radius: 50%;
  text-decoration: none;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  color: currentColor;
}

.iconlist__link:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
}

.iconlist__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2rem;
  height: 2rem;
  line-height: 1;
}

.iconlist__icon .icon__svg {
  width: 100%;
  height: 100%;
  fill: currentColor;
}

/* Icon Base Styles */
.icon {
  display: inline-flex;
  flex-direction: row;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-content: center;
  align-items: center;
  line-height: 1;
}

.icon__svg {
  order: 0;
  flex: 0 1 auto;
  align-self: auto;
  fill: currentColor;
  height: 1em;
  width: 1em;
}

/* Social Media Icons Container */
.ndssocials-icons {
  /* Container for social media icons */
}

.ndssocials-icons__color--original {
  /* Original color scheme for social icons */
}

/* Social Media Platform Specific Styles */
.ndssocials-icons__facebook .iconlist__link {
  background-color: unset;
  color: white;
}

.ndssocials-icons__facebook .iconlist__link:hover {
  background-color: unset;
}

.ndssocials-icons__youtube .iconlist__link {
  background-color: unset;
  color: white;
}

.ndssocials-icons__youtube .iconlist__link:hover {
  background-color: unset;
}

.ndssocials-icons__instagram .iconlist__link {
  background: unset;
  color: white;
}

.ndssocials-icons__instagram .iconlist__link:hover {
  background: unset;
}

/* Utility Class for Screen Readers */
.visually-hidden {
  position: absolute !important;
  clip: rect(1px, 1px, 1px, 1px);
  padding: 0 !important;
  border: 0 !important;
  height: 1px !important;
  width: 1px !important;
  overflow: hidden;
}

/* Responsive Adjustments */
@media (max-width: 480px) {
  .iconlist {
    gap: 0.75rem;
  }
  
  .iconlist__link {
    width: 2.5rem;
    height: 2.5rem;
  }
  
  .iconlist__icon {
    width: 1.5rem;
    height: 1.5rem;
  }
}

@media (min-width: 768px) {
  .iconlist {
    gap: 1.25rem;
  }
  
  .iconlist__link {
    width: 3.5rem;
    height: 3.5rem;
  }
  
  .iconlist__icon {
    width: 2.25rem;
    height: 2.25rem;
  }
}

/* Focus States for Accessibility */
.iconlist__link:focus {
  outline: 2px solid var(--focus-outline-color, #000);
  outline-offset: 2px;
}

.iconlist__link:focus-visible {
  outline: 2px solid var(--focus-outline-color, #000);
  outline-offset: 2px;
  box-shadow: 0 0 0 4px rgba(0, 0, 0, 0.1);
}

/* Alternative Icon Sizes */
.iconlist--small .iconlist__link {
  width: 2rem;
  height: 2rem;
}

.iconlist--small .iconlist__icon {
  width: 1.25rem;
  height: 1.25rem;
}

.iconlist--large .iconlist__link {
  width: 4rem;
  height: 4rem;
}

.iconlist--large .iconlist__icon {
  width: 2.5rem;
  height: 2.5rem;
}

/* Icon Alignment Variations */
.iconlist--left {
  justify-content: flex-start;
}

.iconlist--center {
  justify-content: center;
}

.iconlist--right {
  justify-content: flex-end;
}

.iconlist--space-between {
  justify-content: space-between;
}

.iconlist--space-around {
  justify-content: space-around;
}
.logowall__logo {
        max-width: 180px;
        max-height: 180px;
    }


@media all and (max-width: 700px) {
	nav.t-content-nav ul {
    display: flex;
    margin: 0;
    padding: 0;
    flex-direction: column !important;
    align-items: flex-start;
}
}