/*************************/
/* Grundgerüst der Seite */
/*************************/

/*Überschrieben Drupal-Klassen */

.l-rw {
    padding: 0;
}

/* verwenden mit:     color: var(--primary-color); */

/*Header*/
	
/* vermutlich nicht mehr gebraucht, Stand 23.12.25 .site-branding {
	float: right;}	*/
		 
.regions, .page, html {
    background-color: white;
}

main.block, .block-views-css-class--tum-slideshow.block {
	margin-top:0;
	}
/*Linker Rand aufgehoben 20.12*/
.container{
	margin-left: 0;
        /*margin-right: 0;*/
}

/*Button Primary*/
.button, .opac-button{
	background-color: var(--tum-secondary) !important;
	border-color: var(--tum-secondary) !important;
	border: 1px solid var(--tum-secondary) !important;
	border-radius: 0.4rem !important;
	display: inline-block !important;
	padding: 0.5rem 1rem !important;
	font-size: 1rem !important;
	font-weight: bold;
	text-align: center !important;
	margin-top: 1rem;
	margin-bottom: 1rem;
}

.button:hover, .opac-button:hover{
	color: white;
	background-color: var(--tum-accordion-level-c) !important;
	border-color: var(--tum-accordion-level-c) !important;
}


/*******************/	
/* Übersichtskästen*/
/*******************/
.tum-nav-block{
	margin: 1em 0 0 0;
	background: none;
    border: #b3b3b3 solid 1px;
	padding: 20px;
    margin-bottom: 20px;
    width: 100%;
}
	
/*******************/	
/* Vertikale Tabs  */
/*******************/	
.ui-corner-all, .ui-corner-left {
  border-radius: 0;
}  /* alle runden Ecken herausnehmen  */

.tum-blocktabs.ui-tabs {
	padding: 0;
	}
.tum-blocktabs.ui-tabs-vertical .ui-tabs-panel {
	padding-bottom: 0;
	float: left;
	padding-left: 20px;
	width: calc(100% - 175px);
	}
		
.tum-blocktabs.ui-widget.ui-widget-content {
	border: 1px solid #b3b3b3;
	}
	
.tum-blocktabs.ui-tabs-vertical {
	width: auto;
	}
	
.tum-blocktabs.ui-tabs-vertical .ui-tabs-nav	{
	/* width: 150px; */
	padding: 0;
	border-width: 0px;
	}
	
.tum-blocktabs .ui-state-default,.tum-blocktabs .ui-widget-content .ui-state-default, .tum-blocktabs .ui-widget-header .ui-state-default,.tum-blocktabs  .ui-button, html .tum-blocktabs .ui-button.ui-state-disabled:hover, html .tum-blocktabs .ui-button.ui-state-disabled:active {
    border-top-width: 0;
	border-left-width: 0;
	border-right: 1px solid #fff;
	border-bottom-width: 0;
    background: #8f8f8f;
    font-weight: normal;
    color: #fff;
}
.tum-blocktabs.ui-tabs-vertical .ui-tabs-nav li {
	margin:0;
	}	
	
.tum-blocktabs.ui-tabs-vertical .ui-tabs-nav li.ui-tabs-active {
	background: #fff;
	border: 0px solid #fff;
	}
	
.tum-blocktabs.ui-widget-content .ui-state-default	{
	border-bottom-color: #fff;
	border-top-color: #fff;
	}
.tum-blocktabs.ui-widget-content .ui-state-default:last-of-type	{
	border-bottom-width: 0 !important;
	}
	
.tum-blocktabs .ui-state-default a,.tum-blocktabs  .ui-state-default a:link {
	color: #fff;
	width: 100%;
	}
	
.tum-blocktabs .ui-tabs-active a, .tum-blocktabs .ui-tabs-active a:link	{
	color: #8f8f8f;
	}
	
.tum-blocktabs .field {
		margin-bottom: 0;
 }



/*******************/	
/*Aktuelles      	*/
/*******************/

