html {
    font-size: 20px;
    -webkit-tap-highlight-color: rgba(0,0,0,0);
}

input:focus,
textarea:focus,
select:focus,
button:focus,
.form-select:focus{
    outline: none;
    box-shadow: none; /* Also removes any shadow effects */
}

/* GLOBAL: Alle Fokus-Stile bei allen Formular-Elementen deaktivieren */
*:focus,
*:focus-visible,
*:focus-within {
  outline: none !important;
  box-shadow: none !important;
}

/* Buttons */
button:focus,
button:active,
button:focus-visible {
  outline: 0 !important;
  box-shadow: none !important;
}

/* Inputs */
input:focus,
input:focus-visible,
textarea:focus,
textarea:focus-visible,
select:focus,
select:focus-visible {
  outline: 0 !important;
  box-shadow: none !important;
}

/* Links */
a:focus,
a:focus-visible {
  outline: 0 !important;
  box-shadow: none !important;
}

/* Safari/Chrome iOS */
input[type=text]:focus,
input[type=button]:focus,
input[type=submit]:focus {
  outline: none !important;
  box-shadow: none !important;
}




.btn-primary {
    background-color: #002b55;
    border-color: #002b55;
}

.btn:hover {
    color: var(--bs-btn-hover-color);
    background-color: #002b55;
    border-color: #002b55;
}

.btn-primary:hover, .btn-primary:focus {
    background-color: #002b55bd;
}



body {
    font-family: "Barlow","Helvetica Neue",Helvetica,Arial,sans-serif;
    font-size: 1em;
    font-style: normal;
    font-weight: 300;
}

a {
    color: #23527c;
    text-decoration: none;
}

a:hover, a:focus {
    color: #1b6acb;
    text-decoration: underline;
}

h3 a:hover {
    color: #23527c;
}

.h3.content {
    font-weight: normal;
}


img {
    max-width: 100%;
    height: auto;
}

.field--type-image img, .field--name-field-user-picture img {
    margin: 0;
}

.field--type-entity-reference {
    margin: 0;
}


h1, h2, h3, h4, h5, h6, .h1, .h2, .h3, .h4, .h5, .h6 {
    font-family: 'Montserrat';
    text-transform: uppercase;
    margin-top: 1.8em;
    color: #002B54;
    font-style: normal;
    font-weight: 600;
    margin-bottom: 0.5em;
}

.node--type-solution .h1 {
    text-transform: inherit;
}

.node--type-solution .h1 {
    margin-bottom: 0;
}


.node--type-solution .block-field-blocknodesolutionfield-maintext {
    margin-top: 2em;
}


h2.scection-divider, .h2.section-divider, .h1.center, h1.center {
    text-align: center;
    margin-bottom: 1em;
    padding-bottom: 0.2em;
    font-size: 2em;
		font-size: clamp(2rem, 3.233vw + 1.163rem, 3.75rem);
		line-height: clamp(2rem, 4.619vw + 0.805rem, 4.5rem);
    font-weight: 300;
    display: inline-flex;
    width: 100%;
    justify-content: center;
    flex-direction: row;
    flex-wrap: wrap;
}

h3 {
    margin-top: 1em !important;
    margin-bottom: 0.5em;
}

h4 {
  display: flex;
  align-items: center;
  text-align: center;
}

h4::before,
h4::after {
  content: "";
  flex: 1;
  border-bottom: 1px solid #333;
}

h4::before {
  margin-right: .5em;
}

h4::after {
  margin-left: .5em;
}


.menu-button-wrapper h3 {
    font-size: 1em;
    margin-top: unset !important;
    font-weight: 300;
}

.block-field-blockparagraphtextblockfield-text h3 {
    font-weight: 300;
    font-size: 1.2em;
}

.views-view-responsive-grid__item-inner {
    min-height: 100%;
    opacity: 1;
    transition: 2s ease;
    /* padding: 1em; */
}



.views-view-responsive-grid__item-inner:hover {
    background-color: #002b54;
    color: white;
}

.views-view-responsive-grid__item-inner:hover  h3 {
    color: white;
}

.menu-button-wrapper-claim {
    visibility: hidden;
}

.views-view-responsive-grid__item-inner:hover .menu-button-wrapper-title {
    display: none;
}

.views-view-responsive-grid__item-inner:hover .menu-button-wrapper-claim {
    visibility: visible;
}

