/* #################################################
# Projekt 	: CSS
# Stand     : 30.06.25
# Autor		: 300design.com
#################################################### */

:root {
	--bs-brand:#007da3;
	--bs-primary:#007da3;
	--bs-primary-rgb:0,125,163;
}

body.html {
	min-height:100vh;
}

body {
	/* overflow-y:scroll; */
	overflow-x:hidden;
	font-family:'Roboto', sans-serif;
	color:#666;
	font-size:1.1rem;
	line-height:1.7;
	background:#fff;
}
body.no-scroll {
	overflow:hidden;
	-webkit-overflow-scrolling:touch;
}

.box-welcome {padding-top:2rem !important}
.container {max-width:960px !important}
.no-box-head {padding-top:0 !important}

iframe {
	border:0
}
.ratio {
	padding-bottom:0 !important;
}
.ratio > img {
	object-fit:cover;
}
.ratio.pos-top > img { object-position:top; }
.ratio.pos-btm > img, .ratio.pos-bottom > img { object-position:bottom; }

.ratio-9x16 {--bs-aspect-ratio:177.777%;}
.ratio-2x3 {--bs-aspect-ratio:150%;}
.ratio-4x5 {--bs-aspect-ratio:125%;}
.ratio-1x1 {--bs-aspect-ratio:100%;}
.ratio-4x3 {--bs-aspect-ratio:75%;}
.ratio-3x2 {--bs-aspect-ratio:66.6666666667%;}
.ratio-16x9, .ratio:not([class*='ratio-']) {--bs-aspect-ratio:56.25%;}
.ratio-2x1 {--bs-aspect-ratio:50%;}
.ratio-21x9 {--bs-aspect-ratio:42.8571428571%;}
.ratio-3x1 {--bs-aspect-ratio:33.33%;}
.ratio-4x1 {--bs-aspect-ratio:25%;}

@media (max-width:767px){
	.ratio-m-9x16 {--bs-aspect-ratio:177.777%;}
	.ratio-m-2x3 {--bs-aspect-ratio:150%;}
	.ratio-m-4x5 {--bs-aspect-ratio:125%;}
	.ratio-m-1x1 {--bs-aspect-ratio:100%;}
	.ratio-m-4x3 {--bs-aspect-ratio:75%;}
	.ratio-m-3x2 {--bs-aspect-ratio:66.6666666667%;}
	.ratio-m-16x9 {--bs-aspect-ratio:56.25%;}
	.ratio-m-2x1 {--bs-aspect-ratio:50%;}
	.ratio-m-21x9 {--bs-aspect-ratio:42.8571428571%;}
	.ratio-m-3x1 {--bs-aspect-ratio:33.33%;}
}

/* sizing-repsonsive */
@media (min-width:576px){
	.w-sm-100{width:100%!important} .w-sm-75{width:75%!important} .w-sm-50{width:50%!important} .w-sm-25{width:25%!important}
	.h-sm-100{height:100%!important} .h-sm-75{height:75%!important} .h-sm-50{height:50%!important} .h-sm-25{height:25%!important}
}
@media (min-width:768px){
	.w-md-100{width:100%!important} .w-md-75{width:75%!important} .w-md-50{width:50%!important} .w-md-25{width:25%!important}
	.h-md-100{height:100%!important} .h-md-75{height:75%!important} .h-md-50{height:50%!important} .h-md-25{height:25%!important}
}
@media (min-width:992px){
	.w-lg-100{width:100%!important} .w-lg-75{width:75%!important} .w-lg-50{width:50%!important} .w-lg-25{width:25%!important}
	.h-lg-100{height:100%!important} .h-lg-75{height:75%!important} .h-lg-50{height:50%!important} .h-lg-25{height:25%!important}
}
@media (min-width:1200px){
	.w-xl-100{width:100%!important} .w-xl-75{width:75%!important} .w-xl-50{width:50%!important} .w-xl-25{width:25%!important}
	.h-xl-100{height:100%!important} .h-xl-75{height:75%!important} .h-xl-50{height:50%!important} .h-xl-25{height:25%!important}
}

/* hyphens */
.hyphens {hyphens:auto!important}
@media (min-width:576px){ .hyphens-sm {hyphens:auto!important} .hyphens-sm-0 {hyphens:none!important} }
@media (min-width:768px){ .hyphens-md {hyphens:auto!important} .hyphens-md-0 {hyphens:none!important} }
@media (min-width:992px){ .hyphens-lg {hyphens:auto!important} .hyphens-lg-0 {hyphens:none!important} }
@media (min-width:1200px){ .hyphens-xl {hyphens:auto!important} .hyphens-xl-0 {hyphens:none!important} }

/* extra-cols */
@media (min-width:1400px){
	.col-xl-1_5 {width:12.5%;flex:0 0 auto;}.col-xl-2_5 {width:20%;flex:0 0 auto;}.col-xl-2 {width:16.66666667%;flex:0 0 auto;}
}
@media (min-width:1600px){
	.col-xxl-1_5 {width:12.5%;flex:0 0 auto;}.col-xxl-2_5 {width:20%;flex:0 0 auto;}.col-xxl-2 {width:16.66666667%;flex:0 0 auto;}
}

.flow-text {
	font-size:18px;
	line-height:1.75;
}

.modal-content {
	border-radius:.325rem;
}

#content {
	/* background:#535353 url('../i/bg-cnt.jpg') 50% 0% no-repeat fixed;
    background-size:cover; */
}

.smaller {
	font-size:.75em;
}

.head-font,
.Xbtn {
	font-family:'Roboto', sans-serif;
}
.head-font .thin {
	font-weight:300;
	font-size:105%;
}

h1, .h1, h2, .h2, h3, .h3, h4, .h4, h5, .h5, h6, .h6 {
	font-family:'Roboto', sans-serif;
	margin-top:0;
	color:#000;
	font-weight:300;
	line-height:1.1;
	text-transform:none;
}

:is(h1,.h1,h2,.h2,h3,.h3) small,
:is(h1,.h1,h2,.h2,h3,.h3) .small {
	font-size:.65em;
	font-weight:normal;
}

h1, .h1 {
	margin-bottom:1.75rem;
    color:var(--bs-primary);
}
h1 small, .h1 .small,
h1 .small, .h1 small {
	color:#000;
}
h2, .h2 {
	margin-bottom:1.25rem;
}
h3, .h3 {
	margin-bottom:1.25rem;
}
h5, .h5 {
	color:#ccc;
}
.maintext :is(h2,.h2,h3,.h3,h4,.h4,h5,.h5,h6,.h6){
	margin-bottom:0;
	text-align:left;
}

.h-mb-0 h2, .h-mb-0 .h2,
.h-mb-0 h3, .h-mb-0 .h3,
.h-mb-0 h4, .h-mb-0 .h4,
.h-mb-0 h5, .h-mb-0 .h5,
.h-mb-0 h6, .h-mb-0 .h6 {
	margin-bottom:0;
}

.title .bracket {
	font-size:85%;
}

blockquote {
	position:relative;
	padding:1.5rem 1.75rem;
	border-left:2.5px solid var(--bs-primary);
	background:rgba(var(--bs-primary-rgb),.04);
}
blockquote small {
	display:block;
	margin-top:10px;
	color:inherit;
	opacity:.55;
}
blockquote.text-right {
	border-right:4px solid var(--bs-primary);
	border-left:0;
}
blockquote.text-center {
	margin:auto;
	padding:30px 0;
	width:70%;
	min-width:290px;
	border:0;
	background:none;
	hyphens:none;
}
blockquote.text-center:before,
blockquote.text-center:after {
	position:absolute;
	margin:auto;
	left:0;
	right:0;
	top:0;
	content:' ';
	display:block;
	width:20%;
	height:2px;
	background:var(--bs-primary);
}
blockquote.text-center:after {
	bottom:0;
	top:auto;
}
blockquote.text-center + blockquote.text-center:before {
	display:none;
}

.XXXparagraph:first-letter {
	font-size:310%;
	font-weight:300;
	float:left;
	padding:8px 5px 0 0;
	line-height:.7;
	color:#000;
}

.no-topmargin {
	margin-top:0 !important;
}

a:active, a:focus {
	outline:0px !important;
	text-decoration:none;
	-webkit-appearance:none;
}
a, .text-link {
	color:#000;
	text-decoration:none;
}
body:not(.touch) a:hover, a:focus, 
body:not(.touch) .text-link:hover {
    color:#666;
    text-decoration:none;
}
a:not([href]) {
	font-size:0;
	line-height:0;
}

.container-text a:not(.btn):not(.elm-mov)[href^='http'],
.container-text a:not(.btn):not(.elm-mov)[href^='//'][target='_blank'] {
	margin-right:1rem;
}
.container-text a:not(.btn):not(.elm-mov)[href^='http']:after,
.container-text a:not(.btn):not(.elm-mov)[href^='//'][target='_blank']:after {
	position:absolute;
	display:inline-block;
	margin: .5rem 0 0 .25rem;
	font-family:'Font Awesome 6 Pro';
    content:"\f08e";
	font-weight:400;
	font-size:55%;
	opacity:.6;
}
.container-text .lead a[href^='http']:after,
.container-text .lead a[href^='//'][target='_blank']:after {
	font-size:50%;
}

.text-link,
.lead a:not(.btn),
.box-content a:not(.btn) {
	color:var(--bs-primary);
	border-bottom:1.5px solid rgba(var(--bs-primary-rgb),.2);
}
body:not(.touch) .text-link:hover,
body:not(.touch) .lead a:not(.btn):hover,
body:not(.touch) .box-content a:not(.btn):hover,
body:not(.touch) .box-content .toggler:hover {
	color:#fff;
	background:var(--bs-primary);
}

.title a, a.title {
	color:#000;
}
body:not(.touch) .title a:hover, .title a:focus,
body:not(.touch) a.title:hover, a.title:focus {
    color:#e50;
    text-decoration:none;
}

#XXXcontent a:not(.btn) {
	font-weight:normal;
}

b {
	font-weight:500;
}

.text-muted {
    color:#aaa;
}
.text-normal {
	color:#666;
}
.text-brand {
	color:var(--bs-brand);
}
.lh-normal {
	line-height:normal;
}

.XXXtext-bg-warning {
	color:#fff !important;
	background-color:rgba(255,163,7,var(--bs-bg-opacity,1)) !important;
}
.XXXtext-bg-info {
	color:#fff !important;
	background-color:rgba(18,202,230,var(--bs-bg-opacity,1)) !important;
}

.text-ellipsis {
	display:block;
	overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.text-justify {
	text-align:justify;
}
.text-hyph,
.maintext {
	word-wrap:break-word;
	overflow-wrap:break-word;
	-webkit-hyphens:auto;
	-moz-hyphens:auto;
	hyphens:auto;
}

.tel {
	display:inline-block;
	white-space:nowrap;
}
.tel .ico {
	font-size:90%;
}

.lead {
	margin:0 0 1.5rem;
	max-width:900px;
	font-size:1.375rem;
	line-height:1.4;
	color:#666;
}
.lead.small {
	margin-bottom:30px;
	font-size:initial;
	font-weight:400;
	color:#888;
}
.lead b {
	font-weight:400;
}

.transition, a:not(.no-transition), .btn {
	transition:all .18s ease-out;
}
.transition-slow {
	transition:all .35s ease-out;
}

.flip-x {
	transform:scaleX(-1);
}
.flip-y {
	transform:scaleY(-1);
}

.hidn {display:none}

.checker, .outrange,
.form-checker #f_email + input,
.form-checker #f_email + .input-group input:first-child,
.form-checker #f_email + .input-group > .input-group-addon + input {
	position:absolute;left:-3000px;width:1px;height:1px;overflow:hidden;
}