div.views-row > div.views-field.tum-aktuelles--header-blue {
	letter-spacing: 0.6px;
	color: #3070b3;
	padding-bottom: 0;
	font-weight: bold;
	margin-bottom: 0;
	margin-right: 6px;
	padding-right: 9px;
}

div.views-row > div.views-field.tum-aktuelles--header,
.tum-aktuelles--header{
	color: #888;
	font-weight: bold;
	font-size: 12px;
	margin-bottom: 0;
	padding-bottom: 0;
	line-height: 1.5em;
}

.tum-aktuelles--header-kategorie {
	color: #3070b3;
	}

.tum-aktuelles h3, 
.tum-aktuelles h2 {
	font-size: 18px;
	border-left: none;
	border-bottom: none;
	text-transform: none;
	color: #333;
	letter-spacing: 0.4px;
	padding-left: 0;
	margin-bottom: .3em;
	}
	
.tum-aktuelles a h3::after {
    background: rgba(0, 0, 0, 0) url("../images/tum_icons/icn_tum_internlink.svg") no-repeat scroll center center;
    content: "";
    margin-left: 5px;
    margin-right: 3px;
    padding-right: 11px;
}	

.tum-aktuelles h3 .tum-aktuelles--subheading,
.tum-aktuelles h2 .tum-aktuelles--subheading,
.tum-aktuelles h1 .tum-aktuelles--subheading{
	margin-top: 0px;
	margin-bottom: 0px;
	border-bottom: 0;
	font-size: 14px;
	font-weight: bold;
	line-height: 1.33;
	padding-bottom: 1px;
	text-transform: unset;
	color: #333;
	display: block;
}
.tum-aktuelles h1 .tum-aktuelles--subheading {
		font-size: 18px;
}

.tum-aktuelles--article {
	display: table;
}

div.views-row > div.views-field.tum-aktuelles--lead p{
	 font-size: 18px;
    font-weight: bold;
    line-height: 1.33;
    margin-bottom: 16px;
    color: #333;
}


.tum-aktuelles .views-row, .news .view-footer {
	clear: left;
	margin-bottom: 4em;
	}
	
	
/* Auch für andere Bilder gleicher Größe mit BU */
.tum-aktuelles figure.tum-aktuelles--bild:not(:empty),
.tum-bild-mit-bu figure.tum-bild-mit-bu--bild:not(:empty) {
    float: left;
    margin-bottom: 15px;
    margin-right: 25px;
    margin-top: 5px;
    vertical-align: top;}	


.tum-aktuelles figcaption:not(:empty),
.tum-bild-mit-bu figcaption:not(:empty){
    font-size: 11px;
    line-height: 140%;
    padding-top: 5px;
    font-style: italic;
    text-align: left;
	 }
   
/*Ende Bild mit BU */

.tum-aktuelles .views-row ul,
.tum-aktuelles .views-row ol {
	list-style-position: inside;	
	}
	
.tum-aktuelles .views-row li {
	position: relative;
	left: 1em;
	text-indent: -1em;
	}
	
.tum-aktuelles .more-link {
	font-weight: bold;
	clear: both;
	}
	
/* Aktuelles Startseite */
.tum-aktuelles--startseite figure.tum-aktuelles--bild {
      margin: 5px 15px 15px 0;
	}

.tum-aktuelles--startseite div.views-row {
	margin-bottom: 25px;
	padding-top:0x;
	clear: both;
	}	
	
	
.tum-aktuelles--startseite p {
	margin-bottom: 0.1em;
	}
	
.tum-aktuelles--startseite .more-link a:after {	
	background:url("../images/tum_icons/icn_tum_internlink.svg") center no-repeat;
	padding-right:11px;
	content:"";
	margin-left:5px;
	margin-right:3px
}

/* Slideshow Startseite */

.tum-slideshow {
	position: relative;
	}

.tum-slideshow h3 {
	color: #333;
    font-size: 14px;
    line-height: 130%;
    margin: 0;
    text-rendering: optimizelegibility;
    padding-left: 0px;
}	

