/*
Theme Name: Uncode Child
Description: Child theme for Uncode theme
Author: Undsgn™
Author URI: http://www.undsgn.com
Template: uncode
Version: 1.0.0
Text Domain: uncode
*/

/* roboto-mono-100 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Roboto Mono';
  font-style: normal;
  font-weight: 100;
  src: url('fonts/roboto-mono-v31-latin-100.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* roboto-mono-200 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Roboto Mono';
  font-style: normal;
  font-weight: 200;
  src: url('fonts/roboto-mono-v31-latin-200.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* roboto-mono-300 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Roboto Mono';
  font-style: normal;
  font-weight: 300;
  src: url('fonts/roboto-mono-v31-latin-300.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* roboto-mono-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Roboto Mono';
  font-style: normal;
  font-weight: 400;
  src: url('fonts/roboto-mono-v31-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* roboto-mono-500 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Roboto Mono';
  font-style: normal;
  font-weight: 500;
  src: url('fonts/roboto-mono-v31-latin-500.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* roboto-mono-600 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Roboto Mono';
  font-style: normal;
  font-weight: 600;
  src: url('fonts/roboto-mono-v31-latin-600.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* roboto-mono-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Roboto Mono';
  font-style: normal;
  font-weight: 700;
  src: url('fonts/roboto-mono-v31-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}


/* db2026.0710: Central variables for repeated colors and font sizes */
:root {
  --color-black: #000;
  --color-white: #fff;
  --color-grey-hover: #aeadad;
  --font-size-menu: 14px;
  --font-size-form: 15px;
  --font-size-accent: 17px;
  --menu-fade-duration: 500ms;
}

html {
  font-family: NB_international, 'Helvetica Neue', Helvetica, Arial, sans-serif;
}

/* Oberhalb NEU von db 2026 --------------------------------------------------------------------------- */

/* Moved here from themes -> additional css von db 2026 */

.contactform .divs {
    display: flex;
    justify-content: space-between;
}
.contactform .divs{
    flex: 0 0 2% 0 !important;
}
.contactform .hp-field {
  position: absolute;
  left: -9999px;
}

.firstdiv {
    width: 100%;
    font-family: 'Roboto Mono' !important;
    padding-right: 2%;
}
.seconddiv {
    width: 100%;
    font-family: 'Roboto Mono' !important;
}
.contactform input[type=email], input[type=text], select, textarea {
    width: 100%;
}
.wpcf7 textarea {
    height: 100px;
}
/*.input-flex{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}*/
form p {
    margin: 0 0 -10 0 !important;
}
.btn-contactform {
    border-radius: 0px !important;
    background-color: var(--color-white) !important;
    color: var(--color-black);
    font-family: 'Roboto Mono' !important;
}
.style-dark .btn-contactform{
    background-color: var(--color-white) !important;
}
@media (max-width: 800px) {
.contactform .divs {
    flex-direction: column;
    }
.contactForm textarea {
    padding: 0 !important;
    margin-top: -10px;
    }
}
.style-light .btn-default, .style-dark .style-light .btn-default, .tmb-light .t-entry-text .btn-default, .style-dark .tmb-light .t-entry-text .btn-default, .tmb-dark .t-overlay-inner .btn-default {
    color: var(--color-black) !important;
    background-color: var(--color-white) !important;
    border-color: var(--color-black) !important;
}
.tmb-meta-size-large.tmb .t-entry p.t-entry-meta span, .tmb-meta-size-large.tmb .t-entry p.t-entry-comments, .tmb-meta-size-large.tmb .t-entry p.t-entry-author span.tmb-username-wrap{
    font-family: 'Roboto Mono' !important;
}

.t-entry-excerpt {
    font-family: 'Roboto Mono';
    font-weight: 400 !important;
}

.lg-sub-html h6:not([class*="fontsize-"]), .lg-sub-html .h6:not([class*="fontsize-"]) {
    font-family: 'Roboto Mono';
    font-weight: 400;
}

