/* globale Body Einstellungen */
@font-face {
	font-family: "Roboto";
	font-style: normal;
	font-display: swap;
	font-weight: 400;
	src: url("fonts/roboto/files/roboto-latin-ext-400-normal.woff2") format("woff2"),
		 url("fonts/roboto/files/roboto-latin-ext-400-normal.woff") format("woff");
	unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
	font-family: "Roboto";
	font-style: normal;
	font-display: swap;
	font-weight: 400;
	src: url("fonts/roboto/files/roboto-latin-400-normal.woff2") format("woff2"),
		 url("fonts/roboto/files/roboto-latin-400-normal.woff") format("woff");
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
	font-family: "Roboto";
	font-style: normal;
	font-display: swap;
	font-weight: 500;
	src: url("fonts/roboto/files/roboto-latin-ext-500-normal.woff2") format("woff2"),
		 url("fonts/roboto/files/roboto-latin-ext-500-normal.woff") format("woff");
	unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
	font-family: "Roboto";
	font-style: normal;
	font-display: swap;
	font-weight: 500;
	src: url("fonts/roboto/files/roboto-latin-500-normal.woff2") format("woff2"),
		 url("fonts/roboto/files/roboto-latin-500-normal.woff") format("woff");
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

@font-face {
	font-family: "Roboto Condensed";
	font-style: normal;
	font-display: swap;
	font-weight: 400;
	src: url("fonts/roboto-condensed/files/roboto-condensed-latin-ext-400-normal.woff2") format("woff2"),
		 url("fonts/roboto-condensed/files/roboto-condensed-latin-ext-400-normal.woff") format("woff");
	unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

@font-face {
	font-family: "Roboto Condensed";
	font-style: normal;
	font-display: swap;
	font-weight: 400;
	src: url("fonts/roboto-condensed/files/roboto-condensed-latin-400-normal.woff2") format("woff2"),
		 url("fonts/roboto-condensed/files/roboto-condensed-latin-400-normal.woff") format("woff");
	unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

html {
	hyphens: auto;
}

body {
	height: 100%
}

body {
	background: #898a89; /* fallback for old browsers */
	background: -webkit-linear-gradient(to right, #898a89, #c9c9c9); /* Chrome 10-25, Safari 5.1-6 */
	background: linear-gradient(to bottom right, #898a89, #c9c9c9); /* W3C, IE 10+/ Edge, Firefox 16+, Chrome 26+, Opera 12+, Safari 7+ */
	background-attachment: fixed;
	color:#202020;
	font-size:12pt!important;
	font-family:"Roboto",Arial,Helvetica,Verdana,Geneva,sans-serif!important;
	font-weight:400!important;
}
/* Workaround for mobile Devices (which do not support hovering) */
@media (hover: none) {
   body {
       background-attachment: initial;
   }
}

p {
	text-align: justify;
}

/* Google Map auf der Referenzseite */
#map_ipcomm {
        height:500px;
}

/* Top : Tabelle */
#ttable {
        border-width:0px;
        border-spacing:5px;
        border-style:outset;
}

/* Top : Tabellenzelle */
#tcell {
        background-color:#E5E5E5;
        text-align:left;
        vertical-align:top;
}

#vtable {
        border-width:0px;
        border-spacing:5px;
        border-style:outset;
}

#vcell {
        background-color:#D8E0FF;
        text-align:left;
        vertical-align:top;
		  /* added by m.ko */
		  padding-left:15px;
		  padding-right:15px;
		  
}

#cathead {
        font-size: 24px;
        font-weight: bold;
        font-style: italic;
        color: #000099;
		  /* added by m.ko */
		  padding-top:15px;
}

#disable {
        font-family: verdana;
        font-size: 12px;
        font-weight: bold;
        font-style: normal;
        color: #DDDBD7;
        text-shadow: 1px 1px white, -1px -1px #333;
}
 
 /* Added by M.Ko */

/*
Removes white gap between slides - chagnge to base color of slide images
*/
/* .carousel { */
  /* background:#007aeb; */
/* } */

/*
Forces image to be 100% width and not max width of 100%
*/
.carousel-item .img-fluid {
  width:100%;
  
}

/* 
anchors are inline so you need ot make them block to go full width
*/
.carousel-item a {
  display: block;
  width:100%;
}

.carousel-caption{
	position: relative!important;
	left:0!important;
	right:0!important;
	color: rgb(0,0,0,.7)!important;
	padding-top:0!important;
}

.carousel-indicators {
	bottom: -38px!important;
	z-index: 8!important;
	list-style: none;
}

.carousel-indicators li {    
    background-color: rgba(0,0,0,.1)!important;
	top:115%;
	height:10px!important;
	width:10px!important;
	border-radius:100%;
	margin-left:5px!important;
	margin-right:5px!important;
	cursor:pointer;
	
}
.carousel-indicators .active {
    background-color: rgba(0,0,0,.4)!important;
}

.carousel-control-prev {
	display:none!important;
}
.carousel-control-next {
	display:none!important;
}

.carousel-item .card-header {
	padding: .75rem 1.25rem;
}

a:hover{
	text-decoration:underline!important;
}

.nav-masthead .dropdown-menu a:hover {
	text-decoration:none!important;
}

a {
text-decoration:none!important;
}

/* Grid Layout */
.main {
  margin: 0 auto -60px;
}
.main .img-responsive {
  margin-bottom: 30px;
}

