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

.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight: 700;
}

@media (min-width: 1200px) {
  .h2,
  h2 {
    font-size: 1.6rem;
  }

  .h3,
  h3 {
    font-size: 1.4rem;
  }

  .h4,
  h4 {
    font-size: 1.2rem;
  }
}

a {
  text-decoration: none;
}

article p a,
article table tr td a,
article ul li a {
  color: #33982a;
}

article p + ul {
  margin-top: -15px;
}

#header {
  background-color: #ffffff;
}

.navbar-brand img {
  height: 100px;
}

@media (max-width: 767px) {
  .block-mh-main-navigation-block input[name="keys"] {
    width: 120px;
  }
}

@media (max-width: 480px) {
  #navbar-main .navbar-brand img {
    height: 35px;
    margin-top: 11px;
  }
}

#CollapsingNavbar a {
  color: #003163;
  font-size: 1.2rem;
}

#block-suchbutton button[type="submit"] {
  font-size: 1.2rem;
  color: #003163;
  background: transparent;
  border: 0;
}

#block-suchbutton input[name="keys"] {
  background: #f0f0f0;
  border: 0;
  padding: 5px;
}

#block-views-block-orte-block-1 h2 {
  display: none;
}

body.node--type-beitrag {
  font-size: 18px;
}

body.node--type-beitrag .field--type-image {
  width: 100%;
}

body.node--type-beitrag .field--name-field-bild img {
  width: 100%;
  height: 20em;
  object-fit: cover;
}

.view-display-id-block_1 img,
.view-display-id-block_2 img,
#culturebase-events img,
#block-views-block-themen-block-1 img,
#block-views-block-orte-block-1 img,
.view-id-menues.view-display-id-block_1 img {
  width: 100%;
  height: 15em;
  object-fit: cover;
}

.view-id-culturebase_events .views-col {
  padding-left: 12px;
  padding-right: 12px;
}

#block-views-block-veranstaltungen-block-1 img,
#block-views-block-aktuelles-block-1 img,
.view-id-aktuelles.view-display-id-page_1 img,
.view-id-veranstaltungen.view-display-id-page_1 img,
.view-id-taxonomy_term.view-display-id-page_1 img,
.block-field-blocknodebeitragfield-bildergalerie
  .field--name-field-bildergalerie
  img {
  width: 100%;
  height: 10em;
  object-fit: cover;
}

.main-content
  .block-field-blocktaxonomy-termortefield-tax-einleitung
  .field--name-field-tax-einleitung
  .field__label {
  display: none;
}

.main-content .view-taxonomy-term .feed-icons {
  display: none;
}

#block-views-block-veranstaltungen-block-1,
#block-views-block-aktuelles-block-1,
#block-views-block-orte-block-1,
#block-kultur-views-block-themen-block-1 {
  margin-top: 2em;
}

#block-views-block-orte-block-1 .views-field-name,
#block-views-block-themen-block-1 .views-field-name,
/*#block-views-block-menues-unterseiten-block-1 .views-field-title,
#block-views-block-menues-unterseiten-block-2 .views-field-title,*/
.view-id-menues.view-display-id-block_1 .views-field-title {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #f0f0f0;
  font-size: 22px;
  height: 2.5em;
  line-height: 1em;
  text-align: center;
}

.view-id-menues.view-display-id-block_1 .field--type-image img {
  margin: 0;
}

#block-socialmediakanale {
  margin: 0;
}

#block-socialmediakanale a img.social-media {
  float: left;
  width: 40px;
  height: 40px;
  margin-right: 20px;
}

.block-field-blocknodebeitragfield-bild img {
  width: 100%;
  height: 20em;
  object-fit: cover;
}

#block-kultur-content .node__content .field--name-body img {
  max-width: 100%;
  height: auto;
}

.block-field-blocknodebeitragfield-bildergalerie
  .field--name-field-bildergalerie {
  display: flex;
  flex-wrap: wrap;
  font-size: 0.7em;
}

.block-field-blocknodebeitragfield-bildergalerie .field--type-image {
  float: none;
}

#block-eventblock img {
  width: 100%;
  height: 15em;
  object-fit: cover;
}

.block.block-layout-builder.block-field-blocknodebeitragfield-video:after {
  content: "";
  display: block;
  clear: left;
}

.site-footer {
  color: #fff;
  margin-top: 2em;
}

