/**
 * @file
 * Subtheme specific CSS.
 */

/* =====================
   TYPOGRAPHY
   ===================== */
h1 {
  color: #00276e;
}

h2 {
  font-size: 2.5rem;
}

h3 {
  font-size: 1.5rem;
}

/* =====================
   FONT FACES
   ===================== */
/* oxygen-regular - latin-ext_latin */
@font-face {
  font-family: 'Oxygen';
  font-style: normal;
  font-weight: 400;
  src: url('../css/fonts/oxygen-v15-latin-ext_latin/oxygen-v15-latin-ext_latin-regular.eot');
  /* IE9 Compat Modes */
  src: local(''),
    url('../css/fonts/oxygen-v15-latin-ext_latin/oxygen-v15-latin-ext_latin-regular.eot?#iefix') format('embedded-opentype'),
    /* IE6-IE8 */
    url('../css/fonts/oxygen-v15-latin-ext_latin/oxygen-v15-latin-ext_latin-regular.woff2') format('woff2'),
    /* Super Modern Browsers */
    url('../css/fonts/oxygen-v15-latin-ext_latin/oxygen-v15-latin-ext_latin-regular.woff') format('woff'),
    /* Modern Browsers */
    url('../css/fonts/oxygen-v15-latin-ext_latin/oxygen-v15-latin-ext_latin-regular.ttf') format('truetype'),
    /* Safari, Android, iOS */
    url('../css/fonts/oxygen-v15-latin-ext_latin/oxygen-v15-latin-ext_latin-regular.svg#Oxygen') format('svg');
  /* Legacy iOS */
}

/* oxygen-700 - latin-ext_latin */
@font-face {
  font-family: 'Oxygen';
  font-style: normal;
  font-weight: 700;
  src: url('../css/fonts/oxygen-v15-latin-ext_latin/oxygen-v15-latin-ext_latin-700.eot');
  /* IE9 Compat Modes */
  src: local(''),
    url('../css/fonts/oxygen-v15-latin-ext_latin/oxygen-v15-latin-ext_latin-700.eot?#iefix') format('embedded-opentype'),
    /* IE6-IE8 */
    url('../css/fonts/oxygen-v15-latin-ext_latin/oxygen-v15-latin-ext_latin-700.woff2') format('woff2'),
    /* Super Modern Browsers */
    url('../css/fonts/oxygen-v15-latin-ext_latin/oxygen-v15-latin-ext_latin-700.woff') format('woff'),
    /* Modern Browsers */
    url('../css/fonts/oxygen-v15-latin-ext_latin/oxygen-v15-latin-ext_latin-700.ttf') format('truetype'),
    /* Safari, Android, iOS */
    url('../css/fonts/oxygen-v15-latin-ext_latin/oxygen-v15-latin-ext_latin-700.svg#Oxygen') format('svg');
  /* Legacy iOS */
}

/* play-regular - latin-ext_latin */
@font-face {
  font-family: 'Play';
  font-style: normal;
  font-weight: 400;
  src: url('../css/fonts/play-v17-latin-ext_latin/play-v17-latin-ext_latin-regular.eot');
  /* IE9 Compat Modes */
  src: local(''),
    url('../css/fonts/play-v17-latin-ext_latin/play-v17-latin-ext_latin-regular.eot?#iefix') format('embedded-opentype'),
    /* IE6-IE8 */
    url('../css/fonts/play-v17-latin-ext_latin/play-v17-latin-ext_latin-regular.woff2') format('woff2'),
    /* Super Modern Browsers */
    url('../css/fonts/play-v17-latin-ext_latin/play-v17-latin-ext_latin-regular.woff') format('woff'),
    /* Modern Browsers */
    url('../css/fonts/play-v17-latin-ext_latin/play-v17-latin-ext_latin-regular.ttf') format('truetype'),
    /* Safari, Android, iOS */
    url('../css/fonts/play-v17-latin-ext_latin/play-v17-latin-ext_latin-regular.svg#Play') format('svg');
  /* Legacy iOS */
}