.footer-bs {
   background-color: #f8f9fa;
	padding: 60px 40px;
	color: rgba(0,0,0,.5);
	margin-bottom: 20px;
	border-bottom-right-radius: 6px;
	border-top-left-radius: 0px;
	border-bottom-left-radius: 6px;
}
.footer-bs .footer-brand, .footer-bs .footer-nav, .footer-bs .footer-social, .footer-bs .footer-ns { padding:10px 25px; }
.footer-bs .footer-nav, .footer-bs .footer-social, .footer-bs .footer-ns { border-color: transparent; }
.footer-bs .footer-brand h2 { margin:0px 0px 10px; }
.footer-bs .footer-brand p { font-size:12px; color:rgba(0,0,0,.5); }

.footer-bs .footer-nav ul.pages { list-style:none; padding:0px; }
.footer-bs .footer-nav ul.pages li { padding:5px 0px;}
.footer-bs .footer-nav ul.pages a { color:rgba(0,0,0,.5)!important; font-weight: 400!important; }
.footer-bs .footer-nav ul.pages a:hover { color:rgba(0,0,0,.7)!important; text-decoration:none; }
.footer-bs .footer-nav h4 {
	font-size: 11px;
	text-transform: uppercase;
	letter-spacing: 3px;
	margin-bottom:10px;
}

.footer-bs .footer-nav ul.list { list-style:none; padding:0px; }
.footer-bs .footer-nav ul.list li { padding:5px 0px;}
.footer-bs .footer-nav ul.list a { color:rgba(0,0,0,.5); }
.footer-bs .footer-nav ul.list a:hover { color:rgba(0,0,0,.7); text-decoration:none; }

.footer-bs .footer-social ul { list-style:none; padding:0px; }
.footer-bs .footer-social h4 {
	font-size: 11px;
	text-transform: uppercase;
	letter-spacing: 3px;
}
.footer-bs .footer-social li { padding:5px 0px;}
.footer-bs .footer-social a { color:rgba(0,0,0,0.5)!important; font-weight: 400!important;}
.footer-bs .footer-social a:hover { color:rgba(0,0,0,0.7)!important; text-decoration:none; }

.footer-bs .footer-ns h4 {
	font-size: 11px;
	text-transform: uppercase;
	letter-spacing: 3px;
	margin-bottom:10px;
}
.footer-bs .footer-ns p { font-size:12px; color:rgba(0,0,0,0.70); }

@media (min-width: 768px) {
	.footer-bs .footer-nav, .footer-bs .footer-ns { border-left:solid 1px rgba(0,0,0,0.1); }
}

/* News Section Style */
.section-description{color:#757575;margin-bottom:4rem;margin-left:15%;margin-right:15%}

@media (max-width:992px)
{.section-description{margin-left:5%;margin-right:5%}}

.fa-angle-right {
    float: right;
	position: relative;
	top: 50%;
}

a {
    cursor: pointer;
}

#contentdiv p a,
#contentdiv li a,
#contentdiv td a,
#contentdiv dd a,
#contentdiv h1 a,
#contentdiv h2 a,
#contentdiv h3 a,
#contentdiv h4 a {
	color: #204d9c;
	font-weight: 500;
}

#contentdiv .single-news a.grey-text,
#contentdiv .single-news .fa-angle-right {
	color: #204d9c;
}

div.single-news {
	position:relative;	
}

.fill-div {
	display: block;
    height: 100%;
    width: 100%;
    text-decoration: none;
	z-index:6;
	position:absolute;
	top:0px;
	left:0px;
}

.navbar-collapse{
	position: relative;	
	top: 10px;
}

.list-group-image{
	min-width:100px!important;
	max-width:100px!important;
	padding:0px!important;
}

.list-group-item{
	padding-top:15px!important;
	padding-bottom:15px!important;
	padding-left:0!important;
	
}

/* Fuer OWF Marker Liste GoogleMap */
#markers .list-group-item {
    padding-top: 5px !important;
    padding-bottom: 5px !important;
    padding-left: 0 !important;
}

#markers .list-group-item:last-child {
	border-bottom: 0;
}

div.single-product {
	position:relative;	
}

  body {
      position: relative;
  }
  ul.nav-pills {		
      position: sticky;
		top:100px;
		position:relative;
		text-align:right;
  }

/* IE-Support for position:sticky;   */
.sticky {
    position: -webkit-sticky!important;
	/* position: -moz-sticky; */
	/* position: -ms-sticky; */
	/* position: -o-sticky; */
    position: sticky!important;
	 top:90px;
}  

.sticky:before,
.sticky:after {
    content: '';
    display: table;
}

.nav-pills .nav-link.active, .nav-pills .show > .nav-link
{
	background-color:white!important;
	border-top-left-radius:0px;
	border-bottom-left-radius:0px;
}

#navbarToggler {
	font-size:17px;
}


#myScrollspy .nav-item > a {
	color:#40403F!important;
	font-weight: 400;
}
#myScrollspy .nav-item > a:hover {
	color:#204d9c!important;

}
#myScrollspy .nav-link.active {
	color:#204d9c!important;
	font-weight:500;
	box-shadow: inset 0.25rem 0 0 #204d9c;
}

/* Unterdruecken der Unterstreichungen  */
#myScrollspy .nav-link, a.badge,.navbar-nav .nav-link, .footer-bs a, .dropdown-item a {
	text-decoration:none!important;
}

h1,h2,h2,h3,h4 {
		color:#204d9c!important;
}

.card-title{
	color:#204d9c!important;
	font-weight:500;
}

/* Tabellenaussehen wiederherstellen */
table {
	border-collapse:separate !important;
}

.dl_link > a{
	color: rgba(0,0,0,.9)!important;
}

.dl_link > a:hover{
	color: rgba(0,0,0,.7)!important;
}

.dl_link > a > div {
	font-weight: 400;
}

#contentdiv .card .table th,
#contentdiv .card .table th.font-weight-normal,
#contentdiv .table.card th {
	font-weight: 500 !important;
}

