body,form,figure{margin:0;padding:0}img{border:0}header,footer,nav,section,aside,article,figure,figcaption{display:block}body{font-size:100.01%}select,input,textarea{font-size:99%}#container,.inside{position:relative}#main,#left,#right{float:left;position:relative}#main{width:100%}#left{margin-left:-100%}#right{margin-right:-100%}#footer{clear:both}#main .inside{min-height:1px}.ce_gallery>ul,.content-gallery>ul{margin:0;padding:0;overflow:hidden;list-style:none}.ce_gallery>ul li,.content-gallery>ul li{float:left}.ce_gallery>ul li.col_first,.content-gallery>ul li.col_first{clear:left}.float_left,.media--left>figure{float:left}.float_right,.media--right>figure{float:right}.block{overflow:hidden}.media{display:flow-root}.clear,#clear{height:.1px;font-size:.1px;line-height:.1px;clear:both}.invisible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.custom{display:block}#container:after,.custom:after{content:"";display:table;clear:both}
@media (max-width:767px){#wrapper{margin:0;width:auto}#container{padding-left:0;padding-right:0}#main,#left,#right{float:none;width:auto}#left{right:0;margin-left:0}#right{margin-right:0}}img{max-width:100%;height:auto}.audio_container audio{max-width:100%}.video_container video{max-width:100%;height:auto}.aspect,.responsive{position:relative;height:0}.aspect iframe,.responsive iframe{position:absolute;top:0;left:0;width:100%;height:100%}.aspect--16\:9,.responsive.ratio-169{padding-bottom:56.25%}.aspect--16\:10,.responsive.ratio-1610{padding-bottom:62.5%}.aspect--21\:9,.responsive.ratio-219{padding-bottom:42.8571%}.aspect--4\:3,.responsive.ratio-43{padding-bottom:75%}.aspect--3\:2,.responsive.ratio-32{padding-bottom:66.6666%}.aspect--9\:16,.responsive.ratio-916{padding-bottom:177.7777%}.aspect--1\:1,.responsive.ratio-11{padding-bottom:100%}
#wrapper{width:960px;margin:0 auto}.grid1,.grid2,.grid3,.grid4,.grid5,.grid6,.grid7,.grid8,.grid9,.grid10,.grid11,.grid12{float:left;margin-left:10px;margin-right:10px;display:inline}.mod_article [class^=ce_],.mod_article [class*=" ce_"],.mod_article [class^=content-],.mod_article [class*=" content-"],.mod_article [class^=mod_],.mod_article [class*=" mod_"],.mod_article [class^=module-],.mod_article [class*=" module-"]{margin-left:10px;margin-right:10px}.ce_sliderStart>.content-slider{margin-left:0;margin-right:0}.mod_article .mod_newsreader,.mod_article .mod_eventreader{margin-left:0;margin-right:0}.mod_article [class^=layout_]>*,.mod_article [class*=" layout_"]>*,.mod_article [class^=event_]>*,.mod_article [class*=" event_"]>*{margin-left:10px;margin-right:10px}.mod_article.grid1,.mod_article.grid2,.mod_article.grid3,.mod_article.grid4,.mod_article.grid5,.mod_article.grid6,.mod_article.grid7,.mod_article.grid8,.mod_article.grid9,.mod_article.grid10,.mod_article.grid11,.mod_article.grid12{margin-left:0;margin-right:0}#main .inside{overflow:hidden}.grid1{width:60px}.grid2{width:140px}.grid3{width:220px}.grid4{width:300px}.grid5{width:380px}.grid6{width:460px}.grid7{width:540px}.grid8{width:620px}.grid9{width:700px}.grid10{width:780px}.grid11{width:860px}.grid12{width:940px}.mod_article.grid1{width:80px}.mod_article.grid2{width:160px}.mod_article.grid3{width:240px}.mod_article.grid4{width:320px}.mod_article.grid5{width:400px}.mod_article.grid6{width:480px}.mod_article.grid7{width:560px}.mod_article.grid8{width:640px}.mod_article.grid9{width:720px}.mod_article.grid10{width:800px}.mod_article.grid11{width:880px}.mod_article.grid12{width:960px}.offset1{margin-left:90px!important}.offset2{margin-left:170px!important}.offset3{margin-left:250px!important}.offset4{margin-left:330px!important}.offset5{margin-left:410px!important}.offset6{margin-left:490px!important}.offset7{margin-left:570px!important}.offset8{margin-left:650px!important}.offset9{margin-left:730px!important}.offset10{margin-left:810px!important}.offset11{margin-left:890px!important}.offset12{margin-left:970px!important}.mod_article.offset1{margin-left:80px!important}.mod_article.offset2{margin-left:160px!important}.mod_article.offset3{margin-left:240px!important}.mod_article.offset4{margin-left:320px!important}.mod_article.offset5{margin-left:400px!important}.mod_article.offset6{margin-left:480px!important}.mod_article.offset7{margin-left:560px!important}.mod_article.offset8{margin-left:640px!important}.mod_article.offset9{margin-left:720px!important}.mod_article.offset10{margin-left:800px!important}.mod_article.offset11{margin-left:880px!important}.mod_article.offset12{margin-left:960px!important}@media (min-width:768px) and (max-width:979px){#wrapper{width:744px}.grid1{width:42px}.grid2{width:104px}.grid3{width:166px}.grid4{width:228px}.grid5{width:290px}.grid6{width:352px}.grid7{width:414px}.grid8{width:476px}.grid9{width:538px}.grid10{width:600px}.grid11{width:662px}.grid12{width:724px}.mod_article.grid1{width:62px}.mod_article.grid2{width:124px}.mod_article.grid3{width:186px}.mod_article.grid4{width:248px}.mod_article.grid5{width:310px}.mod_article.grid6{width:372px}.mod_article.grid7{width:434px}.mod_article.grid8{width:496px}.mod_article.grid9{width:558px}.mod_article.grid10{width:620px}.mod_article.grid11{width:682px}.mod_article.grid12{width:744px}.offset1{margin-left:72px!important}.offset2{margin-left:134px!important}.offset3{margin-left:196px!important}.offset4{margin-left:258px!important}.offset5{margin-left:320px!important}.offset6{margin-left:382px!important}.offset7{margin-left:444px!important}.offset8{margin-left:506px!important}.offset9{margin-left:568px!important}.offset10{margin-left:630px!important}.offset11{margin-left:692px!important}.offset12{margin-left:754px!important}.mod_article.offset1{margin-left:62px!important}.mod_article.offset2{margin-left:124px!important}.mod_article.offset3{margin-left:186px!important}.mod_article.offset4{margin-left:248px!important}.mod_article.offset5{margin-left:310px!important}.mod_article.offset6{margin-left:372px!important}.mod_article.offset7{margin-left:434px!important}.mod_article.offset8{margin-left:496px!important}.mod_article.offset9{margin-left:558px!important}.mod_article.offset10{margin-left:620px!important}.mod_article.offset11{margin-left:682px!important}.mod_article.offset12{margin-left:744px!important}}@media (max-width:767px){#wrapper{width:auto}.grid1,.grid2,.grid3,.grid4,.grid5,.grid6,.grid7,.grid8,.grid9,.grid10,.grid11,.grid12{float:none!important;display:block!important;width:auto!important}.offset1,.offset2,.offset3,.offset4,.offset5,.offset6,.offset7,.offset8,.offset9,.offset10,.offset11,.offset12{margin-left:10px!important}}
.rsts-main,.rsts-main *{-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.rsts-header,.rsts-footer,.rsts-thumbs-header,.rsts-thumbs-footer{overflow:hidden}.rsts-view,.rsts-thumbs-view{position:relative}@media print{.rsts-view,.rsts-thumbs-view{position:static}}.rsts-crop,.rsts-thumbs-crop{position:relative;overflow:hidden}@media print{.rsts-crop,.rsts-thumbs-crop{position:static;overflow:visible;width:auto !important;height:auto !important;transform:none !important}}.rsts-slides,.rsts-slide,.rsts-thumbs-slides,.rsts-thumbs-slide{position:absolute;left:0;top:0}@media print{.rsts-slides,.rsts-slide,.rsts-thumbs-slides,.rsts-thumbs-slide{position:static;width:auto !important;height:auto !important;transform:none !important}.rsts-slides.rsts-slide-image img,.rsts-slides.rsts-slide-video img,.rsts-slides.rsts-thumbs-slide-image img,.rsts-slides.rsts-thumbs-slide-video img,.rsts-slide.rsts-slide-image img,.rsts-slide.rsts-slide-video img,.rsts-slide.rsts-thumbs-slide-image img,.rsts-slide.rsts-thumbs-slide-video img,.rsts-thumbs-slides.rsts-slide-image img,.rsts-thumbs-slides.rsts-slide-video img,.rsts-thumbs-slides.rsts-thumbs-slide-image img,.rsts-thumbs-slides.rsts-thumbs-slide-video img,.rsts-thumbs-slide.rsts-slide-image img,.rsts-thumbs-slide.rsts-slide-video img,.rsts-thumbs-slide.rsts-thumbs-slide-image img,.rsts-thumbs-slide.rsts-thumbs-slide-video img{width:100% !important;height:auto !important;margin:0 !important}}.rsts-slide,.rsts-thumbs-slide{overflow:hidden}@media print{.rsts-slide,.rsts-thumbs-slide{position:static}}.rsts-video-iframe,.rsts-thumbs-video-iframe{position:absolute;top:0;left:0;width:100%;height:100%}.rsts-type-slide .rsts-view,.rsts-thumbs-type-slide .rsts-thumbs-view{cursor:url("../../bundles/rocksolidslider/img/openhand.cur"),default;cursor:-webkit-grab;cursor:-moz-grab;cursor:-ms-grab;cursor:-o-grab;cursor:grab}.rsts-type-slide.rsts-dragging .rsts-view,.rsts-thumbs-type-slide.rsts-thumbs-dragging .rsts-thumbs-view{cursor:url("../../bundles/rocksolidslider/img/closedhand.cur"),default;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:-ms-grabbing;cursor:-o-grabbing;cursor:grabbing;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.rsts-type-slide.rsts-dragging-disabled .rsts-view,.rsts-thumbs-type-slide.rsts-thumbs-dragging-disabled .rsts-thumbs-view{cursor:auto}@media print{.rsts-nav,.rsts-prev,.rsts-next,.rsts-overlay-prev,.rsts-overlay-next,.rsts-progress,.rsts-thumbs-nav,.rsts-thumbs-prev,.rsts-thumbs-next,.rsts-thumbs-overlay-prev,.rsts-thumbs-overlay-next,.rsts-thumbs-progress{display:none !important}}

.rsts-skin-default.rsts-main{position:relative}.rsts-skin-default.rsts-type-fade .rsts-slide{background-color:#fff}.rsts-skin-default .rsts-caption{position:absolute;top:20px;left:20px;margin-right:20px;padding:5px 10px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;color:#fff;background-color:#000;background-color:rgba(0,0,0,0.4);filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=0);opacity:0;-webkit-transform:translate(0, -20px);-moz-transform:translate(0, -20px);-ms-transform:translate(0, -20px);-o-transform:translate(0, -20px);transform:translate(0, -20px);-webkit-transition:opacity 0.5s,-webkit-transform 0.5s;-moz-transition:opacity 0.5s,-moz-transform 0.5s;-o-transition:opacity 0.5s,-o-transform 0.5s;transition:opacity 0.5s,transform 0.5s}.rsts-skin-default .rsts-active .rsts-caption{filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100);opacity:1;-webkit-transform:translate(0, 0);-moz-transform:translate(0, 0);-ms-transform:translate(0, 0);-o-transform:translate(0, 0);transform:translate(0, 0)}.rsts-skin-default .rsts-prev,.rsts-skin-default .rsts-next,.rsts-skin-default .rsts-video-play,.rsts-skin-default .rsts-video-stop,.rsts-skin-default .rsts-thumbs-prev,.rsts-skin-default .rsts-thumbs-next{position:absolute;right:55px;bottom:15px;overflow:hidden;width:30px;height:30px;border:1px solid #ccc;border:1px solid rgba(0,0,0,0.1);-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;outline:none;line-height:0;text-align:center;text-decoration:none;text-indent:-9999px;-webkit-background-clip:padding;-moz-background-clip:padding;background-clip:padding-box;background-image:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAMAAAAM7l6QAAAAilBMVEUHBwg/QEF5enp5ensCAwQHCAhzdHUAAQEGBwh8fX37+/svMDBub3COjo9yc3NtbW709fWvsLDm5uba2trR0dEuLi6Pj4/Q0NDl5eXZ2toFBgfz8/MuLy/09PT29vb8/Pz6+vp7e3x0dXZzdHT4+Pj39/f9/v3+/v79/f3///8EBQb5+fkAAAD19fVMP6q+AAAALnRSTlOAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8hTP8QAAAJ1JREFUeNrV0lkPwiAMAOB53zrva2xOxQm0///vWZ4a1o3EN20gNPnSlFASRKVQIS2KFHPKaPvcH8St8WesXYzddVMIZn3NZ1tTZ9Y7QLa7MdfVWlgYZqk9lzML7VZPbGCdDsFekpI14GoN/fGoY6aqkbVaUvVg0lKN7v3wvcuwt/Tg5tIPRjA77I/i1dhX2dnEJnYq4vP+2a/4FX8AsSOXytKixMYAAAAASUVORK5CYII=');-webkit-box-shadow:0 0 2px rgba(0,0,0,0.1);-moz-box-shadow:0 0 2px rgba(0,0,0,0.1);box-shadow:0 0 2px rgba(0,0,0,0.1);background-position:50% 50%;-webkit-transition:opacity 0.05s linear;-moz-transition:opacity 0.05s linear;-o-transition:opacity 0.05s linear;transition:opacity 0.05s linear}@media only screen and (-webkit-min-device-pixel-ratio: 1.3), only screen and (min--moz-device-pixel-ratio: 1.3), only screen and (-o-device-pixel-ratio: 4 / 3), only screen and (min-device-pixel-ratio: 1.3){.rsts-skin-default .rsts-prev,.rsts-skin-default .rsts-next,.rsts-skin-default .rsts-video-play,.rsts-skin-default .rsts-video-stop,.rsts-skin-default .rsts-thumbs-prev,.rsts-skin-default .rsts-thumbs-next{background-image:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAMAAAANIilAAAAAIVBMVEWhoaE7PD15enqVlpaTk5N2d3h0dHVoaWpmZmcGBwj19fXsWX/bAAAAC3RSTlOAgICAgICAgICAgMiF55wAAAB9SURBVHja7dUxEoAgFANRFBTw/ge2YythEivHn/6VmU3XiwUOHPhPuGYf196zjLHPOi0tWsBYtICx/Zxgw4INCzYs2LBgw4INC55ZFadhN+NVbeh9jhf6mGJDgw0NNjTY0GBDgz0NXusiYDRWwGisgNHFL0Yrnwxd4MCBtd3+EosAicYyWQAAAABJRU5ErkJggg==');background-size:30px,30px}}.rsts-skin-default .rsts-prev:hover,.rsts-skin-default .rsts-next:hover,.rsts-skin-default .rsts-video-play:hover,.rsts-skin-default .rsts-video-stop:hover,.rsts-skin-default .rsts-thumbs-prev:hover,.rsts-skin-default .rsts-thumbs-next:hover{background-color:#eee;background-color:rgba(238,238,238,0.7)}.rsts-skin-default .rsts-next,.rsts-skin-default .rsts-thumbs-next{right:20px;background-image:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAMAAAAM7l6QAAAAkFBMVEUBAQLPz9AlJiYlJifS0tIsLS0nJyjQ0dDR0tIBAQElJSYrLC2tra39/PwFBQYFBgf6+fmBgYKCgoL9/f339vZBQULIycnIyMiCg4PR0dEmJycmJyjMzMz8/Pzl5eXj4+MCAwQGBwghIiP09PT7+/shIiL6+vrNzs7Nzc0iIyP29vb39/cHCAkAAAD////19fV/WdL3AAAAMHRSTlOAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICRnvRdAAAAnklEQVR42tXSxw7CMAwG4LL3XqUtLdRQqNPY7/92WEJVDhkSN7B8iPTpl6M4ETMAA0t/ChmwPTELe+uPGKsQKywWflYUJxn5eI9xpOsneXidp7pp3Wa+dHrGbWY6d43bLD673nR9vLsZaL5cNfoAyp0eDyRdntxp6icy+/Ei981HqVGLq3xo1GaFm4kuRb1vvp1mFNzYLrzvn/2KX/MbXNOe099MDj0AAAAASUVORK5CYII=')}@media only screen and (-webkit-min-device-pixel-ratio: 1.3), only screen and (min--moz-device-pixel-ratio: 1.3), only screen and (-o-device-pixel-ratio: 4 / 3), only screen and (min-device-pixel-ratio: 1.3){.rsts-skin-default .rsts-next,.rsts-skin-default .rsts-thumbs-next{background-image:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAMAAAANIilAAAAAHlBMVEWhoaE7PD2VlpaTk5N2d3h0dHVoaWpmZmcGBwj19fXtfGSSAAAACnRSTlOAgICAgICAgICAXdxslAAAAHxJREFUeNrt1TEOgDAMxdDSAi33vzBbPVUoZkLE+1O2/HK9KHHixH/A9fS4jnGGMfZZl6VFBzAWHcLHQD9gocFCg4UGCw0WGiw0WGjwum3qEsb7tH1xWViwsGBhwcKChQULC5Z2jRs2itHdfc+GjWB094vR+ieHLnHixK4bjyV89TB6vlgAAAAASUVORK5CYII=');background-size:30px,30px}}.rsts-skin-default .rsts-thumbs-prev,.rsts-skin-default .rsts-thumbs-next{position:absolute;top:50%;right:10px;margin-top:-15px}.rsts-skin-default .rsts-thumbs-prev{right:auto;left:10px}.rsts-skin-default.rsts-direction-y .rsts-prev{background-image:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAMAAAAM7l6QAAAAbFBMVEUgISLDw8MgICGUlZaIiImSk5PCwsP9/f39/PyHh4iUlJWSkpLX2NgAAQIoKSkGBwgdHR7Ly8skJSYEBAXHyMj+/v739/ciIyMhIiImJyfNzc3S0tL8/Pz7+/v29vYHCAnNzs4AAAD////19fVh+HN2AAAAJHRSTlOAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC401waAAAAiUlEQVR42uXRyQ7CMAwE0LC2QHfaQkji1sP//yNR1csEiXMlfPFI7zCWbN7JCCVmnj9i738x2hbMpHPTzCAmfag+XyAmrWt2QzqV5URuSLWqdHXmsDMRbFHYuPbnkPBw0rtaBzgbw21IWPKjdg6xxHV68ZJ2j9mhXyrRX/34fblgLQyQLf57S/wBI9V2nx3O9QoAAAAASUVORK5CYII=')}@media only screen and (-webkit-min-device-pixel-ratio: 1.3), only screen and (min--moz-device-pixel-ratio: 1.3), only screen and (-o-device-pixel-ratio: 4 / 3), only screen and (min-device-pixel-ratio: 1.3){.rsts-skin-default.rsts-direction-y .rsts-prev{background-image:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAMAAAANIilAAAAAG1BMVEWjpKQ5OTqVlpaTk5NmZmdoaWp2d3gGBwj19fXoTOf7AAAACXRSTlOAgICAgICAgIC7HeZcAAAAeUlEQVR42u3UMQ6AMAzF0A8BmvufGHVpyOIOFRJI8f5WyxcqXLhw4U9jLeCznYzRNtYi2zsIs2UttqzFlrXYshZb1mLLWmg31iJ7+YVaaJ210GY9x/awWdsc+z5s1uaEQ4cNbY449LChzQFn3W3S9qsBFi5cuPDr+AYQcW8C6kiUiAAAAABJRU5ErkJggg==');background-size:30px,30px}}.rsts-skin-default.rsts-direction-y .rsts-next{background-image:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAMAAAAM7l6QAAAAbFBMVEUwMTKKi4suLzAGBwja2trR0dEwMDEuLi/Q0NDZ2dmJiYp7e3x6e3t/gIEAAQL09PTn5+f6+vr8/Px0dHVwcHH8/f329vYFBgdzdHT+/v79/v339/f9/f3///90dXb4+Pj5+fkEBQYAAAD19fUC5l8BAAAAJHRSTlOAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIC401waAAAAnElEQVR42uXSyQ4CIQwG4HEddRZmZUSEQnn/d7RkSAi4HI2Jf6AlfIceoHCOMcccrTXcMR5OtInf5k/YyLVL84qHjoHvwLrhmdW+0AJIhT6eVc79YYtYCQBRIZanPmO1QWuxVqr2/aIylqD9fdP4OoLMZ5sb+dK2i8Xr3cTZie+CRk49aOTUcSRNOfo8TXPUnB1QPj0J5z/5Hb7OD7UPdeTEuFeXAAAAAElFTkSuQmCC')}@media only screen and (-webkit-min-device-pixel-ratio: 1.3), only screen and (min--moz-device-pixel-ratio: 1.3), only screen and (-o-device-pixel-ratio: 4 / 3), only screen and (min-device-pixel-ratio: 1.3){.rsts-skin-default.rsts-direction-y .rsts-next{background-image:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAMAAAANIilAAAAAG1BMVEWjpKQ5OTqVlpaTk5NmZmdoaWp2d3gGBwj19fXoTOf7AAAACXRSTlOAgICAgICAgIC7HeZcAAAAg0lEQVR42u3UMQ6EMAxE0WVDYu5/YhpLXzBSRkAF8i9tvXZ+24MKFy5c+HP4P06H0RzGRoyjjWgOY1Nj0YLFpsaip7hFNrBog3ug02brDKsWK3imxQqe6EWsxWi1HqOxHqONBTuN9RiN9Vg11mPVWI9V99tL0rEe6/dVA1i4cOHCl9oBak1vAkBKLfwAAAAASUVORK5CYII=');background-size:30px,30px}}.rsts-skin-default.rsts-video-playing .rsts-nav,.rsts-skin-default.rsts-video-playing .rsts-prev,.rsts-skin-default.rsts-video-playing .rsts-next{display:none}.rsts-skin-default.rsts-video-playing .rsts-nav-thumbs{display:block}.rsts-skin-default.rsts-touch .rsts-nav-numbers,.rsts-skin-default.rsts-touch .rsts-nav-tabs{display:none}.rsts-skin-default .rsts-nav{position:absolute;right:95px;bottom:12px;left:10px;text-align:right}.rsts-skin-default .rsts-nav ul{margin:0 !important;padding:0 !important}.rsts-skin-default .rsts-nav li{display:inline}.rsts-skin-default .rsts-nav-numbers a,.rsts-skin-default .rsts-nav-tabs a{display:inline-block;height:30px;min-width:30px;padding:0.65em 0.5em 0.5em;margin:0 2px 3px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px;outline:none;font-size:12px;text-align:center;text-decoration:none;color:#fff;background-color:#555;background-color:rgba(85,85,85,0.6);-webkit-background-clip:padding;-moz-background-clip:padding;background-clip:padding-box;-webkit-box-shadow:0 0 2px rgba(0,0,0,0.2);-moz-box-shadow:0 0 2px rgba(0,0,0,0.2);box-shadow:0 0 2px rgba(0,0,0,0.2);filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=0);opacity:0;-webkit-transition:opacity 0.2s ease-in;-moz-transition:opacity 0.2s ease-in;-o-transition:opacity 0.2s ease-in;transition:opacity 0.2s ease-in}.rsts-skin-default .rsts-nav-numbers a:hover,.rsts-skin-default .rsts-nav-numbers a.active,.rsts-skin-default .rsts-nav-tabs a:hover,.rsts-skin-default .rsts-nav-tabs a.active{color:#333;background-color:#fff;background-color:rgba(255,255,255,0.5)}.rsts-skin-default:hover .rsts-nav-numbers a,.rsts-skin-default:hover .rsts-nav-tabs a{filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100);opacity:1}.rsts-skin-default .rsts-nav-bullets{line-height:0}.rsts-skin-default .rsts-nav-bullets a{display:inline-block;width:9px;height:9px;overflow:hidden;margin:12px 4px;-webkit-border-radius:100%;-moz-border-radius:100%;border-radius:100%;outline:none;text-align:left;text-indent:-999px;background-color:#fff;background-color:rgba(255,255,255,0.8);-webkit-background-clip:padding;-moz-background-clip:padding;background-clip:padding-box;-webkit-box-shadow:0 0 2px #777;-moz-box-shadow:0 0 2px #777;box-shadow:0 0 2px #777}.rsts-skin-default .rsts-nav-bullets a:hover,.rsts-skin-default .rsts-nav-bullets a.active{background-color:#777;-webkit-box-shadow:inset 0 2px 0 -1px rgba(255,255,255,0.5),inset 0 -2px 0 -1px rgba(0,0,0,0.3),0 0 0 1px #555;-moz-box-shadow:inset 0 2px 0 -1px rgba(255,255,255,0.5),inset 0 -2px 0 -1px rgba(0,0,0,0.3),0 0 0 1px #555;box-shadow:inset 0 2px 0 -1px rgba(255,255,255,0.5),inset 0 -2px 0 -1px rgba(0,0,0,0.3),0 0 0 1px #555}.rsts-skin-default .rsts-nav-thumbs{position:static;padding-top:5px}.rsts-skin-default .rsts-nav .rsts-nav-prev,.rsts-skin-default .rsts-nav .rsts-nav-next{display:none}.rsts-skin-default .rsts-video-play{top:50%;right:auto;bottom:auto;left:50%;width:64px;height:64px;margin:-32px 0 0 -32px;border:none;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px;background-image:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEYAAABGCAMAAABG8BK2AAAAb1BMVEU4ODgGBgbx8fGurq7i4uIODg5QUFD7+/vBwcEUFBQYGBggICC1tbXNzc0JCQkVFRWsrKwTExPExMTS0tImJibv7+9KSkozMzP4+PhYWFj+/v6Dg4MDAwPl5eVycnKenp4MDAza2toPDw////8AAACZ5/RyAAAAJXRSTlOAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAwmBGiwAAALNJREFUeNrt1kcOwkAQRFFyxsYmBxtDc/8zIrGpA/xaWKhnO9KT5ncvZvCxnGSSSSaZv2GK0sIsFzMHM53MWwPzfkU8OwsT9cHCRHOyMHFpLYwCIUaBEKNAiFEgxCgQYhSIMQrEGAXijAJxJrZrC7NZGZjb/WF41PHqSLw/Owa+q9D6KQthlAUwykIYZSGMsiBGWRCjLIhRFsQoC2Ga0S8LZMqx7gAzLPr0aUsmmWSS6SXzBf8cqwAv1zglAAAAAElFTkSuQmCC')}@media only screen and (-webkit-min-device-pixel-ratio: 1.3), only screen and (min--moz-device-pixel-ratio: 1.3), only screen and (-o-device-pixel-ratio: 4 / 3), only screen and (min-device-pixel-ratio: 1.3){.rsts-skin-default .rsts-video-play{background-image:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAIwAAACMCAMAAACZHrEMAAAARVBMVEUJCQlOTk4nJyddXV1gYGD29vbh4eGTk5PAwMA2NjYYGBgGBga3t7dUVFQtLS0SEhKHh4fb29sDAwPz8/NaWlr///8AAACZTZFgAAAAF3RSTlOAgICAgICAgICAgICAgICAgICAgICAgCZn8kAAAAFfSURBVHja7dpZUsMwFAVR5gDRLMT+l8r1Cqjih/5oLyB1kurYlp4evkGXGDFixIgRI0aMGDFixIgRI0aMGDFifseQvsBfPvjrdgdhzvsnCHPePkCY8/oCwpxzu4MwCQeESTggTMIBYa5wQJiEA8IkHBAm4YAwVzggTMIBYRIOCJNwQJgrHBAm4YAwCQeESTggzBUOCJNwQJiEA8IkHBDmCgeESTggTMIBYRIOCHOFA8IkHBAm4YAw5/UZhDn7iYOZjfPLlM5pZizMv2lXzk1vNs4duHTOs2kszFN7V87L1WycN73SOe/AY2FWB7tyFnGzcVaUpXPW2mNhdiF25WwWzcbZuSqds6c3Fma3c1fOpvRsnB3y0jmzg7EwU5VdOcOv2TiTuNI5M8qxMNPbXTlD9tk4E//SOWchxsKcEnmsoMM8qGNOYsRgLjFixIgRI0aMGDFixIgRI0aMGDH/e/0Ai4OJ2+ZcrkwAAAAASUVORK5CYII=');background-size:70px,70px}}.rsts-skin-default .rsts-video-stop{top:20px;right:20px;left:auto;background-image:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAMAAAAM7l6QAAAAbFBMVEWnp6dOTk7x8fHv7+9HR0fw8PDu7u7e3t5NTU3f398UFBQTExP4+PhLS0tvb29xcXH09PRJSUn39/fn5+cWFhampqb29vZISEhMTExLS0ukpKT////r6+sAAAD///8AAABKSkr19fUAAAD///8df9PJAAAAJHRSTlN6e35+e35+e3t7fX1/fHl5fXt/e315fnt7e3p/foGBfnt9gIDdofLFAAAAk0lEQVR42u2SSQ7DIAxF03nKPBEC2Ni9/x3jsMXqsuqiljxITx/8EcX7Y/wxuOmUhmPhIMdlg4akzxGbMscrBu4IyHLANce+Ymb7WKRWPsdyqpCnZJzVzUmUEgvpxmAYA4dxAB3TIanvupqisJdkRwr2O403K9V43bdpgaLuu6/x3KY7sO7VN7+m4TI5+K3v8H28AYM7doAzbo6MAAAAAElFTkSuQmCC')}@media only screen and (-webkit-min-device-pixel-ratio: 1.3), only screen and (min--moz-device-pixel-ratio: 1.3), only screen and (-o-device-pixel-ratio: 4 / 3), only screen and (min-device-pixel-ratio: 1.3){.rsts-skin-default .rsts-video-stop{background-image:url('data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAAA8CAMAAAANIilAAAAALVBMVEXo6OjGxsZjY2PKysq3t7ewsLCOjo7f39+Pj4/l5eVfX19hYWHj4+NRUVH///80A/15AAAAD3RSTlOGkL2PlZemiKWHvr2HyICcCOzTAAAAv0lEQVR42u3VSQ7DIAxA0bRJSBjs+x83mzYfNnatLqpKeM0THmRY9IuYeOKJJ7bwlsdTWwCfUpsS+Smni7EipfVW5PQwtte5iqAdvIvcGiuy25gs0e1ta7YwuqJ76+NRr6P1MbkSTM7HaKyP0QXK1HyMxgaxrjde1cBe1TV4MzZeMxYdm7OvF9OWR7H0YtpDG/ojnDurnc6hfT7Iw9tnImE7ney00bdFJ3Uw+mXpQoq822Nv8/Yf383EE0/8G3wBfh3Bcn7dsMIAAAAASUVORK5CYII=');background-size:30px,30px}}.rsts-skin-default .rsts-video-youtube>.rsts-video-stop{top:25px}.rsts-skin-default .rsts-video-vimeo>.rsts-video-stop{top:10px;right:auto;left:10px}.rsts-skin-default .rsts-progress{position:absolute;top:0;right:0;width:100%;height:2px;background-color:#000;filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=0);opacity:0;-webkit-transition:opacity 0.2s linear;-moz-transition:opacity 0.2s linear;-o-transition:opacity 0.2s linear;transition:opacity 0.2s linear}.rsts-skin-default .rsts-progress div{height:100%;background-color:#fff}.rsts-skin-default .rsts-progress.rsts-progress-active{filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=30);opacity:0.3}.rsts-skin-default .rsts-thumbs-slide{filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=80);opacity:0.8}.rsts-skin-default .rsts-thumbs-slide.rsts-thumbs-active-thumb{filter:progid:DXImageTransform.Microsoft.Alpha(Opacity=100);opacity:1}

.ce_gallery,
.ce_gallery ul {
    display: block;
    overflow: hidden;
}

.ce_gallery ul li {
    float: left;
    list-style-type: none;
}

.ce_gallery .image_container {
    position: relative;
    margin: 0;
}

.ce_gallery .col_first {
    clear: both;
}

.mod_article img {
    border-color: #000;
    border-style: solid;
}

.mod_mitglieder_list .person {
    overflow: auto;
}

.swipe {
    overflow: hidden;
    visibility: hidden;
    position: relative;
}

.swipe-wrap {
    overflow: hidden;
    position: relative;
}

.swipe-wrap > div {
    float: left;
    width: 100%;
    position: relative;
}

.mod_projektInformation .projektPhotoContainer img {
    margin-left: 5px;
    border: 1px solid #000;
}

.mod_projektInformation .projektDetails .mittelgeber {
    width: 50%;
    margin-left: 10%;
}

.mod_projektInformation .projektDetails .personen {
    width: 40%;
}

.mod_projektInformation .projektDetails {
    width: 100%;
    display: flex;
    grid-column: 1 / 13;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}

.mod_projektInformation .projektPhotoContainer {
    float: right;
    display: inline-block;
}

.mod_projektInformation .title {
    border-bottom: 1px dashed #E30613;
    font-weight: bold;
}

.emptypersonPhotoContainer img {
    border: none;
}

.mail > img {
    top: 3px;
    position: relative;
}

.mod_personInformation {
    width: 100%;
    display: inline-block;
}

.mod_personInformation .personPhotoContainer {
    float: left;
    margin-right: 50px;
    margin-bottom: 5px;
}

.topspace {
    margin-top: 40px;
    margin-bottom: 10px;
}

.mod_breadcrumb .active {
    margin-right: 5px;
    margin-left: 5px;
    font-weight: bold;
    text-decoration: none;
    color: #535850;
}

.mod_breadcrumb a {
    margin-right: 5px;
    margin-left: 5px;
    text-decoration: none;
    color: #535850;
}

.mod_breadcrumb li:after {
    content: " → ";
}

.mod_breadcrumb li.active:after {
    content: "";
}

.mod_breadcrumb li {
    display: inline-block;
    margin-top: 20px;
}

#logo {
    display: block;
    background-repeat: no-repeat;
    background-size: contain;
}

#wrapper {
    width: 100%;
}

.block {
    overflow: visible;
}

* {
    margin: 0;
    padding: 0;
}

body,
input,
textarea,
select {
    font: 11pt/1.75em arial;
}

.ce_accordion h2:before {
    content: " + ";
}

.ui-state-active h2:before {
    content: " - ";
}

#header .container {
    position: relative;
    margin: auto;
}

#slider {
    position: relative;
}