/* play-700 - latin-ext_latin */
@font-face {
  font-family: 'Play';
  font-style: normal;
  font-weight: 700;
  src: url('../css/fonts/play-v17-latin-ext_latin/play-v17-latin-ext_latin-700.eot');
  /* IE9 Compat Modes */
  src: local(''),
    url('../css/fonts/play-v17-latin-ext_latin/play-v17-latin-ext_latin-700.eot?#iefix') format('embedded-opentype'),
    /* IE6-IE8 */
    url('../css/fonts/play-v17-latin-ext_latin/play-v17-latin-ext_latin-700.woff2') format('woff2'),
    /* Super Modern Browsers */
    url('../css/fonts/play-v17-latin-ext_latin/play-v17-latin-ext_latin-700.woff') format('woff'),
    /* Modern Browsers */
    url('../css/fonts/play-v17-latin-ext_latin/play-v17-latin-ext_latin-700.ttf') format('truetype'),
    /* Safari, Android, iOS */
    url('../css/fonts/play-v17-latin-ext_latin/play-v17-latin-ext_latin-700.svg#Play') format('svg');
  /* Legacy iOS */
}

/* MATERIAL ICONS */
@font-face {
  font-family: 'Material Icons';
  font-weight: 400;
  font-style: normal;
  src: local('Material Icons'), local('MaterialIcons-Regular'),
    url('../css/fonts/MaterialIcons-Regular.ttf') format('truetype');
}

/* =====================
   BASE ELEMENTS
   ===================== */
body {
  background-color: #ddd;
  font-family: 'Oxygen', sans-serif;
}

a,
.link {
  color: #0071b3;
  text-decoration: none;
}

.node__content {
  font-size: 1.2em;
  line-height: 1.5;
  color: #333;
}
.views-field-body {font-size: 1.1em}
/* =====================
   NAVBAR TOP
   ===================== */
#navbar-top {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  width: 100%;
}

#navbar-top .nav-link .is-active {
  color: #8dc157;
  border-bottom: 2px dotted #8dc155;
}

.region-top-region .block-language-blocklanguage-interface .nav-link .is-active {
  color: lightblue;
}

.nav-link--de-fuer-arbeitgeber-stellenanzeigen-tschechien-schalten.is-active, .nav-link--cs-pro-zamestnavatele-inzerce.is-active {
  color: #8dc157;
  border-bottom: 2px solid
}

/* =====================
   MAIN MENU
   ===================== */
#block-boot-sub-main-menu .navbar-nav .nav-item a {
  color: #032373;
  font-size: 1.2em;
  font-family: 'Play';
  padding: 0 10px;
  margin-right: 20px;
}

#block-boot-sub-main-menu .navbar-nav .nav-item a.active {
  color: #8dc155;
  border-bottom: 2px solid #8dc155;
  padding-bottom: 5px;
  /* Add space between text and underline */
  margin-bottom: -7px;
  /* Offset the padding to maintain layout */
}

#block-boot-sub-main-menu .navbar-nav .nav-item a:hover {
  /* Remove text-decoration-thickness since it has spotty browser support */
  text-decoration: none;
  /* Remove default underline */
  border-bottom: 2px solid #032373;
  /* Use border instead for consistent appearance */
  padding-bottom: 5px;
  /* Add space between text and underline */
  margin-bottom: -7px;
  /* Offset the padding to maintain layout */
}

/* =====================
   TOP REGION
   ===================== */
.region-top-region {
  background-color: #eee;
  border-bottom: 1px solid #ddd;
  display: flex;
  justify-content: flex-end;
  align-items: center;
  padding-right: 15px;
}

/* SPRACH_SWITCHER NAV */
.region-top-region .block-language-blocklanguage-interface,
.region-top-region .nav-link {
  margin: 0;
  display: inline-flex;
}

.region-top-region .nav-link {
  color: #fff;
  background: #8dc157;
}

.region-top-region .block-language-blocklanguage-interface .nav-link {
  background-color: #fff;
}

/* =====================
   HEADER
   ===================== */
.navbar-brand .img-fluid {
  max-width: 90%;
  height: auto;
}

.navbar .site-name-slogan {
  display: block;
  font-family: 'Play', sans-serif;
  margin-left: -20px;
  margin-right: 0;
  margin-bottom: 0;
  font-size: 1.3em;
  color: var(--site-name-slogan-color);
  float: left;
  padding: 10px;
  margin-top: -10px;
  text-align: center
}