.site-footer .nav-link,
.site-footer .content,
.site-footer .content a,
.site-footer a,
.site-footer h2 {
  color: #fff;
}

.site-footer .content ol:not(.menu),
.site-footer .content ul:not(.menu) {
  padding-left: 1.1em;
}

#block-views-block-taxonomy-term-block-1 {
  margin-top: 80px;
}

#block-views-block-themen-block-2 .views-row,
#block-views-block-orte-block-2 .views-row {
  margin: 0 !important;
  flex: none;
  width: auto;
}

.site-footer .block {
  border: none;
}

.site-footer #block-views-block-themen-block-2 .item-list ul li,
.site-footer #block-views-block-orte-block-2 .item-list ul li {
  padding: 0;
}

.site-footer div.item-list {
  padding-left: 0;
}

.site-footer__top .content li a {
  padding-left: 0;
  text-indent: 0;
}

#block-views-block-anschrift-block-2 h2 {
  text-transform: uppercase;
}

#block-views-block-anschrift-block-2 .block {
  margin: 0;
  padding: 0;
}

#block-views-block-anschrift-block-2 .content {
  font-size: 0.857em;
}

nav#block-kultur-footer {
  margin: 20px 0;
  padding: 10px;
}

nav#block-kultur-footer li.nav-item a {
  border-bottom: 1px solid #555;
  border-color: rgba(255, 255, 255, 0.15);
  line-height: 1.2;
  padding: 0.8em 2px 0.8em 0;
  font-size: 0.857em;
}

.site-footer__top #block-kultur-footer li a:hover,
.site-footer__top #block-kultur-footer li a:focus {
  background-color: #1f1f21;
  background-color: rgba(255, 255, 255, 0.05);
  text-decoration: none;
}

#block-stadtmulheimanderruhrlogo {
  margin: 0;
}

.site-footer__top #block-stadtmulheimanderruhrlogo a {
  display: inline-block;
  margin: 0 0 35px 0;
}

.site-footer__top #block-stadtmulheimanderruhrlogo a img {
  width: 90%;
}

.site-footer__top #block-stadtmulheimanderruhrlogo a img#logo-mh {
  width: 60%;
}

.pswp__ui .pswp__dynamic-caption {
  background-color: #000;
}

.pswp__dynamic-caption__center .read_more {
  color: #fff;
  word-break: keep-all;
  white-space: nowrap;
}

/* Small devices (landscape phones, less than 768px) */
@media (max-width: 767.98px) {
}

/* Medium devices (tablets, 768px and up) */
@media (min-width: 768px) {
  #content > .section:first-child > .region {
    border-top: 7px solid #33982a;
    margin-top: 5px;
    padding-top: 20px;
  }

  .path-frontpage #block-views-block-veranstaltungen-block-1 {
    flex: 0 0 auto;
    width: 50%;
  }

  .path-frontpage #block-views-block-aktuelles-block-1 {
    flex: 0 0 auto;
    width: 50%;
  }

  .block-field-blocknodebeitragfield-bildergalerie
    .field--name-field-bildergalerie
    > .field__item {
    flex: 0 0 auto;
    width: 33.33333333%;
  }

  .site-footer__top .region {
    width: 35%;
    padding: 0 5%;
  }
}

/* Stadt Mülheim Hauptmenü */
#block-stadtmulheimhauptmenu {
  background-color: #33982a;
  padding: 5px;
  margin-bottom: 20px;
}

#block-stadtmulheimhauptmenu ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

#block-stadtmulheimhauptmenu li {
  display: inline;
}

#block-stadtmulheimhauptmenu li:nth-child(1) a {
  padding-left: 21px;
}

#block-stadtmulheimhauptmenu a {
  text-decoration: none;
  font-size: 1.2rem;
  color: #fff;
  padding: 14px 15px;
}

/*============
Bildergalerie
============*/
.field--name-field-bildergalerie {
  margin-top: 2em;
}

.field--name-field-bildergalerie .field__label {
  font-size: 2rem;
  margin-bottom: 1em;
  font-weight: 500;
  font-family: "Dosis", serif;
}

.field--name-field-bildergalerie.field__items {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  column-gap: 0.5em;
  row-gap: 0.5em;
}

.field--name-field-bildergalerie.field__items img {
  object-fit: cover;
  aspect-ratio: 4/3;
  width: 100%;
  height: auto;
}

.field--name-field-bildergalerie details summary {
  margin: 1em 0;
}