.has-error .form-control {
	background-color:#fff5f5;
	box-shadow:0 0 6px #f00;
}

.alert {
	--bs-alert-border-radius:.175rem;
	border:0;
}

textarea {
	min-width:100%;
	max-width:100%;
	min-height:30px;
}

mark, .mark {
	padding:.1em .2em;
	background-color:rgba(var(--bs-warning-rgb),.125);
	border-radius:2px;
	text-shadow:none;
	-webkit-box-decoration-break:clone;
	box-decoration-break:clone;
}
mark.dark,
.mark.dark {
	color: #fff;
	background: #000;
}
mark.light,
.mark.light {
	color:#000;
	background:rgba(var(--bs-primary-rgb),.11);
}
mark.danger,
.mark.danger {
	color:#000;
	background:rgba(var(--bs-danger-rgb),.12);
}

.form-label,
#item-cart .th {
	font-weight:500;
}

.form-control, .btn, .dropdown-menu,
.input-group-lg > .btn, .input-group-lg > .form-control, .input-group-lg > .form-select, .input-group-lg > .input-group-text,
.input-group-addon {
	border-radius:.175rem;
}
.ico + .text {
	margin-left:5px;
}
.dropdown:not(.bootstrap-select) .ico + .text {
	margin-left:8px;
}

.box-form-big .status .alert {
	margin:0;
}
.box-form-big .control-label {
	font-size:75%;
}
.box-form-big .control-label small {
	font-weight:normal;
	color:#888;
}
.box-form-big .title {
	margin:20px 0 10px;
	text-align:left;
}

.btn {
	font-weight:500;
	text-transform:none;
}
.box-content .btn {
	white-space:unset;
}

.btn-xs {
	font-size:13px;
}
.btn-sm {
	padding:4px 10px;
	font-size:14px;
}
.btn-lg,
.input-group-lg > .btn, .input-group-lg > .form-control, .input-group-lg > .form-select, .input-group-lg > .input-group-text {
	font-size:1.075rem;
}

.XXXbtn:not(.btn-default):not(.outline) {
    border-color:transparent;
}
.btn-default {
	color:#555;
	border-color:#dadce0;
	background-color:#fff;
}
body:not(.touch) .btn-default:hover {
	color:#000;
	background-color:#eee;
}
.btn-dark {
	color:#fff;
	background-color:#000;
}
body:not(.touch) .btn-dark:hover {
	color:#ddd;
	background-color:#333;
}
.btn-light {
	color:#000;
	background-color:#fff;
}
body:not(.touch) .btn-light:hover {
	color:#fff;
    background-color:#000;
}

.btn-primary {
    background-color:var(--bs-primary);
    border-color:var(--bs-primary);
}
body:not(.touch) .btn-primary:hover,
.btn-primary:focus,
.btn-primary:active {
	color:#fff;
    background-color:#333 !important;
    border-color:#333;
}
.btn-outline-primary {
	color:var(--bs-primary);
    border-color:var(--bs-primary);
}
body:not(.touch) .btn-outline-primary:hover {
	color:#fff;
    background-color:var(--bs-primary);
    border-color:var(--bs-primary);
}

.btn-warning {
    background-color:var(--bs-warning);
    border-color:var(--bs-warning);
}
body:not(.touch) .btn-warning:hover,
.btn-warning:focus,
.btn-warning:active {
	color:#fff;
    background-color:#333 !important;
    border-color:#333;
}
.btn-outline-warning {
	color:var(--bs-warning);
    border-color:var(--bs-warning);
}
body:not(.touch) .btn-outline-warning:hover {
	color:#fff;
    background-color:var(--bs-warning);
    border-color:var(--bs-warning);
}


.block-filter {
	margin:10px 0 30px;
}
.block-filter .btn {
	margin:0 5px 5px;
}
.block-filterXXX .btn-default {
	color:rgb(255,255,255);
    background-color:transparent;
    border:1px solid rgb(255,255,255);
}
.block-filterXXX .btn-primary {
	color:#000;
    background-color:rgb(255,255,255);
}

.flt-show {
	transition-property:transform, opacity;
	transition-duration:0.2s;
	opacity:1;
	transform:translate3d(0px, 0px, 0px) scale3d(1, 1, 1);
	visibility:visible !important;
}
.flt-hide {
	position:absolute;
	opacity:0;
	transform:translate3d(0px, 0px, 0px) scale3d(0.001, 0.001, 1);
}

.modal-backdrop.in {
	opacity: 0;
}

#popup .modal-content,
#popup iframe {
	border-radius:.325rem;
}
#popup .modal-content {
	height:calc(100vh - 20px);
	box-shadow: 0 5px 15px rgba(0,0,0,.2);
}
@media (min-width: 768px){
	#popup .modal-content {
		height:calc(100vh - 60px);
	}
}
#popup .modal-body,
#popup .iframe-wrapper,
#popup iframe {
	height:100%;
	padding:0;
}
#popup .close {
	position:absolute;
	z-index:1021;
	right:-10px;
	top:-10px;
	opacity:1;
	border:0;
	background:none;
}
#popup .close .ico {
	width:30px;
	height:30px;
	line-height:30px;
	font-size:20px;
	text-align:center;
	color:#000;
	background:#fff;
	border-radius:50%;
	box-shadow: 1px 0px 0 #ccc, 0px -1px 0 #ccc, 0px 0px 10px #0001;
}
#popup[data-url*='/classes/'] .modal-body {
	padding:15px;
}
@media (max-width: 400px){
	#popup[data-url*='/classes/'] .modal-body {
		padding:15px 0;
	}
}

#gotop {
	position:fixed;
	z-index:9;
	bottom:12px;
	right:10px;
	padding:0;
	border:0;
    border-radius:50% !important;
    width:30px;
    height:30px;
    line-height:30px;
    font-size:18px;
    color:#0006;
	background:#fff3;
	transform:scale(0);
}
#gotop.is-visible {
	transform:scale(1);
}

.alert-box {
	background-color:#f7f7f7;
}

.box-header .dropdown.share {
	float:none !important;
	margin-left:10px;
}
.dropdown.shareX .dropdown-toggle .ico {
	font-size:1.33333em;
    line-height:0.75em;
    vertical-align:-15%;
}
.dropdown.share .dropdown-toggle .text {
    display:none;
}
.dropdown.share .dropdown-menu {
    margin-top:10px;
}
.dropdown.share .dropdown-menu a {
    padding:8px 20px;
}
.dropdown.share .dropdown-menu .ico {
    font-size:14px;
    width:19px;
}

.share-page.scrollto:not(.btn) {
	font-size:25px;
}

.box-sharing {
	padding:1.5rem 0;
}
.box-sharing  .list-networx {
	margin:-8px;
}
.box-sharing  .list-networx li {
	padding:8px;
}
.list-networx a {
	display:inline-block;
}
body:not(.touch) .list-networx a:hover {
	transform:scale(1.3);
}
.box-sharing  .list-networx .text {
	display:none;
}
.list-networx .ico {
	color:#fff !important;
	width:44px;
	height:44px;
	line-height:44px;
	font-size:24px;
	text-align:center;
	border-radius:50%;
}
.list-networx .ico {
	background:#666;
}
.list-networx .facebook .ico {
	background:#3b5998;
}
.list-networx .twitter .ico {
	background:#55acee;
}
.list-networx .instagram .ico {
	background:#e4405f;
}
.list-networx .youtube .ico {
	background:#cd201f;
}
.list-networx .vimeo .ico {
	background:#1ab7ea;
}
.list-networx .soundcloud .ico {
	background:#ff3300;
}
.list-networx .bandcamp .ico {
	background:#619aa9;
}
.list-networx .snapchat .ico {
	background:#FFFC00;
}
.list-networx .pinterest .ico {
	background:#cb2027;
}
.list-networx .whatsapp .ico {
	background:#4dc247;
}
.list-networx .fbmessenger .ico {
	background:#0084ff;
}
.list-networx .email .ico {
}
.list-networx .clipboard.active .ico {
	transform:rotateY(-180deg);
}

.list-links {
	margin:0 auto 30px;
	text-align:center;
}
.list-links .btn {
	border-radius:10px;
}

.list-btns {
	margin:0 0 20px;
}
.list-btns li {
	display:inline-block;
	margin:0 5px 10px;
}

.list-icon {
	margin:0;
}
.list-icon .list-item {
	padding:0;
}
.list-icon .list-item a {
	position:relative;
	display:inline-block;
	padding-left:36px;
	line-height:normal;
}
.list-icon .list-item a:before {
	position:absolute;
	left:0;
	display:inline-block;
	margin-right:10px;
    font-family:'Font Awesome 6 Pro';
    content:"\f00c";
    font-size:15px;
    font-weight:600;
    color:#fff;
    background:#fd6239;
    border-radius:50%;
	width:26px;
	height:26px;
	line-height:26px;
	text-align:center;
	transition:all 0.18s ease-out;
}

.list-contact li {
	padding-left:22px;
	line-height:1.8;
}
.list-contact li .ico {
	position:absolute;
	margin-left:-22px;
	line-height:1.8;
	color:rgba(0,0,0,.5);
}

/* -------------------- */

#cookie-info {
	display:none;
	position:fixed;
	z-index:99999;
	bottom:60px;
	left:0; right:0;
	margin:auto;
	padding:0 10px;
	width:280px;
}
#cookie-info .inner {
	margin:0 auto;
	padding:15px;
	width:100%;
	background:#fff;
	border:1px solid #ccc;
	border-radius:4px;
	box-shadow:3px 3px 10px rgba(0,0,0,.2);
}
#cookie-info .text {
	margin:0;
	color:#999;
	line-height:18px;
}
#cookie-info .text,
#cookie-info a {
	font-family:arial;
	font-size:13px;
	font-weight:500;
}
#XXXcookie-info .text a {
	color:#31a8f0;
}
#cookie-info .btn {
    display:inline-block;
    margin:10px 0 0;
    font-size:14px;
    width:100%; /* calc(50% - 5px)*/
}
#cookie-info .btn + .btn {
	margin-left:10px;
}

/* -------------------- */

img.lzy,
.slick-slider img.img-lzy {
	background:rgba(230,230,230, 0.5) url('../i/lzyload.png') 50% 50% no-repeat;
}
.img-responsive {
    max-width:100%;
    min-width:102%;
}

.vcenter {
	position:relative;
	display:block;
	overflow:hidden;
	padding-bottom:56%;
}
.vcenter img {
	position:absolute;
	top:50%;
	left:50%;
	transform:translate(-50%,-50%);
	font-size:10px;
	line-height:normal;
	text-align:center;
	color:#777;
}
.pic-portrait {
	padding-bottom:120%;
}