#contentdiv dl dt {
	font-weight: 500;
}

p.card-text > a {
	position:relative;
	z-index: 8;
}

#cathead_pl{
	font-size: 1.25rem;
	font-weight: lighter;
	padding-top: 30px;
	padding-left: 15px;
	padding-bottom: 15px;
}

#contentdiv #cathead_pl.ipc-section-head {
	background:
		linear-gradient(180deg, rgba(8, 95, 145, 0.98) 0%, rgba(0, 17, 86, 0.98) 100%) !important;
	display: grid !important;
	grid-template-columns: 0.38rem auto !important;
	column-gap: 0.95rem !important;
	align-items: stretch !important;
	margin: 5px 0 !important;
	padding: 0 !important;
	border-radius: 0.25rem !important;
	box-shadow:
		0 1px 0 rgba(255, 255, 255, 0.08) inset,
		0 0 0 1px rgba(255, 255, 255, 0.08) inset,
		0 10px 18px rgba(0, 17, 86, 0.11) !important;
	font-size: inherit;
	font-weight: inherit;
	overflow: hidden !important;
}

#contentdiv #cathead_pl.ipc-section-head::before {
	content: "";
	display: block !important;
	width: 100% !important;
	min-height: 100% !important;
	background:
		linear-gradient(180deg, rgba(0, 100, 149, 0.96) 0%, rgba(77, 198, 250, 0.84) 100%) !important;
	box-shadow:
		0 0 0 1px rgba(255, 255, 255, 0.18) inset,
		0 0 10px rgba(79, 202, 255, 0.12) !important;
	border-top-left-radius: 0.25rem;
	border-bottom-left-radius: 0.25rem;
}

#contentdiv #cathead_pl.ipc-section-head::after {
	content: none;
}

#contentdiv #cathead_pl.ipc-section-head > .ipc-section-head__title {
	padding: 0.62rem 1rem 0.56rem 0 !important;
	font-size: 1.08rem !important;
	font-weight: 400 !important;
	color: rgba(255, 255, 255, 0.96) !important;
	letter-spacing: 0.012em !important;
	line-height: 1.1 !important;
	text-shadow: none !important;
	text-transform: none !important;
	white-space: normal !important;
}

td {
	padding-left:15px;
	padding-right:15px;
}

td > img {
	padding-bottom:15px;
}


.h1, h1 {
	font-size:2rem!important;
}
.h2, h2 {
	font-size:1.4rem!important;
}

.list-group-item:focus, .list-group-item:hover {
	z-index:unset!important;
}
	
/* // Extra small devices (portrait phones, less than 576px) */
@media (max-width: 575px) { 
	.container {
		max-width:none;
	}
	.h1, h1 {
	font-size:1.6rem!important;
	}
	.h2, h2 {
	font-size:1.2rem!important;
	}
	}

/* // Small devices (landscape phones, 576px and up) */
@media (min-width: 576px) and (max-width: 767px) { 
	.container {
		max-width:none!important;
	}
	.h1, h1 {
	font-size:1.6rem!important;
	}
	.h2, h2 {
	font-size:1.2rem!important;
	}
	.float-left-img{
		float:left;padding-right:10px;
	}
	}

/* // Medium devices (tablets, 768px and up) */
@media (min-width: 768px) and (max-width: 991px) { 
	.container {
			max-width:none!important;
		}
	#navbarToggler{
			font-size:12px!important;
	}
	
	.nav-masthead .nav-item.dropdown > .dropdown-menu {
		font-size:12px!important;
		min-width: 13.5rem !important;
	}
	
	.float-left-img{
		float:left;padding-right:10px;
	}
	
 }

/* layoutfix after removing margin:0 from body-element in bootstrap */
/* @media (max-width: 1518px){ */
	div#contentdiv {
		padding-left: 0;
		padding-right: 0;
	}
/* } */

@media (max-width: 1199px) {
	#topcontainer,
	div#contentdiv {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}
}



/* // Large devices (desktops, 992px and up) */
@media (min-width: 992px) and (max-width: 1199px) {
	.container {
			max-width:none!important;
		}
	#sidebar {
			padding-left: 0px!important;
			padding-top: 90px;
	}
	.float-left-img{
		float:left;padding-right:10px;
	}	
}

/* // Extra large devices (large desktops, 1200px and up) */
@media (min-width: 1200px) {  
	#sidebar {
		padding-left: 0px!important;
		padding-top:98px;
	}
	.container{
		max-width: 1498px!important;
	}
	.float-left-img{
		float:left;padding-right:10px;
	}
	
}

@media (min-width: 1200px) and (max-width: 1497px) {
	#topcontainer,
	#contentdiv {
		padding-left: 15px !important;
		padding-right: 15px !important;
	}
}

.responsive-container {
    position: relative;
    width: 100%;
	 background-color:white;
}

.dummy {
    padding-top: 100%; /* forces 1:1 aspect ratio */
}

.img-container {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    
    text-align:center; /* Align center inline elements */
    font: 0/0 a;
}

.img-container .centerer {
    display: inline-block;
    vertical-align: middle;
    height: 100%;
}

.img-container img {
    vertical-align: middle;
    display: inline-block;
}

.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6{
	padding-top:15px!important;
	font-weight: 400!important;
}

button:focus {
	outline: none!important;
}

.card-img-bottom {
  height:100%;
  border-bottom-right-radius:0!important;
  border-top-left-radius: 0.25rem;
}

#accordion .card-header {
	cursor:pointer!important;
}

/* Avoid 'will-change' Warnung durch Photoswipe*/
.pswp__zoom-wrap {
  will-change: auto !important;
  -webkit-backface-visibility: visible !important;
}