.menu-button-wrapper
 {
    text-align: left;
}


.block-views-blocksuggestions-block-1 h2:before {
    right: .5em;
    margin-left: -50%;
}

.block-views-blocksuggestions-block-1 h2:after
 {
    left: .5em;
    margin-right: -50%;
}


.block-views-blocksuggestions-block-1 h2:before, .block-views-blocksuggestions-block-1 h2:after
 {
    background-color: #333;
    content: "";
    display: inline-block;
    height: 1px;
    position: relative;
    vertical-align: middle;
    width: 50%;
}


.block-views-blocksuggestions-block-1 h2 {
    overflow: hidden;
    text-align: center;
    font-size: 1em;
    margin-bottom: 2em;
}


.block-views-blocksuggestions-block-1 {
	margin-top: 6em;
	margin-bottom:3em;
	
}

.menu-button-wrapper a:hover {
	text-decoration: none;
}


b, strong {
    font-weight: bold;
    color: #002a5a;
}

/* custom styles */

.ctp-bg-grey {
    background-color: #f5f5f5;
}



/* News */

.ctp-news-col3 {
    padding: 2rem;
}
.ctp-news-col2 {
    padding: 2rem;
}

.view-news.view-id-news.view-display-id-block_2 .view-header {
    margin-bottom: 3em;
}

.news-front.title {
    font-size: 1.3em;
    font-weight: 500;
    text-transform: uppercase;
    color: #002b57;
    margin-bottom: 1em;
}

.block-field-blocknodenewstitle {
    display: inline-block;
}


.view.view-news.view-id-news.view-display-id-embed_2 .h2 {
    margin-top: 0;
}

.h2.content {
    margin-bottom: 0;
    margin-top: 0;
    font-weight: normal;
}

/* Block Sections */

/* Header */

header#header {
		width: 100%;
    position: absolute;
    background-color: transparent;
    transition: background-color 1.5s ease;
}

div#main {
    padding-top: 105px;
}

.field.field--name-field-headerimage img {
	width: 100%;
}

/* NAvbar Main */

body.no-fixed-header header#header {
    position: static !important;
}


.mm-wrapper--position-left .mm-slideout, .mm-wrapper--position-right .mm-slideout {
    transform: none !important;
    -webkit-transform: none !important;
}


.scrolled header#header {
    position: fixed;
    width: 100%;
    left: 0;
    right: 0;
    top: 0;
    background-color: white;
    z-index: 1;
    border-bottom: 1px solid #aaa;
    box-shadow: -2px 1px 3px 1px rgba(0,0,0,.3333);
}


.scrolled nav#navbar-main {
    padding-top: 0px;
    padding-bottom: 0;
}



button.navbar-toggler.collapsed {
    display: none;
}

.collapse:not(.show) {
    display: inherit;
}

#navbar-main {
    background-color: white;
}

.responsive-menu-toggle-icon {
    margin-top: 9px;
}

nav#navbar-main {
    padding-top: 25px;
    max-width: 1170px;
    margin-left: auto;
    margin-right: auto;
    padding-right: 30px;
    padding-left: 30px;
}




.navbar-expand-lg .navbar-nav .nav-link {
        padding-right: var(--bs-navbar-nav-link-padding-x);
        padding-left: var(--bs-navbar-nav-link-padding-x);
}

.navbar-expand-lg .navbar-nav a:hover, .navbar-expand-lg .navbar-nav a:focus {
    color: #002955;
    text-decoration: none;
}

.navbar-expand-lg .navbar-nav {
        flex-direction: row;
    }

.responsive-menu-toggle-icon:before, .responsive-menu-toggle-icon:after, .responsive-menu-toggle-icon span.icon {
    background: #23527c;

}

.responsive-menu-toggle-icon span.icon {
    left: 4px;
}

.responsive-menu-toggle-icon:before, .responsive-menu-toggle-icon:after {
    left: 4px;
}




.navbar-nav .nav-link.active, .navbar-nav .show>.nav-link {
    color: #23527c;
}

.nav-link {
    color: #23527c;
}

ul.clearfix.nav.navbar-nav {
    margin-left: 2em;
    font-size: 1.2;
    font-weight: 500;
    text-transform: uppercase;
}


