header,footer,nav,section,aside,main,article,figure,figcaption{display:block}body,div,h1,h2,h3,h4,h5,h6,p,blockquote,pre,code,ol,ul,li,dl,dt,dd,figure,table,th,td,form,fieldset,legend,input,textarea{margin:0;padding:0}table{border-spacing:0;border-collapse:collapse}caption,th,td{text-align:left;text-align:start;vertical-align:top}abbr,acronym{font-variant:normal;border-bottom:1px dotted #666;cursor:help}blockquote,q{quotes:none}fieldset,img,iframe{border:0}ul{list-style-type:none}sup{vertical-align:text-top}sub{vertical-align:text-bottom}del{text-decoration:line-through}ins{text-decoration:none}body{font:12px/1 "Lucida Grande","Lucida Sans Unicode",Verdana,sans-serif;color:#000}input,button,textarea,select{font-family:inherit;font-size:99%;font-weight:inherit}pre,code{font-family:Monaco,monospace}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:400}h1{font-size:1.8333em}h2{font-size:1.6667em}h3{font-size:1.5em}h4{font-size:1.3333em}table{font-size:inherit}caption,th{font-weight:700}a{color:#00f}h1,h2,h3,h4,h5,h6{margin-top:1em}h1,h2,h3,h4,h5,h6,p,pre,blockquote,table,ol,ul,form{margin-bottom:12px}
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%}
.mobile_menu{position:fixed;z-index:100;display:none}.mobile_menu .inner{height:100%;background:#000;overflow-y:scroll}.mobile_menu.active.position_left{box-shadow:2px 0 5px 0 rgba(0,0,0,.5)}.mobile_menu.active.position_top{box-shadow:0 2px 5px 0 rgba(0,0,0,.5)}.mobile_menu.active.position_right{box-shadow:-2px 0 5px 0 rgba(0,0,0,.5)}.mobile_menu.active.position_bottom{box-shadow:0 -2px 5px 0 rgba(0,0,0,.5)}.mobile_menu.active.no_shadow{box-shadow:none!important}.mobile_menu_trigger{display:none}.mobile_menu_wrapper{position:relative;width:100%;overflow:hidden}.mobile_menu_overlay{position:fixed;top:0;left:0;width:100%;height:100vh;z-index:99}.mobile_menu_overlay.background{background:rgba(0,0,0,.5)}.mobile_menu li.submenu_hide>ul{display:none}.mobile_menu li.submenu_show>ul{display:block}body.ie8 .mobile_menu,body.ie8 .mobile_menu_trigger,body.ie9 .mobile_menu,body.ie9 .mobile_menu_trigger{display:none!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}

#colorbox,#cboxOverlay,#cboxWrapper{position:absolute;top:0;left:0;z-index:9999;overflow:hidden;-webkit-transform:translate3d(0,0,0)}#cboxWrapper{max-width:none}#cboxOverlay{position:fixed;width:100%;height:100%}#cboxMiddleLeft,#cboxBottomLeft{clear:left}#cboxContent{position:relative}#cboxLoadedContent{overflow:auto;-webkit-overflow-scrolling:touch}#cboxTitle{margin:0}#cboxLoadingOverlay,#cboxLoadingGraphic{position:absolute;top:0;left:0;width:100%;height:100%}#cboxPrevious,#cboxNext,#cboxClose,#cboxSlideshow{cursor:pointer}.cboxPhoto{float:left;margin:auto;border:0;display:block;max-width:none;-ms-interpolation-mode:bicubic}.cboxIframe{width:100%;height:100%;display:block;border:0;padding:0;margin:0}#colorbox,#cboxContent,#cboxLoadedContent{box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box}#cboxOverlay{background:#000;opacity:.9;filter:alpha(opacity = 90)}#colorbox{outline:0}#cboxContent{margin-top:20px;background:#000}.cboxIframe{background:#fff}#cboxError{padding:50px;border:1px solid #ccc}#cboxLoadedContent{border:5px solid #000;background:#fff}#cboxTitle{position:absolute;top:-20px;left:0;color:#ccc}#cboxCurrent{position:absolute;top:-20px;right:0;color:#ccc}#cboxLoadingGraphic{background:url(../../assets/colorbox/images/loading.gif) no-repeat center center}#cboxPrevious,#cboxNext,#cboxSlideshow,#cboxClose{border:0;padding:0;margin:0;overflow:visible;width:auto;background:0 0}#cboxPrevious:active,#cboxNext:active,#cboxSlideshow:active,#cboxClose:active{outline:0}#cboxSlideshow{position:absolute;top:-20px;right:90px;color:#fff}#cboxPrevious{position:absolute;top:50%;left:5px;margin-top:-32px;background:url(../../assets/colorbox/images/controls.png) no-repeat top left;width:28px;height:65px;text-indent:-9999px}#cboxPrevious:hover{background-position:bottom left}#cboxNext{position:absolute;top:50%;right:5px;margin-top:-32px;background:url(../../assets/colorbox/images/controls.png) no-repeat top right;width:28px;height:65px;text-indent:-9999px}#cboxNext:hover{background-position:bottom right}#cboxClose{position:absolute;top:5px;right:5px;display:block;background:url(../../assets/colorbox/images/controls.png) no-repeat top center;width:38px;height:19px;text-indent:-9999px}#cboxClose:hover{background-position:bottom center}
table.sortable thead th{background-image:url(../../assets/tablesorter/images/default.svg);background-repeat:no-repeat;background-position:center right}table.sortable thead th.tablesorter-headerAsc{background-image:url(../../assets/tablesorter/images/asc.svg)}table.sortable thead th.tablesorter-headerDesc{background-image:url(../../assets/tablesorter/images/desc.svg)}
table.sortable thead th{background-image:url(../../assets/tablesort/images/default.svg);background-repeat:no-repeat;background-position:center right}table.sortable thead th a.pointer{display:block;margin-right:9px;cursor:pointer}table.sortable thead th.unsortable{background-image:none}table.sortable thead th.asc{background-image:url(../../assets/tablesort/images/asc.svg)}table.sortable thead th.desc{background-image:url(../../assets/tablesort/images/desc.svg)}
.content-slider{overflow:hidden;visibility:hidden;position:relative}.slider-wrapper{overflow:hidden;position:relative}.slider-wrapper>*{float:left;width:100%;position:relative}.slider-control{height:30px;position:relative}.slider-control a,.slider-control .slider-menu{position:absolute;top:9px;display:inline-block}.slider-control .slider-prev{left:0}.slider-control .slider-next{right:0}.slider-control .slider-menu{top:0;width:50%;left:50%;margin-left:-25%;font-size:27px;text-align:center}.slider-control .slider-menu b{color:#bbb;cursor:pointer}.slider-control .slider-menu b.active{color:#666}
.cc-head>*:first-child{margin-top:0}.cc-head>*:last-child{margin-bottom:15px}.contao-cookiebar{--ccb-backdrop: rgba(0, 0, 0, .75);--ccb-anim-duration: .5s;--ccb-checked-clr: #399d32;--ccb-checked-bg: #dcf3db;--ccb-unchecked-clr: #9c9b99;--ccb-unchecked-bg: #fff;--ccb-disabled-clr: #c8c7c5;--ccb-disabled-bg: #f4f4f4;--ccb-focus-clr: #00a4f4;position:fixed;inset:0;z-index:9999;display:flex;align-items:var(--ccb-align, center);justify-content:var(--ccb-justify, center);letter-spacing:0;padding:15px;max-height:100dvh;box-sizing:border-box;pointer-events:none;overflow:hidden;color:var(--ccb-clr, #444)}.contao-cookiebar *{box-sizing:border-box}.contao-cookiebar p{color:var(--ccb-text, #868686);line-height:1.4}.contao-cookiebar label{position:relative;display:block;padding:8px 13px 8px 0;line-height:1.2rem}.contao-cookiebar label.group{font-weight:600}.contao-cookiebar input{position:absolute;width:1px;height:1px;outline:0 none;opacity:0}.contao-cookiebar input+label{padding:8px 13px 8px 45px;cursor:pointer}.contao-cookiebar input+label:before,.contao-cookiebar input+label:after{content:"";position:absolute;border-radius:10px}.contao-cookiebar input+label:before{top:7px;left:0;width:35px;height:18px;margin:0;box-sizing:content-box;background:var(--ccb-unchecked-bg);border:1px solid var(--ccb-unchecked-clr);transition:border-color .2s}.contao-cookiebar input+label:after{display:block;top:11px;left:4px;width:12px;height:12px;background:var(--ccb-unchecked-clr);transition:background .2s,margin-left .2s,padding .2s}.contao-cookiebar input+label:active:after{padding-left:5px}.contao-cookiebar input.cc-group-half+label:after{background:linear-gradient(to right, var(--ccb-unchecked-clr) 0%, var(--ccb-unchecked-clr) 50%, var(--ccb-checked-clr) 50%, var(--ccb-checked-clr) 100%)}.contao-cookiebar input:checked+label:after{background:var(--ccb-checked-clr);margin-left:17px}.contao-cookiebar input:checked+label:active:after{margin-left:12px}.contao-cookiebar input:checked+label:before{background:var(--ccb-checked-bg);border-color:var(--ccb-checked-clr)}.contao-cookiebar input:disabled+label{pointer-events:none}.contao-cookiebar input:disabled+label:after{background:var(--ccb-disabled-clr)}.contao-cookiebar input:disabled+label:before{background:var(--ccb-disabled-bg);border-color:var(--ccb-disabled-clr)}.contao-cookiebar input:focus-visible:not(.cc-hide-focus)+label:before{outline:3px dashed var(--ccb-focus-clr);outline-offset:2px}.contao-cookiebar .cc-btn{display:inline-block;cursor:pointer;width:100%;padding:8px 14px;margin-bottom:8px;font-size:15px;outline:0 none;border:1px solid var(--ccb-btn-bdr, #cfcfcf);border-radius:4px;color:var(--ccb-btn-clr, #444);background:var(--ccb-btn-bg, #f5f5f5)}.contao-cookiebar .cc-btn:hover,.contao-cookiebar .cc-btn:focus{background:var(--ccb-btn-bg-hvr, #ececec)}.contao-cookiebar .cc-btn:last-child{margin-bottom:0}.contao-cookiebar .grayscale{--ccb-btn-bg: #f1efef;--ccb-btn-bg-hvr: #ececec}.contao-cookiebar .grayscale .success{--ccb-btn-bg: #fbfbfb;--ccb-btn-bg-hvr: #f7f7f7}.contao-cookiebar .highlight .success{--ccb-btn-bg: #4e9e3e;--ccb-btn-bg-hvr: #4c933f;--ccb-btn-bdr: #3e7830;--ccb-btn-clr: #fff}.cc-focus:not(.cc-hide-focus):focus-visible{outline:3px dashed var(--ccb-focus-clr);outline-offset:-3px}.cc-invisible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;float:left}.cc-inner{display:inline-block;overflow-y:auto;max-height:100%;max-width:100%;padding:23px;border-radius:3px;opacity:0;pointer-events:none;visibility:hidden;font-size:1rem;text-align:left;background:var(--ccb-bg, #fff);box-shadow:var(--ccb-box-shadow, rgba(99, 99, 99, 0.2)) 0 2px 8px 0;animation:var(--ccb-anim, cookiebar-middle-in) var(--ccb-anim-duration) ease-in-out forwards}.cc-group{position:relative;border:1px solid var(--ccb-bdr, #d0d0d0);border-radius:5px;margin-bottom:10px}.cc-cookie-info{font-size:.875rem;background:var(--ccb-info-bg, #fff);border:1px solid var(--ccb-info-bdr, #efefef);padding:10px;border-radius:5px}.cc-cookie-info>div>span{font-weight:600}.cc-cookie-info>div+div{margin-top:5px;word-wrap:break-word}.cc-cookie-info+button.cc-detail-btn-details{margin-top:15px}.cc-cookies{background:var(--ccb-cookies-bg, #fbfbfb);border-radius:0 0 5px 5px}.cc-cookies>p{font-size:.875rem}.cc-cookies>p,.cc-cookies>.cc-cookie{margin:0;padding:15px;border-top:1px solid var(--ccb-cookies-bdr, #fbfbfb)}.cc-cookie label.cookie+*{margin-top:10px}.cc-cookie p{margin:0 0 15px;font-size:.875rem}.cc-cookie-desc p{margin-bottom:0}.cc-footer,.cc-info{text-align:center}.cc-info{margin-top:15px}.cc-info>p{font-size:.875rem}.cc-info>a{display:inline-block;font-size:.813rem;color:var(--ccb-detail-clr, #a2a2a2);text-decoration:none}.cc-info>a:hover{color:var(--ccb-detail-clr-hvr, #717171)}.cc-info>a+a:before{display:inline-block;content:"·";margin-right:5px}.cc-active .cc-inner{opacity:1;pointer-events:auto;visibility:visible}.cc-active.cc-blocked{pointer-events:auto;animation:cookiebar-overlay-in var(--ccb-anim-duration) ease-in-out forwards}.cc-saved.cc-inner{opacity:0;pointer-events:none;visibility:hidden}.cc-saved.cc-blocked{pointer-events:none;animation:cookiebar-overlay-out var(--ccb-anim-duration) ease-in-out forwards}.cc-left{--ccb-justify: flex-start}.cc-right{--ccb-justify: flex-end}.cc-top{--ccb-align: flex-start}.cc-top.cc-active{--ccb-anim: cookiebar-top-in}.cc-top.cc-saved{--ccb-anim: cookiebar-top-out}.cc-middle.cc-active{--ccb-anim: cookiebar-middle-in}.cc-middle.cc-saved{--ccb-anim: cookiebar-middle-out}.cc-bottom{--ccb-align: flex-end}.cc-bottom.cc-active{--ccb-anim: cookiebar-bottom-in}.cc-bottom.cc-saved{--ccb-anim: cookiebar-bottom-out}@media(min-width: 768px){.contao-cookiebar .cc-btn{width:auto;margin-bottom:0}.cc-inner{max-width:var(--ccb-max-width, 750px)}}@media(forced-colors){.contao-cookiebar input+label:after{border:1px solid currentColor}.cc-inner{border:1px solid currentColor}input.cc-group-half+label:after{margin-left:9px}}@media(prefers-reduced-motion){.contao-cookiebar{--ccb-anim-duration: 2s}}@media print{.contao-cookiebar{opacity:0}}@keyframes cookiebar-overlay-in{0%{background:rgba(0,0,0,0)}to{background:var(--ccb-backdrop)}}@keyframes cookiebar-overlay-out{0%{background:var(--ccb-backdrop)}to{background:rgba(0,0,0,0);visibility:hidden}}@keyframes cookiebar-top-in{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}@keyframes cookiebar-top-out{0%{opacity:1;visibility:visible;transform:translateY(0)}to{opacity:0;visibility:hidden;transform:translateY(-100%)}}@keyframes cookiebar-middle-in{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}@keyframes cookiebar-middle-out{0%{opacity:1;visibility:visible;transform:scale(1)}to{opacity:0;visibility:hidden;transform:scale(0)}}@keyframes cookiebar-bottom-in{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes cookiebar-bottom-out{0%{opacity:1;visibility:visible;transform:translateY(0)}to{opacity:0;visibility:hidden;transform:translateY(100%)}}.cc-group{display:flex;flex-wrap:wrap;justify-content:space-between;align-content:center}.cc-group>label{flex-grow:1;margin:5px 0 5px 10px}.cc-cookies{display:none;width:100%}.cc-detail-btn{padding:8px 10px;line-height:1.2rem}.cc-detail-btn-details{text-decoration:underline;padding:0;margin:0 0 10px}.cc-detail-btn,.cc-detail-btn-details{display:inline-block;color:var(--ccb-detail-clr, #a2a2a2);border:0 none;outline:0 none;background:rgba(0,0,0,0);font-size:13px;letter-spacing:0;text-transform:initial;cursor:pointer}.cc-detail-btn span:nth-child(2),.cc-detail-btn-details span:nth-child(2){display:none}.cc-detail-btn.cc-active span:nth-child(1),.cc-detail-btn-details.cc-active span:nth-child(1){display:none}.cc-detail-btn.cc-active span:nth-child(2),.cc-detail-btn-details.cc-active span:nth-child(2){display:inline}.cc-detail-btn:hover,.cc-detail-btn-details:hover{background:rgba(0,0,0,0);color:var(--ccb-detail-clr-hvr, #717171)}
/* ****************************************************************************************************************** */
/* --- fonts -------------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

@font-face {
    font-family: "Lato";
      font-style: normal;
      font-weight: 400;
      src: url("/webfonts/lato-v14-latin-regular.eot"); /* IE9 Compat Modes */
      src: local("Lato Regular"), local("Lato-Regular"),
           url("/webfonts/lato-v14-latin-regular.eot?#iefix") format("embedded-opentype"), /* IE6-IE8 */
           url("/webfonts/lato-v14-latin-regular.woff2") format("woff2"), /* Super Modern Browsers */
           url("/webfonts/lato-v14-latin-regular.woff") format("woff"), /* Modern Browsers */
           url("/webfonts/lato-v14-latin-regular.ttf") format("truetype"), /* Safari, Android, iOS */
           url("/webfonts/lato-v14-latin-regular.svg#Lato") format("svg"); /* Legacy iOS */
}
@font-face {
    font-family: "Playfair Display";
      font-style: normal;
      font-weight: 400;
      src: url("/webfonts/playfair-display-v13-latin-regular.eot"); /* IE9 Compat Modes */
      src: local("Playfair Display Regular"), local("PlayfairDisplay-Regular"),
           url("/webfonts/playfair-display-v13-latin-regular.eot?#iefix") format("embedded-opentype"), /* IE6-IE8 */
           url("/webfonts/playfair-display-v13-latin-regular.woff2") format("woff2"), /* Super Modern Browsers */
           url("/webfonts/playfair-display-v13-latin-regular.woff") format("woff"), /* Modern Browsers */
           url("/webfonts/playfair-display-v13-latin-regular.ttf") format("truetype"), /* Safari, Android, iOS */
           url("/webfonts/playfair-display-v13-latin-regular.svg#PlayfairDisplay") format("svg"); /* Legacy iOS */
}
@font-face {
    font-family: "Spectral";
      font-style: normal;
      font-weight: 400;
      src: url("/webfonts/spectral-v4-latin-regular.eot"); /* IE9 Compat Modes */
      src: local("Spectral Regular"), local("Spectral-Regular"),
           url("/webfonts/spectral-v4-latin-regular.eot?#iefix") format("embedded-opentype"), /* IE6-IE8 */
           url("/webfonts/spectral-v4-latin-regular.woff2") format("woff2"), /* Super Modern Browsers */
           url("/webfonts/spectral-v4-latin-regular.woff") format("woff"), /* Modern Browsers */
           url("/webfonts/spectral-v4-latin-regular.ttf") format("truetype"), /* Safari, Android, iOS */
           url("/webfonts/spectral-v4-latin-regular.svg#Spectral") format("svg"); /* Legacy iOS */
}
@font-face {
    font-family: "Spectral";
      font-style: italic;
      font-weight: 400;
      src: url("/webfonts/spectral-v4-latin-italic.eot"); /* IE9 Compat Modes */
      src: local("Spectral Italic"), local("Spectral-Italic"),
           url("/webfonts/spectral-v4-latin-italic.eot?#iefix") format("embedded-opentype"), /* IE6-IE8 */
           url("/webfonts/spectral-v4-latin-italic.woff2") format("woff2"), /* Super Modern Browsers */
           url("/webfonts/spectral-v4-latin-italic.woff") format("woff"), /* Modern Browsers */
           url("/webfonts/spectral-v4-latin-italic.ttf") format("truetype"), /* Safari, Android, iOS */
           url("/webfonts/spectral-v4-latin-italic.svg#Spectral") format("svg"); /* Legacy iOS */
}
@font-face {
    font-family: "Spectral";
      font-style: normal;
      font-weight: 500;
      src: url("/webfonts/spectral-v4-latin-500.eot"); /* IE9 Compat Modes */
      src: local("Spectral Medium"), local("Spectral-Medium"),
           url("/webfonts/spectral-v4-latin-500.eot?#iefix") format("embedded-opentype"), /* IE6-IE8 */
           url("/webfonts/spectral-v4-latin-500.woff2") format("woff2"), /* Super Modern Browsers */
           url("/webfonts/spectral-v4-latin-500.woff") format("woff"), /* Modern Browsers */
           url("/webfonts/spectral-v4-latin-500.ttf") format("truetype"), /* Safari, Android, iOS */
           url("/webfonts/spectral-v4-latin-500.svg#Spectral") format("svg"); /* Legacy iOS */
}
@font-face {
    font-family: "Spectral";
      font-style: normal;
      font-weight: 600;
      src: url("/webfonts/spectral-v4-latin-600.eot"); /* IE9 Compat Modes */
      src: local("Spectral SemiBold"), local("Spectral-SemiBold"),
           url("/webfonts/spectral-v4-latin-600.eot?#iefix") format("embedded-opentype"), /* IE6-IE8 */
           url("/webfonts/spectral-v4-latin-600.woff2") format("woff2"), /* Super Modern Browsers */
           url("/webfonts/spectral-v4-latin-600.woff") format("woff"), /* Modern Browsers */
           url("/webfonts/spectral-v4-latin-600.ttf") format("truetype"), /* Safari, Android, iOS */
           url("/webfonts/spectral-v4-latin-600.svg#Spectral") format("svg"); /* Legacy iOS */
}
@font-face {
    font-family: "Spectral";
      font-style: normal;
      font-weight: 700;
      src: url("/webfonts/spectral-v4-latin-700.eot"); /* IE9 Compat Modes */
      src: local("Spectral Bold"), local("Spectral-Bold"),
           url("/webfonts/spectral-v4-latin-700.eot?#iefix") format("embedded-opentype"), /* IE6-IE8 */
           url("/webfonts/spectral-v4-latin-700.woff2") format("woff2"), /* Super Modern Browsers */
           url("/webfonts/spectral-v4-latin-700.woff") format("woff"), /* Modern Browsers */
           url("/webfonts/spectral-v4-latin-700.ttf") format("truetype"), /* Safari, Android, iOS */
           url("/webfonts/spectral-v4-latin-700.svg#Spectral") format("svg"); /* Legacy iOS */
}
@font-face {
    font-family: "Work Sans";
      font-style: normal;
      font-weight: 300;
      src: url("/webfonts/work-sans-v3-latin-300.eot"); /* IE9 Compat Modes */
      src: local("Work Sans Light"), local("WorkSans-Light"),
           url("/webfonts/work-sans-v3-latin-300.eot?#iefix") format("embedded-opentype"), /* IE6-IE8 */
           url("/webfonts/work-sans-v3-latin-300.woff2") format("woff2"), /* Super Modern Browsers */
           url("/webfonts/work-sans-v3-latin-300.woff") format("woff"), /* Modern Browsers */
           url("/webfonts/work-sans-v3-latin-300.ttf") format("truetype"), /* Safari, Android, iOS */
           url("/webfonts/work-sans-v3-latin-300.svg#WorkSans") format("svg"); /* Legacy iOS */
}
@font-face {
    font-family: "Work Sans";
      font-style: normal;
      font-weight: 400;
      src: url("/webfonts/work-sans-v3-latin-regular.eot"); /* IE9 Compat Modes */
      src: local("Work Sans"), local("WorkSans-Regular"),
           url("/webfonts/work-sans-v3-latin-regular.eot?#iefix") format("embedded-opentype"), /* IE6-IE8 */
           url("/webfonts/work-sans-v3-latin-regular.woff2") format("woff2"), /* Super Modern Browsers */
           url("/webfonts/work-sans-v3-latin-regular.woff") format("woff"), /* Modern Browsers */
           url("/webfonts/work-sans-v3-latin-regular.ttf") format("truetype"), /* Safari, Android, iOS */
           url("/webfonts/work-sans-v3-latin-regular.svg#WorkSans") format("svg"); /* Legacy iOS */
}
@font-face {
    font-family: "Work Sans";
      font-style: normal;
      font-weight: 500;
      src: url("/webfonts/work-sans-v3-latin-500.eot"); /* IE9 Compat Modes */
      src: local("Work Sans Medium"), local("WorkSans-Medium"),
           url("/webfonts/work-sans-v3-latin-500.eot?#iefix") format("embedded-opentype"), /* IE6-IE8 */
           url("/webfonts/work-sans-v3-latin-500.woff2") format("woff2"), /* Super Modern Browsers */
           url("/webfonts/work-sans-v3-latin-500.woff") format("woff"), /* Modern Browsers */
           url("/webfonts/work-sans-v3-latin-500.ttf") format("truetype"), /* Safari, Android, iOS */
           url("/webfonts/work-sans-v3-latin-500.svg#WorkSans") format("svg"); /* Legacy iOS */
}
@font-face {
    font-family: "Work Sans";
      font-style: normal;
      font-weight: 600;
      src: url("/webfonts/work-sans-v3-latin-600.eot"); /* IE9 Compat Modes */
      src: local("Work Sans SemiBold"), local("WorkSans-SemiBold"),
           url("/webfonts/work-sans-v3-latin-600.eot?#iefix") format("embedded-opentype"), /* IE6-IE8 */
           url("/webfonts/work-sans-v3-latin-600.woff2") format("woff2"), /* Super Modern Browsers */
           url("/webfonts/work-sans-v3-latin-600.woff") format("woff"), /* Modern Browsers */
           url("/webfonts/work-sans-v3-latin-600.ttf") format("truetype"), /* Safari, Android, iOS */
           url("/webfonts/work-sans-v3-latin-600.svg#WorkSans") format("svg"); /* Legacy iOS */
}

/* ****************************************************************************************************************** */
/* --- Variablen ---------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

:root {
  --ka-font-color-gold: #8c6e4a;
  --ka-fonthover-color-gold: #795f3f;
  --ka-font-color-gold2: #efae5f;

  --ka-bk-lightgrey:#f5f5f5;
  --ka-bk-middlegrey:#e5e5e5;
  --ka-bk-darkgrey:#888;

  --ka_font-spectral: "Spectral", Times New Roman;

}

/* ****************************************************************************************************************** */
/* --- Basics ------------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */


/* Verhindert das Zucken des Headerslider */
html {
    overflow-y: scroll;
}
body {
  /*
  background-color: #f4f0ea;
  background-image: repeating-linear-gradient(30deg, transparent, transparent 4px, rgba(255,255,255,.5) 0px, rgba(255,255,255,.5) 7px);
  */
}

body.stripes {
  /*
  background-image: linear-gradient(150deg, #f2ede5 36.36%, #fdfcfb 36.36%, #fdfcfb 50%, #f2ede5 50%, #f2ede5 86.36%, #fdfcfb 86.36%, #fdfcfb 100%);
  background-size: 44.00px 25.40px;
  background-image: linear-gradient(150deg, #f2ede5 40.63%, #fdfcfb 40.63%, #fdfcfb 50%, #f2ede5 50%, #f2ede5 90.63%, #fdfcfb 90.63%, #fdfcfb 100%);
  background-size: 32.00px 18.48px;
  background-image: linear-gradient(150deg, #f2ede5 41.67%, #fdfcfb 41.67%, #fdfcfb 50%, #f2ede5 50%, #f2ede5 91.67%, #fdfcfb 91.67%, #fdfcfb 100%);
  background-size: 24.00px 13.86px;
  */
  background-image: repeating-linear-gradient(150deg, #f3efe8 , #f3efe8 4px, #f9f7f3 4px, #f9f7f3 6px);

}

#container {
    max-width:100%;
    overflow:hidden;
    margin:0 auto;
}
#main {
  margin-top: 0 !important; /* BG 310524 */
}
#main .inside {
    padding:0;
}
* {
    box-sizing: border-box;
}
a,
b,
body,
cite,
div,
em,
i,
label,
li,
ol,
p,
strong,
td,
th,
u,
ul,
fieldset,
form,
input,
optgroup,
select,
textarea {
    font:16px/1.5em Spectral,Times New Roman;
    color:#333;
    letter-spacing:.007em;
    word-spacing:0;
}
strong,
.bold {
    font-weight:700;
}
h1,
h2,
h3,
h4,
h5,
h6 {
    margin-top:0;
    margin-bottom:0;
    padding-top:0;
    padding-bottom:0;
    font-family:Work Sans,PlayFair,Arial;
    text-decoration:none;
    color:#333;
    letter-spacing:0px;
    hyphens: none;
}
h1 {
    display: inline-block;
    margin-bottom:30px;
    padding:0;
    font-size:50px;
    line-height:1.2em;
    color:#333;
    text-transform:uppercase;
    letter-spacing:.1em;
    font-weight:300;
}
h1.desktop {
    max-width:66%;
}
h1.right {
    width:100%;
    text-align:right;
}
.center h1 {
    width:100%;
}
h2 {
    display: inline-block;
    margin-bottom:30px;
    padding:0;
    font-size:42px;
    line-height:1.2em;
    color:#333;
    text-transform:uppercase;
    letter-spacing:.1em;
    font-weight:300;
}
h2.desktop {
    max-width:66%;
}
h2.right {
    width:100%;
    text-align:right;
}
.center h1 {
    width:100%;
}
h3 {
    margin-bottom:40px;
    font-size:30px;
    line-height:1.0em;
    color:#333;
    text-transform:uppercase;
    word-spacing:0;
}
.center h3 {
    width:100%;
}
h4 {
    margin-bottom:15px;
    font:18px Work Sans,Lato,Arial;
    font-weight:normal;
    color:var(--ka-font-color-gold);
    text-transform:uppercase;
    letter-spacing:.15em;
}
h4.right {
    width:100%;
    text-align:right;
}
h5 {
    margin-bottom:25px;
    font:15px Work Sans,Lato,Arial;
    color:var(--ka-font-color-gold);
    text-transform:uppercase;
    letter-spacing:.15em;
    font-weight:500;
}
h6 {
  margin-bottom:60px;
  font:24px Spectral,Times New Roman;
  font-style:italic;
  color:var(--ka-font-color-gold);
}
h6.right {
  width:100%;
  text-align:right;
}
.center h6 {
  width:100%;
}


h1.gold,
h2.gold,
h3.gold,
h4.gold,
h5.gold,
h6.gold {
  color:var(--ka-font-color-gold) !important;
}

hr {
    width:100%;
    height:1px;
    margin-bottom:20px;
    background-color:#d9dadb;
    border:0;
}
figcaption.caption {
    line-height:1.2em;
}
a.cta {
    width:70px;
    height:70px;
    display:block;
    text-indent:-9999em;
}
a,
a:visited {
    text-decoration:none;
    color:black;
}
a:hover {
    color:var(--ka-font-color-gold);
}
.invisible {
    width:0;
    height:0;
    display:block;
    visibility:hidden;
}

/* Sonst laufen die Image-Boxen wegen 1.5 em über */
div.image_container {
    font-size:1px;
    line-height:1px;
}
a img {
    border:0;
    outline:none;
}
a:focus {
    outline:none;
}
a.button {
    display:inline-block;
    margin-top:10px;
    padding:5px 10px;
    /*background-color:#0076bd;*/
    text-decoration:none;
    color:white;
}
a.button-hover {
    background-color:#f0a20a;
    color:white;
}
a.readmore {
    display:block;
    margin-top:15px;
    padding-left:15px;
    background-position:center left;
    background-repeat:no-repeat;
    /*color:#0076bd;*/
    background-image:url('../../files/intern/img/li_arrow_active.png');
}
.ce_headline {
    padding-left:0;
}
#main ul {
    padding-left:0;
}
ul.arrow-links {
    list-style:none;
}
ul.arrow-links li a {
    padding-left:16px;
    background-position:left center;
    background-repeat:no-repeat;
    font-size:12px;
    color:#939494;
    background-image:url('../../files/intern/img/li_arrow.png');
}
ul.arrow-links li a:hover {
    color:#0076bd;
}
#main .ce_text ul li,
section.kaslider2 .accordion ul li,
section.kaslider2 .textblock .text ul li {
    margin-left:20px;
    padding-left:0;
    list-style-type:none;
    list-style-image:url("/files/intern/common/fairmont-hamburg-Punkt.png");
}
#main nav.nav_line ul li {
    list-style-type:none;
    list-style-image:none;
}
.linebottom li {
    width:calc(100%-20px);
    padding-top:3px;
    padding-bottom:3px;
    border-bottom:1px solid #f1f1f1;
}
.ce_text p img {
    height:auto;
    max-width:100%;
}
.pagelink {
    margin-top:20px;
    text-decoration:none;
}
.pagelink-image {
    width:285px;
    height:285;
    max-width:100%;
    max-height:100;
    margin-bottom:10px;
}
.pagelink-image-hover {
}
.pagelink-label {
    padding:3px;
    text-align:center;
    background-color:#0076bd;
    color:white;
    font-weight:400;
}
.pagelink-label-hover {
    background-color:#f0a20a;
    color:white;
}
.image_container {
    margin:0;
    padding:0;
}
img {
    margin:0;
    padding:0;
}
.ce_gallery ul li,
#main .ce_gallery ul li {
    margin:0 30px 0 0;
    padding:0;
    list-style-type:none;
    width:calc(25% - 30px);
}
.ce_gallery div.title {
    display:none;
}
.right {
    display:block;
    text-align:right;
}
#hvjline {
    height:2px;
    display:block;
    margin-top:30px;
    margin-bottom:30px;
    border-bottom:1px solid #b3b3b3;
}
iframe {
    position:relative;
    z-index:1;
}
.column {
    overflow:hidden;
    float:left;
    display:inline;
    margin:0 5px;
}
.row {
    overflow:hidden;
}
.double-col {
    width:310px;
}
.tripple-col {
    width:470px;
}
.regular-col {
    width:150px;
}
.half-col {
    width:70px;
}
.clear {
    height:0px;
    float:none;
    clear:both;
    display:block;
}
#clear {
    float:none;
    clear:both;
    margin-bottom:30px;
}
.width100 {
    width:100%;
}
.dist25 {
    display:block;
    float: none;
    clear: both;
    margin-top: 25px !important;
    margin-bottom: 0px !important;
}
.dist30 {
    display:block;
    margin-top: 30px !important;
    margin-bottom: 0px !important;
}
.dist50 {
    display:block;
    margin-top: 50px !important;
    margin-bottom: 0px !important;
}
.dist100 {
    display:block;
    margin-top: 100px !important;
    margin-bottom: 0px !important;
}
.dist150 {
    display:block;
    margin-top: 150px !important;
    margin-bottom: 0px !important;
}
.col100 {
    width:100%;
    clear:both;
    margin-right:0;
    margin-left:0;
}
.col75 {
    float:left;
    margin-right:0;
    margin-left:0;
    width:calc(75% - 0px);
}
.col75m {
    float:left;
    margin-right:50px;
    margin-left:0;
    width:calc(75% - 50px);
}
.col66 {
    float:left;
    margin-right:0;
    margin-left:0;
    width:calc(66.6% - 0px);
}
.col66m {
    float:left;
    margin-right:30px;
    width:calc(66.6% - 30px);
}
.col66mr {
    float:left;
    margin-left:30px;
    width:calc(66.6% - 30px);
}
.col50 {
    float:left;
    margin-right:0;
    margin-left:0;
    width:calc(50% - 0px);
}
.col50m {
    float:left;
    margin-right:30px;
    width:calc(50% - 30px);
}
.col50m2 {
    float:left;
    margin-right:15px;
    width:calc(50% - 15px);
}
.col50mr2 {
    float:left;
    margin-left:15px;
    width:calc(50% - 15px);
}