.pic-wrapper .logo {
    position:absolute;
    z-index:1;
    object-fit:contain !important;
	object-position:50% !important;
	margin:auto;
    transform:none;
	left:0; right:0; top:0; bottom:0;
    min-width:0;
    height:auto;
    width:50%;
    max-width:450px;
    min-height:0 !important;
    filter:drop-shadow(0 0 1rem #000);
}

.box-head {
	position:relative;
	clip-path:none;
	/* polygon(0 0, 100% calc(0% + 4vw), 100% 100%, 0 calc(100% - 4vw)); */
}
.no-box-head {
	padding-top:90px;
}
.box-head .mov-wrapper {
	padding:20px 0 4vw;
	background:#000;
}
.box-head .mov {
	padding-bottom:calc(44% - 4vw);
}

.headpic {
	padding-bottom:600px;
}
@media (min-width:768px) and (orientation:portrait){
	.headpic {
		padding-bottom:45vh;
	}
}
.headpic:before {
	display:none;
	position:absolute;
    z-index:1;
    content:'';
    width:100%;
    height:100%;
    background:rgba(0,34,68,.5);
}
.headpic .wrapper {
    position:absolute;
    width:100%;
    height:100%;
	transform:scale(1);
	transition:all 6s ease-out;
}

.headpic .video {
	position:absolute;
}
.headpic img,
.headpic .video {
	/* min-width:103%; */
	width:100%;
	height:100%;
	transform:none !important;
	left:0 !important; top:0 !important; right:0; bottom:0;
	min-height:100%;
	object-fit:cover;
	transition:all 10s ease-out;
}
.headpic:not(.is-play):hover img:not(.logo):not(.bg) {
	transform:scale(1.15) !important;
}
.headpic.elm-mov.is-play .bg-img {
	opacity:0;
}
.headpic .box-tgl-mov .act + .act {
	margin-left:5px;
}
.headpic .box-tgl-mov .act {
	font-size: 22px;
}

.XXXheadpic.blur-bg .pic {
	position:absolute;
	display:block;
    z-index:1;
    width:100%;
    height:100%;
}
.XXXheadpic.blur-bg .pic img {
	min-width:0;
	min-height:101%;
	max-height:100%;
}
.headpic.blur-bg .bg {
	display:none;
	filter:blur(15px);
}

.headpic .logo {
	z-index:2;
	object-fit:contain !important;
	object-position:50% !important;
	margin:auto;
    transform:none !important;
	left:0 !important; top:0 !important; right:0; bottom:0;
	width:60%;
	min-width:0;
	min-height:0;
	max-width:500px;
	max-height:65%;
	height:auto !important;
	filter:drop-shadow(0 0 1rem #000c);
	transition:all .35s ease-out;
	background-color:transparent;
}
.headpic:hover .logo {
	transform:scale(.8) !important;
}

.bg-image {
	position:absolute;
	z-index:-1;
	top:0;
	width:100%;
	height:100%;
}
.bg-image .inner {
	width:100%;
	height:100%;
	background:url('') 50% 50% no-repeat;
    background-size:cover;
}

.box-image {
	position:relative;
	padding-bottom:55%;
}
.box-image .inner {
	position:absolute;
	height:100%;
	width:100%;
	background:rgba(155,155,197,.5) url('') 50% 50% fixed no-repeat;
    background-size:cover;
    box-shadow:0 15px 15px -15px rgba(0,0,0,.2) inset, 0 -15px 15px -15px rgba(0,0,0,.2) inset;
    background-blend-mode:overlay;
}
.box-image .lzy-bg {
	position:absolute;
	width:100%;
	height:100%;
}
.box-image .lzy-bg.lazyloaded {
	opacity:0;
}
.ios .box-image .inner {
	background-attachment:scroll;
}
.box-image .citate {
	position:absolute;
    margin:auto;
	left:0;
	right:0;
    top:50%;
	transform:translateY(-50%);
}
.box-image .citate .citate-inner {
	max-width:700px;
    color:#fff;
	font-size:1.8rem;
	font-weight:300;
	line-height:1.2;
	text-align:left;
	text-transform:none;
	text-shadow:0 0 15px rgba(0,0,0,1.4);
	/*width:90%;*/
}
.box-image .citate small {
	color:#fff;
	font-size:60%;
	font-style:italic;
}
.box-image .citate a:not(.btn) {
	color:inherit;
	text-decoration:underline;
}
.box-image .citate a:hover {
	text-decoration:none;
}

.disable-select {
	user-select:none;
}
.disable-pointer {
	pointer-events:none;
}

.fx-zoom-pic .pic-wrapper {
	position:relative;
	overflow:hidden;
	border-radius:0;
}
.fx-zoom-pic .ico-fx {
	position:absolute;
	z-index:1;
    top:0; bottom:0; left:0; right:0;
    margin:auto;
    line-height:50px;
    height:50px;
    width:50px;
    font-size:20px;
    border-radius:50%;
    background:var(--bs-primary);
    color:#fff;
    border:0;
    text-align:center;
    opacity:0;
	transform:scale(2.5);
}
.fx-zoom-pic .pic,
.fx-zoom-pic .ico-fx,
.fx-zoom-pic img {
	transition:all 0.75s ease-out;
}
body:not(.touch) .fx-zoom-pic:hover .ico-fx {
	opacity:1;
	transform:scale(1);
}
body:not(.touch) .fx-zoom-pic:hover .pic {
	transform:scale(1.25);
}
body:not(.touch) .fx-zoom-pic:hover .logo {
	transform:scale(1.125);
}

.box-pics .fx-zoom-pic img,
.vcenter.fit img {
	height:100%;
	object-fit:cover;
}

/* -------------------- */

@media (min-width: 992px){
	.container-max {
		margin-left:0;
		margin-right:auto;
		max-width:960px;
	}
}
.container-text {
	margin-left:0;
	margin-right:auto;
	max-width:960px;
}

@media (min-width:1680px){
	.full-widthXXX {
		background:#fff8e5 url('../i/bg.jpg') 50% 0% no-repeat fixed;
		background-size:cover;
	}
}
.full-width-inner {
	display:block;
	margin:0 auto;
	max-width:none; /*1680px*/
}

.row.solid {
    margin-left:-5px;
    margin-right:-5px;
}
.row.solid > .col {
    padding-left:5px;
    padding-right:5px;
}

.row.inline > .col {
	display:inline-block;
    float:none;
    vertical-align:top;
}

.row-elm {
	margin-top:-30px;
}
.row-elm .col {
	margin-top:30px;
}
.row-elm.solid {
	margin-top:-10px;
}
.row-elm.solid .col {
	margin-top:10px;
}

.img-grid {
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
}
.img-grid > .elm-grid {
	width:25%;
}
.img-grid > .elm-grid:nth-child(n+9){
	display:none;
}
@media (min-width:600px) and (max-width:767px){
	.img-grid > .elm-grid { width:20%; }
	.img-grid > .elm-grid:nth-child(n+11){ display:none; }
}
@media (min-width:768px) and (max-width:991px){
	.img-grid > .elm-grid { width:16.66667%; }
	.img-grid > .elm-grid:nth-child(n+7){ display:none; }
}
@media (min-width:992px) and (max-width:1199px){
	.img-grid > .elm-grid { width:14.28571%; }
	.img-grid > .elm-grid:nth-child(n+8){ display:none; }
}
@media (min-width:1200px) and (max-width:1599px){
	.img-grid > .elm-grid { width:12.5%; }
	.img-grid > .elm-grid:nth-child(n+9){ display:none; }
}
@media (min-width:1600px){
	.img-grid > .elm-grid { width:11.11111%; }
	.img-grid > .elm-grid:nth-child(n+10){ display:none; }
}

blocks {
	display:flex;
	flex-wrap:wrap;
	gap:30px;
	justify-content:center;
	text-align:center;
	line-height:normal;
	hyphens:none;
}
blocks.justify-content-start {
	justify-content:start;
}
blocks.gap0 {
	gap:0;
}
blocks.gap1 {
	gap:15px;
}

blocks.col1 > div {
	width:100%;
}

blocks.col2.gap0 > div,
blocks:not(.col1).gap0 > div {
	width:50%;
}
blocks.col2.gap1 > div,
blocks:not(.col1).gap1 > div {
	width:calc(50% - 7.5px);
}
blocks.col2 > div,
blocks:not(.col1) > div {
	width:calc(50% - 15px);
}

@media (max-width:575.98px){
	blocks.col1-xs > div {
		width:100% !important;
	}
}
@media (max-width:767.98px){
	blocks.col1-sm > div {
		width:100% !important;
	}
}

@media (min-width:768px){
	blocks.col3.gap0 > div { width:33.3333%; }
	blocks.col3.gap1 > div { width:calc(33.3333% - 10px); }
	blocks.col3 > div { width:calc(33.3333% - 20px); }
	blocks.col4.gap0 > div { width:25%; }
	blocks.col4.gap1 > div { width:calc(25% - 11.3px); }
	blocks.col4 > div { width:calc(25% - 22.5px); }
	blocks.col5.gap0 > div { width:20%; }
	blocks.col5.gap1 > div { width:calc(20% - 12.0px); }
	blocks.col5 > div { width:calc(20% - 24.0px); }
	blocks.col6.gap0 > div { width:16.6667%; }
	blocks.col6.gap1 > div { width:calc(16.6667% - 12.5px); }
	blocks.col6 > div { width:calc(16.6667% - 25.0px); }
}
blocks .btn {
	position:relative;
	z-index: 1;
	margin:10px 5px 0;
}
blocks .cover,
blocks.cover > div > a:first-child {
	display: block;
	position: relative;
	overflow:hidden;
	padding-bottom:170%;
	border:0;
}
body:not(.touch) blocks .cover:hover,
body:not(.touch) blocks.cover > div > a:first-child:hover {
	transform:scale(1.1);
}
blocks .cover img,
blocks.cover > div > a:first-child img {
	position: absolute;
	left: 0;
	top: 0;
	width:100%;
	height:100%;
	object-fit:cover;
	transform:scale(1.1);
}
blocks .elm-mov {
	display:block;
	margin-bottom:.125rem;
	border:0 !important;
}

.box-standard {
    padding:6rem 0;
    position:relative;
}
.box-standard.box-sub {
	padding:3rem 0;
}
.box-standard.small-margin {
	padding:3rem 0;
}

.box-standard.dark {
	color:#ddd;
	background-color:#999;
}
.box-standard.dark .title,
.box-standard.dark .title a {
	color:#fff;
}
.box-standard.dark .lead {
	color:#ddd;
}

.box-intro.sub .text:not(.lead) {
	margin-bottom:30px;
}

.box-header.sub {
	text-align:left;
}

.box-content ul.special {
	display:flex;
	flex-wrap:wrap;
	gap:30px;
	margin:0;
    padding:0 30px;
    list-style:none;
    text-align:left;
    hyphens: none;
}
.box-content ul.special li {
	position:relative;
	display:inline-block;
	width:calc(50% - 30px);
	margin:0 !important;
	padding-left:34px;
	vertical-align:top;
}
.box-content ul.special li:before {
	position:absolute;
	display:block;
    top:4px;
    left:0;
    font-family:'Font Awesome 6 Pro';
    content:"\f00c";
    font-size:13px;
    font-weight:600;
    color:var(--bs-primary);
    background:transparent;
    border:1.5px solid var(--bs-primary);
    border-radius:50%;
	width:24px;
	height:24px;
	line-height:23px;
	text-align:center;
	transition:all 0.18s ease-out;
}
body:not(.touch) .box-content ul.special li:hover:before {
	transform:scale(1.4);
}
.box-content ul.special li[style*='--i']:before,
.box-content ul.special li[data-ico]:not([data-ico='']):before {
	content:var(--i);
	font-size:22px;
	font-weight:300;
	text-shadow:1px 1px 0 var(--bs-primary);
	border:0;
	text-align:right;
}
.box-content ul.special li[data-ico]:not([data-ico='']):before {
	content:attr(data-ico); /*eg: &#xf4b0; */
}

/* -------------------- */

.table-special {
	hyphens:none;
}
.table-special .table {
	margin:0;
	border-radius:0;
	--bs-table-striped-bg: rgba(0,0,0,.03);
	--bs-table-hover-bg:rgba(var(--bs-light-rgb), 1.075);
	--bs-table-border-color:#eee;
}
.table-special .table:not(.table-simple) {
	border:0 solid rgba(var(--bs-primary-rgb), 1.5);
	border-width:2.5px 0 0px;
}
.table-lg > :not(caption) > * > * {
  padding:.75rem 1rem;
}
.table-special td,
.table-special th {
	position:relative;
	border-color:var(--bs-table-border-color);
	transition:all 0.18s ease-out;
}
.table-special thead th {
	font-weight:500;
}
.table-special .table-simple thead th {
	border-color:var(--bs-dark-border-subtle);
}
.table-special .table:not(.table-simple) thead th {
	background:rgba(var(--bs-primary-rgb), .04);
}
.table-special tbody tr > td:nth-child(1) {
	font-weight:500;
}
.table-special tbody tr:last-child td {
	border:0 !important;
}

/* -------------------- */

#header {
	margin:auto;
	padding:0;
    width:100%;
    height:auto;
    background:#fff;
}

#header .inner {
	display:flex;
	justify-content:end;
	align-items:center;
}