div#block-ctp-languagedropdownswitcher .form-select {
    border: 0px solid #ced4da;
    background-color: #f5f5f5;
    width: 116px !important;
    padding: .375rem 1.25rem .375rem .75rem;
}

a.navbar-brand {
    margin-left: auto;
    display: flex;
}


.nav-link {
font-size: 1.2em;
}

/* Breadcrumbs */

div#block-ctp-breadcrumbs {
    padding-right: calc(var(--bs-gutter-x)* .5);
    padding-left: calc(var(--bs-gutter-x)* .5);
}

.ctp-breadcrumbs {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 8px 0px;
    margin-bottom: 15px;
    list-style: none;
    background-color: #f5f5f5;
    border-radius: 4px;
    padding-right: calc(var(--bs-gutter-x)* .5);
    padding-left: calc(var(--bs-gutter-x)* .5);
}

.ctp-breadcrumbs-wrapper {    
		padding-right: calc(var(--bs-gutter-x)* .5);
    padding-left: calc(var(--bs-gutter-x)* .5);
}

ol.breadcrumb {
    margin-bottom: 0;
}

div#block-ctp-breadcrumbs a {
    color: #23527c;
    text-decoration: none;
}


 /* custom ckeditor styles */
 
 .scection-divider a {
    text-decoration: none;
    color: #002B54;
}



/* Paragraphs */

/* Textblock */

.paragraph.paragraph--type--textblock {
    text-align: justify;
}


/* Menu */

div#off-canvas.mm-menu--opened {
    z-index: 9999;
}

/* Cite */

.blockquote-text {
    font-weight: 600;
    font-family: 'Montserrat';
    color: #002b54;
    font-size: 2em;
    max-width: 440px;
}



.blockquote-wrapper {
    margin-left: auto;
    margin-right: auto;
    width: 50%;
    position: relative;
    margin-bottom: 3em;
    margin-top: 3em;
}


.blockquote {
    border-top: 1px solid #002b54;
    border-bottom: 1px solid #002b54;
    padding: 1em 0;
}

.blockquote:after {
    position: absolute;
    content: "”";
    color: #002b54;
    font-size: 13em;
    line-height: 0;
    bottom: -60px;
    right: 30px;
}

.blockquote-author::before {
    content: "—";
}


/* Menu */

#block-ctp-responsivemenumobileicon .label {
    display: none;
}

/* Offcanvas */

.mm-panel, .mm-panels {
    background: #01315e;
}

.mm-menu_theme-dark {
    --mm-color-background: #01315e;
}



.mm-menu a, .mm-menu a:active, .mm-menu a:hover, .mm-menu a:link, .mm-menu a:visited {
    color: #ffffff;
    text-decoration: none;
    font-weight: 500;
}

.mm-btn:after, .mm-btn:before {
    border-color: #ffffff;
}

.mm-listitem {
    border-color: transparent;
}

.mm-navbar {
 border-color: transparent;
    }
    
.mm-menu--theme-light {
    --mm-color-background: none;
    --mm-color-border: rgb(0 0 0 / 0.15);
    --mm-color-icon: rgb(0 0 0 / 0.4);
    --mm-color-text: rgb(0 0 0 / 0.8);
    --mm-color-text-dimmed: rgb(0 0 0 / 0.4);
    --mm-color-background-highlight: rgb(0 0 0 / 0.05);
    --mm-color-background-emphasis: none;
    --mm-color-focusring: #06c;
}

/* Views Grid */

.paragraph.paragraph--type--textblock .views-view-responsive-grid__item-inner {
    text-align: left;
    text-transform: uppercase;
    /* padding: 1em; */
}

.views-view-responsive-grid__item-inner a:hover {
    color: white;
    text-decoration: none;
}

.ctp-grid-text
 {
    font-family: 'Montserrat';
    color: rgb(0, 43, 84);
}

.ctp-grid-text a {
	color: rgb(0, 43, 84);
}

.views-view-responsive-grid__item {
    min-height: 170px;
    overflow: hidden;
    max-height: 170px;
    background-color: #f6f6f6;
}

v.views-view-responsive-grid__item {
    max-height: 100%;
}


.ctp-grid-flex .views-view-responsive-grid__item {
    min-height: 170px;
    overflow: hidden;
    max-height: unset !important;
}

.ctp-grid-flex  .views-view-responsive-grid__item-inner:hover {
    background-color: inherit !important;
    color: inherit !important;
}

