@import url(form.css);

#TSFE_ADMIN_PANEL_FORM.typo3-kidjls9dksoje.typo3-adminPanel .typo3-adminPanel-bar {
    right: 5em !important;
}

html {
}

html,
body {
    width: 100%;
}

body {
    font-family: var(--defaultFont);
    font-size: var(--defaultSize);
    font-weight: var(--defaultWeight);
    color: var(--primary);
    font-size: calc(16px + .10vw);
    background-color: var(--white);
    font-variant-ligatures: none;
    line-height:1.25;
}

@media screen and (min-width:1440px) {
    body {
        font-size: var(--defaultSize);
    }
}

h1,
h2,
h3,
h4,
h5,
h6,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6 {
    font-weight: 600;
    line-height: 1.2;
    margin-bottom: 0.55em;
}
.align-center {
    text-align: center;
}

a,
a:hover {
    color: currentColor;
    text-decoration: none;
}
a[name]:not([name=""]) {
    display: block;
    position: relative;
    top: -100px;
    visibility: hidden;
}

b,strong {
    font-weight:700;
}

img {
    max-width: 100%;
    height:auto!important;
}
.ce-gallery.hasManualWidth img{
    width:100% !important;
}

img.img-responsive,
img.responsive-img {
    width: 100%;
    height: auto;
}

p {
    margin-bottom: 1em;
    line-height:1.25em;
}
h2 + p {
    /* margin-top: 1.5em; */
}
.frame > p:last-child{
    margin-bottom:0;
}
.frame.alignment-center{
    text-align:center;
}



.pl-1, .px-1 {
    padding-left: 0.5em !important;
}
.pr-1, .px-1 {
    padding-right: 0.5em !important;
}

.pl-2, .px-2 {
    padding-left: 1em !important;
}
.pr-2, .px-2 {
    padding-right: 1em !important;
}

.pl-3, .px-3 {
    padding-left: 1.125em !important;
}
.pr-3, .px-3 {
    padding-right: 1.125em !important;
}

.pl-4, .px-4 {
    padding-left: 1.25em !important;
}
.pr-4, .px-4 {
    padding-right: 1.25em !important;
}

figure {
    margin: 0;
}

.has-headerContent .sticky-wrapper {
    z-index: 103;
    position: relative;
    position: fixed;
    width:100%;
}
.has-headerContent > .header {
    position:absolute;
    top:0;
    left:0;
    width:100%;
}


.container .container {
    padding: 0;
}
.container-fluid .row > div:first-child .container {
    padding-left:8.5vw;
    padding-right:0;
}
.container-fluid .row > div:last-child .container {
    padding-right:8.5vw;
    padding-left:0;
}

.aspectRatioSizer {
    display: grid;
}
.aspectRatioSizer > * {
    grid-area: 1 / 1 / 2 / 2;
}


table.alternateTable{
	border-collapse: collapse;
}
table.alternateTable td{
	padding:0.5em 0.35em 0.1em 0.35em;
	padding:0.5em 0.5em 0.5em 0.5em;
}
table.alternateTable tr:nth-child(even) td {
	background-color:var(--tertiary);
}
table.alternateTable tr:nth-child(odd) td {
	background-color:var(--white);
}

.alternateList {
    padding-left:0em;
    margin-left:0em;
    list-style:none;
}
.alternateList li {
    position:relative;
    padding:0.5em 1em 0.5em 2.25em;
}
.alternateList li span.counter{
    position:absolute;
    left:0.395em;
}
.alternateList li:nth-child(even){
    background-color:var(--tertiary);
}
.alternateList li:nth-child(odd){
    background-color:var(--white);
}


.ce-image.hasManualWidth img {
    width:100%;
}





.ce-gallery .ce-row {
    display:flex;
    flex-direction: row;
}
.ce-gallery .ce-row > div{
    flex:1;
}




.header {
    transition: all 0.3s ease-in-out;
}