.col50mr {
    min-height:150px;
    overflow:hidden;
    float:left;
    margin-right:25px;
    margin-bottom:25px;
    width:calc(50% - 25px);
}

.col33 {
    float:left;
    margin-right:00px;
    width:calc(33.3% - 00px);
}
.col30 {
    float:left;
    margin-right:0;
    margin-left:0;
    width:calc(30% - 0px);
}
.col33m {
  float:left;
  margin-right:30px;
  width:calc(33.3% - 30px);
}
.col33mr {
  float:left;
  margin-left:30px;
  width:calc(33.3% - 30px);
}

.col20 {
    float:left;
    margin-right:0;
    margin-left:0;
    width:calc(20% - 0px);
}
.col20tab {
    float:left;
    margin-right:30px;
    margin-bottom:30px;
    padding-bottom:3px;
    width:calc(20% - 30px);
}
.col25 {
    min-height:150px;
    overflow:hidden;
    float:left;
    margin-right:25px;
    margin-bottom:25px;
    width:calc(25% - 25px);
}
.col25tab {
    float:left;
    margin-right:30px;
    margin-bottom:30px;
    padding-bottom:3px;
    width:calc(25% - 30px);
}
.col25-2 {
    height:550px;
    overflow:hidden;
    float:left;
    margin-right:25px;
    margin-bottom:25px;
    width:calc(50% - 25px);
}
.col25-3 {
    height:550px;
    overflow:hidden;
    float:left;
    margin-right:25px;
    margin-bottom:25px;
    width:calc(75% - 25px);
}
.col20m {
    float:left;
    margin-right:30px;
    width:calc(20% - 30px);
}
.col25 h6 {
    width:90%;
    margin-bottom:0;
    padding-bottom:2px;
    border-bottom:1px solid #d1cfcf;
    font-size:1em;
    line-height:1.2em;
}
.col15,
.col15m {
    float:left;
    margin-right:30px;
    width:calc(20% - 30px);
}
.col12,
.col12m {
    float:left;
    margin-right:30px;
    width:calc(12.5% - 30px);
}
.col300pxm {
    width:300px;
    float:left;
    margin-right:50px;
    margin-left:0;
}
.colR300pxm {
    float:left;
    margin-right:0;
    margin-left:0;
    width:calc(100% - 350px);
}
.col400pxm {
    width:400px;
    float:left;
    margin-right:50px;
    margin-left:0;
}
.colR400pxm {
    float:left;
    margin-right:0;
    margin-left:0;
    width:calc(100% - 450px);
}
div.paddingtop20 {
    padding-top:20px;
    padding-top: 20px !important;
}
div.paddingright60 {
    padding-right:60px;
    padding-right: 60px !important;
}
.cleardist100 {
    float:none;
    clear:none;
    margin-top:100px;
}
.boxgrey {
    width:100%;
    display:inline-block;
    margin-top:0;
    margin-bottom:0;
    padding-top:120px;
    padding-bottom:120px;
    background-color:#f5f5f5;
}
.boxgrey.small {
    padding-top:70px;
    padding-bottom:70px;
}

.boxstripes {
  background-image: repeating-linear-gradient(150deg, #f3efe8 , #f3efe8 4px, #f9f7f3 4px, #f9f7f3 6px);
}


.flexcontainer {
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  flex-direction: row;
}

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

.flexcontainer.space-between .ce_player.col20m {
  display: flex;
  flex-direction: column;
  width: calc(20% - 30px);
  margin-right: 0px;
}
.flexcontainer.space-between .ce_player.col25m {
  display: flex;
  flex-direction: column;
  width: calc(25% - 30px);
  margin-right: 0px;
}
.flexcontainer.space-between .ce_player.col25m h4 {
  min-height: 50px;
}

.flexbox {
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
}
div.img25.flexbox .image,
div.img50.flexbox .image {
    width:100%;
    height:100%;
}


.grid {
  display:grid;
}

.grid.frx {
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-column-gap: 40px;
  grid-row-gap: 40px;
}

.grid.fr2 {
  grid-template-columns: 1fr 1fr;
  grid-column-gap: 40px;
  grid-row-gap: 40px;
}
.grid.fr3 {
  grid-template-columns: 1fr 1fr 1fr;
  grid-column-gap: 40px;
  grid-row-gap: 40px;
}
.grid.fr4 {
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-column-gap: 40px;
  grid-row-gap: 40px;
}
.grid.fr5 {
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
  grid-column-gap: 40px;
  grid-row-gap: 40px;
}
.grid.fr6 {
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
  grid-column-gap: 40px;
  grid-row-gap: 40px;
}
.grid.fr21 {
  grid-template-columns: 2fr 1fr;
  grid-column-gap: 40px;
  grid-row-gap: 40px;
}
.grid.fr12 {
  grid-template-columns: 1fr 2fr;
  grid-column-gap: 40px;
  grid-row-gap: 40px;
}
.grid.fr211 {
  grid-template-columns: 2fr 1fr 1fr;
  grid-column-gap: 40px;
  grid-row-gap: 40px;
}
.grid.fr13 {
  grid-template-columns: 1fr 3fr;
  grid-column-gap: 40px;
  grid-row-gap: 40px;
}

.grid.fr25252525 {
  grid-template-columns: 25% 25% 25% 25%;
  grid-column-gap: 40px;
  grid-row-gap: 40px;
}
.grid.fr502525 {
  grid-template-columns: 50% 1fr 1fr;
  grid-column-gap: 40px;
  grid-row-gap: 40px;
}

.grid.fr121 {
  grid-template-columns: 1fr 2fr 1fr;
  grid-column-gap: 40px;
  grid-row-gap: 40px;
}
.grid.fr112 {
  grid-template-columns: 1fr 1fr 2fr;
  grid-column-gap: 40px;
  grid-row-gap: 40px;
}


.grid.gapcol {
  grid-column-gap: 30px;
  grid-row-gap: 30px;
}
.grid.gapcol3 {
  grid-column-gap: 30px;
  grid-row-gap: 30px;
}
.grid.gapcol2 {
  grid-column-gap: 30px;
  grid-row-gap: 30px;
}

.grid.gap0 {
  grid-column-gap: 0px;
  grid-row-gap: 0px;
}
.grid.gap10 {
  grid-column-gap: 10px;
  grid-row-gap: 10px;
}
.grid.gap20 {
  grid-column-gap: 20px;
  grid-row-gap: 20px;
}
.grid.gap30 {
  grid-column-gap: 30px;
  grid-row-gap: 30px;
}
.grid.gap40 {
  grid-column-gap: 40px;
  grid-row-gap: 40px;
}
.grid.gap60 {
  grid-column-gap: 60px;
  grid-row-gap: 60px;
}
.grid.gap80 {
  grid-column-gap: 80px;
  grid-row-gap: 40px;
}

.limit800,
.limit800int {
    max-width:800px;
    margin-right:auto;
    margin-left:auto;
}

.limit1000,
.limit1000int {
    max-width:1000px;
    margin-right:auto;
    margin-left:auto;
}
.limit1200,
.limit1200int {
    max-width:1200px;
    margin-right:auto;
    margin-left:auto;
}
.center {
    width:100%;
    text-align:center;
}

.height600 {
  height: 600px !important;
}
.height800 {
  height: 800px !important;
}

.ce_youtube .video_container {
    position: relative;
    overflow: hidden;
    width: 100%;
    padding-top: 56.25%; /* 16:9 Aspect Ratio (divide 9 by 16 = 0.5625) */
}
.ce_youtube .video_container iframe {
     position: absolute;
     top: 0; left: 0; right: 0; bottom: 0;
     width: 100% !important;
     /*height: 100% !important;*/
}

.ce_youtube h5 {
    margin-bottom:10px;
    color:#000;
    text-transform:none;
    letter-spacing:0px;
}


.center .ce_youtube.block {
    width:800px;
    max-width:100%;
    margin-right:auto;
    margin-left:auto;
}
.center .ce_youtube.col50m.block {
    max-width:800px;
    float:left;
    clear: none;
    margin-right:30px;
    width:calc(50%  - 30px);
}

/*
.ce_youtube {
 position: relative;
 padding-bottom: 56.25%;
 width: 100%;
 height: auto;
}

.ce_youtube iframe {
 position: absolute;
 top: 0; left: 0; right: 0; bottom: 0;
 width: 100% !important;
 height: 100% !important;
}

/*
.mejs-mediaelement video,
.mejs-mediaelement .me-plugin,
.mejs-mediaelement embed {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100% !important;
    max-width: 100%;
}
*/

.lalinks {
    width:100%;
    float:none;
    clear:both;
    margin-right:0;
    margin-left:0;
    padding-right:0;
    padding-left:0;
    1word-wrap: normal;
    1white-space: pre-wrap;
}
#cboxOverlay {
    background:#fff;
    opacity: 0.1 !important;
    filter: alpha(opacity = 10);
}
#cboxLoadedContent {
    border:0px solid;
}
#cboxClose {
    width:20px;
    height:21px;
    background-image:url("/files/intern/common/fairmont-hamburg-colorbox-close.png");
    background-position: bottom center;
}
#cboxCurrent {
    text-indent: -9999px;
}
#cboxTitle {
    height:36px;
    left:0;
    top:0;
    position:absolute;
    display:block;
    padding:8px 15px;
    background-color:rgba(0,0,0,.5);
    font:16px Work Sans,Lato,Arial;
    color:#fff;
}
#cboxPrevious {
    width:30px;
    height:50px;
    margin-left:8px;
    background-image:url("/files/intern/common/fairmont-hamburg-Pfeil-links-01.png");
}
#cboxNext {
    width:30px;
    height:50px;
    margin-right:8px;
    background-image:url("/files/intern/common/fairmont-hamburg-Pfeil-rechts-01.png");
}
.pagelink-label {
    padding:3px;
    text-align:center;
    background-color:#0076bd;
    color:#FFF;
}
.pagelink-label:hover {
    background-color:#f0a20a;
}


.mod_subscribe.block {
    overflow:visible;
    display:block;
}
.msry_theme_standard .masonry_gallery {
    margin-right:30px;
    margin-bottom:30px;
    padding:10px;
    background-color:#fff;
    width:calc(25% - 30px);
}
.ce_accordion {
  width:100%;
}
.toggler {
    width:100%;
    margin-top:12px;
    margin-bottom:12px;
    padding-top:4px;
    padding-bottom:4px;
    padding-left:28px;
    background-image:url("/files/intern/common/Hotel-Vier-Jahreszeiten-hamburg-plus.png");
    background-position:left center;
    background-repeat:no-repeat;
    border-bottom:1px solid var(--ka-font-color-gold);
    font:18px Work Sans,Lato,Arial;
    color:var(--ka-font-color-gold);
    text-transform:uppercase;
    letter-spacing:.15em;
    font-weight:normal;
}
.toggler.active {
    background-image:url("/files/intern/common/Hotel-Vier-Jahreszeiten-hamburg-minus.png");
    background-position:left center;
    background-repeat:no-repeat;
}
.accordion {
  margin: 0 0 10px 0;
}

.col50.map {
    height:380px;
    overflow:hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* ****************************************************************************************************************** */
/* --- Cookie-Bar ------ -------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

div.cookiebar {
    padding-top:3px;
    padding-bottom:3px;
    background-color:#000;
    z-index:998;
}
.cookiebar__message,
.cookiebar__text {
    margin-right:10px;
    margin-left:0;
    font-size:13px;
}
div.cookiebar__text {
    font-size:15px;
    line-height:17px;
    color:#FFF;
}
a.cookiebar__link,
div.cookiebar a,
div.cookiebar a:link {
    margin-right:10px;
    font-size:13px;
    text-decoration:underline;
    color:#FFF;
}
button.cookiebar__button {
    margin-top:3px;
    margin-bottom:3px;
    padding:5px 15px;
    background-color:var(--ka-font-color-gold);
    font-family:Work Sans,Lato,Arial;
    font-weight:normal;
    color:#FFF;
    text-transform:uppercase;
    letter-spacing:.1em;
}
button.cookiebar__button:hover {
    background-color:var(--ka-font-color-gold);
}


/* ****************************************************************************************************************** */
/* --- SEO ------------- -------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

#seo .toggler,
#seo .toggler.active {
    margin-top:0;
    margin-bottom:0;
    border-bottom:0px;
    font:15px/1.4em Spectral,Times New Roman;
    color:#333;
    text-transform:none;
    background-image: none !important;
    cursor: pointer;
}
#seo .toggler.active {
    display:none;
}


/* ****************************************************************************************************************** */
/* --- header ---------- -------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

header {
    width:100%;
    /*height:95px;*/
    left:0;
    top:0;
    position:fixed;
    overflow:visible;
    display:block;
    margin-top:0;
    margin-left:0;
    z-index:950;
}
header .inside {
    width:100%;
    height:100%;
    margin:0;
    padding:0;
}
#menuband {
    width:100%;
    height:95px;
    display:block;
    margin-top:0;
    margin-left:0;
    background-color:rgba(51,51,51,.5);
    z-index:950;
}
.MenubandSmall {
    background-color: rgba(51,51,51,0.9) !important;
    -webkit-transition: all 1s ease-in-out;
        -moz-transition: all 1s ease-in-out;
        -o-transition: all 1s ease-in-out;
        transition: all 1s ease-in-out;
}
.MenubandBig {
    background-color: rgba(51,51,51,.5) !important;
    -webkit-transition: all 1s ease-in-out;
        -moz-transition: all 1s ease-in-out;
        -o-transition: all 1s ease-in-out;
        transition: all 1s ease-in-out;
}
#hvjlogo {
    padding:0;
    background-color:#fff;
    -webkit-box-shadow:5px 5px 5px 1px rgba(158,158,158,.15);
    box-shadow:5px 5px 5px 1px rgba(158,158,158,.15);
    z-index:999;
    transition-property: width, left;
    left:calc(50% - 44px);
    width:101px;
    top:0px;
    position:absolute;
        -webkit-transition: all 1s ease-in-out;
        -moz-transition: all 1s ease-in-out;
        -o-transition: all 1s ease-in-out;
        transition: all 1s ease-in-out;
}
#hvjlogo a {
    left:0;
    top:0;
    position:absolute;
    margin-top:0;
    margin-bottom:0;
    padding-right:0;
    padding-left:0;
    font-size:1px;
    line-height:1px;
}
header .socials {
    top:35px;
    position:absolute;
    display:block;
    z-index:951;
}
header .socials span {
    float:left;
    display:block;
    margin-left:40px;
}
header .socials span span,
header .socials a {
    margin:0;
    padding:0;
    font:18px/18px Work Sans,Lato,Arial;
    color:#fff;
}
header .socials nav.mod_changelanguage ul li {
    border-color:#fff;
}
div.booknow {
    right:20px;
    top:28px;
    position:absolute;
    display:block;
    border:1px solid #fff;
    z-index:951;
}
div.booknow a {
    width:100%;
    height:100%;
    display:block;
    padding:8px 30px;
    vertical-align:middle;
    text-align:center;
    font:20px Work Sans,Lato,Arial;
    color:#FFF;
    letter-spacing:.15em;
    font-weight:600;
}
header div.telefon {
    width:221px;
    right:10px;
    top:69px;
    position:absolute;
    z-index:951;
}
header div.telefon p,
header div.telefon a {
    width:100%;
    display:block;
    text-align:center;
    font:14px Work Sans,Lato,Arial;
    color:#FFF;
    font-weight:600;
}
.menu,
.searchbutton,
#navmobil {
    overflow:hidden;
    float:right;
    margin-top:17px;
    margin-left:20px;
}
.menu div.text,
#navmobil div.label {
    float:left;
    margin-top:0;
    margin-right:8px;
    padding-top:2px;
    font-size:18px;
    line-height:18px;
    color:#0076bd;
}
.menu div.image {
    float:left;
}
#banner,
#bannervideo,
#bannerimage {
  position: relative;
  width:100%;
  height:100%;
  max-height:50%;
  overflow:hidden;
  clear:both;
  margin-top:00px;
}
#bannerimage img,
#bannerimage video {
    width:100%;
}


body.videoheight100 #bannervideo,
body.videoheight100 #bannervideo2,
body.videoheight100 #bannervideo2 video,
body.videoheight100 #banner .video_container video,
body.videoheight100 .previewvideo,
body.videoheight100 .previewvideo .prev-video-container {
  height: calc(100vh - 0px) !important;
  min-height: calc(100vh - 0px) !important;
  max-height: calc(100vh - 0px) !important;
}
body.videoheight100 #banner .video_container video {
    object-fit: cover;
}

#bannerimage .imgcopyright {
  position: absolute;
  top:auto;
  left: auto;
  right: 20px;
  bottom: 10px;
}
#bannerimage .imgcopyright.left {
  left: 20px;
  right: auto;
}
#bannerimage .imgcopyright * {
  color:#FFF;

}
#banner .inside,
#banner2 {
  display: inline;
  display: block;
  overflow:hidden;
  max-height:calc(100vh - 0px) !important;
  min-height: calc(50vh - 0px) !important;
}
#banner2 > .mod_article {
  height: 50%;
}
#bannervideo .inside {
  overflow:hidden;
  max-height:calc(100vh - 0px) !important;
}
#banner .video_container video,
#bannervideo .video_container video {
  width: 100%;
}

#banner .videobtn,
#bannervideo .videobtn {
  /*display: none;*/
}

.home #bannervideo .videobtn {
  display: flex;
  position: absolute;
  top: calc(50% + 110px);
  left: 50%;
  transform: translateX(-50%);
}
#bannervideo .videobtn a {
  display:inline-block;
  padding:8px 20px;
  text-align:center;
  font:15px/15px Work Sans,Lato,Arial;
  background-color:var(--ka-font-color-gold);
  color:#FFF;
  text-transform:uppercase;
  letter-spacing:.1em;
  pointer-events: auto;
}

#Banner .image,
#bannerimage .image {
    width:100%;
    z-index:901;
}
#bannersmall {
}

#headerslider {
  position:absolute;
  top: 0;
  bottom:0;
  left:0;
  right:0;
  width:100%;
  height:100%;
  display: flex;
  padding:0;
  text-align:center;
  pointer-events: none;
  z-index:903;
}
#headerslider .title {
  position:absolute;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  top:50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 1000px;
  max-width: 90%;
}
#headerslider .title .headline {
  font:64px Work Sans,Lato,Arial;
  color:#FFF;
  text-transform:uppercase;
  letter-spacing:.15em;
}
#headerslider .title .slogan {
  font:32px Spectral,PlayFair,Arial;
  font-style:italic;
  color:#FFF;
  letter-spacing:.05em;
}
#headerslider .button {
  display: flex;
  position: relative;
  margin: 30px 0 0 0;
  padding: 0;
  white-space: nowrap;
  justify-content: center;
  align-items: center;
  text-align: center;
}

#headerslider .button a {
  display: inline-block;
  margin:0;
  padding: 8px 20px 6px 20px;
  text-align: center;
  background-color: var(--ka-font-color-gold);
  border: 1px solid var(--ka-font-color-gold);
  font: 15px/15px Work Sans,Lato,Arial;
  text-transform: uppercase;
  letter-spacing: .1em;
  min-width: 220px;
  pointer-events: auto;
  color: #fff;
}

#headerslider .arrow {
    width:18px;
    height:22px;
    bottom:40px;
    left:0;
    right:0;
    position:absolute;
    float:none;
    clear:both;
    margin-right:auto;
    margin-left:auto;
    pointer-events: auto;
    z-index: 998;
    animation: bounce 1.5s infinite;
}
@keyframes bounce {
  0% {
    transform: scale(1,1) translate(0px, 0px);
  }
  75%{
    transform: scale(1,1.0) translate(0px, -5px);
  }
  100% {
    transform: scale(1,1) translate(0px, 0px);
  }
}

body.galerie #container {
    margin-top:100px;
}
#nav_header_1 ul {
    list-style:none;
}
.breakpoint-900 #nav_header_1 ul {
    padding-top:54px;
    padding-left:28px;
}
#nav_header_1 ul li span {
    display:block;
    padding:1px 3px;
    background-color:#0076bd;
    color:white;
}
#nav_header_1 ul li.trail a {
    display:block;
    padding:1px 3px;
    background-color:#0076bd;
    text-decoration:none;
    color:white;
}

/* header .quote_box {display: none;} */
header .quote_box div {
    margin:0;
}

/* header .quote_box ul {height:20px;overflow:hidden} */
header .quote_box ul {
    width:640px;
    max-height:65px;
    /*min-height:63px;
    */ overflow:hidden;
}
header .quote_box ul li {
    font-size:1.18em;
    color:#0076bd;
    font-weight:400;
}
header .quote_box ul li:not(:first-child) {
    display: none !important;
}
.breakpoint-500 header .quote_box {
    display: none !important;
}
.breakpoint-300 header .quote_box {
    display: none !important;
}
@media all and (max-width: 500px) {
    header .quote_box {display: none !important;}
}
#madeInGermany {
    width:157px;
    height:40px;
    right:5px;
    position:absolute;
    text-indent:-999em;
    bottom: 10px;
    background: transparent url(../../files/intern/img/madeingermany.png) no-repeat 50% 50%;
}
#nav_header_2 {
    width:81px;
}
#nav_header_2 ul {
    padding-top:7px;
    list-style:none;
}
#nav_header_2 ul li {
    float:left;
    text-transform:lowercase;
}
#nav_header_2 ul li.first {
    padding-right:4px;
}
#nav_header_2 ul li a {
    display:block;
    padding:0;
    text-decoration:none;
    color:#939494;
}
#nav_header_2 ul li a:hover {
    color:#0076bd;
}
#nav_header_2 ul li span {
    display:block;
    padding:1px 3px;
    background-color:#0076bd;
    color:white;
}
#nav_header_2 ul li.trail a {
    display:block;
    padding:1px 3px;
    background-color:#0076bd;
    text-decoration:none;
    color:white;
}
input#search_query:focus,
input#search_query {
    width:138px;
    height:14px;
    display:block;
    margin-top:23px;
    padding:2px 5px;
    background-position:top right;
    border:0;
    outline:none;
    border-left:1px solid #dddddd;
    border-right:1px solid #dddddd;
    background:none;
    background-image:url('../../files/intern/img/search_input.jpg');
}

#ankermenu,
#ankermenu-en {
    width:100%;
    display:inline-block;
    padding-top:30px;
    padding-bottom:12px;
    background-color:rgba(255,255,255,1);
}
#ankermenu .insideam,
#ankermenu-en .insideam {
    width:100%;
    display:inline-block;
    text-align:center;
}
#ankermenu a,
#ankermenu-en a {
    display:inline-block;
    margin-right:3px;
    margin-bottom:10px;
    margin-left:3px;
    padding:6px 16px;
    text-align:center;
    border:1px solid var(--ka-font-color-gold);
    font:14px/14px Work Sans,Lato,Arial;
    color:var(--ka-font-color-gold);
    text-transform:uppercase;
    letter-spacing:.05em;
}

/* Position der Ankerlinks anpassen */
body.galerie h4::before {
    display: block;
    content: " ";
    margin-top: -155px;
    height: 220px;
    visibility: hidden;
    pointer-events: none;
}


/* ****************************************************************************************************************** */
/* --- footer ------------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

#footer {
    display:block;
    margin-top:0;
    margin-bottom:0;
    padding:0;
    background-color:#333;
    border-top:0px solid #333;
    border-right:0px solid #333;
    border-bottom:1px solid #333;
    border-left:0px solid #333;
}
#footer .inside {
    max-width:100%;
    display:block;
    margin:0;
    padding-top:0;
    padding-bottom:0;
}
#footer-band-1 {
  background-color:#333;
  border-bottom:1px solid #555;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 10px 0;
}
#footer-band-1 .inside {
    width:1600px;
    max-width:100%;
    display:inline-block;
    margin-right:auto;
    margin-left:auto;
    padding-top:30px;
    padding-bottom:30px;
}
#footer-band-2,
#footer-band-2a {
  background-color:#333;
  display: flex;
  justify-content: center;
  align-items: center;

}
#footer-band-2 {
  border-bottom:1px solid #555;
}
#footer-band-2 .inside {
    width:1600px;
    max-width:100%;
    display:inline-block;
    margin-right:auto;
    margin-left:auto;
    padding-top:0;
    padding-bottom:20px;
}
#footer-band-3 {
    width:100%;
    margin:0;
    padding:0;
    background-color:#292929;
    display: flex;
    justify-content: center;
    align-items: center;
}
#footer-band-3 .inside {
    width:1600px;
    max-width:100%;
    display:inline-block;
}
#footer-band-1 .newsletter {
  position:relative;
  display: flex;
  flex-direction: row;
  justify-content: center;
  align-items: center;
}

#footer-band-1 .text,
#footer-band-1 .button,
#footer-band-1 .socials {
  color:#fff;
  margin: 0 25px;
}
#footer-band-1 .newsletter {
  max-width:1600px;
  margin: 0 auto;
}
#footer-band-1 .newsletter .text {
  max-width: 400px;
}
#footer-band-1 .button a {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 15px 30px 15px 15px;
  cursor: pointer;
  display: inline-block;
  padding: 10px 20px 8px 20px;
  text-align: center;
  font: 15px/15px Work Sans,Lato,Arial;
  background-color: var(--ka-font-color-gold);
  color: #FFF;
  text-transform: uppercase;
  letter-spacing: .1em;
  min-width: 200px;
}

#footer-band-1 .email .insideemail {
    width:100%;
}
#footer-band-1 .email .mod_subscribe.block {
    width: calc(100% - 80px);
    float: left;
    clear: none;
    margin: 0;
}
#footer-band-1 .socials {
  width:15%;
}
#footer-band-1 .socials {
  display: flex;
  align-items: center;
  justify-content: center;
}
#footer-band-1 .socials a {
  line-height: 1px;
  font-size: 1px;
}
#footer-band-1 div.socials div.links {
    width:100%;
    display: flex;
    flex-direction: row;
    margin-right:auto;
    margin-left:auto;
}
#footer-band-1 .socials div.links a {
  margin-right:7px;
  margin-left:7px;
  padding-right:0;
  padding-left:0;
}
#footer-band-1 .socials div.links a img {
  width: 24px;
}
#footer-band-1 .partner a {
    /*float:left;*/
    margin-right:15px;
    margin-left:15px;
}
#footer-band-1 .widget-captcha {
    display: none;
}
#footer-band-1 div.email img,
#footer-band-1 div.email input[type="email"],
#footer-band-1 div.email input[type="textold"],
#footer-band-1 div.email input[type="submit"] {
    float:left;
}
#footer-band-1 div.email img {
    width:80px;
    height:50px;
    margin-right:0;
    padding:0;
}
#footer-band-1 div.email input[type="email"],
#footer-band-1 div.email input[type="textold"] {
    width:500px;
    height:36px;
    max-width:65%;
    margin-top:12px;
    margin-right:0;
    margin-left:0;
    padding:10px 0 10px 30px;
    background-color:#414141;
    border:0px solid;
    font:14px/14px Work Sans,Lato,Arial;
    color:#bfbfbf;
    max-width:calc(95% - 140px);
}
#footer-band-1 div.email button[type="submit"],
#footer-band-1 div.email input[type="submit"] {
    width:60px;
    height:36px;
    overflow:hidden;
    float:left;
    margin:12px 0 0;
    padding:0;
    border:0;
    background:#414141 url("/files/intern/footer/fairmont-hamburg-pfeil-gold.png") center center no-repeat;
    font-size:10px;
    line-height:10px;
    text-indent:-9999px;
}
#footer-band-1 div.submit_container input {
    padding-top:0;
    padding-bottom:0;
    font-size:8px;
    line-height:8px;
    font-weight:normal;
    text-indent:-9999px;
}
#footer-band-2 div.logo,
#footer-band-2 div#kontakt,
#footer-band-2 nav,
#footer-band-2 div.mod_footer_copyright {
    margin-right:20px;
    margin-left:20px;
    padding-top:0;
    padding-bottom:0;
    padding-left:0;
    width:calc(20% - 40px);
}
#footer-band-2 div.logo {
    width:100%;
    float:left;
    margin-right:0;
    margin-left:0;
    padding-top:40px;
    width:calc(20% - 0px);
}
#footer-band-2 div#kontakt,
#footer-band-2 nav {
    float:right;
    padding:50px 10px 0 60px;
}
#footer-band-2 div#kontakt,
#footer-band-2 nav {
    position:relative;
    float:right;
    padding:50px 0 0 50px;
}
#footer-band-2a {

}
#footer-band-2a {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 10px 0;
}
#footer-band-2a .inside {
  width:1600px;
  max-width:100%;
  margin-right:auto;
  margin-left:auto;

  display: flex;
  justify-content: center;
  align-items: center;
  padding: 20px 0;
}

#footer-band-2a .partner {
    width: 100%;
    margin: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

#footer-band-2a .partner a {
  width: 30%;
  max-width: 150px;
  margin: 0 40px;
  display: flex;
  align-items: center;
  justify-content: center;
}
#footer-band-2a .partner a img {
  width: 120px;
  max-height: 80px;
}

footer div.mod_footer_copyright {
    bottom:5px;
    right:0;
    position:absolute;
    display:block;
}
footer nav ul {
    padding-left:0;
    list-style:none;
}
footer nav ul li {
    margin-top:0;
    margin-bottom:0;
    margin-left:0;
    padding-top:0;
    padding-bottom:0;
    padding-left:0;
}
footer div.kontakt p,
footer div.kontakt a,
footer nav ul li,
footer nav ul li a,
footer nav ul li a:visited,
footer div.mod_footer_copyright {
    margin-top:0;
    margin-bottom:0;
    padding:0;
    font:14px/1.7em Work Sans,Lato,Arial;
    color:#FFF;
}
footer nav ul li span {
    display:block;
    padding:0;
    color:white;
}
footer nav ul li a:hover {
    color:var(--ka-font-color-gold);
}
footer div.kontakt a:hover,
footer nav ul li a:hover {
    color:var(--ka-font-color-gold);
}
#footer h2 {
    margin-top:0;
    margin-bottom:15px;
    padding:0;
    font-size:14px;
    color:#ac936e;
    letter-spacing:.15em;
}
#header div.socials {
  margin: 0 0 0 30px;
}
div.socials .ce_hyperlink {
  width:20px;
  height:20px;
  float:left;
  display:block;
  margin-left:10px;
}
#footer-band-3 div.booking,
#footer-band-3 div.telefon,
#footer-band-3 nav.mod_changelanguage {
    float:left;
    margin:12px 0 10px;
    padding:0;
}
#footer-band-3 div.booking {
    width:50%;
}
#footer-band-3 div.telefon {
    width:40%;
}
#footer-band-3 nav.mod_changelanguage {
    width:10%;
}
#footer-band-3 nav.mod_changelanguage {
    padding-top:12px;
}
#footer-band-3 div.booking img,
#footer-band-3 div.telefon img {
    vertical-align:middle;
}
#footer-band-3 div.overview,
#footer-band-3 div.details {
    float:left;
}
#footer-band-3 div.details {
    margin-top:13px;
}
#footer-band-3 div.telefon .details {
    font:18px Work Sans,Lato,Arial;
    color:#FFF;
    letter-spacing:.08em;
}
#footer-band-3 div.booking p,
#footer-band-3 div.booking a,
#footer-band-3 div.telefon p,
#footer-band-3 div.booking strong,
#footer-band-3 div.telefon strong,
#footer-band-3 div.telefon a {
    font:18px Work Sans,Lato,Arial;
    font-weight:normal;
    color:#999;
    letter-spacing:.08em;
}
#footer-band-3 div.booking a {
    margin-right:8px;
    margin-left:8px;
}
#footer-band-3 div.booking a:hover {
    color:#FFF;
}
#footer-band-3 div.booking strong,
#footer-band-3 div.telefon strong,
#footer-band-3 div.telefon a {
    margin-right:10px;
    color:var(--ka-font-color-gold);
}
#footer-band-3 div.telefon a {
  color:#999;
}
#footer-band-3 div.telefon a:hover {
  color:#fff;
}
nav.mod_changelanguage ul.level_1 li:hover {
    color:var(--ka-font-color-gold);
}
footer nav.mod_changelanguage ul li * {
    float:left;
    display:block;
    margin:0;
    padding-top:0;
    padding-bottom:0;
    font:18px Work Sans,Lato,Arial;
    text-decoration:none;
    color:var(--ka-font-color-gold);
    letter-spacing:.08em;
}
footer nav.mod_changelanguage ul li a {
    color:#999;
}
footer nav.mod_changelanguage ul li a:hover {
    color:#FFF;
}
nav.mod_changelanguage ul li {
    float:left;
    margin:0;
    padding:0 10px;
    border-right:1px solid var(--ka-font-color-gold);
    font:18px/18px Lato,Arial;
    z-index:953;
}
nav.mod_changelanguage ul li.last {
    border-right:0px solid;
}

#footer .mod_subscribe .confirm,
#footer .mod_subscribe .error {
    padding-top: 12px;
    color:#fff;
    font-size:20px;
    text-transform: uppercase;
}

/* ****************************************************************************************************************** */
/* --- mainmenu ----------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

#navmobil {
    display:none;
}
nav#navdesktop.mod_navigation {
    overflow:visible;
    margin:0;
    z-index:952;
    left:calc(50% - 590px);
    top:34px;
    position:absolute;
}
body.english nav#navdesktop.mod_navigation {
    left:calc(50% - 580px);
}
nav#navdesktop.mod_navigation {
    text-transform:uppercase;
}
nav#navdesktop.mod_navigation span.active,
nav#navdesktop.mod_navigation li.sibling {
    margin:0;
    padding:0;
}
nav#navdesktop.mod_navigation a {
    margin:5px 0 0;
    padding:0;
    text-decoration:none;
    text-transform:lowercase;
    font-weight:500;
}
nav#navdesktop.mod_navigation a:hover {
    text-decoration:none;
}
nav#navdesktop.mod_navigation ul {
    height:62px;
    left:0;
    position:relative;
    display:inline-block;
    padding-right:25px;
    padding-left:25px;
    z-index:952;
}
nav#navdesktop.mod_navigation li {
    position:relative;
    float:left;
    list-style-type:none;
}
nav#navdesktop.mod_navigation li a {
    float:left;
    display:block;
    margin:0;
    padding:4px 8px 40px 8px;
    text-align:center;
    font:14px Work Sans,Lato,Arial;
    font-weight:normal;
    color:#eee;
    text-transform:uppercase;
    letter-spacing:.10em;
    list-style-type:none;
}
nav#navdesktop.mod_navigation li.active {
    display:block;
    margin:0;
    padding:4px 8px 40px 8px;
    text-align:center;
    font:14px Work Sans,Lato,Arial;
    color:#fff;
    text-transform:uppercase;
    letter-spacing:.1em;
}
nav#navdesktop.mod_navigation li a:hover,
nav#navdesktop.mod_navigation li a.sfhover {
    text-decoration:none;
    color:#FFF;
    /* Farbton für den Hovereffekt */
            -webkit-transition: color 300ms ease-in-out;
    /* WebKit   */
            -moz-transition: color 300ms ease-in-out;
    /* Firefox  */
            -o-transition: color 300ms ease-in-out;
    /* Opera    */
            transition: color 300ms ease-in-out;
    /* Standard */;
}
nav#navdesktop ul.level_1 li:nth-of-type(5) {
    margin-left:130px;
}
nav#navdesktop ul.level_2 li:nth-of-type(5) {
    margin-left:0;
}