/*
.ctp-grid-wrapper {
    padding: 10px;
}
*/


.ctp-grid {
    padding: 1em;
    background-color: #f6f6f6;
    min-height: 170px;
    position: relative;
    opacity: 1;
    transition: 2s ease;
}

.ctp-grid-image {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    opacity: 0;
    transition: 2s ease;
}

.ctp-grid-image img {
    width: 100%;
    height: auto;
    padding: 10%;
}

.ctp-grid:hover .ctp-grid-image {
    opacity: 1;
}

a.ctp-grid-link {
    z-index: 1;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
}


.views-view-grid.horizontal.cols-4 .col-1 .ctp-grid-wrapper {
    padding-left: 0;
}

.ctp-grid:hover {
    background-color: transparent;
}

.ctp-grid:hover .ctp-grid-text {
    opacity: 0;
}

/* Language Switcher */
.custom-lang-dropdown {
  position: relative;
  width: 165px;
  cursor: pointer;
}

/* sichtbare Box */
.cld-visible {
    padding: 6px 30px 6px 12px;
    background: transparent;
    border: 0px solid #cfcfcf;
    border-radius: 6px;
    position: relative;
    line-height: 1.4;
}

/* ▼ Dreieck */
.cld-visible::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 10px;
  transform: translateY(-50%);
  width: 0;
  height: 0;
  border-left: 5px solid transparent;
  border-right: 5px solid transparent;
  border-top: 6px solid #000;
}

/* Liste */
.cld-list {
  list-style: none;
  padding: 0;
  margin: 4px 0 0 0;
  display: none;
  position: absolute;
  width: 100%;
  background: #fff;
  border: 1px solid #ddd;
  border-radius: 6px;
  z-index: 20;
}

.cld-list.open {
  display: block;
}

.cld-list li {
  padding: 8px 12px;
}

.cld-list li:hover {
  background: #eee;
}

button.dd-selected {
    border: 0 !important;
}

 .dd-select {
    border: 0px solid #cccccc !important;
    background: none repeat scroll 0 0 #eeeeee00 !important;
}

 .dd-selected {
    font-weight: 500 !important;
    color: #002a5a !important;
}

.dd-select button {
    background-color: unset !important;
}

.dd-pointer-down, .dd-pointer-up {
    -moz-border-bottom-colors: none;
    -moz-border-left-colors: none;
    -moz-border-right-colors: none;
    -moz-border-top-colors: none;
    border-color: #002a5a rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) !important;
}


 .dd-selected label, .dd-option {
    line-height: 1.4 !important;
    font-size: 0.929em !important;
}

.dd-option {
		padding: 6px !important;
    border-bottom: none !important;
}

.dd-option:hover, .dd-option:active, .dd-option:focus {
    color: #002a5a !important;
}



/* News */

.node--type-news.node--view-mode-preview .node__title {
    display: none;
}

.news-teaser {
    padding: 3.5em;
    border-radius: 6px;
    background-color: #f5f5f5;
}

.news-teaser .field--name-title {
    font-size: 1.3em;
    font-weight: 500;
    text-transform: uppercase;
    color: #002b57;
}


.news-teaser .block-field-blocknodenewstitle {
    margin-bottom: 1em;
}

.news-teaser .block-field-blocknodenewsfield-headerimage {
    display: flex
;
    align-items: flex-start;
    justify-content: flex-end;
}

.view.view-news.view-id-news.view-display-id-embed_3 .h2 {
    margin-top: 0;
}

.contextual-region.view.view-news.view-id-news.view-display-id-block_2 .h2 {
    margin-top: 0;
}

/* Leafelet */

.leaflet-tile {
    filter: grayscale(100%) brightness(1.1) contrast(1.2);
}

.leaflet-popup {
    min-width: 280px;
}

.ctp-grid-flex.view.view-map.view-id-map.view-display-id-attachment_1 .node__content {
    margin-top: 0;
}

.ctp-grid-flex.view.view-map.view-id-map.view-display-id-attachment_1 .node--view-mode-teaser {
    border-bottom: 0px solid #d3d7d9;
    margin-bottom: 30px;
    padding-bottom: 10px;
}

.ctp-grid-flex .views-view-responsive-grid__item-inner {
    padding: 0em;
}


 .leaflet-popup-content {
    margin: 0;
    line-height: 1.3;
    font-size: 13px;
    font-size: 1em;
    min-height: 1px;
    overflow: hidden;
}