#header .brand-logo {
	margin-bottom:8px;
}
#header .brand-logo .transition {
	transition:all .22s ease-out;
}
#header .brand-logo .img {
	display:block;
	margin:auto;
	height:40px;
	padding:0;
	transform-origin:left;
}
#header .brand-logo .img * {
  transform-origin:center;
  transform-box:fill-box;
}
#header .brand-logo .img .elm-sub {
	display:none;
}
body:not(.touch) #header .brand-logo:hover .img {
	transform:scale(1.1);
}
body:not(.touch) #header .brand-logo:hover .img .elm-icon {
	transform:rotate(-8deg);
}

#header nav {
	top:-80px;
	height:60px;
}

#header .nav {
	margin:0;
	padding:0;
}
#header .nav > li {
	margin:0;
	padding:0;
}
#header .nav > li > a {
	position:relative;
	z-index:1;
	margin:0;
	padding:0;
    color:#333;
    font-size:1.0rem;
    line-height:25px;
    font-weight:400;
    text-transform:none;
    background:transparent;
    border:0;
    border-radius:0;
    text-align:center;
}
#header .nav > li > a:hover,
#header .nav > li.open > a {
	color:#777;
}
#header .nav > li.active > a {
    color:#d7427c;
}

#XXXheader nav .dropdown.open .dropdown-toggle::after {
	border-color:transparent;
    border-style:solid;
    content:" ";
    height:0;
    left:50%;
    line-height:0;
    margin-left:-8px;
    position:absolute;
    width:0;
    border-width:0 8px 8px;
    bottom:-22px;
    border-bottom-color:#10b8db;
}

#header .dropdown.open > a {
	z-index:1001;
}
#header .dropdown:not(.mega) .dropdown-menu {
	margin:17px 0 0;
    padding:0;
    box-shadow:none;
    background:none;
    border:0;
    border-radius:0;
    border-top:0;
}
#header .dropdown-menu > li {
	display:block;
	margin:0 0 2px;
}
#header .dropdown-menu > li > a {
	position:relative;
	margin:0;
	padding:0 1rem;
	line-height:2.5rem;
	color:#fff;
	background:#303030;
}
#header .dropdown-menu > li > a.active {
	color:#2d9be8;
}
#header .dropdown-menu > li > a:hover {
	color:#aaa;
	background:#404040;
}

#header .dropdown-menu.wide {
	width:520px;
	margin-left:-3px;
}
#header .dropdown-menu.wide > li {
	float:left;
	margin:0;
	width:260px;
}
#header .dropdown-menu.wide > li > a {
	margin-left:3px;
	padding:0 15px;
 	overflow:hidden;
    text-overflow:ellipsis;
    border-right:0px solid #ebe7e4;
}

#headerXXX .dropdown-menu:not(.wide) > li:first-child > a {
	border:0;
}
#header .dropdown-menu.wide > li:nth-of-type(2n) > a {
	border-right:0;
}
#headerXXX .dropdown-menu > li:last-child > a {
	border-bottom:0;
}

#header .dropdown.mega {
	position:static;
}
#header .dropdown.mega .dropdown-menu {
	left:0;
	right:0;
	margin:2px 0 0;
	padding:0;
	float:none;
	border:0;
	background:none;
	box-shadow:none;
}
#header .dropdown.mega .dropdown-menu .inner {
	display:block;
	padding:7.5px 15px;
	background:#303030;
	border-radius:0px;
	box-shadow: 0 .25rem 1rem #0003;
}
#header .dropdown.mega .row {
	margin:0 -7.5px;
}
#header .dropdown.mega .row >.col {
	margin:0;
	padding:0 7.5px;
}
@media (min-width:992px){
	#headerXXX .dropdown.mega .row >.col {
		width:20%;
	}
}
#header .dropdown.mega .elm {
	display:block;
	padding:7.5px 0;
}
#header .dropdown.mega .elm .pic-wrapper {
	margin-bottom:.5rem;
	border-radius:0px;
}
#header .dropdown.mega .elm .title {
	display:block;
	color:#fff;
}
#header .dropdown.mega .elm:hover .title {
	color:#aaa;
}
#header .dropdown.mega .pic {
	background:#fff;
}

#header .nav > li.lang {
	border:0;
}
#header .nav > li.lang > a {
	top:1px;
	padding-left:0 !important;
}
#header .nav > li.lang > a:not(.show):not(:hover) .ico {
	opacity:.7;
}
#header .nav > li.lang .dropdown-menu {
	min-width:0;
}
#header .nav > li.lang > a .ico {
	box-shadow:0 0 1px #fff;
}

/* -------------------- */

.line-spaced li:not(.designer) {
	border-left:0px solid rgba(0,0,0,.1);
}
.line-spaced li:first-child {
	border:0;
}

#footer {
	position:relative;
	padding:0;
}

/* #footer .box-info {
	font-size:80%;
	text-align:center;
}
#footer .box-info .logo {
	display:inline-block;
	margin-bottom:15px;
}
#footer .box-info .logo img {
	width:360px;
	max-width:70%;
}
#footer .box-info .title {
	display:block;
	margin-bottom:10px;
	color:#fff;
}
#footer .box-info .text {
	max-width:600px;
	margin:auto;
	color:#999;
} */

.box-logos {
	position:relative;
	padding:40px 0;
	text-align:center;
	background:var(--bs-light);
}
.box-logos .container-fluid {
	max-width:1680px;
}
.box-logos .text {
	margin-bottom:30px;
	color:#000;
}
.box-logos .logos {
	margin-top:-20px;
}
.box-logos .logos .elm {
	display:inline-block;
	margin:20px 20px 0;
	opacity:1;
    filter:grayscale(0);
}
body:not(.touch) .box-logos .logos .elm:hover {
	opacity:1;
    filter:grayscale(0);
    transform:scale(1.1);
}
.box-logos .logos img {
	height:70px;
	background:none;
}
.box-logos .logos .small1 img {
	height:calc(70px - 1em);
}
.box-logos .logos .small2 img {
	height:calc(70px - 1.75em);
}
.box-logos .logos .small3 img {
	height:calc(70px - 2.25em);
}

.map .iframe-wrapper, .map iframe {
    height:350px;
    overflow:hidden;
    width:100%;
}
.iframe-wrapper {
	position:relative;
}
.iframe-wrapper.ready {
	z-index:1020;
}
.iframe-wrapper:not(.ready) {
	cursor:pointer;
	background:rgba(0,0,0,.04) url('../i/dummy-map-dark.png') 50% 50% no-repeat;
    background-size:auto 110%;
}
.iframe-wrapper:not(.ready):hover {
	background-color:rgba(0,0,0,.08);
	background-size:auto 150%;
}
.iframe-wrapper.ready .info {
	display:none;
}
.iframe-wrapper:not(.ready) .info {
	position:absolute;
	top:60px; left:0; right:0; bottom:0;
	margin:auto;
	width:100%;
	height:30px;
	line-height:30px;
	text-align:center;
	color:#000;
}
.iframe-wrapper:not(.ready) .info:before {
	position:absolute;
	display:inline-block;
	font-family:'Font Awesome 6 Pro';
	content:"\f3c5";
	top:-90px; left:0; right:0; bottom:0;
	margin:auto;
	width:40px;
	height:40px;
	line-height:39px;
	font-size:20px;
	font-weight:900;
	text-align:center;
	border-radius:50%;
	color:#fff;
	background:var(--bs-primary);
	border:0px solid #000;
	outline:0px solid #fff;
	box-shadow:0 0 0 0px #000;
}
.iframe-wrapper:not(.ready):hover .info:before {
	color:var(--bs-primary);
	background:#fff;
}
.iframe-wrapper iframe {
	width:100%;
}
.iframe-wrapper:not(.ready) iframe {
	display:none;
}

.map-content.fs .inner {
	position:fixed;
	z-index:10;
	top:0; left:0; right:0; bottom:0;
	height:100%;
	width:100%;
	margin:auto;
	padding:15px;
	background:rgba(0,0,0,.65);
}
.map-content .iframe-wrapper,
.map-content iframe {
    height:420px;
    border-radius:4px;
    background:#f6f6f6;
}
.map-content.fs .iframe-wrapper,
.map-content.fs iframe {
	height:100%;
}
.map-content iframe.special {
	margin-top:-150px;
	height:570px;
}
.map-content.fs iframe.special {
	margin-top:-150px;
	height:calc(100% + 150px);
}
@media (max-width:767px), (max-height:600px){

	.map-content.fs .inner {
		padding:0;
	}
	.map-content.fs .iframe-wrapper {
		overflow:unset; /*hack*/
	}
	.map-content.fs .iframe-wrapper,
	.map-content.fs iframe {
		border-radius:0;
	}
}
@media (max-height:600px) and (orientation:landscape){
	
	.map-content .iframe-wrapper,
	.map-content iframe {
		height:90vh;
	}
	.map-content iframe.special {
		margin-top:-150px;
		height:calc(90vh + 150px);
	}
}

#footer .bar {
    padding:3rem 0;
    font-size:1.0rem;
    text-align:left;
}
#XXXfooter .bar,
#XXXfooter .bar a {
	color:#25408f;
}
#footer .bar a {
	border-bottom:1.5px solid transparent;
}
#footer .bar a:hover {
	color:#000;
	border-color:transparent;
}
#footer .bar ul {
	display: flex;
	flex-wrap: wrap;
	justify-content:start;
	gap: 10px 20px;
	margin:0;
}
#footer .bar li {
	margin: 0;
	padding: 0;
	line-height: normal;
}

#footer .break {
	width: 100%;
}

#footer .designer {
	width: 100%;
	margin:13px 0 0 !important;
	font-size:75%;
	opacity:.55;
}


.box-contact {
	background:rgba(0, 0, 0, 0.04);
}
/*
body.sec-home .box-contact {
	color:#fff;
	background:#000;
}
body.sec-home .box-contact .box-header {
	color:#fff;
}
body.sec-home .box-contact .lead {
	color:#fffc;
}
*/

.box-contact > .container {
	max-width:970px;
}

.box-contact .row-elm {
	margin-top:-40px;
}
.box-contact .row-elm .col {
	margin-top:40px;
}

.box-contact .box-logo {
	display:block;
	max-width:200px;
}
body.sec-home .box-contact .col-logo .img {
	fill:#fff;
}