/* =====================
   HIGHLIGHTED
   ===================== */
.highlighted {
  background-color: #032373;
  border-top: 8px solid #82bb46;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  margin: 0 auto;
  width: 100%;
  padding: 50px;
  box-sizing: border-box;
  --bs-navbar-padding-x: 0;
  --bs-navbar-padding-y: 1rem;
  --bs-navbar-color: rgba(0, 0, 0, 0.55);
  --bs-navbar-hover-color: rgba(0, 0, 0, 0.7);
  --bs-navbar-disabled-color: rgba(0, 0, 0, 0.3);
  --bs-navbar-active-color: rgba(0, 0, 0, 0.9);
  --bs-navbar-brand-padding-y: 0.3125rem;
  --bs-navbar-brand-margin-end: 1rem;
  --bs-navbar-brand-font-size: 1.25rem;
  --bs-navbar-brand-color: rgba(0, 0, 0, 0.9);
  --bs-navbar-brand-hover-color: rgba(0, 0, 0, 0.9);
  --bs-navbar-nav-link-padding-x: 0.5rem;
  --bs-navbar-toggler-padding-y: 0.25rem;
  --bs-navbar-toggler-padding-x: 0.75rem;
  --bs-navbar-toggler-font-size: 1.25rem;
  --bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%280, 0, 0, 0.55%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
  --bs-navbar-toggler-border-color: rgba(0, 0, 0, 0.1);
  --bs-navbar-toggler-border-radius: 0.375rem;
  --bs-navbar-toggler-focus-width: 0.25rem;
  --bs-navbar-toggler-transition: box-shadow 0.15s ease-in-out;
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  padding: var(--bs-navbar-padding-y) var(--bs-navbar-padding-x);
  background-image: var(--bs-gradient);
}

/* =====================
   SEARCH BLOCK
   ===================== */
#block-boot-sub-exposedformangebote-suchepage-1 {
  display: flex;
  width: 30%
}

/*Flaggenblock*/
#block-boot-sub-views-block-hauptkategorien-cards-block-3 {
  margin: .6% 0 0 27%;
  float: left
}

.view-hauptkategorien-cards .views-view-grid img {
  width: 45px;
  border-radius: 10px;
  margin: 3px;
  z-index: 1
}

/*Suchfenster Block*/
#views-exposed-form-angebote-suche-block-1 {
  margin: 20px 30% 0 0;
  float: right;
  z-index: -1
}

#edit-search-api-fulltext,
#edit-search-api-fulltext--2 {
  background: #fff;
  border: 1px solid #ccc;
  border-radius: 10px;
  padding: 10px;
  margin: 10px 0 0 0;
  width: 80%
}

#edit-submit-angebote-suche.btn-sm.btn-secondary {
  margin: -25px 0 0 -60px;
  height: 42px;
  width: 80px
}


/* =====================
   GEOMAP FRONT
   ===================== */
.featured-top__inner {
  width: 100%;
  max-width: 100%;
  margin: 0px;
  padding: 0;
}

.featured-top__inner .block-views-blockfront-block-2 {
  border-top: 1px solid #fff
}

/* =====================
   HAUPTKATEGORIEN
   ===================== */
.hauptkategorien {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 10px 10px 0 10px;
  height: 100%;
  box-sizing: border-box;
  z-index: 1;
}

.hauptkategorien .card {
  height: 100% !important;
  border-bottom: 5px solid #8bc34a;
  position: relative; /* Required for absolute positioning of children */
}

.hauptkategorien .card-body {
  margin: 0;
  text-align: center;
  padding: 10px;
  position: absolute;
  background-color: rgba(255,255,255, .8);
  width: 100%;
  bottom: 0; /* Position at the bottom */
  left: 0; /* Ensure horizontal alignment */
}

.hauptkategorien .card-text {
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  /* Anzahl der Zeilen */
  -webkit-box-orient: vertical;
  max-height: 4.5em;
  /* Ungefähr 3 Zeilen */
  line-height: 1.2;
}