.tum-slideshow-caption {
	 opacity: 0.9; 
	 background: none repeat scroll 0 0 rgba(255, 255, 255, 0.9);
	 color: #333333;
	 display: block;
	 font-size: 10px;
	 padding: 15px;
	 width: 75%;
	 position: absolute; 
	 bottom: 20px;
	 left: 20px;
 }
 
.tum-slideshow-caption p{
	margin: 0;
}

.tum-slideshow-caption--header {
	font-weight: bold;
	font-size: 16px;
	color:#4c4c4c;
	margin-bottom:.75em;
	line-height:1.2em
}	
/************************/
/* Backend              */
/***********************/ 
 .path-backend #rid-sidebar-second {
	 display: none;
 }
 
/************************/
/* Ansprechpersonen     */
/***********************/

.portrait {
	float: left;
	margin-right: 20px;
	width: 142px;
	}
	
.portrait_dummy{
border: 1px solid #e6e6e6;
width: 55px;
height: 70px;
line-height: 70px;
width: 140px;
height: 179px;
line-height: 179px;
text-align: center;
}

.tum-kontakt .views-row {
	overflow: auto;
	margin-bottom: 1em; 
	padding-bottom: 1em; 
	border-bottom: solid 2px #f5f5f5;
}

.tum-kontakt div.views-row > div.views-field	{
	margin: 0;
	
}

.tum-kontakt--grunddaten {
	float: left;
	width: 42%;
    min-height: 182px;
	margin-right: 10px;
}

.tum-kontakt--kontaktdaten {
	padding-top: 2em;	
}
	
.tum-kontakt .views-field-uid {
	overflow: hidden;
}

.tum-kontakt nav {
	clear: left;
}

.tum-kontakt--list ul {
		margin-bottom: 0.3em;
}

.tum-kontakt--abteilungen div > ul > li:first-child h2{
	display: none; 
}
	
.tum-kontakt--abteilungen div > ul > li:first-child  ul h2{
	display: inline; 
}	

.tum-kontakt--name {
	font-size: 20px;
	font-weight: bold;
	color: #4c4c4c;
	margin-bottom: .75em;
	line-height: 1.2em;
	}
	
	
/* Öffnungszeiten: View */

.tum-oez .views-row {
	margin-bottom: 2em;
	}
	
/************************/
/* Libraryh3lp     */
/***********************/

.libraryh3lp a {border:none;}

div.libraryh3lp {
	float:right;
	height: 100px;
	}

.libraryh3lp {
       position: fixed;
       bottom: 40px;
       right: 40px;
       /*z-index: 1000*/
}

.libraryh3lp img {
	height: 110px;
		}
/*Jump-To-Top*/
#jumpToTopFAB {
	position: fixed;
	bottom: 150px; /* über libraryh3lp platzieren */
	right: 65px;
	z-index: 1000;
	display: none;
}
#jumpToTopFAB .jumptotop-button {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 48px;
	height: 48px;
	background-color: var(--tum-accordion-level-c);
	color: #fff;
	border-radius: 50%;
	text-decoration: none;
	box-shadow: none;
	border: none;
	outline: none;
}
body.scrolled #jumpToTopFAB {
	display: block;
}
#jumpToTopFAB .jumptotop-button:hover {
	background-color: var(--tum-secondary); /* hover auch von libraryh3lp (gelöst direkt aber auf deren Website via 2 verschiedener svg's)*/
}
/*evtl. tumup*/
.view-content.row {
  display: block;
}


@media (max-width: 768px) {
  fieldset {
    display: block;
  }
	/*Anpassung Breite, go68tif 29.01.2026*/
	#main-wrapper{
		width: 100%;
	}
	#main {
		margin-left: 0;
	}
	.libraryh3lp img {
		height: 90px;
	}
}

/* =========================================
   STARTSEITEN SLIDER
   ========================================= */

/* --- 1. Haupt-Container des Sliders --- */
.slick-slider {
    position: relative;
    margin-bottom: 20px; /* Kleiner Abstand nach unten */
}