#slider .container {
    width: 100%;
    height: 150px;
    margin: 0;
    background-image: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.7), rgba(255, 255, 255, 0.7), rgba(255, 255, 255, 0.7), rgba(255, 255, 255, 0.7), rgba(255, 255, 255, 0.7), transparent);
}

#slider .title {
    float: left;
    font-size: 50px;
    color: #222;
    padding: 60px 25px 25px 20%;
}

#main {
    background: #fff;
}

footer {
    clear: both;
    border-top: 5px solid rgba(83, 88, 80, 1);
}

footer > div {
    margin: 0 auto;
    padding: 30px;
}

footer a {
    font-size: 15px;
    text-decoration: none;
    color: rgba(83, 88, 80, 1);
}

footer a:hover {
    text-decoration: underline;
}

footer ul {
    list-style: none;
}

.invisible {
    display: none;
    visibility: hidden;
}

.subs h1:after,
.subs h1 {
    margin-top: -5px;
    line-height: 32px;
}

#main * {
    font-family: arial;
}

#main h1,
h2,
h3,
h4 {
    display: table;
}

#main h1:after,
h1 {
    margin-bottom: 30px;
    padding-bottom: 5px;
    font-size: 180%;
    line-height: 1.2;
    color: #333;
    letter-spacing: 1px;
    font-weight: 400;
    border-bottom: thin dashed #E30613;
}