@media (max-width: 1200px) {
  .field--name-field-bildergalerie.field__items {
    grid-template-columns: repeat(3, 1fr);
  }
}

@media (max-width: 991px) {
  .field--name-field-bildergalerie.field__items {
    grid-template-columns: repeat(2, 1fr);
  }
}

@media (max-width: 767px) {
  .field--name-field-bildergalerie.field__items {
    grid-template-columns: repeat(1, 1fr);
  }
}

.field--name-field-dateien.field--label-above .field__label {
  font-weight: 700;
}

.pswp__dynamic-caption__center {
  font-size: 16px;
  text-align: justify;
}

@media (min-width: 1300px) {
  .pswp__dynamic-caption {
    position: absolute;
    right: 50px !important;
    left: unset !important;
    top: 50% !important;
    width: unset;
    transform: translateY(-50%) !important;
  }

  .pswp__ui .pswp__dynamic-caption {
    background-color: unset;
  }

  .pswp__img {
    width: auto !important;
    max-width: 900px !important;
    height: auto !important;
    max-height: 100vh !important;
    top: 50%;
    bottom: unset;
    left: 50px;
    transform: translateY(-50%) !important;
  }

  .pswp__zoom-wrap {
    transition: none;
    transform: none !important;
    animation: none !important;
    -webkit-animation: none !important;
    height: 100% !important;
  }

  .pswp__top-bar {
    z-index: 1;
  }

  .pswp__dynamic-caption {
    width: 30%;
  }
}

@media (min-width: 1700px) {
  .pswp__img {
    left: 80px;
  }

  .pswp__dynamic-caption {
    right: 80px;
  }
}

@media (min-width: 1900px) {
  .pswp__img {
    left: 120px;
  }

  .pswp__dynamic-caption {
    right: 120px;
  }
}

#block-service img[alt="Cutlurebase"] {
  width: auto;
  height: 24px;
  display: block;
}

/* Abstand der "Aktuelles" Felder zum Haupttextfeld in der Ansicht eines Ortes */
article .view-id-taxonomy_term.view-display-id-block_1 {
  margin-top: 3em;
}

.field--name-field-anmeldung-url a {
  padding: 20px 25px;
  background: #c1c1c2;
  margin: 15px 0;
  display: block;
  font-weight: normal;
}

article .field--name-field-anmeldung-inaktiv::before,
article .field--name-field-anmeldung-url a::before {
  display: inline-block;
  content: "";
  vertical-align: -0.125em;
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-pencil-square" viewBox="0 0 16 16"><path d="M15.502 1.94a.5.5 0 0 1 0 .706L14.459 3.69l-2-2L13.502.646a.5.5 0 0 1 .707 0l1.293 1.293zm-1.75 2.456-2-2L4.939 9.21a.5.5 0 0 0-.121.196l-.805 2.414a.25.25 0 0 0 .316.316l2.414-.805a.5.5 0 0 0 .196-.12l6.813-6.814z"/><path fill-rule="evenodd" d="M1 13.5A1.5 1.5 0 0 0 2.5 15h11a1.5 1.5 0 0 0 1.5-1.5v-6a.5.5 0 0 0-1 0v6a.5.5 0 0 1-.5.5h-11a.5.5 0 0 1-.5-.5v-11a.5.5 0 0 1 .5-.5H9a.5.5 0 0 0 0-1H2.5A1.5 1.5 0 0 0 1 2.5v11z"/></svg>');
  background-repeat: no-repeat;
  background-size: 1rem 1rem;
  width: 20px;
  height: 16px;
  margin: 0 10px 0 0;
}

article .field--name-field-node-reference-below article.node--type-beitrag {
  width: 30.33333333%;
  margin-bottom: 3rem !important;
  float: left;
}

article .field--name-field-dateien {
  margin-bottom: 1.5em;
}

/*=========
Suche-Seite
=========*/
.list-group.node_search-results .list-group-item {
  border-color: rgba(10, 80, 161, 40%);
}

.list-group.node_search-results + nav {
  margin-top: 1em;
}

/*================
Culturebase-Events
================*/
#culturebase-events {
  margin-top: 3em;
}

#culturebase-events a:hover {
  color: inherit;
}

#culturebase-events h3 {
  margin-top: 0.5em;
  font-size: 20px;
}

#culturebase-events h4 {
  font-size: 13px;
}

.view-id-culturebase_events {
  margin-top: 3em;
}

.view-id-culturebase_events .views-col {
  padding-left: 12px;
  padding-right: 12px;
}