/* 1. Unterebene nach unten - Level 2 */
nav#navdesktop.mod_navigation ul {
    margin:0;
    padding:0;
    list-style-type:none;
}
nav#navdesktop.mod_navigation li ul {
    width:220px;
    bottom:0;
    left:0;
    right:0;
    top:58px;
    position:absolute;
    display:none;
    padding:3px 0 0;
}
nav#navdesktop ul.level_2 span.active {
}
nav#navdesktop.mod_navigation li ul li a {
    width:250px;
    min-height:32px;
    margin:0;
    padding:10px 0 10px 15px;
    text-align:left;
    background-color:#fff;
    border-bottom:1px solid #666;
    font:13px Work Sans,Lato,Arial;
    color:#333;
    /* Farbton für den Link im Normalzustand */
            -webkit-transition: color 300ms ease-out;
    /* WebKit   */
            -moz-transition: color 300ms ease-out;
    /* Firefox  */
            -o-transition: color 300ms ease-out;
    /* Opera    */
            transition: color 300ms ease-out;
    /* Standard */;
}
nav#navdesktop.mod_navigation li ul li.active {
    width:250px;
    min-height:36px;
    margin:0;
    padding:10px 0 10px 15px;
    text-align:left;
    background-color:#f1f1f1;
    background-image:none;
    border-bottom:1px solid #666;
    font:13px Work Sans,Lato,Arial;
    color:#555;
}
nav#navdesktop.mod_navigation li ul li a:hover {
    background-color:#f1f1f1;
    background-image:none;
    color:#333;
    /* Farbton für den Hovereffekt */
            -webkit-transition: color 300ms ease-in-out;
    /* WebKit   */
            -moz-transition: color 300ms ease-in-out;
    /* Firefox  */
            -o-transition: color 300ms ease-in-out;
    /* Opera    */
            transition: color 300ms ease-in-out;
    /* Standard */;
}
nav#navdesktop.mod_navigation ul.level_2 img {
    float:none;
    clear:both;
    margin-right:0;
    margin-bottom:0;
    padding-right:0;
    padding-left:0;
}

/* 2. Unterebene nach rechts - Level 3 */
nav#navdesktop.mod_navigation ul.level_3 {
    width:250px;
    left:250px;
    top:0;
    position:absolute;
    display:block;
    padding:0;
    background-color:#fff;
    border-top:0px #fff;
    z-index: 999;
}

/* 2. Unterebene nach rechts - Level 3 */
nav#navdesktop.mod_navigation ul.level_3 li a {
}

/* 2. Unterebene nach rechts - Level 3 */
nav#navdesktop.mod_navigation ul.level_3 li.active {
}
nav#navdesktop.mod_navigation li:hover ul {
    display:block;
}
nav#navdesktop.mod_navigation ul li:hover ul ul {
    display:none;
}
nav#navdesktop.mod_navigation ul ul li:hover ul {
    display:block;
}

/* ****************************************************************************************************************** */
/* --- form --------------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */


fieldset {
    display:block;
}
input,
textarea {
    margin:0;
    border:0;
    border-radius:0;
    behavior:url('assets/css3pie/1.0.0/PIE.htc');
}
span.mandatory {
  color:var(--ka-font-color-gold);
}
form .row {
    margin-bottom:10px;
}
.breakpoint-300 form .row {
    width:320px;
}
.breakpoint-300 form .column {
    width:310px;
}
form .label-col label {
    width:150px;
}
input[type="text"],
input[type="email"],
input[type="password"],
input[type="search"] {
    max-width:310px;
    margin-top:0;
    margin-bottom:8px;
    padding:4px;
    background-color:#f1f1f1;
    width:calc(100% - 220px);
}
input[type="search"] {
    width:250px;
    max-width:70%;
    float:left;
    margin-right:10px;
}
input.captcha {
    width:60px;
    margin-right:4px;
}
textarea {
    max-width:310px;
    margin-top:0;
    margin-bottom:8px;
    padding:4px;
    background-color:#f1f1f1;
    width:calc(100% - 220px);
}
button[type="submit"],
input[type="submit"] {
    margin-top:5px;
    margin-left:200px;
    padding:10px 50px;
    background-color:var(--ka-font-color-gold);
    font-family:Work Sans,Lato,Arial;
    color:#fff;
    text-transform:uppercase;
    letter-spacing:.15em;
    color:white;
    border-style:none;
    cursor:pointer;
}

#main .newsletter .widget-text,
#main .newsletter .widget-submit {
    display: block;
    float: left;
}
#main .newsletter input[type="email"] {
    width:310px;
}

#main .newsletter button[type="submit"],
#main .newsletter input[type="submit"] {
    width:200px;
    /*
    float:none;
    clear:both;
    */
    margin-top: 0px;
    margin-left:0;
    padding-top:6px;
    padding-bottom:6px;
    text-align:center;
}

.mod_login button[type="submit"],
.mod_login input[type="submit"] {
    width:200px;
    float:none;
    clear:both;
    margin-bottom:20px;
    padding-top:4px;
    padding-bottom:4px;
    text-align:center;
}
button[type="submit"].submit-hover,
input[type="submit"].submit-hover {
    background-color:#f0a20a;
    color:white;
}
textarea:focus,
button[type="text"]:focus,
input[type="text"]:focus {
    outline:none;
}
label {
    min-width:200px;
    float:left;
    font-weight:400;
}
label.actionLabel {
    padding-right:20px;
    padding-left:20px;
    background-position:center left;
    background-repeat:no-repeat;
    background-image:url('../../files/intern/img/checkbox.png');
}
label.actionLabelSelected {
    background-image:url('../../files/intern/img/checkbox_checked.png');
}
.form-row {
    margin-bottom:8px;
}
select {
    width:153px;
    margin-top:0;
    margin-bottom:8px;
    margin-left:0;
    padding:4px;
    background-color:#f1f1f1;
    background-repeat:no-repeat;
    border:0;
    border-radius:0;
}
select:focus {
    outline:none;
}
div.mod_search input {
    margin:0 10px 40px 0;
    padding-right:2px;
    padding-left:10px;
}
div.mod_search input.submit {
    height:36px;
    margin-right:50px;
    padding:3px 25px 5px;
}
div.mod_search div.first {
    float:none;
    clear:both;
    margin-top:25px;
}
fieldset.checkbox_container {
    margin-top:20px;
    margin-bottom:20px;
    margin-left:200px;
    padding-left:0;
    width: calc(100% - 200px);
}
fieldset.checkbox_container input.checkbox {
    float:left;
    margin:3px 7px 3px 1px;
    padding:0;
}
fieldset.checkbox_container label {
    float:none;
    display:block;
    max-width: calc(100% - 20px);
}

form.gala label {
  min-width: 335px;
}

form.gala button[type="submit"] {
  width: 310px;
  margin: 20px 0 0 335px;
}

fieldset.begleitperson {
  margin: 50px 0 0 0;

}

fieldset.begleitperson legend {
  margin: 0 0 20px 0;

}

fieldset.begleitperson .checkbox_container {
  margin-left: 0;
}

div.selectbegleitpers select {
  /*margin-left: 55px;*/
}


/* ****************************************************************************************************************** */
/* --- maileon --------------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

form.maileon,
div.maileon {
  position: relative;
}

form.maileon div.widget {
  margin: 5px 0;
}

form.maileon fieldset.checkbox_container {
  position: relative;
  margin: 0;
  padding: 0;
  width: calc(100% - 00px);
  display: flex;
  flex-direction: row;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
}
form.maileon fieldset.checkbox_container.privacy,
form.maileon fieldset.checkbox_container.tracking {
  margin: 10px 0;
}
form.maileon fieldset.checkbox_container.privacy div.legend,
form.maileon fieldset.checkbox_container.tracking div.legend {
  order: 2;
  max-width: calc(100% - 40px);
}
form.maileon fieldset.checkbox_container.privacy .checkbox_row,
form.maileon fieldset.checkbox_container.tracking .checkbox_row {
  order: 1;
}

form.maileon fieldset.checkbox_container .checkbox_row {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}

form.maileon fieldset.checkbox_container span {

}

form.maileon fieldset.checkbox_container span label {
  display: none;
}

form.maileon label,
div.maileon label,
form.maileon div.legend {
  min-width: 250px;
}
form.maileon div.legend {
  min-width: 240px;
}

form.maileon button[type="submit"],
div.maileon button[type="submit"] {
  margin: 10px 0 0 0;
}

/* ****************************************************************************************************************** */
/* --- Variablen ---------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

:root {
  --info_border: 120px;
  --info_bordermobile: 40px;
}

/* ****************************************************************************************************************** */
/* --- swiper-slider ------------------------------------------------------------------------------------------------ */
/* ****************************************************************************************************************** */

/* Standardpfeile entfernen */
.swiper-button-next:after,
.swiper-button-prev:after {
  content: '';
  display: none;
}

/* keine Bullets */
.swiper-horizontal>.swiper-pagination-bullets {
  display: none;
}

/* Chrome Touch Workaraound */
.swiper-slide > div {
  touch-action: pan-y;
}

/* ****************************************************************************************************************** */
/* --- slider ----------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

.rsts-slides,
.rsts-slide,
.rsts-thumbs-slides,
.rsts-thumbs-slide {

}

.rsts-slides {
  position: relative;
  display: flex;
  width: 100%;
  height: 100%;
}

#banner2 .rsts-slide > div {
    min-height: calc(50vh - 0px);
}
#banner2 .rsts-caption {
    display:none;
}
.rsts-skin-default.rsts-main {
    z-index:902;
}
#bannervideo .rsts-video-play,
#bannervideo .rsts-video-stop {
    display:none;
}
#bannervideo video::-webkit-media-controls {
    display:none;
}
#bannervideo video::-webkit-media-controls,
#bannervideo video::-webkit-media-controls-enclosure {
    display:none !important;
}
.custom-video-controls {
    z-index: 2147483647;
}
.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 {
    width:30px;
    height:50px;
    -webkit-box-shadow:0 0 0 0;
    box-shadow:0 0 0 0;
    border:0px solid;
    border-radius:0;
    background-clip: initial;
}
.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:rgba(0,0,0,1);
    -webkit-box-shadow:0 0 0 0;
    box-shadow:0 0 0 0;
    background-color: transparent;
}
.rsts-skin-default .rsts-prev {
    background-image:url("/files/intern/common/fairmont-hamburg-Pfeil-links-01.png");
    position:absolute;
    left:15px;
    top:calc(50% - 15px);
}
.rsts-skin-default .rsts-next {
    background-image:url("/files/intern/common/fairmont-hamburg-Pfeil-rechts-01.png");
    position:absolute;
    right:15px;
    top:calc(50% - 15px);
}
.rsts-skin-default .rsts-nav-bullets a,
.rsts-skin-default .rsts-nav-bullets a.active,
.rsts-skin-default .rsts-nav-bullets a:hover {
    border-radius: 0%;
    box-shadow: 0 0 0 0;
}
.rsts-skin-default .rsts-nav-bullets a:hover,
.rsts-skin-default .rsts-nav-bullets a.active {
    background-color:var(--ka-font-color-gold);
}
.rsts-skin-default .rsts-caption {
    min-width:230px;
    min-height:47px;
    bottom:0;
    left:0;
    position:absolute;
    margin:0;
    padding:15px 30px;
    background-color:rgba(51,51,51,.5);
    font:14px Work Sans,Lato,Arial;
    font-weight:normal;
    text-decoration:none;
    color:#FFF;
    top: initial;
    border-radius: 0px;
}

div.slider50 .rsts-skin-default.rsts-main,
div.slider75 .rsts-skin-default.rsts-main {
  width:100%;
  display: block;
}
div.slider50 .rsts-main,
div.slider75 .rsts-main {
    min-height: 550px;
}
div.galerie .rsts-skin-default .rsts-slide.rsts-inactive {
    background-color:#fff;
    1-webkit-filter: grayscale(0.3);
    1filter: grayscale(0.3);
    1-webkit-filter: saturate(0.3);
    1filter: saturate(0.3);
    -webkit-filter: opacity(.3);
    filter: opacity(.3);
}

body.galerie .cboxIframe {
    background-color:rgba(0,0,0,.8) !important;
}
body.galerie #cboxContent {
    position: relative;
    display: inline-block;
}

body.galerie #cboxTitle,
.nivo-lightbox-theme-default .nivo-lightbox-title {
    position: fixed;
    top: -12px;
    left: 0;
    width: 100%;
    z-index: 99999;
    text-align: center;
    padding:12px 25px;
    border-radius:0;
    text-indent: 0px;
    background-color:rgba(0,0,0,.01);
    color:#ffffff;
    pointer-events: none;
}

body.galerie #cboxTitle:hover,
.nivo-lightbox-theme-default .nivo-lightbox-nav:hover {
    background-color:rgba(0,0,0,.01);
}
body.galerie #cboxOverlay,
.nivo-lightbox-theme-default.nivo-lightbox-overlay {
    background:none  !important;
        opacity: 1 !important;
    background-color:rgba(0,0,0,.8) !important;
}
body.galerie #cboxClose,
.nivo-lightbox-theme-default .nivo-lightbox-close {
    position: absolute;
    top: 5px;
    right:5px;
    width:50px;
    height:50px;
    padding:0;
    background-image:url("/files/intern/common/galerie-nivo-close-weiss.png");
    /*background-color: #000000;*/
    z-index: 9999;
}


/* ****************************************************************************************************************** */
/* --- ka-textimg --------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

#main .textimg {
    position: relative;
    width: 100%;
    height: 100%;
    margin-top: 0px;
    margin-bottom: 0px;
    /*
    display: flex;
    flex-direction:column;
    justify-content: space-between;
    */
}

#main .textimg .imgblock * {
    /*line-height: 1px;*/
}

#main .textimg .imgblock .image_container {
  width: 100%;
}

#main .textimg .mobileblock {
    display: none;
}
#main .textimg.scalimg .imgblock .image_container {
    position: relative;
    width: 100%;
    height: 100%;
    overflow: hidden;
    min-height:250px;
}
#main .textimg.scalimg .imgblock img {
  position: absolute;
  width: 100%;
  height: 100%;
  left:0%;
  object-fit: cover;
  display: inline-block;
}
#main .textimg.scalimg .bottomblock .right {
    text-align: right;
}
#main .textimg.scalimg .bottomblock {
    margin: 30px 0 0 0;
}
#main .textimg.scalimg .bottomblock h6 {
    transform: rotate(-5deg);
}

#main .textimg .textblock {
  padding-top: 30px;
  padding-bottom: 30px;
  display: flex;
  flex-direction:column;
  justify-content :flex-start;
}


#main .textimg .left .headline,
#main .textimg .left .text,
#main .textimg .right .headline,
#main .textimg .right .text,
#main .textimg .left .button,
#main .textimg .right .button,
#main .textimg .left .ce_accordion,
#main .textimg .right .ce_accordion {
    padding: 0px;
}

#main .textimg .left .headline,
#main .textimg .left .text,
#main .textimg .left .button,
#main .textimg .left .ce_accordion {
    padding-right: 150px;
}

#main .textimg .right .headline,
#main .textimg .right .text,
#main .textimg .right .button,
#main .textimg .right .ce_accordion {
    padding-left: 150px;
}

#main .textimg .headline {
    margin-top: 0;
}

#main .textimg .left .text,
#main .textimg .right .text {
    margin: 0px 0 0px 0;
    /*
    padding-right: 150px;
    padding-left: 150px;
    */
}

#main .textimg .left .button,
#main .textimg .right .button {
    margin-top: 20px;
}

/*master*/
#main .textimg .button a {
  display: inline-block;
  padding: 8px 20px 6px 20px;
  text-align: center;
  border: 1px solid var(--ka-font-color-gold);
  font: 15px/15px Work Sans,Lato,Arial;

  text-transform: uppercase;
  letter-spacing: .1em;
  min-width: 200px !important;
  max-width: calc(100% - 60px) !important;
  pointer-events: auto;
  color: var(--ka-font-color-gold);
}
#main .textimg .button a:hover {

}

#main .textimg .button.button_bkgold a {
  color:#fff;
}

#main .textimg .button.button_white a {
  color: var(--ka-font-color-gold);
}


#main .textimg .videocontainer {
  position: relative;
  width: 100%;
  height: 100%;

}

#main .textimg .videocontainer .prev-image-container,
#main .textimg .videocontainer .prev-video-container  {
  position: absolute;
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}


#main .textimg .videocontainer .videobtn {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 15px 30px 15px 15px;
  /*background-image: url('/files/intern/common/fmd-play-video-full.png');*/
  background-position: 95% center;
  background-repeat: no-repeat;
  cursor: pointer;
  z-index: 954;
  display: inline-block;
  padding: 8px 20px;
  text-align: center;
  font: 15px/15px Work Sans,Lato,Arial;
  background-color:var(--ka-font-color-gold);
  color: #fff;
  text-transform: uppercase;
  letter-spacing: .1em;
  pointer-events: auto;
}


/*bookbtn*/

#main .bookbtn,
#main .button.bookbtn,
#main .textimg.bookbtn .button,
#main .textimgbk.bookbtn .button {
    margin-top: 35px !important;
    margin-bottom: 25px !important;
}

#main .bookbtn a,
#main .button.bookbtn a,
#main .textimg.bookbtn .button a,
#main .textimgbk.bookbtn .button a {
    border: 1px solid var(--ka-font-color);

    /*display: block;*/
    padding: 13px 15px 11px 15px;
    line-height: 1em;
    text-transform: uppercase;
    background-color: #fff;
    transition: all 1s ease-in-out;
}
#main .bookbtn a {
  display: inline-block;
}

#main .bookbtn a:hover,
#main .button.bookbtn a:hover,
#main .textimg.bookbtn .button a:hover,
#main .textimgbk.bookbtn .button a:hover {
    border: 1px solid var(--ka-font-color);

    background-color: var(--ka-font-color);
    color:#fff;
}

#main .bookbtn a.classic {
  display: block;
  margin: 20px 0 0 0;
  text-transform:none;
  border: none;
  background-color: initial;
  font-size:30px;
  line-height: 42px;
  letter-spacing: 0.05em;
  font-weight: 400;
  font-family: var(--ka-font-family-basker);
}
#main .bookbtn a.classic:hover {
  border: none;
  background-color: initial;
  color:var(--ka-font-color);
}


/*
#main .button a,
#main .textimg .button a {
    position: relative;
    text-transform:uppercase;

    font-family: var(--ka-font-family-bg);
    font-weight: 800;
    letter-spacing: 0.2em;
    font-size: 13px;
    border-bottom: 0px solid var(--ka-font-color);
    text-decoration:none;
}
#main .button a:hover,
#main .textimg .button a:hover {
    text-decoration:none;

}
#main .button a:after,
#main .textimg .button a:after {
    position: absolute;
    left: 0px;
    content: '';
    height: 24px;
    width: 100%;
    border-bottom: 1px solid var(--ka-font-color);
    text-decoration:none;

    -webkit-transform: scaleX(0.0001);
    -ms-transform: scaleX(0.0001);
    transform: scaleX(0.0001);
    -webkit-transition: -webkit-transform 750ms ease-in-out;
    transition: transform 750ms ease-in-out;
}
#main .button a:hover:after,
#main .textimg .button a:hover:after {
    -webkit-transform: scaleX(1);
    -ms-transform: scaleX(1);
    transform: scaleX(1);
}
*/

/* Overlay */

#main .textimg.overlay {
    background-repeat: no-repeat;
    background-position: top;
    background-size: cover;
    /*background-color:#f00;*/

}
#main .textimg.overlay .imgblock {
    position: relative;
}
#main .textimg.overlay .imgblock .image_container {
    top: 30%;
    width: 70%;
    height: 70%;
    z-index: -1;
}

#main .textimg.overlay .imgblock div.hl2 {
    position: absolute;
    top: 0;
    right: 0;
    width: 70%;
    font-size:var(--ka-statement-font-size);
    line-height: var(--ka-statement-line-height);
    letter-spacing: var(--ka-statement-letter-spacing);
    text-transform: uppercase;
    z-index: +1;
}

/* Boxed  mitSlider */

#main .textimg.default,
#main .textimg.boxed {
  margin: 30px 0;
  padding: 0;
  display: flex;
  justify-content: space-between;
  width: 100%;
}

#main .textimg.default .textxcol.txtleft,
#main .textimg.default .textxcol.txtright,
#main .textimg.boxed .textxcol.txtleft,
#main .textimg.boxed .textxcol.txtright {
  width:100%;
  display: flex;
  justify-content: space-between;
  padding: 0;
  margin: 0;
}
#main .textimg.default .lefttext,
#main .textimg.default .righttext,
#main .textimg.boxed .lefttext,
#main .textimg.boxed .righttext {
  position: relative;
  width: 1600px;
  max-width:100%;
  padding: 0;
  margin: 0;
}

#main .textimg.boxed .videocontainer {
  position: relative;
  width: 100%;
  height: 100%;
  display: flex;
}
#main .textimg.boxed .videocontainer .prev-video-container,
#main .textimg.boxed .videocontainer .prev-image-container {
  position: absolute;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
}
#main .textimg.boxed .videocontainer .prev-video-container {
  position: relative;
  width: 100%;
  height: 100%;
}
#main .textimg.boxed .videocontainer .prev-image-container img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
#main .textimg.boxed .videocontainer .prev-video-container video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

#main .textimg.boxed .videocontainer .videobtn {

}
#main .textimg.boxed .videocontainer .prev-image-container.disable,
#main .textimg.boxed .videocontainer .videobtn.disable,
#main .textimg.boxed .videocontainer img.disable {
    display: none;
}
#main .textimg.boxed .videocontainer .videobtn:hover {
  /*
    border: 1px solid var(--ka-font-color);
    background-color: var(--ka-font-color);
    color:#fff;
  */
}

#main .textimg.boxed .textblock {
  padding: 30px 0 30px 0;
  min-height: 540px;
  /*background-color:#fff;*/
}
#main .boxgrey .textimg.default .textblock,
#main .boxgrey .textimg.boxed .textblock {
  background-color:#fff;
}

#main .textimg.vcentered .textblock {
  display: flex;
  justify-content: center;
  background-color:inherit !important;
}

#main .textimg.boxed .textblock .buttons {
    padding: 0 0 10px 0;
}
#main .boxgrey .textimg.default .headline,
#main .boxgrey .textimg.default .text,
#main .boxgrey .textimg.default .button,
#main .boxgrey .textimg.default .ce_accordion,
#main .textimg.boxed .headline,
#main .textimg.boxed .text,
#main .textimg.boxed .button,
#main .textimg.boxed .ce_accordion {
    padding-left: 30px;
    padding-right: 30px;
}

#main .textimg .boxw {
  /*background-color:#fff;*/
  display: flex;
  flex-direction: row;
  justify-content: space-between;

}
#main .textimg .imgblock {
  position: relative;
  margin: 0;
  padding:0px 0 0px 0;
  display: flex;
  justify-content: center;
  align-items: center;

}


#main .textimg .swiper-container {
    position: relative;
    width: 100%;
    height: 100%;
    margin-left: auto;
    margin-right: auto;
    overflow: hidden;
}

#main .textimg .swiper-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
    display: flex;
    transition-property: transform;
    box-sizing: content-box;
    /*
    transition-property: transform;
    box-sizing: content-box;
    align-items: flex-start;
    */
}

#main .textimg .swiper-slide {
    width: 100%;
    height: 100%;
    position: relative;

    display: flex;
    /*justify-content: center;*/
    align-items: center;
    flex-shrink: 0;
    flex-direction:column;

    min-height:250px;
    /*
    max-width: 1400px;

    transition-property: transform;



    display: flex;
    justify-content: center;

    padding: 0;
    margin: 0;
    overflow: hidden;
    */
}

/*
#main .textimg .swiper-container {
    position: relative;
		 width: 100%;
		 padding-top: 50px;
		 padding-bottom: 180px;
     z-index: 998;
}

#main .textimg .swiper-wrapper {
		position: relative;
    z-index: 999;
}


#main .textimg .swiper-slide {
		background-position: center;
	 	background-size: cover;
	 	width: 450px;
	 	height: 800px;
	  -webkit-box-reflect: below 1px linear-gradient(transparent, transparent, transparent, transparent, #0006);
}
*/

#main .textimg .swiper-button-prev {
    position:absolute;
    width:20px;
    height:70px;
    top:calc(50% - 40px);
    left:30px;
    background-image:url("/files/intern/common/pfeil-slider-links.svg");
    background-repeat: no-repeat;
    background-position: left center;
    transition: background-position 0.5s ease-in-out;
    cursor:pointer;
    z-index: +2;
}

#main .textimg .swiper-button-next {
    position:absolute;
    width:20px;
    height:70px;
    top:calc(50% - 40px);
    right:30px;
    background-image:url("/files/intern/common/pfeil-slider-rechts.svg");
    background-repeat: no-repeat;
    background-position: center;
    background-position: right center;
    transition: background-position 0.5s ease-in-out;
    cursor:pointer;
    z-index: +2;
}

#main .textimg .noswiper.cnt_1 .swiper-button-prev,
#main .textimg .noswiper.cnt_1 .swiper-button-next {
    display: none;
}

#main .textimg.boxed .img2block {
    position: absolute;
    right: 0;
    bottom: 0;
    width:80px;
    height:80px;
    z-index: +1;
}
#main .textimg.boxed .img2block .image_container {
    width: 100%;
    height: 100%;
}
#main .textimg.boxed .img2block .image_container img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

#main .textimg.scalimg .swiper-container.cnt_1 img {
    transform: scale(1.0, 1.0);
    -ms-transform: scale(1.0, 1.0);
    -webkit-transform: scale(1.0, 1.0);
    transition: all .75s ease-in-out;
}

#main .textimg.scalimg .swiper-container.cnt_1 img:hover {
    transform: scale(1.05, 1.05);
    -ms-transform: scale(1.05, 1.05);
    -webkit-transform: scale(1.05, 1.05);
}

#main .textimg.boxed .right .imgtext {
    position: absolute;
    right: 20px;
    bottom: 0px;
    z-index: +1;
}

#main .textimg.boxed .left .imgtext {
    position: absolute;
    left: 20px;
    bottom: 0px;
    z-index: +1;
}

#main .textimg.boxed .imgtext * {
    color: #fff;

}

/* ****************************************************************************************************************** */
/* --- Newslist ----------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

.mod_newslist .block {
  margin-top:15px;
  margin-right:30px;
  border-bottom:1px solid #1f1f1f;
}
.mod_newslist p.info {
    width:150px;
    float:left;
    margin-top:0;
    margin-bottom:0;
}
.mod_newslist h3 {
    margin-top:0;
    margin-bottom:15px;
    padding-top:0;
    font-size:15px;
    text-transform:none;
}
.mod_newslist a {
    font-weight:600;
}
.mod_newslist .teaser {
    margin-left:150px;
}
.mod_newslist .more {
    display:none;
}

.mod_newslist.newsblog {
  position: relative;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  margin: 0 0 50px 0;
  grid-column-gap: 40px;
  grid-row-gap: 40px;
}
.mod_newslist.newsblog .block {
  margin:0;
  border-bottom:0px solid #1f1f1f;
}

.mod_newslist.newsblog .blog.layout_latest {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  margin:0 0 0 0;
  height: 100%;
}

.mod_newslist.newsblog .metafields,
.mod_newsreader .metafields {
  display: flex;
}

.mod_newslist.newsblog .metafields p.info,
.mod_newsreader .metafields p.info {
  width:100%;
  float:none;
  margin:10px 0 20px 0;
}

.mod_newslist.newsblog .metafields p.info span.vline,
.mod_newsreader .metafields p.info span.vline {
  margin: 0 5px 0 5px;
}

.mod_newslist.newsblog .metafields *,
.mod_newsreader .metafields * {
  color: var(--ka-font-color-gold);
}

.mod_newslist.newsblog h3 *  {
  font-size: 26px;
  line-height: 30px;
  color: #333;
  font-family: Work Sans, PlayFair, Arial;
  text-decoration: none;
  letter-spacing: .015em;
  hyphens: none;
  text-transform: uppercase;
  font-weight: 400;
}
.mod_newslist.newsblog .more {
    display:flex;
}

.mod_newslist.newsblog .more a,
.mod_newsreader .back a {
  /*
  display: inline-block;
  font: 15px / 15px Work Sans, Lato, Arial;
  color: var(--ka-font-color-gold);
  text-transform: uppercase;
  letter-spacing: .1em;
  min-width: 200px !important;
  max-width: calc(100% - 60px) !important;
  pointer-events: auto;
  margin: 20px 0 0 0;
  padding: 10px 30px;

  text-align: center;
  background-color: var(--ka-font-color-gold);
  border: 1px solid var(--ka-font-color-gold);
  color: #FFF;
  */

}

/* ****************************************************************************************************************** */
/* --- Blog --------------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

.blog.layout_latest {
  position: relative;
}

/* ****************************************************************************************************************** */
/* ---kablogslider -------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

section.kablogslider {
  position: relative;
  display: flex;
  width: 100%;
  height: 800px;
  max-height: 66vh;
  margin: 0 0 50px 0;
}

section.kablogslider .swiperbox {
  position: relative;
  width: 100%;
}

section.kablogslider .swiperbox .swiper-container {
  position: relative;
  width: 100%;
  height: 100%;
}


section.kablogslider .swiper-slide {
  position: relative;
  display: flex;
  padding: 0 0 100px 0;
}

section.kablogslider .swiper-slide .limit1400 {
  position: relative;
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
}

section.kablogslider .swiper-slide .textblock {
  position: absolute;
  top: auto;
  left: 0;
  bottom: 60px;
  width: 66%;
  max-width: 800px;
  margin: 0 auto;
  display: block;
  z-index: +2;
}

section.kablogslider .swiper-slide .textblock .mainheadline {
  position: relative;
  margin: 10px 0 30px 0;
}

section.kablogslider .swiper-slide .textblock .mainheadline * {
  font-size: 44px;
  line-height: 54px;
  font-weight: 600;
  z-index: +2;
}

section.kablogslider .swiper-slide .textblock .white,
section.kablogslider .swiper-slide .textblock .mainheadline span.white {
  color: #fff;
}

section.kablogslider .swiper-slide .imgblock {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  z-index: -1;
}

section.kablogslider .swiper-slide .imgblock img {
  width: 100%;
  max-width: 100%;
  height: 100%;
  object-fit: cover;
}

section.kablogslider .swiper-slide .mobileblock {
  position: relative;
  display: none;
}

section.kablogslider .swiper-slide .shadow {
  position: absolute;
  top: auto;
  left: 0;
  bottom: 0;
  height: 60%;
  width: 100%;
  /*background: linear-gradient(0deg, rgba(51,51,51,0.95), rgba(51,51,51,0.001));*/
  background: linear-gradient(0deg, rgba(23,23,23,0.95), rgba(51,51,51,0.001));
  z-index: 0;
}

section.kablogslider .swiper-slide a.button {
  display: inline-block;
  padding: 8px 20px 6px 20px;
  text-align: center;
  border: 1px solid var(--ka-font-color-gold);
  font: 15px / 15px Work Sans, Lato, Arial;
  text-transform: uppercase;
  letter-spacing: .1em;
  min-width: 200px !important;
  max-width: calc(100% - 60px) !important;
  pointer-events: auto;
  color: var(--ka-font-color-gold);
  background-color: #fff;
}


section.kablogslider .teaserlist {
  position: absolute;
  top: auto;
  bottom: 40px;
  left: 0;
  width: 100%;
  z-index: +2;
  display: flex;
}

section.kablogslider .teaserlist .teaser,
section.kablogslider .mobileblock .teaser {
  position: relative;
  padding: 15px 0 0 0;
}

section.kablogslider .teaserlist .teaser .line,
section.kablogslider .mobileblock .teaser .line {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  padding: 0;
  height: 3px;
  background-color: #fff;
}

section.kablogslider .teaserlist .teaser a,
section.kablogslider .mobileblock .teaser a {
  display: block;
  color: #fff;
  font-size: 13px;
  line-height: 16px;
}

section.kablogslider .teaserlist .teaser a span {
  /*pointer-events: none;*/
}

section.kablogslider .teaserlist .teaser.active .line {
  background-color: var(--ka-font-color-gold2);
}
section.kablogslider .teaserlist .teaser.active * {
  color: var(--ka-font-color-gold2);
}

/* ****************************************************************************************************************** */
/* --- mod_newsreader ----------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

.mod_newsreader {
  position: relative;
}

.mod_newsreader .headerimage {
  position: relative;
  margin-top: 0px;
  width: 100%;
  height: 600px;
  max-height: 50vh;
  overflow: hidden;
}

.mod_newsreader .headerimage .image_container {
  position: relative;
  width: 100%;
  height: 100%;
}

.mod_newsreader .headerimage .image_container img {
  position: relative;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.mod_newsreader .metafields,
.mod_newsreader .metafields p.info {
  margin: 0px 0;
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
}

.mod_newsreader .metafields p.info {
  margin: 80px 0 0px 0;
}

.mod_newsreader .back {
  display: flex;
  justify-content: center;
  align-items: center;
}

.mod_newsreader .back a {
  margin: 40px 0 80px 0;
}


/* ****************************************************************************************************************** */
/* --- Newsletter --------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

.mod_subscribe.block {
    display: inline-block;
    width: 100%;
    float: none;
    clear: both;

}

/* ****************************************************************************************************************** */
/* --- TabControl --------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

.tabcontrol_tabs {
  position: relative;
  display: block;
  max-width: 1600px;
  margin: 0 auto;
  border-top:0px solid #888;
  border-right:0px solid #888;
  border-bottom:1px solid #888;
  border-left:0px solid #888;
}
.tabcontrol_tabs ul,
.tabcontrol_tabs li {
  margin:0;
  padding:0;
  list-style-type:none;
}
div.tabcontrol_tabs ul {
  margin-top:25px;
}
.center .tabcontrol_tabs ul {
  align-items: center;
  justify-content: center;
  display: flex;
}
.tabcontrol_tabs li.tabs {
  float:left;
  padding:10px 60px 10px 0;
  vertical-align:middle;
  text-align:center;
  font-family:Work Sans,Lato,Arial;
  color:#ccc;
  text-transform:uppercase;
  letter-spacing:.15em;
  cursor: pointer;
  font-weight:500;
}
.center .tabcontrol_tabs li.tabs {
  padding:10px 30px 10px 30px;
}

.tabcontrol_tabs li.selected,
.tabcontrol_tabs li.hover {
  color:#333;
}
.tabcontrol_panes {
  padding:50px 0 20px;
  /*
  border-top:1px solid #888;
  border-right:0px solid #888;
  border-bottom:0px solid #888;
  border-left:0px solid #888;
  */
}
.tabcontrol_panes h4 {
  width:100%;
  font-weight:500;
}
.tabcontrol_panes .panes {
}
div.ce_tabcontrol_pane div.panes div.title {
  display:none;
}

