/* This file holds generic functionalitis that are more of a functional than a stylistic nature. */

/* AAA - 100% with of embedded content */
.field--name-field-media-oembed-video {
  position: relative;
  overflow: hidden;
  width: 100%;
  padding-top: 56.25%; /* 16:9 Aspect Ratio (divide 9 by 16 = 0.5625) */
  border-radius: 15px;
}
.media-oembed-content {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  width: 100%;
  height: 100%;
}
/* end of AAA */

/* BBB Video privacy */
.antifra-overlay {
    background: #000;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
}
.antifra-overlay img {
    height: 100%;
    width: auto;
    margin: auto;
}
.antifra-overlay .privacy-hint {
    color: #fff;
    background-color: #000;
    padding: 0.5em 1em;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    cursor: pointer;
}

@media (max-width: 700px) {
	.antifra-overlay .privacy-hint {
		width: 100%;
	}
}
/* end of BBB */

/* CCC social media icons */
li.www_facebook_com a {
    width: 1em;
    display: inline-block;
    overflow: hidden;
    white-space: nowrap;
}
li.www_facebook_com a:before {
    content: '\f39e';
    width: 1em;
    font-family: fa_brands;
    display: inline-block;
}
li.www_flickr_com a {
    width: 1.2em;
    display: inline-block;
    overflow: hidden;
    white-space: nowrap;
}
li.www_flickr_com a:before {
    content: '\f16e';
    width: 1.1em;
    font-family: fa_brands;
    display: inline-block;
}
li.instagram_com a {
    width: 1em;
    display: inline-block;
    overflow: hidden;
    white-space: nowrap;
}
li.instagram_com a:before {
    content: '\f16d';
    width: 1em;
    font-family: fa_brands;
    display: inline-block;
}
li.twitter_com a {
    width: 1em;
    display: inline-block;
    overflow: hidden;
    white-space: nowrap;
}
li.twitter_com a:before {
    content: '\e61b';
    width: 1em;
    font-family: fa_brands;
    display: inline-block;
}
li.www_youtube_com a {
    width: 1.1em;
    display: inline-block;
    overflow: hidden;
    white-space: nowrap;
}
li.www_youtube_com a:before {
    content: '\f167';
    width: 1.1em;
    font-family: fa_brands;
    display: inline-block;
}
li.www_youtube_com a {
	width: 1.1em;
	display: inline-block;
	overflow: hidden;
	white-space: nowrap;
}
li.www_youtube_com a:before {
	content: '\f167';
	width: 1.1em;
	font-family: fa_brands;
	display: inline-block;
}
li.www_tiktok_com a {
	width: 1.1em;
	display: inline-block;
	overflow: hidden;
	white-space: nowrap;
}
li.www_tiktok_com a:before {
	content: '\e07b';
	width: 1.1em;
	font-family: fa_brands;
	display: inline-block;
}
li.www_linkedin_com a {
	width: 1.1em;
	display: inline-block;
	overflow: hidden;
	white-space: nowrap;
}
li.www_linkedin_com a:before {
	content: '\f08c';
	width: 1.1em;
	font-family: fa_brands;
	display: inline-block;
}
li.berlin_social a {
	width: 1.1em;
	display: inline-block;
	overflow: hidden;
	white-space: nowrap;
}
li.berlin_social a:before {
	content: '\f4f6';
	width: 1.1em;
	font-family: fa_brands;
	display: inline-block;
}
li.bsky_app a {
    width: 1.1em;
    display: inline-block;
    overflow: hidden;
    white-space: nowrap;
}
li.bsky_app a:before {
    content: '\e671';
    width: 1.1em;
    font-family: fa_brands;
    display: inline-block;
}
li.www_threads_net a {
    width: 1.1em;
    display: inline-block;
    overflow: hidden;
    white-space: nowrap;
}
li.www_threads_net a:before {
    content: '\e618';
    width: 1.1em;
    font-family: fa_brands;
    display: inline-block;
}