.grid-filters.filter-typography-inherit .mobile-toggle-trigger, .grid-filters.filter-typography-inherit .uncode-toggle-ajax-filters, .grid-filters.filter-typography-inherit ul.menu-smart, .grid-filters.filter-typography-inherit ul.menu-smart a {
    font-family: 'Roboto Mono' !important;
    font-weight: 400 !important;
    font-size: var(--font-size-accent) !important;
}
.lines-button .lines, .lines-button .lines:before, .lines-button .lines:after, .lines-button .lines > span {
    height: 1px !important;
    width: 25px;
}
.lines-button.close .lines:before {
    margin-top: -3px;
}
.menu-horizontal-inner {
    font-family: 'Roboto Mono' !important;
    font-size: var(--font-size-menu) !important;
    font-weight: 400;
}
body:not(.menu-force-opacity):not(.navbar-hover) .style-dark-override:not(.is_stuck:not(.menu-desktop-transparent)):not(.is_mobile_open).menu-transparent .menu-horizontal-inner > .nav > .menu-smart > li > a, html.overlay-open body:not(.menu-force-opacity):not(.navbar-hover) .style-dark-override .menu-horizontal-inner > .nav > .menu-smart > li > a {
    font-size: var(--font-size-menu) !important;
    font-weight: 400 !important;
}
body:not(.menu-force-opacity):not(.navbar-hover) .style-light-override:not(.is_stuck:not(.menu-desktop-transparent)):not(.is_mobile_open) .menu-horizontal-inner > .nav > .menu-smart > li > a, html.overlay-open body:not(.menu-force-opacity):not(.navbar-hover) .style-light-override .menu-horizontal-inner > .nav > .menu-smart > li > a {
    font-size: var(--font-size-menu) !important;
    font-weight: 400 !important;
}
.menu-container:not(.vmenu-container):not(.grid-filters) ul.menu-smart > li > a:not(.social-menu-link):not(.vc_control-btn) {
    font-size: var(--font-size-menu) !important;
    font-weight: 400 !important;
}
.menu-smart > li > a {
    padding: 0px !important;
}
.lines-button .lines:after {
    top: 0px !important;
}
.lines-button {
    padding-bottom: 6px !important;
}