.box-contact .lead .tel {
	display:block;
	margin-top:5px;
	font-size:36px;
	font-weight:300 !important;
	/* color:#004676; */
}
.box-contact .lead .tel .ico {
	font-weight:300
}

.box-contactXXX form .form-control {
	border:0;
}
.box-contactXXX form .form-group {
    margin-bottom:10px;
}
.form-control::placeholder {
	color:#aaa;
}
.box-contact form .submit {
	float:right;
	border:0;
}
.box-contact form .hint {
	font-size:13px;
	line-height:normal;
	vertical-align:text-top;
	border:0 !important;
}

.box-contact opentime {
	display:block;
	white-space:nowrap;
}
.box-contact opentime em {
	display:inline-block;
	width:100px;
	font-style:normal;
}

.box-orderstatus {
	margin-bottom:40px;
}
.box-newsletter .input-group,
.box-orderstatus .input-group {
	max-width: 500px;
	margin: auto;
}
.box-newsletter .row-sign > * {
	line-height:normal;
}
.box-newsletter .row-sign > * + * {
	margin-left:20px;
}

/* -------------------- */

.box-buzzwords {
	padding:20px 0;
	background:#f2f2f2;
}
.list-buzzwords {
	display:flex;
	justify-content:center;
	flex-wrap:wrap;
}
.list-buzzwords .list-item {
	margin:5px 15px;
	font-weight:600;
	text-transform:uppercase;
	font-family:'Open Sans Condensed';
}
.list-buzzwords .list-item,
.list-buzzwords .list-item a {
	color:#707070;
}
.list-buzzwords .list-item a:hover {
	color:#444;
}
.list-buzzwords .list-item a:hover:before {
	transform:scale(1.2);
}

.box-advantages .elm .ico {
	margin-bottom:30px;
	width:100px;
	height:100px;
	line-height:96px;
	font-size:36px;
	color:#f4b200;
	text-align:center;
	background:transparent;
	border-radius:50%;
	border:2px solid #f4b200;
}
.box-advantages .elm .title {
	margin-bottom:15px;
}
.box-advantages .elm .title:after {
	display:block;
	content:'';
	margin:20px auto 0;
	width:50px;
	height:1px;
	background:#fff;
	opacity:.4;
}
.box-advantages .elm .text {
	opacity:.7;
}

/* -------------------- */

.box-special {
	overflow:hidden;
	text-align:left;
}
.box-special .text {
	padding:20px 10px;
}
.box-special.size-small .text {
	padding:10px 0;
}
@media (max-width:575.98px){
	body.touch .box-special.scroll-mob .text {
		overflow-x:auto;
		white-space:nowrap;
	}
}

.box-special .lead {
	margin-bottom:0;
}

.box-special .btn,
.box-special input:not([type=radio]) {
	margin:10px 5px 0;
	vertical-align:middle;
	border-color:transparent;
}
.box-special .row .btn {
	margin:10px 5px;
}

.box-special.size-lead .tel {
	display:block;
	font-size:36px;
	border:0 !important;
	font-weight:300 !important;
}

.box-special.light .inner {
	color:#000;
	background:var(--bs-light);
}
.box-special.light .title,
.box-special.light .lead {
	color:#000;
}
.box-special.light a:not(.btn):not(.mark) {
	color:var(--bs-light);
}
.box-special.light a:not(.btn):not(.mark):hover {
	color:inherit;
}

.box-special.dark .inner {
	color:#fff;
	background:#111;
}
.box-special.dark .title,
.box-special.dark .lead {
	color:#fff;
}
.box-special.dark a:not(.btn):not(.mark) {
	color:#59abe6;
}
.box-special.dark a:not(.btn):not(.mark):hover {
	color:inherit;
}
.box-special.dark .text-muted {
	color:rgba(255,255,255,.5) !important;
}

.box-special.important .inner {
	color:#000;
	background:var(--bs-warning);
}
.box-special.important .inner a:not(.btn) {
	color:#1d6ca8;
}
.box-special.important .inner a:not(.btn):hover {
	color:inherit;
}

body.sec-home .box-special.important.pos-hom-top {
	text-align:left;
}
body.sec-home .box-special.important.pos-hom-top .container {
	position:relative;
	z-index:20;
	padding-left:55px;
}
body.sec-home .box-special.important.pos-hom-top .close {
	display:none;
	color:#fff;
	opacity:.3;
}
body.sec-home .box-special.important.pos-hom-top .ico-important {
	position:absolute;
	display:inline-block;
	width:32px;
	margin-left:-40px;
	margin-right:5px;
	text-align:center;
	color:#777;
}
body.sec-home .box-special.important.pos-hom-top .ico-important:before {
	position:absolute;
	z-index:-1;
	content:'';
	width:100%;
	height:calc(100% + 20px);
	background-color:#262626;
	left:0;
	margin:-10px 0;
}

/* -------------------- */

.pic2.lbx {
	display:inline-block;
	float:left;
	margin:0 20px 10px 0;
	padding:0;
	width:45%;
	height:auto;
	overflow:hidden;
	border:0;
	text-decoration:none;
}
.Xpic2.lbx.vert {
	width:33%;
}
.pic2.lbx img {
	width:100%;
}
.pic2.lbx.right {
	float:right;
	margin:0 0 10px 20px;
}

.gal {
	margin:0 -7.5px 0 -7.5px;
	font-size:0; /*gap hack*/
}
.gal .elm {
	display:inline-block;
	float:none;
	padding:7.5px;
}
.gal .elm a {
    height:0;
}
.gal .elm a:hover {
	opacity:0.8;
}
.gal .elm img {
	min-height:100%;
}
.gal .elm img.pano {
	max-height:100%;
    max-width:none;
}

/* -------------------- */

.box-splash-wrapper {
	padding:0;
}
.box-splash {
	position:relative;
	overflow:hidden;
	width:100%;
	max-width:none;
	height:auto;
	margin:auto;
	padding-bottom:calc(100vh - 60px);
	text-align:center;
	clip-path:none; /*polygon(0 0, 100% calc(0% + 4vw), 100% 100%, 0 calc(100% - 4vw))*/
	background:#111;
}
@media (max-width:767.98px) and (max-height:1500px) {
	.box-splash {padding-bottom:480px; }
	.XXXbox-splash .skip {display:inline-block !important;}
}

.box-splash > .slider {
	position:absolute;
	left:0; right:0; top:0; bottom:0;
}
.box-splash > .slider,
.box-splash .item {
	height:100%;
}
.box-splash .item {
	transition:transform .5s ease-in-out;
}

.box-splash .ani-elm:not(.animated) {
	display:none;
}

.box-splash .slide-navi {
	margin:0 auto .5rem;
	line-height:0;
	text-align:left;
}
.box-splash .slide-navi .elm-navi {
	background-color:#fff;
}

.box-splash .slide-ctrl {
	width:50px;
}
.box-splash:not(:hover) .slide-ctrl {
	display:none;
}

.box-splash .overground {
	position:absolute;
	z-index:1;
	width:100%;
	height:100%;
	opacity:1;
	transition:opacity .5s;
}
.box-splash .overground .inner {
	position:absolute;
	width:100%;
	top:auto;
	bottom:100px;
}

@media (min-width:768px){
	
	.box-splash .overground .inner {
		top:0;
	}
	.box-splash .overground .inner > div,
	.box-splash .overground .inner > div > div,
	.box-splash .overground .box-addon > div {
		height:100%;
	}
}

.box-splash .overground .box-text {
	padding:0;
	max-width:600px;
	font-size:26px;
	font-weight:400;
	line-height:1.2;
	color:#fff;
	text-align:left;
	white-space:normal;
	border-radius:4px;
	text-shadow:0 0 5px rgba(0,0,0,.5), 0 0 20px rgba(0,0,0,.3);
}

.box-splash .overground .box-addon {
	width:40%;
	min-width:200px;
	max-width:500px;
	height:100%;
}
.box-splash .overground .box-mov {
	min-width:205px;
	overflow:hidden;
	border-radius:3px;
}
.box-splash .overground .box-pic {
	position:relative;
	width:100%;
	min-height:115px;
}
.box-splash .overground .box-pic .lnk:hover img {
	transform:scale(.95);
}
.box-splash .overground .box-pic img {
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:100%;
	object-fit:contain;
	object-position:bottom left;
}
@media (min-width:768px) {
	.box-splash .overground .box-addon {
		padding-top:50px;
	}
	.box-splash .overground .box-pic {
		max-height:500px;
		margin-top:auto;
	}
	.box-splash .overground .box-addon:not(.has-double) .box-pic {
		height:100%;
	}
	.box-splash .overground .box-pic img {
		object-position:bottom right;
	}
	.box-splash .overground .box-mov {
		width:100%;
		margin-top:auto;
	}
	.box-splash .overground .box-pic + .box-mov {
		margin-top:unset;
	}
}
@media (max-width:767.98px){
	.box-splash .overground .box-addon {
		width:100%;
		height:auto;
	}
}

.box-splash .overground .title {
	margin:0;
	color:#fff6e8;
	font-size:75px;
	font-weight:600;
	line-height:1;
	text-shadow:0 0 20px rgba(0,0,0,.3);
}
@media (min-width:768px) and (max-width:1199px){
	.box-splash .overground .title {
		font-size:calc(38px + 2vw);
	}
}

.box-splash .overground .btn {
	text-shadow:none;
}

.box-splash .background {
	position:absolute;
	z-index:0;
	width:100%;
	height:100%;
}
.box-splash .bg-img,
.box-splash .bg-mov {
	position:absolute;
	width:100%;
	height:100%;
}
.box-splash .bg-img img,
.box-splash .bg-mov video { 
	position:absolute;
	display:block;
	width:100%;
	height:100%;
	min-height:100%;
	top:50%;
	left:50%;
	transform:translate(-50%,-50%);
	object-fit:cover;
	background-color:transparent;
}
.box-splash .bg-img .mobile {
	display:none;
}
.box-splash .item.is-play .bg-img img,
.XXXbox-splash .item:not(.is-play) .bg-mov video {
	opacity:0;
}

.box-tgl-mov {
	position:absolute;
	z-index:3;
	top:0;
	right:0;
	padding:5px 10px;
}
body.menu-open .box-tgl-mov {
	z-index:1;
}
@media (max-width: 767px){
	.XXbox-splash .box-tgl-mov {
		right:60px;
		top:16px;
	}
}
.box-tgl-mov .act + .act {
	margin-left:15px;
}
.box-tgl-mov .act {
	display: inline-block;
	padding:10px 5px;
	line-height:normal;
	font-size:28px;
	color:#fff !important;
	text-shadow:1px 1px 0 rgba(0,0,0,.4);
}
.box-tgl-mov .act:not(:hover) {
	opacity:.25;
}
.box-tgl-mov .act:hover {
	transform:scale(1.1);
}

.box-splash .skip {
	position:absolute;
	z-index:3;
	display:inline-block;
	display:none;
	left:50%;
	bottom:0px;
	margin-left:-20px;
}
.box-splash .skip .ico {
	width:40px;
	height:40px;
	line-height:40px;
	font-size:30px;
	color:#fff;
	background:rgba(0,0,0,0.0);
	text-align:center;
	border-radius:50%;
}

.tgl-mov-play:before,
.tgl-mov-tone:before {
	display: inline-block;
	font-family:'Font Awesome 6 Pro';
	content:'\f144';
	font-weight:300;
	width:1.25em;
	text-align: center;
}
.tgl-mov-play.active:before {
	content:'\f28b';
}
.tgl-mov-tone:before {
	content:'\f028';
}
.tgl-mov-tone.active:before {
	content:'\f026';
}