div.cols_41,
div.ce_tabcontrol_pane div.panes > div1 {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-column-gap: 40px;
  grid-row-gap: 40px;
}

div.cols_41 div.col20tab,
div.cols_41 div.col25tab,
div.ce_tabcontrol_pane div.panes div.col20tab1,
div.ce_tabcontrol_pane div.panes div.col25tab1,
div.ce_tabcontrol_pane div.panes div.col501,
div.ce_tabcontrol_pane div.panes div.col50m1  {
    display: block;
    margin: 0px;
    width: calc(100% - 0px);
}


/* ****************************************************************************************************************** */
/* --- kabookslider ------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

section.kabookslider {
  position: relative;
  width: 100%;
}

section.kabookslider .menublock {
  background-color: #fff;
}

section.kabookslider .teaserlist {

  position: relative;
  z-index: +1;
}

section.kabookslider .teaserlist a {
  display: block;
  margin: 2px 0;
  padding: 40px 40px 36px 40px;
  /*border-bottom: 1px solid var(--ka-bk-darkgrey);*/
  background-color: var(--ka-bk-lightgrey);
  font-family: Work Sans,Lato,Arial;
  text-transform: uppercase;
  letter-spacing: .15em;
  cursor: pointer;
  font-weight: 500;
  color: black;
}
section.kabookslider .teaserlist a * {
  font-family: Work Sans,Lato,Arial;
  text-transform: uppercase;
  letter-spacing: .15em;
  font-weight: 500;
}

section.kabookslider .teaserlist.active,
section.kabookslider .teaserlist a.active * {
  color:var(--ka-font-color-gold);
}

section.kabookslider .teaserlist a div {
  pointer-events: none;
}

section.kabookslider .bookblock {
  display: inline-block;
  width: 100%;
  z-index: 0;
  overflow: hidden;
}

section.kabookslider .bookblock .swiper-container {
  width: 100%;

}

section.kabookslider .swiper-container .swiper-slide .limit1000,
section.kabookslider .swiper-container .swiper-slide .limit1000int {
  max-width: 100%;
  margin-right: 0;
  margin-left: 0;
}

/* ****************************************************************************************************************** */
/* --- HVJ ---------------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

.bookingmobile {
    display:none;
}
div.text2col div.textblock div.text {
    margin-bottom:25px;
    padding:0;
}
div.limit1600,
div.limit1600int {
    max-width:1600px;
    margin-right:auto;
    margin-left:auto;
}
div.limit1600intc {
  position: relative;
  max-width:1630px;
  margin-right:auto;
  margin-left:auto;
}
div.limit1600intc .cols4inside {
  position: relative;
  display: flex;

  justify-content: space-between;
  /*
  display: inline-block;
  */
  /*
  left:15px;
  left:0px;
  */
  width: 100%;
}
div.limit1400 {
    max-width:1400px;
    margin-right:auto;
    margin-left:auto;
}
div.limit1200 {
    max-width:1200px;
    margin-right:auto;
    margin-left:auto;
}
#main div.text25--,
#main div.text25grey {
    display:block;
}
#main div.text25grey {
    height:550px;
}
div.text2col {
    clear:both;
    display:block;
    margin-top:0;
    margin-bottom:0;
    padding-top:0;
    padding-bottom:0;
}
div.text2col .top {
    display:none;
}
div.text2col div.flex-container {
  background-color:#fff;
  display: -webkit-flex;
  display: -ms-flex;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
div.text2col div.left,
div.text2col div.right,
div.text2col div.image_container {
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  align-self: flex-start;
  -webkit-align-self: flex-start;
}
div.text2col div.left div.imgbutton {
    width:36px;
    height:34px;
    min-height:42px;
    float:left;
    display:block;
    margin-top:0;
}
#main div.text2col .inside,
#main div.text25 .inside,
#main div.text25grey .inside {
  /*height:100%;*/
  display:inline-block;
  padding:0;
}
div.text2col div.left {
    float:left;
    margin-right:30px;
    margin-left:0;
    padding:20px 60px 0 0;
    background-color:#fff;
    width:calc(50% - 30px);
}
div.text2col.imgleft div.textblock {
    display:block;
    margin-left:30px;
}
div.text2col .image_container {
    float:left;
    margin:0;
    padding:0;
    text-align:right;
    width:calc(50% - 0px);
}
div.text2col .image_container img {
    width:100%;
    height:100%;
}
div.link4col {
    float:left;
    margin-right:30px;
    margin-bottom:30px;
    width:calc(25% - 30px);
}
div.link4col .inside {
    position:relative;
}
div.link4col .image_container * {
    line-height:1px;
}
div.link4col .text_container {
    width:100%;
    bottom:0;
    left:0;
    position:absolute;
    display:inline-block;
    padding-top:20px;
    padding-bottom:20px;
    padding-left:20px;
    text-align:left;
    background-color:rgba(0,0,0,.7);
    font:18px/1px Work Sans,Lato,Arial;
    color:#FFF;
    text-transform:uppercase;
    pointer-events: none;
}
div.cols4.back_white {
    background-color:#fff;
}
div.text25 div.buttons,
div.text50 div.buttons,
div.text25grey div.buttons {
    bottom:25px;
    left:0;
    position:absolute;
    display:block;
}
.boxgrey div.text50 div.buttons {
    margin-left:0px;
}
#main div.text25 ul,
#main div.text50 ul,
#main div.text25grey ul,
#main .textimg.linebottom ul
 {
    padding-left:20px;
    list-style-image:url("/files/intern/common/fairmont-hamburg-Punkt.png");
}
div.button_white,
div.button_gold,
div.button_tel,
div.text2col div.button_white,
div.text25 div.button_white,
div.text50 div.button_white,
div.text25grey div.button_white,
div.text2col div.button_gold,
div.text25 div.button_gold,
div.text50 div.button_gold,
div.text25grey div.button_gold,
div.specials div.button_gold {
    min-height:42px;
    margin-top:10px;
}
div.button_white a,
div.button_gold a,
div.button_gold span,
div.button_tel a,
div.text2col div.button_white a,
div.text25 div.button_white a,
div.text50 div.button_white a,
div.text25grey div.button_white a,
div.text2col div.button_gold a,
div.text2col div.button_gold span,
div.text25 div.button_gold a,
div.text25 div.button_gold span,
div.text50 div.button_gold a,
div.text50 div.button_gold span,
div.text25grey div.button_gold a,
div.text25grey div.button_gold span,
div.specials div.button_gold a,
div.specials div.button_gold span,
section.kaslider2 .teaserlist a div,
section.kaslider4 .teaserlist a,
.mod_newslist.newsblog .more a,
.mod_newsreader .back a {
  /*
    display:inline-block;
    padding:10px 20px;
    text-align:center;
    border:1px solid var(--ka-font-color-gold);
    font:16px/16px Work Sans,Lato,Arial;
    color:var(--ka-font-color-gold);
    text-transform:uppercase;
    letter-spacing:.15em;
    min-width: 220px !important;
    max-width: calc(100% - 60px) !important;
    pointer-events: auto;
  */
  display:inline-block;
  padding:8px 20px;
  text-align:center;
  border:1px solid var(--ka-font-color-gold);
  font:15px/15px Work Sans,Lato,Arial;
  color:var(--ka-font-color-gold);
  text-transform:uppercase;
  letter-spacing:.1em;
  min-width: 200px !important;
  max-width: calc(100% - 60px) !important;
  pointer-events: auto;
}

div.button_white.mobile {
  display: none;
}

div.button_tel a {
    font-weight:normal;
    letter-spacing:.01em;
    min-width: 260px !important;
}
div.button_white a:hover,
div.button_gold a:hover,
div.button_gold span:hover,
div.text2col div.button_white a:hover,
div.text25 div.button_white a:hover,
div.text50 div.button_white a:hover,
div.text25grey div.button_white a:hover,
div.text2col div.button_gold a:hover,
div.text2col div.button_gold span:hover,
div.text25 div.button_gold a:hover,
div.text25 div.button_gold span:hover,
div.text50 div.button_gold a:hover,
div.text50 div.button_gold span:hover,
div.text25grey div.button_gold a:hover,
div.specials div.button_gold a:hover,
div.specials div.button_gold span:hover,
section.kaslider2 .teaserlist a:hover div,
section.kaslider4 .teaserlist a:hover,
.mod_newslist.newsblog .more a:hover,
.mod_newsreader .back a:hover {
    border:1px solid var(--ka-fonthover-color-gold);
    color:var(--ka-fonthover-color-gold);
}
div.text2col div.button_gold a,
div.text25 div.button_gold a,
div.text50 div.button_gold a,
div.text25grey div.button_gold a,
div.specials div.button_gold a,
div.specials div.button_gold span {
    padding:10px 30px;
    text-align:center;
    background-color:var(--ka-font-color-gold);
    border:1px solid var(--ka-font-color-gold);
    color:#FFF;
}
div.text2col div.button_gold a:hover,
div.text25 div.button_gold a:hover,
div.text50 div.button_gold a:hover,
div.text25grey div.button_gold a:hover,
div.specials div.button_gold a:hover,
div.specials div.button_gold span:hover {
    background-color:var(--ka-fonthover-color-gold);
    border:1px solid var(--ka-fonthover-color-gold);
    color:#FFF;
}
div.text25,
div.text25grey {
    min-height:550px;
    float:left;
    margin-right:30px;
    margin-bottom:30px;
    width:calc(25% - 30px);
}
div.text25.grey,
div.text25grey {
  position: relative;

  padding:30px 30px 0;
  background-color:#f5f5f5;
}
div.text25.white {
    padding:0;
}
div.text25.white .inside,
div.text50.white .inside {
    background-color:#fff;
}

div.grid div.text25,
div.grid div.text25grey {
    min-height:550px;
    margin-right:0px;
    margin-bottom:30px;
    width:calc(100% - 0px);
}

div.grid div.text25.grey,
div.grid div.text25grey {
  position: relative;

  padding:30px 30px 0 30px;
  background-color:#f5f5f5;
}
div.grid div.text25.white {
  padding:0;
}

body.stripes div.text25,
body.stripes div.text25 .inside,
body.stripes div.text50 .inside,
body.stripes section.kaslider2 .swiper-slide .textblock,
body.stripes section.kaslider4 .swiper-slide .textblock,
section.kaslider2.boxstripes .swiper-slide .textblock {
  background-color: inherit !important;
}
div.text50 {
    min-height:550px;
    float:left;
    margin-right:30px;
    margin-bottom:30px;
    width:calc(50% - 30px);
}
.minheight750 div.text50 {
  min-height:750px;
}

div.text25.white,
div.text50.white {
  padding:0;
}
div.text50.grey {
    padding:30px 30px 0;
    background-color:#f5f5f5;
}
div.boxgrey div.slider50 {
    margin-right:0;
    width:calc(50% - 0px);
}
div.img25 {
  min-height:550px;
  margin:0 30px 30px 0;
  padding:0;
  width:calc(25% - 30px);
}
div.img50 {
  position: relative;
  margin:0 30px 30px 0;
  padding:0;
  width:calc(50% - 30px);
}
div.slider50 {
  position: relative;
  min-height:550px;
  float:left;
  margin:0 30px 30px 0;
  padding:0;
  width:calc(50% - 30px);
}
div.slider75 {
  position: relative;
  float:left;
  margin:0 30px 30px 0;
  padding:0;
  width: calc(75% - 30px);
}

div.grid div.img25 {
  position: relative;
  min-height:550px;
  margin:0 0 30px 0;
  padding:0;
  width:calc(100% - 00px);
}
div.grid div.img50 {
  position: relative;
  margin:0 0 30px 0;
  padding:0;
  width:calc(100% - 0px);
}
div.grid div.slider50 {
  position: relative;
  min-height:550px;
  margin:0 0px 30px 0;
  padding:0;
  width:calc(100% - 0px);
}
div.grid div.slider75 {
  position: relative;
  float:left;
  margin:0 0px 30px 0;
  padding:0;
  width: calc(100% - 00px);
}

div.boxgrey div.textblock {

    /*padding-left:30px;*/
}
div.boxgrey div.cols4 div {
    margin-bottom:0;
}
div.boxgrey div.cols4 div.text25,
div.boxgrey div.cols4 div.text50 {
  position: relative;
  /*
  padding-top:20px;
  padding-right:60px;
  background-color:#fff;
  */

  padding-top:60px;
  padding-left:60px;
  padding-right:60px;
  background-color:#fff;
}
div.boxgrey div.cols4 div.text50 {
    width:50%;
    margin-right:0;
}
div.text25 h3,
div.text25grey h3 {
    font-size:30px;
    color:#333;
    letter-spacing:.15em;
}
div.text25 h5,
div.text25grey h4 {
    text-transform:uppercase;
}

div.cols4.t2b2 .cols4inside div.text50,
div.cols4.t2b2 .cols4inside div.img50 {
  width: calc(50% - 15px);
}

div.cols4.t2b2 .cols4inside div.text50 {
  margin-right: 15px;
}
div.cols4.t2b2 .cols4inside div.img50 {
  margin-left: 15px;
  margin-right: 0px;
}


div.width100.slogan {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  background-size: cover;
  min-height: 250px;
}
div.width100.slogan .inside {
  height: 100%;
}
div.width100.slogan div.image {
    min-height:300px;
    top:0;
    position:absolute;
    border:1px solid #0f0;
    z-index:901;
}
div.startpicdark div.image,
div.startpicdark div.image img,
div.width100 div.image,
div.width100 div.image img {
    width:100%;
}
div.width100 .textblock {
    width:100%;
    margin:0;
    padding:100px 0;
    z-index:902;
}
#main div.width100 .textblock .inside {
    max-width:1200px;
    display:block;
    margin:0 auto;
    padding:50px;
    z-index:903;
}
div.width100 .textblock img {
    float:left;
    margin-right:50px;
}
div.width100 .textblock p {
    text-align:center;
    font:30px/1.5em Spectral,PlayFair,Arial;
    font-style:italic;
    color:#FFF;
}

div.button_bkgold {
  position: relative;
}

div.button_bkgold a {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 15px 30px 15px 15px;
  cursor: pointer;
  display: inline-block;
  padding: 10px 20px 8px 20px;
  text-align: center;
  font: 15px/15px Work Sans,Lato,Arial;
  background-color:var(--ka-font-color-gold);
  color: #FFF;
  text-transform: uppercase;
  letter-spacing: .1em;
}

div.tablereserve {
  width:100%;
  height:400px;
  display:flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  margin-top:0;
  margin-bottom:0;
  background-repeat: no-repeat;
  background-size: cover;
}
div.tablereserve.bkcenter {
  background-position-x: center;
}
div.tablereserve .textblock {
  width:100%;
}
div.tablereserve .inside {
    width:1200px;
    max-width:95%;
    margin:0px;
    margin-right:auto;
    margin-left:auto;
    text-align:center;
}
div.tablereserve div.buttonblock {
    width:100%;
    left:auto;
    right:auto;
    display:inline-block;
}
div.tablereserve div.buttonblock .insidebutton {
    display:inline-block;
    margin-right:auto;
    margin-left:auto;
}
div.tablereserve div.buttonblock .button_gold-1,
div.tablereserve div.buttonblock .button_gold-2,
div.tablereserve div.buttonblock .button_gold-3 {
  min-width: calc(33.3% - 20px);
  margin: 0 10px;
}
div.tablereserve div.buttonblock .button_gold-1 {
    display: inline-block;


}
div.tablereserve div.buttonblock .button_gold-1 a {
    z-index: 999;
}

div.tablereserve h2,
div.tablereserve p,
div.tablereserve strong,
div.tablereserve a {
    width:100%;
    text-align:center;
    color:#FFF;
}
div.tablereserve strong {
    font-size:20px;
}
div.tablereserve div.buttonblock {
  width:100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.ie div.tablereserve div.buttonblock {
    display: inline-block;
    width:100%;
}
#main div.tablereserve div.buttonblock .insidebutton {
    display: flex;
    align-items: center;
    justify-content: center;
}
div.tablereserve .buttonblock a {
  /*
  min-width:250px;
  float:left;
  margin-top:40px;
  margin-right:10px;
  margin-left:10px;
  padding-top:10px;
  padding-bottom:10px;
  text-align:center;
  background-color:var(--ka-font-color-gold);
  font:16px Work Sans,Lato,Arial;
  text-transform:uppercase;
  letter-spacing:.15em;
  width:calc(33.3% - 20px);
  */

  min-width:220px;
  float:left;
  margin:40px 0 0 0;
  padding:8px 10px 9px 10px;
  text-align:center;
  background-color:var(--ka-font-color-gold);
  font:15px Work Sans,Lato,Arial;
  text-transform:uppercase;
  letter-spacing:.1em;
  width:calc(33.3% - 10px);
}

div.tablereserve.widebtn .buttonblock a {
  font-family:Work Sans,PlayFair,Arial;
  font-size: 44px;
  line-height: 48px;
  letter-spacing:.1em;
  font-weight: 300;
  padding:8px 30px;
  width: 100%;
}

div.eventservice {
    float:left;
    display:block;
    margin-right:30px;
    margin-bottom:30px;
    width:calc(25% - 30px);
}
div.link2col {
    float:left;
    display:block;
    margin:0 30px 30px 0;
    padding:0;
    width:calc(50% - 30px);
}
div.boxgrey div.limit1400 div.link2col {
    margin-right:15px;
    margin-left:15px;
}
#main div.eventservice div.inside,
#main div.link2col div.inside {
    margin:0;
    padding:0;
}
div.eventservice div.text_container,
div.link2col div.text_container {
    width:100%;
    bottom:0;
    left:0;
    position:absolute;
    display:block;
    margin-bottom:0;
    margin-left:0;
    line-height:1em;
}
div.eventservice div.text_container a {
    width:100%;
    display:block;
    margin:0;
    padding:15px 30px;
    background-color:rgba(51,51,51,.8);
    font:17px/1em Work Sans,Lato,Arial;
    color:#FFF;
    text-transform:uppercase;
    letter-spacing:.15em;
}
div.link2col div.text_container a {
    min-width:260px;
    max-width:100%;
    display:block;
    margin:0;
    padding:20px 40px;
    background-color:rgba(51,51,51,.8);
    font:24px/30px Work Sans,Lato,Arial;
    color:#FFF;
    text-transform:uppercase;
    letter-spacing:.15em;
    font-weight:300;
}
div.eventservice a img:hover,
div.link2col a img:hover {
    -webkit-filter: saturate(50%); /* Safari */
    filter: saturate(50%);
}
div.eventservice div.text_container a:hover {
}

/* ****************************************************************************************************************** */
/* --- cols4 -------------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

div.cols4 {
  position: relative;
}

div.cols4 .rsts-slide > img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

div.cols4.minh650 {
  min-height: 650px;
}

/* ****************************************************************************************************************** */
/* --- specials ----------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

div.specials {
    float:left;
    display:block;
    /*margin:0 30px 30px 0;*/
    margin:0 0px 30px 0;
    padding:0;
    width:calc(33.3% - 30px);
    transition: 1s;
}
div.specials .insidespecials {
  position:relative;
  width:100%;
  height:100%;
  margin:0;
  padding:0;
}
div.specials .image_container {
  width:100%;
  height:100%;
  margin:0;
  padding:0;
}
div.specials .image_container a {
    font-size:1px;
    line-height:1px;
}
div.specials .darkedge {
    width:100%;
    bottom:0;
    left:0;
    position:absolute;
    display:block;
    margin-top:0;
    margin-bottom:0;
    margin-left:0;
    padding-top:15px;
    padding-bottom:15px;
    padding-left:30px;
    background-color:rgba(0,0,0,.7);
    transition: 0.5s all ease-in-out !important;
    pointer-events: none;
}
div.specials a,
div.eventservice a,
div.link2col a {
    font-size:16px;
    line-height:1em;
}
div.specials div.text_container,
div.link2col div.dark,
div.eventservice div.dark {
    width:100%;
    left:0;
    top:0;
    position:absolute;
    display:block;
    margin:0;
    padding:30px 30px 0;
    background-color:rgba(51,51,51,.01);
    height:calc(100% - 0px);
    /*pointer-events: none;*/
    transition: 0.5s all ease-in-out !important;
}

div.specials div.text_container {
  display: none;
  height: 100%;
}

div.specials div.text_container > a {
  width: 100%;
  height: 100%;
  background-color: rgba(255,255,255,0.001);
  color: rgba(255,255,255,0.001);
  position: relative;
  display: inline-block;
}

/* sichtbar machen beim Hovern */
div.specials:hover div.text_container,
div.eventservice:hover div.dark,
div.link2col:hover div.dark {
    display:block;
    background-color:rgba(51,51,51,.7);
    transition: 0.5s all ease-in-out !important;
}
div.specials:hover .darkedge {
    background-color:rgba(51,51,51,.01);
    transition: 0.5s all ease-in-out !important;
}
div.specials:hover .darkedge h3 {
    color:rgba(51,51,51,.01);
    transition: 0.5s all ease-in-out !important;
}
div.specials div.dark {
    margin:0;
    padding:30px 30px 0;
    height:calc(100% - 0px);
}
div.specials .darkedge h3 {
    min-width:200px;
    margin-top:0;
    margin-bottom:0;
    padding-top:0;
    padding-bottom:0;
    font-size:18px;
    color:#FFF;
    letter-spacing:.15em;
    font-weight:300;
}
div.specials div.text_container h3 {
    margin-top:0;
    margin-bottom:30px;
    padding-top:0;
    padding-bottom:0;
    font-size:30px;
    color:#fff;
    letter-spacing:.1em;
    font-weight:300;
}
div.specials div.text_container h6 {
    margin-top:0;
    margin-bottom:0;
    padding-top:0;
    padding-bottom:0;
    font:18px/1.3em Spectral,Times New Roman;
    font-weight:normal;
    color:#FFF;
}
div.specials div.text_container h3,
div.specials div.text_container h6,
div.specials div.text_container a {
    background-color:rgba(140,110,74,.01);
    border:0px solid rgba(140,110,74,.01);
    color:rgba(255,255,255,.01);
}

/* sichtbar machen beim Hovern */
div.specials div.buttons {
  top: auto;
  bottom:20px;
  left:30px;
  position:absolute;
  display:block;


}

/* sichtbar machen beim Hovern */
div.specials:hover div.text_container h3,
div.specials:hover div.text_container h6 {
    color:rgba(255,255,255,1);
    transition: 0.5s all ease-in-out !important;
}

/* sichtbar machen beim Hovern */
div.specials:hover div.text_container a {
  /*
    background-color:rgba(140,110,74,1);
    border:0px solid;
    color:rgba(255,255,255,1);
    transition: 0.5s all ease-in-out !important;
  */
}


div.anfrage {
    height:380px;
    display:block;
    padding-top:50;
    text-align:center;
    background-color:#f5f5f5;
    justify-content: center;
    align-items: center;
    display: flex;
    flex-direction: column;
}
div.anfrage.logo {
  padding:50px 25px;
}
div.anfrage h1 {
    margin-bottom:10px;
    font-family:Spectral,Times New Roman;
    text-transform:none;
    letter-spacing:0em;
}
div.anfrage a.button {
    margin-top:30px;
    padding:10px 50px;
    background-color:#f5f5f5;
    border:1px solid var(--ka-font-color-gold);
    font:16px Work Sans,Lato,Arial;
    color:var(--ka-font-color-gold);
    letter-spacing:.15em;
}
div.anfrage a.biglink {
    font-size:30px;
}
.contactpersoncontainer {
    width:100%;
    margin-right:auto;
    margin-left:auto;
    text-align:center;
}
.contactpersontext img {
    width:300px !important;
    max-width:100% !important;
}

.contactperson.list {
    width:100%;
    float:none;
    clear:both;
    display:inline-block;
    padding-top:5px;
    padding-bottom:5px;
    border-bottom:1px solid #f1f1f1;
    /*
    display: grid;
    grid-template-columns: 1fr 1fr 1fr;
    */
}
div.contactperson.headline div {
    font:14px Work Sans,Lato,Arial;
    color:var(--ka-font-color-gold);
    text-transform:uppercase;
    letter-spacing:.1em;
}
div.contactperson.list div.pre,
div.contactperson.headline div div.pre {
    display:none;
}
.contactperson.nocomm .comm {
    display:none;
}
div.contactperson.block div.pre {
    width:45px;
    float:left;
    margin-top:2px;
    margin-left:20px;
    font:14px Work Sans,Lato,Arial;
    color:var(--ka-font-color-gold);
    text-transform:uppercase;
}
.contactperson.block {
    float:left;
    display:block;
    margin-right:110px;
    margin-bottom:50px;
    padding-top:5px;
    padding-bottom:5px;
    border-bottom:0px solid #f1f1f1;
    width:calc(25% - 110px);
}
.contactperson.block.col33 {
  margin-right:0px;
  width:calc(33.3% - 0px);
}

/* Herr Peters */
.contactpersoncontainer .contactperson.block.nocomm {
    float:none;
    clear:both;
    display:block;
    margin-right:auto;
    margin-left:auto;
}
.contactperson.block .name {
    font-weight:600;
}
.contactperson.block .insidecontact {
    position:relative;
    margin:0 0 10px;
    padding:0;
    line-height:1em;
}
.contactperson.block .container {
    display:inline-block;
    margin:0;
    padding:0;
    line-height:1em;
}
.contactperson.block .person {
    width:100%;
    bottom:3px;
    left:0;
    position:absolute;
    display:block;
    margin-top:0;
    margin-bottom:0;
    padding:10px 20px;
    background-color:rgba(140,110,74,.75);
    line-height:1em;
}
.contactperson.block .person div {
    color:#FFF;
}
.contactperson.list .bereich,
.contactperson.list .position,
.contactperson.list .name,
.contactperson.list .email,
.contactperson.list .tel {
    float:left;
    display:block;
    margin-right:15px;
    width:calc(33% - 15px);
}
.contactperson.block .bereich,
.contactperson.block .position,
.contactperson.block .name,
.contactperson.block .email,
.contactperson.block .tel {
    width:100%;
    float:none;
    clear:both;
    display:block;
    margin-right:0;
}
.contactperson.list .bereich,
.contactperson.list .position,
.contactperson.list .name,
.contactperson.list .email a,
.contactperson.list .tel {
    word-wrap:break-word;
}
.contactperson.block .email a,
.contactperson.block .tel .text {
    display:inline-block;
    width:calc(100% - 70px);
    -ms-hyphens: auto;
    -webkit-hyphens: auto;
    hyphens: auto;
}

.hotelpartner {
    float:left;
    display:block;
    margin-right:30px;
    margin-bottom:30px;
    padding-top:5px;
    padding-bottom:5px;
    border-bottom:0px solid #f1f1f1;
    width:calc(25% - 30px);
}
.rooms {
    width:100%;
    display:block;
}
.rooms .insiderooms {
    height:44px;
    display:block;
    padding-top:5px;
    padding-bottom:5px;
    border-top:0px solid #f1f1f1;
    border-right:0px solid #f1f1f1;
    border-bottom:1px solid #f1f1f1;
    border-left:0px solid #f1f1f1;
}
.rooms .insiderooms.headline {
    height:65px;
}
.rooms div div {
    width:9%;
    float:left;
    display:inline-block;
    padding-top:5px;
    padding-bottom:5px;
    text-align:center;
}
.rooms div div.name {
    width:22%;
    padding-left:10px;
    text-align:left;
}
.rooms div div.dimension {
    width:15%;
}
.presseinfo {
    float:none;
    clear:both;
    display:block;
    margin:0 0 20px;
    padding:10px 0;
    border-bottom:1 solid #1f1f1f;
}
.presseinfo div.container {
    width:200px;
    float:left;
    display:block;
    margin-right:20px;
}
.panes img.mime_icon {
    width:18px;
    height:18px;
}
div.bookingfloat {
    margin-right:50px;
    margin-bottom:30px;
    margin-left:0;
    padding-right:0;
    padding-left:0;
}
.instagram {
    left:-5px;
    position:relative;
    overflow:hidden;
    display:block;
    width:calc(100% + 10px);
}
.instagram .image_container img {
    float:left;
    margin-right:5px;
    margin-left:5px;
    padding:0;
    width:calc(12.5% - 10px);
}
.instagram .linkbox {
    margin-right:5px;
    margin-left:5px;
    text-align:center;
    width:calc(100% - 0px);
    top:calc(50% - 12px);
    left:0px;
    position:absolute;
}
.instagram .linkbox a {
    padding:15px 30px;
    background-color:rgba(0,0,0,.8);
    font-size:20px;
    color:#FFF;
    letter-spacing:.1;
}
/*
div.galerie .ce_youtube {
    float:left;
    display:inline-block;
    margin-right:30px;
    margin-bottom:30px;
    width:calc(25% - 30px) !important;
    1height:400px;
}
div.galerie .ce_youtube h5 {
    margin-bottom:10px;
    color:#000;
    text-transform:none;
    letter-spacing:0px;
}
*/
div.galerie .ce_youtube {
    float:left;
    display:inline-block;
    position: relative;
    width:calc(25% - 30px) !important;
    margin-right:30px;
    margin-bottom:30px;
}
div.galerie .ce_youtube .video_container {
    position: relative;
    overflow: hidden;
    width: 100%;
    padding-top: 56.25%; /* 16:9 Aspect Ratio (divide 9 by 16 = 0.5625) */
}
div.galerie .ce_youtube .video_container iframe {
     position: absolute;
     top: 0; left: 0; right: 0; bottom: 0;
     width: 100% !important;
     /*height: 100% !important;*/
}

div.galerie .ce_youtube h5 {
    margin-bottom:10px;
    color:#000;
    text-transform:none;
    letter-spacing:0px;
}

#dlh_googlemap_1 {
    width: 100% !important;
    height: 380px !important;
    padding-bottom: 0px !important;
    background:transparent !important;
}
#dlh_googlemap_1 p,
#dlh_googlemap_1 a,
#dlh_googlemap_1 div.routinglink {
    font:14px/1.1em Work Sans,Lato,Arial;
}
#dlh_googlemap_1 a,
#dlh_googlemap_1 div.routinglink {
    font-weight:bold;
}
#dlh_googlemap_1 a {
    float:left;
    display:block;
    margin-bottom:5px;
}
#dlh_googlemap_1 input[type="text"],
#dlh_googlemap_1 input[type="email"],
#dlh_googlemap_1 input[type="search"] {
    width:70%;
    float:left;
    margin-top:0;
    margin-bottom:0;
    background-color:#f5f5f5;
    font-family:Work Sans,Lato,Arial;
}
#dlh_googlemap_1 input[type="submit"] {
    margin-top:5px;
    margin-left:0;
    padding-top:3px;
    padding-bottom:3px;
    background-color:#fff;
    border:1px solid var(--ka-font-color-gold);
    font-family:Work Sans,Lato,Arial;
    color:var(--ka-font-color-gold);
    text-transform:uppercase;
}
div.pdf_link {
    display:none;
}
body.galerie div#menuband,
body.galerie div.MenubandBig,
body.galerie div.MenubandSmall {
    background-color: rgba(51,51,51,.93) !important;
}
div.galerie div.pdf_link {
    width:100%;
    display:block;
    margin-top:0;
    margin-bottom:50px;
    text-align:center;
    z-index:990;
}
div.galerie div.pdf_link .text {
    display:block;
    margin-top:25px;
    margin-bottom:15px;
    font:18px Work Sans,Lato,Arial;
    color:var(--ka-font-color-gold);
    text-transform:uppercase;
    letter-spacing:.15em;
}
div.galerie div.pdf_link a {
    margin-right:3px;
    margin-left:3px;
    padding:5px;
}

/* ****************************************************************************************************************** */
/* --- Navigation Line ---------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

/*#main.navlinefixed .inside .mod_article:nth-child(1) .limit1600 {*/

#main .inside .mod_article:nth-child(1) {
  padding: 0px 0 0 0;
}

#main.navlinefixed .inside .mod_article:nth-child(1) {
  padding: 72px 0 0 0;
}



#main .nav_line {
  position: relative;
  top: 0px;
  width:100%;
  min-height:36px;
  max-width:100%inherit;
  overflow:visible;
  float:none;
  clear:both;
  display:inline-block;
  margin-top:30px;
  margin-right:auto;
  margin-left:auto;
  padding-top:20px;
  padding-bottom:0px;
  text-align:center;
  background-color:rgba(255,255,255,0.8);
}
#main .nav_line.fixed {
  position: fixed;
  margin-top: 0;
  top: 95px;
  z-index: 933;
}

#main .nav_line .mobile,
#main .nav_line .desktop {
  position: relative;
  width:100%;
  display:flex;
  justify-content: center;
  padding-bottom:10px;

  max-width:1600px;
  margin-right:auto;
  margin-left:auto;
  text-align:center;
  border-bottom:1px solid #b3b3b3;
}

#main .nav_line ul {
}
nav.nav_line li {
    float:left;
    padding-right:20px;
    padding-left:20px;
    font:14px Work Sans,Lato,Arial;
    text-transform:uppercase;
}
nav.nav_line li a {
    font:14px Work Sans,Lato,Arial;
    color:#c9c9c9;
}
#main .nav_line div.mobile {
    display:none;
}
#main .nav_line div.mobile .activeitem {
    width:250px;
    min-height:36px;
    position:relative;
    float:none;
    clear:both;
    padding:10px 0 10px 15px;
    text-align:left;
    background:#fff url("/files/intern/common/fairmont-hamburg-Pfeil-dropdown.png") 97% center no-repeat;
    font:13px Work Sans,Lato,Arial;
    text-transform:uppercase;
    cursor: pointer;
    z-index:940;
}
#main .nav_line div.items {
    left:0;
    top:36px;
    position:absolute;
    overflow:visible;
    display:none;

}
#main .nav_line div.mobile .insidemobile {
    width:220px;
    margin-right:auto;
    margin-left:auto;
}
#main .nav_line div.mobile .activeitem:hover div.items {
    display:block;
}
#main .nav_line div.mobile li {
    width:250px;
    min-height:32px;
    float:left;
    clear:both;
    display:block;
    margin:0;
    padding:0;
}
#main .nav_line div.mobile li a,
#main .nav_line div.mobile li.active {
    width:250px;
    min-height:32px;
    float:left;
    clear:both;
    display:block;
    padding:10px 0 10px 15px;
    text-align:left;
    background-color:rgba(255,255,255,.9);
    border-bottom:1px solid #dedede;
    font:13px Work Sans,Lato,Arial;
    color:#333;
}
#main .nav_line div.mobile li.active {
    background-color:rgba(240,240,240,.9);
}