/*lightbox*/
.lg-next, .lg-prev{
    opacity: 0 !important;
}
.lg-toolbar .lg-icon {
    opacity: 1 !important;
    font-size: 0px !important;
    font-weight: 100;
    height: 80px !important;
    width: 80px !important;
}
.lg-toolbar .lg-icon:after {
    opacity: 1 !important;
}
.lg-close.lg-icon {
    background: url(http://alessiamandanici.dbagel.de//wp-content/uploads/2024/02/AM_Web_Icon_X.png) !important;
    background-size: 50% !important;
    background-repeat: no-repeat !important;
    background-position: center !important;
}
.lg-video-cont {
    width: 100% !important;
    height: 535px !important;
}
.lg-img-wrap {
    padding: 20px;
}
.lg-sub-html {
    padding-bottom: 35px;
}
.lg-backdrop.in {
    opacity: 0.94 !important;
}

.drop-image-extra.drop-extra-size-25.drop-extra-weight-normal.drop-extra-pos-after-bottom {
    font-family: 'Roboto Mono';
    font-size: var(--font-size-accent);
    padding-left: 5px;
}

.wpcf7-response-output {
    font-family: 'Roboto Mono';
    font-size: var(--font-size-form) !important;
    text-align: right;
}

.post-title-wrapper {
    display: none !important;
}

/*Sort by dropdown menu*/
.menu-smart--filter-cats_mobile-toggle.desktop-hidden.mobile-toggle {
    border: 1px;
    border-style: solid;
    padding: 10px !important;
    margin: 20px 0px -1px 1px;
    width: 24.1% !important;
}
@media only screen and (max-width: 720px) {
  .menu-smart--filter-cats_mobile-toggle.desktop-hidden.mobile-toggle {
    width: 100% !important;
  }
}
.menu-smart.sm.text-uppercase.menu-smart--filter-cats.menu-smart--filter-cats-mobile-dropdown.ul-mobile-dropdown {
    border: 1px;
    border-style: solid;
    padding: 10px !important;
    width: 24.1% !important;
    margin: 0px 0px 0px 1px;
}
@media only screen and (max-width: 720px) {
.menu-smart.sm.text-uppercase.menu-smart--filter-cats.menu-smart--filter-cats-mobile-dropdown.ul-mobile-dropdown {
    width: 100% !important;
}
}

/*MENU Off canvas*/
.vmenu-row-wrapper {
    background-color: var(--color-black) !important;
}
.menu-light .menu-smart > li.current-menu-item:not(.menu-item-type-custom) > a{
    color: var(--color-grey-hover) !important;
}
.vmenu-row-wrapper .menu-item a{
    color: var(--color-white);
}
.vmenu-container.menu-light .lines:not(.lines-dropdown):after {
    background: var(--color-white);
}
.vmenu-container.menu-light .lines:not(.lines-dropdown):before {
    background: var(--color-white);
}
.menu-sidebar-inner {
    padding-left: 2.2rem;
}
/*mobile Anpassung Menu*/
.submenu-light:not(.isotope-filters):not(.top-menu-enhanced) .menu-smart, .submenu-light:not(.isotope-filters):not(.top-menu-enhanced) .menu-sidebar-inner, .submenu-light:not(.isotope-filters):not(.top-menu-enhanced) .main-menu-container {
    background-color: var(--color-black) !important;
    width: 100%;
}
.menu-primary-inner.menu-smart.sm.sm-vertical a{
    color: var(--color-white);
}
.menu-primary-inner.menu-smart.sm.sm-vertical a:hover{
    color: var(--color-grey-hover) !important;
}
body.menu-mobile-off-canvas .menu-primary.submenu-light .uncode-close-offcanvas-mobile .lines:not(.lines-dropdown):before{
    background: var(--color-white);
}
body.menu-mobile-off-canvas .menu-primary.submenu-light .uncode-close-offcanvas-mobile .lines:not(.lines-dropdown):after{
    background: var(--color-white);
}
.uncode-close-offcanvas-mobile {
    padding-top: 30px;
}

/* Filter-Dropdown-Desktop */

.mobile-dropdown.grid-filters ul.menu-smart li {
    display: block !important;
}
.menu-smart--filter-cats_mobile-toggle-trigger.mobile-toggle-trigger.no-isotope-filter.no-grid-filter.menu-smart-toggle {
    padding-left: 9px;
}
.grid-filters ul.menu-smart > li > span {
padding: 0px 0px 0px 0px !important;
}
.grid-filters .menu-smart a {
    padding: 5px 9px 5px 9px;
  }
.menu-horizontal.text-mobile-left {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    text-align: left;
}
.menu-smart--filter-cats_mobile-toggle-trigger.menu-smart-toggle {
    display: flex;
    justify-content: space-between;
}
.grid-filters:not(.with-bg) {
    padding-bottom: 36px;
}
.grid-filters .filters-toggle-trigger:after, .grid-filters .menu-smart--filter-cats_mobile-toggle-trigger:after {
    content: "";
    display: inline-block;
    width: 15px;
    height: 15px;
    background-image: url(/wp-content/uploads/2024/02/Arrow_Filter_down.png);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 100%;
}
.mobile-dropdown .menu-smart--filter-cats {
  display: none;
}

/* Pfeile-Hover */

.arrow .icon-box-icon {
    position: relative;
    padding-top: 2px;
}
.arrow .icon-box-icon:before {
    display: inline-block;
    content: "";
    position: absolute;
    width: 33%;
    overflow: hidden;
    height: 1em;
    background-color: var(--color-white);
    transform:translateX(-100%);
    transition: transform 0.2s;
}

.arrow:hover .icon-box-icon:before {
    transform:translateX(0);
}


/*fontsizes mobil*/
@media only screen and (max-width: 720px) {
h1, .h1 {font-size: 45px !important;}
}


/* Unterhalb NEU von db 2026 --------------------------------------------------------------------------- */

/* Enable Custom background color */
body.has-custom-background-color .style-light-bg,
body.has-custom-background-color .style-color-xsdn-bg {
    background-color: transparent;
}

/* Icon arrow styles */
.icon-box.arrow .icon-box-icon:before {
    display: none;
}
.icon-box.arrow {
    display: flex;
    overflow: hidden;
}
.icon-box.arrow .icon-box-icon,
.icon-box.arrow .icon-box-content {
    display: block;
    transition: all .25s;
}
.icon-box.arrow .icon-box-icon {
    flex: 0 0 35px;
    margin: 0;
}
.icon-box.arrow .icon-box-content {
    flex: 1 1 calc(100% - 50px);
}
.icon-box.arrow:hover .icon-box-icon {
    margin-left: -1rem;
}
.icon-box.arrow a:hover {
  color: inherit;
}

/* Main menu */
/* Only show current page next to menu toggle */
.main-menu-container .navbar-cta .menu-item:not(.current-menu-item):not(.menu-item-type-custom) {
  display: none!important;
}

.main-header .menu-container {
  max-width: 480px;
}

.main-menu-container .menu-accordion .menu-item {
  margin-bottom: .5rem;
}

.main-menu-container .menu-accordion .menu-item a {
  font-size: 4rem!important;
  font-weight: 500!important;
}

.uncode-close-offcanvas-overlay {
  top: 0.25rem;
  left: -0.8rem!important;
}

.uncode-close-offcanvas-overlay:after {
  content: 'CLOSE';
  position: absolute;
  right: 0;
  top: -1px;
  bottom: 0;
  color: var(--color-white);
  font-family: 'Roboto Mono';
  font-size: var(--font-size-menu);
  vertical-align: bottom;
}

/* db2026.0804: Language switch duplicated to the right of CLOSE in the offcanvas
   overlay (built in js/child.js) — the overlay covers the CTA menu's own lang item.
   Hidden below 960px like the CLOSE button itself. */
.vmenu-container .offcanvas-lang {
  position: absolute;
  left: 7.8rem;
  z-index: 1;
  line-height: 62px;
}
.vmenu-container .offcanvas-lang a {
  color: var(--color-white);
  font-family: 'Roboto Mono';
  font-size: var(--font-size-menu);
}
@media (max-width: 959px) {
  .vmenu-container .offcanvas-lang {
    display: none;
  }
}

/* db2026.0702: Top menu bar: always fixed and transparent, no white background when
   stuck, no hide-on-scroll. Uncode drives this via JS (is_stuck/menu-hided classes +
   inline position/visibility/transform on .menu-container) — !important outranks the
   inline styles. Vertical offcanvas menu (.vmenu-container) deliberately excluded. */
#masthead .menu-container:not(.vmenu-container) {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  transform: none !important;
  visibility: visible !important;
  background: transparent !important;
}
.menu-wrapper .menu-container-ghost-bg {
  display: none !important;
}
body.admin-bar #masthead .menu-container:not(.vmenu-container) {
  top: 32px !important; /* keep clear of the WP admin bar when logged in */
}