#main h2:after,
h2 {
    margin: 20px 0 12px;
    font-size: 140%;
    color: #333;
    letter-spacing: 1px;
    font-weight: 400;
    border-bottom: thin dashed #E30613;
}

#main a {
    text-decoration: none;
    color: #E30613;
}

#main a:hover {
    text-decoration: underline;
}

.content-text h1 {
    margin-top: 15px;
}

.content-headline {
    margin-top: 15px;
}

.mod_mitglieder_list .personPhotoContainer {
    width: 80px;
    max-height: 120px;
    position: relative;
    float: left;
    margin: 0 10px 10px;
}

.mod_ehemalige_mitglieder_list .personPhotoContainer {
    width: 80px;
    max-height: 120px;
    position: relative;
    float: left;
    display: table;
    margin: 10px;
}

.mod_ehemalige_mitglieder_list .personDetails {
    display: table;
    margin-left: 100px;
}

.mod_ehemalige_mitglieder_list .person {
    width: auto;
    display: table;
    margin-bottom: 10px;
}

.mod_mitglieder_list {
    margin-bottom: 30px;
}

.mod_mitglieder_list .personDetails {
    display: block;
    margin-left: 100px;
    margin-bottom: 20px;
}

.mod_mitglieder_list .Person {
    width: auto;
    display: block;
    margin-bottom: 10px;
}

.mod_vortraege_list .element {
    margin-top: 10px;
    margin-bottom: 10px;
}

.mod_vortraege_list .title {
    font-weight: bold;
}

/* Listenelemente einrücken */
.mod_article ul {
    margin-bottom: 20px;
    margin-left: 30px;
}

.mod_article > .ce_text {
    margin-bottom: 30px;
}

.mod_article > .ce_text > p {
    margin-bottom: 10px;
}

.mod_article > .ce_text > table > tbody > tr > td > h2 {
    margin-top: 0;
}

.mod_newslist .layout_simple {
    margin-top: 5px;
    margin-bottom: 5px;
    margin-left: 3px;
}

.mod_newslist .layout_simple a {
    margin: 0;
}

.mod_newsreader {
    margin-bottom: 30px;
}

.mod_newsreader > .layout_full {
    margin-bottom: 30px;
}

.mod_newsreader > .layout_full > .info {
    margin-left: 10px;
    font-style: italic;
    font-size: 90%;
}

.mod_newsreader > .layout_full > h2 {
    margin-top: 0;
    font-weight: bold;
    border: none;
}

.mod_eventlist > .layout_teaser > .date {
    width: 100%;
    display: inline-block;
    margin-right: 0;
    margin-left: 0;
    font-size: 90%;
    font-style: italic;
}

.mod_eventlist > div > .layout_teaser > .contentWithImage,
.mod_eventlist > .layout_teaser > .contentWithImage {
    width: 95%;
    display: inline-block;
}

.mod_eventlist > div > .layout_teaser > .contentWithImage > .eventcontent,
.mod_eventlist > .layout_teaser > .contentWithImage > .eventcontent {
    width: 570px;
}

.mod_eventlist > div > .layout_teaser > .contentWithImage > .imagecontent,
.mod_eventlist > .layout_teaser > .contentWithImage > .imagecontent {
    width: 80px;
    overflow: hidden;
    float: left;
    margin-right: 5px;
}

.mod_eventlist > div > .layout_teaser > .eventcontent,
.mod_eventlist > .layout_teaser > .eventcontent {
    width: 95%;
    margin-left: 10px;
}

.mod_eventlist > div > .layout_upcoming_no_links > .date {
    min-width: 100px;
    display: inline-block;
    margin-right: 0;
    margin-left: 50px;
    font-size: 90%;
    font-style: italic;
}

.mod_eventlist > div > .layout_upcoming > .event {
    display: inline-block;
    margin-right: 10px;
    margin-left: 20px;
}

.mod_eventlist > div > .layout_teaser {
    display: inline-block;
    margin-bottom: 20px;
}

.mod_eventreader > .layout_full > .info {
    display: inline-flex;
}

.mod_eventreader > .layout_full > .info > .entry {
    width: 60px;
    height: 100px;
    display: grid;
}

.mod_eventreader > .layout_full > .info > .entry > .date {
    width: 60px;
    height: 80px;
    text-align: center;
    background-color: #d0d0d0;
    border: 1px solid;
    font-size: 90%;
    font-style: italic;
}

.mod_eventreader > .layout_full > .info > .entry > .date > .month {
    height: 15%;
    font-size: 80%;
    font-weight: bold;
}

.mod_eventreader > .layout_full > .info > .entry > .date > .day {
    height: 20px;
    margin-top: 10px;
    font-size: 250%;
    font-weight: bold;
    color: #E30613;
}

.mod_eventreader > .layout_full > .info > .entry > .date > .dayname {
    font-size: 60%;
}

.mod_eventreader > .layout_full > .info > .entry > .date > .year {
    margin-top: -10px;
}

.mod_eventreader > .layout_full > .info > .betweenBlock {
    height: 40px;
    margin: 20px;
    vertical-align: middle;
    text-align: center;
    font-size: 600%;
}

.mod_eventreader > .layout_full > .info > .entry > .clock {
    width: 60px;
    margin-left: 1px;
    text-align: center;
    font-family: consolas;
    font-weight: bold;
}

.mod_eventreader > .layout_full > .location {
    font-weight: bold;
}

.mod_eventreader > .layout_full {
    margin-bottom: 30px;
}

.mod_eventreader > .layout_full > .ce_text {
    margin-top: 20px;
}

.mod_eventreader > .back {
    margin-bottom: 10px;
}

.ce_downloads > table {
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    text-align: center;
}

.ce_downloads .preview {
    margin-bottom: 25px;
}

.ce_downloads .preview > .title {
    font-weight: bold;
}

.ce_downloads .preview img {
    width: 210px;
    height: 300px;
    border: 1px solid #D0D0D0;
}

.mod_article > .ce_text #mainpage_institutview {
    width: 200px;
    height: 158px;
    float: right;
    margin-right: 20px;
    margin-left: 10px;
    border: 1px solid #000;
}

#main .nach_oben_link {
    bottom: 20px;
    position: fixed;
    right: 30px;
    z-index: 5;
    display: none;
}

#main .nach_oben_link > a {
    border-radius: 4px;
    color: #E30613;
    display: block;
    font-size: 1.625rem;
    height: 35px;
    text-align: center;
    width: 35px;
}

#main .nach_oben_link > a:hover {
    background: #d0d0d0;
}

.mod_stellen_list .element {
    margin-top: 10px;
    margin-bottom: 5px;
    display: grid;
    grid-template-columns: 100px auto;
}

.mod_stellen_list .element .date_container {
    grid-column: 1 / 1;
    grid-row: 1 / 2;
}

.mod_stellen_list .element .offer {
    font-weight: bold;
    grid-column: 2 / 2;
    grid-row: 1 / 2;
}

.mod_stellen_list .element .anbieter_container {
    grid-column: 2 / 2;
    grid-row: 2 / 3;
}

.mod_stellen_list .element > div {
    word-wrap: break-word;
}

.mod_stellen_list .element .date {
    font-style: italic;
    padding-right: 10px;
}

.mod_stellen_list .element > .anbieter {
    width: 50%;
}

.mod_stellen_list .element div .title {
    border-bottom: thin dashed #E30613;
}

/* Gemeinsame Modul-Container */
.abschlussarbeiten-modul,
.publikationen-modul,
.vortraege-modul,
.projekte-modul {
    max-width: 980px;
    margin: 0 auto;
}

.projekte-modul {
    max-width: 1100px;
}

.abschlussarbeiten-modul .modul-headline,
.publikationen-modul .modul-headline,
.vortraege-modul .modul-headline,
.projekte-modul .modul-headline {
    margin-bottom: 0.75rem;
    font-size: 1.6rem;
    line-height: 1.2;
}

/* Gemeinsame Toolbars */
.abschlussarbeiten-toolbar,
.publikationen-toolbar,
.vortraege-toolbar,
.projekte-toolbar {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 0.9rem;
    padding: 0.65rem 0.75rem;
    background: #f7f9fc;
    border: 1px solid #e5eaf1;
    border-radius: 10px;
}

/* Gemeinsame Suche */
.abschlussarbeiten-suche,
.publikationen-suche,
.vortraege-suche,
.projekte-suche {
    display: flex;
    gap: 0.5rem;
    flex: 1 1 30px;
}

.abschlussarbeiten-suche input[type="text"],
.publikationen-suche input[type="text"],
.vortraege-suche input[type="text"],
.projekte-suche input[type="text"] {
    flex: 1 1 auto;
    min-width: 180px;
    padding: 0.55rem 0.7rem;
    border: 1px solid #cfd8e3;
    border-radius: 8px;
    background: #fff;
    font-size: 0.95rem;
    line-height: 1.2;
}

.abschlussarbeiten-suche button,
.abschluesse select,
.publikationen-suche button,
.vortraege-suche button,
.projekte-suche button {
    padding: 0.55rem 0.75rem;
    border-radius: 8px;
    font-size: 0.95rem;
    line-height: 1.2;
}

.abschluesse select {
    border: 1px solid #cfd8e3;
    background: #fff;
}

.abschlussarbeiten-suche button,
.publikationen-suche button,
.vortraege-suche button,
.projekte-suche button {
    border: 1px solid #E30613;
    background: #E30613;
    color: #fff;
    cursor: pointer;
}

.abschlussarbeiten-suche button:hover,
.publikationen-suche button:hover,
.vortraege-suche button:hover,
.projekte-suche button:hover {
    background: #b80510;
    border-color: #b80510;
}

.suche-reset {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0.55rem 0.75rem;
    border-radius: 8px;
    border: 1px solid #cfd8e3;
    background: #fff;
    color: #2e3c4f;
    font-size: 0.95rem;
    line-height: 1.2;
    text-decoration: none;
    box-sizing: border-box;
}

.suche-reset:hover {
    background: #f7f9fc;
    text-decoration: none;
}

/* Abschlussarbeiten */
.years {
    display: flex;
    flex-wrap: wrap;
    gap: 0.65rem;
    margin: 0 0 0.75rem;
}

.years a {
    display: inline;
    padding: 0;
    border-radius: 0;
    background: none;
    color: #234;
    text-decoration: none;
    font-size: 0.95rem;
    line-height: 1.2;
    font-weight: 400;
    transition: color 0.2s ease;
}

.years a:hover {
    color: #1f5eff;
    background: none;
}

.years a.selected {
    background: none;
    color: #111;
    font-weight: 700;
}

.abschlussarbeiten-liste {
    display: grid;
    gap: 0.75rem;
}

.abschlussarbeit-card {
    background: #fff;
    border: 1px solid #e6ebf2;
    border-radius: 12px;
    padding: 0.9rem 1rem;
    box-shadow: 0 3px 10px rgba(24, 39, 75, 0.05);
    transition: box-shadow 0.2s ease, transform 0.2s ease;
}

.abschlussarbeit-card:hover {
    transform: translateY(-1px);
    box-shadow: 0 6px 14px rgba(24, 39, 75, 0.08);
}

.abschlussarbeit-card__head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 0.35rem 0.75rem;
    align-items: start;
    margin-bottom: 0.4rem;
}

.abschlussarbeit-card__title {
    margin: 0;
    min-width: 0;
}

.abschlussarbeit-card__date {
    justify-self: end;
    white-space: nowrap;
}

.abschlussarbeit-card__content {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 0.9rem;
}

.abschlussarbeit-card__label {
    display: inline-block;
    margin-bottom: 0.35rem;
    font-weight: 700;
    color: #2e3c4f;
    font-size: 0.92rem;
}

.abschlussarbeit-card__section p {
    margin: 0.2rem 0;
    font-size: 0.95rem;
    line-height: 1.35;
}

.abschlussarbeit-card a {
    color: #1f5eff;
    text-decoration: none;
}

.abschlussarbeit-card a:hover {
    text-decoration: underline;
}

.abschlussarbeiten-empty {
    padding: 0.75rem 0.9rem;
    border-radius: 10px;
    background: #fff4f4;
    border: 1px solid #f1c9c9;
    color: #8d2f2f;
    font-size: 0.95rem;
}

.abschlussarbeiten-pagination {
    margin-top: 1rem;
}

/* Publikationen */
.publikationen-liste {
    display: grid;
    gap: 0.75rem;
}

.publikation-card {
    background: #fff;
    border: 1px solid #e6ebf2;
    border-radius: 12px;
    padding: 0.9rem 1rem;
    box-shadow: 0 3px 10px rgba(24, 39, 75, 0.05);
}

.publikation-card__head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 0.35rem 0.75rem;
    align-items: start;
    margin-bottom: 0.4rem;
}

.publikation-card__title {
    margin: 0;
    min-width: 0;
    font-size: 1.02rem;
    line-height: 1.3;
}

.publikation-card__title a {
    color: inherit;
    text-decoration: none;
}

.publikation-card__title a:hover {
    text-decoration: underline;
}

.publikation-card__date {
    justify-self: end;
    white-space: nowrap;
    color: #5b6777;
    font-size: 0.88rem;
    font-weight: 400;
}

.publikation-card__meta {
    margin-bottom: 0.35rem;
    color: #2e3c4f;
    font-size: 0.94rem;
    line-height: 1.4;
}

.publikation-card__person:not(:last-child)::after {
    content: ", ";
}

.publikation-card__meta a {
    color: #1f5eff;
    text-decoration: none;
}

.publikation-card__meta a:hover {
    text-decoration: underline;
}

.publikation-card__publication {
    color: #5b6777;
    font-size: 0.93rem;
    line-height: 1.45;
}

.publikationen-empty {
    padding: 0.75rem 0.9rem;
    border-radius: 10px;
    background: #fff4f4;
    border: 1px solid #f1c9c9;
    color: #8d2f2f;
    font-size: 0.95rem;
}

.publikationen-pagination {
    margin-top: 1rem;
}

/* Vorträge */
.vortraege-liste {
    display: grid;
    gap: 0.75rem;
}

.vortrag-card {
    background: #fff;
    border: 1px solid #e6ebf2;
    border-radius: 12px;
    padding: 0.9rem 1rem;
    box-shadow: 0 3px 10px rgba(24, 39, 75, 0.05);
}

.vortrag-card__head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 0.35rem 0.75rem;
    align-items: start;
    margin-bottom: 0.4rem;
}

.vortrag-card__title {
    margin: 0;
    min-width: 0;
    font-size: 1.02rem;
    line-height: 1.3;
}

.vortrag-card__date {
    justify-self: end;
    white-space: nowrap;
    color: #5b6777;
    font-size: 0.88rem;
    font-weight: 400;
}