.panel-title > a:before {
    font-family: FontAwesome;
	 font-size:14pt;
    content:"\f147";
    padding-right: 15px;
}
.panel-title > a.collapsed:before {
    content:"\f196";
	 font-size:14pt;
}

.panel-title > a:link {
	color:#212529!important;
	border: none;	
}

.panel-title > a:hover, 
.panel-title > a:active, 
.panel-title > a:focus  {
    text-decoration:none!important;
}

.btn.focus, .btn:focus{
	box-shadow: unset!important;
}

#touchProdWiz.button {
	background-color: rgba(255, 255, 255, 0.94);
	padding-top:6px!important;
	padding-left: 10px;
	padding-right: 10px;
	display: inline-grid;
	width: fit-content;
	cursor: pointer;
	overflow: hidden;
	position: relative;
	text-align: center;
	transition: 
		background 180ms ease-out,
		border 1s cubic-bezier(0.19, 1, 0.22, 1),
		color 0.6s cubic-bezier(0.19, 1, 0.22, 1);
	user-select: none;
	border-radius: 999px;
}

#touchProdWiz.button:hover,
#touchProdWiz.button:focus-within {
	background-color: rgba(255, 255, 255, 1) !important;
}

.button a {
	color: #001156;
	text-shadow: none;
	text-decoration: none!important;
}

#touchProdWiz.button > a {
	display: flex !important;
	align-items: center;
	justify-content: center;
	grid-area: 1 / 1;
	position: relative !important;
	left: auto !important;
	width: 100% !important;
	height: 100% !important;
	line-height: 1.0rem !important;
	white-space: nowrap;
}

.button .mask {
	background-color: #fff;
	background-color: rgba(255, 255, 255, 0.5);
	height: 100px;
	position: absolute;
	inset: auto;
	transform: translate3d(-120%, -50px, 0) rotate3d(0, 0, 1, 45deg);
	transition: all 1.1s cubic-bezier(0.19, 1, 0.22, 1);
	width: 200px;
}

.button .shift {
	display: inline-block;
	transition: all 1.1s cubic-bezier(0.19, 1, 0.22, 1);
}

.button:hover a {
	color: #003e74;
}

.button:hover,
.button:focus-within {
	background-color: rgba(255, 255, 255, 0.98);
}

.button:hover .shift {
	transform: translateX(5px);
}

.button:active {
	background-color: rgba(255, 255, 255, 0.98);
}

.button:active a {
	color: #003e74;
}
  
@keyframes button_keys {
	0% { 
	background-color: rgba(255, 255, 255, 0.94) !important;
	border-color:unset;
	}
	50% { 
	 background-color: rgba(255, 255, 255, 0.98) !important;
	}
	100% { 
		background-color: rgba(255, 255, 255, 0.94); 
		}
}

@keyframes mask_keys {
	0% { 
			background-color: #fff;
			transform: translate3d(-120%, -50px, 0) rotate3d(0, 0, 1, 45deg);
	}
	100% { 
			transform: translate3d(120%, -100px, 0) rotate3d(0, 0, 1, 90deg);
		}
}

@keyframes link_keys {
	0% { 
		color: #001156;
	}
	100% { 
		}
}



.modal-open .navbar-fixed-top,
.modal-open .navbar-fixed-bottom {
padding-right: 0!important;
}

.modal {
 overflow-y: auto;
}

.modal-open {
 overflow: auto;
}

.ipcomm-table td, .ipcomm-table th{
	padding: 0px 15px 0px 35px!important;
}
.ipcomm-table td p, .ipcomm-table th p{
	margin-bottom: 0px!important;
	padding-top:3px;
	padding-bottom:3px;
	text-align:left;
}

div.card ul.list-group.list-group-flush li.list-group-item ul {
	list-style:inherit;
}

.topAccordionHeading {
	position: relative;
	display: grid;
	grid-template-columns: 0.38rem auto;
	column-gap: 0.95rem;
	align-items: stretch;
	width:100%;
	background: linear-gradient(180deg, rgba(8, 95, 145, 0.98) 0%, rgba(0, 17, 86, 0.98) 100%) !important;
	color: rgba(255, 255, 255, 0.96)!important;
	padding: 0 !important;
	border-radius: 0.25rem !important;
	box-shadow:
		0 1px 0 rgba(255, 255, 255, 0.08) inset,
		0 0 0 1px rgba(255, 255, 255, 0.08) inset,
		0 10px 18px rgba(0, 17, 86, 0.11) !important;
	margin-bottom:5px!important;
	overflow: hidden !important;
}

.topAccordionHeading::before {
	content: "";
	display: block;
	width: 100%;
	min-height: 100%;
	background: linear-gradient(180deg, rgba(0, 100, 149, 0.96) 0%, rgba(77, 198, 250, 0.84) 100%) !important;
	box-shadow:
		0 0 0 1px rgba(255, 255, 255, 0.18) inset,
		0 0 10px rgba(79, 202, 255, 0.12) !important;
	border-top-left-radius: 0.25rem;
	border-bottom-left-radius: 0.25rem;		
}

.topAccordionHeading p {
	margin: 0;
	padding: 0.62rem 1rem 0.56rem 0 !important;
	line-height: 1.1;
	font-size: 1.08rem;
	font-weight:400;
	color: rgba(255, 255, 255, 0.96) !important;
	letter-spacing: 0.012em;
	text-shadow: none;
	text-align: left;
	white-space: normal;
}

#accordion .mb-5px:not(:has(.collapse.show, .collapsing)) {
	background-color: transparent !important;
	border-color: transparent !important;
	margin-bottom:0!important;
}

.mb-5px {
	margin-bottom: 5px;
}