.header.stuck {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 103;
}
.scrolled.down .header {
    transform:translateY(-100%); 
}


.frame.frame-space-after-none {
    padding-bottom: 0 !important;
}

.frame.frame-space-before-none {
    padding-top: 0 !important;
}

.asyncImage {
    filter: blur(5px);
}

img {
    transform: translateZ(0);
    transition: all 400ms ease-in-out;
}

.ce-image img {
    max-width: 100%;
    height:auto;
}



.frame {
    padding-top: 0;
    padding-bottom: 0;
}

.frame-space-before-extra-small {
    padding-top: 0.5vw !important;
}

.frame-space-before-small {
    padding-top: 1.25vw !important;
}

.frame-space-before-medium {
    padding-top: 2vw !important;
}

.frame-space-before-large {
    padding-top: 4.3333em !important;
}

.frame-space-before-extra-large {
    padding-top: 6.3333vw !important;
}

.frame-space-after-extra-small {
    padding-bottom: 0.5vw !important;
}

.frame-space-after-small {
    padding-bottom: 1.25vw !important;
}

.frame-space-after-medium {
    padding-bottom: 2vw !important;
}

.frame-space-after-large {
    padding-bottom: 4.3333vw !important;
}

.frame-space-after-extra-large {
    padding-bottom: 6.3333vw !important;
}

.frame-space-before-none {
    padding-top: 0 !important;
}

.frame-space-after-none {
    padding-bottom: 0 !important;
}

.frame-type-container2Cols > .row > div > .innerCol {
    height:100%;
}



.btn-primary {
    color: #fff;
    background-color: var(--black);
    border-color: var(--black);
}

.btn-primary:hover {
    color: var(--primary);
    background-color: transparent;
    border-color: var(--primary);
}

.btn {
    display: inline-block;
    font-weight: 400;
    color: #fff;
    text-align: center;
    vertical-align: middle;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    background-color: var(--primary);
    border: 1px solid transparent;
    padding: 0.5em 1em;
    font-size: 1em;
    line-height: 1.5;
    border-radius: 0;
    transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}

.btn:active,
.btn:focus {
    background-color: var(--primary);
    border: 1px solid transparent;
}
.btn:active:hover,
.btn:focus:hover {
    color:#fff;
}
.btn-primary:not(:disabled):not(.disabled):active:focus, .btn-primary:not(:disabled):not(.disabled).active:focus, .show > .btn-primary.dropdown-toggle:focus,
.btn-primary:focus, .btn-primary.focus {
    box-shadow: none;
}
.btn-primary:not(:disabled):not(.disabled):active, 
.btn-primary:not(:disabled):not(.disabled).active, 
.show > .btn-primary.dropdown-toggle {
    color: #fff;
    background-color: var(--primary);
    border-color: transparent;
}



.main {
    overflow-x:hidden;
}
.main > .content > section{
    /* overflow-x:hidden; */
}
.main > .content > section > .container-fluid > .frame > .row {
    /* margin:0!important; */
}

section.ontop {
    z-index:9999;
}



.frame-type-siteNav {
    transition: all ease-in 250ms;
}

.frame-type-siteNav .hamburger-inner,
.frame-type-siteNav .hamburger-inner::before,
.frame-type-siteNav .hamburger-inner::after {
    transition: all ease-in 150ms;
    transition-delay: 200ms;
}

.frame-type-siteNav svg path,
.frame-type-siteNav svg polygon,
.frame-type-siteNav svg rect {
    transition: all ease-in 150ms;
    transition-delay: 200ms;
}

.navExpanded .frame-type-siteNav {
    /* color: var(--act-menu-color); */
}

/* .navExpanded .frame-type-siteNav .hamburger-inner,
.navExpanded .frame-type-siteNav .hamburger-inner::before,
.navExpanded .frame-type-siteNav .hamburger-inner::after {
    background-color: currentColor;
} */