/* -------------------- */

.elm-mov.no-pic img,
.mov-wrp.not-autoplayed {
	background:url('/cnt/pic/default-video.jpg') 50%;
	background-size:cover;
}

.mov-wrp video,
.mov-wrp .pic img {
	max-width:100%;
	min-width:0;
	object-fit:cover;
}

.mov-wrp[class*='mov-src-'] .pic-wrapper:before,
.mov-wrp[class*='mov-src-'] .pic-wrapper:after,
.mov-wrp[class*='mov-src-'] .elm-info:before,
.mov-wrp[class*='mov-src-'] .elm-info:after,
.mov-wrp.not-autoplayed:after,
.iframe-wrapper:not(.ready):before {
	position:absolute;
	z-index:1; 
	display:inline-block;
	left:15px;
	bottom:15px;
	color:#fff;
	line-height:24px;
	font-style:normal;
	text-shadow:1px 1px 0 rgba(0,0,0,1), 0 0 10px rgba(0,0,0,.5);
}
.mov-wrp[class*='mov-src-'] .pic-wrapper:before {
	font-family:'Font Awesome 6 Brands';
	font-size:24px;
}
.mov-wrp.mov-src-youtube .pic-wrapper:before {
	content:'\f431';
}
.mov-wrp.mov-src-vimeo .pic-wrapper:before {
	content:'\f40a';
}
.mov-wrp[class*='mov-src-'] .pic-wrapper:after {
	left:45px;
	font-size:14px;
}
.elm-mov.text-link.mov-src-youtube .elm-info:after,
.mov-wrp.mov-src-youtube .pic-wrapper:after {
	content:'Youtube';
}
.elm-mov.text-link.mov-src-vimeo .elm-info:after,
.mov-wrp.mov-src-vimeo .pic-wrapper:after {
	content:'Vimeo';
}
.mov-wrp[class*='mov-src-'] .elm-info:before,
.iframe-wrapper:not(.ready):before {
	left:auto;bottom:auto;
	right:15px;
	top:10px;
	font-size:11.5px;
	font-weight:bold;
	line-height:1;
	text-align:right;
	transition:opacity .18s ease-out;
	opacity:.45;
}
.mov-wrp[class*='mov-src-']:not(.mov-src-file) .elm-info:before,
.iframe-wrapper:not(.ready):before {
	content:'Data transfer to service on call';
}
html[lang='de'] .mov-wrp[class*='mov-src-']:not(.mov-src-file) .elm-info:before,
html[lang='de'] .iframe-wrapper:not(.ready):before {
	content:'Datentransfer an Dienst bei Aufruf';
}
.XXXelm-mov.no-pic .elm-info:before {
	color:#000;
	text-shadow:1px 1px 0 rgba(255,255,255,1), 0 0 10px rgba(255,255,255,.5);
}
.mov-wrp[class*='mov-src-'] .pic-wrapper:hover .elm-info:before {
	opacity:0;
}
.elm-mov.no-pic:not(.text-link) .elm-info:after,
.mov-wrp.not-autoplayed:after {
	bottom:auto;
	left:50%;
	top:50%;
	transform:translate(-50%, -50%);
	margin-top:13%;
	padding:3px 10px;
	max-width:60%;
	font-size:14px;
	line-height:normal;
	white-space:nowrap;
	text-overflow:ellipsis;
	overflow:hidden;
	content:attr(data-title);
	background:rgba(0,0,0,.8);
	border-radius:30px;
}
@media (max-width:575.98px){

	.mov-wrp[class*='mov-src-'] .elm-info:before {
		font-size:9.5px;
		opacity:.75;
	}
	.mov-wrp[class*="mov-src-"] .pic-wrapper::before {
		font-size:16px;
		bottom:10px;
	}
	.mov-wrp[class*='mov-src-'] .pic-wrapper:after {
		left:35px;
		bottom:10px;
		font-size:11px;
	}
}

.elm-mov.text-link .elm-info {
	display:inline-block;
	margin-left:8px;
	font-size:10px;
	font-weight:500;
	vertical-align:middle;
}
.elm-mov.text-link .elm-info:before {
	font-family:'Font Awesome 6 Brands';
	margin-right:2px;
	font-size:130%;
	vertical-align:middle;
}
.elm-mov.text-link.mov-src-youtube .elm-info:before { content:'\f167'; }
.elm-mov.text-link.mov-src-vimeo .elm-info:before { content:'\f27d'; }
.elm-mov.text-link .elm-info:after {
	vertical-align:middle;
}

.mov-wrp.mov-src-file {
	display:flex;
}
.mov-wrp.mov-src-file .mov-inner {
	position:relative;
	display:inline-flex;
	margin:auto;
}
.mov-wrp.mov-src-file.ratio .mov-inner {
	position:absolute;
}
.mov-wrp.mov-src-file.full .mov-inner,
.mov-wrp.mov-src-file.full .video {
	width:100%;
}
.mov-wrp.mov-src-file .elm-tgl-mov {
	position:absolute;
	display: flex;
	top:1rem;
	right:1rem;
}
.mov-wrp.mov-src-file .elm-tgl-mov .act + .act {
	margin-left:15px;
}
.mov-wrp.mov-src-file .elm-tgl-mov .act {
	display: inline-block;
	line-height:normal;
	font-size:1.125rem;
	color:#fff !important;
	text-shadow:1px 1px 0 rgba(0,0,0,.4);
}
body:not(.touch) .mov-wrp.mov-src-file .elm-tgl-mov .act:hover {
	transform:scale(1.1);
}
.elm-mov.no-audio .tgl-mov-tone {
	display:none !important;
}
.mov-wrp.mov-src-file.not-autoplayed .elm-tgl-mov {
	top: 40%;
	right: auto;
	left: 50%;
	transform: translateX(-50%);
}
.mov-wrp.mov-src-file.not-autoplayed .elm-tgl-mov .tgl-mov-play:before {
	width: calc(2rem + 5vw);
	font-size:calc(2rem + 5vw);
	font-weight:900;
	color: #000;
	background:#fff;
	border-radius:50%;
}

#video {
	position:fixed;
	display:flex;
	justify-content: center;
	align-items: center;
	z-index: 9999;
	top:0;
	left:-100%;
	width:100%;
	height:100%;
	background:rgba(0,0,0,.8);
	opacity:0;
}
#video.open {
	left:0;
	opacity:1;
}
#video .inner {
	padding: 0 15px;
	width: 100%;
	max-width:1200px;
}
@media (max-width: 767px){
	#video .inner {padding:0;}
}
@media (max-height: 600px) and (orientation: landscape){
	#video .inner {max-width:160vh;}
}
#video iframe {
	background:rgba(30,30,30,.8);
}
#video .title {
	display:block;
    padding:5px 15px;
    width:100%;
    color:#fff;
    font-size:.75rem;
    text-align: center;
    background:rgba(30,30,30,0.8);
	border-bottom-right-radius:2px;
	border-bottom-left-radius:2px;
}
#video .exit {
	position:absolute;
    z-index:999;
    right:10px;
    top:10px;
    margin:0;
    padding:0;
    border:0;
    background:none;
}
#video .exit .ico {
	width:30px;
	height:30px;
	line-height:30px;
	font-weight:300;
	font-size:22px;
	color:#fff;
	background:#000;
	border-radius:50%;
}

/* -------------------- */ 

.box-gallery.is-cols .pic {
	padding-bottom:67%;
}
.box-gallery.is-cols .pic.vert {
	background:#eee;
}
.box-gallery.is-cols .pic.vert img {
	object-fit:contain;
	height:125%;
}

.box-gallery.is-grid .inner {
	padding:1px 0;
	background:#eee;
}
.box-gallery.is-grid .img-grid {
	margin:0 -1px;
}
.box-gallery.is-grid .elm-grid {
	padding:1px;
}
.box-gallery .elm-grid .vcenter {
	padding-bottom:56%;
}
.box-gallery .elm-grid .pic-wrapper {
	position:relative;
	overflow:hidden;
}
.pic-mov .ico,
.box-gallery .elm-grid .ico {
	position:absolute;
	z-index:1;
    top:0; bottom:0; left:0; right:0;
    margin:auto;
    line-height:36px;
    height:36px;
    width:36px;
    font-size:14px;
    border-radius:50%;
    color:rgba(255,255,255,.9);
    background:#70afdb;
    box-shadow:0 0 20px rgba(0,0,0,.2);
    text-align:center;
}
.pic-mov:not(.loading) .ico,
.elm-grid .elm-mov .ico {
	padding-left:4px;
}
@media (max-width:540px){
	.pic-mov .ico,
	.box-gallery .elm-grid .ico {
		line-height:24px;
		height:24px;
		width:24px;
		font-size:9px;
    }
    .pic-mov:not(.loading) .ico,
    .box-gallery .elm-grid .elm-mov .ico {
		padding-left:2px;
	}
}
.box-gallery .elm-grid .elm:not(.elm-mov) .ico {
	opacity:0;
}
.pic-mov:hover .ico,
.box-gallery .elm-grid .elm:hover .ico {
	color:#fff;
    background:#000;
    opacity:1
}
.box-gallery.fx-gray .elm .pic {
	filter:grayscale(50%);
}
.box-gallery.fx-gray .elm:hover .pic {
	filter:grayscale(0);
}
.box-gallery .elm-grid .elm:hover .pic {
	transform:scale(1.1);
}
.box-gallery .elm-grid img {
	object-fit:cover;
	height:103%;
	min-width:103%;
	background-color:transparent;
}

.box-gallery.has-gallery-row {
	background:#eee;
}

.gallery-row .col {
	padding:0;
}
.gallery-row .pic {
	padding-bottom:56.25%;
}
.gallery-row .pic img {
	height:101%;
	object-fit:cover;
}

.fx-zoom-pic.elm-mov .ico-fx {
	padding-left:5px;
	opacity:1;
	transform:none;
	color:#fff;
	background:var(--bs-primary);
	box-shadow: 0 0 15px rgba(0,0,0,.3);
}
.fx-zoom-pic.elm-mov:hover .ico-fx {
	color:var(--bs-primary);
	background:#fff;
}
.fx-zoom-pic.elm-mov.mov-audio .ico-fx {
	padding-left:0;
}
.fx-zoom-pic.elm-mov.mov-audio .ico-fx:before {
	content:"\f001";
}

.gallery-row .title {
	position: absolute;
	bottom: 0;
	font-size: 70%;
	text-align: center;
	display: inline-block;
	margin: auto;
	left: 0;
	right: 0;
	color: #fff;
	background: rgba(0,0,0,.5);
}

/* -------------------- */

.box-welcome .pic-wrapper {
	margin-bottom:30px;
	border-radius:0px;
	overflow:hidden;
}
.box-welcome .pic {
	padding-bottom:45%;
}

/* -------------------- */

XXXbody.sec-home .box-spektrum,
XXXbody:not(.sec-home) .box-spektrum:not(.multi-solo) {
	color:#fff;
	background:#999;
}

.box-spektrum .box-intro .lead {
	margin-bottom:50px;
}

.box-spektrum .maintext {
	margin-bottom:40px;
}

.box-spektrum .box-group .row {
	display:flex;
	flex-wrap:wrap;
	align-items:start;
	justify-content:left;
}

.box-spektrum .pic-wrapper {
    position:relative;
    margin-bottom:5px;
}
.box-spektrum .pic-wrapper .pic {
    padding-bottom:67%;
}