.leaflet-container a.leaflet-popup-close-button {
    position: absolute;
    top: 0;
    right: 0;
    border: none;
    text-align: center;
    width: 15px;
    height: 15px;
    font: 12px / 15px Tahoma, Verdana, sans-serif;
    color: #002a5a;
    text-decoration: none;
    background: #ffffff;
    border-radius: 50px;
    margin-top: 5px;
    margin-right: 5px;
}

.leaflet-popup-content-wrapper, .leaflet-popup-tip {
    background: white;
    overflow: hidden;
    color: #333;
    box-shadow: 0 3px 14px rgba(0, 0, 0, 0.4);
}

.leaflet-popup-content-wrapper {
    padding: 1px;
    text-align: left;
    border-radius: 0px;
}

.leaflet-popup-content .views-field.views-field-title {
    margin-top: 8px;
    padding: 0 15px 15px 5px;
    font-weight: 300;
}


div#leaflet-map-view-map-embed-1 {
    min-width: 100vw;
    position: relative;
    position: relative;
    left: 50%;
    right: 50%;
    margin-left: -50vw;
    margin-right: -50vw;
    width: 100vw;
    min-width: 100vw !important;
    border-top: 1px solid #002b5442;
    border-bottom: 1px solid #002b5442;
}

.view.view-map.view-id-map.view-display-id-embed_1 .attachment-after {
    margin-top: 2em;
}


.marker-cluster-small {
    background-color: rgba(181, 226, 140, 0.6);
}

.marker-cluster-small div {
    color: white;
    background-color: rgb(0 42 90);
}

.marker-cluster-small {
    background-color: rgb(0 42 90 / 29%);
}



/* Slider */

.slider-title {
    font-size: clamp(2.5em, 3vw + 1em, 4em);
    font-family: 'Barlow';
    color: #23527c;
    text-transform: uppercase;
    text-align: left;
    font-weight: 300;
    letter-spacing: -2px;
    line-height: 1em;
}

.slider-bar {
    height: 4px;
    background-color: #2ed1ff;
}


.slider-subtitle {
    text-align: left;
    color: #23527c;
    font-family: 'Barlow';
}




section.row.region.region-hero-slider img {
    width: 100vw;
    height: auto;
}

nav#navbar-main {
    position: relative;
    z-index: 1;
    background-color: transparent;
    transition: height 0.5s ease;
}

section.row.region.region-hero-slider .paragraph__column {
    padding: 0;
}


.hero-slider-wrapper {
    position: absolute;
    width: 100vw;
    height: 100vh;
    overflow: hidden;
}

.hero-zoom {
	  animation: hero-zoomIn 40s linear infinite alternate;
    position: absolute;
    width: 100vw;
    height: 100vh;
    overflow: hidden;
}

section.row.region.region-hero-slider .slick-track {
    height: 100vh;
    width: 100vw;
}

.slide__content {
    max-width: 1170px;
    margin-left: auto;
    margin-right: auto;
    margin-top: 20vh;
    padding-left: 30px;
    padding-right: 30px;
    
}

.slide__content.position-21 {
		}


.slide__content.position-22 {
    margin-top: 20vh;
    height: 80vh;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    padding-bottom: 20vh;
    align-content: flex-end;
    align-items: flex-end;
}


.slide .slide__content--headings {
    display: inline-block;
}

.slide .slide__content--headings h2 {
  font-size: 4.5rem;
  margin: 10px 0;
}

.slide .slide__content--headings .animated {
  transition: all .5s ease;
}

/* Change animation presets */
.slider [data-animation-in] {
  opacity: 0;
  animation-duration: 1.5s;
  transition: opacity 0.5s ease 0.3s;
}

/* Dots */
.slick-dotted .slick-slider {
  margin-bottom: 30px;
}

.slick-dots {
  position: absolute;
  bottom: 25px;
  list-style: none;
  display: block;
  text-align: center;
  padding: 0;
  margin: 0;
  width: 100%;
}

.slick-dots li {
  position: relative;
  display: inline-block;
  margin: 0 5px;
  padding: 0;
  cursor: pointer;
}

.slick-dots li button {
  border: 0;
  display: block;
  outline: none;
  line-height: 0px;
  font-size: 0px;
  color: transparent;
  padding: 5px;
  cursor: pointer;
  transition: all .3s ease;
}