/* end of CCC*/

/* DDD language switcher */
html[lang=de] #block-languageswitcher li[hreflang=de],
html[lang=en] #block-languageswitcher li[hreflang=en] {
    display: none;
}
/* end of DDD*/

/* EEE toolbar on top */
#toolbar-administration {
    position: relative;
    z-index: 1000;
}
/* end of EEE */

/* FFF privacy overlay manual */
.manual-antifra-wrapper {
    position: relative;
		min-height: 160px;
}
html[lang=de] .privacy-hint .lang-en,
html[lang=en] .privacy-hint .lang-de {
    display: none;
}
/*  end of FFF */

/* quickfix nachhaltigkeit */
@media (max-width: 43.75rem) {
  .path-nachhaltigkeit #block-rp22-content {
      grid-column: 1 / span 7;
  }
}
.path-nachhaltigkeit .node__content {
    padding-bottom: 0;
}

/* #rp22 TXT-Stoerer */
div#block-stoerer {
    width: 66px;
    position: absolute;
    top: 43px;
    left: 256px;
}
@media (max-width: 1200px) {
  div#block-stoerer {
    top: 14px;
    left: 178px;
  }
}
@media (max-width: 1024px) {
  div#block-stoerer {
    left: 20px;
    top: 43px;
    width: 56px;
  }
}

/* About Block: Teaser verstecken */
div#rp-Über-die-republica-38 p {
    display: none;
}


/*CFP 23 FORMATE*/
.cfp-formate {
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(300px,1fr));
  grid-gap: calc(var(--hMargin-title) / 3);
}
.cfp-formate-inner {
    margin: 10px;
}
.format-text1 {
    margin-bottom: 15px;
}
h2.formate-type {
    margin-bottom: 0px;
}

/*rp23 Track Teams */

.trackteam_name {
    min-height: 4rem;
    margin-top: 25px;
    font-weight:bold;
    /* text-align:center; */
}
.trackteam_name a {
    /* box-shadow: none!important; */
    font-size: 1.1em;
}
.path-news-die-rp-track-teams .bs_grid .row, .path-news-track-teams-rp .bs_grid .row {
    margin-bottom: 2rem;
}
h2.walmer {
    font-family:walmer, sans-serif !important;
}

/*rp23 lost and found*/
.lost figure {
    max-width: 326px;
    min-width: 250px;
}
.lost {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
}

/*reeeperbahn*/
.rp-type-highlight_box.rp-info-rbf {
  background: linear-gradient(to right, #b72d7f, #1b86c4);
  
}
.rp-type-highlight_box.rp-info-rbf .block__title {
    color: #000000 !important;
}

@media (max-width: 720px) {
  .motto-buttons {
      flex-direction: column;
      gap: 1rem;
  }
}
@media (max-width: 700px) {

    .path-tickets #block-rp22-content {
        grid-column: 1 / 7;
    }
}

/*partner block front page anchor*/

#rp-partner-19 {
    padding-top: 100px;
    margin-top: -100px;
}

/* Moderation View*/
body.path-production-stage-moderation-print div#sliding-popup,
body.path-production-stage-moderation-print header#header, 
body.path-production-stage-moderation-print div#block-pagetitle,
body.path-production-stage-moderation-print footer.site-footer,
body.path-production-stage-moderation-print-short div#sliding-popup,
body.path-production-stage-moderation-print-short header#header, 
body.path-production-stage-moderation-prin-short div#block-pagetitle,
body.path-production-stage-moderation-print-short footer.site-footer {
    display: none;
    opacity:0;
}

.view-production-stage-moderation-print article.rp-entity-user.rp-display-mode-text_only {
    display: flex;
    flex-direction: column;
}

.view-production-stage-moderation-print  .field {
    margin-bottom: 0 !important;
}

.view-production-stage-moderation-print  article.rp-entity-user.rp-display-mode-text_only {
    display: flex;
    border: 1px solid black;
    padding: 10px;
    flex-direction: column;
    background-color: #cbe0f2;
}