/* db2026.0702: Once the page is scrolled (.page-scrolled set by js/child.js), only
   the lines button stays visible — in both menu skins. Logo and CTA items (MENU,
   language switch) fade in while hovering the button area — or the (invisible but
   hoverable) elements themselves, so they stay visible and clickable while the
   cursor travels from the button onto them. Fade-out has a short delay to bridge
   the gap. */
#masthead .menu-container:not(.vmenu-container) .logo-container,
#masthead .menu-container:not(.vmenu-container) .main-menu-container {
  transition: opacity 300ms ease 300ms;
}
body.page-scrolled #masthead .menu-container:not(.vmenu-container) .logo-container,
body.page-scrolled #masthead .menu-container:not(.vmenu-container) .main-menu-container {
  opacity: 0;
}
body.page-scrolled #masthead .menu-container:not(.vmenu-container):has(.mmb-container:hover, .logo-container:hover, .main-menu-container:hover) .logo-container,
body.page-scrolled #masthead .menu-container:not(.vmenu-container):has(.mmb-container:hover, .logo-container:hover, .main-menu-container:hover) .main-menu-container {
  opacity: 1;
  transition-delay: 0s;
}

/* db2026.0702: MENU item acts as offcanvas trigger (see functions.php) — show pointer */
.menu-cta-inner a[role="button"]:not([href]) {
  cursor: pointer;
}

/* db2026.0702: Offcanvas menu fade-in instead of slide-in (TODO.md) */
@media (min-width: 960px) {
  body.menu-offcanvas.vmenu-offcanvas-overlay .vmenu-container {
    transform: translateX(0) !important; /* neutralize the slide offset from Uncode's generated inline CSS */
    opacity: 0;
    visibility: hidden;
    transition: opacity var(--menu-fade-duration) ease, visibility 0s linear var(--menu-fade-duration), box-shadow var(--menu-fade-duration) ease;
  }
  body.menu-offcanvas.vmenu-offcanvas-overlay.off-opened .vmenu-container {
    opacity: 1;
    visibility: visible;
    transition: opacity var(--menu-fade-duration) ease, visibility 0s, box-shadow var(--menu-fade-duration) ease;
  }
}