.slick-dots li button:hover,
.slick-dots li button:focus {
  outline: none;
}

.simple-dots .slick-dots li {
  width: 20px;
  height: 20px;
}

.simple-dots .slick-dots li button {
  border-radius: 50%;
  background-color: white;
  opacity: 0.25;
  width: 20px;
  height: 20px;
}

.simple-dots .slick-dots li button:hover,
.simple-dots .slick-dots li button:focus {
  opacity: 1;
}

.simple-dots .slick-dots li.slick-active button {
  color: white;
  opacity: 0.75;
}

.stick-dots .slick-dots li {
  height: 3px;
  width: 50px;
}

.stick-dots .slick-dots li button {
  position: relative;
  background-color: white;
  opacity: 0.25;
  width: 50px;
  height: 3px;
  padding: 0;
}

.stick-dots .slick-dots li button:hover,
.stick-dots .slick-dots li button:focus {
  opacity: 1;
}

.stick-dots .slick-dots li.slick-active button {
  color: white;
  opacity: 0.75;
}

.stick-dots .slick-dots li.slick-active button:hover,
.stick-dots .slick-dots li.slick-active button:focus {
  opacity: 1;
}

.hidden {
    visibility: hidden;
}

.scrolled header#header a.navbar-brand img {
    height: 16px;
}


/* Image Zoom */
@keyframes zoomInImage {
  from {
    transform: scale3d(1, 1, 1);
  }
  to {
    transform: scale3d(1.1, 1.1, 1.1);
  }
}

.zoomInImage {
  animation-name: zoomInImage;
}

@keyframes zoomOutImage {
  from {
    transform: scale3d(1.1, 1.1, 1.1);
  }
  to {
    transform: scale3d(1, 1, 1);
  }
}

.zoomOutImage {
  animation-name: zoomOutImage;
}

@keyframes hero-zoomIn {
    0% {
        transform: scale(1);
    }

    100% {
        transform: scale(1.5);
    }
}

/* Footer */

footer.site-footer {
    background-color: #f2f2f2;
    padding: 1em;
    min-height: 320px;
    margin-top: 3em;
}

.site-footer .content {
    color: #333;
}

.site-footer .content a {
    color: #23527c;
}

footer ul.clearfix.nav.navbar-nav {
    padding-left: 0;
    margin-left: 0;
    text-transform: inherit;
    display: flex;
    flex-direction: row;
    justify-content: flex-start;
    font-size: 15px;
    font-family: Barlow, "Helvetica Neue", Helvetica, Arial, sans-serif;
    font-weight: 300;
}

footer li.nav-item a:after {
    content: "|";
    color: #3f3f3f80;
    padding-right: 0.2em;
    padding-left: 0.2em;
}

footer ul li.nav-item:last-child a:after {
	display: none;
} 


.ctp-social-logos {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    align-content: flex-start;
    gap: 10px;
}

/* cta */

.view.view-map.view-id-map.view-display-id-embed_1 .attachment-after h2.node__title {
    display: none;
}


.ctp-card .h3 {
    margin-top: 15px;
    font-size: 1em;
    padding-left: 15px;
    padding-right: 15px;
    text-align: left;
}

.ctp-card-text,.ctp-card-fon, .ctp-card-mail {
	  padding-left: 15px;
    padding-right: 15px;
}

.ctp-card-url.content {
	  padding-left: 15px;
    padding-right: 15px;
    font-size: 0.9em;
}


.ctp-callout {
    padding: 1.5em 3.5em 0 3.5em;
    border-radius: 6px;
    background-color: #f2f2f2;
    margin-top: 3em;
}

.ctp-callout-buttons {
    border: 0;
    border-radius: 0;
    padding-bottom: 1.5em;
    background: #f2f2f2;
    padding-left: 1.5em;
    padding-right: 1.5em;
}

.ctp-callout.row {
    margin-left: 0;
    margin-right: 0;
}

.ctp-callout-buttons.row {
    margin-left: 0;
    margin-right: 0;
}

.ctp-social-logos img {
    max-height: 64px;
    width: auto;
}


.field.field--name-field-link-1, .field.field--name-field-link-2 {
    color: #fff;
    background-color: #01315e;
    border-color: #01386a;
    display: flex;
    justify-content: center;
    padding: 1em;
    margin-top: 1em;
}