.view-production-stage-moderation-print .views-field-field-speakers .field-content {
    display: flex;
    flex-direction: column;
}
.view-production-stage-moderation-print .field.field--name-field-name,
.view-production-stage-moderation-print  .field.field--name-field-second-name {
    font-family: 'Super Grotesk';
}

.view-production-stage-moderation-print p,
.view-production-stage-moderation-print ul,
.view-production-stage-moderation-print ol,
.view-production-stage-moderation-print .field--name-field-position,
.view-production-stage-moderation-print .field--name-field-organization,
.view-production-stage-moderation-print .views-field-field-room,
.view-production-stage-moderation-print .views-field-field-language,
.view-production-stage-moderation-print .views-field-field-teaser {
    font-size:12px;
    margin-top: 2px;
    margin-bottom: 2px;
    line-height: 19px;
 }

 .view-production-stage-moderation-print  .views-field.views-field-field-teaser {
    background-color: #ffd5d5;
    padding: 5px;
}

.view-production-stage-moderation-print .views-field.views-field-field-description {
    background-color: #ffe5e5;
}

.view-production-stage-moderation-print .field--name-field-position,
.view-production-stage-moderation-print .field--name-field-organization,
.view-production-stage-moderation-print .views-field-field-date {
    font-weight:bold;
    font-size: 12px;
    line-height: 19px;
}

.view-production-stage-moderation-print h2 {
    line-height: 15px;
    font-size: 16px;
    margin: 10px 0 10px 0;
}

.view-production-stage-moderation-print .views-field-field-moderators article.rp-entity-user.rp-display-mode-text_only {
    background-color: #f6eaff;
}


.view-production-stage-moderation-print  .views-view-grid__item {
    page-break-after: always;
}

@media print {
    .view-production-stage-moderation-print  .view-filters {
        display: none;
    }
}

body.path-production-stage-moderation-print-short .field--name-field-short-bio {
    display: none;
}

@media (max-width:380px) {

.view-news .views-view-grid--horizontal.cols-3 > * {
    max-width: 280px!important;
    margin-left: auto !important;
    margin-right: auto !important;
}
}

/* ki konferenz */

#block-verticaldayblock .stage, 
#block-verticaldayblock .special,
#block-verticaldayblock .language,
#block-verticaldayblock .session-type,
#block-verticaldayblock .track, 
#block-verticaldayblock .current-day-display {
    display:none;
}

.views-field.views-field-field-moderationshinweise, p.views-field.views-field-field-dispo {
    border: 1px solid black;
    padding: 10px;
    background-color: #bcffbc;
}

@media (max-width:699px) {
    #block-verticaldayblock {
        grid-column: 1 / 13;
        width: 100%;
        margin-left: 20px;
        margin-right: 20px;
    }
}

#rp-republica-berlin-2025-11 {
    scroll-margin-top: 60px;
}


/* Teeniefotos*/
.path-team .field--name-field-photo {
    perspective: 1000px; /* Perspektive für 3D-Effekt */
    position: relative;
    width: 100%; /* Sicherstellen, dass der Container die richtige Größe hat */
    height: 0;
    padding-top: 100%; /* Quadratisches Seitenverhältnis */
    overflow: hidden;
}

.path-team .field--name-field-photo img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    backface-visibility: hidden; /* Rückseite ausblenden */
    transform-style: preserve-3d;
    transition: transform 0.2s ease-in-out;
    border-radius: 15px;
}

.path-team .field--name-field-photo img.new-image {
    transform: rotateY(180deg); /* Ersatzbild initial ausgeblendet */
    z-index: 2;
}


/* keyvisual 2025 */

@media (min-width:1200px) and (max-width: 1500px) {
    #block-mottoblock h2 {
        font-size: 1.5rem;
        margin: .7rem 0;
    }
    #block-mottoblock p {
        font-size: 1rem;
        margin: 1rem 0;
    }
}

