/* Status-Meldungen */
div.messages { width: 100%; margin: 3rem auto; }

/* Nicht übersetzt */
.span12.no-translation { border: 2px solid #FF2346; padding: 30px; margin-bottom: 30px; }
.span12.no-translation h2 { text-transform: uppercase; }

/* AutorIN */
.autorin { font-family: JMBProBo, sans-serif; }

/* details + summary */
details { position: relative; }
summary { list-style: none; padding: 25px 48px 20px 0; border-top: 1px solid #000; }
details[open] summary { padding: 25px 48px 35px 0; }
summary::-webkit-details-marker, details > summary::marker { display: none; }
summary, summary p, summary h2, summary h3, summary h4, summary h5, summary h6 { font-family: JMBProBo,sans-serif; font-size: 2.2rem; line-height: 3rem; margin-bottom: 0; }
summary cite { font-family: JMBProBoI,sans-serif; }
summary:hover { cursor: pointer; }

summary::before, summary::after { content: ""; display: block; width: 16px; height: 16px; position: absolute; top: 32px; right: 12px; transition: opacity 0.3s, transform 0.3s; }
summary::before { background: url("/themes/custom/jmb/icons/plus_16x16.svg") center center; opacity: 1.0; transform: rotate(90deg); }
summary::after { background: url("/themes/custom/jmb/icons/minus_16x16.svg") center center; opacity: 0; transform: rotate(90deg); }
details[open] summary::before { opacity: 0; transform: rotate(0deg); }
details[open] summary::after { opacity: 1.0; transform: rotate(0deg); }

.accordion { width: 100%; font-size: 2.2rem; line-height: 3rem; }
.accordion .accordion-content { padding: 0 0 20px 0; }

.cm-faq + .cm-faq { margin-top: -40px; }
.cm_embed + .cm_embed { margin-top: -20px; }
.cm_accordion + .cm_accordion { margin-top: -40px; }
.cm-person + .cm-person { margin-top: -41px; }
.cm-person + .cm-person .person { border-top: 1px solid #FFF; padding-top: 20px; }
.meta-box.external + .meta-box.external { margin-top: 20px; }
.row.acc-research + .row-references { margin-top: -40px; }

.row.acc-research { background-color: #EEE; }
.row.acc-research summary { padding: 20px 48px 15px 30px; }
.row.acc-research .accordion-content { padding: 30px; }
.row.acc-teaser { background-color: #FFF; }
.row.acc-teaser summary {  background-color: #EEE; padding: 20px 48px 15px 30px; }
.row.acc-teaser .accordion-content { padding: 20px 0 0 0; background-color: #FFF; display: flex; flex-wrap: wrap; gap: 40px 20px; }
.row.acc-teaser .accordion-content .teaser__wrapper { margin-right: 0; }
.row.acc-research + .row.acc-teaser { margin-top: -40px; }
.row.acc-research + .row.acc-table { margin-top: -40px; }
.row.acc-teaser + .row.acc-teaser { margin-top: -40px; }
.row.acc-table + .row.acc-teaser { margin-top: -40px; }
.row.acc-research summary::before, .row.acc-research summary::after,
.row.acc-teaser summary::before, .row.acc-teaser summary::after { top: 24px; }
.row.acc-teaser details[open] { padding-bottom: 20px; }
.row.acc-teaser table th, .row.acc-teaser table td { padding: 15px 20px; text-align: left; }
.row.acc-table { background-color: #EEE; }
.row.acc-table summary { padding: 20px 48px 15px 30px; }
.row.acc-table .accordion-content { padding: 30px; background-color: #FFF; }

.eyecatcher { font-family: JMBProBo, sans-serif; font-size: 2.5rem; line-height: 3rem; margin-bottom: 0; background: #AA005F; color: white; padding: 30px 50px; }
.eyecatcher.berry { font-family: JMBProBo, sans-serif; font-size: 2.5rem; line-height: 3rem; margin-bottom: 0; background: #AA005F; color: white; padding: 30px 50px; }
.eyecatcher.blue { background: #000073; }
.eyecatcher em, .eyecatcher i, .eyecatcher cite { font-family: JMBProBoI, sans-serif; }

@media only screen and (max-width: 590px) {
	.eyecatcher { font-size: 2.5rem; line-height: 3rem; padding: 40px; }
}

/* Box mit Ausstellungsdaten oben rechts */
.duration { border: 1px solid #979797; padding: 20px; }
.duration-date { position: relative; font-family: JMBProBo, sans-serif; font-size: 2.2rem; line-height: 2.2rem; margin-bottom: 15px; padding-left: 40px; }
.duration-date svg { position: absolute; top: 0; left: 0; width: 24px; height: 24px; }
.duration img { margin-bottom: 20px; }
.duration-loc-title { font-family: JMBProBo, sans-serif; }
.duration-loc { position: relative; font-family: JMBProM, sans-serif; font-size: 2.2rem; line-height: 2.2rem; margin-bottom: 15px; padding-left: 25px; }
.duration-loc svg { position: absolute; top: 0; left: 0; width: 18px; height: 18px; }
.duration-link { position: relative; font-family: JMBProBo, sans-serif; font-size: 2.2rem; line-height: 2.2rem; margin-bottom: 15px; padding-left: 25px; }
.duration-link svg { position: absolute; top: 0; left: 0; width: 18px; height: 18px; }

/* Ansprechpartner */
.person { border: 1px solid black; padding: 30px; }
.node-type-press-release .cm_intro .person { border: 1px solid #979797; }
.person h2, .person dt { font-family: JMBProBo, sans-serif; font-size: 1.6rem; line-height: 2.2rem; margin-bottom: 0; }
.person p { font-size: 1.6rem; line-height: 2.2rem; }
.person div { width: 328px; margin-right: 30px; }
.person div:last-child { margin-right: 0; }
.person + .duration { margin-top: 20px; }
.person dd + dt { margin-top: 20px; }
.person--single div { width: auto; }

@media only screen and (max-width: 1270px) {
  .person div { margin: 0 0 20px 0; width: 100%; }
  .person div:last-child { margin-bottom: 0; }
}

@media only screen and (max-width: 880px) {
	.person.span8r { margin-bottom: 0; }
}

/* Download */
.download-box { background: #F2F2F2; padding: 30px; }
.download-box h2, .download-box h3, .download-box h4, .download-box h5 { display: inline; font-family: JMBProBl, sans-serif; font-size: 2.2rem; line-height: 3rem; }
.download-box p { display: inline; font-family: JMBProM, sans-serif; font-size: 2.2rem; line-height: 3rem; }
.download-box a.download { display: block; }

.download-box p.small { display: block; font-family: JMBProM, sans-serif; font-size: 1.6rem; line-height: 2.2rem; margin-top: 5px; margin-bottom: 20px; }
a.download { display: inline-block; font-family: JMBProBo, sans-serif; font-size: 1.6rem; line-height: 2.2rem; text-decoration: none; border: none; }
a.download svg { width: 18px; height: 18px; margin-right: 8px; margin-bottom: -4px; }
a.download:hover span, a.download:focus span { border-bottom: 1px solid black; }

/* Zitierempfehlung */
.quote-box { border: 1px solid #F2F2F2; padding: 30px; font-size: 1.6rem; line-height: 2.2rem; }
.quote-box p.label { font-family: JMBProBo, sans-serif; font-size: 1.6rem; line-height: 2.2rem; margin-bottom: 0; }

/* Galerie: Download */
.gallery-download { width: 100%; height: 275px; background: #000073; margin-bottom: 20px; padding-top: 107px; }
.gallery-download span { display: block; width: 60px; height: 60px; margin: 0 auto; border-radius: 30px; background: #010061; }
.gallery-download svg { width: 24px; height: 24px; margin: 18px 0 0 20px; }

.gallery-image { position: relative; display: block; width: auto; height: auto; }
.gallery-image span { position: absolute; top: 50%; left: 50%; display: block; width: 60px; height: 60px; margin: -30px 0 0 -30px; border-radius: 30px; background: #010061; }
.gallery-image svg { width: 24px; height: 24px; margin: 18px 0 0 18px; }

/* Logos in Ausstellungen / Temp */
.cm_logos img { max-width: 236px; height: auto; margin: 0 20px 20px 0; }
.cm_logos img:nth-child(3n+3) { margin-right: 0; }
.cm_logos .flex { align-items: center; }

/* Alte Formate */
.meta-box { border: 1px solid #979797; margin: 20px 0; padding: 30px; }
.span3p .meta-box { margin: 0; }
.meta-box h2, .meta-box h3, .meta-box h4, .meta-box h5 { font-family: JMBProBo, sans-serif; font-size: 2.2rem; line-height: 2.4rem; margin-bottom: 6px; }
.meta-box p { font-size: 1.6rem; line-height: 2.2rem; }

.infobox { border: 1px solid #FF2346; padding: 30px; display: flex; flex-wrap: wrap; width: 100%; gap: 20px; }
.infobox h2, .infobox h3 { font-family: JMBProBo, sans-serif; font-size: 2.2rem; line-height: 3rem; margin-bottom: 15px; width: 100%; }
.infobox .textcaption { font-family: JMBProBo, sans-serif; display: block; }
.infobox ul { list-style: none; margin: 0; }
.infobox ul.infobox__first, .infobox ul.infobox__second { max-width: calc( (100% - 20px) / 2); }
.infobox li { list-style: none; font-size: 1.6rem; line-height: 2.2rem; margin-bottom: 20px; padding: 0; background: none; }
.infobox li:before { display: none; }
.infobox li:last-child { margin-bottom: 0px; }
.infobox li svg { height: 18px; margin-top: 0px; margin-right: 5px; position: relative; top: 6px; }
.infobox p { font-size: 1.6rem; line-height: 2.2rem; }
.infobox-location p { margin-bottom: 0px; }

@media only screen and (max-width: 1080px) {
  .infobox ul { width: 100%; }
  .infobox ul.infobox__first, .infobox ul.infobox__second { max-width: 100%; }
  .infobox ul.first li:last-child { margin-bottom: 20px; }
}

/* Stellenausschreibung */

dl.jobinfo { border: 1px solid black; padding: 30px; }
dl.jobinfo :last-child { margin-bottom: 0; } 
dl.jobinfo, dl.jobinfo p { font-size: 1.9rem; line-height: 2.6rem; }
dl.jobinfo dt { font-family: JMBProBo, sans-serif; }
dl.jobinfo .textcaption { display: block; font-family: JMBProBo, sans-serif; margin-bottom: -3rem; }
dl.jobinfo dd { margin-bottom: 20px; }

.cm-deprecated { background: #FF2346; color: white; padding: 30px; margin-top: 50px; margin-bottom: 50px; }

/* Share Icons */

.row-smicons h2 { text-align: right; font-family: JMBProBo, sans-serif; font-size: 2.5rem; line-height: 3rem; margin-bottom: 20px; }
.row .share-icons { float: right; }
.share-icons li { list-style: none; float: left; margin-right: 40px; padding: 0; height: 28px; max-width: 32px; }
.row .share-icons li { list-style: none; float: left; margin-right: 0; margin-left: 40px; padding: 0; }
.share-icons li::before { display: none; }
.share-icons svg { height: 28px; height: 32px; width: auto; }
.share-icons a { border: none; }

/* Format: Interview */
div.interview h2 { font-family: JMBProBo, sans-serif; font-size: 2.5rem; line-height: 3rem; margin-bottom: 20px; }

/* Abstand */
hr.spacing { border: none; height: 60px; }

/* Medien in linker Spalte */
.span3p figure { margin-bottom: 20px; }
.span3p .accordion input:checked + label { padding: 25px 48px 25px 0; }
.span3p .accordion label, .span3p .accordion label p, .span3p .accordion label h2, .span3p .accordion label h3, .span3p  .accordion label h4, .span3p .accordion label h5, .span3p .accordion label h6, .span3p .accordion .accordion-content, .span3p .accordion .accordion-content * { font-family: JMBProM, sans-serif;
    font-size: 1.6rem; line-height: 2.2rem; }
.span3p .accordion .accordion-content p { margin-bottom: 20px; }

/* iframes */
iframe.openstreetmap { width: 100%; height: 420px; border: 1px solid black; }

/* Tests Media Third */
.av-player-hidden .show-av { width: 100%; }
.av-player-hidden figure { display: none; }
.av-player .show-av { display: none; }
.av-player figure { display: block; }

/* Teaser PR */
.teaser-pr h3 { font-size: 2.2rem;
line-height: 3rem; }
.teaser-pr p { font-size: 2.2rem;
  line-height: 3rem; }
.teaser-pr p.small { margin-top: 40px; font-size: 1.6rem; line-height: 2.2rem; }

/* Book Page */
.cm_book_navigation .links { display: block; padding-top: 20px; border-top: 1px solid black; }
.cm_book_navigation .links li { font-size: 1.6rem; line-height: 2.2rem; }