/* Card Link Improvements */
.hauptkategorien .card a,
.block-views-blockbasisinfo-block-5 .card a,
.block-views-blockfront-block-6 .card a {
  color: #032373; /* Consistent with your site color scheme */
  font-weight: 500; /* Medium weight for better visibility */
  text-decoration: none; /* Remove underlines for cleaner look */
  display: block; /* Make the entire area clickable */
  transition: all 0.2s ease; /* Smooth transitions */
}



/* Improve contrast for card body text on semi-transparent backgrounds */
.hauptkategorien .card-body {
  background-color: rgba(255, 255, 255, 0.9); /* More opaque for better readability */
  text-shadow: 0 0 2px rgba(255, 255, 255, 0.8); /* Text shadow for better contrast */
}

/* Better visual focus indicator for accessibility */
.hauptkategorien .card a:focus,
.block-views-blockbasisinfo-block-5 .card a:focus,
.block-views-blockfront-block-6 .card a:focus {
  outline: 2px solid #8dc155; /* Visible focus outline using your green */
  outline-offset: -2px; /* Inset the outline */
}

/* CARDS BEI BASISINFO */
#block-boot-sub-views-block-basisinfo-block-5 .card-text {
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  /* Anzahl der Zeilen */
  -webkit-box-orient: vertical;
  max-height: 4.5em;
  /* Ungefähr 3 Zeilen */
}

/* =====================
   CONTENT
   ===================== */
.region--top h2 {
  margin: 0;
  padding: 0;
  text-align: center;
  border-bottom: 5px solid #8bc34a;
  border-radius: 0;
  font-family: 'play', sans-serif;
}

.block-system-main-block h2 {
  margin: 50px 0;
  padding: 0;
  text-align: center;
  border-bottom: 5px solid #8bc34a;
  border-radius: 0;
  font-family: 'play', sans-serif;
}

/* =====================
   FRONTPAGE
   ===================== */


/* Front Top-Angebote */

.block-views-blockfront-block-3 .views-view-responsive-grid__item {
  border: 1px solid #bfdcf2;
  box-shadow: 3px 1px 5px #eee;
  padding: 0px;
  border-radius: 5px;
  position: relative;
  min-height: 240px;
}

.block-views-blockfront-block-3 .views-field-field-top-angebot .material-icons {
  float: right;
  margin: 0px 0px 0 15px;
  font-size: 1em;
  color: #8dc157;
}

.block-views-blockfront-block-3 .views-field-field-logo {
  display: flex;
  justify-content: left;
  align-items: center;
  text-align: left;
  margin: 10px 0;
  padding: 5px;
  max-height: 100px;
  box-sizing: border-box;
  border-top: 1px solid #eee
}

.block-views-blockfront-block-3 .views-field-nothing {
  font-size: .8em;
  color: #999;
  background-color: #f4f8ff;
  padding: 0 5px 5px;
  border-radius: 5px 5px 0 0;
  border-bottom: 1px solid #eee
}

.block-views-blockfront-block-3 .views-field-title {
  padding: 5px
}

.block-views-blockfront-block-3 .views-field-title h5 {
  font-size: 1em;
  margin-top: 5px
}

.block-views-blockfront-block-3 .views-view-responsive-grid__item .views-field-field-logo {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  border-top: 1px solid #eee;
}

/*FRONT TOP Arbeitgeber*/
/* Adding the same styles for block-views-blockfront-block-5 */
.block-views-blockfront-block-5 .views-view-responsive-grid__item {
  border: 1px solid #bfdcf2;
  box-shadow: 3px 1px 5px #eee;
  padding: 0px;
  border-radius: 5px;
  position: relative;
  min-height: 240px;
}

.block-views-blockfront-block-5 .views-field-field-top-angebot .material-icons {
  float: right;
  margin: 0px 0px 0 15px;
  font-size: 1em;
  color: #8dc157;
}

/* Combined logo styles */
.block-views-blockfront-block-5 .views-field-field-logo {
  display: flex;
  justify-content: left;
  align-items: center;
  text-align: left;
  margin: 10px 0;
  padding: 5px;
  max-height: 100px;
  box-sizing: border-box;
  border-top: 1px solid #eee;
}

.block-views-blockfront-block-5 .views-view-responsive-grid__item .views-field-field-logo {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
}

.block-views-blockfront-block-5 .views-field-field-firma-name .field-content {
  font-size: .9em;
  padding: 10px;
  border-bottom: 1px solid #eee
}