.field.field--name-field-link-1 a, .field.field--name-field-link-2 a {
    color: white;
    text-decoration: none;
    text-transform: uppercase;
}

.field.field--name-field-link-1:hover, .field.field--name-field-link-2:hover  {
    color: #fff;
    background-color: #01315eb3;
    border-color: #01315eb3;
}

.view-eva.view-news.view-id-news.view-display-id-entity_view_1 .views-field-field-maintext a {
    color: #fff;
    background-color: #012b54;
    border-color: #2e6da4;
    text-decoration: none;
    font-size: 0.7em;
    padding: 5px 10px;
    border-radius: 5px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    align-content: center;
}

.view-eva.view-news.view-id-news.view-display-id-entity_view_1 .views-field-field-maintext a:hover {
    color: #fff;
    background-color: #01315eb3;
    border-color: #01315eb3;
	
}

/* Webform */

form#webform-submission-callback-add-form, form#webform-submission-system-inquery-add-form {
    padding-right: calc(var(--bs-gutter-x)* .5);
    padding-left: calc(var(--bs-gutter-x)* .5);
    padding-top: 2em;
}

.progress-step.is-active .progress-marker::before {
    background-color: #002b55;
}

.progress-step .progress-marker {
    color: #ffffff00;
}

.webform-progress-tracker .progress-step.is-active:hover .progress-marker::before {
    background-color: #777777;
}

/* Timeline */

.tl-slide .tl-slide-content-container .tl-slide-content {
    display: flex;
    vertical-align: middle;
    padding-left: 100px;
    padding-right: 100px;
    position: relative;
    max-width: 100%;
    user-select: text;
    flex-direction: row-reverse;
    align-items: flex-start;
    align-content: flex-start;
}



.tl-timeline h1, .tl-timeline h2, .tl-timeline h3, .tl-timeline h4, .tl-timeline h5, .tl-timeline h6 {
    font-family: 'Montserrat';
    text-transform: uppercase;
    font-weight: 300;
    font-size: 1.3em;
    line-height: 1.3em;
}

.tl-slide-media-only .tl-slide-content-container .tl-slide-content .tl-text {
    width: 100%;
    max-width: 100%;
    display: block;
    margin-left: auto;
    margin-right: auto;
    text-align: left;
}

.tl-media .tl-media-content-container .tl-media-content img, .tl-media .tl-media-content-container .tl-media-content embed, .tl-media .tl-media-content-container .tl-media-content object, .tl-media .tl-media-content-container .tl-media-content video {
    max-width: 100%;
    max-height: 100%;
    min-height: 300px;
}

/* Industry */

.menu-button-wrapper {
    text-align: left;
    padding: 1em;
    min-height: 250px;
}

.block-field-blocknodeindustryfield-did-you-know {
    background-color: #f2f2f2;
    padding: 15px;
    margin-top: 3em;
}

.block-field-blocknodeindustryfield-did-you-know h2 {
    font-size: 1em;
}



.block-field-blocknodeindustryfield-reference .h2 {
    margin-bottom: 2em;
}

.node--type-reference.node--view-mode-default .h3 {
    margin-top: 0;
    font-size: 1.2em;
}

.node--type-reference.node--view-mode-default {
    margin-bottom: 2em;
}



/* References */

.block-field-blocknodeindustryfield-reference .node__title {
    display: none;
}

.node--type-reference .field--type-entity-reference {
    margin-top: 0;
}

.node.node--type-reference .h2 {
    margin-top: 0;
}

/* Menu Buttons */

.ctp-button {
    background-color: #f2f2f2;
    min-height: 160px;
    padding: 15px;
}

.ctp-buttons .col-lg-4:first-child {
    padding-left: 0;
}

.ctp-buttons .col-lg-4:last-child {
    padding-right: 0;
}

.ctp-button  .views-field.views-field-field-content-reference a {
    color: #01315e;
    font-family: 'Montserrat';
    text-transform: uppercase;
}


.ctp-button  .views-field.views-field-field-content-reference a:hover {
    text-decoration: none;
}


/* Systems Solutions */

.ctp-sol-sidebar {
    margin-top: 4em;
}

.field.field--name-field-subtitle {
    text-transform: uppercase;
}