/* --- 2. Die einzelnen Slides und das Bild --- */
.slick-slide,
.slide {
    position: relative;
    display: block;
}

/* Das Bild (auch wenn es ein Link ist) auf volle Breite zwingen */
.slick-slide img,
.slide img,
.slick-slide a img,
.slide a img {
    width: 100%;
    height: auto;
    display: block;
    border: none;
}

/* --- 3. Die Pfeile direkt am Bildrand --- */
.slick-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    z-index: 30;
    background-color: rgba(0, 0, 0, 0.5); /* Halbtransparent schwarz */
    border: none;
    width: 40px;
    height: 40px;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    transition: background-color 0.3s ease;
    
    /* Text im Button unsichtbar machen */
    font-size: 0 !important;
    color: transparent !important;
}

/* Kasten bleibt beim Hovern unverändert halbtransparent */
.slick-arrow:hover {
    background-color: rgba(0, 0, 0, 0.5); 
}

.slick-prev { left: 10px; }
.slick-next { right: 10px; }

/* --- 4. Die massiven Dreieck-Symbole --- */
.slick-prev::before,
.slick-next::before {
    font-family: Arial, sans-serif;
    font-size: 18px !important;  /* Größe der Dreiecke */
    color: #ffffff !important;   /* Standard: Weißer Pfeil */
    opacity: 1;
    display: block;
    transition: color 0.3s ease;
}

.slick-prev::before { content: '\25C0'; /* ◀ */ }
.slick-next::before { content: '\25B6'; /* ▶ */ }

/* Pfeil wird beim Hovern SCHWARZ */
.slick-arrow:hover::before {
    color: #000000 !important;
}

/* --- 5. Navigation-Dots ausblenden --- */
.slick-dots {
    display: none !important;
}

/* --- 6. Das Text-Overlay (Caption) linksbündig zentrieren --- */
/* (Wir nutzen slick-caption und slide__caption zur Sicherheit für Drupal) */
.slick-caption,
.slide__caption {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 8%;
    z-index: 20;
    text-align: left;
    width: 70%;
    color: #ffffff;
    
    /* Lässt Klicks durch den Textblock hindurch auf das Bild darunter fallen */
    pointer-events: none; 
}

.slick-caption .views-field,
.slide__caption .views-field {
    margin-bottom: 5px;
}

/* --- 7. Typografie: Dachzeile --- */
.slick-caption .views-field:nth-child(1),
.slide__caption .views-field:nth-child(1) {
    font-family: Arial, sans-serif;
    font-size: 16px;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 15px;
    text-shadow: 1px 1px 4px rgba(0,0,0,0.8);
}

/* --- 8. Typografie: Die großen Textzeilen (Titel) --- */
.slick-caption .views-field:nth-child(2),
.slick-caption .views-field:nth-child(3),
.slide__caption .views-field:nth-child(2),
.slide__caption .views-field:nth-child(3) {
    font-family: Arial, sans-serif;
    font-size: 60px;
    line-height: 1.1;
    font-weight: normal;
    text-shadow: 2px 2px 5px rgba(0,0,0,0.8);
}

/* --- 9. Call to Action Button --- */
.slick-caption .views-field:last-child,
.slide__caption .views-field:last-child {
    margin-top: 25px;
}

.slick-caption .views-field:last-child a,
.slide__caption .views-field:last-child a {
    display: inline-block;
    background-color: #337ab7;
    color: #ffffff !important;
    padding: 12px 25px;
    font-size: 16px;
    font-weight: bold;
    text-transform: uppercase;
    text-decoration: none;
    border: none;
    transition: background-color 0.3s ease;
    
    /* Aktiviert den Klick exakt nur für diesen Button wieder */
    pointer-events: auto;
}

.slick-caption .views-field:last-child a:hover,
.slide__caption .views-field:last-child a:hover {
    background-color: #23527c;
}

/* =========================================
   ENDE STARTSEITEN SLIDER
   ========================================= */