/* target all Browsers but IE */
@supports not (-ms-high-contrast: none) {
   /* Non-IE styles here */
	.cardTop {
	width: 100%;
	height: 100%
	}
}

[style*="--aspect-ratio"] > :first-child {
  width: 100%;
}

@supports (--custom:property) {
  [style*="--aspect-ratio"] {
    position: relative;
  }
  [style*="--aspect-ratio"]::before {
    content: "";
    display: block;
    padding-bottom: calc(100% / (var(--aspect-ratio)));
  }  
[style*="--aspect-ratio"] > :first-child {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
  }  
}

section[id] {
    scroll-margin-top: 96px;
}

h4.ccm-cookie-declaration--purpose--title {
	background-color: #40403f;
	margin-top: 0px;
	margin-bottom: 5px;
	padding-top: 6px!important;
	padding-bottom: 7px;
	border-radius: 0.25rem;
	padding-left: 24px;
	padding-right: 24px;
	color: #E5CB89!important;
}

section.ccm-cookie-declaration--embedding, div.ccm-cookie-declaration--intro {
	position: relative;
	display: -ms-flexbox;
	display: flex;
	-ms-flex-direction: column;
	flex-direction: column;
	min-width: 0;
	word-wrap: break-word;
	background-color: #fff;
	background-clip: border-box;
	border: 1px solid rgba(0,0,0,.125);
	border-radius: .25rem;
	padding-left: 1rem;
	padding-right: 1rem;
	margin-bottom: 5px;
}	

div.ccm-cookie-declaration--intro {
	padding-top: 15px;
}

div.ccm-cookie-declaration--change-consent {
	padding-left: 1.25rem;
	padding-top: 9px;	
}

table.platforms{
	border-collapse: collapse!important;
}

.platforms th, .platforms td {	
	border: 1px solid black;
	border-collapse: collapse!important;
	padding:0;
}

.rotate-left-90 {
	writing-mode: sideways-lr;
	width: 41px;
	margin:0!important;
	vertical-align: middle;
	display: table-cell;
}

.platforms svg {
	display:block;
	margin: auto;	
}

.cross {
	position: relative;
}

.cross:before,
.cross:after {
	content: '';
	position: absolute;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	z-index: 1;
}

.cross:before {
	background: linear-gradient(to bottom left, #C0E6F5 calc(50% - 0.75px), black 50%, transparent calc(50% + 0.75px) );
	z-index:0;
}

/* MKD: Bootstrap 5.3.7 migration */

@media (min-width: 1498px) {
	#topcontainer.ipc-topbar-frame {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}

	#contentdiv,
	#topcontainer.ipc-topbar-frame .ipc-topbar-inner {
		padding-left: 15px !important;
		padding-right: 15px !important;
	}

	.navbar {
		margin: 0 !important;
	}

}
.badge-light {
	color: #212529!important;
	background-color: #f8f9fa;
}

a.badge-secondary.focus, a.badge-secondary:focus {
	outline: 0;
	box-shadow: 0 0 0 .2rem rgba(108,117,125,.5);
}
a.badge-secondary:focus, a.badge-secondary:hover {
	color: #fff;
	background-color: #545b62;
}
a.badge:focus, a.badge:hover {
	text-decoration: none;
}  
.badge-secondary {
	color: #fff;
	background-color: #6c757d;
}

.border-1 tr, .border-1 td, .border-1 table {
	border-width: 1px;
}

.border-1 {
	table-layout: fixed;
	width: 100%
}

a.badge.badge-secondary {
	font-weight: 500;
}

/* LegacyNavReplacement: scoped NewIPCOMM header port */
#topcontainer.ipc-topbar-frame {
	max-width: none !important;
	width: 100%;
}

.nav-masthead.navbar-dark,
.nav-masthead.navbar[data-bs-theme="dark"] {
	--bs-navbar-color: rgba(255, 255, 255, 0.68);
	--bs-navbar-hover-color: rgba(255, 255, 255, 0.84);
	--bs-navbar-active-color: rgba(255, 255, 255, 0.96);
	--bs-nav-link-color: rgba(255, 255, 255, 0.68);
	--bs-nav-link-hover-color: rgba(255, 255, 255, 0.90);
	--bs-navbar-brand-color: rgba(255, 255, 255, 0.96);
	--bs-navbar-brand-hover-color: rgba(255, 255, 255, 0.96);
	--bs-navbar-toggler-border-color: rgba(255, 255, 255, 0.14);
}

.ipc-topbar-inner {
	padding-left: 0 !important;
	padding-right: 0 !important;
}

.navbar.nav-masthead {
	background: linear-gradient(0deg, #001156, #006495) !important;
}

.nav-masthead,
#offcanvasNavbarLight,
#offcanvasNavbarSubmenu {
	font-family: "Roboto Condensed", Arial, Helvetica, Verdana, Geneva, sans-serif;
	font-weight: 400;
}

.nav-masthead .navbar-brand,
.nav-masthead .navbar-brand.img-thumbnail,
.nav-masthead .navbar-brand img {
	background-color: #ffffff !important;
	border-color: rgba(9, 31, 71, 0.10) !important;
	box-shadow: none !important;
}

.nav-masthead .navbar-brand {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	flex: 0 0 auto;
	flex-shrink: 0;
	width: auto;
	height: auto;
	min-height: 54px;
	padding: 0 0.25rem !important;
	border: 1px solid rgba(9, 31, 71, 0.10) !important;
	border-radius: 0.375rem;
	margin-right: 1.1rem;
}

.nav-masthead .navbar-brand img {
	display: block;
	flex: 0 0 auto;
	flex-shrink: 0;
	max-width: none !important;
	width: 52px !important;
	height: 52px !important;
	margin: 0 auto;
	padding: 0 !important;
	border: 0 !important;
	border-radius: 0 !important;
}