@media (max-width:1200px) {
    video.anywaythewindblows_visual {
        width: 100%;
        height: auto;  
    }
}

/*temporary hamburg*/
/* 
.field--type-datetime.field__items div:nth-child(2) {
    display: none;
} */

/*slider */
#block-rp22-views-block-blockslider-block-1 {
    max-width:100%;
}
.views_slideshow_slide .views-row {
    display: grid;
    grid-template-columns: repeat(9, 1fr);
    grid-template-rows: 1fr;
    grid-column-gap: 20px;
    grid-row-gap: 0px;
}


body .views_slideshow_slide .field--name-field-media {
 grid-column: 1 / span 6;
 margin-bottom: 0;
}

.views_slideshow_slide .field--name-body {
    grid-column: 7 / span 3;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.views_slideshow_slide .field--name-body h2 {
    margin:0;
}


.views_slideshow_controls_text a {
  display: inline-block;
  padding: 20px 20px 7px 20px;
  background: #eee;
  border-radius: 4px;
  text-decoration: none;
  color: #333;
  font-size: 18px;
  font-weight: bold;
  margin: 0 5px;
  transition: background 0.3s;
  line-height: 21px;
}

.views_slideshow_controls_text a:hover {
  background: #ccc;
  color: #000;
}

/* Symbole ersetzen */
.views_slideshow_controls_text_previous a::before {
  content: "◀";
}

.views_slideshow_controls_text_pause a::before {
  content: "⏸";
}

.views_slideshow_controls_text_next a::before {
  content: "▶";
}

/* Optional: Original-Text ausblenden */
.views_slideshow_controls_text a {
  font-size: 0;
}

.views_slideshow_controls_text a::before {
  font-size: 36px;
}

.views-slideshow-controls-bottom {
    display: flex;
    justify-content: center;
    margin-top: 1.5rem;
}

.views_slideshow_controls_text span:hover {
    text-decoration:none;
}

   .views_slideshow_slide .field--name-body {
    margin: 1rem;
   }

@media (max-width: 1280px) {
.views_slideshow_slide .views-row {
    grid-column-gap: 15px;
}
}
@media (max-width: 1024px) {
    .views_slideshow_slide .views-row {
        display: flex;
        flex-direction: column;
    }

   .views_slideshow_controls_text a::before {
    font-size:18px;
   }
   .views_slideshow_controls_text a {
    padding: 14px 14px 4px 14px;
   }
   .views-slideshow-controls-bottom {
    margin-top:0;
   }
   #block-socialmedia a {
    font-size: 1.2rem;
   }
}


/* Partner werden 2026 */

body.path-partner-werden- #block-pagetitle {
    display:none;
}

body.path-partner-werden- {
    /* background-color: white !important; */
}

.layout #rp-das-sagen-unsere-partner-zur-republica-86 .block__content,
.layout #rp-unsere-partnerformate-87 .block__content,
.layout #rp-partnerinformationen-anfordern-88 .block__content,
.layout .block-views-blockpartner-eure-ansprechpartnerinnen-block-1 .block__content {
    max-width: 1280px !important;
    padding: 0 1rem!important;
}

body.path-partner-werden-.page-node-type-landing-page.path-node .node__content .layout__region {
    max-width:1920px;
}

body.path-partner-werden- .rp-type-node_cards .field--name-field-pages {
    grid-gap: 20px;
}

.layout .rp-info-foto-block-partner-werden .block__content {
    max-width:100%;
    padding: 0!important;
 }

.layout .rp-info-foto-block-partner-werden .block__content .field--name-field-media-image {
    margin-bottom:5px;
}

.rp-info-foto-block-partner-werden .field--name-field-photo-credit {
    display: flex;
    font-size: 15px;
    margin-left: 5px;
}

div#rp-das-sagen-unsere-partner-zur-republica-86 .block__title,
div#rp-unsere-partnerformate-87 .block__title {
    font-size:2.5rem!important;
    margin: 0rem 1rem 3rem 1rem !important;
}