.vortrag-card__meta {
    margin-bottom: 0.35rem;
    color: #2e3c4f;
    font-size: 0.94rem;
    line-height: 1.4;
}

.vortrag-card__person:not(:last-child)::after {
    content: ", ";
}

.vortrag-card__meta a {
    color: #1f5eff;
    text-decoration: none;
}

.vortrag-card__meta a:hover {
    text-decoration: underline;
}

.vortrag-card__publication {
    color: #5b6777;
    font-size: 0.93rem;
    line-height: 1.45;
}

.vortrag-card__links,
.publikation-card__links {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
    margin-top: 0.75rem;
}

.vortraege-empty {
    padding: 0.75rem 0.9rem;
    border-radius: 10px;
    background: #fff4f4;
    border: 1px solid #f1c9c9;
    color: #8d2f2f;
    font-size: 0.95rem;
}

.vortraege-pagination {
    margin-top: 1rem;
}

/* Link-Pills */
.publikation-card__link-pill,
.vortrag-card__link-pill {
    display: inline-flex;
    align-items: center;
    padding: 0.25rem 0.65rem;
    border: 1px solid #d0d7de;
    border-radius: 999px;
    background: #f6f8fa;
    color: #1f4b99;
    text-decoration: none;
    font-size: 0.875rem;
    line-height: 1.2;
    font-weight: 500;
}

.publikation-card__link-pill:hover,
.publikation-card__link-pill:focus,
.vortrag-card__link-pill:hover,
.vortrag-card__link-pill:focus {
    background: #eaf2ff;
    border-color: #9bb8e8;
    text-decoration: none;
}

/* Pagination */
.pagination {
    margin: 1rem 0 1.75rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
}

nav.pagination {
    width: 100%;
    text-align: center;
}

.pagination p {
    display: none;
}

.pagination ul {
    list-style: none;
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    gap: 0.4rem;
    margin: 0 auto;
    padding: 0;
    white-space: nowrap;
}

.pagination li {
    margin: 0;
    padding: 0;
}

.pagination a,
.pagination span,
.pagination strong {
    min-width: 2.2rem;
    height: 2.2rem;
    padding: 0 0.7rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #d8e0ea;
    border-radius: 999px;
    background: #fff;
    color: #2e3c4f;
    text-decoration: none;
    font-size: 0.95rem;
    line-height: 1;
    box-sizing: border-box;
    transition: border-color 0.2s ease, color 0.2s ease, background-color 0.2s ease;
}

.pagination a:hover {
    border-color: #9fb0c7;
    color: #1f2d3d;
    background: #f7f9fc;
}

.pagination li.active span,
.pagination li.active strong,
.pagination strong.active {
    border-color: #7f8ea3;
    background: #f1f4f8;
    color: #1f2d3d;
    font-weight: 600;
}

.pagination li.prev a,
.pagination li.next a,
.pagination li.previous a,
.pagination li.first a,
.pagination li.last a {
    font-weight: 600;
}

/* Projekte Liste */
.projekte-liste {
    display: grid;
    gap: 1rem;
    margin-bottom: 2rem;
}

.projekt-card {
    background: #fff;
    border: 1px solid #e6ebf2;
    border-radius: 12px;
    padding: 1rem 1.1rem;
    box-shadow: 0 3px 10px rgba(24, 39, 75, 0.05);
}

.projekt-card__head {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 0.35rem 0.75rem;
    align-items: start;
    margin-bottom: 0.45rem;
}

.projekt-card__title {
    margin: 0;
    min-width: 0;
    font-size: 1.08rem;
    line-height: 1.3;
}

.projekt-card__title a {
    color: inherit;
    text-decoration: none;
}

.projekt-card__title a:hover {
    text-decoration: underline;
}

.projekt-card__date {
    justify-self: end;
    white-space: nowrap;
    color: #5b6777;
    font-size: 0.9rem;
}

.projekt-card__meta {
    margin-bottom: 0.75rem;
    color: #5b6777;
    font-size: 0.93rem;
    line-height: 1.45;
}

.projekt-card__label {
    font-weight: 600;
    color: #2e3c4f;
    margin-right: 0.35rem;
}

.projekt-card__content {
    display: grid;
    grid-template-columns: minmax(0, 1.6fr) minmax(240px, 1fr);
    gap: 1rem 1.25rem;
    align-items: start;
}

.projekt-card__main {
    display: grid;
    grid-template-columns: auto minmax(0, 1fr);
    gap: 0.9rem;
    align-items: start;
}

.projekt-card__image-wrap {
    flex: 0 0 auto;
}

.projekt-card__image {
    display: block;
    width: 160px;
    max-width: 100%;
    height: auto;
    border-radius: 10px;
    border: 1px solid #e6ebf2;
}

.projekt-card__summary {
    color: #2e3c4f;
    font-size: 0.95rem;
    line-height: 1.55;
}

.projekt-card__more {
    margin-left: 0.35rem;
    white-space: nowrap;
}

.projekt-card__side {
    padding-left: 0.25rem;
}

.projekt-card__side-title {
    display: inline-block;
    margin-bottom: 0.45rem;
    font-weight: 600;
    color: #2e3c4f;
    font-size: 0.95rem;
}

.projekt-card__persons {
    display: grid;
    gap: 0.35rem;
}

.projekt-card__person {
    color: #2e3c4f;
    font-size: 0.94rem;
    line-height: 1.45;
}

.projekt-card__person a {
    color: #1f5eff;
    text-decoration: none;
}

.projekt-card__person a:hover {
    text-decoration: underline;
}

.projekt-card__role,
.projekt-card__period {
    color: #5b6777;
    font-size: 0.92rem;
}

.projekte-empty {
    padding: 0.75rem 0.9rem;
    border-radius: 10px;
    background: #fff4f4;
    border: 1px solid #f1c9c9;
    color: #8d2f2f;
    font-size: 0.95rem;
}

.projekte-pagination {
    margin-top: 1rem;
}

/* Projekt Detail */
.projekt-detail {
    max-width: 1100px;
    margin: 0 auto 1.5rem;
}

.projekt-detail__module-headline {
    margin-bottom: 0.6rem;
}

.projekt-detail__card {
    background: transparent;
    border: 0;
    border-radius: 0;
    padding: 0;
    box-shadow: none;
}

.projekt-detail__header {
    margin-bottom: 1rem;
    padding-bottom: 0.6rem;
    border-bottom: 1px solid #e9eef5;
}

.projekt-detail__title {
    line-height: 1.2;
}

.projekt-detail__duration {
    margin-bottom: 0.45rem;
    color: #5b6777;
    font-size: 0.94rem;
    line-height: 1.4;
}

.projekt-detail__funding {
    color: #425266;
    font-size: 0.95rem;
    line-height: 1.5;
}

.projekt-detail__label {
    font-weight: 700;
    color: #2e3c4f;
    margin-right: 0.35rem;
}

.projekt-detail__body {
    display: block;
    overflow: hidden;
    margin-bottom: 1.25rem;
}

.projekt-detail__image-wrap {
    float: right;
    width: 360px;
    max-width: 42%;
    margin: 0 0 1rem 1.5rem;
    border: 1px solid #e6ebf2;
    border-radius: 10px;
    overflow: hidden;
    background: #f7f9fc;
}

.projekt-detail__image {
    display: block;
    width: 100%;
    height: auto;
}

.projekt-detail__summary {
    color: #2e3c4f;
    font-size: 1rem;
    line-height: 1.78;
}

.projekt-detail__summary p {
    margin: 0 0 1rem;
}

.projekt-detail__summary p:last-child {
    margin-bottom: 0;
}

.projekt-detail__meta {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 0.75rem 1.5rem;
    clear: both;
    padding-top: 0.2rem;
}

.projekt-detail__section {
    padding: 0;
    background: transparent;
    border: 0;
    border-radius: 0;
}

.projekt-detail__section--compact {
    padding: 0;
}

.projekt-detail__section-title {
    margin: 0 0 0.45rem;
    font-size: 0.95rem;
    line-height: 1.3;
    border: 0;
    color: #425266;
}

.projekt-detail__persons-list,
.projekt-detail__funders-list {
    display: grid;
    gap: 0.2rem;
}

.projekt-detail__person-row,
.projekt-detail__funder-row {
    padding: 0.15rem 0;
    border: 0;
    background: transparent;
}

.projekt-detail__person-name,
.projekt-detail__funder-name {
    color: #2e3c4f;
    font-size: 0.94rem;
    line-height: 1.4;
}

.projekt-detail__person-name a,
.projekt-detail__funder-name a,
.projekt-detail__funder-text a {
    color: #1f5eff;
    text-decoration: none;
}

.projekt-detail__person-name a:hover,
.projekt-detail__funder-name a:hover,
.projekt-detail__funder-text a:hover {
    text-decoration: underline;
}

.projekt-detail__person-role {
    color: #66768a;
    font-size: 0.86rem;
    font-style: italic;
    white-space: nowrap;
}

.projekt-detail__person-period {
    display: block;
    margin-top: 0.02rem;
    color: #7a8797;
    font-size: 0.84rem;
    line-height: 1.3;
}

.projekt-detail__funder-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.85rem;
}

.projekt-detail__funder-image-wrap {
    flex: 0 0 auto;
    margin-top: 0;
    opacity: 0.92;
}

.projekt-detail__funders-logos {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.9rem 1.25rem;
}

.projekt-detail__funder-logo {
    display: flex;
    align-items: center;
}

.projekt-detail__funder-logo-link {
    display: inline-flex;
    align-items: center;
    text-decoration: none;
}

.projekt-detail__funder-image {
    display: block;
    max-width: 520px;
    max-height: 150px;
    width: auto;
    height: auto;
}

.projekt-detail__funder-text {
    color: #2e3c4f;
    font-size: 0.94rem;
    line-height: 1.4;
}

/* Mitglieder */
.mitglieder-modul {
    max-width: 1100px;
    margin: 0 auto 2rem;
}

.mitglieder-modul__headline {
    margin-bottom: 1rem;
}

.mitglieder-gruppe {
    margin-bottom: 2rem;
}

.mitglieder-gruppe__title {
    margin: 0 0 0.9rem;
    padding-bottom: 0.35rem;
}

.mitglieder-gruppe__list {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 1rem;
}

.mitglieder-gruppe__list--ehemalig {
    grid-template-columns: 1fr;
    gap: 0.75rem;
}

.mitglied-card {
    display: grid;
    grid-template-columns: 120px minmax(0, 1fr);
    gap: 1rem;
    align-items: start;
    padding: 1rem;
    background: #fff;
    border: 1px solid #e6ebf2;
    border-radius: 14px;
    box-shadow: 0 4px 14px rgba(24, 39, 75, 0.05);
}

.mitglied-card--ehemalig {
    grid-template-columns: 1fr;
    padding: 0.85rem 0;
    background: transparent;
    border: 0;
    border-bottom: 1px solid #edf1f6;
    border-radius: 0;
    box-shadow: none;
}

.mitglied-card__image-wrap {
    width: 120px;
    border-radius: 12px;
    overflow: hidden;
    background: #f4f7fb;
    border: 1px solid #e6ebf2;
}

.mitglied-card__image-wrap--placeholder {
    background: linear-gradient(180deg, #f7f9fc 0%, #edf2f8 100%);
}

.mitglied-card__image {
    display: block;
    width: 100%;
    height: auto;
}

.mitglied-card__placeholder {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    aspect-ratio: 4 / 5;
    min-height: 150px;
    color: #9aa8b8;
}

.mitglied-card__placeholder-icon {
    font-size: 2.2rem;
    line-height: 1;
}

.mitglied-card__content {
    min-width: 0;
}

.mitglied-card__name {
    margin: 0 0 0.35rem;
    font-size: 1.08rem;
    line-height: 1.3;
    border: 0;
}

.mitglied-card__name a {
    color: #1f5eff;
    text-decoration: none;
}

.mitglied-card__name a:hover {
    text-decoration: underline;
}

.mitglied-card__role {
    margin-bottom: 0.75rem;
    color: #425266;
    font-size: 0.96rem;
    line-height: 1.55;
}

.mitglied-card__roles {
    display: grid;
    gap: 0.35rem;
    margin-bottom: 0.85rem;
}

.mitglied-card__role-item {
    padding-left: 0.85rem;
    position: relative;
    color: #425266;
    font-size: 0.95rem;
    line-height: 1.5;
}

.mitglied-card__role-item::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.62em;
    width: 0.35rem;
    height: 0.35rem;
    border-radius: 50%;
    background: #9aa8b8;
    transform: translateY(-50%);
}

.mitglied-card__meta {
    display: grid;
    gap: 0.55rem;
}

.mitglied-card__meta-item {
    display: block;
    color: #2e3c4f;
    font-size: 0.94rem;
    line-height: 1.45;
}

.mitglied-card__meta-label {
    display: block;
    margin-bottom: 0.12rem;
    color: #66768a;
    font-weight: 600;
}

.mitglied-card__meta-value {
    display: block;
    overflow-wrap: anywhere;
    word-break: break-word;
}

.mitglied-card__meta-item--mail {
    overflow-x: auto;
}

.mitglied-card__mail {
    display: inline-block;
    max-width: 100%;
}

.mitglied-card__mail img {
    display: block;
    max-width: 100%;
    height: auto;
}

.mitglied-card__projects {
    color: #425266;
    font-size: 0.95rem;
    line-height: 1.6;
}

.mitglied-card__projects br {
    display: block;
    content: "";
    margin-bottom: 0.25rem;
}

/* Person Detail */
.person-detail {
    max-width: 715px;
    margin: 0 auto 1.75rem;
}

.person-detail__module-headline {
    margin-bottom: 0.7rem;
}

.person-detail__card {
    background: transparent;
    border: 0;
    border-radius: 0;
    padding: 0;
    box-shadow: none;
}

.person-detail__header {
    display: grid;
    grid-template-columns: 220px minmax(0, 1fr);
    gap: 1.25rem;
    align-items: start;
    padding-bottom: 0.85rem;
    border-bottom: 1px solid #e9eef5;
}

.person-detail__image-wrap {
    width: 220px;
    border-radius: 14px;
    overflow: hidden;
    background: #f4f7fb;
    border: 1px solid #e6ebf2;
}

.person-detail__image-wrap--placeholder {
    background: linear-gradient(180deg, #f7f9fc 0%, #edf2f8 100%);
}

.person-detail__image {
    display: block;
    width: 100%;
    height: auto;
}

.person-detail__placeholder {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    aspect-ratio: 11 / 14;
    min-height: 280px;
    color: #9aa8b8;
}

.person-detail__placeholder-icon {
    font-size: 3rem;
    line-height: 1;
}

.person-detail__intro {
    min-width: 0;
}

.person-detail__title {
    margin-top: initial;
    margin: 0 0 0.7rem;
}

.person-detail__roles {
    display: grid;
    gap: 0.4rem;
    margin-bottom: 1rem;
}

.person-detail__role-item {
    position: relative;
    padding-left: 0.9rem;
    color: #425266;
    font-size: 1rem;
    line-height: 1.55;
}

.person-detail__role-item::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.62em;
    width: 0.38rem;
    height: 0.38rem;
    border-radius: 50%;
    background: #9aa8b8;
    transform: translateY(-50%);
}

.person-detail__meta {
    display: grid;
    gap: 0.65rem;
}

.person-detail__meta-item {
    display: block;
    color: #2e3c4f;
    font-size: 0.97rem;
    line-height: 1.5;
}

.person-detail__meta-label {
    display: block;
    margin-bottom: 0.12rem;
    color: #66768a;
    font-weight: 600;
}

.person-detail__meta-value {
    display: block;
    overflow-wrap: anywhere;
    word-break: break-word;
}

.person-detail__meta-value a,
.person-detail__mail {
    color: #1f5eff;
    text-decoration: none;
}

.person-detail__meta-value a:hover,
.person-detail__mail:hover {
    text-decoration: underline;
}

.person-detail__meta-item--mail {
    overflow-x: auto;
}

.person-detail__mail {
    display: inline-block;
    max-width: 100%;
}

.person-detail__mail img {
    display: block;
    max-width: 100%;
    height: auto;
}

/* News Teaser */
.news-teaser {
    margin-bottom: 1.5rem;
}

.news-teaser__card {
    padding: 0 0 1.2rem;
    border-bottom: 1px solid #e6ebf2;
}

.news-teaser__header {
    margin-bottom: 0.7rem;
}

.news-teaser__date {
    display: block;
    margin-bottom: 0.35rem;
    color: #66768a;
    font-size: 0.92rem;
    line-height: 1.4;
}

.news-teaser__title {
    margin: 0;
    font-size: 1.35rem;
    line-height: 1.3;
    border: 0;
}

.news-teaser__link {
    color: #1f5eff;
    text-decoration: none;
}

.news-teaser__link:hover {
    text-decoration: underline;
}

.news-teaser__content--with-image {
    display: grid;
    grid-template-columns: 220px minmax(0, 1fr);
    gap: 1rem;
    align-items: start;
}