.box-spektrum .box-group .title {
	display:block;
	margin-bottom:10px;
	text-align:left;
}

.more-btn {
	margin-left:-15px;
}
.more-btn .btn {
	margin:15px 0 0 15px;
}

/* -------------------- */

.box-partner.solo .elm .pic-wrapper {
	overflow:unset;
	margin-bottom:5px;
	padding:10px;
	border:0px solid #ddd;
	border-radius:8px;
}
.XXXbox-partner.solo .elm:hover .pic-wrapper {
	border-color:#f7c12d;
	background:rgba(247,193,45,.1);
}
.box-partner .elm .pic {
	margin:0 10px;
	padding-bottom:100%;
}
.box-partner .elm img {
	object-fit:contain;
	min-width:0;
	width:100%;
	height:100%;
	background-color:transparent;
}
.box-partner.solo .elm:not(:hover) img {
	filter:grayscale(100%);
}
.box-partner .elm .title {
	font-weight:600;
	font-size:85%;
}
.box-partner .elm:not(.no-link):hover .title {
	color:#e50;
}

.box-partner.minimal .row-elm {
	text-align:center;
}
.box-partner.minimal .row-elm .col {
	width:25%;
}
.box-partner.minimal .elm .pic-wrapper {
	overflow:visible;
}
.box-partner.minimal .elm .title {
	display:none;
}
.box-partner.minimal .elm:not(:hover) img {
	filter:grayscale(100%);
}

.box-certs + .box-gallery {
	margin-top:30px;
}
.box-certs .pic {
	padding-bottom:100%;
}
.box-certs .pic img {
	object-fit:contain;
	height:100%;
	width:100%;
	min-width:0;
}

/* -------------------- */

.pnav {
	font-weight:600;
}
.pnav .pagination {
	margin-top:2.5rem;
	margin-bottom:0;
}

.pnav .pagination .page-link {
	font-weight:500;
	color:inherit;
}
.pnav .pagination .page-link:hover {
	color:#000;
    background-color:var(--bs-primary);
    border-color:transparent;
}
.pnav .pagination .page-item.active .page-link {
	color:#fff;
	background-color:#000;
	border-color:transparent;
}
.pnav .pagination .page-item.disabled .page-link {
	color:#0002;
}
.pnav .pagination .page-item:first-child .page-link {
    border-bottom-left-radius:.175rem;
    border-top-left-radius:.175rem;
}
.pnav .pagination .page-item:last-child .page-link {
    border-bottom-right-radius:.175rem;
    border-top-right-radius:.175rem;
}

.pnav .pagination .spacer span {
	padding-left:8px;
	padding-right:8px;
}

/* -------------------- */

.box-head,
.article-single:not(.box-intro) {
	background:#fff;
}

/* -------------------- */

.box-faq .elm + .elm {
	margin-top:15px;
	padding-top:15px;
	border-top:1px solid #eee;
}
.box-faq .elm .title {
	position:relative;
	padding-left:20px;
}

.box-faq .toggler .title:before {
    position:absolute;
    top:1px;
    left:0;
    width:13px;
    display:block;
    content:"\f105";
    font-family:'Font Awesome 5 Pro';
    font-weight:400;
    text-align:center;
}
.box-faq .toggler.open .title:before {
	content:"\f107";
}

.box-faq .elm .text {
	padding:10px 0 20px;
}

/* -------------------- */

.box-content .toggler:after {
    display:inline-block;
    margin-left:5px;
    padding:0 5px;
    content:"\f105";
    font-family:'Font Awesome 6 Pro';
    font-weight:400;
    transition:all 0.18s ease-out;
}
.box-content .toggler.open:after {
	/* content:"\f107"; */
	transform:rotate(90deg)
}

/* -------------------- */

.box-news .more-inpage {
	display:none;
}

@media (max-width:575.98px){

	.XXXbox-news:not(.solo):not(.show-more) .row-elm .col:nth-child(n+4),
	.XXXbox-news:not(.show-more) .more-newpage {
		display:none;
	}
	.XXXbox-news:not(.show-more) .more-inpage {
		display:block;
	}

	.box-news .row-elm {
		margin-top:-30px;
	}
	.box-news .row-elm {
		margin-top:-30px;
	}
	.box-news .row-elm .col {
		margin-top:30px;
	}
	.box-news .row-elm .col + .col {
		margin-top:40px;
	}
}

.XXXbox-news .elm .pic-wrapper {
	margin-bottom:15px;
}
.box-news .elm .pic {
	background-color:rgba(0,0,0,.05);
}
.box-news .elm img {
	min-height:100%;
	background-color:transparent;
}
.XXXbox-news .elm img.vert {
	min-width:0;
	max-height:100%;
}
.box-news .elm img.pano {
	max-height:100%;
    max-width:none;
}
.box-news .elm .info {
	display:none;
	margin-bottom:4px;
    font-weight:300;
}
@media (min-width:768px){
	.box-news:not(.box-xtra) .elm:not(:hover) .text {
		opacity:.75;
	}
}
.box-news .elm:hover .text {
	color:#333;
}

.box-news .box-more {
	margin-top:40px;
}

.box-news.box-xtra .elm .more {
	margin-top:1rem;
	display:block;
	border:0;
	background:none !important;
}
@media (min-width:768px){
	.box-news.box-xtra .pic-wrapper {
		min-height:30vh;
	}
}

.box-news.box-xtra .pic-wrapper .logo,
.dropdown .box-pics .pic-wrapper .logo {
	width:70%;
	/* height: 50%;
  	object-position: 50% 100% !important; */
  	filter:drop-shadow(0 0 5px #fff) drop-shadow(0 0 1rem #fff);
  	filter:none;
}

.box-news.box-xtra .pic-wrapper .logo + .pic,
.dropdown .box-pics .pic-wrapper .logo + .pic {
	background-color:rgba(var(--bs-warning-rgb),.15);
}

.box-news.box-xtra .pic-wrapper .logo + .pic img,
.dropdown .box-pics .pic-wrapper .logo + .pic img {
	opacity:.15;
}

.rub-3 .box-news-item .headpic .logo {
	/*filter: drop-shadow(0 0 1rem #0002);
  	background: #fff;
	border-radius:2rem;
	padding:2rem;
	min-height:38%; */
	filter:none;
	max-width: 600px;
}

.box-partner-item .box-pics .elm {
	margin:0 !important;
}
.box-partner-item .box-pics .elm:after,
.box-partner-item .box-pics .elm .ico {
	display:none !important;
}
.box-partner-item .box-pics .pic {
	background:var(--bs-light);
}
.box-partner-item .box-pics .pic img {
	padding:1.5rem;
	min-width:0;
	object-fit:contain;
	background:transparent;
}

/* -------------------- */

.article-nav {
	background:#000;
}
.article-nav .prev,
.article-nav .next {
	display:block;
	position:absolute;
	z-index:2;
	top:0;
	bottom:0;
	left:0;
	margin:auto;
	width:100px;
	text-align:center;
	cursor:pointer;
	opacity:0.4;
}
.article-nav.mov-wrapper .prev,
.article-nav.mov-wrapper .next {
	height:50px;
}
.article-nav .next {
	right:0;
	left:auto;
}
.article-nav .prev:hover {
	opacity:1;
	background-image:linear-gradient(to right, rgba(0,0,0,0.5) 0px, rgba(0,0,0,0) 100%);
}
.article-nav .next:hover {
	opacity:1;
	background-image:linear-gradient(to right, rgba(0,0,0,0) 0px, rgba(0,0,0,0.5) 100%);
}
.article-nav .prev .ico,
.article-nav .next .ico {
	position:absolute;
	top:50%;
	left:50%;
	margin-top:-25px;
	margin-left:-25px;
	width:50px;
	height:50px;
	line-height:50px;
	font-size:32px;
	color:#fff;
	text-shadow:0 0 30px rgba(0, 0, 0, 0.4);
}

.article-nav .lbx {
	position:absolute;
	display:block;
    z-index:1;
    width:100%;
    height:100%;
}
.XXXarticle-nav .lbx img {
	min-width:0;
	min-height:101%;
	max-height:100%;
}
.article-nav .bg {
	filter:blur(15px);
}

.article-nav-sub {
	margin-top:30px;
	display:flex;
	gap:15px;
	flex-wrap:wrap;
	justify-content:start;
}
.article-nav-sub .elm {
	padding:5px 15px;
	border:1px solid #eee;
	border-radius:50px;
}
/* small phone */
@media (max-width:420px){

	.article-nav-sub .elm:nth-child(2) {
		order:3;
	}	
}

/* -------------------- */

.XXXarticle-single .container:not(.normal) {
	margin-left:auto;
	margin-right:auto;
	max-width:970px;
}

.article-single .pretext,
.article-single .maintext,
.article-single .box-movie,
.article-single .gal,
.article-single .box-gallery {
	margin-bottom:40px;
}
.XXXarticle-single .box-movie {
	margin-bottom:50px;
}
.article-single .box-gallery {
	padding-top:40px;
}

.article-single .maintext ul li,
.article-single .maintext ol li,
.article-single .maintext dd {
	margin-bottom:20px;
}

.article-single .date-info {
	margin-top:20px;
}

.maintext img {
	display:block;
	margin:0;
	max-width:100%;
	min-width:0;
}

.article-spektrum .headpic .logo {
	position:absolute;
	z-index:1;
	min-width:0;
	height:auto;
	width:40%;
	max-width:450px;
}
.article-spektrum .box-more {
	margin-top:30px;
	text-align:center;
}

/* -------------------- */

/* not-phone */
@media (min-width:768px){
	
	.maintext dl dt {
		float:left;
		width:160px;
		overflow:hidden;
		clear:left;
		text-align:right;
		text-overflow:ellipsis;
		white-space:nowrap;
		font-weight:500;
	}
	.maintext dl dd {
    	margin-left:180px;
	}
	
	#header.is-sticky nav {
		/* position:fixed;
		z-index:9;
		top:0;
		padding:0;  */
		width:100%;
		background:#fff;
		box-shadow:0 0 10px rgba(0,0,0,.15);
		/*transition:all 0.3s ease-in;*/
	}
	
	.menu-icons {
		position:fixed !important;
		z-index: 9;
		right:0;
		bottom:100px; /*top:117 ico:26*/
		margin:0 !important;
		border: 0 !important;
	}
	.menu-icons li {
		display:block;
		padding:0;
		text-align:right;
	}
	.menu-icons li + li {
		margin-top:5px;
	}
	.menu-icons a {
		display:inline-block;
		white-space: nowrap;
		margin:0;
		padding:0;
		max-width:32px;
		height:32px;
		line-height:0;
		border-radius:0;
		border-top-right-radius:0;
		border-bottom-right-radius: 0;
		color:#fff;
		background:var(--bs-warning);
		transition: all 0.3s ease-out;
	}
	.menu-icons a:hover {
		max-width:250px;
	}
	body:not(.touch) .menu-icons a:hover,
	.menu-icons a:focus {
		color:#fff;
		background:var(--bs-primary);
	}
	.menu-icons .ico {
		width:32px;
		font-size:20px;
		text-align:center;
		line-height:32px;
		vertical-align: middle;
	}
	.menu-icons .text {
		display:none;
		margin:0 10px 0 0;
		font-size:70%;
		font-weight:400;
		text-transform: uppercase;
	}
	.menu-icons a:hover .text {
		display:inline-block;
	}
	
	.box-contact .box-intro .lead {
		margin-bottom:30px;
	}
	
	.box-contact .col-logo {
		position:relative;
	}
	.box-contact .col-logo:before {
		display:none;
		position:absolute;
    	content:'';
    	height:1.5px;
    	width:100%;
    	bottom:26%;
    	left:0%;
    	background:#000;
	}
	body.sec-home .box-contact .col-logo:before {
		background:#fff4;
	}
	.box-contact .col-logo .logo {
		position:relative;
		display:block;
		width:280px;
		margin:3rem auto 4rem 0;
	}
	.box-contact .col-logo .logo:hover {
		transform:scale(1.1);
	}
	.box-contact .col-logo .img {
		padding:0 0rem;
		width:100%;
		background:#fff;
	}
}