.block-views-blockfront-block-5 .views-field-title h5 {
  font-size: .9em;
  min-height: 145px;
  padding: 10px
}

/*FRONT BASISINFO CARDS*/
.block-views-blockbasisinfo-block-6 .card {
  height: 225px !important;
  border-bottom: 5px solid #8bc34a;
  margin: 0 10px
}

.block-views-blockfront-block-6 .card-title,
.card-text {
  font-size: .9em
}

.block-views-blockfront-block-6 .card-title {
  border-bottom: 1px solid #eee;
  padding-bottom: 10px
}

/* =====================
   FULLNODE
   ===================== */
.block-system-main-block {
  margin: 5% 0;
}

/* Fullnode-Titles */
.region--top {
  margin-bottom: 50px;
}

.fullnode-body .views-field-field-image {
  text-align: center;
  background-color: #eaf0fc;
  margin-bottom: 50px;
}

/* ADRESSE-Kasten */
.col-sm-6 .fullnode-tabelle-adresse {
  padding: 20px;
  background-color: #F4F8FF;
  margin-top: -40px;
}

.col-sm-6 .fullnode-tabelle-adresse .views-field {
  padding: 0 0 5px 0;
}

.col-sm-6 .fullnode-tabelle-adresse .material-icons {
  vertical-align: middle;
  color: #8dc155;
}

.col-sm-6 .fullnode-tabelle-adresse .fullnode-tabelle-adresse {
  margin: 40px 0 0;
  padding: 50px;
}

.col-sm-6 .fullnode-tabelle-adresse .views-field-field-firma-name {
  text-align: left;
  margin: 0px 0 0;
}

.col-sm-6 .fullnode-tabelle-adresse .views-field-nothing {
  border-bottom: 2px solid #8dc155;
  padding: 0 0 10px;
  margin: 0 0 10px 0;
}

.col-sm-6 .fullnode-tabelle-adresse .views-field-field-logo {
  float: right;
  text-align: center;
  margin: -20% 0 0px 0;
}

.col-sm-6 .fullnode-tabelle-adresse .views-field-field-logo img {
  width: 80%;
  padding: 30px;
  background: #fff;
}

/* GEOMAP */
.col-sm-6 .geolocation-map-container {
  border-top: 3px solid #8dc157;
  border-radius: 0.4rem;
}

/* INFOKASTEN */
.col-sm-6 .fullnode-tabelle-info {
  padding: 0 10px;
}

caption {
  font-weight: 700;
  padding-top: .5rem;
  padding-bottom: .5rem;
  color: #666;
  text-align: center;
  margin: 20px 0;
  background: #f4f8ff;
}

table {
  font-size: 1.0em;
  caption-side: top;
}

table tr th {
  background: #fff;
  border-bottom-style: none;
  border: 1px solid #eee;
  color: #666;
  text-align: right;
  padding: 10px 4px 9px;
}

tr td {
  border: 1px solid #fff;
  text-align: left;
  background: #f4f8ff;
}

/* WEBFORM */
.block-inline-blockwebform {
  border-top: 10px solid #8dc155;
  border-radius: 10px;
}

/* =====================
   LÄNDER/HAUPTKATEGORIEN TAX TERM PAGES
   ===================== */
.col-sm-3 {
  flex: 0 0 auto;
  width: 25%;
}

.col-sm-3 .block-field-blocktaxonomy-termberufedescription {
  font-size: 1.4em;
  color: #ccc;
  text-align: right;
}

.col-sm-3 .field--name-field-flagge {
  display: flex;
  justify-content: right;
}

.col-sm-3 .views-field-description__value .field-content {
  font-size: 1.2em;
  color: #ccc;
  text-align: right;
}

.col-sm-3 .views-field-field-flagge {
  display: flex;
  justify-content: right;
}

.col-sm-3 .views-field-field-tax-image img {
  float: right;
  margin: 20px 0;
  border-radius: .4rem;
}

.col-sm-9 .geolocation-map-container {
  margin: 0 0 20px;
  border: 1px solid #82bb46;
  border-radius: 0.4rem;
}

.col-sm-9 .views-field-title h3 {
  margin: 10px 0;
}