.view-id-culturebase_events .views-col img {
  width: 100%;
  height: 15em;
  object-fit: cover;
}

.view-id-culturebase_events .views-col a:hover {
  color: inherit;
}

.view-id-culturebase_events .views-col h3 {
  margin-top: 0.5em;
  font-size: 20px;
}

.view-id-culturebase_events .views-col h4 {
  font-size: 13px;
}

/*========
Breadcrumb
========*/
@media (min-width: 768px) {
  nav .breadcrumb {
    margin-bottom: 0;
  }
}

nav ol.breadcrumb li:first-child a::before {
  -webkit-background-size: 1.6rem 1.6rem;
  background-size: 1.6rem 1.6rem;
  width: 1.6rem;
  height: 1.6rem;
  float: left;
  margin-right: 5px;
  top: -4px;
  position: relative;
  background-image: url("/themes/custom/theme_kultur/images/stadt-muelheim-icon.png");
}

/*===
Logos
===*/
article .field--name-field-logos {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
  align-items: center;
}

article .field--name-field-logos img {
  width: 100%;
  height: auto;
  padding: 10px;
}

/*=============================
Link zum Veranstaltungskalender
=============================*/
#block-linkzumveranstaltungskalender a {
  padding: 20px 25px;
  background: #0a50a1;
  margin: 15px 0;
  display: block;
  font-size: 22px;
  color: #fff;
  text-align: center;
}

#block-linkzumveranstaltungskalender a::before {
  margin-right: 0.5em;
  display: inline-block;
  content: "";
  vertical-align: -0.175em;
  background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" fill="currentColor" class="bi bi-calendar-day" viewBox="0 0 16 16"> <path d="M4.684 11.523v-2.3h2.261v-.61H4.684V6.801h2.464v-.61H4v5.332h.684zm3.296 0h.676V8.98c0-.554.227-1.007.953-1.007.125 0 .258.004.329.015v-.613a1.806 1.806 0 0 0-.254-.02c-.582 0-.891.32-1.012.567h-.02v-.504H7.98v4.105zm2.805-5.093c0 .238.192.425.43.425a.428.428 0 1 0 0-.855.426.426 0 0 0-.43.43zm.094 5.093h.672V7.418h-.672v4.105z"/> <path d="M3.5 0a.5.5 0 0 1 .5.5V1h8V.5a.5.5 0 0 1 1 0V1h1a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H2a2 2 0 0 1-2-2V3a2 2 0 0 1 2-2h1V.5a.5.5 0 0 1 .5-.5zM1 4v10a1 1 0 0 0 1 1h12a1 1 0 0 0 1-1V4H1z"/> </svg>');
  background-size: 24px;
  width: 24px;
  height: 24px;
  filter: invert(100%) sepia(100%) saturate(0%) hue-rotate(214deg)
    brightness(102%) contrast(103%);
}

/*===========================
"Aktuelles"-Slider
===========================*/
.view-display-id-block_slider_institutseite_aktuelles {
  margin-bottom: 2em;
}

.view-id-slider_aktuelles .carousel-inner,
.view-display-id-block_slider_institutseite_aktuelles .carousel-inner {
  height: 200px;
  background-color: #f0f0f0;
  padding: 20px 70px;
}

.view-id-slider_aktuelles .carousel-control-next,
.view-display-id-block_slider_institutseite_aktuelles .carousel-control-next {
  right: 20px;
}

.view-id-slider_aktuelles .carousel-control-prev,
.view-display-id-block_slider_institutseite_aktuelles .carousel-control-prev {
  left: 20px;
}

.view-id-slider_aktuelles .carousel-control-next,
.view-id-slider_aktuelles .carousel-control-prev,
.view-display-id-block_slider_institutseite_aktuelles .carousel-control-next,
.view-display-id-block_slider_institutseite_aktuelles .carousel-control-prev {
  width: 50px;
  height: 50px;
  top: 75px;
}

.view-id-slider_aktuelles .carousel-item h3 div.spacer,
.view-display-id-block_slider_institutseite_aktuelles
  .carousel-item
  h3
  div.spacer {
  padding-bottom: 2em;
}