/* not-phone */
@media (min-width:768px) and (orientation:portrait){

	.XXXmenu-icons {
		top:46%;
	}
}


/* tablet + desktop */
@media (min-width:576px){
	
	.headpic.pic-pos-0 img {
		object-position: 50%;
	}
	
	.headpic.pic-pos-1 img,
	.box-splash .bg-img.pic-pos-1 img { /*top*/
		top:0;
		transform:translate(-50%,0%);
		object-position:50% 7%;
	}
	.headpic.pic-pos-2 img,
	.box-splash .bg-img.pic-pos-2 img { /*btm*/
		top:auto;
		bottom:0;
		transform:translate(-50%,0%);
		object-position:50% 93%;
	}
	
}

/* desktop large */
@media (min-width:1200px){
	
	.box-image {
		padding-bottom:40%;
	}
	
	.box-logos .logos .elm {
		margin-left:40px;
		margin-right:40px;
	}
}

/* desktop large */
@media (min-width:1360px){

	
}

/* desktop big */
@media (min-width:1900px){
	
	.XXXbox-splash {
		padding-bottom:45%;
	}
	
	.headpic {
		padding-bottom:750px;
	}
	
	.box-image {
		padding-bottom:34%;
	}
}

/* desktop small */
@media (min-width:992px) and (max-width:1199px){

	#XXXheader nav.affix .nav > li + li {
		margin-left:25px;
	}
	
	.box-partner.solo .col {
		width:20%;
	}
}

/* tablet */
@media (min-width:768px) and (max-width:991px){
	
	.box-image {
		padding-bottom:75%;
	}
	
	#content {
		min-height:calc(100% - 430px); /* header+footer hack */
	}
}

/* phone + tablet */
@media (max-width:991px){

}

/* phone landscape */
@media (max-height:500px) and (orientation:landscape){

	#header nav {
		position:static !important;
	}
}

/* phone */
@media (max-width:767.98px){
	
	body {
		font-size:1.125rem;
		line-height:1.7;
	}
	
	.container-ibe {
		padding-right:10px;
		padding-left:10px;
	}
	
	.map:not(.map-content) .iframe-wrapper, 
	.map:not(.map-content) iframe {
		height:420px;
	}
	
	.space-big-top {
    	margin-top:40px;
	}
	
	.headpic {
		padding-bottom:67%;
	}
	.headpic img {
		height:100%;
		max-width:none;
	}
	
	.box-image {
		padding-bottom:100%;
	}
	.box-image .citate {
		font-size:20px;
		font-weight:400;
		text-shadow:0 0 5px rgba(0,0,0,.7), 0 0 20px rgba(0,0,0,.99);
	}
	
	.row-elm {
		margin-top:-20px;
	}
	.row-elm .col {
		margin-top:20px;
		margin-bottom:0 !important;
	}

	.box-standard {
		padding:40px 0;
	}
	
	.row-xs {
		margin-left:-10px;
    	margin-right:-10px;
	}
	.row-xs .col {
		margin-bottom:15px;
		padding-left:5px;
    	padding-right:5px;
	}
	
	.maintext {
		text-align:unset;
		hyphens:unset;
		-moz-hyphens:unset;
		-webkit-hyphens:unset;
		overflow-wrap:unset;
	}
	
	/* h1, .h1 {
		font-size:29px;
		margin-bottom:20px;
	}
	h2, .h2 {
    	font-size:22px;
	}
	h3, .h3 {
    	font-size:22px;
	}
	h4, .h4 {
    	font-size:19px;
	} */
	
	.lead {
		font-size:1.25rem;
		color:#333;
	}
	
	.box-content ul.special {
		padding:0;
	}
	.box-content ul.special li {
		width:100%;
		/* margin-bottom:20px;
		margin-left:24px;
		padding-left:32px; */
	}
	.XXXbox-content ul.special li::before {
		width:24px;
		height:24px;
		line-height:24px;
		font-size:14px;
	}
	
	.list-buzzwords {
		justify-content:normal;
	}
	.list-buzzwords .list-item {
		margin:10px 15px;
	}
	
	.menu-toggle {
		position:absolute;
		z-index:9;
		left:4px;
		top:-2px;
		padding:10px 10px;
		color:#333 !important;
	}
	.mobile-menu .menu-toggle .ico:before {
		content:"\f00d";
		font-weight:400;
	}
	
	#header {
		padding:0;
		height:45px;
		min-height:0;
	}
	#header.is-sticky {
		box-shadow:0 0 10px rgba(0,0,0,.15);
	}
	#header .brand-logo {
		position:relative;
		margin:0 0 8px 40px;
	}
	#header .brand-logo .img {
		height:34px;
	}
	
	#header .box-claim {
		position:absolute;
		z-index:6;
		top:80px;
		left:-100%;
		width:100%;
		padding:0;
		font-size:85%;
		text-align:center;
		background:none;
	}
	.mobile-menu #header .box-claim {
		left:0;
	}
	#header .box-claim .phone {
		float:none;
		display:block;
	}
	#header .box-claim .text {
		position:static;
	}
	
	#header nav {
		position:static;
		height:45px;
	}
	#header .inner {
		position:absolute;
		z-index:5;
		display:block;
		top:45px;
		left:-100%;
		margin:0;
		padding:30px 0 40px;
		width:100%;
		text-align:left;
		background:transparent;
	}
	.mobile-menu #header .inner {
		left:0;
		background:#fff;
		box-shadow:0 15px 20px -15px rgba(0,0,0,.25);
	}
	#header .nav > li {
		display:block;
		margin:0 auto !important;
		padding:5px 0;
    	width:100%;
    	text-align:center;
	}
	#header .nav > li > a {
		display:inline-block;
		margin:8px 10px;
		padding:0;
		font-size:20px;
		line-height:1;
		background:none !important;
		text-align:left;
	}
	#header .nav > li.icons {
		width:100%;
	}
	#header .nav > li.icons a {
		margin:0 5px;
		padding:8px 0;
	}
	#header .dropdown-menu {
		position:relative;
		left:0;
		width:100% !important;
		margin:0 !important;
		text-align:center;
	}
	#header .dropdown-menu.wide > li {
		width:100%;
	}
	#header .dropdown-menu > li > a {
		background:none !important;
	}
	#header .nav > li.active > a .ico,
	#header .dropdown-menu > li.active > a {
		color:rgba(0,0,0,.6);
	}
	#header .nav li.phone {
		display:none;
	}
	#header .nav li.phone > a {
		font-size:21px;
	}
	
	#header .dropdown.mega .dropdown-menu {
		width:100% !important;
		margin:0 !important;
	}
	#header .dropdown.mega .dropdown-menu .container {
		padding:0;
	}
	#header .dropdown.mega .dropdown-menu .inner {
		padding:0;
		background:none;
	}
	#header .dropdown.mega .elm .title {
		color:#fff;
	}
	
	.menu-icons {
		padding:15px 0 0 !important;
		width:100% !important;
		animation-name:none;
	}
	.menu-icons li {
		display:inline-block;
	}
	.menu-icons a {
		margin:0 15px;
		color:#d7427c;
	}
	.menu-icons .ico {
		font-size:130%;
	}
	.menu-icons .text {
		display:none;
	}
	
	.dropdown > .dropdown-menu {
		min-width:100%;;
	}
	.bootstrap-select > .dropdown-menu {
		max-width:calc(100vw - 50px) !important;
		
	}
	.box-search .bootstrap-select > .dropdown-menu {
		min-width:calc(100% + 2em) !important; /*hack:input-group*/
	}
	
	#footer {
		margin-top:0;
	}
	
	.box-logos .logos .elm {
		margin-left:10px;
		margin-right:10px;
	}
	.box-logos .logos img {
		height:45px;
	}
	.box-logos .logos .small1 img {
		height:calc(45px - 0.5em);
	}
	.box-logos .logos .small2 img {
		height:calc(45px - 0.75em);
	}
	.box-logos .logos .small3 img {
		height:calc(45px - 1.0em);
	}
	
	.XXXbox-splash .slide-navi {
		top:3px;
		bottom:auto;
		left:auto;
		text-align:right;
	}
	.box-splash .slide-ctrl {
		display:none;
	}
	
	.box-splash .bg-img.has-mobile img:not(.mobile) {
		display:none;
	}
	.box-splash .bg-img img.mobile {
		display:block;
	}
	
	.box-splash .overground .box-pic {
		max-width:60%;
	}
	.box-splash .overground .inner {
		top:40px;
		bottom:40px;
	}
	.box-splash .overground .inner > div,
	.box-splash .overground .inner > div > div,
	.box-splash .overground .box-addon > div {
		height:100%;
	}
	.box-splash .overground .box-text {
		max-width:100% !important;
		text-shadow:0 0 5px rgba(0,0,0,.7), 0 0 20px rgba(0,0,0,.99);
	}
	.box-splash .overground .title {
		font-size:38px;
		text-shadow:0 0 5px rgba(0,0,0,.5), 0 0 20px rgba(0,0,0,.3);
	}
	
	.article-nav .prev, 
	.article-nav .next {
		width:40px;
	}
	.article-nav .prev .ico, 
	.article-nav .next .ico {
		font-size:25px;
	}
	
	.article-single .bg-image {
		position:static;
		height:200px;
	}
	.article-single .blk-content {
		float:none;
		margin-top:0px;
		margin-bottom:68px;
	}
	
	.pic2.lbx {
		display:block;
		float:none !important;
		width:100% !important;
		max-width:320px;
		height:auto;
		margin:0 auto 20px !important;
	}
	
	.fx-zoom-pic .ico-fx {
		height:32px;
    	width:32px;
    	line-height:32px;
    	font-size:16px;
	}
	
	.box-contact .lead .tel,
	.box-special.size-lead .tel {
    	font-size:23px;
    	font-weight:500 !important;
	}
	.box-special {
    	line-height:normal;
	}
	
	.box-spektrum .box-group .row {
		display:block;
	}
	.box-spektrum .box-group .more-pic {
		display:block;
		margin:0 -15px 20px;
	}
	
	.box-partner.minimal .row-elm .col {
		width:20%;
	}
	
	#osmap {
		height:480px;
	}
	
	.box-form textarea {
		min-height:200px;
	}
	
	.box-contact.sketch:before {
		background-size:auto 200px;
	}
	
	.box-contact .col-logo .logo {
		display:block;
		margin:0 auto 40px;
		width:90%;
		max-width:400px;
	}
	.box-contact .col-logo img {
		width:100%;
	}
	
	#footer .box-main {
		padding-top:50px;
	}
	#footer .box-intro .tel {
    	font-size:25px;
	}
	#footer address {
		margin-bottom:0;
	}
	
	#footer .bar ul {
		row-gap:15px;
	}
	#footer .designer {
		line-height:2.5 !important;
	}
}