.col-sm-9 .views-field-field-untertitel h4 {
  color: inherit;
  font-size: 1em;
}

.col-sm-9 .view-header h2 {
  margin-bottom: 20px;
  border-bottom: 5px solid #8bc34a;
  font-family: 'play', sans-serif;
}

.col-sm-9 .views-field-field-logo {
  float: right;
  padding: 10px;
  max-width: 130px;
  border: 0;
  margin: -8.0% 0 0;

}

.col-sm-9 .views-field-field-untertitel {
  max-width: 90%
}

.col-sm-9 .views-field-nothing {
  background-color: #f4f8ff;
  border-bottom: 3px solid #8dc157;
  margin-top: 30px
}



/* =====================
   ALLE STELLENANGEBOTE
   ===================== */
/*GEOMAP*/
.block-views-blockalle-angebote-block-3 .geolocation-map-container {
  margin-top: -50px
}



/*EXPOSED FORM*/
#views-exposed-form-alle-angebote-block-1 {
  background-color: #F4F8FF;
  display: flex;
  justify-content: center;
  width: 100vw;
  max-width: 100%;
  box-sizing: border-box;
  margin: 0px 0 0;
  padding: 15px;
  border-radius: 0 0 0 0
}

#views-exposed-form-alle-angebote-block-1 .form-select {
  background-color: #fff;
  width: 16vw;
  box-sizing: border-box;
  margin: 0 auto;
  padding: 11px;
  border: 1px solid #ccc;
  border-radius: 5px;
}

#views-exposed-form-alle-angebote-block-1 .form-type-select {
  margin: 0 20px
}

#views-exposed-form-alle-angebote-block-1 .form-type-select label {
  color: #999;
  font-size: .8em
}

.col-sm-3 .block-views-blockfront-block-4 h2 {
  font-size: 1.4em;
}

/* Linke Spalte col-sm-3 */
.col-sm-3 .block-views-blockfront-block-4 .card {
  margin-top: 20px;
  padding: 3px;
}

.col-sm-3 .block-views-blockfront-block-4 .card-title {
  font-family: 'Play';
  font-size: 1em;
  border-bottom: 1px solid #eee;
  padding-bottom: 10px
}

/* rechte Spalte */
/*TOP ANGEBOTE*/
.top-attachment .views-field-nothing {
  background: #edf4e6;
  font-family: 'Play'
}

#views-bootstrap-alle-angebote-block-4 .views-field-nothing {
  background: #edf4e6;
  font-family: 'Play'
}

.top-attachment .topp {
  float: right;
  margin-right: 20px;
  color: #032373
}

.top-attachment .topp .material-icons {
  color: #8dc155;
  font-size: 1.5em;
}

/* =====================
   LAYOUT FOR TOP ATTACHMENT
   ===================== */
.top-attachment .grid.views-view-grid.row {
  background: #F8FAFF;
  margin: 0;
  padding: 0
}

.top-attachment .views-row {
  display: flex;
  flex-wrap: nowrap;
  align-items: flex-start;
  position: relative;
  margin-bottom: 20px;
  padding: 10px;
  background-color: #fff;
  border-radius: 5px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

.top-attachment .views-field-field-logo {
  flex: 0 0 150px;
  max-width: 150px;
  margin-left: 10px;
  align-self: center;
  text-align: center;
}

.top-attachment .views-field-field-logo img {
  max-width: 100%;
  height: auto;
  object-fit: contain;
}

.top-attachment .views-field-title,
.top-attachment .views-field-field-untertitel {
  padding-right: 160px;
  /* Make space for the logo */
}

.top-attachment .views-field-title h3 {
  margin-top: 8px;
  margin-bottom: 8px;
}

.top-attachment .views-field-field-untertitel {
  margin-bottom: 10px;
}

/* Responsive adjustment for small screens */
@media (max-width: 767px) {
  .top-attachment .views-row {
    flex-direction: column;
  }

  .top-attachment .views-field-field-logo {
    flex: none;
    max-width: 100%;
    margin: 15px 0 0;
    order: 2;
  }

  .top-attachment .views-field-title,
  .top-attachment .views-field-field-untertitel {
    padding-right: 0;
  }
}

/* =====================
   VIEWS GRID LAYOUT FOR ANGEBOTE
   ===================== */
#views-bootstrap-alle-angebote-block-1 .views-row {
  display: flex;
  flex-wrap: nowrap;
  align-items: flex-start;
  position: relative;
  margin-bottom: 20px;
  padding: 10px;
  background-color: #fff;
  border-radius: 5px;
  box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
}