.nav-masthead .dropdown-menu {
	background-color: #001156 !important;
	border: none !important;
	min-width: 16.75rem !important;
}

.nav-masthead .dropdown-item {
	color: rgba(255, 255, 255, 0.82) !important;
	text-shadow: none !important;
	border-top-color: var(--bs-nav-link-color) !important;
	padding-top: 0.75rem !important;
	padding-bottom: 0.75rem !important;
	display: flex;
	align-items: center;
}

.nav-masthead .dropdown-menu li:first-child .dropdown-item {
	border-top: 0 !important;
}

.nav-masthead .dropdown-item:focus,
.nav-masthead .dropdown-item:hover {
	color: #000 !important;
	background-color: #fff !important;
}

.nav-masthead .dropdown-item.active,
.nav-masthead .dropdown-item:active {
	background-image: unset;
	background-color: #005 !important;
	color: #dee2e6 !important;
}

.nav-masthead .dropdown-item svg.float-end {
	top: 0 !important;
	margin-left: auto;
}

.nav-masthead .navbar-nav .nav-link,
.nav-masthead .navbar-nav .nav-link:link,
.nav-masthead .navbar-nav .nav-link:visited,
.nav-masthead .navbar-nav .dropdown-toggle,
.nav-masthead .navbar-nav .dropdown-toggle:link,
.nav-masthead .navbar-nav .dropdown-toggle:visited {
	color: rgba(255, 255, 255, 0.68) !important;
}

.nav-masthead .navbar-nav .nav-link:hover,
.nav-masthead .navbar-nav .nav-link:focus,
.nav-masthead .navbar-nav .dropdown-toggle:hover,
.nav-masthead .navbar-nav .dropdown-toggle:focus,
.nav-masthead .navbar-nav .dropdown-toggle.show {
	color: rgba(255, 255, 255, 0.90) !important;
}

.nav-masthead .navbar-nav .nav-link.active,
.nav-masthead .navbar-nav .dropdown-toggle.active,
.nav-masthead .navbar-nav .dropdown-toggle.show.active {
	color: rgba(255, 255, 255, 0.96) !important;
}

.custom-tooltip {
	--bs-tooltip-bg: #001156;
	--bs-tooltip-opacity: 1!important;
	--bs-tooltip-color: rgba(255, 255, 255, 0.82);
	--bs-tooltip-max-width: 232px;
}

.custom-tooltip .tooltip-inner {
	padding: 0;
	border-radius: 0;
	max-width: 232px;
	background-color: #001156 !important;
	text-align: left;
	overflow: hidden;
	box-shadow: 0 0 10px rgba(0, 0, 0, 0.2)	
}

.custom-tooltip .tooltip-arrow::before {
	border-bottom-color: #001156 !important;
}

.custom-tooltip .tooltip-inner p {
	display: flex;
	align-items: stretch;
	justify-content: flex-start;
	gap: 0.85rem;
	width: 100%;
	box-sizing: border-box;
	margin: 0;
	padding: 0.50rem 0.75rem 0.75rem;
	text-align: left;
	line-height: 1.1;
}

.tooltip-image {
	display: block;
	background-image: url("/image/news/configurator_2025.png");
	background-repeat: no-repeat;
	background-size: contain;
	background-position: center top;
	min-height: 120px;
	width: 232px;
	padding-top: 107.65px;
}

.tooltip-image p {
	color: rgba(255, 255, 255, 0.82);
}

.tooltip-image .tooltip-gear {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 1.75rem;
	min-height: 100%;
	flex: 0 0 auto;
	font-size: 1.85rem;
	line-height: 1;
}

.nav-masthead .ipc_search {
	background-color: #0e0f51;
	border-color: rgba(255, 255, 255, 0.18);
	color: rgba(255, 255, 255, 0.96);
	box-shadow: none !important;
}

.nav-masthead .ipc_search:focus,
.nav-masthead .ipc-nav-search .form-control:focus,
.nav-masthead .ipc-nav-search .form-select:focus {
	background-color: #0e0f51 !important;
	border-color: rgba(255, 255, 255, 0.18) !important;
	color: rgba(255, 255, 255, 0.96) !important;
	box-shadow: none !important;
}

.nav-masthead .ipc_search::placeholder {
	color: transparent;
}

.nav-masthead .nav-link.no-bottom-border-color,
.nav-masthead .nav-link.no-bottom-border-color:hover,
.nav-masthead .nav-link.no-bottom-border-color:focus,
.nav-masthead .nav-link.no-bottom-border-color.active,
.nav-masthead .nav-link.no-bottom-border-color.show {
	border-bottom-color: transparent !important;
}

.nav-masthead .no-bottom-border-color::before {
	transform: scaleX(0) !important;
	opacity: 0 !important;
}

.nav-masthead .nav-link-badge {
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	min-height: 1.85rem;
	padding: 0.2rem 0.8rem !important;
	border-bottom: 0 !important;
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.94);
	color: #001156 !important;
	box-shadow: 0 0.35rem 0.9rem rgba(0, 17, 86, 0.16);
	line-height: 1;
	overflow: hidden;
	isolation: isolate;
	position: relative;
	top: calc(-0.3rem - 1px);
	vertical-align: middle;
	animation: prowiz-badge-pulse 1s cubic-bezier(0.19, 1, 0.22, 1) 4s 1;
}

.nav-masthead .nav-link-badge:hover,
.nav-masthead .nav-link-badge:focus {
	color: #003e74 !important;
	background: rgba(255, 255, 255, 0.98);
}