.navExpanded .frame-type-siteNav svg path,
.navExpanded .frame-type-siteNav svg polygon,
.navExpanded .frame-type-siteNav svg rect {
    /* fill: currentColor; */
}

.navExpanded .frame-type-siteNav .navbar-brand svg path,
.navExpanded .frame-type-siteNav .navbar-brand svg polygon,
.navExpanded .frame-type-siteNav .navbar-brand svg rect {
    /* fill: var(--act-menu-svg); */
}



.navbar {
    justify-content: space-between;
    align-items: center;
    padding:3em 5vw 1em 5vw ;
    padding:3em 8.5vw 3em 8.5vw ;
    /* background-color: var(--primary);
    color:var(--white); */
    z-index: 5;
    transition: background 10ms ease-in 400ms, padding 550ms ease-out;
}

.header .navbar{
    /* padding-top:1em; */
    /* padding-bottom:1em; */
    background-color:#fff;
}
.header.transparent .navbar{
    padding-top:3em;
    padding-bottom:1em;
    background-color:transparent;
}


.navbar-collapse {
    /* position: absolute;
    top: 0%;
    right: 0;
    background-color: var(--primary); */
    flex-grow:0;
    flex-shrink:0;

}

.navbar-collapse .collapsedContent {
    padding-left: 1em;
    padding-top:1.5em;
    overflow: auto;
}

.navbar-collapse .collapsedContent .menus {
    padding-top: 0em;
    padding-bottom: 0.1em;
    display: flex;
    flex-direction: row;
    justify-content: flex-end;
    align-items: flex-end;
}

.navbar-collapse .collapsedContent .menus .mainMenu li a {
    font-size:1.5em;
}
.header.transparent .navbar-collapse .collapsedContent .menus .mainMenu li a {
    color:#fff;
}

.navbar-collapse .collapsedContent .menus .socialsMenu ul {
    list-style: none;
    margin: 0 -1rem;
    padding: 0;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
}

.links ul.flex-row li a,
.navbar-collapse .collapsedContent .menus .socialsMenu ul li a {
    font-size: 1.08em;
    text-underline-offset: 3px;
}

.teaserLink span,
.links ul.flex-row li a {
    padding: 0.5em 0;
}

.frame-extensions .links ul.flex-row li a {
    padding:0;
}

.teaserLink a,
.links ul.flex-row li a .nav-text {
    font-size:1.08em;
    text-decoration: underline;
    text-underline-offset: 3px;
}

.teaserLink span:after,
.links ul.flex-row li a:after,
.section-type-containerFooter ul.flex-row li a:after,
.navbar-collapse .collapsedContent .menus .socialsMenu ul li a:after {
    font-family: 'custom' !important;
    speak: never;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    content: "\e98f";
    font-size: 0.6em;
    padding-left: 0.45em;
}

.navbar>.navbar-brand {
    /* width: 35vw;
    min-width: 150px;
    max-width: 40%; */
    display: inline-block;
    padding-top: 0;
    padding-bottom: 0;
    margin-right: 0;
    font-size: 1em;
    line-height: inherit;
    white-space: nowrap;
    position: relative;
    z-index: 2;
}

.navbar>.navbar-end img,
.navbar>.navbar-end svg,
.navbar>.navbar-brand img,
.navbar>.navbar-brand svg {
    width: 100%;
}

.header.transparent .navbar>.navbar-brand svg *{
    fill:#fff;
}

.navbar>.navbar-end {
    min-width: 18vw;
    max-width: 40%;
    margin-left: auto;
    position: relative;
    z-index: 2;
}

.navbar>.navbar-toggler {
    position: relative;
    z-index: 4;
    padding: 0 0 0 3em;
    font-size: 1em;
    line-height: 1;
    background-color: transparent;
    border: 0px solid transparent;
    border-radius: 0;
}

.navbar-collapse.collapsing {
    transition-delay: 250ms;
}