#views-bootstrap-alle-angebote-block-1 .views-field-field-logo {
  flex: 0 0 150px;
  max-width: 150px;
  margin-left: 10px;
  align-self: center;
  text-align: center;
}

#views-bootstrap-alle-angebote-block-1 .views-field-field-logo img {
  max-width: 100%;
  height: auto;
  object-fit: contain;
}

#views-bootstrap-alle-angebote-block-1 .views-field-title,
#views-bootstrap-alle-angebote-block-1 .views-field-field-untertitel {
  padding-right: 160px;
  /* Make space for the logo */
}

#views-bootstrap-alle-angebote-block-1 .views-field-title h3 {
  margin-top: 8px;
  margin-bottom: 8px;
}

#views-bootstrap-alle-angebote-block-1 .views-field-field-untertitel {
  margin-bottom: 10px;
}

/* Responsive adjustment for small screens */
@media (max-width: 767px) {
  #views-bootstrap-alle-angebote-block-1 .views-row {
    flex-direction: column;
  }

  #views-bootstrap-alle-angebote-block-1 .views-field-field-logo {
    flex: none;
    max-width: 100%;
    margin: 15px 0 0;
    order: 2;
  }

  #views-bootstrap-alle-angebote-block-1 .views-field-title,
  #views-bootstrap-alle-angebote-block-1 .views-field-field-untertitel {
    padding-right: 0;
  }
}

/* =====================
   BASISINFO-LIST
   ===================== */
/* BASISINFO LISTE */
/* col left */
.block-views-blockbasisinfo-block-4 .views-field-field-untertitel h5 {
  font-size: .8em;
  color: #999
}

.block-views-blockbasisinfo-block-4 .views-field-title h4 {
  font-size: 1.1em
}

/*COL RIGHT*/

#views-exposed-form-basisinfo-block-8 {
  background-color: #EDF4E6;
  width: 100%;
  display: flex;
  justify-content: center;
  padding: 15px
}


#views-exposed-form-basisinfo-block-8 .form-select {
  background-color: #fff;
  width: 16vw;
  box-sizing: border-box;
  margin: 0 auto;
  padding: 11px;
  border: 1px solid #ccc;
  border-radius: 5px;
}

#views-exposed-form-basisinfo-block-8 .form-type-select {
  margin: 0 20px
}

#views-exposed-form-basisinfo-block-8 .form-type-select label {
  color: #999;
  font-size: .8em
}

.col-sm-9 .view-id-basisinfo .views-field-nothing {
  background-color: rgb(237, 244, 230);
}

/* BASISINFO FULLNODE */
.node--type-basisinfo .views-field-nothing {
  background-color: rgb(237, 244, 230);
  margin: 20px 0;
  padding: 0 10px;
}

.node--type-basisinfo .views-field-field-untertitel h4 {
  color: #ccc;
  font-size: 1.2em;
  margin-bottom: 20px;
}

.node--type-basisinfo .views-field-nothing-1 {
  font-size: .8em;
  margin-bottom: 20px;
  border-bottom: 1px solid;
}

.node--type-basisinfo .col-sm-3 {
  background-color: #edf4e6;
  padding: 10px;
}

/*BASISINFO TAX LIST*/
.vocabulary-z-kladn-informace .views-field-nothing {
  background-color: rgb(237, 244, 230);
  margin: 20px 0;
  padding: 0 10px;
}

.vocabulary-z-kladn-informace .col-sm-3 {
  background-color: rgb(237, 244, 230);
  padding: 10px
}

/* =====================
    FÜR ARBEITGEBER
    ====================== */
.block-field-blocknodepagebody .field--name-body img {
  display: flex;
  float: left;
  padding-right: 20px;
}

.block-field-blocknodepagebody h3 {
  margin: 55px;
  text-align: center;
  background-color: #edf4e6;
  padding: 0
}