.nav-masthead .nav-link-badge::before {
	transform: scaleX(0) !important;
	opacity: 0 !important;
}

.nav-masthead .nav-link-badge::after {
	content: "";
	position: absolute;
	top: -140%;
	left: -62%;
	width: 2.35rem;
	height: 320%;
	background: rgba(255, 255, 255, 0.68);
	transform: translate3d(-180%, 0, 0) rotate(28deg);
	pointer-events: none;
	z-index: 0;
	animation: prowiz-badge-sheen 1.2s cubic-bezier(0.19, 1, 0.22, 1) 4s 2;
}

.nav-masthead .nav-link-badge > * {
	position: relative;
	z-index: 1;
}

.nav-masthead .magnifier {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 100%;
	padding-top: 0 !important;
	padding-bottom: 0 !important;
	color: rgba(255, 255, 255, 0.56) !important;
	opacity: 0.7;
	transition: color 180ms ease-out, opacity 180ms ease-out;
}

.nav-masthead .magnifier.active,
.nav-masthead .magnifier:hover,
.nav-masthead .magnifier:focus {
	color: rgba(255, 255, 255, 0.96) !important;
	opacity: 1;
}

.nav-masthead .ipc-nav-search {
	position: relative;
	flex: 0 0 0;
	width: 0;
	min-width: 0;
	margin: 0 !important;
	opacity: 0;
	overflow: hidden;
	pointer-events: none;
}

.nav-masthead .ipc-nav-search.active {
	flex: 0 0 auto;
	width: auto;
	margin: 0 0.5rem 0 0 !important;
	opacity: 1;
	overflow: visible;
	pointer-events: auto;
}

.nav-masthead .ipc-nav-search .ipc_search {
	max-width: 10rem;
}

.nav-masthead .ipc-nav-search .form-control,
.nav-masthead .ipc-nav-search .form-select {
	height: calc(2.25rem + 2px) !important;
	min-height: calc(2.25rem + 2px) !important;
	line-height: 1 !important;
}

.nav-masthead .ipc-nav-search label {
	padding: 0.5rem 1rem !important;
	color: rgba(255, 255, 255, 0.78) !important;
}

#offcanvasNavbarLight,
#offcanvasNavbarSubmenu {
	background: linear-gradient(0deg, #001156, #006495) !important;
}

#offcanvasNavbarLight .nav-item,
#offcanvasNavbarSubmenu .nav-item {
	margin-left: -1rem;
	margin-right: -2rem;
}

#offcanvasNavbarLight a.nav-link,
#offcanvasNavbarSubmenu a.nav-link {
	color: #dee2e6;
	padding-left: 1rem;
	padding-right: 2rem;
}

#offcanvasNavbarLight a.nav-link:hover,
#offcanvasNavbarSubmenu a.nav-link:hover {
	color: #000;
	background-color: #fff;
}

#offcanvasNavbarLight .offcanvas-header a.nav-link {
	margin-left: -1rem !important;
}

#offcanvasNavbarLight .offcanvas-header a.nav-link:hover,
#offcanvasNavbarSubmenu .offcanvas-header a:hover {
	color: #dee2e6 !important;
	background-color: transparent !important;
	text-decoration: none !important;
}

#offcanvasNavbarLight .offcanvas-header .btn-close,
#offcanvasNavbarSubmenu .offcanvas-header .btn-close {
	margin-right: 0.5rem !important;
}

#offcanvasNavbarLight .form-floating {
	opacity: 1;
	margin-left: -1rem;
	margin-right: -2rem;
}

#floatingInputMobNav {
	color: #dee2e6;
	background-color: transparent !important;
	border: 0 !important;
	box-shadow: none !important;
	outline: 0 !important;
	border-radius: 0 !important;
	height: calc(2.25rem + 2px) !important;
	min-height: calc(2.25rem + 2px) !important;
	line-height: 1 !important;
	padding-left: 0.15rem !important;
	margin-left: 1rem !important;
}

#floatingInputMobNavLabel {
	color: #dee2e6;
	margin-left: -0.07rem;
	padding-top: 1.35rem !important;
	padding-left: 1rem !important;
}

#mobSearchButton {
	margin-right: 1rem;
	padding: 0.375rem 0.75rem !important;
	font-size: 1rem !important;
	line-height: 1.5 !important;
	border-radius: 0 !important;
	height: calc(2.25rem + 2px) !important;
	min-height: calc(2.25rem + 2px) !important;
	white-space: nowrap;
	flex-shrink: 0;
}

.mobile-language-switch {
	margin-top: 1rem;
}

.mobile-language-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
	flex-wrap: wrap;
}