.news-teaser__image-wrap {
    border-radius: 12px;
    overflow: hidden;
    background: #f4f7fb;
    border: 1px solid #e6ebf2;
}

.news-teaser__image {
    display: block;
    width: 100%;
    height: auto;
}

.news-teaser__text {
    color: #2e3c4f;
    font-size: 0.98rem;
    line-height: 1.7;
}

.news-teaser__text p {
    margin: 0 0 0.9rem;
}

.news-teaser__text p:last-child {
    margin-bottom: 0;
}

/* Async Loading */
[data-module-id] {
    position: relative;
}

[data-module-id].is-loading {
    pointer-events: none;
}

[data-module-id].is-loading::before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(255, 255, 255, 0.72);
    z-index: 20;
}

.async-loading-indicator {
    position: absolute;
    top: 50%;
    left: 50%;
    right: auto;
    z-index: 21;
    display: none;
    align-items: center;
    gap: 0.55rem;
    padding: 0.65rem 0.95rem;
    border: 1px solid #d8e0ea;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.96);
    color: #2e3c4f;
    font-size: 0.92rem;
    line-height: 1;
    box-shadow: 0 4px 14px rgba(24, 39, 75, 0.08);
    transform: translate(-50%, -50%);
}

[data-module-id].is-loading .async-loading-indicator {
    display: inline-flex;
}

.async-loading-indicator__spinner {
    width: 0.95rem;
    height: 0.95rem;
    border: 2px solid #c8d3df;
    border-top-color: #1f5eff;
    border-radius: 50%;
    animation: async-loading-spin 0.75s linear infinite;
}

@keyframes async-loading-spin {
    to {
        transform: rotate(360deg);
    }
}

/* Event Detail */
.event-detail {
    max-width: 820px;
    margin: 0 auto 2rem;
}

.event-detail__header {
    margin-bottom: 1.5rem;
    padding-bottom: 1rem;
    border-bottom: 1px solid #e6ebf2;
}

.event-detail__title {
    margin: 0 0 0.75rem;
    font-size: 2rem;
    line-height: 1.2;
}

.event-detail__date {
    margin: 0 0 1rem;
    color: #66768a;
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.4;
}

.event-detail__meta {
    display: grid;
    gap: 0.55rem;
}

.event-detail__meta-label {
    margin-right: 0.35rem;
    color: #66768a;
    font-weight: 600;
}

.event-detail__meta-value {
    color: #2e3c4f;
}

.event-detail__content {
    color: #2e3c4f;
    line-height: 1.75;
}

.event-detail__teaser {
    margin-bottom: 1rem;
}

.event-detail__image {
    margin: 1.25rem 0;
}

.event-detail__image img {
    display: block;
    max-width: 100%;
    height: auto;
    border-radius: 14px;
}

.event-detail__downloads {
    margin-top: 1.75rem;
    padding-top: 1rem;
    border-top: 1px solid #e6ebf2;
}

.event-detail__section-title {
    margin: 0 0 0.8rem;
    font-size: 1.1rem;
}

.event-detail__download-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

.event-detail__download-item + .event-detail__download-item {
    margin-top: 0.45rem;
}

.event-detail__download-link {
    color: #1f5eff;
    text-decoration: none;
}

.event-detail__download-link:hover {
    text-decoration: underline;
}

.event-detail__download-size {
    color: #66768a;
}

/* Search Page */
.search-page {
    max-width: 920px;
    margin: 0 auto 2.5rem;
}

.search-page__header {
    margin-bottom: 1.5rem;
    padding: 1.25rem;
    border: 1px solid #e6ebf2;
    border-radius: 18px;
    background: #f8fafc;
}

.search-page__form {
    margin: 0;
}

.search-page__formbody {
    display: flex;
    flex-wrap: wrap;
    gap: 0.85rem;
    align-items: center;
}

.search-page__field {
    flex: 1 1 20px;
    margin: 0;
}

.search-page__actions {
    margin: 0;
}

.search-page__input {
    width: 100%;
    min-height: 3rem;
    padding: 0.8rem 1rem;
    border: 1px solid #ccd6e2;
    border-radius: 12px;
    background: #fff;
    color: #2e3c4f;
    font-size: 1rem;
    box-sizing: border-box;
}

.search-page__input:focus {
    outline: none;
    border-color: #1f5eff;
    box-shadow: 0 0 0 3px rgba(31, 94, 255, 0.12);
}

.search-page__submit {
    min-height: 3rem;
    padding: 0.8rem 1.1rem;
    border: 0;
    border-radius: 12px;
    background: #1f5eff;
    color: #fff;
    font-weight: 600;
    cursor: pointer;
}

.search-page__submit:hover {
    background: #184fe0;
}

.search-page__options {
    flex: 1 1 100%;
    margin: 0.25rem 0 0;
}

.search-page__options-group {
    display: flex;
    flex-wrap: wrap;
    gap: 1rem;
    margin: 0;
    padding: 0;
    border: 0;
}

.search-page__option {
    display: inline-flex;
    align-items: center;
    gap: 0.35rem;
    color: #516274;
    font-size: 0.95rem;
}

.search-page__summary {
    margin-top: 1rem;
    padding-top: 1rem;
    border-top: 1px solid #dbe4ee;
}

.search-page__summary-text {
    margin: 0;
    color: #344255;
    font-size: 1rem;
    font-weight: 600;
    line-height: 1.5;
}

.search-page__hint {
    margin: 0.45rem 0 0;
    color: #6d7c8f;
    font-size: 0.92rem;
    line-height: 1.5;
}

.search-page__results {
    display: grid;
    gap: 1rem;
}

.search-result-card {
    padding: 1.1rem 1.2rem;
    border: 1px solid #e6ebf2;
    border-radius: 16px;
    background: #fff;
    box-shadow: 0 6px 18px rgba(24, 39, 75, 0.04);
}

.search-result-card__title {
    margin: 0 0 0.45rem;
    font-size: 1.15rem;
    line-height: 1.4;
}

.search-result-card__title a {
    color: #163a63;
    text-decoration: none;
}

.search-result-card__title a:hover {
    color: #1f5eff;
    text-decoration: underline;
}

.search-result-card__meta {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem 1rem;
    margin-bottom: 0.7rem;
    color: #6d7c8f;
    font-size: 0.9rem;
    line-height: 1.4;
}

.search-result-card__relevance {
    font-weight: 600;
    color: #5f6f82;
}

.search-result-card__url {
    word-break: break-word;
    color: #7a8898;
}

.search-result-card__context {
    margin: 0;
    color: #344255;
    line-height: 1.65;
}

.search-result-card__context .highlight,
.search-result-card__context mark {
    padding: 0.08em 0.3em;
    border-radius: 0.35em;
    background: #e8f0ff;
    color: #163a63;
    font-weight: 600;
}

.search-page__pagination {
    margin-top: 1.5rem;
}

.search-page__pagination .pagination ul {
    display: flex;
    flex-wrap: wrap;
    gap: 0.45rem;
    margin: 0;
    padding: 0;
    list-style: none;
}

.search-page__pagination .pagination li {
    margin: 0;
    padding: 0;
}

.search-page__pagination .pagination a,
.search-page__pagination .pagination span {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 2.5rem;
    height: 2.5rem;
    padding: 0 0.75rem;
    border: 1px solid #d8e0ea;
    border-radius: 12px;
    background: #fff;
    color: #2e3c4f;
    text-decoration: none;
    font-weight: 600;
}

.search-page__pagination .pagination a:hover {
    border-color: #1f5eff;
    color: #1f5eff;
}

.search-page__pagination .pagination li.active span {
    border-color: #1f5eff;
    background: #1f5eff;
    color: #fff;
}

/* Mod Search */
.mod_search .search-result-card + .search-result-card {
    margin-top: 1.5rem;
}

.mod_search form {
    margin-bottom: 1.25rem;
}

.mod_search .formbody {
    display: flex;
    flex-wrap: wrap;
    gap: 0.75rem;
    align-items: center;
}

.mod_search .widget-text {
    flex: 1 1 20px;
    margin: 0;
}

.mod_search .widget-submit {
    margin: 0;
}

.mod_search input[type="search"],
.mod_search .widget-text .text {
    width: 100%;
    min-height: 3.1rem;
    padding: 0.85rem 1rem;
    border: 1px solid #ccd6e2;
    border-radius: 10px;
    background: #fff;
    color: #2e3c4f;
    font-size: 1rem;
    line-height: 1.4;
    box-sizing: border-box;
    transition: border-color 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
}

.mod_search input[type="search"]::placeholder,
.mod_search .widget-text .text::placeholder {
    color: #8a97a8;
}

.mod_search input[type="search"]:focus,
.mod_search .widget-text .text:focus {
    outline: none;
    border-color: #E30613;
    box-shadow: 0 0 0 3px rgba(227, 6, 19, 0.14);
    background: #fff;
}

.mod_search button[type="submit"],
.mod_search .widget-submit .submit {
    min-height: 3.1rem;
    padding: 0.55rem 0.75rem;
    border-radius: 8px;
    border: 1px solid #E30613;
    background: #E30613;
    color: #fff;
    font-size: 0.95rem;
    line-height: 1.2;
    font-weight: 600;
    cursor: pointer;
    transition: background-color 0.2s ease, border-color 0.2s ease, transform 0.2s ease;
}

.mod_search button[type="submit"]:hover,
.mod_search .widget-submit .submit:hover {
    background: #b90510;
    border-color: #b90510;
}

.mod_search button[type="submit"]:active,
.mod_search .widget-submit .submit:active {
    transform: translateY(1px);
}

/* Formulare */
#main .ce_form {
    max-width: 920px;
    margin: 0 auto 2.5rem;
}

#main .ce_form form {
    margin: 0;
}

#main .ce_form .formbody {
    display: grid;
    gap: 1rem;
    padding: 1.5rem;
    border: 1px solid #e6ebf2;
    border-radius: 18px;
    background: #f8fafc;
    box-shadow: 0 6px 18px rgba(24, 39, 75, 0.04);
}

#main .ce_form .widget,
#main .ce_form fieldset,
#main .ce_form p {
    margin: 0;
}

#main .ce_form .widget label,
#main .ce_form fieldset > legend {
    display: block;
    margin-bottom: 0.45rem;
    color: #344255;
    font-size: 0.95rem;
    font-weight: 600;
    line-height: 1.4;
}

#main .ce_form label .mandatory,
#main .ce_form legend .mandatory {
    color: #E30613;
}

#main .ce_form .invisible {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0;
}

#main .ce_form input[type="text"],
#main .ce_form input[type="email"],
#main .ce_form input[type="number"],
#main .ce_form textarea,
#main .ce_form select,
#main .ce_form .widget-text .text,
#main .ce_form .widget-textarea .textarea {
    width: 100%;
    min-height: 3.1rem;
    padding: 0.85rem 1rem;
    border: 1px solid #ccd6e2;
    border-radius: 12px;
    background: #fff;
    color: #2e3c4f;
    font-size: 1rem;
    line-height: 1.4;
    box-sizing: border-box;
    transition: border-color 0.2s ease, box-shadow 0.2s ease, background-color 0.2s ease;
}

#main .ce_form textarea,
#main .ce_form .widget-textarea .textarea {
    min-height: 8rem;
    resize: vertical;
}

#main .ce_form input[type="text"]:focus,
#main .ce_form input[type="email"]:focus,
#main .ce_form input[type="number"]:focus,
#main .ce_form textarea:focus,
#main .ce_form select:focus,
#main .ce_form .widget-text .text:focus,
#main .ce_form .widget-textarea .textarea:focus {
    outline: none;
    border-color: #E30613;
    box-shadow: 0 0 0 3px rgba(227, 6, 19, 0.14);
    background: #fff;
}

#main .ce_form input::placeholder,
#main .ce_form textarea::placeholder {
    color: #8a97a8;
}

#main .ce_form fieldset {
    padding: 1rem;
    border: 1px solid #dbe4ee;
    border-radius: 16px;
    background: #fff;
}

#main .ce_form fieldset legend {
    padding: 0 0.35rem;
    color: #163a63;
    font-size: 1rem;
    font-weight: 700;
}

#main .ce_form fieldset .widget + .widget {
    margin-top: 0.85rem;
}

#main .ce_form .widget-textarea,
#main .ce_form .widget-altcha,
#main .ce_form .widget-submit {
    padding: 1rem;
    border: 1px solid #dbe4ee;
    border-radius: 16px;
    background: #fff;
}

#main .ce_form .widget-textarea label,
#main .ce_form .widget-altcha label {
    margin-bottom: 0.45rem;
}

#main .ce_form altcha-widget {
    display: block;
    width: 100%;
    margin-top: 0.25rem;
}

#main .ce_form .widget-altcha .warning {
    margin: 0.5rem 0 0;
    color: #8a1c1c;
    font-size: 0.92rem;
    line-height: 1.5;
}

#main .ce_form .widget-submit {
    margin-top: 0;
}

#main .ce_form .widget-submit .submit,
#main .ce_form button[type="submit"] {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 3.1rem;
    padding: 0.75rem 1.2rem;
    border: 1px solid #E30613;
    border-radius: 12px;
    background: #E30613;
    color: #fff;
    font-size: 0.95rem;
    line-height: 1.2;
    font-weight: 600;
    text-decoration: none;
    cursor: pointer;
    transition: background-color 0.2s ease, border-color 0.2s ease, transform 0.2s ease, box-shadow 0.2s ease;
}

#main .ce_form .widget-submit .submit:hover,
#main .ce_form button[type="submit"]:hover {
    background: #b90510;
    border-color: #b90510;
}

#main .ce_form .widget-submit .submit:focus,
#main .ce_form button[type="submit"]:focus {
    outline: none;
    box-shadow: 0 0 0 3px rgba(227, 6, 19, 0.18);
}

#main .ce_form .widget-submit .submit:active,
#main .ce_form button[type="submit"]:active {
    transform: translateY(1px);
}

#main .ce_form [aria-busy="true"] .submit,
#main .ce_form form[data-ajax-form="loading"] .submit {
    opacity: 0.7;
    cursor: wait;
}

#main .ce_form .form-confirmation,
#main .ce_form .confirmation,
#main .ce_form .success,
#main .ce_form .message,
#main .ce_form .error {
    margin-bottom: 1rem;
    padding: 1rem 1.1rem;
    border-radius: 14px;
    line-height: 1.5;
}

#main .ce_form .form-confirmation,
#main .ce_form .confirmation,
#main .ce_form .success {
    border: 1px solid #b9dfc3;
    background: #edf9f0;
    color: #1f5a2e;
}

#main .ce_form .message {
    border: 1px solid #d7e3f4;
    background: #eef5ff;
    color: #163a63;
}

#main .ce_form .error {
    border: 1px solid #efc2c2;
    background: #fff1f1;
    color: #8a1c1c;
}

#main .ce_form .form-confirmation p,
#main .ce_form .confirmation p,
#main .ce_form .success p,
#main .ce_form .message p,
#main .ce_form .error p {
    margin: 0;
}

#main .ce_form input:focus:invalid,
#main .ce_form textarea:focus:invalid,
#main .ce_form select:focus:invalid {
    border-color: #E30613;
}

/* Jahresberichte */
.jahresberichte-container {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap: 1rem;
    margin-top: 1.25rem;
}

.jahresbericht {
    box-sizing: border-box;
    background: #fff;
    border: 1px solid #e6ebf2;
    border-radius: 14px;
    padding: 1rem;
    box-shadow: 0 4px 14px rgba(24, 39, 75, 0.05);
    transition: box-shadow 0.2s ease, transform 0.2s ease, border-color 0.2s ease;
}

.jahresbericht a {
    display: block;
    color: inherit;
    text-decoration: none;
}

.jahresbericht img {
    display: block;
    width: 100%;
    height: auto;
    margin: 0 0 0.85rem;
    border: 1px solid #e6ebf2;
    border-radius: 10px;
    background: #f8fafc;
}

.jahresbericht h2 {
    margin: 0;
    border: 0;
    color: #2e3c4f;
    font-size: 1.02rem;
    line-height: 1.35;
    font-weight: 600;
    letter-spacing: 0;
}

.jahresbericht a:focus-visible {
    outline: 3px solid rgba(227, 6, 19, 0.22);
    outline-offset: 4px;
    border-radius: 10px;
}

.jahresbericht a:focus-visible h2 {
    color: #E30613;
}

@media (hover: hover) and (pointer: fine) {
    .jahresbericht:hover {
        transform: translateY(-1px);
        box-shadow: 0 8px 18px rgba(24, 39, 75, 0.08);
        border-color: #d7e0eb;
    }

    .jahresbericht a:hover h2 {
        color: #E30613;
    }
}

@media (prefers-reduced-motion: reduce) {
    .jahresbericht {
        transition: none;
    }
}