/* ****************************************************************************************************************** */
/* --- Unternehmen -------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

.produktion {
    min-height:670px;
    float:left;
    margin-right:30px;
    margin-bottom:30px;
    width:calc(33% - 30px);
}
.historie {
    margin-bottom:5px;
    padding:5px 3px 0;
    background-color:#e3e3e3;
}
.historie h1,
.historie h2,
.historie h3,
.historie h4,
.historie h5,
.historie h6,
.historie p,
.historie pre,
.historie blockquote,
.historie table,
.historie ol,
.historie ul,
.historie form {
    float:left;
    margin-top:0;
    margin-bottom:0;
    padding-top:0;
}
.historie h4 {
    float:left;
    margin-top:5px;
    margin-right:15px;
    padding-left:5px;
    font-size:1em;
    color:#0076bd;
}
.historie h1,
.historie h2,
.historie h3,
.historie h4,
.historie h5,
.historie h6 {
}
.historie p,
.historie pre,
.historie blockquote,
.historie table,
.historie ol,
.historie ul,
.historie form {
    width:90%;
    margin-left:5px;
}
#ansprechpartner div.col33,
#contact-persons div.col33,
#interlocuteur div.col33,
#contactpersoon-333 div.col33 {
    min-height:670px;
}


/* ****************************************************************************************************************** */
/* --- Intern ------------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

#pressebereich-oeffentlich .ce_previewdownload .preview_image,
#intern-pressebereich .ce_previewdownload .preview_image {
    max-width:120px;
    margin-right:20px;
}
#pressebereich-oeffentlich .ce_previewdownload .mime_icon,
#intern-pressebereich .ce_previewdownload .mime_icon {
    display:none;
}



/* ****************************************************************************************************************** */
/* --- ka_slider2 --------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

section.kaslider2 {
    position: relative;
    height: 100%;
    display: block;
    margin: 80px 0 80px 0;
}

section.kaslider2 .teaserlist {
  position: relative;
	max-width: 1400px;
	margin:0 auto 50px auto;
	display:grid;
  column-gap: 20px;
	text-align: center;
  grid-auto-rows: 1fr;

}
section.kaslider2.cnt_2 .teaserlist {
		grid-template-columns: 1fr 1fr;
}
section.kaslider2.cnt_3 .teaserlist {
		grid-template-columns: 1fr 1fr 1fr;
}
section.kaslider2.cnt_4 .teaserlist {
		grid-template-columns: 1fr 1fr 1fr 1fr;
}
section.kaslider2.cnt_5 .teaserlist {
		grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
}
section.kaslider2.cnt_6 .teaserlist {
		grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
}
section.kaslider2.cnt_7 .teaserlist {
		grid-template-columns: 1fr 1fr 1fr 1fr;
}
section.kaslider2.cnt_8 .teaserlist {
		grid-template-columns: 1fr 1fr 1fr 1fr;
}
section.kaslider2 .teaserlist .teaser {
  width: 100%;
	margin: 0 auto;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  display: flex;
  display: contents;

}

section.kaslider2 .teaserlist a {
  width: calc(100% - 0px);
}

section.kaslider2 .teaserlist a div {
	margin: 10px 0;
  max-width: calc(100% - 0px) !important;
  min-width: 40px !important;
  align-items: center;
  justify-content: center;
  display: flex;
  font-size: 14px;
  min-height: 60px;
}

section.kaslider2 .dropdownlist {
  display: none;
}

section.kaslider2 .swiper-container {
  position: relative;
  width: 100%;
	max-width: 1400px;

  height: 100%;
  margin: 0 auto;
  position: relative;
  overflow: hidden;
  list-style: none;

  padding: 0;
  z-index: 1;
}

section.kaslider2 .swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
	z-index: 1;
  display: flex;
  /*
  das verhindert das smooth bi autoheight !!!
  transition-property: transform;
  */
  box-sizing: content-box;
  align-items: center;
}

section.kaslider2 .textblock .headline {
    margin: 0px 0 40px 0;
    /*
    font-family: var(--ka-font-family-menu);
    font-size: 20px;
    line-height: 24px;
    font-weight: 500;
    letter-spacing: 0.1em;
    */
    text-transform: uppercase;
}

section.kaslider2 .textblock .headline2 {
    margin: 5px 0 15px 0;
    /*
    font-family: var(--ka-font-family-menu);
    font-size: 20px;
    line-height: 24px;
    font-weight: 500;
    letter-spacing: 0.1em;
    */
    text-transform: uppercase;
}

section.kaslider2 .textblock .text {
    margin: 0 0 15px 0;
    text-transform: none;
		/*
    font-size: 18px;
    line-height: 22px;
    color: #7c7c7c;
    letter-spacing: 0.025em;
    font-weight: 400;
		*/
}

section.kaslider2 .textblock span {
    border-bottom: 1px solid var(--ka-font-color);
}

section.kaslider2 .swiper-button-prev {
    position:absolute;
    width:50px;
    height:70px;
    top:calc(50% + 70px);
    left:calc(50% - 770px);
    background-image:url("/files/intern/common/galerie-pfeil-links-schwarz.png");
    background-repeat: no-repeat;
    background-position: left center;
    transition: background-position 0.5s ease-in-out;
    cursor:pointer;
    z-index: +1;
}

section.kaslider2 .swiper-button-next {
    position:absolute;
    width:50px;
    height:70px;
    top:calc(50% + 70px);
    left:calc(50% + 720px);
    background-image:url("/files/intern/common/galerie-pfeil-rechts-schwarz.png");
    background-repeat: no-repeat;
    background-position: center;
    background-position: right center;
    transition: background-position 0.5s ease-in-out;
    cursor:pointer;
    z-index: +1;
}

section.kaslider2.markergrey .swiper-button-prev {
    background-image:url("/files/intern/common/pfeil-slider-links-grey.svg");
}
section.kaslider2.markergrey .swiper-button-next {
    background-image:url("/files/intern/common/pfeil-slider-rechts-grey.svg");
}

section.kaslider2 .swiper-slide {
  width: 100%;
  max-width: 1400px;
  /*
  height: 100%;

  flex-shrink: 0;
  */
  display: flex;
  justify-content: center;
  flex-direction:column;


  opacity: 1;
  margin: 0;
	padding: 0;

  overflow: hidden;
  transition: all 0.5s ease-out;
  transition-property: transform;

}

section.kaslider2 .swiper-slide > .flexcontainer {
  justify-content: space-between;
}

section.kaslider2 .swiper-slide .left{
	width: calc(50% - 10px);
	padding-right: 10px;
}
section.kaslider2 .swiper-slide .right{
	width: calc(50% - 10px);
	padding-left: 10px;
}

section.kaslider2 .swiper-slide .textblock {
	background-color: #f5f5f5;
	text-align: left;
	display: flex;
	flex-direction:column;
	justify-content: flex-start;
	align-items: flex-start;
	/*width: calc(50% - 100px);*/
	padding: 40px 50px;
}

section.kaslider2 .swiper-slide .col33.left,
section.kaslider2 .swiper-slide .col33.right {
	width: calc(33.3% - 15px);
}
section.kaslider2 .swiper-slide .col33.textblock{
	width: calc(33.3% - 200px);
}

section.kaslider2.white .swiper-slide .textblock {
	background-color: #fff;
}

section.kaslider2 .swiper-slide .textblock .button {
	margin: 20px 0 20px 0;

}

section.kaslider2 .swiper-slide .textblock .button a {
	background-color: var(--ka-font-color-gold);
	display: block;
  padding: 10px 20px 8px 20px;
  min-width: 180px;
  text-align: center;
  color: #fff;
  text-transform: uppercase;
  line-height: 16px;
  /*font-family: "Spectral", Times New Roman;*/
}

section.kaslider2 .swiper-slide .imgblock {
	/*height: 100%;*/
}

section.kaslider2 .swiper-slide .imgblock img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

section.kaslider2 .swiper-slide.swiper-slide-active,
section.kaslider2 .swiper-slide.swiper-slide-duplicate-active {
    opacity: 1;
}


/*
section.kaslider2 .swiper-slide .textblock h6,
section.kaslider2 .swiper-slide .textblock h4,
section.kaslider2 .swiper-slide .textblock .text {
    padding: 0 100px;
}

section.kaslider2 .container_img1 .text {
    font-family: var(--ka-font-family-basker);
    text-transform: none;
    font-size: 18px;
    line-height: 22px;
    color: #7c7c7c;
    letter-spacing: 0.025em;
    font-weight: 400;
}
*/

/* ****************************************************************************************************************** */
/* --- ka_slider3 --------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

section.kaslider3 {
  position: relative;
  height: 100%;
  display: block;
  margin: 0px 0 0px 0;
  padding: 40px 0 40px 0;
  /*background-color: #f5f5f5;*/
}

/*
section.kaslider3 .swiper-container {
	 width: 100%;
	 padding-top: 50px;
	 padding-bottom: 180px;
}

section.kaslider3 .swiper-wrapper {
	position: relative;
}
*/

section.kaslider3 .swiper-container {
  margin: 0px auto;
  /*
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  */
  max-width: 1600px;
  overflow: hidden;
  /* Fix of Webkit flickering */
  z-index: 1;
}

section.kaslider3 .swiper-wrapper {
  width: 100%;
  /*
  position: relative;


  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  box-sizing: content-box;


  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  box-sizing: content-box;
  */
  align-items: center;

}

section.kaslider3 .swiper-slide {
  /*
	background-position: center;
 	background-size: cover;
  */
 	/*width: 33.3%;
  width: 100%;
  width: 450px;

  height: 800px;

  -webkit-box-reflect: below 1px linear-gradient(transparent, transparent, transparent, transparent, #0006);

  display: flex;
  flex-direction: column;
  */
  /*justify-content: flex-start;*/
  /*flex-wrap: wrap;*/

  /*

  width: 100%;
  max-width: 290px;
  height: 100%;
  position: relative;
  transition-property: transform;

  display: flex;
  justify-content: center;
  align-items: flex-end;
  flex-direction:column;
  flex-shrink: 0;

  opacity: 0.01;
  opacity: 1;
  margin: 0;

  overflow: hidden;
  height: calc(100% - 0px);
  transition: all 0.5s ease-out;

  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform;
  */

}
/*
#sslide:after {
		content: "";
	  display: block;
	  background: -moz-element(#sslide) no-repeat;
	  width: auto;
	  height: 100%;
	  -moz-transform: scaleY(-1);
	  opacity:0.7;
}
*/

section.kaslider3 .swiper-slide .container,
section.kaslider3 .swiper-slide .textblock,
section.kaslider3 .swiper-slide .imgblock,
section.kaslider3 .swiper-slide img,
section.kaslider3 .swiper-slide video {
		width: 100%;
		height: 100%;
}

section.kaslider3 .swiper-slide .textblock h1,
section.kaslider3 .swiper-slide .textblock h2,
section.kaslider3 .swiper-slide .textblock h6,
section.kaslider3 .swiper-slide .textblock h4,
section.kaslider3 .swiper-slide .textblock > div {
  margin: 0 0 0px 0;
  color: var(--ka-font-color-gold);
  padding: 0;
  /*
  font-size: 20px;
  line-height: 24px;
  */
  text-transform: uppercase;
  font-weight: 400;
  height: auto;
}
section.kaslider3 .swiper-slide .textblock h4::before {
  margin: 0;
  height: 0;
  padding: 0;
}
section.kaslider3 .swiper-slide .textblock h1 {
  margin: 0 0 3px 0;
}

section.kaslider3 .swiper-slide .textblock {
  min-height: 65px;
  padding-left:0px;
  height: auto;
}

section.kaslider3 .swiper-slide .imgblock {
  margin: 25px 0 0 0;
}

section.kaslider3 .swiper-slide .textover {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 0 20px;
}

section.kaslider3 .swiper-slide .textover h1,
section.kaslider3 .swiper-slide .textover h2,
section.kaslider3 .swiper-slide .textover h3,
section.kaslider3 .swiper-slide .textover h4,
section.kaslider3 .swiper-slide .textover h5,
section.kaslider3 .swiper-slide .textover h6 {
  margin: 0 0 10px 0;
}

section.kaslider3 .swiper-slide.white .textover * {
  color: #fff !important;
}

section.kaslider3 .swiper-slide .textover img {
  width: 32px;
  height: auto;
  margin: 0 0 20px 0;
}

section.kaslider3 .swiper-slide.headline2big .textover .headline2 {
  font-size: 32px;
}

section.kaslider3 .slider {
	position: relative;
	display: flex;
}

section.kaslider3 .slider ul li {
		margin: 0;
		padding:0;
		width: 25%;
		float: left;
		list-style: none;
}

section.kaslider3 .swiper-button-next,
section.kaslider3 .swiper-button-prev {
		position: absolute;
		top:40%;
		width:40px;
		height:30px;
		/*background-color:var(--ka-bk-btn);*/
		background-position: center center;
		background-repeat: no-repeat;
		color: var(--ka-font-darkcolor);
		margin: 0 10px;
		padding: 6px 25px;
		border: 0px;
		cursor: pointer;
		z-index: +1;

}

section.kaslider3 .swiper-button-prev,
section.kaslider3 .swiper-button-next {
  position: absolute;
  top:calc(50% - 25px);
  background-repeat: no-repeat;
  background-position: center center;


  padding: 0px;

  width: 34px;
  height: 34px;
  position: absolute;
  background-repeat: no-repeat;
  top: calc(50% - 50px);
}
section.kaslider3 .swiper-button-prev {
	left:40px;
	background-image: url('/files/intern/commonext/fairmont-hamburg-pfeil-gold-links.svg');
}
section.kaslider3 .swiper-button-next {
	right:40px;
	background-image: url('/files/intern/commonext/fairmont-hamburg-pfeil-gold-rechts.svg');
}

/* ****************************************************************************************************************** */
/* --- ka_slider2 --------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

section.kaslider4 {
    position: relative;
    height: 100%;
    display: block;
    margin: 80px 0 80px 0;
}

section.kaslider4 .teaserlist {
  position: relative;
	max-width: 1600px;
	margin:0 auto 50px auto;
	display:grid;
  column-gap: 20px;
	text-align: center;
  grid-auto-rows: 1fr;

  padding: 0 0 0px 0;
  border-bottom: 1px solid #888;

  display:flex;
  flex-direction: row;
  column-gap: 10px;
  align-items: center;
  justify-content: center;
}
section.kaslider4.cnt_2 .teaserlist {
		grid-template-columns: 1fr 1fr;
}
section.kaslider4.cnt_3 .teaserlist {
		grid-template-columns: 1fr 1fr 1fr;
}
section.kaslider4.cnt_4 .teaserlist {
		grid-template-columns: 1fr 1fr 1fr 1fr;
}
section.kaslider4.cnt_5 .teaserlist {
		grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
}
section.kaslider4.cnt_6 .teaserlist {
		grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
}
section.kaslider4.cnt_7 .teaserlist {
		grid-template-columns: 1fr 1fr 1fr 1fr;
}
section.kaslider4.cnt_8 .teaserlist {
		grid-template-columns: 1fr 1fr 1fr 1fr;
}
section.kaslider4 .teaserlist a.teaser {
  margin: 0 auto;
}

section.kaslider4 .teaserlist a.teaser.selected {
  /*color:var(--ka-font-color-gold);*/
}

section.kaslider4 .teaserlist .tlinside {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
}

section.kaslider4.cnt_3 .teaserlist .tlinside {
	max-width: 850px;
}

section.kaslider4 .teaserlist a {
  padding: 10px 10px 10px 10px;
  vertical-align: middle;
  font-family: Work Sans,Lato,Arial;
  color: #ccc;
  text-transform: uppercase;
  letter-spacing: .15em;
  cursor: pointer;
  font-weight: 500;
  border: none;

  text-align: center;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  display: flex;
}
section.kaslider4 .teaserlist a:hover {
  border: none;
}

section.kaslider4 .dropdownlist {
  display: none;
}

section.kaslider4 .swiper-container {
    position: relative;
    width: 100%;
		max-width: 100%;
    height: 100%;
    margin: 0 auto;
    position: relative;
    overflow: hidden;
    list-style: none;
    padding: 0;
    z-index: 1;
}

section.kaslider4 .swiper-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
		z-index: 1;
    display: flex;
    /*
    das verhindert das smooth bi autoheight !!!
    transition-property: transform;
    */
    box-sizing: content-box;
    /*align-items: flex-start;*/

}

section.kaslider4 .textblock {
  text-align: center;
}

section.kaslider4 .textblock .headline {
    margin: 0px 0 40px 0;
    /*
    font-family: var(--ka-font-family-menu);
    font-size: 20px;
    line-height: 24px;
    font-weight: 500;
    letter-spacing: 0.1em;
    */
    text-transform: uppercase;
}

section.kaslider4 .textblock .headline2 {
    margin: 5px 0 15px 0;
    /*
    font-family: var(--ka-font-family-menu);
    font-size: 20px;
    line-height: 24px;
    font-weight: 500;
    letter-spacing: 0.1em;
    */
    text-transform: uppercase;
}

section.kaslider4 .textblock .text {
    margin: 0 0 15px 0;
    text-transform: none;
		/*
    font-size: 18px;
    line-height: 22px;
    color: #7c7c7c;
    letter-spacing: 0.025em;
    font-weight: 400;
		*/
}

section.kaslider4 .textblock span {
    border-bottom: 1px solid var(--ka-font-color);
}

section.kaslider4 .imgblock {
  position: relative;
}

section.kaslider4 .imgblock .images {
  position: relative;
  display: grid;
}

section.kaslider4 .imgblock .images.cnt_2 {
  grid-template-columns: 1fr 1fr;
}
section.kaslider4 .imgblock .images.cnt_3 {
  grid-template-columns: 1fr 1fr 1fr;
}
section.kaslider4 .imgblock .images.cnt_4 {
  grid-template-columns: 1fr 1fr 1fr 1fr;
}
section.kaslider4 .imgblock .images.cnt_5 {
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
}
section.kaslider4 .imgblock .images.cnt_6 {
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
}
section.kaslider4 .imgblock .images img {
  padding: 0 10px;
}


section.kaslider4 .swiper-button-prev {
    position:absolute;
    width:50px;
    height:70px;

    top:calc(10% + 0px);
    left:calc(50% - 770px);
    background-image:url("/files/intern/common/galerie-pfeil-links-schwarz.png");
    background-repeat: no-repeat;
    background-position: left center;
    transition: background-position 0.5s ease-in-out;
    cursor:pointer;
    z-index: +1;
}

section.kaslider4 .swiper-button-next {
    position:absolute;
    width:50px;
    height:70px;
    top:calc(10% + 0px);
    left:calc(50% + 720px);
    background-image:url("/files/intern/common/galerie-pfeil-rechts-schwarz.png");
    background-repeat: no-repeat;
    background-position: center;
    background-position: right center;
    transition: background-position 0.5s ease-in-out;
    cursor:pointer;
    z-index: +1;
}

section.kaslider4.markergrey .swiper-button-prev {
    background-image:url("/files/intern/common/pfeil-slider-links-grey.svg");
}
section.kaslider4.markergrey .swiper-button-next {
    background-image:url("/files/intern/common/pfeil-slider-rechts-grey.svg");
}

section.kaslider4 .swiper-slide {
  width: 100%;
  max-width: 100%;
  /*
  nicht bei autoHeight!!!
  height: calc(100% - 0px);
  flex-shrink: 0;
  */

  display: flex;
  justify-content: center;
  flex-direction:column;


  opacity: 1;
  margin: 0;
	padding: 0;

  overflow: hidden;
  transition: all 0.5s ease-out;

  transition-property: transform;

}

section.kaslider4 .swiper-slide > .flexcontainer {
  justify-content: space-between;
}

section.kaslider4 .swiper-slide .textblock {
	background-color: #f5f5f5;
	text-align: left;
	display: flex;
	flex-direction:column;
	justify-content: center;
	align-items: center;
	/*width: calc(50% - 100px);*/
	padding: 40px 50px;
}

section.kaslider4 .swiper-slide .textblock {
	text-align: center;
}

section.kaslider4 .swiper-slide .textblock .headline,
section.kaslider4 .swiper-slide .textblock .headline2 {
	width: auto;
}


section.kaslider4 .swiper-slide .imgblock {
	/*height: 100%;*/
}

section.kaslider4 .swiper-slide .imgblock img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

section.kaslider4 .swiper-slide.swiper-slide-active,
section.kaslider4 .swiper-slide.swiper-slide-duplicate-active {
    opacity: 1;
}



/* ****************************************************************************************************************** */
/* --- hvjprodukt --------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

body.hvjprodukt div.linknewsletter,
body.hvjspa div.linknewsletter,
body.hvjrestaurant div.linknewsletter {
  display: none !important;
}


section.hvjprodukt {
  position: relative;

}

section.hvjprodukt .swiper-container {
  position: relative;
  width: 100%;
  max-width: 100vw;
  height: 100%;
  margin-left: auto;
  margin-right: auto;
  overflow: hidden;
}

section.hvjprodukt .swiper-wrapper {
  position: relative;
  width: 100%;
  /*max-width: 100vw;*/
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  box-sizing: content-box;
  /*
  transition-property: transform;
  box-sizing: content-box;
  align-items: flex-start;
  */
}

section.hvjprodukt .swiper-slide {
  width: 100%;
  /*max-width: 100vw !important;*/
  height: 100%;
  position: relative;

  display: flex;
  /*justify-content: center;*/
  align-items: center;
  flex-shrink: 0;
  flex-direction:column;

  min-height:250px;
  /*
  max-width: 1400px;

  transition-property: transform;



  display: flex;
  justify-content: center;

  padding: 0;
  margin: 0;
  overflow: hidden;
  */
}

section.hvjprodukt.prcol20,
section.hvjprodukt.prcol25,
section.hvjprodukt.prcol50,
section.hvjprodukt.prcol75,
section.hvjprodukt.prcol100 {
  overflow:hidden;
  float:left;
  margin-right:25px;
  margin-bottom:25px;

}

section.hvjprodukt.prcol20 {
  width:calc(20% - 25px);
}

section.hvjprodukt.prcol25 {
  width:calc(25% - 25px);
}

section.hvjprodukt.prcol50 {
  width:calc(50% - 25px);
}

section.hvjprodukt.prcol75 {
  width:calc(75% - 25px);
}

section.hvjprodukt.prcol100 {
  width:calc(100% - 25px);
}

section.hvjprodukt .swiper-slide a {
  /*max-width: 100vw;*/
}

section.hvjprodukt .swiper-slide img {
  cursor: pointer;
  /*max-width: 100vw;*/
}

section.hvjprodukt .textblock h4.headline {
  margin: 15px 0 5px 0;
  font: 18px Work Sans,Lato,Arial;
  font-weight: normal;
  color:var(--ka-font-color-gold);
  text-transform: uppercase;
  letter-spacing: .15em;
}

section.hvjprodukt .textblock .preis {
  margin-bottom: 15px;
  font: 16px Work Sans,Lato,Arial;
  font-weight: normal;
  color:var(--ka-font-color-gold);
  text-transform: uppercase;
  letter-spacing: .005em;
}

body.hvjprodukt #cboxTitle {
  /*display: none !important;*/
}

body.hvjprodukt #cboxPrevious {
  background-image: url('/files/intern/common/galerie-pfeil-links-schwarz.png');
}

body.hvjprodukt #cboxNext {
  background-image: url('/files/intern/common/galerie-pfeil-rechts-schwarz.png');
}

body.hvjprodukt #main .ce_tabcontrol {
  /*position: relative;*/
  width: 100%;
}
body.hvjprodukt #main .tabcontrol_tabs {
  position: relative;
  top:0px;
  left:50%;
  transform: translateX(-50%);
  transition: top 00ms ease 0s;


  background-color: rgba(255,255,255,1);
  width: 100%;
  /*
  max-width: 1600px;
  margin: 0 auto;
  */
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: +2;

}
body.hvjprodukt #main .tabcontrol_tabs.fixed {
  position: fixed;
  top:95px;
  left:50%;
  transform: translateX(-50%);
}

body.hvjprodukt #main .tabcontrol_tabs ul {
  margin: 0;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align:center;
}

body.hvjprodukt #main .tabcontrol_tabs ul li {
  font-size:18px;
  font-weight:400;
  letter-spacing:0.15em;
  text-align:center;
  padding: 10px 30px 10px 30px;

}


/* ****************************************************************************************************************** */
/* --- Specials ----------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

section.hvjspecials {
  position: relative;
  display: flex;
  width: 100%;
  justify-content: center;
}

section.hvjspecials .grid {
  position: relative;
  transition: 0.75s all ease-in-out !important;
}

section.hvjspecials .grid .special {
  position: relative;
  transition: 0.75s all ease-in-out !important;
}

section.hvjspecials .image_container {
  position: relative;
  font-size: 0;
  line-height: 0;
}

section.hvjspecials .image_container a {
  position: relative;
  width: 100%;
  height: 100%;
  font-size: 0;
  line-height: 0;
  /*
  font-size: 0;
  line-height: 0;
  */
}

section.hvjspecials .image_container a img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

section.hvjspecials .image_container .headline {
  width: 100%;
  bottom: 0;
  left: 0;
  position: absolute;
  display: block;
  margin: 0;
  padding: 15px 30px;
  background-color: rgba(0,0,0,.7);
  transition: 0.5s all ease-in-out !important;

  font-size: 18px;
  color: #FFF;
  letter-spacing: .15em;
  font-weight: 300;

  pointer-events: none;

}
section.hvjspecials .special:hover .image_container .headline {
  background-color: rgba(0,0,0,.001);
  color: rgba(255,255,255,.001);
}


section.hvjspecials .hoverblock {
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  flex-direction: column;

  width: calc(100% - 0px);
  height: calc(100% - 0px);
  padding: 30px 30px !important;
  background-color: rgba(51,51,51,.001);
  pointer-events: none;
  transition: 0.5s all ease-in-out !important;

}
section.hvjspecials .hoverblock .shadow {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(51,51,51,.001);
  transition: 0.5s all ease-in-out !important;
}
section.hvjspecials .special:hover .hoverblock .shadow {
  background-color:rgba(51,51,51,.7);
}

section.hvjspecials .textblock .headline {
  margin-top: 0;
  margin-bottom: 30px;
  padding-top: 0;
  padding-bottom: 0;
  font-size: 30px;
  line-height: 36px;
  color: #fff;
  letter-spacing: .1em;
  font-weight: 300;

  white-space: normal;
  hyphens: auto;

}
section.hvjspecials .hoverblock .textblock {

  position: relative;
  width: 100%;
  height: 100%;
  z-index: +1;
  opacity: 0.001;
  transition: 0.75s opacity ease-in-out !important;
}
section.hvjspecials .special:hover .hoverblock .textblock {
  opacity: 1;
}
section.hvjspecials .hoverblock .textblock * {
  color: rgba(255,255,255,.001);
}
section.hvjspecials .special:hover .hoverblock .textblock * {
  color: rgba(255,255,255,1);
}

section.hvjspecials .hoverblock .textblock .text {
  margin: 0;
  padding: 0;
}
section.hvjspecials .hoverblock .textblock .text,
section.hvjspecials .hoverblock .textblock .text * {
  font: 18px/1.3em Spectral,Times New Roman;
  font-weight: normal;
}
section.hvjspecials .hoverblock .textblock .button {
  position: absolute;
  left: 0px;
  bottom: 0px;
  margin: 0;
  display: flex;
  padding: 10px 30px;
  text-align: center;
  font: 15px/15px Work Sans,Lato,Arial;
  color: #FFF;
  text-transform: uppercase;
  letter-spacing: .1em;
  background-color: var(--ka-font-color-gold);
  border: 1px solid var(--ka-font-color-gold);
  max-width: fit-content;
}


/* ****************************************************************************************************************** */
/* --- timelineslider ----------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

section.timelineslider {
    position: relative;
		max-width:100%;
    margin: 0 auto 0px auto;
    padding: 0;
}

section.timelineslider .swiper-container {
    position: relative;
    width: 100%;
    height: 100%;
    margin-left: auto;
    margin-right: auto;
    overflow: hidden;
}

section.timelineslider .swiper-wrapper {
    position: relative;
    width: 100%;
    height: 100%;
    z-index: 1;
    display: flex;
    transition-property: transform;
    box-sizing: content-box;
    /*
    transition-property: transform;
    box-sizing: content-box;
    align-items: flex-start;
    */
}

section.timelineslider .swiper-slide.event {
  width: 600px;
	height: 100%;
  position: relative;
	margin: 0;
	padding: 0;
	max-width: 100%;
	height: 100%;
	position: relative;
	display: flex;
	justify-content: flex-start;
	/*align-items: flex-start;*/
  align-items: center;
	flex-shrink: 0;
	flex-direction:column;
	min-height:250px;
	opacity: 0.2;
	transition: opacity 0.25s ease-in-out;
}

section.timelineslider .swiper-slide.event.swiper-slide-prev,
section.timelineslider .swiper-slide.event.swiper-slide-next {
	opacity: 1;
}

section.timelineslider .swiper-slide.event.swiper-slide-active {
	opacity: 1;
}

section.timelineslider .event .imgblock {
	position: relative;
	/*min-height: 360px;*/
	margin:0 0 30px 0;
	max-width: calc(100% - 60px);
  height: 370px;
  overflow: hidden;
}
section.timelineslider .event .imgblock .image {
  width: 100%;
  height: 100%;
}

section.timelineslider .event .imgblock .image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

section.timelineslider .event .textblock {
	margin: 0 0 0px 0;
  width: 710px;
	max-width: calc(100% - 60px);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
}

section.timelineslider .event h6,
section.timelineslider .event h4 {
	color: var(--ka-font-color-gold);
	/*
	margin-top: 8px;
	font-size:18px;
	line-height: 26px;
	font-weight:600;
	letter-spacing: 0.02em;
	text-transform: uppercase;
	*/

}
section.timelineslider .event h4.date {
	margin: 20px 0 60px 0;
	text-align: left;
	color:var(--ka-font-color-gold);
	font-size:24px;
}
section.timelineslider .event h6.headline {
  width: 100%;
  /*min-height: 40px;*/
  text-align: center;
  margin: 0 0 20px 0;
}

section.timelineslider .lines {
	position: relative;
  display: block;
  width: 100%;
  height:20px;
}

section.timelineslider .lines .line {
    position: absolute;
    top: 10px;
    left: -1px;
    display: block;
    width: 100%;
    height:2px;
    background-color: var(--ka-font-color-gold);
}

section.timelineslider .lines .bubble {
    position: absolute;
    top: 1px;
    left: calc(50% - 10px);
    display: block;
    width: 20px;
    height:20px;
    border-radius:10px;
    background-color: var(--ka-font-color-gold);
}


section.timelineslider .eventblock .event .text {
    margin: 10px 0 20px 0;
}

section.timelineslider .eventblock .event .image {
    /*margin: 0px 0 20px 0;*/
    padding: 0px 0 20px 0;
}

section.timelineslider .swiper-button-prev {
    position:absolute;
    width:55px;
    height:55px;
    top:calc(25% - 28px);
    top:200px;
    left:30px;
    background-image:url("/files/intern/common/fairmont-hamburg-Pfeil-links-01.png");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;;
    transition: background-position 0.5s ease-in-out;
    cursor:pointer;
    z-index: +2;
}

section.timelineslider .swiper-button-next {
    position:absolute;
    width:55px;
    height:55px;
    top:calc(25% - 28px);
    top:200px;
    right:30px;
    background-image:url("/files/intern/common/fairmont-hamburg-Pfeil-rechts-01.png");
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;;
    transition: background-position 0.5s ease-in-out;
    cursor:pointer;
    z-index: +2;
}


section.timeline {
    position: relative;
    margin: 0;
    padding: 0;
}
section.timeline .eventblock {
    position: relative;
    margin: 0;
    padding: 0;
    flex-direction: column;

}

section.timeline .eventblock .event {
  position: relative;
  margin: 0;
  padding: 0 0 0 0;
  display: grid;
  grid-template-columns: 1fr 2px 1fr ;
  grid-auto-rows: 1fr;
  grid-column-gap: 5px;
  grid-row-gap: 5px;
}
section.timeline .eventblock .event.mobile {
  display: none;
}


section.timeline h6 {
  margin: 5px 0 20px 0;
  padding: 0;
}
section.timeline h4 {
  margin: 10px 0 20px 0;
  padding: 0;
}

section.timeline .eventblock .left,
section.timeline .eventblock .right,
section.timeline .eventblock .middle {
    /*width: calc(50% - 52px);*/
  height:100%;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
}

section.timeline .eventblock .middle {
    position: relative;
    display: flex;
    width: 2px;
    height:100%;
}
section.timeline .eventblock .middle .line {
    position: absolute;
    top: 0;
    left: -1px;
    display: block;
    width: 100%;
    height:100%;
    min-height: 45px;
    background-color: var(--ka-font-color-gold);
}

section.timeline .eventblock .middle .bubble {
    position: absolute;
    top: 12px;
    left: -7px;
    display: block;
    width: 14px;
    height:14px;
    border-radius:7px;
    background-color: var(--ka-font-color-gold);
}

section.timeline .eventblock .left {
    text-align: right;
    padding-right: 50px;
}

section.timeline .eventblock .right {
    text-align: left;
    padding-left: 50px;
}

section.timeline .eventblock .event .text {
  margin: 10px 0 20px 0;
  padding: 0 0 50px 0;
}

section.timeline .eventblock .event .image {
    /*margin: 0px 0 20px 0;*/
  padding: 0px 0 50px 0;
}

/* ****************************************************************************************************************** */
/* --- previewvideo ------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */


.previewvideo {
    max-height: 100vh;
    /*z-index: 950;*/
}

.previewvideo,
.previewvideo .prev-video-container {
  position: relative;
  width: 100%;
  height: 100%;
}
.previewvideo .prev-video-container {
    /*z-index: 951;*/
  width: 100%;
  height: 100%;
}
.previewvideo video {
    width: 100%;
    height: 100%;
    object-fit:cover;
}


.previewvideo .videobtn {
    position: absolute;
    top: 70%;
    left:50%;
    transform: translate(-50%);

    display: flex;
    flex-direction:column;
    justify-content :center;
    padding: 15px 30px 15px 15px;
    background-image: url('/files/intern/common/fmd-play-video-full.png');
    background-position: 95% center;
    background-repeat: no-repeat;
    cursor: pointer;
    z-index:949;

    display: inline-block;
    padding: 8px 20px;
    text-align: center;
    font: 15px/15px Work Sans,Lato,Arial;
    background-color:var(--ka-font-color-gold);
    color: #FFF;
    text-transform: uppercase;
    letter-spacing: .1em;
    pointer-events: auto;
}

.previewvideo .videobtn:hover {
    /*background-color: rgba(35, 191, 228, 0.8);*/
    /*color: #95ebff;*/
}

.previewvideo .videobtn.disable {
  display: none !important;
}


/* ****************************************************************************************************************** */
/* --- Mobileslider1 ------------------------------------------------------------------------------------------------ */
/* ****************************************************************************************************************** */

section.mobileslider1 {
  position: relative;
  clear: both;
  display: block;
  width: 100%;
  --mobileslider1gap: 20px;
}

section.mobileslider1 .smooth {
  position: relative;
  display: block;
}
section.mobileslider1 .msdesktop {
  display: flex;
  width: 100%;
}
section.mobileslider1 .msdesktop.limit1600 {
  max-width: 1600px;
  margin: auto;
}
section.mobileslider1 .msdesktop .textblock {
  /* margin: 0 0 40px 0; */
  margin: 0 0 20px 0; /* BG070125 */
}

section.mobileslider1 .msdesktop .images {
}

section.mobileslider1 .msdesktop .image {
  position: relative;

  /* BG070125 */
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  /*display: inline-block; BG070125 */

}
section.mobileslider1.cnt_2 .msdesktop .image {
  width: calc(50% - var(--mobileslider1gap));
}
section.mobileslider1.cnt_3 .msdesktop .image {
  width: calc(33.3% - var(--mobileslider1gap));
}
section.mobileslider1.cnt_4 .msdesktop .image {
  width: calc(25% - var(--mobileslider1gap));
}
section.mobileslider1.cnt_5 .msdesktop .image {
  width: calc(20% - var(--mobileslider1gap));
}
section.mobileslider1 .msdesktop .image img {
  display: block;
  width: 100%;
  height: auto;
  object-fit: cover;
}