.mobile-language-label {
	color: rgba(222, 226, 230, 0.72);
	font-size: 0.78rem;
	font-weight: 500;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.mobile-language-links {
	display: flex;
	align-items: center;
	gap: 0.65rem;
	flex-wrap: wrap;
}

.mobile-language-link {
	color: rgba(222, 226, 230, 0.84);
	font-size: 0.92rem;
	text-decoration: none;
}

.mobile-language-link:hover,
.mobile-language-link:focus {
	color: #fff;
	text-decoration: none !important;
}

.mobile-language-link.is-active {
	color: #fff;
	text-decoration: underline !important;
	text-underline-offset: 0.2rem;
}

.mobile-language-separator {
	color: rgba(222, 226, 230, 0.48);
	font-size: 0.9rem;
}

@media (min-width: 768px) {
	.nav-masthead {
		align-items: flex-end;
	}

	.nav-masthead #navbarToggler {
		align-items: flex-end;
	}

	.nav-masthead #nbl,
	.nav-masthead #nbr {
		align-items: flex-end;
	}

	.nav-masthead #nbr {
		align-self: flex-end;
		align-items: center;
	}

	.nav-masthead .nav-item {
		margin-left: 0.75rem;
		display: flex;
		align-items: flex-end;
	}

	.nav-masthead #nbr .nav-item {
		align-items: center;
	}

	.nav-masthead #nbl > .nav-item:first-child {
		margin-left: 0;
	}

	.nav-masthead.search-open #nbl {
		display: none;
	}

	.nav-masthead.search-open .ipc-nav-search {
		margin-left: auto !important;
	}

	.nav-masthead #navbarToggler .nav-item > a,
	.nav-masthead #navbarToggler .nav-item > a:hover,
	.nav-masthead #navbarToggler .nav-item > a:focus {
		display: inline-flex;
		align-items: flex-end;
		height: 42px !important;
		line-height: normal !important;
		color: rgba(255, 255, 255, 0.68) !important;
		text-shadow: none !important;
		white-space: nowrap;
	}

	.nav-masthead #navbarToggler .nav-item > a:hover,
	.nav-masthead #navbarToggler .nav-item > a:focus,
	.nav-masthead #navbarToggler .nav-item > a.dropdown-toggle.show {
		color: rgba(255, 255, 255, 0.90) !important;
	}

	.nav-masthead #navbarToggler .nav-item > a.nav-link-badge,
	.nav-masthead #navbarToggler .nav-item > a.nav-link-badge:hover,
	.nav-masthead #navbarToggler .nav-item > a.nav-link-badge:focus {
		color: #001156 !important;
	}

	.nav-masthead #navbarToggler .nav-item > a.nav-link-badge:hover,
	.nav-masthead #navbarToggler .nav-item > a.nav-link-badge:focus {
		color: #003e74 !important;
	}

	.nav-masthead .nav-link-badge {
	top: -1.02rem;
	}

	.nav-masthead #touchProdWiz.button {
		height: 30px !important;
		min-height: 30px !important;
		top: -0.95rem !important;
		vertical-align: middle;
	}

	.nav-masthead a.nav-link {
		position: relative;
		display: inline-flex;
		align-items: flex-end;
		border-bottom: 0.25rem solid transparent;
		transition: color 180ms ease-out;
		color: rgba(255, 255, 255, 0.68) !important;
		text-shadow: none !important;
		top: 0;
	}

	.nav-masthead a.nav-link.nav-link-badge {
		top: -1.02rem;
	}

	.nav-masthead a.dropdown-toggle {
		display: inline-flex;
		align-items: center;
		gap: 0.15rem;
	}

	.nav-masthead a.dropdown-toggle::after {
		margin-bottom: 0.5rem;
	}

	.nav-masthead .ipc-nav-search.form-floating {
		align-self: center;
		top: 0;
		margin-bottom: 0 !important;
	}

	.nav-masthead .magnifier {
		position: relative;
		top: 0;
	}

	.nav-masthead .magnifier svg.bi-search {
		top: 0 !important;
	}

	.nav-masthead #nbr .nav-link {
		align-items: center;
		padding-left: 0;
		padding-right: 0;
	}

		.nav-masthead a.nav-link::before {
			content: "";
			position: absolute;
			left: 0;
		right: 0;
		bottom: -0.25rem;
		height: 0.25rem;
		background: #006495;
		transform: scaleX(0);
		transform-origin: left center;
			transition: transform 180ms ease-out, opacity 180ms ease-out;
			opacity: 0.92;
		}

		.nav-masthead #touchProdWiz.button > a:focus,
		.nav-masthead #touchProdWiz.button > a:focus-visible {
			outline: none !important;
			box-shadow: none !important;
		}

	.nav-masthead a.nav-link:hover,
	.nav-masthead a.nav-link:focus {
		color: rgba(255, 255, 255, 0.9) !important;
	}

	.nav-masthead a.nav-link:hover::before,
	.nav-masthead a.nav-link:focus::before,
	.nav-masthead a.nav-link.active::before,
	.nav-masthead .dropdown-toggle.show::before {
		transform: scaleX(1);
	}

	.nav-masthead a.nav-link.active::before,
	.nav-masthead .dropdown-toggle.show::before {
		transition: none;
	}

	.nav-masthead #navbarToggler .nav-item > a.active,
	.nav-masthead a.nav-link.active,
	.nav-masthead .dropdown-toggle.show {
		background-color: transparent !important;
		border-radius: 0;
		color: rgba(255, 255, 255, 0.96) !important;
		text-shadow: 0 0 5px rgba(210, 225, 245, 0.22) !important;
	}

	.nav-masthead .navbar-nav .dropdown-menu {
		top: 100% !important;
		border-radius: 0 !important;
	}
}

@media (min-width: 768px) and (max-width: 991px) {
	.nav-masthead a.dropdown-toggle::after {
		margin-bottom: 0.3rem;
	}

	.nav-masthead #touchProdWiz.button {
		top: -0.75rem !important;
	}
}

@keyframes prowiz-badge-pulse {
	0% {
		background: rgba(255, 255, 255, 0.94);
		box-shadow: 0 0.35rem 0.9rem rgba(0, 17, 86, 0.16);
	}
	50% {
		background: #eef5ff;
		box-shadow: 0 0.55rem 1.2rem rgba(0, 54, 116, 0.24);
	}
	100% {
		background: rgba(255, 255, 255, 0.94);
		box-shadow: 0 0.35rem 0.9rem rgba(0, 17, 86, 0.16);
	}
}

@keyframes prowiz-badge-sheen {
	0% {
		transform: translate3d(-180%, 0, 0) rotate(28deg);
	}
	100% {
		transform: translate3d(980%, 0, 0) rotate(28deg);
	}
}