@media (min-width: 700px) {
    #main .ce_form .formbody {
        grid-template-columns: 1fr;
    }

    #main .ce_form fieldset {
        display: grid;
        gap: 1rem;
        align-items: start;
    }

    #main .ce_form fieldset legend {
        grid-column: 1 / -1;
    }

    #main .ce_form fieldset:not(.mandatory):has(#ctrl_29):has(#ctrl_30) {
        grid-template-columns: 1fr 1fr;
    }

    #main .ce_form fieldset.mandatory {
        grid-template-columns: 1fr 1fr;
    }

    #main .ce_form fieldset:has(#ctrl_32):has(#ctrl_36) {
        grid-template-columns: 1fr 1fr;
    }

    #main .ce_form fieldset .widget + .widget {
        margin-top: 0;
    }
}

@media (max-width: 900px) {
    .projekt-card__content {
        grid-template-columns: 1fr;
    }

    .projekt-card__side {
        padding-left: 0;
    }

    .projekt-detail__meta {
        grid-template-columns: 1fr;
        gap: 0.9rem;
    }

    .projekt-detail__image-wrap {
        width: 300px;
        max-width: 45%;
        margin-left: 1rem;
    }
}

@media (max-width: 768px) {
    .abschlussarbeiten-toolbar,
    .publikationen-toolbar,
    .vortraege-toolbar,
    .projekte-toolbar {
        flex-direction: column;
        align-items: stretch;
    }

    .abschlussarbeiten-suche,
    .publikationen-suche,
    .vortraege-suche,
    .projekte-suche {
        flex-direction: column;
    }

    .abschlussarbeit-card__head,
    .publikation-card__head,
    .vortrag-card__head {
        align-items: flex-start;
    }
}

@media (max-width: 700px) {
    .abschlussarbeit-card__head,
    .publikation-card__head,
    .vortrag-card__head,
    .projekt-card__head {
        grid-template-columns: 1fr;
    }

    .abschlussarbeit-card__date,
    .publikation-card__date,
    .vortrag-card__date,
    .projekt-card__date {
        justify-self: start;
    }

    .pagination {
        margin-bottom: 1.5rem;
    }

    .pagination ul {
        gap: 0.25rem;
    }

    .pagination a,
    .pagination span,
    .pagination strong {
        min-width: 2rem;
        height: 2rem;
        padding: 0 0.55rem;
        font-size: 0.9rem;
    }

    .projekt-card__main {
        grid-template-columns: 1fr;
    }

    .projekt-card__image {
        width: 100%;
        max-width: 260px;
    }

    .projekt-detail__title {
        font-size: 1.5rem;
    }

    .projekt-detail__image-wrap {
        float: none;
        width: 100%;
        max-width: none;
        margin: 0 0 1rem;
    }

    .projekt-detail__funder-row {
        align-items: flex-start;
        flex-direction: column;
        gap: 0.25rem;
    }

    .projekt-detail__person-role {
        white-space: normal;
    }

    .projekt-detail__funders-logos {
        gap: 0.75rem 1rem;
    }

    .projekt-detail__funder-image {
        max-width: 240px;
        max-height: 72px;
    }

    .mitglieder-gruppe {
        margin-bottom: 1.5rem;
    }

    .mitglieder-gruppe__list {
        grid-template-columns: 1fr;
    }

    .mitglied-card {
        grid-template-columns: 96px minmax(0, 1fr);
        gap: 0.85rem;
        padding: 0.85rem;
    }

    .mitglied-card__image-wrap {
        width: 96px;
    }

    .mitglied-card__placeholder {
        min-height: 120px;
    }

    .mitglied-card__placeholder-icon {
        font-size: 1.8rem;
    }

    .mitglied-card__name {
        font-size: 1rem;
    }

    .mitglied-card__roles {
        margin-bottom: 0.75rem;
    }

    .mitglied-card__role-item {
        font-size: 0.92rem;
    }

    .person-detail__header {
        grid-template-columns: 1fr;
        gap: 1rem;
    }

    .person-detail__image-wrap {
        width: 220px;
        max-width: 100%;
    }

    .person-detail__placeholder {
        min-height: 240px;
    }

    .person-detail__title {
        font-size: 1.55rem;
    }

    .person-detail__role-item {
        font-size: 0.95rem;
    }

    .news-teaser__title {
        font-size: 1.15rem;
    }

    .news-teaser__content--with-image {
        grid-template-columns: 1fr;
        gap: 0.85rem;
    }

    .news-teaser__image-wrap {
        max-width: 320px;
    }

    .async-loading-indicator {
        top: 50%;
        left: 50%;
        right: auto;
        font-size: 0.88rem;
        transform: translate(-50%, -50%);
    }

    .search-page__formbody {
        flex-direction: column;
        align-items: stretch;
    }

    .search-page__field,
    .search-page__actions {
        width: 100%;
    }

    .search-page__submit {
        width: 100%;
    }

    .search-result-card {
        padding: 1rem;
    }

    .search-result-card__title {
        font-size: 1.05rem;
    }

    .mod_search .formbody {
        flex-direction: column;
        align-items: stretch;
    }

    .mod_search .widget-text,
    .mod_search .widget-submit {
        width: 100%;
    }

    .mod_search button[type="submit"],
    .mod_search .widget-submit .submit {
        width: 100%;
    }

    #main .ce_form .formbody {
        padding: 1rem;
        border-radius: 16px;
    }

    #main .ce_form fieldset,
    #main .ce_form .widget-textarea,
    #main .ce_form .widget-altcha,
    #main .ce_form .widget-submit {
        padding: 0.9rem;
    }

    #main .ce_form .widget-submit .submit,
    #main .ce_form button[type="submit"] {
        width: 100%;
    }

    .jahresberichte-container {
        grid-template-columns: 1fr;
        gap: 0.85rem;
    }

    .jahresbericht {
        padding: 0.9rem;
    }

    .jahresbericht h2 {
        font-size: 1rem;
    }
}

@media screen and (min-width: 1205px) {
    footer > .inside {
        width: 1205px;
    }

    #header > .container {
        width: 1205px;
        height: 100px;
    }

    #logocontainer {
        width: 100%;
        height: 160px;
        top: 0;
        position: absolute;
        overflow: auto;
        display: flex;
        justify-content: flex-end;
        background: -moz-linear-gradient(left, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 1) 15%, rgba(255, 255, 255, 0.8) 25%, rgba(255, 255, 255, 0) 33%, rgba(255, 255, 255, 0) 67%, rgba(255, 255, 255, 0.8) 75%, rgba(255, 255, 255, 1) 85%, rgba(255, 255, 255, 1) 100%);
        background: -webkit-linear-gradient(left, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 1) 15%, rgba(255, 255, 255, 0.8) 25%, rgba(255, 255, 255, 0) 33%, rgba(255, 255, 255, 0) 67%, rgba(255, 255, 255, 0.8) 75%, rgba(255, 255, 255, 1) 85%, rgba(255, 255, 255, 1) 100%);
        background: linear-gradient(to right, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 1) 15%, rgba(255, 255, 255, 0.8) 25%, rgba(255, 255, 255, 0) 33%, rgba(255, 255, 255, 0) 67%, rgba(255, 255, 255, 0.8) 75%, rgba(255, 255, 255, 1) 85%, rgba(255, 255, 255, 1) 100%);
        filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00ffffff', endColorstr='#00ffffff', GradientType=1);
    }

    #logoIapgLink {
        margin-left: 20px;
        margin-right: auto;
    }

    #logoJadeHsLink {
        margin-right: 20px;
    }

    #hslogo {
        width: 200px;
        height: 90px;
        position: relative;
        float: left;
        display: block;
        margin-top: 35px;
        background-image: url("/files/iapg/images/jadehs-logo.png");
        background-repeat: no-repeat;
        background-size: contain;
    }

    #logo {
        width: 280px;
        height: 120px;
        position: relative;
        display: block;
        margin-top: 20px;
        background-image: url("/files/iapg/images/IAPG-Logo_03.png");
        margin-left: auto;
        margin-right: auto;
    }

    #container {
        width: 1205px;
        margin: auto;
    }

    #banner {
        height: 300px;
    }

    #breadcrumb {
        width: 1205px;
        float: none;
        margin: auto;
        padding-top: 20px;
        padding-bottom: 20px;
    }

header .mod_navigation.mod_navigationExtended ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

header .mod_navigation.mod_navigationExtended a,
header .mod_navigation.mod_navigationExtended span {
    display: block;
}

header .mod_navigation.mod_navigationExtended a {
    font-family: "Oswald", sans-serif;
    text-decoration: none;
}

header .mod_navigation.mod_navigationExtended a:hover {
    text-decoration: none;
}

header .mod_navigation.mod_navigationExtended .active > span {
    font-weight: 700;
}

header .mod_navigation.mod_navigationExtended .level_1 {
    margin: 0;
    padding: 0.35rem 0;
    text-align: center;
    background: linear-gradient(180deg, #5f5f5f 0%, #666666 100%);
    list-style: none;
}

header .mod_navigation.mod_navigationExtended .level_1 > li {
    position: relative;
    display: inline-block;
    margin: 0 10px;
    text-align: left;
    font-size: 16px;
    vertical-align: top;
}

header .mod_navigation.mod_navigationExtended .level_1 > li > a,
header .mod_navigation.mod_navigationExtended .level_1 > li > span {
    position: relative;
    height: 42px;
    padding: 0 18px;
    white-space: nowrap;
    font-size: 21px;
    line-height: 42px;
    color: rgba(255, 255, 255, 0.94);
    border: none;
    border-radius: 10px;
    letter-spacing: 0.01em;
    transition: color 0.22s ease, background-color 0.22s ease, box-shadow 0.22s ease;
}

header .mod_navigation.mod_navigationExtended .level_1 > li:hover > a,
header .mod_navigation.mod_navigationExtended .level_1 > li:hover > span,
header .mod_navigation.mod_navigationExtended .level_1 > li.trail > a,
header .mod_navigation.mod_navigationExtended .level_1 > li.trail > span,
header .mod_navigation.mod_navigationExtended .level_1 > li.active > a,
header .mod_navigation.mod_navigationExtended .level_1 > li.active > span {
    color: #ffffff;
    background: rgba(255, 255, 255, 0.08);
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.06);
}

header .mod_navigation.mod_navigationExtended .level_1 > li > a:after,
header .mod_navigation.mod_navigationExtended .level_1 > li > span:after {
    content: "";
    position: absolute;
    left: 18px;
    right: 18px;
    bottom: 7px;
    height: 2px;
    border-radius: 999px;
    background: #ffffff;
    opacity: 0;
    transform: scaleX(0.65);
    transition: opacity 0.22s ease, transform 0.22s ease;
}

header .mod_navigation.mod_navigationExtended .level_1 > li:hover > a:after,
header .mod_navigation.mod_navigationExtended .level_1 > li:hover > span:after,
header .mod_navigation.mod_navigationExtended .level_1 > li.trail > a:after,
header .mod_navigation.mod_navigationExtended .level_1 > li.trail > span:after,
header .mod_navigation.mod_navigationExtended .level_1 > li.active > a:after,
header .mod_navigation.mod_navigationExtended .level_1 > li.active > span:after {
    opacity: 0.88;
    transform: scaleX(1);
}

header .mod_navigation.mod_navigationExtended .level_2 {
    min-width: 290px;
    max-width: 380px;
    max-height: 0;
    position: absolute;
    left: 50%;
    top: calc(100% + 14px);
    overflow: hidden;
    padding: 0;
    background: rgba(255, 255, 255, 0.97);
    border: 1px solid rgba(223, 229, 236, 0.9);
    border-radius: 18px;
    box-shadow: 0 20px 50px rgba(15, 23, 42, 0.14);
    opacity: 0;
    transform: translateX(-50%) translateY(12px) scale(0.98);
    transform-origin: top center;
    transition: max-height 0.42s ease, opacity 0.26s ease, transform 0.26s ease;
    backdrop-filter: blur(14px);
    z-index: 100;
}

header .mod_navigation.mod_navigationExtended .level_1 .submenu:hover > .level_2 {
    max-height: 1000px;
    opacity: 1;
    transform: translateX(-50%) translateY(0) scale(1);
}

header .mod_navigation.mod_navigationExtended .level_2 > li {
    margin: 0;
    padding: 0;
    font-size: 14px;
}

header .mod_navigation.mod_navigationExtended .level_2 > li:first-child {
    padding-top: 0.7rem;
}

header .mod_navigation.mod_navigationExtended .level_2 > li:last-child {
    padding-bottom: 0.7rem;
}

header .mod_navigation.mod_navigationExtended .level_2 > li + li {
    margin-top: 0.08rem;
}

header .mod_navigation.mod_navigationExtended .level_2 > li > a,
header .mod_navigation.mod_navigationExtended .level_2 > li > span {
    position: relative;
    margin: 0 0.6rem;
    padding: 0.78rem 1rem 0.78rem 1.05rem;
    color: #223345;
    line-height: 1.35;
    font-size: 0.97rem;
    border-radius: 12px;
    transition: background-color 0.18s ease, color 0.18s ease, transform 0.18s ease;
}

header .mod_navigation.mod_navigationExtended .level_2 > li > a:hover,
header .mod_navigation.mod_navigationExtended .level_2 > li > span:hover {
    background: #f6f8fb;
    color: #b80510;
    transform: translateX(2px);
}

header .mod_navigation.mod_navigationExtended .level_2 > li.trail > a,
header .mod_navigation.mod_navigationExtended .level_2 > li.trail > span,
header .mod_navigation.mod_navigationExtended .level_2 > li.active > a,
header .mod_navigation.mod_navigationExtended .level_2 > li.active > span {
    background: #f8fafc;
    color: #b80510;
    font-weight: 600;
}