.node--type-solution .field--name-field-headerimage  {
    background-size: 20px 20px;
    background-image: linear-gradient(to right, #8080800a 1px, transparent 1px), linear-gradient(to bottom, #8080801f 1px, transparent 1px);
}

.block-field-blocknodesolutionfield-images .field__item {
    background-color: #f6f6f6;
    margin-bottom: 15px;
}

.ctp-sidebar {
    margin-top: 2em;
}


/* Modal */

.modal
 {
    background-color: #002b54bf;
}

.modal-dialog video {
    min-width: 100%;
    height: auto;
}

.modal-dialog {
    z-index: 9999999;
    width: 100%;
    position: relative;
    min-height: 100%;
    display: flex;
    align-items: center;
    align-content: center;
    justify-content: center;
}

.modal-backdrop {
    display: none;
}

.paragraph--type--bp-modal {
    background-color: #f6f6f6;
}

.paragraph--type--bp-modal .paragraph__column {
    display: flex;
    flex-direction: column;
    align-items: center;
    align-content: center;
    justify-content: space-evenly;
}

.paragraph--type--bp-modal h2 {
    text-align: center;
    font-size: 1em;
    text-transform: none;
    margin-top: 2em;
    margin-bottom: 1em;
}


/* Responsive */


@media (min-width: 1400px) {
    .container, .container-lg, .container-md, .container-sm, .container-xl, .container-xxl {
        max-width: 1170px;
    }
}

@media (max-width: 1200px) {
    .container, .container-md, .container-sm {
        max-width: 100%;
    }
}

@media (max-width: 920px) {

a.navbar-brand img {
    height: 20px;
    transition: height 0.5s ease;
}

}

@media (min-width: 921px) {

a.navbar-brand img {
    height: 34px;
    transition: height 0.5s ease;
}

}



@media (max-width: 740px) {
		.nav-link {
			font-size: 0.8em;
}

.node--type-reference.node--view-mode-default .h3 {
    margin-top: 1em;
}

}



@media (min-width: 741px) {
.nav-link {
font-size: 1.2em;
}

}

@media (max-width: 620px) {

nav#block-ctp-main-menu {
    display: none;
}

main#content {
    padding-left: 0;
    padding-right: 0;
}


}


@media (min-width: 560px) {
    .node .field--type-image {
        float: left;
        margin: 0;
    }
}


@media (min-width: 576px) {
    .modal-dialog {
        max-width: 720px;
        margin-right: auto;
        margin-left: auto;
    }
}


/* Menu Buttons */

.menu-button-view .views-view-responsive-grid {
    padding: 0;
}

.menu-button-view a:hover {
	text-decoration: none;
}


/* content preset */

.field.field--name-field-content-preset {
    margin-top: 3em;
}


/* other solutions */

.ctp-other-sol-teaser {
    margin-top: 3em;
    padding: 0;
    border-top: 1px solid #002a55;
}

.ctp-other-sol-teaser .views-view-responsive-grid__item-inner {
    padding: 0;
}

.ctp-other-sol-teaser  .views-view-responsive-grid__item {
    max-height: 170px;
    background-color: transparent;
}

.ctp-other-sol-teaser  .views-view-responsive-grid__item-inner:hover {
    background-color: transparent;
    color: inherit;
}


.ctp-other-sol-teaser  .views-view-responsive-grid {
	padding: 0;
}


/* Jobs */

.field.field--name-field-link.field--type-link.field--label-hidden.field__item a {
    background-color: #012b54;
    color: white;
    font-size: 4em;
    font-family: 'Montserrat';
    padding: 0.5em 1em;
    border-radius: 6px;
}

.block.block-layout-builder.block-field-blockparagraphbuttonfield-link {
    text-align: center;
}

.field.field--name-field-link.field--type-link.field--label-hidden.field__item a:hover {
    color: #fff;
    background-color: #286090;
    border-color: #204d74;
    text-decoration: none;
}


.node--type-solution .h1.content {
    text-transform: uppercase;
}

.contextual-region.view.view-taxonomy-term.view-id-taxonomy_term.view-display-id-page_1 .view-content {
    margin-top: 4em;
}

.block-field-blocknodesolutionfield-introduction {
    margin-top: 1em;
}


.site-footer .content a:hover, .site-footer .content a:focus {
    color: #000000;
    color: rgb(0 0 0 / 95%);
    text-decoration: none;
}