section.mobileslider1 .msmobile {
  position: relative;
  width: 100%;
  height: 100%;
  display: none;
}
section.mobileslider1 .msmobile .swiper-slide {
  position: relative;
}
section.mobileslider1.minh450 .msmobile .swiper-slide  {
  display: flex;
  flex-direction: column;
  min-height: 450px;
  justify-content: space-between;
}

section.mobileslider1 .msmobile .swiper-slide .textblock {
  margin: 20px 0 0 0;
}

section.mobileslider1 .msmobile .swiper-slide-active {
  opacity: 1;
}
section.mobileslider1 .msmobile .swiper-slide-prev,
section.mobileslider1 .msmobile .swiper-slide-next {
  opacity: 0.5;
}
section.mobileslider1 .msmobile .swiper-slide .container_img1 {
  position: relative;
  display: flex;
  justify-content: center;
}

section.mobileslider1 .msmobile .swiper-button-next,
section.mobileslider1 .msmobile .swiper-button-prev {
  width: 34px;
  height: 34px;
  position: absolute;
  background-repeat: no-repeat;

  top: calc(50% - 0px);
}
section.mobileslider1 .msmobile .swiper-button-prev {
  background-image: url('/files/intern/commonext/fairmont-hamburg-pfeil-gold-links.svg');
  left: 25px;
}
section.mobileslider1 .msmobile .swiper-button-next {
  background-image: url('/files/intern/commonext/fairmont-hamburg-pfeil-gold-rechts.svg');
  right: 25px;
}

/* ****************************************************************************************************************** */
/* --- cookiebar ---------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

div.cookiebar {
  background-color: initial;
}

.contao-cookiebar.cc-middle.cc-active .cc-inner {
  max-width: 100%;
  width: 500px;
}

.cookiebar .cc-head {
  position: relative;
  display: flex;
  flex-direction: column;
  text-align: center;
}

.cookiebar .cc-head h4 {
  text-transform: uppercase;
  margin: 0 0 15px 0;
}

.cookiebar .cc-info a {
  color:#333 !important;

}
.cookiebar_default .cc-group {
  border: 0px solid #d0d0d0;
  border-radius: 0px;
  border-bottom: 2px solid var(--ka-font-color-gold);
}
.cookiebar_default .cc-group > label {
  text-transform: uppercase;
  font: 16px Work Sans,Lato,Arial;
}
.contao-cookiebar .cc-btn {
  border-radius: 0px;
  border-color:var(--ka-font-color-gold);
  color:var(--ka-font-color-gold);
  margin: 20px 5px 10px 5px;
  font: 15px Work Sans,Lato,Arial;
  text-transform: uppercase;
  background-color:#ffffff;
}
.contao-cookiebar .cc-btn:hover {
  background-color:#ffffff;
  border:1px solid var(--ka-fonthover-color-gold);
  color:var(--ka-fonthover-color-gold);
}
.cookiebar .highlight .cc-btn.success {
  background-color:var(--ka-font-color-gold);
  border-color:var(--ka-font-color-gold);
  color: #fff;
}
.cookiebar .highlight .cc-btn.success:hover {
  background-color: var(--ka-fonthover-color-gold);
}
a.cookiebar__link,
div.cookiebar a,
div.cookiebar a:link {
  text-decoration: none;
  margin: 0 0px 0 10px;
  text-align: center;
  font: 14px Work Sans,Lato,Arial;
  font-weight: 400;
}
/*
.contao-cookiebar input#g2:checked + label#g2:before {
  background: rgb(140,110,74, 0.3);
  border-color:var(--ka-font-color-gold);
}
*/

.contao-cookiebar input:checked + label:before {
  background-color: rgb(140,110,74, 0.01);
  border-color:var(--ka-font-color-gold);
}
.contao-cookiebar input:checked + label:after {
  background-color:var(--ka-font-color-gold);
}
/*
.contao-cookiebar input:disabled {
  border-color: #9c9b99;
}
*/
.contao-cookiebar .cc-group:nth-child(1) input,
/*.contao-cookiebar .cc-group:nth-child(1) label:before,*/
.contao-cookiebar .cc-group:nth-child(1) label:after {
  border-color: #9c9b99;
  background-color:#9c9b99;
}
contao-cookiebar .cc-group:nth-child(1) label:before,
.contao-cookiebar .cc-group:nth-child(1) input:checked,
.contao-cookiebar .cc-group:nth-child(1) input:checked + label:before {
  border-color: #9c9b99;
}

.cookiebar_default .cc-info > a + a:before {
  margin-right: 10px;
}


/* ****************************************************************************************************************** */
/* --- InfoBox ------------------------------------------------------------------------------------------------------ */
/* ****************************************************************************************************************** */


section.hvjinfobox {
  position: fixed;
  top: auto;
  bottom: 130px;
  left: auto;
  right: 10px;
  width: calc(100% - 2 * var(--info_border));
  max-width: 244px;
  height: calc(100vh - 2 * var(--info_border));
  max-height: 240px;
  background-color: rgba(255,255,255,0.9);
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 999;
  padding: 20px;
  border: 1px solid var(--ka-font-color-gold);
}

section.hvjinfobox * {
  color: #000;
  text-align: center;
}
section.hvjinfobox .text {
  font-size: 32px;
  line-height: 36px;
}

section.hvjinfobox .closebutton {
  position: absolute;
  left: auto;
  right: 5px;
  top: 5px;
  width: 16px;
  height: 16px;
}


/* ****************************************************************************************************************** */
/* --- Counterlinks ------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

section.counterlinks {
  position: relative;
  display: flex;
  flex-direction: column;
  margin: 0px auto;
}

section.counterlinks .msdesktop {
  position: relative;
  display: flex;
  width: 100%;
}

section.counterlinks .boxblock {

}
section.counterlinks .boxblock .box {
  width: calc(25% - 0px);
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  background-color: var(--ka-bk-lightgrey);
  padding: 0;
  min-height: 340px;
}
section.counterlinks .boxblock .box.empty {
  display: none;
}
section.counterlinks .msdesktop .boxblock .box.empty {
  display: flex;
  background-color: inherit;
  height: 0;
  min-height: 0;
}



section.counterlinks .boxblock .box.boxcol66 {
  width: calc(66.6% - 65px);
}

section.counterlinks .boxblock .box.Hellgrau {
  background-color: var(--ka-bk-lightgrey);
}
section.counterlinks .boxblock .box.Mittelgrau {
  background-color: var(--ka-bk-middlegrey);
}
section.counterlinks .boxblock .single_image {
  width: calc(25% - 0px);
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  padding: 0;
}
section.counterlinks .boxblock .single_image.boxcol66 {
  width: calc(66.6% - 5px);
}
section.counterlinks .boxblock .single_image img {
  width: 100%;
  height:100%;
  object-fit: cover;
}

section.counterlinks .boxblock .box .image_block {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  margin: 0 0px 0 0;
  flex-direction: column;
  width: 100%;
  height: 100%;
}
section.counterlinks .boxblock .box .image_block .image_container {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  padding: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
}
section.counterlinks .boxblock .box .image_container img {
  width: 100%;
  height: 100%;
  object-fit:cover;
}
section.counterlinks .boxblock .box .hoverblock {
  display: none;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: rgba(51,51,51,.5);
  transition: 0.5s all ease-in-out;
  z-index: -1;
}
section.counterlinks .boxblock .box .hoverblock * {
  color: #fff !important;
}
section.counterlinks .boxblock .box .image_block:hover .hoverblock {
  /*
  display: flex;
  z-index: +1;
  */

}
section.counterlinks .boxblock .box .textblock {
  width: 100%;
  display: flex;
  flex-direction: column;
  text-align: center;
  justify-content: center;
  align-items: center;
  padding: 30px 30px 30px 30px;
}
section.counterlinks .boxblock .box .textblock .zahl {
  margin: 0 0 10px 0;
}
section.counterlinks .boxblock .box .textblock .headline {
  margin: 0 0 20px 0;
}
section.counterlinks .boxblock .box .textblock .text {
  margin: 10px 0 0 0;
}
section.counterlinks .boxblock .box .textblock .button {
  margin: 20px 0 0 0;
}
#main section.counterlinks .boxblock .box .textblock .button a {

}
#main section.counterlinks .boxblock .box .textblock .button a:hover {

}


section.counterlinks .msmobile {
  position: relative;
  width: 100%;
  height: 100%;
  display:block;
  display: none;
}
section.counterlinks .msmobile .swiper-slide-active {
  opacity: 1;
}
section.counterlinks .msmobile .swiper-slide-prev,
section.counterlinks .msmobile .swiper-slide-next {
  opacity: 0.5;
}
section.counterlinks .msmobile .container_img1 {
  display: flex;
  justify-content: center;
}
section.counterlinks .msmobile .swiper-button-next,
section.counterlinks .msmobile .swiper-button-prev {
  width: 34px;
  height: 34px;
  position: absolute;
  background-repeat: no-repeat;

  top: calc(50% - 0px);
}
section.counterlinks .msmobile .swiper-button-prev {
  background-image: url('/files/intern/commonext/fairmont-hamburg-pfeil-gold-links.svg');
  left: 25px;
}
section.counterlinks .msmobile .swiper-button-next {
  background-image: url('/files/intern/commonext/fairmont-hamburg-pfeil-gold-rechts.svg');
  right: 25px;
}


/* ****************************************************************************************************************** */
/* --- xcolicons ------------------------------------------------------------------------------------------------------ */
/* ****************************************************************************************************************** */

section.xcolicons {
  position: relative;
}

section.xcolicons .headline {
  padding: 50px 0 0 0;
}

section.xcolicons .xcolumn {
  display: flex;
  padding: 50px 0 50px 0;
  flex-direction: column;
  align-items: center;
}

section.xcolicons .xcolumn h4 {
  /*color: var(--ka-fontgold);*/
  text-align: center;
}

section.xcolicons .xcolumn a {
  display: flex;
  flex-direction: column;
  width: 100%;
  align-items: center;
  justify-content: center;
}

section.xcolicons .xcolumn .text {
  text-align: center;

}

section.xcolicons .image_container {
  display: flex;
  height: auto;
  width: 100%;
  max-width: 70px;
  margin: 0 0 20px 0;
}

section.xcolicons .footerblock {
  padding: 0 0 50px 0;
}

/* ****************************************************************************************************************** */
/* --- toplink ------------------------------------------------------------------------------------------------------ */
/* ****************************************************************************************************************** */


div.ce_toplink {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  bottom:70px;
  right:10px;
  position:fixed;
  z-index:998;
}
div.ce_toplink a.gotop {
  position: relative;
  display: block;
  width:25px;
  height:25px;
  margin:0 0 10px 0;
  padding:0;
}
div.linknewsletter,
div.toplinks {
  position: relative;
  display: flex;
  flex-direction: column;
  text-align: center;
  justify-content: center;
  padding: 30px 20px 20px 20px;
  border: 1px solid var(--ka-font-color-gold);
  background-color:rgba(255,255,255,0.8);
}
div.linknewsletter.invisible,
div.toplinks.invisible {
  padding: 0;
}

div.linknewsletter .headline,
div.toplinks .headline {
  display: block;
  font-size: 15px;
  line-height: 18px;
  margin: 0 0 10px 0;
}

div.linknewsletter .text,
div.toplinks .text {
  display: block;
}
div.linknewsletter .link,
div.toplinks .link {
  display: flex;
}
div.linknewsletter .close a,
div.toplinks .close a {
  position: absolute;
  top: 5px;
  right: 5px;
  width: 16px;
  height: 16px;
  background-image: url('/files/intern/common/fairmont-hamburg-colorbox-close.png');
  background-position: center;
  background-repeat: no-repeat;
}
div.linknewsletter .link a,
div.toplinks .toplink a {
  margin: 10px 0 0 0;
  display: inline-block;
  padding: 8px 20px;
  text-align: center;
  border: 1px solid var(--ka-font-color-gold);
  font: 15px/15px Work Sans,Lato,Arial;
  color:var(--ka-font-color-gold);
  text-transform: uppercase;
  letter-spacing: .1em;
  min-width: 200px !important;
  max-width: calc(100% - 60px) !important;
  pointer-events: auto;
}

/* ****************************************************************************************************************** */
/* --- toplink ------------------------------------------------------------------------------------------------------ */
/* ****************************************************************************************************************** */

.df-ui-page label {
    position: absolute;
    height: 30px;
    width: 100%;
    display: block;
    top: 0;
    padding-top: 14px;
    line-height: 1.1em;
    color: #999;
    font-size: 13px;
    font-weight: normal;
    left: 0;
    cursor: pointer;
    background-color: transparent;
    z-index: 1;
    box-sizing: border-box;
    min-width: 20px;
}

.flipbook.df-floating .df-ui-controls:after,
.flipbook .df-floating .df-ui-controls:after,
.df-lightbox-wrapper.df-floating .df-ui-controls:after,
.df-lightbox-wrapper .df-floating .df-ui-controls:after {
  display: none !important;
}
.flipbook.df-floating .df-ui-controls:before,
.flipbook .df-floating .df-ui-controls:before,
.df-lightbox-wrapper.df-floating .df-ui-controls:before,
.df-lightbox-wrapper .df-floating .df-ui-controls:before {
  display: none;
}

.df-container.df-fullscreen {
  background-color: #e3ded5 !important;
}

/* ****************************************************************************************************************** */
/* --- Layout HeaderImage ------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

#main {
    margin-top:50px;
}

/* ****************************************************************************************************************** */
/* --- Variablen ---------------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

:root {
  --ka-tablet-border:30px;

  /*
  --ka-tablet-font-size:18px;
  --ka-tablet-line-height:22px;

  --ka-tablet-statement-font-size2: 60px;
  --ka-tablet-statement-line-height2: 68px;
  */

  --ka-mobile-border:10px;

  /*
  --ka-mobile-font-size:16px;
  --ka-mobile-line-height:20px;

  */

}

/* ****************************************************************************************************************** */
/* --- max-width: 1610px -------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

/* ****************************************************************************************************************** */
/* --- max-width: 1900px -------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

@media only screen and (max-width: 1900px) {
  div.booknow a {
      padding-right:10px;
      padding-left:10px;
  }
  header div.telefon {
      width:180px;
  }

  nav#navdesktop.mod_navigation {
    left:calc(50% - 555px);
  }
  body.english nav#navdesktop.mod_navigation {
    left:calc(50% - 545px);
  }

  nav#navdesktop.mod_navigation li a {
    padding:4px 4px 40px 4px;
  }
  nav#navdesktop ul.level_1 li:nth-of-type(5) {
      margin-left:110px;
  }
  nav#navdesktop ul.level_2 li:nth-of-type(5) {
      margin-left:0px;
  }


}

/* ****************************************************************************************************************** */
/* --- max-width: 1660px -------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

@media only screen and (max-width: 1662px) {
  #menuband {
      height:60px;
  }
  body.hvjprodukt #main .tabcontrol_tabs.fixed {
    top:60px;
  }

  .menu,
  #navdesktop,
  .madeInGermany,
  .searchbutton,
  header .socials,
  #footer-band-3 div.booking,
  #footer-band-3 div.telefon,
  div.text2col div.left div.imgbutton {
      display:none;
  }
  #hvjlogo {
    padding:0;
    background-color:#fff;
    -webkit-box-shadow:5px 5px 5px 1px rgba(158,158,158,.15);
    box-shadow:5px 5px 5px 1px rgba(158,158,158,.15);
    z-index:999;
    transition-property: width, left;
    left:calc(50% - 32px);
    width:63px;
    top:0px;
    position:absolute;
      -webkit-transition: all 1s ease-in-out;
      -moz-transition: all 1s ease-in-out;
      -o-transition: all 1s ease-in-out;
      transition: all 1s ease-in-out;
  }
  #navmobil {
    right:13px;
    top:15px;
    position:absolute;
    display:block;
    margin-top:0;
  }
  .mm-menu.mm-black {
    background-color:#333;
  }
  .mm-list > li > a,
  .mm-list > li > span {
      font:14px Work Sans,Lato,Arial;
      color:#f1f1f1;
  }
  .mm-list a,
  .mm-list a:hover {
    color:var(--ka-font-color-gold);
  }
  html.mm-opening .mm-slideout {
      -webkit-transform: translate(260px, 0);
      -moz-transform: translate(260px, 0);
      -ms-transform: translate(260px, 0);
      -o-transform: translate(260px, 0);
      transform: translate(260px, 0);
  }
  .mm-menu {
      max-width: 260px;
  }
  #hvjlogo {
  }
  /*
  #headerslider .title {
      width:100%;
      text-align:center;
      top:calc(50% - 34px);
      position:absolute;
  }
  */
  div.width100 .textblock img {
      max-width:100px;
  }
  .dist150 {
      margin-top: 100px !important;
  }
  a,
  b,
  body,
  cite,
  div,
  em,
  i,
  label,
  li,
  ol,
  p,
  strong,
  td,
  th,
  u,
  ul,
  fieldset,
  form,
  input,
  optgroup,
  select,
  textarea {
      font-size:15px;
      line-height:1.4em;
      word-spacing:0;
  }
  h1,
  h1.desktop {
      font-size:36px;
      line-height:1.25em;
      letter-spacing:.05em;
  }
  h4,
  .toggler {
      font-size:16px;
      letter-spacing:.1em;
  }
  #main ul,
  .ce_text .ktext {
      padding-right:30px;
  }
  #main .ce_gallery ul {
      padding-right:0;
  }
  div.text25 h3,
  div.text25grey h3 {
      font-size:24px;
      letter-spacing:.1em;
  }
  div.booknow,
  header div.telefon {
      display:none;
  }
  div.booknow a {
      padding:4px 12px;
  }
  header div.telefon {
      width:160px;
      top:32px;
  }
  header div.telefon p {
      font-size:14px;
  }
  div.text2col div.left,
  div.text2col div.right,
  div.text2col div.image_container,
  div.limit1600 .ce_text,
  div.limit1600 .singleslider,
  section.kaslider3 .swiper-container,
  section.kaslider4 .swiper-container {
    margin-right:var(--ka-tablet-border);
    margin-left:var(--ka-tablet-border);
    width:calc(100% - 2 * var(--ka-tablet-border));
  }

  /* Rechts gibt es keinen Rand weegen der Float-Boxen */
  div.limit1600 {
    margin-right:var(--ka-tablet-border);
    margin-left:var(--ka-tablet-border);
    width:calc(100% - 2 * var(--ka-tablet-border));
  }
  div.limit1600int {
    margin-right:0;
    margin-left:0px;
    width:100%;
  }

  /* Rechts gibt es keinen Rand wegen der Float-Boxen */
  div.limit1600 .col30.anfrage {
    margin-right:30px;
    margin-left:0;
    width:calc(30% - 30px);
  }

  /* Rechts gibt es keinen Rand weegen der Float-Boxen */
  div.limit1600 .singleslider {
      margin-right:0px;
      margin-left:0;
      width:calc(100% - 00px);
  }
  #startbanner {
      display:none;
  }
  div.text2col .image_container {
    margin-right:var(--ka-tablet-border);
    width: calc(50% - var(--ka-tablet-border));
  }
  div.boxgrey div.text2col .image_container {
      margin-right:0;
      margin-left:auto;
      padding-right:0;
      padding-left:0;
      background-color:#f5f5f5;
  }
  div.boxgrey div.textblock {
      padding-right:0;
  }
  div.eventservice {
      margin-right:15px;
      margin-bottom:15px;
      width: calc(25% - 15px);
  }
  div.boxgrey div.limit1400 div.link2col {
      margin-right:0;
      margin-bottom:30px;
      margin-left:30px;
  }
  div.text2col div.flex-container {
  }
  div.link2col div.text_container a {
      padding:15px 35px;
      font-size:20px;
  }
  div.eventservice div.text_container a,
  div.link2col div.text_container a {
      padding-top:12px;
      padding-bottom:12px;
      padding-left:20px;
      font-size:14px;
      line-height:1em;
      1min-width:150px;
      1min-width:calc(100% - 15px);
  }
  div.specials {
      margin-right:0px;
      margin-bottom:30px;
      width: calc(33.3% - 15px);
  }
  .contactperson.block {
      margin-right:50px;
      margin-bottom:50px;
      width:calc(25% - 50px);
  }

  section.mobileslider1 .msdesktop.limit1600 {
    margin-right:0;
    margin-left:30px;
    /*width:calc(100% - 30px);*/
    width:calc(100% - 60px);
  }

  footer div.logo {
      width:25%;
  }
  #footer-band-2 div#kontakt,
  #footer-band-2 nav {
      padding-right:0;
  }

  #footer-band-2a .partner {
    flex-wrap: wrap;
  }
  #footer-band-2a .partner a {
      width: calc(30% - 20px);
      max-width: 150px;
      margin: 0 10px 20px 10px;
      display: flex;
      align-items: center;
      justify-content: center;
  }

  .bookingmobile {
      width:100%;
      /*height:28px;*/
      bottom:-1px;
      left:0;
      position:fixed;
      display:flex;
      align-items: center;
      justify-content: center;
      background-color:var(--ka-font-color-gold);
      z-index:996;
  }
  .bookingmobile a {
      width:100%;
      display:inline-block;
      padding-top:8px;
      padding-bottom:8px;
      text-align:center;
      background-color:var(--ka-font-color-gold);
      font:17px Work Sans,Lato,Arial;
      color:#fff;
      letter-spacing:.15em;
  }
  /*
  #footer-band-3 nav.mod_changelanguage {
      float:right;
      padding-top:2px;
  }
  #footer-band-3 {
      margin-bottom:27px;
  }
  */


  #footer-band-3 nav.mod_changelanguage {
      width:120px;
  }

  #footer-band-3 nav.mod_changelanguage {
    float: none;
    left: 0;
    right: auto;
    width:100%;
    max-width: 1600px;
    margin: 10px 0 40px 0;
    display: flex;
    justify-content: center;
  }
  footer nav ul {
    display: flex;
    align-items: flex-start;
    flex-wrap: wrap;
    justify-content: flex-start;
    flex-direction: column;
  }

  footer nav.mod_changelanguage ul {
    flex-direction: row;
  }



  /* Position der Ankerlinks anpassen */
  h4::before {
      display: block;
      content: " ";
      margin-top: -135px;
      height: 135px;
      visibility: hidden;
      pointer-events: none;
  }
}

/* ****************************************************************************************************************** */
/* --- max-width: 1400px -------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

@media only screen and (max-width: 1402px) {
  #banner {
      height:100%;
  }
  #headerslider .title .headline {
      font-size:44px;
  }
  #headerslider .title .slogan {
      font-size:24px;
  }
  div.limit1400 {
    margin-right:var(--ka-tablet-border);
    margin-left:var(--ka-tablet-border);
    width:calc(100% - 2 * var(--ka-tablet-border));
  }

  #main .nav_line div.desktop {
    display:none;
  }
  #main .nav_line {
    border-bottom:1px solid #b3b3b3;
    left:-30px;
    min-height:24px;
    padding:0;
    width:calc(100% + 60px);
    transition: margin 500ms;
  }

  #main.navlinefixed .inside .mod_article:nth-child(1) {
    padding: 50px 0 0 0;
  }
  #main .nav_line.fixed {
    position: fixed;
    margin-top: 0;
    top: 60px;
    left: 0px;
    z-index: 997;
    width:calc(100% - 00px);
  }

  #main .nav_line div.mobile {
    position: relative;
    display:block;
    /*border:1px solid #b3b3b3;*/
  }
  #main .nav_line div.mobile .insidemobile {
    position: relative;
    left: 0px;
    margin: 0  0 0 30px;
    width: calc(100% - 60px);
  }
  #main .nav_line div.mobile .activeitem {
    padding: 10px 15px 10px 15px;
    width: calc(100% - 0px);
    text-align: center;
  }
  #main .nav_line div.mobile .items,
  #main .nav_line div.mobile ul {
    width: calc(100% - 0px);
  }
  #main .nav_line div.mobile li {
    width: calc(100% - 0px);
  }
  #main .nav_line div.mobile li a,
  #main .nav_line div.mobile li.active {
    width: calc(100% + 30px);
    text-align: center;
  }
  div.text2col div.left {
      margin-right:20px;
      padding-right:0;
      width: calc(50% - 20px);
  }
  div.boxgrey div.limit1400 div.link2col {
      margin-right:15px;
      margin-left:15px;
  }
  div.text2col .image_container {
      margin-right:30px;
      width: calc(50% - 30px);
  }
  div.anfrage a.button {
      padding-right:15px;
      padding-left:15px;
  }
  div.boxgrey {
    padding-right:0px;
  }
  div.boxgrey div.text2col div.buttons {
      bottom:0;
      left:0;
      top:0;
      position:relative;
  }
  div.specials div.text_container h6 {
      font-size:14px;
  }
  div.specials div.text_container h3 {
      margin-bottom:20px;
      font-size:24px;
  }
  #main div.width100 .textblock .inside {
      padding:25px;
  }
  div.width100 .textblock {
      margin-right:20px;
      margin-left:20px;
      width:calc(100% - 40px);
  }
  div.width100 .textblock p {
      font-size:24px;
      line-height:1.1em;
  }
  div.button_white,
  div.button_gold,
  div.text2col div.button_white,
  div.text25 div.button_white,
  div.text25grey div.button_white,
  div.text2col div.button_gold,
  div.text25 div.button_gold,
  div.text25grey div.button_gold,
  div.specials div.button_gold {
      min-height:34px;
      margin-top:8px;
  }
  div.button_white a,
  div.button_gold a,
  div.text2col div.button_white a,
  div.text25 div.button_white a,
  div.text25grey div.button_white a,
  div.text2col div.button_gold a,
  div.text25 div.button_gold a,
  div.text25grey div.button_gold a,
  div.specials div.button_gold a {
      padding-top:8px;
      padding-bottom:8px;
      font-size:14px;
      min-width: 180px !important;
      max-width: 95% !important;
      margin-bottom: 15px;
  }
  #startbox {
      margin-right:8px;
      margin-left:8px;
  }
  div.text25,
  div.img25 {
      min-height:500px;
      margin-right:15px;
      margin-bottom:15px;
      width:calc(33.3% - 15px);
  }
  div.cols4.flexcontainer {
    margin:0px;
    width:calc(100% + 30px);
    justify-content: space-between;
  }

  div.cols4.t2b2.flexcontainer {
    margin:0px;
    width:calc(100% - 0px);
    justify-content: space-between;
  }

  div.boxgrey div.cols4.flexcontainer {
      margin-right:0px;
      margin-bottom:0;
      width:calc(100% + 00px);

  }

  div.limit1600intc .cols4inside {
    position: relative;
    /*
    left:0px;
    */
  }

  div.t2bb div.text50,
  div.t2bb div.img25,
  div.bbt2 div.text50,
  div.bbt2 div.img25,
  div.t2b2 div.text50,
  div.t2b2 div.img50,
  div.t2ss div.text50,
  div.sst2 div.text50,
  div.t2ss div.slider50,
  div.sst2 div.slider50 {
    min-height:500px;
    margin:0px 15px 15px 15px;
    width:calc(50% - 30px);
  }

  div.cols4.t2b2 .cols4inside div.text50 {
    width:calc(50% - 15px);
    margin:0px 15px 15px 0;
  }
  div.cols4.t2b2 .cols4inside div.img50 {
    width:calc(50% - 15px);
    margin:0px 0 15px 15px;
  }


  div.boxgrey div.t2ss div.slider50,
  div.boxgrey div.sst2 div.slider50 {
      min-height:500px;
      margin-right:0;
      margin-bottom:0;
      width:calc(50% - 30px);
  }
  .t2ss h6,
  .sst2 h6,
  .b2t2 h6 {
      font-size:1.2em;
      line-height:1.3em;
  }
  div.text25 {
      padding:20px 20px 0;
  }
  div.slider50,
  div.slider75 {
      min-height:500px;
      margin-right:15px;
      margin-bottom:15px;
      width:calc(66.6% - 15px);
  }
  div.slider50 .rsts-crop,
  div.slider75 .rsts-crop,
  div.slider50 .rsts-main,
  div.slider75 .rsts-main {
      height:500px;
      min-height:500px;
  }
  div.coldisable {
      display:none;
  }
  div.text25 div.buttons,
  div.text25grey div.buttons {
      bottom:15px;
      position:absolute;
  }
  div.text2col div.button_gold a,
  div.text25 div.button_gold a,
  div.text25grey div.button_gold a,
  div.specials div.button_gold a {
      max-width:65%;
      padding-right:15px;
      padding-left:15px;
  }
  div.text25 div.button_white a,
  div.text25 div.button_gold a,
  div.text50 div.button_white a,
  div.text50 div.button_gold a {
      max-width:50%;
      padding:8px 4px;
      font-size:14px;
      min-width: 160px !important;
  }
  div.text25 div.button_white,
  div.text25 div.button_gold {
      height:38px;
      margin-top:8px;
  }
  div.tablereserve {
      height:100%;
      padding-top:50px;
      padding-bottom:50px;
      min-height:250px;
  }
  div.tablereserve a {
      padding-top:8px;
      padding-bottom:8px;
      font-size:14px;
  }

  section.kaslider2 {
      position: relative;
      height: 100%;
      display: block;
      margin: 40px 0 20px 0;
  }

  section.kaslider2 .teaserlist {
      margin: 0 auto 20px auto;
  }

  section.kaslider2 .teaserlist h4 {
      display:none;
  }

  section.kaslider2 .swiper-slide .textblock {
    padding: 20px 50px;
    min-height:650px;
  }

  section.kaslider2 .swiper-slide .col33.textblock {
    width: calc(33.3% - 100px);
  }

  section.kaslider2 .swiper-button-prev {
      top:calc(50% + 70px);
      left:30px;
  }

  section.kaslider2 .swiper-button-next {
      top:calc(50% + 70px);
      left:auto;
      right:30px;
  }

  section.kaslider4 .swiper-button-prev {
    top:calc(10% - 0px);
    left:50px;
  }

  section.kaslider4 .swiper-button-next {
    top:calc(10% - 0px);
    left:auto;
    right:50px;
  }


  div.blogdetail .metafields,
  .mod_newsreader p.back,
  section.kablogslider .swiper-slide .limit1400 {
    margin-left: var(--ka-tablet-border);
    margin-right: var(--ka-tablet-border);
    width:calc(100% - 2 * var(--ka-tablet-border));
  }
  section.kablogslider .teaserlist .grid {
    grid-column-gap: 20px;
  }
  section.kablogslider .teaserlist .teaser a {
    font-size: 13px;
    line-height: 15px;
  }

  section.kablogslider .swiper-slide .textblock {
    bottom: 80px;
    width: 100%;
  }

  #footer-band-3 div.booking p,
  #footer-band-3 div.booking a,
  #footer-band-3 div.telefon p,
  #footer-band-3 div.booking strong,
  #footer-band-3 div.telefon strong,
  #footer-band-3 div.telefon .details,
  footer nav.mod_changelanguage ul li *,
  footer nav.mod_changelanguage ul li a {
      font-size:16px;
  }
  #footer-band-2 div#kontakt,
  #footer-band-2 nav {
      margin-right:10px;
      margin-left:0;
      padding-right:0;
      padding-left:20px;
      width: calc(20% - 10px);
  }
}


/* ****************************************************************************************************************** */
/* --- max-width: 1280px -------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

@media only screen and (max-width: 1280px) {
  .col50.map .image_container,
  .col50.map .image_container a,
  .col50.map img {
      height:100%;
      min-width:100%;
      min-height:100%;
  }
  .col50.map img {
    object-fit: cover;
  }
  .limit1200,
  div.limit1200 {
      max-width:calc(100% - 120px);
      margin-left:60px;
      margin-right:60px;
  }

  div.limit1000 {
    max-width:calc(100% - 120px);
    margin-left:60px;
    margin-right:60px;
  }

  section.kaslider2.cnt_7 .teaserlist {
    padding: 0 20px;
  }

  section.kaslider2 .teaserlist .teaser {
      width: calc(100% - 5px);
  }

  /*
  section.kaslider2.cnt_4 .teaserlist {
  		grid-template-columns: 1fr 1fr 1fr 1fr;
  }
  */
  section.kaslider2.cnt_5 .teaserlist {
  		grid-template-columns: 1fr 1fr 1fr;
  }
  section.kaslider2.cnt_6 .teaserlist {
  		grid-template-columns: 1fr 1fr 1fr;
  }
  section.kaslider2.cnt_7 .teaserlist {
  		grid-template-columns: 1fr 1fr 1fr;
  }
  section.kaslider2.cnt_8 .teaserlist {
  		grid-template-columns: 1fr 1fr 1fr;
  }

  section.timeline {
    max-width: 100%;
    margin: 0 20px;
    padding: 0;
  }


  #main .textimg .left .headline,
  #main .textimg .left .text,
  #main .textimg .right .headline,
  #main .textimg .right .text,
  #main .textimg .left .button,
  #main .textimg .right .button {
    /*
    padding-left: 30px;
    padding-right: 30px;
    */
  }
  #main .textimg h4 {
      /*
      font-size: 18px;
      line-height: 24px;
      letter-spacing: 0.15em;
      word-break: break-word;
      */
  }
  #main .textimg.lightgreen .left .headline,
  #main .textimg.lightgreen .left .text,
  #main .textimg.lightgreen .right .headline,
  #main .textimg.lightgreen .right .text,
  #main .textimg.lightgreen .left .button,
  #main .textimg.lightgreen .right .button {
    /*
    padding-left: 80px;
    padding-right: 80px;
    */
  }
  #main .textimg.scalimg img {
      position: relative;
  }

  section.hvjspecials .grid.fr4,
  section.hvjspecials .grid.fr5,
  section.hvjspecials .grid.fr6,
  section.hvjspecials .grid.fr7,
  section.hvjspecials .grid.fr8 {
    grid-template-columns: 1fr 1fr 1fr;
  }

}