header .mod_navigation.mod_navigationExtended .level_2 ul {
    display: none;
}

    #main {
        width: 900px;
        float: left;
        display: block;
        padding-left: 40px;
        box-sizing: border-box;
    }

    #left {
        width: 243px;
        float: left;
        display: block;
        box-sizing: border-box;
        margin-left: 0;
    }

    #main:after {
        clear: both;
        display: block;
        content: " ";
    }

    #controlls {
        width: 100%;
        height: 35px;
        left: 0;
        right: 0;
        position: absolute;
        overflow: visible;
        float: right;
        margin-top: 0;
        margin-right: auto;
        margin-left: auto;
        z-index: 1;
        display: flex;
        justify-content: flex-end;
    }

    #controlls ul {
        /*width: 230px;*/
        margin-right: 15px;
        list-style: none;
    }

    #controlls ul li {
        width: 115px;
        height: 35px;
        float: left;
        background-color: #E30613;
    }

    #controlls ul li a {
        display: block;
        margin-right: 20px;
        font-size: 15px;
        line-height: 35px;
        text-decoration: none;
        color: #fff;
    }

    #controlls ul li h1 {
        display: block;
        margin-right: 30px;
        margin-left: 20px;
        font-size: 15px;
        line-height: 35px;
        text-decoration: none;
        color: #fff;
        border: none;
        margin-bottom: 0;
        padding-bottom: 0;
        cursor: pointer;
    }

    #controlls .mod_form {
        width: 230px;
        display: block;
    }

    #controlls .formbody {
        position: relative;
        background-color: rgba(208, 208, 208, 0.95);
        visibility: hidden;
        width: 230px;
        height: 40px;
        z-index: 3;
    }

    #controlls .formbody > .widget-text {
        float: left;
        padding: 5px;
        height: 25px;
        width: 150px;
    }

    #controlls .formbody > .widget-submit {
        float: right;
        padding: 5px;
        height: 26px;
        width: 55px;
    }

    #controlls .formbody > .widget-text input {
        width: 145px;
        height: 20px;
    }

    #controlls .formbody > .widget-submit button {
        width: 55px;
        height: 26px;
    }

    #header .mod_changelanguage {
        display: none;
    }

    #controlls .mod_changelanguage {
        display: block;
    }

    #header > .mod_form {
        display: none;
    }

    #menutoggle {
        visibility: hidden;
    }

    #left .mod_navigation {
            margin-bottom: 2rem;
        }

        #left .mod_navigation > h1,
        #left .mod_navigation > h2,
        #left .mod_navigation > h3,
        #left .mod_navigation > h4,
        #left .mod_navigation > h5,
        #left .mod_navigation > h6 {
            margin: 0 0 0.75rem;
            font-size: 1rem;
            line-height: 1.35;
            color: #2f3b4b;
            font-weight: 700;
        }

        #left .mod_navigation > .invisible {
            position: absolute;
            left: -9999px;
        }

        #left .mod_navigation > ul {
            margin: 0;
            list-style: none;
            background: #ffffff;
            color: #2f3b4b;
            border: 1px solid #e5eaf0;
            border-radius: 14px;
            box-shadow: 0 4px 14px rgba(24, 39, 75, 0.04);
            padding: 0.85rem;
        }

        #left .mod_navigation > ul,
        #left .mod_navigation > ul ul {
            list-style: none;
            margin-left: 0;
        }

        #left .mod_navigation > ul ul {
            margin-top: 0;
            margin-bottom: 0;
        }

        #left .mod_navigation > ul a,
        #left .mod_navigation > ul span {
            color: #2f3b4b;
            text-decoration: none;
        }

        #left .mod_navigation .level_1 > li {
            margin: 0;
            padding: 0 0.35rem;
            font-size: inherit;
        }

        #left .mod_navigation .level_2 > li,
        #left .mod_navigation .level_3 > li,
        #left .mod_navigation .level_4 > li,
        #left .mod_navigation > ul ul > li {
            margin: 0;
            padding: 0 0.2rem;
            font-size: inherit;
        }

        #left .mod_navigation .level_1 > li + li {
            margin-top: 0.22rem;
        }

        #left .mod_navigation .level_2 > li + li,
        #left .mod_navigation .level_3 > li + li,
        #left .mod_navigation .level_4 > li + li,
        #left .mod_navigation > ul ul > li + li {
            margin-top: 0.05rem;
        }

        #left .mod_navigation .level_1 > li > a,
        #left .mod_navigation .level_1 > li > span {
            display: block;
            position: relative;
            padding: 0.82rem 2.9rem 0.82rem 0.95rem;
            border-radius: 12px;
            font-size: 0.99rem;
            line-height: 1.4;
            font-weight: 700;
            color: #243447;
            background: transparent;
            transition: background-color 0.18s ease, color 0.18s ease, box-shadow 0.18s ease;
        }

        #left .mod_navigation .level_2 > li > a,
        #left .mod_navigation .level_2 > li > span {
            display: block;
            position: relative;
            padding: 0.5rem 2.4rem 0.5rem 0.8rem;
            border-radius: 8px;
            font-size: 0.9rem;
            line-height: 1.4;
            color: #586779;
            transition: background-color 0.18s ease, color 0.18s ease;
        }

        #left .mod_navigation .level_3 > li > a,
        #left .mod_navigation .level_3 > li > span {
            display: block;
            position: relative;
            padding: 0.44rem 2.2rem 0.44rem 0.8rem;
            border-radius: 8px;
            font-size: 0.88rem;
            line-height: 1.4;
            color: #667487;
            transition: background-color 0.18s ease, color 0.18s ease;
        }

        #left .mod_navigation .level_4 > li > a,
        #left .mod_navigation .level_4 > li > span,
        #left .mod_navigation > ul ul ul ul > li > a,
        #left .mod_navigation > ul ul ul ul > li > span {
            display: block;
            position: relative;
            padding: 0.4rem 2rem 0.4rem 0.8rem;
            border-radius: 8px;
            font-size: 0.86rem;
            line-height: 1.4;
            color: #6c7888;
            transition: background-color 0.18s ease, color 0.18s ease;
        }

        #left .mod_navigation .level_1 > li > a:hover,
        #left .mod_navigation .level_1 > li > span:hover {
            background: #f4f7fa;
            color: #16293d;
            text-decoration: none;
            box-shadow: inset 0 0 0 1px #edf1f5;
        }

        #left .mod_navigation .level_2 > li > a:hover,
        #left .mod_navigation .level_2 > li > span:hover,
        #left .mod_navigation .level_3 > li > a:hover,
        #left .mod_navigation .level_3 > li > span:hover,
        #left .mod_navigation .level_4 > li > a:hover,
        #left .mod_navigation .level_4 > li > span:hover,
        #left .mod_navigation > ul ul > li > a:hover,
        #left .mod_navigation > ul ul > li > span:hover {
            background: #f7f9fb;
            color: #1f3247;
            text-decoration: none;
        }

        #left .mod_navigation .level_1 > li > a.active,
        #left .mod_navigation .level_1 > li > span.active,
        #left .mod_navigation > ul .level_1 > li > .actPage,
        #left .mod_navigation > ul .level_1 > li > span.active {
            color: #b80510;
            background: linear-gradient(180deg, #fafbfc 0%, #f4f7fa 100%);
            font-weight: 700;
            box-shadow: inset 0 0 0 1px #e8edf3;
        }

        #left .mod_navigation .level_2 > li > a.active,
        #left .mod_navigation .level_2 > li > span.active,
        #left .mod_navigation .level_3 > li > a.active,
        #left .mod_navigation .level_3 > li > span.active,
        #left .mod_navigation .level_4 > li > a.active,
        #left .mod_navigation .level_4 > li > span.active,
        #left .mod_navigation > ul ul > li > a.active,
        #left .mod_navigation > ul ul > li > span.active,
        #left .mod_navigation > ul ul .actPage {
            color: #b80510;
            background: #f8fafc;
            font-weight: 600;
        }

        #left .mod_navigation .level_1 > li.submenu.open > a,
        #left .mod_navigation .level_1 > li.submenu.open > span {
            background: #f7f9fb;
            box-shadow: inset 0 0 0 1px #edf1f5;
        }

        #left .mod_navigation > ul .submenu {
            position: relative;
        }

        #left .mod_navigation > ul .submenu > ul {
            display: none;
        }

        #left .mod_navigation > ul .submenu.open > ul,
        #left .mod_navigation > ul .submenu.trail > ul,
        #left .mod_navigation > ul .submenu.active > ul {
            display: block;
        }

        #left .mod_navigation .level_1 > li.submenu > ul {
            margin: 0.35rem 0 0.25rem;
            padding: 0 0 0 0.95rem;
            border-left: 1px solid #e7ecf2;
        }

        #left .mod_navigation .level_2 > li.submenu > ul,
        #left .mod_navigation .level_3 > li.submenu > ul,
        #left .mod_navigation .level_4 > li.submenu > ul,
        #left .mod_navigation > ul ul ul {
            margin: 0.2rem 0 0.15rem;
            padding: 0 0 0 1.05rem;
            border-left: 1px solid #eef2f6;
        }

        #left .mod_navigation > ul .submenu > .navcontrol {
            width: 1.65rem;
            height: 1.65rem;
            position: absolute;
            right: 0.45rem;
            top: 0.6rem;
            float: none;
            cursor: pointer;
            border-radius: 999px;
            background: transparent;
            transition: background-color 0.18s ease;
            z-index: 2;
        }

        #left .mod_navigation .level_2 > li.submenu > .navcontrol,
        #left .mod_navigation .level_3 > li.submenu > .navcontrol,
        #left .mod_navigation .level_4 > li.submenu > .navcontrol,
        #left .mod_navigation > ul ul .submenu > .navcontrol {
            top: 0.34rem;
            right: 0.3rem;
            width: 1.5rem;
            height: 1.5rem;
        }

        #left .mod_navigation > ul .submenu > .navcontrol:hover {
            background: #f3f6f9;
        }

        #left .mod_navigation > ul .submenu > .navcontrol:before,
        #left .mod_navigation > ul .submenu > .navcontrol:after {
            width: 0.7rem;
            height: 2px;
            left: 50%;
            top: 50%;
            position: absolute;
            background: #66778b;
            content: "";
            border-radius: 999px;
            transition: transform 0.18s ease, opacity 0.18s ease, background-color 0.18s ease;
            transform-origin: center;
            margin-left: -0.35rem;
            margin-top: -1px;
        }

        #left .mod_navigation > ul .submenu > .navcontrol:before {
            transform: rotate(90deg);
        }

        #left .mod_navigation > ul .submenu.open > .navcontrol:before,
        #left .mod_navigation > ul .submenu.trail > .navcontrol:before,
        #left .mod_navigation > ul .submenu.active > .navcontrol:before {
            opacity: 0;
            transform: rotate(180deg);
        }

        #left .mod_navigation > ul .submenu.open > .navcontrol:after,
        #left .mod_navigation > ul .submenu.trail > .navcontrol:after,
        #left .mod_navigation > ul .submenu.active > .navcontrol:after {
            background: #b80510;
            transform: rotate(180deg);
        }

        #left .mod_navigation > ul .submenu.open > .navcontrol,
        #left .mod_navigation > ul .submenu.trail > .navcontrol,
        #left .mod_navigation > ul .submenu.active > .navcontrol {
            background: #f3f6f9;
        }

        #left .mod_navigation .level_1 > li.first > a,
        #left .mod_navigation .level_1 > li.first > span,
        #left .mod_navigation .level_1 > li.last > a,
        #left .mod_navigation .level_1 > li.last > span,
        #left .mod_navigation .level_2 > li.first > a,
        #left .mod_navigation .level_2 > li.first > span,
        #left .mod_navigation .level_2 > li.last > a,
        #left .mod_navigation .level_2 > li.last > span {
            box-sizing: border-box;
        }

        #left .mod_navigation a:focus,
        #left .mod_navigation span:focus,
        #left .mod_navigation .navcontrol:focus {
            outline: 2px solid rgba(227, 6, 19, 0.25);
            outline-offset: 2px;
        }

    #mapid {
        width: 695px;
        height: 500px;
        background-color: #d0d0d0;
    }

    .mod_eventlist {
        margin-top: 10px;
        margin-bottom: 30px;
    }
}