.navbar>.navbar-toggler:active,
.navbar>.navbar-toggler:focus {
    outline: 0;
    border: 0;
    box-shadow: none;
}

.inlineSvg_wrap {
    height: 100%;
}
.inlineSvg_wrap a {
    display: block;
    width: 100%;
    height: 100%;
}
.navbar .navbar-brand .desktop-logo svg {
    transition: all 250ms ease-in-out;
    width: 100%;
    height: 100%;
    text-align: left;
}

.provider-logo {
    display: flex;
}
/* 
.navbar-nav .nav-link {
    font-size: 4vw;
    font-weight: 600;
    transition: all 400ms ease-in-out;
    line-height: 1.35;
    padding:0;
}

.navbar-nav .nav-link:hover {
    color: var(--yellow);
}
.navExpanded .navbar-nav .nav-item,
.navExpanded .navbar-nav .nav-item {
    animation-name: animateIn;
    animation-duration: 250ms;
    animation-delay: calc(var(--animation-order) * 100ms);
    animation-fill-mode: both;
    animation-timing-function: ease-out;
} */

@keyframes animateIn {
    0% {
        opacity: 0;
        transform: scale(0.8) translateX(20%);
    }

    100% {
        opacity: 1;
    }
}

.navExpanded .socialsMenu .nav-item {
    animation-name: animateUp;
    animation-duration: 350ms;
    animation-delay: calc(var(--animation-order) * 380ms);
    animation-fill-mode: both;
    animation-timing-function: ease-out;
}

@keyframes animateUp {
    0% {
        opacity: 0;
        transform: scale(0.8) translateY(100%);
    }

    100% {
        opacity: 1;
    }
}



.section-type-menu_pages ul {
    margin: 0;
    padding: 0;
    list-style: none;
}
.nav-tabs .nav-item{
    margin-bottom:0;
}
.nav-tabs .nav-item .nav-link {
    background-color: var(--tertiary);
    color:var(--white);
    border:0px solid transparent;
}

.nav-tabs .nav-link.active {
    border:0px solid transparent;
    padding:0.5em 1em;
    font-weight:600;
    color: var(--secondary);
    background-color:var(--white);
}



.siteNav .navbar-nav {
    column-gap:1.5em;
}
.siteNav .navbar-expand-md .navbar-nav .nav-link {
    padding:0;
}
.content {
    position:relative;
    z-index:3;
}

.headerContent  + .content > section:first-child{
    
}
.headerContent  + .content > section:first-child > .container > .frame{
    /* background-color: #fff;
    margin-top:-4em;
    padding-top:4em; */
}
.content > section.section-type-containerTabs .nav-tabs{
    margin-left:8%;
    margin-right:8%;
}

.content > section.section-type-containerTabs {
    /* margin-left:8vw; */
    /* margin-right:8vw; */
    margin-top:-2.25em;
}
section.withLine {
    position:relative;
}
section.withLine:before {
    content:"";
    position:absolute;
    right:calc(100% + 2em);
    width:100%;
    height:0.5em;
    background-color:var(--tertiary);
    top:0.5em;
}



.content > section.section-type-containerTabs .tabs .tab-pane {
    padding-top:4em;
}
.content > section.section-type-containerTabs .tabs .nav-tabs {
    border:0px solid transparent;
}


footer {
    /* background-color:var(--darkpetrol); */
    background-color:var(--corporatecolor);
    color:var(--white);
}
footer a[href^="mailto:"] {
    color:var(--tertiary);
}


footer h4 {
    font-weight:400;
}
footer hr {
    border-top:1px solid var(--border);
}
footer .frame-type-menu_subpages ul.nav .nav-link{
    font-size:0.8em;
    padding:0.65em 0;
}
footer .frame-type-menu_subpages.alignment-right ul.nav.flex-row{
    justify-content: flex-end;
    column-gap:2em;
}