/* ****************************************************************************************************************** */
/* --- max-width: 1100px -------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

@media only screen and (max-width: 1102px) {
  #banner2 .rsts-main {
      height: 50vh;
  }
  #headerslider .arrow {
      display:none;
  }
  #changelanguage:hover .langitms {
      right:105px;
  }
  div.width100 .textblock {
      padding-top:40px;
      padding-bottom:20px;
  }
  div.width100 .textblock img {
      display:none;
  }
  div.width100 .textblock p {
      font-size:24px;
      line-height:1.1em;
  }
  #startbox {
      float:left;
      margin-right:9px;
      margin-left:8px;
      width:calc(33.33% - 18px);
  }
  div.specials {
      width: calc(50% - 15px);
  }
  div.button_white a,
  div.button_gold a {
      padding-right:10px;
      padding-left:10px;
  }
  div.boxgrey div.buttons {
      margin-bottom:15px;
  }
  div.anfrage a.button {
      margin-top:20px;
      padding:8px 5px;
  }
  div.anfrage.logo {
      padding-top:80px;
      padding-left:10px;
  }
  div.link4col {
      width:calc(50% - 30px);
  }
  .contactperson.block {
      float:left;
      display:block;
      margin-right:40px;
      margin-bottom:50px;
      padding-top:5px;
      padding-bottom:5px;
      border-bottom:0px solid #f1f1f1;
      width:calc(33.3% - 40px);
  }

  div.button_tel a {
    /*min-width: calc(100% - 0px) !important;*/
    padding: 8px 10px;
    min-width: 200px !important;
  }

  .mod_newslist.newsblog {
    grid-template-columns: 1fr 1fr;
  }

  footer div.logo {
      width:100%;
      max-width:100%;
      float:none;
      clear:both;
      text-align:center;
  }
  #footer-band-1 div.socials div.links {
      width:100%;
  }
  #footer-band-1 .socials {
    margin: 0 20px 0 5px;
  }
  #footer-band-1 .socials div.links a {
      margin-right:4px;
      margin-left:4px;
  }
  #footer-band-2 div#kontakt,
  #footer-band-2 nav {
      max-width:50%;
      margin-top:10px;
      margin-right:0;
      margin-left:0;
      padding-top:0;
      padding-bottom:0;
      padding-left:20px;
      width:calc(20% - 0px);
  }
  #footer-band-3 nav.mod_changelanguage {
      /*width:20%;*/
  }
  #calltoaction {
      display:none;
  }
  #ansprechpartner div.col33,
  #contact-persons div.col33,
  #interlocuteur div.col33,
  #contactpersoon-333 div.col33 {
      min-height:720px;
  }
  .product-category-box-title {
      top:-100px;
      font-size:1.1em;
      line-height:1.2em;
  }
  div.galerie .ce_youtube {
      float:left;
      display:inline-block;
      margin-right:30px;
      margin-bottom:30px;
      width:calc(50% - 30px) !important;
      1height:400px;
  }
}


/* ****************************************************************************************************************** */
/* --- max-width: 900px --------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

@media only screen and (max-width: 902px) {

  #bannervideo,
  #bannervideo2,
  #bannervideo2 video,
  #banner .video_container video,
  .previewvideo,
  .previewvideo .prev-video-container {
    height: calc(66vh - 0px) !important;
    min-height: calc(66vh - 0px) !important;
    max-height: calc(66vh - 0px) !important;
  }

  body.videoheight100 #bannervideo,
  body.videoheight100 #bannervideo2,
  body.videoheight100 #bannervideo2 video,
  body.videoheight100 #banner .video_container video,
  body.videoheight100 .previewvideo,
  body.videoheight100 .previewvideo .prev-video-container {
    height: calc(100vh - 0px) !important;
    min-height: calc(100vh - 0px) !important;
    max-height: calc(100vh - 0px) !important;
  }

  #banner .video_container video {
    object-fit: cover;
  }

  body.videoheight100 .turnbtn {
    display: flex;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 32px;
    background-color: var(--ka-font-color-gold);

    display: none !important;
  }

  body.videoheight100 .bookingmobile {
    display: none !important;
  }

  a,
  b,
  body,
  cite,
  div,
  em,
  i,
  label,
  li,
  ol,
  p,
  strong,
  td,
  th,
  u,
  ul,
  fieldset,
  form,
  input,
  optgroup,
  select,
  textarea {
      font-size:15px;
      line-height:1.3em;
      word-spacing:0;
  }
  h1,
  h1.desktop {
      width:100%;
      max-width:100%;
      margin-bottom:20px;
      font-size:24px;
  }
  div.booknow a {
      padding:4px 12px;
  }
  header div.telefon {
      width:160px;
      top:32px;
  }
  header div.telefon p {
      font-size:14px;
  }
  body.galerie #container {
      margin-top:150px;
  }
  #ankermenu,
  #ankermenu-en {
      margin-bottom:70px;
      padding-top:15px;
  }
  #ankermenu a,
  #ankermenu-en a {
      display:inline-block;
      margin-right:3px;
      margin-bottom:8px;
      margin-left:3px;
      padding:4px 8px;
      text-align:center;
      font-size:12px;
      line-height:12px;
  }
  .dist150 {
      margin-top: 50px !important;
  }
  .dist100 {
      margin-top: 33px !important;
  }
  .dist50 {
      margin-top: 20px !important;
  }

  /*
  .col100,
  .col75,
  .col75m,
  .col66,
  */
  .col66m,
  .col66mr,
  /*
  .col50,
  */
  .col50m,
  .col50m2,
  .col50mr2,
  .col50mr,
  /*
  .col33,
  .col30,
  */
  .col33m,
  .col33mr
  /*
  .col20,
  .col25,
  .col25tab,
  .col25-2,
  .col25-3,
  .col20m,
  .col15,
  .col15m,
  .col12,
  .col12m
  */ {
    margin-right:0px;
    margin-left:0px;
    width:100%;
  }

  .col20tab,
  .col25tab,
  .ce_gallery ul li,
  #main .ce_gallery ul li {
      margin-bottom:30px;
      width: calc(50% - 30px);
      display: -webkit-flex;
      display: -ms-flexbox;
      display: flex;
  }
  /*
  div.ce_tabcontrol_pane div.panes div {
    display: -webkit-flex;
    display: -ms-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
  }
  body.hvjprodukt div.ce_tabcontrol_pane div.panes div {
    display: initial;
    flex-wrap:nowrap;
  }
  */
  div.pressecopyright p {
      width:100%;
  }
  div.cols_41,
  div.ce_tabcontrol_pane div.panes > div {
    display:grid;
    grid-template-columns: 1fr 1fr;
    grid-column-gap: 40px;
    grid-row-gap: 40px;
  }
  div.ce_tabcontrol_pane div.panes > div {
    display:block;

  }

  div.ce_tabcontrol_pane div.panes div.col20m,
  div.ce_tabcontrol_pane div.panes div.col20tab,
  div.ce_tabcontrol_pane div.panes div.col25tab {
    display: block;
    margin: 0px;
    width: calc(100% - 0px);

  }
  div.ce_tabcontrol_pane div.panes div.ce_image.col20m,
  div.ce_tabcontrol_pane div.panes div.ce_image.col20tab,
  div.ce_tabcontrol_pane div.panes div.ce_image.col25tab {
    display: flex;
    justify-content: center;
    align-items: center;
  }
  div.ce_tabcontrol_pane div.panes div.ce_image.col20m img,
  div.ce_tabcontrol_pane div.panes div.ce_image.col20tab img,
  div.ce_tabcontrol_pane div.panes div.ce_image.col25tab img {
    max-width: 150px;
  }

  div.text25,
  div.img25 {
    position: relative;
    min-height: 580px;

  }
  div.text25.white,
  div.text50.white {
    padding: var(--ka-tablet-border);
    max-width:calc(100% - 2* var(--ka-tablet-border));
  }

  div.img25,
  div.slider50,
  div.slider75 {
    position: relative;
      min-height:450px;
      margin-right:15px;
      margin-bottom:15px;
      width:calc(66.6% - 15px);
  }
  div.bbbb div.img25 {
      width:calc(50% - 20px);
  }
  div.bbbb div.coldisable {
      display:block;
  }
  div.tbtb div.img25.coldisable,
  div.btbt div.img25.coldisable {
      display:block;
  }
  div.t2bb div.text50,
  div.t2bb div.img25,
  div.bbt2 div.text50,
  div.bbt2 div.img25,
  div.t2b2 div.text50,
  div.t2b2 div.img50,
  div.b2t2 div.text50,
  div.b2t2 div.img50,
  div.t2ss div.slider50,
  div.t2ss div.text50,
  div.sst2 div.slider50,
  div.sst2 div.text50,
  div.boxgrey div.sst2 div.slider50,
  div.boxgrey div.t2ss div.slider50,
  div.slider50 .rsts-skin-default.rsts-main,
  div.slider75 .rsts-skin-default.rsts-main {
    position: relative;

    min-height:250px;
    /*min-height:auto;*/

    float:none;
    clear:both;
    /*margin:0px 0px 15px 0px;*/
    margin:0px 0px 0px 0px;
    width:calc(100% - 0px);
    /*height: 100%;*/
  }

  div.slider50 .rsts-skin-default.rsts-main,
  div.slider75 .rsts-skin-default.rsts-main {
    width:calc(100% - 00px);
  }

  div.t2bb div.img25,
  div.bbt2 div.img25,
  div.t2b2 div.img50,
  div.b2t2 div.img50 {
      min-height:550px;
  }

  /* vertauscht die Reihenfolge von Bild und Text */
  div.b2t2 .flexbox:nth-of-type(1) {
      order:2;
  }
  div.b2t2 div.buttons,
  div.t2b2 div.buttons,
  div.sst2 div.buttons,
  div.t2ss div.buttons {
      left:0;
      top:0;
      position:relative;
      margin-bottom:15px;
  }
  div.slider50 .rsts-crop,
  div.slider75 .rsts-crop,
  div.slider50 .rsts-main,
  div.slider75 .rsts-main {
    height:450px;
    height:100%;
    min-height:450px;
  }
  div.text25 h3 {
      font-size:22px;
  }
  div.img25.flexbox .image,
  div.img50.flexbox .image {
    background-size: cover;
  }

  div.buttonblock {
      width:100%;
  }
  div.tablereserve a {
      min-width:220px;
  }


  section.hvjprodukt.prcol20,
  section.hvjprodukt.prcol25 {
    width:calc(50% - 25px);
  }

  section.hvjprodukt.prcol100,
  section.hvjprodukt.prcol75,
  section.hvjprodukt.prcol50 {
    width:calc(100% - 25px);
  }


  h1,
  h1.desktop {
      padding-left:0;
      font-size:36px;
      line-height:1.25em;
  }
  h2 {
    padding-left:0;
    font-size:32px;
    line-height:1.25em;
  }
  h2.desktop {
    max-width: 100%;
  }
  h3 {
    margin-bottom:10px;
    font-size:1.5em;
    letter-spacing:.007;
    word-spacing:0;
  }
  h4,
  .toggler {
      font-size:1.2em;
      letter-spacing:.1em;
  }
  h5 {
      margin-bottom:15px;
      font-size:14px;
      line-height:1.25em;
      letter-spacing:.1em;
      font-weight:600;
  }
  h6 {
    font-size:1.3em;
  }
  .col50m {
      width:100%;
      float:none;
      clear:both;
      margin-right:0;
  }
  .col12m {
      width:calc(25% - 30px);
  }
  div.text2col {
      margin-top:50px;
  }
  div.text2col .top {
      width:100%;
      display:block;
  }
  div.text2col .notop {
      display:none;
  }
  div.boxgrey div.cols4 div.text25,
  div.boxgrey div.cols4 div.text50 {
    padding-top:20px;
    padding-left:0;
    padding-right:0;
  }
  .boxgrey div.text50 div.buttons {
      margin-left:0;
  }
  div.boxgrey div.text2col div.image_container,
  div.boxgrey div.left,
  div.boxgrey div.cols4 div.text50 {
      float:none;
      clear:both;
      margin-bottom:0px;
      width:calc(100% - 0px);
  }

  div.boxgrey div.cols4 div.text50 {
    margin: 0 30px 20px 30px;
    width:calc(100% - 60px);
  }

  /* vertauscht die Reihenfolge von Bild und Text */
  div.sst2 .flexbox:nth-of-type(1) {
      order:2;
  }
  div.text2col.imgleft div.textblock {
      margin-left:0;
  }
  div.text2col div.left {
      margin-top:0;
      margin-bottom:20px;
      padding-top:0;
  }
  div.text2col div.textblock {
      width:100%;
      height:100%;
      min-height:50px;
      float:none;
      clear:both;
      margin-left:0;
      padding-right:20px;
      padding-left:0;
  }
  div.boxgrey div.textblock {
      padding-right:0;
      padding-left:0;
  }
  div.eventservice {
      width: calc(50% - 30px);
  }
  div.boxgrey div.limit1400 div.link2col {
      margin-right:30px;
      margin-left:0;
  }
  div.eventservice div.text_container a,
  div.link2col div.text_container a {
      min-width:100px;
      padding:8px 15px;
  }
  .coldisable {
      display:block;
  }
  div.boxgrey {
      display:block;
      margin:10px 0 1px 0;
      padding:0;
      background-color:#fff;
  }
  div.boxgrey.info {
      padding:40px 20px;
      background-color:#f5f5f5;
  }
  div.specials,
  div.eventservice {
      margin-right:0px;
      margin-bottom:30px;
      width: calc(50% - 15px);
  }
  .col33,
  .col25,
  .col20 {
    float:left;
    clear:none;
    margin:0;
    padding:0;
    width:calc(50% - 00px);
  }
  .col25 p {
      margin-bottom:0;
      padding-bottom:0;
  }
  .productlink,
  .column,
  ul.product-category-selection {
      margin-right:13px;
      margin-bottom:13px;
      margin-left:0;
      width: calc(50% - 13px);
  }
  .pagelink-label {
      padding-top:0;
      padding-bottom:0;
  }
  div.productselect-label {
      width:100%;
  }
  .product-category-box-title {
      top:-100px;
      font-size:1.0em;
      line-height:1.1em;
  }
  .product-category-selection {
      display:none;
  }
  .dmg_linkbox .description {
      top:-10px;
  }
  .instagram .linkbox a {
      padding:5px 10px;
  }
  div.anfrage.logo {
      display:none;
  }
  div.anfrage {
      width:50%;
  }
  div.limit1600 .col30.anfrage {
      width:50%;
      width: calc(50% - 30px);
  }
  .presseinfo div.textblock {
      margin-top:10px;
  }
  .panes img.mime_icon {
      display:none;
  }
  .ce_previewdownload img.preview_image {
      max-width:120px;
      margin-top:0;
      margin-right:10px;
      margin-bottom:10px;
  }
  .ce_previewdownload a.text {
      float:left;
      clear:none;
      width:calc(100% - 135px);
  }

  .flexcontainer.space-between .ce_player.col20m {
    width: calc(33.3% - 20px);
    margin-bottom:20px;
  }
  .flexcontainer.space-between .ce_player.col25m {
    width: calc(50% - 20px);
    margin-bottom:20px;
  }
  .flexcontainer.space-between .ce_player.col20m h4,
  .flexcontainer.space-between .ce_player.col25m h4 {
    /*font-size: 14px;*/
    min-height: 55px;
  }

  .ce_player.col50m2,
  .ce_player.col50mr2 {
    float: none;
    margin: 0px 0 20px 0;
    width: calc(100% - 0px);
  }

  section.kaslider2 {
    width:calc(100% - 60px);
    margin: 0 30px;
  }

  section.kaslider2 .teaserlist {
    display: none;
  }

  section.kaslider2 .dropdownlist {
    width: calc(100% - 0px);
    margin:10px 0px 30px 0px;

    display: flex;
    align-items:center;
    justify-content: center;
    border-bottom: 1px solid #b3b3b3;
    overflow: visible;
  }

  section.kaslider2 .dropdownlist .dropdownlistinside {
    display: flex;
    align-items:center;
    justify-content: center;

  }
  section.kaslider2 .dropdownlist #ddactive {
    position: relative;
    width: 250px;
    min-height: 36px;
    position: relative;
    float: none;
    clear: both;
    padding: 10px 20px 10px 15px;
    text-align: left;
    /*background: #fff url(/files/intern/common/fairmont-hamburg-Pfeil-dropdown.png) right center no-repeat;*/
    background-image: url(/files/intern/common/fairmont-hamburg-Pfeil-dropdown.png);
    background-repeat: no-repeat;
    background-position: center right;

    font: 13px Work Sans,Lato,Arial;
    text-transform: uppercase;
    cursor: pointer;
    z-index: 940;
    overflow: visible;
  }

  section.kaslider2 .dropdownlist ul {
    left: 0;
    top: 40px;
    position: absolute;

    width: 250px;
    max-width: 100%;
    display: none;
    /*background-color: #fff;*/
    border: none;
  }

  section.kaslider2 .dropdownlist ul.visible {
    display: block;
  }

  /*
  section.kaslider2 .dropdownlist #ddactive:hover ul,
  section.kaslider2 .dropdownlist #ddactive span:hover ul {
    visibility: visible;
  }
  */
  /*
  section.kaslider2 .dropdownlist #ddactive:hover ul {
    display: block;
  }
  */

  section.kaslider2 .dropdownlist ul li {
    width: 250px;
    min-height: 32px;
    text-transform: uppercase;
    float: left;
    clear: both;
    display: block;
    padding: 10px 0 10px 15px;
    text-align: left;
    background-color: rgba(255,255,255,.9);
    border-bottom: 1px solid #dedede;
    font: 13px Work Sans,Lato,Arial;
    color: #333;
  }



  section.kaslider2 .swiper-slide .textblock {
      width: calc(50% - 60px);
      padding: 20px 30px;
      margin:0 0 30px 0;
      min-height: 650px;
  }

  section.kaslider2 .textblock .text,
  section.kaslider2 .textblock .text p {
      font-size: 14px;
      line-height: 18px;
  }

  section.kaslider2 .swiper-button-prev {
      top: calc(100% - 70px);
      left: 30px;
      width: 25px;
      height: 35px;
  }

  section.kaslider2 .swiper-button-next {
      top: calc(100% - 70px);
      left: auto;
      right: 30px;
      width: 25px;
      height: 35px;
  }


  /* BG191021 von 600 hochgezogen */
  section.kaslider2 .swiper-slide .flexcontainer h4 {
    margin-top:0px;
  }

  section.kaslider2 .swiper-slide .textblock .button a {
    /*background-color: var(--ka-bk-middleblue);*/
    display: block;
    padding: 10px 10px 8px 10px;
    min-width: 100px;
    line-height: 16px;
  }

  /* Bild oben */
  /*
  section.kaslider2 .swiper-slide .flexcontainer.odd .textblock {
    order:2;
  }
  section.kaslider2 .swiper-slide .flexcontainer.odd .imgblock {
    order:1;
  }
  */

  /* Bild unten */
  section.kaslider2 .swiper-slide .flexcontainer.even .textblock {
    order:1;
  }
  section.kaslider2 .swiper-slide .flexcontainer.even .imgblock {
    order:2;
  }

  section.kaslider2 .swiper-slide .imgblock img {
    max-height: 500px;
    object-fit: cover;
  }

  section.kaslider2 .swiper-slide .textblock,
  section.kaslider2 .swiper-slide .imgblock {
    width: 100%;
    padding:0;
    min-height: 100px;
  }
  section.kaslider2 .swiper-slide .textblock {
    /*width: calc(100% - 200px);*/
    padding:30px 30px;
    min-height: 325px;
    justify-content: center;
  }

  section.kaslider2 .swiper-slide .col33.textblock,
  section.kaslider2 .swiper-slide .col33.imgblock {
    width: calc(100% - 0px);
  }

  section.kaslider2 .swiper-slide .col33:nth-child(3) {
    display: none;
  }

  section.kaslider2 .swiper-slide .flexcontainer .col33.textblock {
    order:1;
  }
  section.kaslider2 .swiper-slide .flexcontainer .col33.imgblock {
    order:2;
  }

  section.kaslider2 .swiper-slide .imgblock {
    max-height: 500px;
  }

  section.kaslider2 .swiper-button-prev {
    top: 280px;
    left: 5px;
    width: 15px;
    height: 25px;
  }

  section.kaslider2 .swiper-button-next {
    top: 280px;
    left: auto;
    right: 5px;
    width: 15px;
    height: 25px;
  }


  section.kaslider2 .teaserlist .teaser {
      width: calc(100% - 5px);
  }

  /*
  section.kaslider2.cnt_4 .teaserlist {
  		grid-template-columns: 1fr 1fr 1fr 1fr;
  }
  */
  section.kaslider2.cnt_5 .teaserlist {
  		grid-template-columns: 1fr 1fr 1fr;
  }
  section.kaslider2.cnt_6 .teaserlist {
  		grid-template-columns: 1fr 1fr 1fr;
  }
  section.kaslider2.cnt_7 .teaserlist {
  		grid-template-columns: 1fr 1fr 1fr 1fr;
  }
  section.kaslider2.cnt_8 .teaserlist {
  		grid-template-columns: 1fr 1fr 1fr 1fr;
  }


  section.kaslider4 .swiper-button-prev,
  section.kaslider4 .swiper-button-next {
    width: 25px;
    height: 35px;
  }

  section.kaslider4 .swiper-button-prev {
    left:20px;
  }

  section.kaslider4 .swiper-button-next
  {
    right:20px;
  }

  section.mobileslider1 .msdesktop,
  section.counterlinks .msdesktop {
    display: none;
  }
  section.mobileslider1 .msmobile,
  section.counterlinks .msmobile {
    display: block;
  }

  section.kabookslider .grid.fr13 {
    display: block;
  }

  section.kabookslider .menublock {
    margin: 30px 0 30px 0;
    width: 100%;
  }

  section.kabookslider .teaserlist {
    display: flex;
    flex-direction: row;
    /*justify-content: space-between;*/
    margin-right: 5px;
    column-gap: 5px;
  }

  section.kabookslider .teaserlist .teaser {

  }

  section.kabookslider .col400pxm {
    margin-right: 20px;
  }
  section.kabookslider .colR400pxm {
    margin-left: 20px;
    /*width: calc(100% - 420px);*/
  }

  section.kabookslider .colR400pxm .ce_text {
    margin: 0;
    width: 100%;
  }

  .tabcontrol_tabs li.tabs {
    padding: 10px 15px 10px 0;
    letter-spacing: .10em;
  }

  section.timelineslider {
    width:100%;
		max-width:100%;
    margin: 0 0 20px 0;
    padding: 0;

  }
  section.timelineslider .swiper-container {
    margin: 0;
    padding: 0;
  }

  section.timelineslider .swiper-slide.event {
    width: 100%;
  }

  body.hvjprodukt .col25 {
    height: 1px;
    display: none !important;
  }
  section.hvjprodukt .textblock {
    width: calc(100% - 25px);
  }

  .presseinfo div.container {
    float: none;
  }


  #main .textimg.boxed {
    margin: 40px 0;
  }

  #main .textimg .imgblock,
  #main .textimg .textblock {
    width:100%;
    padding: 0px 0 0 0; /*BG010521 40px --> 0*/
    /*min-height: 350px;*/
  }

  #main .textimg .imgblock {
    order: 2;
  }

  #main .textimg .textblock,
  #main .textimg.boxed .textblock {
    padding: 40px 0 20px 0;
    min-height: 200px;
  }

  #main .boxgrey .textimg.boxed .textblock {
    order:2;
  }

  #main .boxgrey .textimg.default .headline,
  #main .boxgrey .textimg.default .text,
  #main .boxgrey .textimg.default .button,
  #main .boxgrey,
  #main .textimg.boxed .headline,
  #main .textimg.boxed .text,
  #main .textimg.boxed .button,
  #main .textimg.boxed .ce_accordion,
  #main .textimg .headline,
  #main .textimg .text,
  #main .textimg .button,
  #main .textimg .ce_accordion {
    padding-left: 0px;
    padding-right: 0px;
  }

  #main .textimg .left .headline,
  #main .textimg .left .text,
  #main .textimg .left .button,
  #main .textimg .left .ce_accordion {
    /*
    padding-right: 30px;
    padding-left: 30px;
    */
  }
  #main .textimg .right .headline,
  #main .textimg .right .text,
  #main .textimg .right .button,
  #main .textimg .right .ce_accordion {
    /*
    padding-left: 80px;
    padding-right: 80px;
    */
  }

  #main .textimg.textxcols .headline,
  #main .textimg.textxcols .text,
  #main .textimg.textxcols .button,
  #main .textimg.textxcols .ce_accordion {
    padding-left: 0px;
    padding-right: 0px;
    padding-bottom: 50px;
  }

  section.counterlinks .boxblock .box {
    width: calc(100% - 0px);
    height: 100%;
  }
  section.counterlinks .boxblock .box .image_block,
  section.counterlinks .boxblock .box .image_container {
    height: 100%;
    display: flex;
    min-height: 340px;

  }
  section.counterlinks .boxblock .box .image_container img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }
  section.counterlinks .boxblock .box .textblock {
    padding: 30px 40px 30px 40px;
  }

  section.hvjspecials .grid.fr4,
  section.hvjspecials .grid.fr5,
  section.hvjspecials .grid.fr6,
  section.hvjspecials .grid.fr7,
  section.hvjspecials .grid.fr8,
  section.hvjspecials .grid {
    grid-template-columns: 1fr 1fr;
  }

  /*
  #footer-band-1 .inside {
      padding-top:0;
      padding-bottom:0;
  }
  #footer-band-1 .email {
      width:100%;
      height:110px;
      float:none;
      clear:both;
      display:block;
      margin:0;
      padding:28px 0 40px;
      border-bottom:1px solid #555;
  }
  #footer-band-1 .email .inside {
      width:580px;
      max-width:95%;
      display:block;
      margin-right:auto;
      margin-left:auto;
  }
  #footer-band-1 .partner {
      width:100%;
      margin-top:0;
      margin-right:auto;
      margin-left:auto;
      padding-top:15px;
      padding-bottom:5px;
  }
  #footer-band-1 .socials {
      width:95px;
      right:5px;
      top:140px;
      position:absolute;
      margin-top:0;
      margin-right:auto;
      margin-left:auto;
      padding-top:10px;
  }
  */
  #footer-band-2 div.logo {
      width:100%;
      max-width:100%;
      float:none;
      clear:both;
      text-align:center;
  }
  #kontakt {
      margin-right:0;
      margin-left:0;
  }
  #footer-band-2 div#kontakt,
  #footer-band-2 nav {
      max-width:50%;
      margin-right:0;
      margin-left:20px;
      padding:0;
      font-size:14px;
      width:calc(25% - 20px);
  }
  .col50.map,
  div.anfrage {
      height:300px;
  }
  .col50.map,
  div.anfrage {
    width:100%;
    margin:0;
  }

  section.kaslider4 .imgblock .images.cnt_4 {
    grid-template-columns: 1fr 1fr 1fr;
  }
  section.kaslider4 .images .swiper-slide:nth-child(4) {
    display: none;
  }

  section.kablogslider {
    max-height: 50vh;
    margin: 0 0 50px 0;
  }

  div.blogdetail .metafields,
  .mod_newsreader p.back,
  section.kablogslider .swiper-slide .limit1400 {
    margin-left: var(--ka-mobile-border);
    margin-right: var(--ka-mobile-border);
    width:calc(100% - 2 * var(--ka-mobile-border));
  }
  section.kablogslider .swiper-slide .textblock {
    bottom: 140px;
    width: 100%;
  }
  section.kablogslider .teaserlist .grid {
    grid-column-gap: 20px;
    grid-template-columns: 1fr 1fr 1fr;
  }
  section.kablogslider .swiper-slide .textblock .mainheadline {
    margin: 10px 0 10px 0;
  }
  section.kablogslider .swiper-slide .textblock .mainheadline * {
    font-size: 24px;
    line-height: 26px;
  }

  section.kablogslider .swiper-slide .textblock {
    bottom: 100px;
  }

  #footer-band-1 .text {
    margin: 0;
  }

  #footer-band-1 .button {
    margin: 0 20px;
  }

  #footer-band-1 .socials {
    margin: 0;
  }

  #footer-band-2a .partner a img {
    width: 100px;
    max-height: 40px;

  }

  #footer-band-3 div.booking a {
      margin-right:3px;
      margin-left:3px;
  }
  #footer-band-3 div.telefon {
      margin-left:0;
  }

}