#rp-unsere-partnerformate-87  h2.node__title {
    font-size: 1.7rem;
}

div#rp-unsere-partnerformate-87 .field--name-field-pages .field__item {
    background-color:#ffffff;
    border-radius: 15px;
}

div#rp-unsere-partnerformate-87 .field--name-field-image-video img {
    border-radius: 15px 15px 0 0;
}
div#rp-unsere-partnerformate-87 .text-content,
div#rp-unsere-partnerformate-87 .node--view-mode-highlight-box .node__title {
    margin: 2rem;
}
div#rp-das-sagen-unsere-partner-86,
div#rp-partnerinformationen-anfordern-88,
div#rp-partner-nl-abonnieren-89,
div#rp-das-sagen-unsere-partner-zur-republica-86  {
    background-color: #fff !important;
    /* max-width: 1280px; */
    margin: 0 auto;
    padding: 4rem 1rem;
    /* border-radius: 15px; */
}

.path-partner-werden- article.node > div.node__content > div:nth-child(6) {
    margin-bottom: 0;
}

div#rp-partner-nl-abonnieren-89 {
    padding: 4rem 1rem 4rem 1rem;
    margin: 0 auto 0 auto;
}

.path-partner-werden- #block-rp22-content > div > article > div {
    padding-bottom: 0;
}
.path-partner-werden- #block-rp22-content {
    margin-bottom: calc(-1 * var(--hMargin-title));
}

div#rp-partnerinformationen-anfordern-88 .block__title, 
.block-views-blockpartner-eure-ansprechpartnerinnen-block-1 .block__title,
.rp-info-das-sagen-unsere-partner .block__title{
    font-size:2.5rem!important;
}

div#rp-partnerinformationen-anfordern-88 .block__title,
div#rp-das-sagen-unsere-partner-86 .block__title{
    margin-top: 1rem !important;
}

div#rp-partnerinformationen-anfordern-88  label.form-item__label.option.js-form-required.form-required {
    font-size: 15px;
    line-height: 20px;
    font-family: var(--font-primary);
}

div#rp-partnerinformationen-anfordern-88  input[type="checkbox"] {
    width: 20px;
    height: 20px;
    outline-color: red !important;
    border-color: red !important;
}

.block-views-blockpartner-eure-ansprechpartnerinnen-block-1 {
        margin: 0 auto 3rem auto!important;
}

.block-views-blockpartner-eure-ansprechpartnerinnen-block-1 img {
    border-radius:15px;
} 

.block-views-blockpartner-eure-ansprechpartnerinnen-block-1 h3.field-content {
    margin: 15px 10px 10px;
    text-align: center;

}
.block-views-blockpartner-eure-ansprechpartnerinnen-block-1 h3.field-content a {
    text-decoration:none;
}

.block-views-blockpartner-eure-ansprechpartnerinnen-block-1 .views-field.views-field-field-second-name {
    text-align: center;
    margin-top: 15px;
}

.block-views-blockpartner-eure-ansprechpartnerinnen-block-1 .views-field.views-field-field-position {
    text-align: center;
}

div#rp-partner-nl-abonnieren-89 h2 {
    margin:0;
} 

p.testimonial-author,
p.testimonial-text,
.quote-mark {
    color:#ffffff;
    text-align:left;
}
.quote-mark-left {
    margin-bottom: -20px;
}
.quote-mark-right {
    text-align:right    
}

div#rp-age-quote-91 {
    background-color: #000000;
    margin: 0;
}



@media (max-width:768px) {
    .stat-circle {
        width:150px !important;
        height:150px !important;
    }
    .stat-number {
        font-size:28px !important;
    }
    div#rp-das-sagen-unsere-partner-zur-republica-86 .block__title, 
    div#rp-unsere-partnerformate-87 .block__title,
    div#rp-partnerinformationen-anfordern-88 .block__title, 
    .block-views-blockpartner-eure-ansprechpartnerinnen-block-1 .block__title {
        font-size: 2rem !important;
    }
}   