@media screen and (max-width: 1204px) {
    .mod_eventlist > .layout_teaser > .eventcontent {
        float: left;
        margin-left: 10px;
    }

    .mod_eventlist > .layout_teaser > .contentWithImage > .eventcontent {
        float: left;
    }

    .mod_eventlist > .layout_teaser > .contentWithImage > .imagecontent {
        display: none;
    }

    #logocontainer > a {
        width: 50%;
        display: inline-block;
    }

    #logocontainer {
        width: 100%;
        height: 160px;
        top: 0;
        position: absolute;
        overflow: auto;
        display: flex;
        justify-content: center;
        background: -moz-linear-gradient(left, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 1) 15%, rgba(255, 255, 255, 0.8) 25%, rgba(255, 255, 255, 0) 33%, rgba(255, 255, 255, 0) 67%, rgba(255, 255, 255, 0.8) 75%, rgba(255, 255, 255, 1) 85%, rgba(255, 255, 255, 1) 100%);
        background: -webkit-linear-gradient(left, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 1) 15%, rgba(255, 255, 255, 0.8) 25%, rgba(255, 255, 255, 0) 33%, rgba(255, 255, 255, 0) 67%, rgba(255, 255, 255, 0.8) 75%, rgba(255, 255, 255, 1) 85%, rgba(255, 255, 255, 1) 100%);
        background: linear-gradient(to right, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 1) 15%, rgba(255, 255, 255, 0.8) 25%, rgba(255, 255, 255, 0) 33%, rgba(255, 255, 255, 0) 67%, rgba(255, 255, 255, 0.8) 75%, rgba(255, 255, 255, 1) 85%, rgba(255, 255, 255, 1) 100%);
        filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#00ffffff', endColorstr='#00ffffff', GradientType=1);
    }

    #hslogo {
        width: 130px;
        height: 70px;
        position: relative;
        float: right;
        display: block;
        margin-top: 12px;
        background-image: url("/files/iapg/images/jadehs-logo.png");
        background-repeat: no-repeat;
        background-size: contain;
    }

    #logo {
        width: 130px;
        height: 70px;
        left: 20px;
        position: relative;
        float: left;
        display: block;
        margin-top: 45px;
        background-image: url("/files/iapg/images/IAPG-Logo_03.png");
    }

    body,
    input,
    textarea,
    select {
        font-size: 9.5pt;
        line-height: 1.75em;
        letter-spacing: 0;
    }

    h2,
    h3,
    h4,
    h5,
    h6 {
        font-size: 1.5em;
    }

    header h2 {
        font-size: 2em;
        line-height: 1.2em;
    }

    #titleBar {
        background-color: #666;
    }

    #titleBar .title a {
        display: block;
        text-align: center;
        font-size: 1.6em;
        line-height: 70px;
        text-decoration: none;
        color: #fff !important;
        font-weight: 700;
    }

    #titleBar .toggle {
        width: 55px;
        height: 65px;
        left: 0;
        top: 0;
        position: absolute;
        background-color: rgba(11, 11, 11, 0.3);
    }

    #titleBar .toggle:before {
        width: 60px;
        height: 40px;
        left: 5px;
        position: absolute;
        display: block;
        border-radius: 4px;
        content: "";
        top: 5px;
    }

    #titleBar .toggle:after {
        width: 20px;
        height: 20px;
        left: 15px;
        position: absolute;
        display: block;
        content: "";
        top: 25px;
        background: url("../../files/css/images/mobileUI-site-nav-opener-bg.svg") 0 0 no-repeat;
        opacity: 1;
    }

    #titleBar .toggle:active:after {
        opacity: 1;
    }

    #banner {
        height: 160px;
        overflow: hidden;
        font-style: normal;
        padding-top: 30px;
    }

    #controlls {
        display: none;
    }

    #header .mod_changelanguage {
        height: 40px;
        float: left;
        display: none;
        padding-top: 5px;
        padding-bottom: 5px;
        padding-left: 5px;
        background-color: #d0d0d0;
    }

    #header .mod_changelanguage a {
        color: #f00;
        text-decoration: none;
        width: 38px;
        height: 25px;
    }

    #header .mod_form {
        display: none;
        padding-top: 15px;
        padding-right: 5px;
        padding-bottom: 10px;
        padding-left: 50%;
        background-color: #d0d0d0;
        height: 26px;
        vertical-align: middle;
        white-space: nowrap;
    }

    #header .mod_form h1 {
        display: none;
    }

    #header .mod_form .formbody {
        height: 25px;
        display: flex;
        vertical-align: middle;
        background: #fff;
        border: none;
        font-size: 10pt;
        color: #fff;
        border-radius: 5px;
    }

    #header .mod_form .widget-text {
        width: 100%;
        float: left;
        height: 25px;
        margin-left: 10px;
        vertical-align: middle;
    }

    #header .mod_form .widget-submit {
        float: right;
        height: 25px;
        width: 20px;
        margin-right: 10px;
        top: 50%;
        z-index: 1;
        color: #4f5b66;
    }

    #header .mod_form .widget-submit input {
        vertical-align: middle;
    }

    #header .mod_form .widget-text input {
        width: 100%;
        height: 100%;
        background: transparent;
        border: 0;
        color: #000;
    }

    #header .mod_form .widget-submit button {
        display: block;
        font-family: FontAwesome;
        background: transparent;
        vertical-align: middle;
        border: 0;
        height: 25px;
        width: 25px;
        top: 50%;
        z-index: 1;
        color: #000;
    }

    #menutoggle {
        width: 100%;
        height: 54px;
        left: 0;
        right: 0;
        position: absolute;
        float: right;
        margin-top: 90px;
        display: flex;
        justify-content: flex-end;
    }

    #banner .container {
        height: 130px;
    }

    #main {
        padding: 4em 0;
    }

    #footer {
        padding: 0 0 3em;
    }

    #footer header {
        margin-bottom: 2em;
    }

    .hamburger {
        width: 50px;
        height: 50px;
        margin-right: 20px;
        border: 2px solid #E30613;
        border-radius: 50%;
    }

    .hamburger:hover {
        cursor: pointer;
    }

    .hamburger .line {
        width: 30px;
        height: 3px;
        display: block;
        margin: 8px auto;
        background-color: #E30613;
        border-radius: 2px;
        -webkit-transition: all 0.3s ease-in-out;
        -o-transition: all 0.3s ease-in-out;
        transition: all 0.3s ease-in-out;
    }

    .hamburger .top {
        margin-top: 14px;
    }

    #hamburger-1.is-active .line:nth-child(2) {
        opacity: 0;
    }

    #hamburger-1.is-active .line:nth-child(1) {
        -webkit-transform: translateY(10px) rotate(45deg);
        -ms-transform: translateY(10px) rotate(45deg);
        -o-transform: translateY(10px) rotate(45deg);
        transform: translateY(10px) rotate(45deg);
    }

    #hamburger-1.is-active .line:nth-child(3) {
        -webkit-transform: translateY(-12px) rotate(-45deg);
        -ms-transform: translateY(-12px) rotate(-45deg);
        -o-transform: translateY(-12px) rotate(-45deg);
        transform: translateY(-12px) rotate(-45deg);
    }

    header .mod_navigation {
        width: 100%;
        display: none;
        z-index: 1;
    }

    header .mod_navigation > ul {
        padding: 10px;
        background-color: #d0d0d0;
        color: #535850;
        list-style-type: none;
    }

    header .mod_navigation > ul .actPage {
        font-size: 20px;
        font-weight: bold;
    }

    header .mod_navigation > ul a {
        text-decoration: none;
        color: #535850;
    }

    header .mod_navigation > ul ul {
        list-style: none;
    }

    header .mod_navigation .level_1 > li {
        margin-top: 3px;
        margin-bottom: 3px;
        font-size: 16px;
    }

    header .mod_navigation .level_2 > li {
        margin-top: 3px;
        margin-bottom: 3px;
        padding-left: 20px;
        font-size: 14px;
    }

    header .mod_navigation > ul ul > li {
        margin-top: 3px;
        margin-bottom: 3px;
        padding-left: 20px;
        font-size: 12px;
    }

    header .mod_navigation > ul span.active {
        font-weight: bold;
    }

    header .mod_navigation > ul .submenu > .navcontrol {
        width: 15px;
        height: 15px;
        top: 5px;
        position: relative;
        float: right;
        cursor: pointer;
    }

    header .mod_navigation > ul .submenu > .navcontrol:before {
        width: 15px;
        height: 2px;
        left: 0;
        top: 0;
        position: absolute;
        background: #535850;
        content: "";
        transition: background 500ms, transform 500ms;
        transform: rotate(90deg);
    }

    header .mod_navigation > ul .submenu > .navcontrol:after {
        width: 15px;
        height: 2px;
        left: 0;
        top: 0;
        position: absolute;
        background: #535850;
        content: "";
        transition: background 500ms, transform 500ms;
        transform-origin: center;
    }

    header .mod_navigation > ul .submenu.trail > ul,
    header .mod_navigation > ul .active.submenu > ul,
    header .mod_navigation > ul .open.submenu > ul {
        display: block;
    }

    header .mod_navigation > ul .submenu > ul,
    header .mod_navigation > ul .active.open > ul,
    header .mod_navigation > ul .trail.open > ul {
        display: none;
    }

    header .mod_navigation > ul .submenu.trail > .navcontrol:before,
    header .mod_navigation > ul .active.submenu > .navcontrol:before,
    header .mod_navigation > ul .open.submenu > .navcontrol:before,
    header .mod_navigation > ul .submenu.trail > .navcontrol:after,
    header .mod_navigation > ul .active.submenu > .navcontrol:after,
    header .mod_navigation > ul .open.submenu > .navcontrol:after {
        transform: rotate(180deg);
    }

    header .mod_navigation > ul .active.open > .navcontrol:before,
    header .mod_navigation > ul .open.trail > .navcontrol:before {
        transform: rotate(90deg);
    }

    #left .mod_navigation {
        display: none;
    }

    .mod_eventlist > .layout_upcoming_no_links > .event,
    .mod_eventlist > .layout_upcoming > .event {
        display: block;
    }

    #mapid {
        width: 100%;
        height: 500px;
        background-color: #d0d0d0;
    }

    .mod_newslist.miniNews,
    .mod_eventlist.miniEvents {
        width: 90%;
        margin-right: 0;
        margin-left: 10px;
        background-color: #d0d0d0;
        margin-bottom: 30px;
    }

    .mod_article > .ce_text #mainpage_institutview {
        float: left;
        margin-left: 0;
        margin-right: 100%;
    }
}
@media screen and (max-width: 1204px) {
    #menutoggle {
        width: 100%;
        height: 54px;
        left: 0;
        right: 0;
        position: absolute;
        float: right;
        margin-top: 90px;
        display: flex;
        justify-content: flex-end;
        z-index: 25;
    }

    .hamburger {
        width: 52px;
        height: 52px;
        margin-right: 20px;
        border: 2px solid #E30613;
        border-radius: 50%;
        background: rgba(255, 255, 255, 0.96);
        box-shadow: 0 6px 18px rgba(24, 39, 75, 0.1);
    }

    .hamburger .line {
        width: 28px;
        height: 3px;
        display: block;
        margin: 7px auto;
        background-color: #E30613;
        border-radius: 999px;
        transition: all 0.3s ease-in-out;
    }

    .hamburger .top {
        margin-top: 14px;
    }

    header .mod_navigation.mod_navigationExtended {
        width: 100%;
        display: none;
        margin: 0;
        position: relative;
        z-index: 20;
    }

    header .mod_navigation.mod_navigationExtended > ul.level_1 {
        margin: 0;
        padding: 0.85rem 0.85rem 1rem;
        list-style: none;
        background: linear-gradient(180deg, #5f5f5f 0%, #666666 100%);
        box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.05);
    }

    header .mod_navigation.mod_navigationExtended .level_1 > li {
        position: relative;
        display: block;
        margin: 0;
    }

    header .mod_navigation.mod_navigationExtended .level_1 > li + li {
        margin-top: 0.38rem;
    }

    header .mod_navigation.mod_navigationExtended .level_1 > li > a,
    header .mod_navigation.mod_navigationExtended .level_1 > li > span {
        display: block;
        min-height: 48px;
        padding: 0.85rem 3.1rem 0.85rem 1rem;
        border-radius: 14px;
        background: rgba(255, 255, 255, 0.05);
        color: rgba(255, 255, 255, 0.95);
        font-size: 1.04rem;
        line-height: 1.35;
        text-decoration: none;
        box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.04);
        transition: background-color 0.18s ease, color 0.18s ease, box-shadow 0.18s ease;
    }

    header .mod_navigation.mod_navigationExtended .level_1 > li > a:hover,
    header .mod_navigation.mod_navigationExtended .level_1 > li > span:hover,
    header .mod_navigation.mod_navigationExtended .level_1 > li.trail > a,
    header .mod_navigation.mod_navigationExtended .level_1 > li.trail > span,
    header .mod_navigation.mod_navigationExtended .level_1 > li.active > a,
    header .mod_navigation.mod_navigationExtended .level_1 > li.active > span,
    header .mod_navigation.mod_navigationExtended .level_1 > li.open > a,
    header .mod_navigation.mod_navigationExtended .level_1 > li.open > span {
        background: rgba(255, 255, 255, 0.12);
        color: #ffffff;
        box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.08);
    }

    header .mod_navigation.mod_navigationExtended .level_1 > li > a:after,
    header .mod_navigation.mod_navigationExtended .level_1 > li > span:after {
        display: none;
    }

    header .mod_navigation.mod_navigationExtended .submenu > ul {
        display: none;
    }

    header .mod_navigation.mod_navigationExtended .submenu.open > ul,
    header .mod_navigation.mod_navigationExtended .submenu.trail > ul,
    header .mod_navigation.mod_navigationExtended .submenu.active > ul {
        display: block;
    }

    header .mod_navigation.mod_navigationExtended .level_2,
    header .mod_navigation.mod_navigationExtended .level_3,
    header .mod_navigation.mod_navigationExtended .level_4 {
        min-width: 0;
        max-width: none;
        max-height: none;
        position: static;
        left: auto;
        top: auto;
        overflow: visible;
        margin-top: 0.34rem;
        padding: 0.2rem 0 0.1rem 0.95rem;
        background: transparent;
        border: 0;
        border-radius: 0;
        box-shadow: none;
        opacity: 1;
        transform: none;
        backdrop-filter: none;
    }

    header .mod_navigation.mod_navigationExtended .level_2 {
        border-left: 1px solid rgba(255, 255, 255, 0.16);
    }

    header .mod_navigation.mod_navigationExtended .level_3,
    header .mod_navigation.mod_navigationExtended .level_4 {
        border-left: 1px solid rgba(255, 255, 255, 0.1);
    }

    header .mod_navigation.mod_navigationExtended .level_2 > li,
    header .mod_navigation.mod_navigationExtended .level_3 > li,
    header .mod_navigation.mod_navigationExtended .level_4 > li {
        position: relative;
        display: block;
        margin: 0;
        padding: 0;
    }

    header .mod_navigation.mod_navigationExtended .level_2 > li + li,
    header .mod_navigation.mod_navigationExtended .level_3 > li + li,
    header .mod_navigation.mod_navigationExtended .level_4 > li + li {
        margin-top: 0.14rem;
    }

    header .mod_navigation.mod_navigationExtended .level_2 > li > a,
    header .mod_navigation.mod_navigationExtended .level_2 > li > span,
    header .mod_navigation.mod_navigationExtended .level_3 > li > a,
    header .mod_navigation.mod_navigationExtended .level_3 > li > span,
    header .mod_navigation.mod_navigationExtended .level_4 > li > a,
    header .mod_navigation.mod_navigationExtended .level_4 > li > span {
        display: block;
        min-height: 40px;
        margin: 0;
        padding: 0.62rem 2.5rem 0.62rem 0.9rem;
        border-radius: 10px;
        color: rgba(255, 255, 255, 0.9);
        font-size: 0.96rem;
        line-height: 1.35;
        text-decoration: none;
        transition: background-color 0.18s ease, color 0.18s ease;
    }

    header .mod_navigation.mod_navigationExtended .level_3 > li > a,
    header .mod_navigation.mod_navigationExtended .level_3 > li > span {
        font-size: 0.93rem;
        color: rgba(255, 255, 255, 0.84);
    }

    header .mod_navigation.mod_navigationExtended .level_4 > li > a,
    header .mod_navigation.mod_navigationExtended .level_4 > li > span {
        font-size: 0.9rem;
        color: rgba(255, 255, 255, 0.78);
    }

    header .mod_navigation.mod_navigationExtended .level_2 > li > a:hover,
    header .mod_navigation.mod_navigationExtended .level_2 > li > span:hover,
    header .mod_navigation.mod_navigationExtended .level_3 > li > a:hover,
    header .mod_navigation.mod_navigationExtended .level_3 > li > span:hover,
    header .mod_navigation.mod_navigationExtended .level_4 > li > a:hover,
    header .mod_navigation.mod_navigationExtended .level_4 > li > span:hover,
    header .mod_navigation.mod_navigationExtended .level_2 > li.trail > a,
    header .mod_navigation.mod_navigationExtended .level_2 > li.trail > span,
    header .mod_navigation.mod_navigationExtended .level_2 > li.active > a,
    header .mod_navigation.mod_navigationExtended .level_2 > li.active > span,
    header .mod_navigation.mod_navigationExtended .level_3 > li.trail > a,
    header .mod_navigation.mod_navigationExtended .level_3 > li.trail > span,
    header .mod_navigation.mod_navigationExtended .level_3 > li.active > a,
    header .mod_navigation.mod_navigationExtended .level_3 > li.active > span,
    header .mod_navigation.mod_navigationExtended .level_4 > li.trail > a,
    header .mod_navigation.mod_navigationExtended .level_4 > li.trail > span,
    header .mod_navigation.mod_navigationExtended .level_4 > li.active > a,
    header .mod_navigation.mod_navigationExtended .level_4 > li.active > span {
        background: rgba(255, 255, 255, 0.08);
        color: #ffffff;
    }

    header .mod_navigation.mod_navigationExtended .submenu > .navcontrol {
        position: absolute;
        top: 0.62rem;
        right: 0.55rem;
        width: 1.9rem;
        height: 1.9rem;
        border-radius: 999px;
        background: rgba(255, 255, 255, 0.08);
        cursor: pointer;
        z-index: 3;
        transition: background-color 0.18s ease;
    }

    header .mod_navigation.mod_navigationExtended .level_2 > li.submenu > .navcontrol,
    header .mod_navigation.mod_navigationExtended .level_3 > li.submenu > .navcontrol,
    header .mod_navigation.mod_navigationExtended .level_4 > li.submenu > .navcontrol {
        top: 0.38rem;
        right: 0.28rem;
        width: 1.7rem;
        height: 1.7rem;
    }

    header .mod_navigation.mod_navigationExtended .submenu > .navcontrol:hover,
    header .mod_navigation.mod_navigationExtended .submenu.open > .navcontrol,
    header .mod_navigation.mod_navigationExtended .submenu.trail > .navcontrol,
    header .mod_navigation.mod_navigationExtended .submenu.active > .navcontrol {
        background: rgba(255, 255, 255, 0.14);
    }

    header .mod_navigation.mod_navigationExtended .submenu > .navcontrol:before,
    header .mod_navigation.mod_navigationExtended .submenu > .navcontrol:after {
        content: "";
        position: absolute;
        left: 50%;
        top: 50%;
        width: 0.72rem;
        height: 2px;
        margin-left: -0.36rem;
        margin-top: -1px;
        border-radius: 999px;
        background: #ffffff;
        transition: transform 0.18s ease, opacity 0.18s ease;
    }

    header .mod_navigation.mod_navigationExtended .submenu > .navcontrol:before {
        transform: rotate(90deg);
    }

    header .mod_navigation.mod_navigationExtended .submenu.open > .navcontrol:before,
    header .mod_navigation.mod_navigationExtended .submenu.trail > .navcontrol:before,
    header .mod_navigation.mod_navigationExtended .submenu.active > .navcontrol:before {
        opacity: 0;
        transform: rotate(180deg);
    }
}

/* Print-Header – im normalen Modus unsichtbar */
#print-header {
    display: none;
}

@media print {
    /* ==============================
       Allgemeine Druck-Optimierungen
       ============================== */

    * {
        background: transparent !important;
        color: #000 !important;
        box-shadow: none !important;
        text-shadow: none !important;
    }

    body {
        font-size: 12pt;
        line-height: 1.5;
        margin: 0;
        padding: 0;
    }

    /* ==============================
       Print-Header mit Logos anzeigen
       ============================== */

    #print-header {
        display: flex !important;
        justify-content: space-between;
        align-items: center;
        padding: 0.5cm 0;
        margin-bottom: 0.5cm;
        border-bottom: 2px solid #000;
    }

    .print-header__logo {
        height: 50px;
        width: auto;
        print-color-adjust: exact !important;
        -webkit-print-color-adjust: exact !important;
        color-adjust: exact !important;
    }

    /* ==============================
       Nicht druckrelevante Bereiche ausblenden
       ============================== */

    #controlls,
    #menutoggle,
    .hamburger,
    nav,
    .mod_navigation,
    .mod_navigationExtended,
    .mod_navigation.mod_navigationExtended {
        display: none !important;
    }

    /* Kompletten Original-Header ausblenden */
    #header {
        display: none !important;
    }

    /* Slider im Header */
    #header .inside [class*="slider"] {
        display: none !important;
    }

    /* ALLE Suchformulare und Suchmodule ausblenden */
    .mod_search,
    .mod_form,
    #header .mod_form,
    #header .mod_search,
    .search-page__header,
    form.projekte-suche,
    form.abschlussarbeiten-suche,
    form.publikationen-suche,
    form.vortraege-suche,
    input[type="search"],
    button[type="submit"],
    .widget-submit,
    .formbody {
        display: none !important;
    }

    #left,
    #right {
        display: none !important;
    }

    #footer {
        display: none !important;
    }

    .abschlussarbeiten-toolbar,
    .projekte-toolbar,
    .publikationen-toolbar,
    .vortraege-toolbar,
    .years,
    .abschluesse,
    .suche-reset {
        display: none !important;
    }

    .abschlussarbeiten-pagination,
    .projekte-pagination,
    .publikationen-pagination,
    .vortraege-pagination,
    .pagination {
        display: none !important;
    }

    .nach_oben_link {
        display: none !important;
    }

    /* ==============================
       Layout-Anpassungen
       ============================== */

    #wrapper {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    #container {
        width: 100% !important;
        display: block !important;
    }

    #main {
        width: 100% !important;
        float: none !important;
        margin: 0 !important;
        padding: 0 !important;
    }

    /* Logocontainer ausblenden (ersetzt durch #print-header) */
    #logocontainer {
        display: none !important;
    }

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

    h1 { font-size: 18pt; }
    h2 { font-size: 15pt; }
    h3 { font-size: 13pt; }

    #main h1,
    #main h2,
    #main h3,
    #main h4,
    h1, h2, h3, h4 {
        display: block !important;
    }

    /* ==============================
       Links sichtbar machen
       ============================== */

    a[href]::after {
        content: " (" attr(href) ")";
        font-size: 0.8em;
        font-weight: normal;
        word-break: break-all;
    }

    a[href^="#"]::after,
    a[href^="javascript:"]::after,
    a.projekt-card__more::after,
    a.publikation-card__link-pill::after,
    a.vortrag-card__link-pill::after,
    #logocontainer a::after,
    #print-header a::after,
    .mitglied-card__name a::after,
    .projekt-card__person a::after,
    .projekt-detail__person-name a::after,
    .publikation-card__person a::after,
    .vortrag-card__person a::after,
    .abschlussarbeit-card a::after {
        content: "" !important;
    }

    /* ==============================
       Seitenumbrüche
       ============================== */

    .abschlussarbeit-card,
    .projekt-card,
    .publikation-card,
    .vortrag-card,
    .mitglied-card,
    .person-detail__card,
    .projekt-detail__card {
        page-break-inside: avoid;
        break-inside: avoid;
    }

    .mitglieder-gruppe,
    section {
        page-break-before: auto;
    }

    h1, h2, h3, h4 {
        page-break-after: avoid;
        break-after: avoid;
    }

    /* ==============================
       Bilder
       ============================== */

    img {
        max-width: 100% !important;
        page-break-inside: avoid;
    }

    .mitglied-card__placeholder,
    .person-detail__placeholder {
        display: none !important;
    }

    /* ==============================
       Cards ohne Schatten
       ============================== */

    .abschlussarbeit-card,
    .projekt-card,
    .publikation-card,
    .vortrag-card,
    .mitglied-card {
        border: 1px solid #ccc !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        padding: 0.5rem !important;
        margin-bottom: 0.5rem !important;
    }

    /* ==============================
       Tabellen & Listen sauber drucken
       ============================== */

    table {
        border-collapse: collapse !important;
    }

    table td, table th {
        border: 1px solid #ccc !important;
    }
}