/* ****************************************************************************************************************** */
/* --- max-width: 800px --------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

@media only screen and (max-width: 802px) {

  form.gala label,
  form.gala select {
    clear:both;
    width:calc(100% - 20px);
  }

  form.gala input[type="text"],
  form.gala input[type="email"],
  form.gala input[type="password"],
  form.gala input[type="search"],
  form.gala button[type="submit"] {
    margin-left:0;
    width:calc(100% - 20px);
    max-width: 100%;
  }
}

/* ****************************************************************************************************************** */
/* --- max-width: 700px --------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

@media only screen and (max-width: 702px) {
  .limit1000,
  .limit1200,
  div.limit1200 {
      max-width:calc(100% - 60px);
      margin-left:30px;
      margin-right:30px;
  }
  .ce_player.limit1200 {
      max-width:100%;
      margin-left:00px;
      margin-right:00px;
  }

  #headerslider .title {
    /*
    width:100%;
    text-align:center;
    top:calc(50% - 24px);
    position:absolute;
    */
  }
  #headerslider .title .headline {
      font-size:30px;
  }
  #headerslider .title .slogan {
      font-size:20px;
  }
  #menuband {
      background-color:rgba(51,51,51,.01);
  }
  #ankermenu,
  #ankermenu-en {
      display:none;
  }
  body.galerie header {
      height:60px;
  }
  body.galerie #container {
      margin-top:50px;
  }
  #bannerimage .image_container {
      width:200%;
      left:-50%;
      position:relative;
      overflow:hidden;
  }
  #bannerimage div.left .image_container {
      left:0;
      position:relative;
  }
  #bannerimage div.right .image_container {
      left:-100%;
      position:relative;
  }

  .home #bannervideo .videobtn,
  .previewvideo .videobtn {
    font-size: 12px;
    line-height: 15px;
    padding: 4px 10px;
    top: auto;
    bottom: 150px;
    white-space: nowrap;
  }



  .gala #bannerimage div.right .image_container {
      left:-50%;
  }
  .MenubandBig {
      background-color: rgba(51,51,51,.01) !important;
      -webkit-transition: all 1s ease-in-out;
          -moz-transition: all 1s ease-in-out;
          -o-transition: all 1s ease-in-out;
          transition: all 1s ease-in-out;
  }
  .rsts-skin-default .rsts-prev {
      background-image:url("/files/intern/common/fairmont-hamburg-Pfeil-links-klein.png");
      background-position:center center;
      background-repeat:no-repeat;
  }
  .rsts-skin-default .rsts-next {
      background-image:url("/files/intern/common/fairmont-hamburg-Pfeil-rechts-klein.png");
      background-position:center center;
      background-repeat:no-repeat;
  }
  #banner .rsts-skin-default .rsts-prev,
  #banner .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,
  .rsts-skin-default .rsts-nav-bullets,
  #headerslider .arrow {
      display:none;
  }
  h1 {
      font-size:32px;
      line-height:1.1em;
  }
  h2 {
    font-size: 26px;
    line-height: 1.25em;
    letter-spacing: .05em;
  }
  h4,
  .toggler {
      font-size:16px;
  }
  h5 {
      font-size:14px;
      line-height:1.1em;
  }
  h3,
  div.text25 h3,
  div.text25grey h3 {
      font-size:22px;
  }
  h6 {
    line-height:1.1em;
    margin-bottom: 30px;
  }

  .col100,
  .col75,
  .col75m,
  .col66,
  .col66m,
  .col66mr,
  .col50,
  .col50m,
  .col50m2,
  .col50mr2,
  .col50mr,
  .col33,
  .col30,
  .col33m,
  .col33mr,
  .col20,
  .col25,
  .col20tab,
  .col25tab,
  .col25-2,
  .col25-3,
  .col20m,
  .col15,
  .col15m,
  .col12,
  .col12m {
    margin-right:0px;
    margin-left:0px;
    width:100%;
  }





  .col33,
  .col25,
  .col20,
  .col20tab,
  .col25tab,
  .ce_gallery ul li,
  #main .ce_gallery ul li,
  div.specials,
  div.eventservice {
    margin-right:20px;
    margin-bottom:20px;
    width: calc(50% - 20px);
  }
  .ce_text .ktext {
      padding-right:20px;
  }
  .col300pxm,
  .colR300pxm {
    width:100%;
    float:none;
    clear:both;
    margin-right:0;
    margin-bottom:30px;
    margin-left:0;
  }

  /* vertauscht die Reihenfolge von Bild und Text */
  .col300pxm.flexbox:nth-of-type(1) {
      order:2;
  }
  div.boxgrey div.text2col div.image_container,
  div.boxgrey div.left,
  div.limit1600 .col30.anfrage {
      margin-right:20px;
      width: calc(100% - 20px);
  }
  div.cols4.flexcontainer {
      margin-right:0px;
      width: calc(100% - 0px);
      max-width: 100%;
  }

  div.cols_41,
  div.ce_tabcontrol_pane div.panes > div {
    display:grid;
    grid-template-columns: 1fr;
    grid-column-gap: 0px;
    grid-row-gap: 40px;
    display: block;
  }

  div.limit1600,
  div.limit1400,
  div.limit1000 {
    margin-right:var(--ka-mobile-border);
    margin-left:var(--ka-mobile-border);
    width:calc(100% - 2 * var(--ka-mobile-border));
    max-width:calc(100% - 2 * var(--ka-mobile-border));
  }
  div.limit1600 .col30.anfrage {
      width: calc(50% - 20px);
  }
  body.hvjprodukt #main .ce_tabcontrol {
      width:calc(100% - 20px);
  }
  .tabcontrol_tabs,
  section.kaslider4 .teaserlist {
    /*z-index: -1;*/
    border-bottom: 0px solid #333;
  }
  .tabcontrol_tabs ul {
    position: relative;
    display: flex;
    justify-content: space-between;
    padding: 0 !important;
    margin-top: 15px;
    border-bottom: 1px solid #ccc;
  }
  .tabcontrol_tabs li.tabs,
  section.kaslider4 .teaserlist a {
    position: relative;
    top:1px;
    display: flex;

    /*padding-right:10px;*/
    padding: 8px 4px;
    font-size: 12px;
    letter-spacing: .005em;
    /*max-width: calc(33.3% - 0px) !important;*/
    /*min-height: 55px;*/
    text-align: center;
    align-items: center;
    justify-content: center;
    vertical-align: center;
    border: 1px solid #ccc;
    /*color:var(--ka-font-color-gold);*/
    margin: 0 0 0 0;
    z-index: +1;
    min-width: 50px !important;
  }
  .tabcontrol_panes {
    z-index: -1;
  }
  section.kaslider4 .teaserlist a.selected,
  .tabcontrol_tabs li.tabs.selected {
    border: 1px solid #888;
    border-bottom: 1px solid #fff !important;
  }

  section.kabookslider {
    width: calc(100% - 0px);
  }

  section.kabookslider .grid.fr13 {
    display: block;
  }

  section.kabookslider .menublock {
    margin: 0 0 15px 0;
    display: flex;
    flex-direction: row;
    width: 100%;
  }

  section.kabookslider .teaserlist {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: 100%;
  }

  section.kabookslider .teaserlist a {
    margin: 2px 0;
    padding: 16px 20px 12px 20px;
  }

  section.kabookslider .swiper-container {
    width: calc(100% - 40px);
  }

  section.kabookslider .swiper-container .swiper-slide .limit1000,
  section.kabookslider .swiper-container .swiper-slide .limit1000int {
    display: flex;
    flex-direction: column;
    width: 100%;
  }

  section.kabookslider .col400pxm,
  section.kabookslider .colR400pxm {
    width: 100%;
    margin: 0;
  }




  div.tablereserve.bkcenter {
    background-position-x: 35%;
  }

  div.text2col div.left,
  div.text2col div.right,
  div.text2col div.image_container,
  div.limit1600 .ce_text,
  div.limit1600 .singleslider,
  div.limit1400 .ce_text,
  div.limit1400 .singleslider,
  div.ce_youtube,
  .ce_youtube .video_container iframe,
  .flexcontainer.space-between
   {
      margin-right:0px;
      margin-left:0;
      width:calc(100% - 0px);
      max-width:100%;
  }
  div.text25.white,
  div.text25.grey,
  div.text50.grey {
    padding:20px 15px 0 15px;
    margin: 0;
    width: 100%;
  }
  div.text25,
  div.text50,
  div.text50.grey,
  div.img25,
  div.img50,
  div.slider50,
  div.slider75,
  div.bbbb div.img25,
  div.t2bb div.text50,
  div.t2bb div.img25,
  div.bbt2 div.text50,
  div.bbt2 div.img25,
  div.t2b2 div.text50,
  div.t2b2 div.img50,
  div.b2t2 div.text50,
  div.b2t2 div.img50,
  div.t2ss div.slider50,
  div.sst2 div.slider50,
  div.cols4.t2b2 .cols4inside div.text50,
  div.cols4.t2b2 .cols4inside div.img50 {
      min-height:250px;
      float:none;
      clear:both;
      margin-right:0px;
      /*margin-bottom:20px;*/
      margin-bottom:0px;
      margin-left:0;
      width:calc(100% - 0px);
      max-width:100%;
  }
  div.boxgrey div.cols4 div.text50 {
    margin: 0 15px 20px 15px;
    width: calc(100% - 30px);

    max-width: 100%;
  }

  div.limit1600 .ce_text.button_white.center,
  div.limit1600 .ce_text.button_white.center > p {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
  }
  div.limit1600 .ce_text.button_white.center a {
    margin: 5px 0;
  }

  div.img25,
  div.img50 {
    width:100%;
    height:250px;
    min-height:1px;
  }
  div.slider50,
  div.slider75,
  div.slider50 .rsts-crop,
  div.slider75 .rsts-crop,
  div.slider50 .rsts-main,
  div.slider75 .rsts-main {
    position: relative;
    height:250px;
    min-height:250px;
    overflow: hidden;
  }
  div.img25,
  div.img50,
  /*
  div.slider50,
  div.slider75,
  */
  div.t2bb div.img25,
  div.bbt2 div.img25,
  div.t2b2 div.img50,
  div.b2t2 div.img50,
  /*
  div.t2ss div.slider50,
  div.sst2 div.slider50,
  */
  div.img25.flexbox,
  div.img50.flexbox
  /*
  ,
  div.slider50.flexbox,
  div.slider75.flexbox,

  div.boxgrey div.sst2 div.slider50,
  div.boxgrey div.t2ss div.slider50*/ {
    height:250px;
    min-height:250px;


  }
  div.img25.flexbox .image,
  div.img50.flexbox .image {
    background-size: 100%;
  }
  div.text25 div.textblock,
  div.text50 div.textblock {
      margin-bottom: 25px !important;
      overflow: hidden;
  }
  div.text25 div.buttons,
  div.text50 div.buttons,
  div.text25grey div.buttons {
      left:0;
      top:0;
      position:relative;
      margin-bottom:15px;
  }

  div.button_tel a {
    min-width: calc(200px - 0px) !important;
    padding: 8px 10px;
  }

  div.coldisable {
      display:block;
  }

  /* vertauscht die Reihenfolge von Bild und Text */
  div.btbt .flexbox:nth-of-type(1),
  div.ssst .flexbox:nth-of-type(1),
  div.ssst .slider75,
  div.ssbt .slider50,
  div.sstb .slider50 {
    order:2;
  }

  div.ssst .text25 {
    order:1;
  }

  /* vertauscht die Reihenfolge von Bild und Text */
  div.bbt2 .flexbox:nth-of-type(2) {
      order:3;
  }

  div.tssb .img25,
  div.tbss .img25,
  div.ssbt .img25,
  div.sstb .img25 {
    display: none;
  }

  /* vertauscht die Reihenfolge von Bild und Text */
  div.bbt2 .flexbox:nth-of-type(1) {
      order:2;
  }

  div.tablereserve {
      height:100%;
      padding-bottom:30px;
  }
  div.tablereserve .inside {
      margin-top:20px;
  }
  #main div.tablereserve div.buttonblock .insidebutton {
      display: block;
  }
  div.tablereserve a {
      width:280px;
      max-width:95%;
      float:none;
      clear:both;
      display:block;
      margin:10px auto 0;
  }
  div.button_white a,
  div.button_gold a,
  div.text2col div.button_white a,
  div.text25grey div.button_white a,
  div.text2col div.button_gold a,
  div.text25grey div.button_gold a,
  div.specials div.button_gold a {
      margin-top:5;
      padding:8px 4px;
      font-size:14px;
      letter-spacing:.05em;
      min-width: 140px !important;
  }
  div.button_white,
  div.button_gold,
  div.text2col div.button_white,
  div.text25grey div.button_white,
  div.text2col div.button_gold,
  div.text25grey div.button_gold,
  div.specials div.button_gold {
      margin-top:5px;
  }

  div.button_white.desktop {
    display: none;
  }
  div.button_white.mobile {
    display: block;
  }

  div.link2col,
  div.link4col,
  div.galerie .ce_youtube,
  .hotelpartner {
      float:none;
      clear:both;
      margin-right:0;
      margin-bottom:20px;
      width:calc(100% - 20px) !important;
  }
  .contactperson.block {
      float:left;
      display:block;
      margin-right:20px;
      margin-bottom:20px;
      padding-top:5px;
      padding-bottom:5px;
      border-bottom:0px solid #f1f1f1;
      width:calc(50% - 20px);
  }

  .flexcontainer.space-between .ce_player.col20m,
  .flexcontainer.space-between .ce_player.col25m {
    width: calc(50% - 10px);
    margin-bottom:20px;
  }
  .flexcontainer.space-between .ce_player.col20m h4,
  .flexcontainer.space-between .ce_player.col25m h4 {
    font-size: 14px;
    /*min-height:65px;*/
  }

  #main .textimg.boxed .textblock {
    padding: 20px 0 20px 0;
  }

  #main .textimg .left .headline,
  #main .textimg .left .text,
  #main .textimg .left .button,
  #main .textimg .left .ce_accordion {
    padding-right: 00px;
    padding-left: 0px;
  }

  section.kaslider2 .swiper-slide .textblock {
    /*width: calc(100% - 60px);*/
    padding:20px 30px;
    min-height: 325px;
    justify-content: center;
  }

  section.kaslider2 .swiper-slide .imgblock {
    max-height: 230px;
    margin: 0;
  }

  section.kaslider2 .swiper-slide .imgblock img {
    max-height: 230px;
    object-fit: cover;
  }

  section.kaslider2 .swiper-button-prev {
    top: 165px;
    left: 5px;
    left: -20px;
    width: 15px;
    height: 25px;
  }

  section.kaslider2 .swiper-button-next {
    top: 165px;
    left: auto;
    right: 5px;
    right: -20px;
    width: 15px;
    height: 25px;
  }

  div.tablereserve div.buttonblock .button_gold-1 {
    display: flex;
    text-align: center;
    align-items: center;
    justify-content: center;
  }

  div.tablereserve.widebtn .buttonblock a {
    font-size: 22px;
    line-height: 24px;
    padding:8px 30px;
  }

  /*
  section.kaslider2.cnt_4 .teaserlist {
      grid-template-columns: 1fr 1fr 1fr 1fr;
  }

  section.kaslider2.cnt_5 .teaserlist {
      grid-template-columns: 1fr 1fr 1fr;
  }
  section.kaslider2.cnt_6 .teaserlist {
      grid-template-columns: 1fr 1fr 1fr;
  }
  */
  section.kaslider2.cnt_7 .teaserlist {
      grid-template-columns: 1fr 1fr 1fr;
  }
  section.kaslider2.cnt_8 .teaserlist {
      grid-template-columns: 1fr 1fr 1fr;
  }

  .mod_newslist.newsblog {
    grid-template-columns: 1fr;
    grid-column-gap: 0px;
  }

  body.hvjprodukt #main .tabcontrol_tabs ul li {
    font-size:12px;
    font-weight:400;
    letter-spacing:0.05em;
    text-align:center;
    padding: 10px 8px 10px 8px;

  }
  section.hvjprodukt.prcol100,
  section.hvjprodukt.prcol75,
  section.hvjprodukt.prcol50,
  section.hvjprodukt.prcol25 {
    width:calc(100% - 0px);
    margin-right: 0px;
  }

  .contactperson.block.col33 {
    width: calc(100% - 25px);
  }

  section.counterlinks .boxblock .box {
    width: calc(100% - 0px);
  }
  section.counterlinks .boxblock .box .textblock {
    padding: 30px 30px 30px 30px;
  }

  .col400pxm,
  .colR400pxm {
    width: 100%;
  }
  .col400pxm {
    order: 2;
  }
  .colR400pxm {
    margin-top: 30px;
    order: 1;
  }

  #footer-band-1 .inside {
    padding: 30px 0 0 0;
  }
  #footer-band-1 .newsletter {
    flex-direction: column;
  }
  #footer-band-1 .newsletter .text {
    max-width: 90%;
    margin: 0 auto;
    text-align: center;
  }
  #footer-band-1 .newsletter .text,
  #footer-band-1 .newsletter .button,
  #footer-band-1 .newsletter .socials {
    margin: 10px 0 15px 0;
  }
  #footer-band-1 div.formbody img {
      margin-right:0;
  }
  #footer-band-1 div.formbody input[type="email"],
  #footer-band-1 div.formbody input[type="text"] {
      float:left;
      clear:none;
      padding-left:10px;
  }
  #footer-band-1 .partner a {
      margin-right:15px;
      margin-left:15px;
  }
  footer div.logo img {
      max-width:250px;
  }
  #footer-band-3 div.booking p,
  #footer-band-3 div.booking strong,
  #footer-band-3 div.telefon p,
  #footer-band-3 div.telefon strong,
  #footer-band-3 div.booking a,
  #footer-band-3 div,
  #footer-band-3 div.telefon .details,
  footer nav.mod_changelanguage ul li *,
  footer nav.mod_changelanguage ul li a {
      font-size:14px;
  }
  #footer {
      height:760px;
      margin-right:0;
      margin-left:0;
      padding-right:0;
      padding-bottom:0;
      padding-left:0;
      padding-bottom: 0px !important;
  }
  #footer-band-2 {
      height:100%;
      padding-bottom:10px;
  }
  #footer-band-2 div#kontakt,
  #footer-band-2 nav,
  footer div.mod_footer_copyright {
      width:250px;
      max-width:100%;
      float:none;
      clear:both;
      margin-right:auto;
      margin-left:auto;
      padding-top:0;
      padding-bottom:0;
      padding-left:0;
  }
  footer div.mod_footer_copyright {
      position:relative;
      margin-top:30px;
      margin-bottom:10px;
  }
  #footer-band-1 .partner {
      width:100%;
      float:none;
      clear:both;
      border-bottom:1px solid #555;
  }
  #footer-band-1 .partner a {
      margin-right:10px;
      margin-left:10px;
      padding-right:0;
      padding-left:0;
  }
  #footer-band-1 .socials {


  }
  #footer-band-1 div.socials div.links {
      width:120px;
  }
  #footer-band-2 .copyright,
  #footer-band-2 .shoplink {
      width:95%;
      max-width:100%;
      left:0;
      right:0;
      top:0;
      position:relative;
      float:none;
      clear:both;
      margin:0 auto 5px 5px;
      padding:0;
      text-align:left;
  }
  #footer-band-2 h1 {
      width:100%;
      text-align:center;
  }
  #footer-band-2 .mod_customnav li {
      padding:0 3px;
      text-align:center;
  }
  #footer-band-2 .nav_restaurant,
  #footer-band-2 .nav_hotel,
  #footer-band-2 div#kontakt {
      display:none;
  }
  #footer-band-2 nav {
    float:none;
    margin-right:auto;
    margin-left:auto;
    padding-right:0;
    padding-left:0;
  }
  #footer-band-3 {
    background-color: #333;
  }
  #footer-band-3 nav.mod_changelanguage {
    float: none;
    left: 0;
    right: auto;
    width:100%;
    max-width: 100%;
    margin: 0 0 40px 0;
    display: flex;
    justify-content: center;
  }
  footer nav ul {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    justify-content: center;
    /*flex-direction: column;*/
  }
  #socials .ce_hyperlink {
      float:left;
      margin-right:5px;
      margin-left:0;
  }


  div.contactperson.headline {
      display:none;
  }
  .contactperson.list div div.pre {
      float:left;
      display:block;
      margin-right: 10px;
      min-width:40px;
  }
  .contactperson.list .bereich,
  .contactperson.list .position,
  .contactperson.list .name,
  .contactperson.list .email,
  .contactperson.list .email a,
  .contactperson.list .tel {
      width: 100%;
  }
  /*.contactperson.list .bereich,*/
  .contactperson.list .position,
  .contactperson.list .name {
      font-weight: 600;
  }

  section.mobileslider1 .msmobile .swiper-button-prev {
    left: 15px;
  }
  section.mobileslider1 .msmobile .swiper-button-next {
    right: 15px;
  }

  section.timeline {

  }

  section.timeline .eventblock .event.desktop {
    display: none;
  }
  section.timeline .eventblock .event.mobile {
    position: relative;
    margin: 0;
    padding: 0 0 0 0;
    display: grid;
    grid-template-columns: 20px 1fr;
    grid-auto-rows: 1fr;
    grid-column-gap: 5px;
    grid-row-gap: 5px;
  }
  section.timeline .eventblock .middle {
    margin-left: 9px;
    width:2px;
  }
  section.timeline .eventblock .right {
    padding-left: 20px;
    width: 100%;
  }
  section.timeline h6 {
    margin: 9px 0 10px 0;
    padding: 0;
  }
  section.timeline .eventblock .event .image {
    padding: 0px 0 20px 0;
  }
  section.timeline .eventblock .event .text {
    margin: 10px 0 20px 0;
    padding: 0 0 20px 0;
  }

  div.linknewsletter {
    display: none;
  }

}


/* ****************************************************************************************************************** */
/* --- max-width: 500px --------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

@media only screen and (max-width: 502px) {
  #headerslider .title .headline {
      font-size:24px;
  }
  #headerslider .title .slogan {
      font-size:16px;
  }

  #bannervideo,
  #bannervideo2,
  #bannervideo2 video,
  #banner .video_container video {
    height: calc(66vh - 0px) !important;
    min-height: calc(66vh - 0px) !important;
    max-height: calc(66vh - 0px) !important;
  }

  #banner .video_container video {
      object-fit: cover;
  }

  div.limit1600 {
      margin-right:20px;
      margin-left:20px;
      width: calc(100% - 40px);
  }
  a,
  b,
  body,
  cite,
  div,
  em,
  i,
  label,
  li,
  ol,
  p,
  strong,
  td,
  th,
  u,
  ul,
  fieldset,
  form,
  input,
  optgroup,
  select,
  textarea {
      font-size:15px;
      line-height:1.3em;
      word-spacing:0;
  }
  h1,
  h1.desktop {
      width:100%;
      max-width:100%;
      margin-bottom:20px;
      font-size:24px;
  }
  .col75,
  .col75m,
  .col50,
  .col50m,
  .col50mr,
  .col33,
  .col25,
  .col20,
  div.specials,
  div.eventservice,
  .produktion,
  #ansprechpartner div.col33,
  #contact-persons div.col33,
  #interlocuteur div.col33,
  #contactpersoon-333 div.col33,
  .ce_gallery ul li,
  #main .ce_gallery ul li,
  .rooms,
  .contactpersoncontainer .contactperson.block.nocomm {
      width:100%;
      height:100%;
      min-height:100%;
      max-height:100%;
      float:none;
      clear:both;
      margin-right:0px;
      width:calc(100% - 0px);
      max-width:100%;
  }
  .col20tab,
  .col25tab,
  #main .ce_gallery ul li,
  .ce_gallery ul li {
      width:100%;
      float:none;
      clear:both;
      margin-right:0;
      margin-bottom:15px;
  }

  body.hvjprodukt .col25 {
    height: 1px;
    display: none !important;
  }

  section.kaslider3 .swiper-container {
    margin-right:20px;
    margin-left:20px;
    width:calc(100% - 40px);
  }

  section.kaslider3 .swiper-slide {
    width: 100%;
    max-width: 100%;
  }

  .grid.fr2m {
    grid-template-columns: 1fr 1fr;
    grid-column-gap: 20px;
    grid-row-gap: 20px;
  }

  .ce_gallery ul li,
  #main .ce_gallery ul li {
      height:auto;
      min-height:25%;
  }
  div.button_tel a {
      padding-right:10px;
      padding-left:10px;
      min-width: 200px !important;
      max-width: 100% !important;
  }
  .ce_dlh_googlemaps.col50 {
      width:100%;
      margin-right:0;
  }
  .col12m {
      width:calc(50% - 30px);
  }
  div.limit1600 .col50.ce_dlh_googlemaps,
  div.limit1600 .col30.anfrage,
  div.limit1600 .col20.anfrage {
      margin-right:20px;
      width:calc(100% - 20px);
  }
  div.width100 .textblock p {
      font-size:20px;
  }
  .ce_easyzoom {
      width:100%;
      float:none;
      clear:both;
  }
  #prodlink4,
  #prodlink,
  #prodlink.shop {
      margin-top:15px;
      margin-bottom:0;
      width: calc(50% - 15px);
  }
  .product-category-box-title {
      top:-80px;
  }
  .ce_gallery > ul li {
      margin-right:0;
      margin-left:0;
      max-width:calc(100% - 0px);
  }
  .caroufredsel_skin {
  }
  .dmg_linkbox {
      width: calc(50% - 20px);
  }
  #referenzen .ref-entry {
      width:calc(33.3% - 0px);
  }
  .news-text {
      width:100%;
      margin-left:0;
      padding-left:0;
  }
  .contactperson.block {
      float:none;
      clear:both;
      display:block;
      margin-right:20px;
      margin-bottom:30px;
      border-bottom:0px solid #f1f1f1;
      width:calc(100% - 20px);
  }
  .instagram .image_container img {
      margin-right:3px;
      margin-bottom:6px;
      margin-left:3px;
      width: calc(25% - 6px);
  }
  .instagram .linkbox a {
      padding:2px 5px;
      font-size:12px;
  }
  div.anfrage.col30 {
      width:100%;
  }
  .rooms div div {
      font-size:14px;
  }
  .rooms div div.dimension {
      width:9%;
  }
  .rooms div div.name {
      width:28%;
      padding-right:0;
      padding-left:0;
  }
  #footer {
      height:760px;
      margin-right:0;
      margin-left:0;
      padding-right:0;
      padding-bottom:0;
      padding-left:0;
      padding-bottom: 0px !important;
  }
  #footer-band-2 {
      height:100%;
      padding-bottom:10px;
  }
  #footer-band-2 div#kontakt,
  #footer-band-2 nav,
  footer div.mod_footer_copyright {
    display: flex;
    justify-content: center;
    flex-direction: column;
    width:100%;
    max-width:100%;
    float:none;
    clear:both;
    margin-right:auto;
    margin-left:auto;
    padding-top:0;
    padding-bottom:0;
    padding-left:0;
    align-items: center;

  }
  footer div.mod_footer_copyright {
      position:relative;
      margin-top:30px;
      margin-bottom:10px;
  }
  #footer-band-1 .partner {
      width:100%;
      float:none;
      clear:both;
      border-bottom:1px solid #555;
  }
  #footer-band-1 .partner a {
      margin-right:10px;
      margin-left:10px;
      padding-right:0;
      padding-left:0;
  }
  #footer-band-1 .socials {
    width: 100%;
  }
  #footer-band-2 .copyright,
  #footer-band-2 .shoplink {
      width:95%;
      max-width:100%;
      left:0;
      right:0;
      top:0;
      position:relative;
      float:none;
      clear:both;
      margin:0 auto 5px 5px;
      padding:0;
      text-align:left;
  }
  #footer-band-2 h1 {
      width:100%;
      text-align:center;
  }
  #footer-band-2 .mod_customnav li {
      padding:0 3px;
      text-align:center;
  }
  #footer-band-2 .nav_restaurant,
  #footer-band-2 .nav_hotel,
  #footer-band-2 div#kontakt {
      display:none;
  }
  #footer-band-3 nav.mod_changelanguage {

  }
  #socials .ce_hyperlink {
      float:left;
      margin-right:5px;
      margin-left:0;
  }
  .ce_form label {
      width:100%;
      float:none;
      clear:both;
  }
  input[type="text"],
  input[type="email"],
  input[type="password"],
  input[type="search"],
  textarea,
  select {
      max-width:95%;
      float:none;
      clear:both;
      margin-top:0;
      margin-bottom:4px;
      padding:4px;
      background-color:#d9dadb;
      width: calc(100% - 20px);
  }
  fieldset.checkbox_container,
  button[type="submit"],
  input[type="submit"],
  form.gala button[type="submit"] {
      margin-left:0;
  }
  #main .newsletter div.widget-text,
  #main .newsletter div.widget-submit {
      width: 100%;
  }
  #main .newsletter div.widget-submit {
      margin-bottom: 20px;
  }
  #main .newsletter input[type="email"],
  #main .newsletter button[type="submit"],
  #main .newsletter input[type="submit"],
  form.gala button[type="submit"] {
      width: calc(100% - 20px);
  }

  fieldset.checkbox_container {
      width:calc(100% - 25px);
  }
  select {
      width:100%;
      float:none;
      clear:both;
      margin-top:0;
  }
  body.galerie h4::before {
      height: 150px;
  }
  body.galerie .rsts-skin-default .rsts-next {
      position: absolute;
      right: 0px;
      top: calc(50% - 15px);
  }
  body.galerie .rsts-skin-default .rsts-prev {
      left:0px;
  }

  section.kaslider2 .dropdownlist #ddactive {
    /*width: 100%;*/
  }

  section.kaslider2 .swiper-button-prev,
  section.kaslider2 .swiper-button-next {
    /*
    display: none;
    */
  }

  section.kaslider2 .swiper-slide .textblock {
    padding: 10px 10px;
  }

  section.kaslider3 {
    margin: 0px 0 20px 0;
    padding: 0px 0 0px 0;
  }
  section.kaslider3 .swiper-container {
    margin: 5px auto;
  }
  section.kaslider3 .swiper-slide .textblock {
    min-height: 50px;
  }
  section.kaslider3 .swiper-slide .textblock h1,
  section.kaslider3 .swiper-slide .textblock h2,
  section.kaslider3 .swiper-slide .textblock h6,
  section.kaslider3 .swiper-slide .textblock h4,
  section.kaslider3 .swiper-slide .textblock > div {
    width: 100%;
    text-align: center;
  }

  section.kaslider3 .swiper-button-prev,
  section.kaslider3 .swiper-button-next {
    width: 24px;
    height: 24px;
    top: calc(100% - 60px);

    padding: 0px;

    width: 34px;
    height: 34px;
    position: absolute;
    background-repeat: no-repeat;
    top: calc(50% - 50px);
  }
  section.kaslider3 .swiper-button-prev {
  	left:calc(50% - 50px);

    background-image: url('/files/intern/commonext/fairmont-hamburg-pfeil-gold-links.svg');
    left: 25px;
  }
  section.kaslider3 .swiper-button-next {
  	left:calc(50% + 4px);
    right: auto;

    left: auto;
    right: 25px;
    background-image: url('/files/intern/commonext/fairmont-hamburg-pfeil-gold-rechts.svg');
  }

  section.kaslider4 {
    margin: 40px 0 0 0;
  }

  section.kaslider4 .imgblock .images.cnt_4 {
    grid-template-columns: 1fr 1fr;
    grid-row-gap: 20px;
  }
  section.kaslider4 .swiper-slide:nth-child(4) {
    display: flex;
  }
  section.kaslider4 .swiper-slide .textblock {
    padding: 0px 0px;
  }

  section.kaslider4 .swiper-button-prev,
  section.kaslider4 .swiper-button-next {
    display: none;
  }

  .tabcontrol_tabs li.tabs, section.kaslider4 .teaserlist a {
    font-size: 11px;
    hyphens: auto;
  }

  section.hvjspecials .grid.fr4,
  section.hvjspecials .grid.fr5,
  section.hvjspecials .grid.fr6,
  section.hvjspecials .grid.fr7,
  section.hvjspecials .grid.fr8,
  section.hvjspecials .grid {
    grid-template-columns: 1fr;
  }

  section.hvjspecials .image_container .headline,
  section.hvjspecials .textblock .headline {
    font-size: 16px;
    line-height: 20px;
  }

  section.kablogslider .swiper-slide,
  section.kablogslider .swiper-slide .limit1400 {
    height: 100%;
    padding: 0;
  }

  section.hvjspecials .image_container .headline {
    padding: 10px 30px;
  }

  section.kablogslider .swiper-slide .textblock {

  }

  section.kablogslider .swiper-slide .mobileblock {
    margin: 0;
    position: absolute;
    top: auto;
    bottom: 20px;
    display: flex;
    flex-direction: column;
    z-index: +1;
  }
  section.kablogslider .teaserlist {
    display: none;
  }

  section.kablogslider .swiper-slide a.button {
    min-width: inherit !important;
  }

  section.kablogslider .teaserlist .grid {
    grid-column-gap: 10px;
    grid-template-columns: 1fr 1fr 1fr;
  }
  section.kablogslider .teaserlist .teaser a {
    font-size: 13px;
    line-height: 14px;
  }


  .ce_previewdownload a.text {
      float:left;
      clear:none;
      width:calc(100% - 00px);
      font-size: 12px;
      word-wrap: normal;
  }
  .ce_previewdownload img.preview_image {
    max-width: 190px;
    margin-top: 0;
    margin-right: 10px;
    margin-bottom: 10px;
    width: 190px;
    object-fit: cover;
  }

  .presseinfo div.container {
    display: flex;
    float: none;
    text-align: left;
    align-items: flex-start;
    justify-content: flex-start;
    width: 100%;
    margin: 0;
    padding: 0;
  }
  .presseinfo div.container a {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    margin: 0;
    padding: 0;
    width: 100%;
  }
  .presseinfo div.container a img {
    width: auto;
    margin: 0;
    padding: 0;
    width: 100%;
  }

  #cboxTitle {
    font-size: 12px;
    padding: 4px 5px;
    height: 22px;
  }
  /*
  #cboxPrevious,
  #cboxNext {
    width: 20px;
    height: 33px;
    background-size: contain;
  }
  */

  section.hvjinfobox {
    left: var(--info_bordermobile);
    width: calc(100% - 2 * var(--info_bordermobile));
    height: calc(100vh - 2 * var(--info_bordermobile));
    max-width: calc(100% - 2 * var(--info_bordermobile));
  }

  section.hvjspecials .hoverblock {
    display: none !important;
  }
  section.hvjspecials .special:hover .image_container .headline {
    background-color: rgba(0,0,0,.7) !important;
    color: rgba(255,255,255,1) !important;
  }
}

/* ****************************************************************************************************************** */
/* --- max-width: 350px --------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

@media only screen and (max-width: 352px) {
  #footer {
      height:100%;
      padding-bottom:15px;
  }
  .dmg_linkbox {
      width:100%;
      float:none;
      clear:both;
      margin-right:0;
  }
}



/* ****************************************************************************************************************** */
/* --- Tablets und Mobile-Geräte ------------------------------------------------------------------------------------ */
/* ****************************************************************************************************************** */

@media (hover: none) {
  section.hvjspecials .hoverblock {
    display: none !important;
  }
  section.hvjspecials .special:hover .image_container .headline {
    background-color: rgba(0,0,0,.7) !important;
    color: rgba(255,255,255,1) !important;
  }
}


/* ****************************************************************************************************************** */
/* --- Navigation Mobile -------------------------------------------------------------------------------------------- */
/* ****************************************************************************************************************** */

.mobile_menu_overlay {
    z-index: 990;
}
.mobile_menu {
    max-width:260px;
    z-index: 999;
    1height: auto !important;
    1height: 99vh !important;
}
.mobile_menu .inner {
    background-color:#333;
    font:14px/14px Work Sans,Lato,Arial;
    color:#f1f1f1;
    z-index: 999;
    1height: auto;
    1overflow: visible;
    1overflow-y: scroll;
}
.mobile_menu .inner .ce_text1,
.mobile_menu .inner .ce_text h1,
.mobile_menu .inner .ce_text p,
.mobile_menu .inner .ce_text a1 {
    margin-top:0;
    margin-bottom:0;
    padding:10px 0 10px 15px;
    font-size:14px;
    color:#FFF;
}
.mobile_menu .mod_navigation {
    clear:both;
    margin:0 0 10px;
}
.mobile_menu .mod_navigation ul.level_1 {
    margin:0;
    padding:15px 0 0 15px;
}
.mobile_menu li.active.submenu_show > ul {
    padding-top:8px;
}
.mobile_menu .mod_navigation ul li {
    float:none;
    margin:0;
    padding:0;
    list-style-type:none;
}
.mobile_menu .mod_navigation li span {
    width:100%;
    position:relative;
    display:block;
}
.mobile_menu .mod_navigation a,
.mobile_menu .mod_navigation strong {
    display:block;
    padding:8px 0;
    border-bottom:1px solid #666;
    text-decoration:none;
    color:#f1f1f1;
    font:14px Work Sans,Lato,Arial;
    color: white;
}
.mobile_menu .mod_navigation li span.active {
    padding-top:8;
    padding-bottom:0;
    color:#ac936e;
    font:14px Work Sans,Lato,Arial;
}
.mobile_menu .mod_navigation a:focus,
.mobile_menu .mod_navigation a:hover {
    color:#ac936e;
}
.mobile_menu .mod_navigation a.trail:focus,
.mobile_menu .mod_navigation a.trail:hover {
    color:#fff;
}
.mobile_menu .submenu > a1::after,
.mobile_menu .submenu > span::after {
    right:5px;
    top:0;
    position:absolute;
    font-size:18px;
    content: '›';
    display: inline-block;
    width: 20px;
    height: 20px;
    line-height: 20px;
    text-align: center;
}
.mobile_menu .submenu_show > a::after,
.mobile_menu .submenu_show > span::after {
    transform: rotate(90deg);
    text-indent: 4px;
}
.mobile_menu .mod_navigation li.active {
    border-bottom:1px solid #666;
}
.mobile_menu .mod_navigation ul.level_1 li.active {
    padding:8px 0;
}
.mobile_menu .mod_navigation li.active.submenu_show {
    padding-bottom:0;
    border:0px solid #666;
}
.mobile_menu .mod_navigation ul.level_2 {
    margin-bottom:0;
    padding-bottom:0;
}
.mobile_menu .mod_navigation .level_2 a,
.mobile_menu .mod_navigation .level_2 strong {
    padding-left:20px;
    background-color:#171717;
}
.mobile_menu .mod_navigation .level_2 a.first,
.mobile_menu .mod_navigation .level_2 strong.first {
    border-top:0;
}
.mobile_menu .mod_navigation .level_2 a.trail:focus,
.mobile_menu .mod_navigation .level_2 a.trail:hover {
    color:#fff;
}
.mobile_menu .mod_navigation ul.level_2 li.active {
    padding-top:0;
    padding-bottom:0;
}
.mobile_menu .mod_navigation .level_2 li.active > span {
    padding-top:8px;
    padding-bottom:8px;
    padding-left:20px;
    background-color:#171717;
}
.mobile_menu ul.level_2 li.active.submenu_show > ul {
    padding-top:0;
}
.mobile_menu ul.level_2 li.active.submenu_show > ul span {
    padding-top:0;
    padding-bottom:0;
    background-color:#fff;
}
.mobile_menu .mod_navigation ul.level_3 {
    margin-bottom:0;
    margin-left:0;
    padding:0;
}
.mobile_menu .mod_navigation .level_3 a,
.mobile_menu .mod_navigation .level_3 strong {
    padding-left:40px;
    background-color:#fff;
    color:#333;
}
.mobile_menu .mod_navigation .level_3 a.first,
.mobile_menu .mod_navigation .level_3 strong.first {
    border-top:0;
}
.mobile_menu .mod_navigation .level_3 a:focus,
.mobile_menu .mod_navigation .level_3 a:hover {
  color:var(--ka-font-color-gold);
}
.mobile_menu .mod_navigation ul.level_3 a.trail:focus,
.mobile_menu .mod_navigation ul.level_3 a.trail:hover {
    color:#fff;
}
.mobile_menu .mod_navigation ul.level_3 li.active {
  background-color:#fff;
  color:var(--ka-font-color-gold);
}
.mobile_menu .mod_navigation .level_3 li.active > span {
    padding-left:40px;
    background-color:#fff;
}
.mobile_menu .mod_navigation ul.level_3 span {
    padding-top:0;
    padding-bottom:0;
    padding-left:0;
    background-color:#fff;
}
.mobile_menu .cta,
.mobile_menu .socials {
  min-height:32px;
  display:block;
  margin:0px 0 0 15px;
  padding:0;
  border-bottom:1px solid #666;
}
.mobile_menu .cta {
  position:relative;
  display: flex;
  flex-direction: column;
  padding:10px 0 10px 15px;
}
.mobile_menu .cta .text {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  margin:5px 0 5px 0px;
  padding:0;
}
.mobile_menu .cta .text,
.mobile_menu .cta .text * {
  font:14px/14px Work Sans,Lato,Arial;
  color:#FFF;
}
.mobile_menu .cta  .text img {
  display: flex;
  width:32px;
  float:left;
  margin: 0 15px 0 0;
}
.mobile_menu .logo {
    width:100%;
    margin-top:25px;
    margin-bottom:40px;
    padding-left:0;
}
.mobile_menu .logo img {
    margin-left:10px;
    padding:0;
}
.mobile_menu .socials {
  display: flex;
  flex-direction: column;
  margin:15px 0 0 15px;
}
.mobile_menu .cta h6,
.mobile_menu .socials h6 {
  display:block;
  margin-top:0;
  margin-right:15px;
  margin-bottom:0;
  padding-top:0;
  padding-bottom:0;
}
.mobile_menu .cta h6,
.mobile_menu .socials h6 {
    margin-top:3px;
    margin-bottom:0;
    margin-left:18px;
    font:14px/14px Work Sans,Lato,Arial;
    color:#ac936e;
}
.mobile_menu .socials .hyperlinks {
  display: flex;
  flex-direction: row;
  margin: 15px 0 15px 15px;
}
.mobile_menu .socials .hyperlinks img {
  width: 24px;
  margin: 0 15px 0 0;
}
.mobile_menu .chlang {
    display:block;
    margin-top:20px;
    margin-left:15px;
}
.mobile_menu .chlang nav.mod_changelanguage ul li span,
.mobile_menu .chlang nav.mod_changelanguage ul li a {
    margin-top:0;
    margin-bottom:0;
    padding-top:0;
    padding-bottom:0;
    font:14px/14px Work Sans,Lato,Arial;
    color:#ac936e;
}
.mobile_menu ::-webkit-scrollbar {
    display:none;
}
.mobile_menu {
    display:none;
    -ms-overflow-style: none;  // IE 10+
    overflow: -moz-scrollbars-none;  // Firefox
    overflow-y: -moz-hidden-unscrollable;
    -moz-scrollbars-vertical:hidden;
}
.navi_title {
    text-align:center;
    color: white;
}
.navi_footer {
    text-align:center;
    color: white;
}