@media (max-width: 767px) {
  .view-id-slider_aktuelles .carousel-inner,
  .view-display-id-block_slider_institutseite_aktuelles .carousel-inner {
    height: 370px;
  }

  .view-id-slider_aktuelles .carousel-control-next,
  .view-id-slider_aktuelles .carousel-control-prev,
  .view-display-id-block_slider_institutseite_aktuelles .carousel-control-next,
  .view-display-id-block_slider_institutseite_aktuelles .carousel-control-prev {
    top: 160px;
  }

  .view-id-slider_aktuelles .carousel-item h3 div.spacer,
  .view-display-id-block_slider_institutseite_aktuelles
    .carousel-item
    h3
    div.spacer {
    padding-bottom: 4em;
  }
}

.view-id-slider_aktuelles .carousel-indicators,
.view-display-id-block_slider_institutseite_aktuelles .carousel-indicators {
  bottom: -16px;
  background-color: #f0f0f0;
  width: 90%;
  margin-left: 5%;
}

.view-id-slider_aktuelles .carousel-indicators li,
.view-display-id-block_slider_institutseite_aktuelles .carousel-indicators li {
  background-color: #33982a;
}

.view-id-slider_aktuelles .carousel-indicators li::marker,
.view-display-id-block_slider_institutseite_aktuelles
  .carousel-indicators
  li::marker {
  content: none;
}

.view-id-slider_aktuelles .carousel-control-next-icon,
.view-id-slider_aktuelles .carousel-control-prev-icon,
.view-display-id-block_slider_institutseite_aktuelles
  .carousel-control-next-icon,
.view-display-id-block_slider_institutseite_aktuelles
  .carousel-control-prev-icon {
  filter: brightness(0) saturate(100%) invert(40%) sepia(62%) saturate(554%)
    hue-rotate(68deg) brightness(106%) contrast(94%);
}

.view-id-slider_aktuelles .carousel-item h3 a,
.view-display-id-block_slider_institutseite_aktuelles .carousel-item h3 a {
  display: block;
  height: 100px;
  width: 100%;
  position: absolute;
}

.view-id-slider_aktuelles .carousel-item h3 a:hover,
.view-display-id-block_slider_institutseite_aktuelles
  .carousel-item
  h3
  a:hover {
  color: inherit;
}

.carousel-indicators [data-bs-target] {
  border-top: 3px solid transparent;
}

/*=================================
Startseite "Veranstaltungen"-Slider
=================================*/
#views-bootstrap-slider-veranstaltungen-highlights .carousel-item img {
  aspect-ratio: 16 / 7;
  object-fit: cover;
  object-position: center;
}

#views-bootstrap-slider-veranstaltungen-highlights .carousel-indicators li {
  background-color: #33982a;
  opacity: 1;
}

#views-bootstrap-slider-veranstaltungen-highlights
  .carousel-indicators
  li::marker {
  content: "";
}

#views-bootstrap-slider-veranstaltungen-highlights
  .carousel-indicators
  li.active {
  background-color: black;
}

#views-bootstrap-slider-veranstaltungen-highlights .carousel-control-next-icon,
#views-bootstrap-slider-veranstaltungen-highlights .carousel-control-prev-icon {
  filter: brightness(0) saturate(100%) invert(40%) sepia(62%) saturate(554%)
    hue-rotate(68deg) brightness(106%) contrast(94%);
}

#views-bootstrap-slider-veranstaltungen-highlights .carousel-control-container {
  width: 50px;
  height: 50px;
  background-color: #f0f0f0;
  border-radius: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0.8;
}

#views-bootstrap-slider-veranstaltungen-highlights
  .carousel-item
  .carousel-caption {
  background-color: #f0f0f0;
  opacity: 0.8;
  color: black;
  left: 10%;
  right: 10%;
}

/*===========
OEmbed Videos
===========*/
.field--name-field-media-oembed-video .media-oembed-content {
  width: 32em;
  height: 20em;
}

.align-left .field--name-field-media-oembed-video .media-oembed-content {
  margin-right: 1em;
}

.align-right .field--name-field-media-oembed-video .media-oembed-content {
  margin-left: 1em;
}

/*===========
WYSIWYG-Table
===========*/
.wysiwyg-table td {
  border: 2px solid #fff;
  background-color: #f0f0f0;
}

.wysiwyg-table img {
  min-width: 100px;
}

/* ======= */
/* Sprache */
/* ======= */
.block-language .nav-link {
  padding: 0;
  margin-right: 2em;
  margin-top: 1em;
}

.block-language span:not(.is-active) a {
  opacity: 70%;
}

.site-footer .block-language span.is-active a {
  color: #fcfcfc;
}