/* Footer */
.site-footer .wpcf7-form-control {
  font-family: sans-serif;
}

/* Contact form */
.contactform input[type="text"],
.contactform input[type="email"],
.contactform textarea {
  font-family: 'Roboto Mono';
  font-size: var(--font-size-form);
  line-height: 1.2;
  font-weight: 500;
}
.contactform textarea {
  height: 100px;
}
.contactform .hp-field {
  position: absolute;
  left: -9999px;
}

/* Newsletter signup im Footer (db2026.0720) */
.newsletterform {
  display: flex;
  align-items: end;
}
.newsletterform p {
  margin: 0;
}
.newsletterform > div:first-child {
  flex: 1 1 auto;
}
.newsletterform input {
  height: 3rem;
}

.newsletterform input[type="email"] {
  width: 100%;
  font-family: 'Roboto Mono';
  font-size: var(--font-size-form);
  line-height: 1.2;
  font-weight: 500;
  margin: 0;
}
.newsletterform .hp-field {
  position: absolute;
  left: -9999px;
}
.btn-newsletter,
.style-dark .btn-newsletter {
  border-radius: 0 !important;
  background-color: var(--color-white) !important;
  color: var(--color-black) !important;
  font-family: 'Roboto Mono' !important;
  white-space: nowrap;
}

/* db2026.0721: Newsletter popup on the home page. Content (heading/text/form/
   consent) comes from the "newsletter-popup" Content Block; box + close X here.
   No backdrop dim (per layout) — the transparent overlay still catches
   outside-clicks for dismissal. Behaviour in js/newsletter-popup.js. */
.am-nl-popup-overlay {
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: opacity var(--menu-fade-duration) ease;
}
.am-nl-popup-overlay[hidden] {
  display: none;
}
.am-nl-popup-overlay.is-visible {
  opacity: 1;
}
.am-nl-popup {
  position: relative;
  box-sizing: border-box;
  width: calc(100% - 4rem);
  max-width: 740px;
  max-height: calc(100vh - 2rem);
  overflow-y: auto;
  padding: 3rem 5rem;
  background: var(--color-black);
  color: var(--color-white);
}
.am-nl-popup .uncode_block,
.am-nl-popup .vc_row,
.am-nl-popup .row-container {
  background: none !important;
}
/* Drop the Content Block column gutter (single-internal-gutter ~36px) so the
   content sits at the box's own padding instead of doubling up. */
.am-nl-popup .wpb_column {
  padding: 0 !important;
}
/* mono heading + light body text, matching the footer newsletter column */
.am-nl-popup h1,
.am-nl-popup h2,
.am-nl-popup h3,
.am-nl-popup h4,
.am-nl-popup h5 {
  font-family: 'Roboto Mono', monospace !important;
  color: var(--color-white);
  text-transform: uppercase;
}
.am-nl-popup p {
  color: var(--color-white);
}
.am-nl-popup a {
  color: var(--color-white);
  text-decoration: underline;
}
/* Close button reuses the offcanvas menu's lines-button X (static .close state).
   Only positioning + white line colour differ (the box is dark). */
.am-nl-popup-close {
  position: absolute;
  top: 3rem;
  right: 3rem;
  /* above the Content Block markup, which is a later DOM sibling and would
     otherwise paint over (and intercept clicks on) the button */
  z-index: 10;
  /* solid box so the whole X is clickable — the rotated ::before/::after paint
     outside a collapsed line box, which made the visible cross a dead zone */
  display: flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  padding: 0 !important;
  margin: 0;
  border: 0;
  background: none;
  cursor: pointer;
}
.am-nl-popup-close .lines:before,
.am-nl-popup-close .lines:after {
  background: var(--color-white);
}
.am-nl-popup-close:hover .lines:before,
.am-nl-popup-close:hover .lines:after {
  background: var(--color-grey-hover);
}
@media (max-width: 480px) {
  .am-nl-popup {
    width: calc(100% - 2rem);
    padding: 1rem;
  }
  .am-nl-popup-close {
    top: 1.5rem;
    right: 1.5rem;
  }
}