/* Frontpage in (grey) color: remove colored space above footer */
.path-frontpage main #block-rp22-content > div > article > div.node__content {
    padding-block-end: 0;
}
.path-frontpage main #block-rp22-content {
    margin-block-end: 0;
}
.path-frontpage #page > footer.site-footer {
    padding-top: 2rem;
}

/* Spacing between form headers: /form/partner-social-media  */
.path-form-partner-social-media .form-item-eigens-visual-vorschlagen {
    padding-top: 2rem;
}


/* Slider 2.0 globals ================================================================== */

/* Whole region "Hero" is a grid */
div#block-views-block-blockslider-block-1, 
#block-rp22-views-block-blockslider-block-1 { 
    grid-column: 1 / span 12;
    grid-row: 1 / span 2;
    margin-bottom: 0 !important;
    width: 100%;
}

.view-id-blockslider .view-content {
    display: block;
}

/* soft-hidden */
.view-id-blockslider .embla__slide.soft-hidden {
    display: none;
}

/* - Show first slide, all slides per default soft-hidden */
.view-id-blockslider .embla__container .embla__slide:first-child {
    display: flex;
}

/* MOBILE: Each Slide is flexbox: has top img, bottom text ------- */
/* make each slide a grid. copied from .region--hero */
.view-id-blockslider .embla__slide {
    display: flex;
    flex-direction: column;
}

/* slide img */
.view-id-blockslider .embla__slide .field--type-entity-reference {
    margin-bottom: 0;
}

/* slide text */
.view-id-blockslider .embla__slide .field--type-text-with-summary {
    margin-left: 2rem;
    margin-bottom: 2rem;
}

/* DESKTOP: Each slide is grid ------------------ */
@media (min-width: 75rem) {

    /* first slide */
    .view-id-blockslider .embla__container .embla__slide:first-child {
        display: grid;
    }

    /* slide */
    .view-id-blockslider .embla__slide {
        display: grid;
        align-items: center;
        grid-template-rows: 1fr min-content;
        grid-template-columns: minmax(calc(calc(100vw - 1920px) / 2 ), 1rem) repeat(8, 1fr) minmax(calc(calc(100vw - 1920px) / 2 ), 1rem);
    }
    
    /* slide img */
    .view-id-blockslider .embla__slide .field--type-entity-reference {
        grid-column: 1 / span 6;
        grid-row: 1 / span 2;
    }
    
    /* slide text */
    .view-id-blockslider .embla__slide .field--type-text-with-summary {
        grid-column: 7 / span 3;
        grid-row: 1;
        margin-left: 2rem;
        margin-bottom: 0;
    }
}

/* img element itself */
.view-id-blockslider .embla__slide .field--type-entity-reference .field__item img {
    width: 100%;
}

/* Keyvisual video element parent */
.view-id-blockslider .embla__slide .field--type-entity-reference .field__item {
    aspect-ratio: 16 / 9;
    background-image: url(/sites/default/files/2025-11/rp26-Web_light-mini_thumbnail.jpg);
    background-repeat: no-repeat;
    background-size: contain;
}

/* Slider sorting num, irrelevant */
.view-id-blockslider .embla__slide .field--name-field-slider-sortierung { 
    display: none;
}

/* SLIDES in SLIDER */

/* VIDEO SLIDE pre-load background */
.view-id-blockslider .embla__slide video {
    width: 100%;
}

.view-id-blockslider .embla__slide video::before { 
    width: 100%;
}

.view-id-blockslider .embla__slide .button {
    width: fit-content;
}


/*temporary partner site hack*/
.view-display-id-block_2 .view-content h3:first-of-type {
    display: none;
}

body .block-views-blockpartners-block-1 h2.block__title {
    font-size: 2.5rem !important;
}