/* Start page */

.start-page-slider-nav .vc_custom_heading_wrap.heading-inline em {
  font-size: var(--font-size-accent);
  font-family: 'Roboto Mono';
  font-style: normal;
  margin-left: 0.5rem;
}

/* db2026.0703: Single overlay with project links over the whole start page
   slider (row after [uncode_slider] with el_class "home-slider-overlay"),
   replacing the former copy of the links on every single slide. */
.row-slider {
  position: relative;
}
.home-slider-overlay {
  position: absolute!important;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 10;
  pointer-events: none; /* keep slider swipe/autoplay working */
}
.home-slider-overlay .row-child,
.home-slider-overlay .row-inner,
.home-slider-overlay .wpb_column,
.home-slider-overlay .uncol,
.home-slider-overlay .uncoltable {
  height: 100%;
}
.home-slider-overlay a {
  pointer-events: auto;
}
/* db2026.0721: On phones the menu sat at the top of the slider — the
   bottom-alignment relies on a percentage-height chain through Uncode's
   display:table columns, which iOS Safari drops when columns stack.
   Anchor the whole overlay content to the bottom with flex instead and
   let the inner heights collapse; also keeps the down-arrow (stacked
   below the menu on mobile) inside the slider. */
@media (max-width: 959px) {
  .home-slider-overlay {
    display: flex !important;
    align-items: flex-end;
  }
  .home-slider-overlay .row-child,
  .home-slider-overlay .row-inner,
  .home-slider-overlay .wpb_column,
  .home-slider-overlay .uncol,
  .home-slider-overlay .uncoltable {
    height: auto;
  }
}
.home-slider-overlay .uncont {
  padding: 0 36px 45px;
}
.overlay-project-link,
.unmenu-block li a.overlay-project-link {
  /* db2026.0710: second selector outweighs the theme's
     ".unmenu-block li a { display: flex !important }", which would
     top-align the status text inside the Menu Block */
  display: block!important;
  text-decoration: none;
  /* db2026.0710: menu links are nowrap by theme default; long status text
     (e.g. "in Finanzierung" on small screens) must wrap under the title
     like the former plain headings did */
  white-space: normal!important;
  margin-top: -0.5rem;
}
.overlay-project-link h2 {
  display: inline!important;
  margin: 0!important;
}
/* db2026.0710: Title/status typography lives here instead of Uncode's
   generated utility classes (fontspace-*, font-*, h5, font-weight-*) that
   the markup used before. Values taken from the original headings on the
   live start page. Explicit font-family needed because the theme's menu
   typography (Roboto Mono on menu links) would otherwise leak into the
   Menu Block items. The "h1" class stays on the title for the responsive
   heading size. */
.overlay-project-title {
  font-family: NB_international, 'Helvetica Neue', Helvetica, Arial, sans-serif!important;
  font-weight: 400!important;
  transition: color 0.2s;
}
.overlay-project-title:hover {
  color: var(--color-grey-hover);
}

.overlay-project-status {
  display: inline!important;
  font-size: var(--font-size-accent)!important;
  color: white;
}

.font-weight-500 :not(strong):not(b):not(.unmenu-title):not(.unmenu-title *):not(.menu-item-description) .overlay-project-status {
  font-weight: 400!important;
}

/* db2026.0710: The overlay links now come from a Menu Block (menus
   "Homeslider EN"/"Homeslider DE"; item markup rebuilt in functions.php,
   status text = page_category of the linked page). Neutralize the menu
   chrome so the items stack like the plain links they replaced. */
.home-slider-overlay .main-menu-container,
.home-slider-overlay .menu-horizontal-inner,
.home-slider-overlay .unmenu-block-in-page,
.home-slider-overlay .unmenu-block-in-page > li,
.home-slider-overlay .unmenu-block,
.home-slider-overlay .unmenu-block > li.menu-item {
  display: block!important;
  width: auto!important;
  margin: 0!important;
  padding: 0!important;
  border: 0!important;
  list-style: none!important;
  background: none!important;
}

/* Films */

/* Photography */

/* So the media gallery filter styling needs
  "Mobile Dropdown" activated to have the right look,
  but then it also adds ".desktop-hidden" */
.menu-smart--filter-cats_mobile-toggle.desktop-hidden {
  display: block!important;
}
.menu-smart--filter-cats_mobile-toggle-trigger:after {
  transition: transform 0.3s ease;
}
.menu-horizontal:has(.menu-smart--filter-cats[style*="display: block"]) .menu-smart--filter-cats_mobile-toggle-trigger:after {
  transform: rotate(180deg);
}

/* Lightbox */
@media (min-aspect-ratio: 1.5) {
  .lg-outer .lg-content {
    top: unset!important;
    max-height: 100vh;
    aspect-ratio: 16/9;
    margin-left: auto;
    margin-right: auto;
  }
}

/* db2026.0710: ARCHIVE — disabled page-id-/element-id-specific rules.
   Slated for removal; kept commented out in case a layout breaks badly
   without them. Re-enable individually if needed, otherwise delete this
   whole section once the pages have been verified. */

/*
.page-id-90081 .empty-space {
    margin-top: -10px !important;
}
.page-id-90081 .empty-space.empty-quart {
    padding-top: 0px !important;
}
*/

/*
.icon-135617 a:hover {
    opacity: 0.5 !important;
}
*/

/*
.page-id-130962 .empty-space.empty-quart {
    padding-top: 5px !important;
}
.page-id-130937 .empty-space.empty-quart {
    padding-top: 5px !important;
}
.page-id-130950 .empty-space.empty-quart {
    padding-top: 5px !important;
}
*/

/*
.page-id-130859 .t-entry-text {
    padding-bottom: 20px !important;
}
*/

/*
.page-id-130996 .desktop-hidden {
    display: block !important;
}
.page-id-131066 .desktop-hidden {
    display: block !important;
}
*/
/* db2026.0731: Post-titles hover preview (Films "More" list) — while the page is
   scrolled less than 75% of the window height (body class set in js/child.js),
   anchor the fixed-attachment preview image to the bottom of the viewport so it
   stays in the lower part of the screen and doesn't overlap the Featured section.
   !important needed to beat the inline background-position on the drop element. */
body.am-preview-lower .t-entry-drop.drop-parent.fixed-attachment {
    background-position-y: 100% !important;
}
.t-entry-drop.drop-parent.fixed-attachment {
    transition: opacity 0.3s ease-out, background-position 0.3s ease-out;
}

/* db2026.0731: Film pages prev/next + back navigation (see uncode_child_film_nav in
   functions.php). One flex row above the footer: prev left, back-to-Films centered,
   next right. Colors inherit from the page so it works on light and dark film pages. */
.film-nav {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 50px 30px;
  font-family: 'Roboto Mono';
  font-size: var(--font-size-menu);
  font-weight: 400;
  text-transform: uppercase;
}
.film-nav a {
  color: inherit;
  text-decoration: none;
  white-space: nowrap;
  min-width: 0;
}
.film-nav a:hover {
  color: var(--color-grey-hover);
}
.film-nav .film-nav-prev,
.film-nav .film-nav-next {
  flex: 1 1 0;
  display: flex;
  align-items: center;
  gap: 8px;
}
.film-nav .film-nav-next {
  justify-content: flex-end;
}
.film-nav .film-nav-title {
  overflow: hidden;
  text-overflow: ellipsis;
}
@media (max-width: 569px) {
  .film-nav {
    padding: 40px 20px;
    gap: 12px;
  }
}

/* db2026.0804: Mobile language selector — Polylang switcher left of the mobile
   menu button (output via uncode_mobile_extra_menu_elements in functions.php).
   Mobile only: the .mmb-container it renders into also exists on desktop (the
   offcanvas burger), where the desktop menu already has its own DE/EN item.
   Color follows the menu skin like the burger lines: black on light skin,
   white when the skin sampler sets style-dark-override on the masthead. */
.mobile-lang-selector {
  display: none;
}
@media (max-width: 959px) {
  .mobile-lang-selector {
    display: flex;
    align-items: center;
    height: 100%;
    padding-left: 1rem;
  }
}
.mobile-lang-selector a {
  font-family: 'Roboto Mono' !important;
  font-size: var(--font-size-menu) !important;
  font-weight: 400;
  color: #000;
  text-decoration: none;
}
#masthead.style-dark-override .mobile-lang-selector a {
  color: #fff;
}
#masthead.style-light-override .mobile-lang-selector a {
  color: #000;
}
