/* ==========================================================
   override.css — Minimal dark theme
   Light grey on very dark grey. DM Sans. No shadows/borders.
   ========================================================== */

:root {
  --bg: #1a1a1a;
  --fg: #ccc;
  --fg-muted: #888;
  --accent: #fff;
  --radius: 3px;
}

/* --- Logo: no border-radius, SCHMITZ text --- */

#logo {
  margin-left: -4px !important;
}

#logo img {
  border-radius: 0 !important;
}

#logo a {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  text-decoration: none !important;
}

#logo .logo-text {
  font-family: 'DM Sans', sans-serif !important;
  font-weight: 400;
  font-size: 16px;
  letter-spacing: 0.05em;
  color: var(--fg) !important;
  text-decoration: none !important;
  white-space: nowrap;
}

/* --- Neo banner: no background --- */

.neoMain,
.neo {
  background: none !important;
  border: none !important;
  color: var(--fg-muted) !important;
  padding: 0 !important;
  margin: 0 !important;
  text-align: right !important;
  width: auto !important;
  box-sizing: border-box !important;
  font-size: 0.85em !important;
}

.neoMain a,
.neo a {
  color: var(--fg) !important;
}

/* --- Project gaps --- */

#main, #content, .id-content {
  overflow: visible !important;
}

.hentry {
  margin: 0 0 25px 0 !important;
  overflow: visible !important;
}

.blog .hentry {
  width: 370px !important;
  padding-right: 30px !important;
  box-sizing: border-box !important;
}

.blog .hentry.format-quote,
.blog .hentry.format-gallery {
  width: 740px !important;
  padding-right: 30px !important;
  box-sizing: border-box !important;
}

.blog .hentry .entry-content .tile .tile-content img {
  max-width: 100% !important;
  width: 100% !important;
  height: auto !important;
}

/* --- Isotope: no animation --- */

.isotope .isotope-item {
  transition: none !important;
}

.isotope {
  transition: none !important;
}

/* --- Thumbnail: Bayer dithered images --- */

.hentry .entry-content .tile .tile-content {
  position: relative !important;
  overflow: hidden !important;
  border-radius: var(--radius) !important;
}

/* Original image: always visible */
.hentry .entry-content .tile .tile-content img:not(.dithered) {
  opacity: 1 !important;
}

/* Dithered image: overlay on top, fades out on hover */
.hentry .entry-content .tile .tile-content img.dithered {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: auto !important;
  z-index: 1 !important;
  opacity: 1 !important;
  transition: opacity 1.2s ease !important;
}

/* Fade out dithered on hover */
.hentry .entry-content .tile:hover .tile-content img.dithered {
  opacity: 0 !important;
  transition: opacity 0.3s ease !important;
}

/* --- Thumbnail text: standard kerning --- */

.hentry .entry-content .tile-info-category,
.hentry .entry-content .tile-info-date,
.hentry .entry-content .tile-info-title,
.hentry .entry-content .tile-info-title a {
  letter-spacing: normal !important;
}

/* --- Single page: cat pill in entry-meta --- */

.single .single-post-content .cat {
  display: inline-block !important;
  float: none !important;
  border-radius: 999px !important;
  font-size: 0.6em !important;
  line-height: 1.6em !important;
  padding: 1px 12px !important;
  margin: 0 0 12px 0 !important;
}

.single .single-post-content .entry-meta .cat {
  display: block !important;
  width: fit-content !important;
  margin-bottom: 10px !important;
}

/* --- Single page: title normal case, more space, bigger text, narrower left --- */

.single .single-post-content .entry-title {
  text-transform: none !important;
  font-size: 2em !important;
  margin-top: 30px !important;
  margin-bottom: 10px !important;
}

.single .single-post-content .entry-body {
  font-size: 1.1em !important;
  font-weight: 300 !important;
  line-height: 1.6em !important;
}

.single .single-post-content .entry-body strong {
  font-weight: 500 !important;
}

.single .no-slide,
.single .royalSlider,
.single .new-royalslider-41,
.single .new-royalslider {
  margin-bottom: 40px !important;
}

/* --- About page: headings match project title style --- */

.page h2,
.page h3 {
  text-transform: none !important;
  font-size: 2em !important;
  font-weight: 300 !important;
  line-height: 1.2em !important;
  margin-bottom: 16px !important;
}

/* --- Hide prev/next navigation --- */

.navigation-post,
#nav-below {
  display: none !important;
}

/* --- RoyalSlider: no colored nav --- */

.rsProto .rsArrow .rsArrowIcn {
  filter: grayscale(1) brightness(1.5) !important;
}

/* --- Font --- */

html, body, div, span, p, a, h1, h2, h3, h4, h5, h6,
button, input, select, textarea,
.cookie-notice-container #cn-notice-text {
  font-family: 'DM Sans', sans-serif !important;
}

/* --- Base colors --- */

body,
#page,
.single article,
.single .entry-header,
.single .entry-content,
.page article,
.page .entry-content {
  background-color: var(--bg) !important;
  color: var(--fg) !important;
}

/* --- Strip all category background colors --- */

.category-arbeit,
.category-news,
.category-lehre,
.category-info,
.category-kontakt,
.hentry {
  background: none !important;
}

/* --- All images: corner radius --- */

img,
.rsImg,
.hentry .entry-content .tile .tile-content img,
.royalSlider img,
.rsProto .rsImg {
  border-radius: var(--radius) !important;
}

/* --- Tile text: remove padding/margin, light grey --- */

.hentry .entry-content .tile-info,
.hentry .entry-content .tile,
.hentry .entry-content,
.hentry .entry-content a {
  background: none !important;
  background-color: transparent !important;
}

.hentry .entry-content .tile-info {
  padding: 0 !important;
  margin: 0 !important;
}

.hentry .entry-content .tile-info-meta {
  margin: 4px 0 0 0 !important;
  padding: 0 !important;
}

.hentry .entry-content .tile-info-title {
  margin: 0 0 4px 0 !important;
  padding: 0 !important;
}

.hentry .entry-content .tile-info-category,
.hentry .entry-content .tile-info-category a,
.hentry .entry-content .tile-info-date,
.category-arbeit .entry-content .tile-info-category,
.category-arbeit .entry-content .tile-info-category a,
.category-arbeit .entry-content .tile-info-date,
.category-news .entry-content .tile-info-category,
.category-news .entry-content .tile-info-category a,
.category-news .entry-content .tile-info-date,
.category-lehre .entry-content .tile-info-category,
.category-lehre .entry-content .tile-info-category a,
.category-lehre .entry-content .tile-info-date,
.category-info .entry-content .tile-info-category,
.category-info .entry-content .tile-info-category a,
.category-info .entry-content .tile-info-date,
.category-kontakt .entry-content .tile-info-category,
.category-kontakt .entry-content .tile-info-category a,
.category-kontakt .entry-content .tile-info-date {
  color: var(--fg-muted) !important;
}

.hentry .entry-content .tile-info-title,
.hentry .entry-content .tile-info-title a,
.category-arbeit .entry-content .tile-info-title,
.category-arbeit .entry-content .tile-info-title a,
.category-news .entry-content .tile-info-title,
.category-news .entry-content .tile-info-title a,
.category-lehre .entry-content .tile-info-title,
.category-lehre .entry-content .tile-info-title a,
.category-info .entry-content .tile-info-title,
.category-info .entry-content .tile-info-title a,
.category-kontakt .entry-content .tile-info-title,
.category-kontakt .entry-content .tile-info-title a {
  color: var(--fg) !important;
}

/* No-image tile titles */
.hentry .entry-content .tile-noimage-title,
.hentry .entry-content .tile-noimage-title a,
.category-arbeit .entry-content .tile-noimage-title a,
.category-news .entry-content .tile-noimage-title a,
.category-lehre .entry-content .tile-noimage-title a,
.category-info .entry-content .tile-noimage-title a,
.category-kontakt .entry-content .tile-noimage-title a {
  color: var(--fg) !important;
  text-transform: none !important;
  font-size: 1.4em !important;
  font-weight: 300 !important;
  line-height: 1.3em !important;
  padding-left: 0 !important;
  margin-left: 0 !important;
}

/* Morelink */
.hentry .entry-content .tile-info-title .morelink a,
.category-arbeit .entry-content .tile-info-title .morelink a,
.category-news .entry-content .tile-info-title .morelink a,
.category-lehre .entry-content .tile-info-title .morelink a,
.category-info .entry-content .tile-info-title .morelink a,
.category-kontakt .entry-content .tile-info-title .morelink a {
  color: var(--fg-muted) !important;
}

/* --- Links --- */

a,
a:visited,
a:hover,
a:focus,
a:active {
  color: var(--fg) !important;
}

a:hover {
  color: var(--accent) !important;
}

/* --- Menu --- */

#mainmenu ul li a,
#mainmenu ul li a:visited,
#mainmenu ul li a:hover,
#mainmenu ul li a:active {
  color: var(--fg) !important;
}

#mainmenu ul li a:hover {
  color: var(--accent) !important;
}

#options ul li a.selected,
#mainmenu ul li a.selected {
  color: var(--accent) !important;
  border-bottom: 2px solid var(--accent) !important;
  background: none !important;
}

/* Nav menu (off-canvas) selected states */
#nav #options ul li a.selected,
#nav ul li a.selected,
#nav ul li a:hover,
#nav ul li a:focus {
  background-color: var(--accent) !important;
  color: var(--bg) !important;
  border: none !important;
}

/* --- Single page --- */

.single .single-post-content .cat {
  background-color: var(--fg) !important;
  color: var(--bg) !important;
}

.single .single-post-content .entry-title {
  color: var(--fg) !important;
}

.single .single-post-content .entry-body,
.single .single-post-content .entry-meta {
  color: var(--fg) !important;
}

.single .single-post-content .entry-meta .type {
  color: var(--fg) !important;
}

.single .single-post-content .entry-meta .value {
  color: var(--fg-muted) !important;
}

.single #code_arbeit a,
.single #code_news a,
.single #code_lehre a {
  color: var(--fg) !important;
}

.single #code_arbeit a:hover,
.single #code_news a:hover,
.single #code_lehre a:hover {
  border-bottom-color: var(--accent) !important;
  color: var(--accent) !important;
}

.single #code_arbeit .cat,
.single #code_lehre .cat,
.single #code_news .cat {
  background-color: var(--fg) !important;
  color: var(--bg) !important;
}

/* --- Page (info, etc.) --- */

.page h2,
.page h3,
.page h4 {
  color: var(--fg) !important;
}

.page .entry-content,
.page .entry-content .smalltext {
  color: var(--fg) !important;
}

.page .entry-content a {
  color: var(--fg) !important;
}

.page .entry-content a:hover {
  color: var(--accent) !important;
  border-bottom-color: var(--accent) !important;
}

/* --- Navigation (prev/next) --- */

[class*="navigation"] .nav-previous a,
[class*="navigation"] .nav-next a,
.nav-previous a,
.nav-next a {
  color: var(--fg) !important;
}

/* --- Footer --- */

#colophon {
  clear: both !important;
}

.footer-menu {
  border-top: 1px solid #444 !important;
}

.footer-menu ul li a,
.footer-menu ul li a:link,
.footer-menu ul li a:visited {
  color: var(--fg) !important;
}

.footer-menu ul li a:hover,
.footer-menu ul li a:active {
  color: var(--accent) !important;
}

.footer-menu .topper a,
.footer-menu .topper a:active,
.footer-menu .topper a:visited {
  color: var(--fg) !important;
}

.footer-menu .topper a:hover {
  color: var(--accent) !important;
}

#colophon .site-info,
#colophon .site-info-ghost {
  border-top: 1px solid #444 !important;
  color: var(--fg-muted) !important;
}

#colophon .site-info a {
  color: var(--fg-muted) !important;
}

/* --- Top button --- */

.top-btn {
  color: var(--fg) !important;
}

/* --- Error 404 --- */

.error404 h1 {
  color: var(--fg) !important;
}

.error404 .entry-content a {
  color: var(--fg) !important;
}

.error404 .entry-content a:hover {
  border-bottom-color: var(--accent) !important;
}

/* --- RoyalSlider --- */

.rsProto {
  background: var(--bg) !important;
  color: var(--fg) !important;
  border-radius: 3px !important;
  overflow: hidden !important;
}

.rsProto .rsOverflow,
.rsProto .rsSlide,
.rsProto .rsVideoFrameHolder,
.rsProto .rsThumbs {
  background: var(--bg) !important;
}

.rsProto .rsOverflow {
  border-radius: 0 !important;
}

.rsProto img {
  border-radius: 0 !important;
}

/* Video play/close buttons: grayscale */
.rsProto .rsPlayBtnIcon,
.rsProto .rsCloseVideoIcn {
  background-color: rgba(0,0,0,0.6) !important;
  filter: grayscale(1) brightness(1.5) !important;
}

.rsProto .rsPlayBtn:hover .rsPlayBtnIcon,
.rsProto .rsCloseVideoIcn:hover {
  background-color: rgba(0,0,0,0.8) !important;
}

.rsProto .rsBullet span {
  background: #555 !important;
}

.rsProto .rsBullet.rsNavSelected span {
  background-color: var(--fg) !important;
}

/* --- Kill all box-shadows --- */

*,
*::before,
*::after {
  box-shadow: none !important;
  text-shadow: none !important;
}

/* --- Kill borders on media --- */

.wp-caption {
  border: none !important;
}

.navigation-main ul ul {
  box-shadow: none !important;
}

/* --- Buttons: flat dark --- */

button,
html input[type="button"],
input[type="reset"],
input[type="submit"] {
  background: var(--bg) !important;
  border: 1px solid var(--fg) !important;
  border-radius: 0 !important;
  color: var(--fg) !important;
  box-shadow: none !important;
  text-shadow: none !important;
}

button:hover,
html input[type="button"]:hover,
input[type="reset"]:hover,
input[type="submit"]:hover {
  background: var(--fg) !important;
  color: var(--bg) !important;
  border-color: var(--fg) !important;
}

/* --- Cookie notice --- */

.cookie-notice-container {
  border-top: 1px solid #444 !important;
}

/* --- Misc: neoMain banner --- */

.neoMain {
  color: var(--fg-muted) !important;
  display: inline !important;
  float: none !important;
}

.neoMain a {
  display: inline !important;
  float: none !important;
}

/* --- Links in project pages: underlined --- */

.single .single-post-content .entry-body a {
  text-decoration: underline !important;
}

.single .single-post-content .entry-body a:hover {
  color: var(--accent) !important;
}

/* --- Intro block (above grid) --- */

#intro-block {
  max-width: 700px !important;
  margin: 30px 0 70px 0 !important;
  padding: 0 !important;
  position: relative !important;
  z-index: 1 !important;
}

#intro-block p {
  font-size: 1.4em !important;
  font-weight: 300 !important;
  line-height: 1.3em !important;
  color: var(--fg) !important;
  margin: 0 !important;
}

#intro-block a {
  color: var(--fg) !important;
  text-decoration: underline !important;
}

#intro-block a:hover {
  color: var(--accent) !important;
}

/* --- Hide mobile nav button completely --- */
.nav-btn,
.nav-btn:before,
.nav-btn:after,
.nav-toggle,
#nav {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
  width: 0 !important;
  height: 0 !important;
}

/* --- Hide scroll-to-top arrows --- */
.topper,
.topper a,
.top-btn {
  display: none !important;
  visibility: hidden !important;
}

/* --- Mobile / responsive --- */
@media (max-width: 750px) {
  .nav-btn,
  .nav-btn:before,
  .nav-btn:after {
    display: none !important;
    visibility: hidden !important;
  }

  /* Everything full width */
  body,
  #page,
  #inner-wrap,
  #outer-wrap,
  #masthead,
  #main,
  #content,
  .id-content,
  #colophon {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    box-sizing: border-box !important;
  }

  #page,
  #inner-wrap,
  #outer-wrap {
    overflow-x: hidden !important;
  }

  /* Consistent side padding on content containers */
  #masthead,
  #colophon,
  .neoMain,
  .neo,
  .referenzen-section,
  #intro-block,
  .blog .entry-content,
  .myroyalslider {
    padding-left: 15px !important;
    padding-right: 15px !important;
    box-sizing: border-box !important;
    max-width: 100% !important;
  }

  /* Footer items: no extra padding (inherit from #colophon) */
  .footer-menu,
  .site-info,
  .site-info-ghost {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  .footer-menu ul,
  .site-info p {
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  /* Project + page pages: only pad the outer wrapper */
  .single .entry-content,
  .page .entry-content {
    padding-left: 15px !important;
    padding-right: 15px !important;
    box-sizing: border-box !important;
    max-width: 100% !important;
  }

  .single .single-post-content {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  /* entry-body and entry-meta: no extra padding */
  .single .entry-body,
  .single .entry-meta,
  .page .entry-body {
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  /* Page type (impressum etc) */
  .page article,
  .page .entry-title,
  .page .entry-body,
  .page .entry-content {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    float: none !important;
  }

  #logo {
    margin-left: -5px !important;
  }

  /* Entries use full width within padded container */
  .blog .hentry,
  .blog .hentry.format-quote,
  .blog .hentry.format-gallery {
    width: 100% !important;
    box-sizing: border-box !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-right: 0 !important;
  }

  .neoMain, .neo {
    font-size: 0.8em !important;
  }

  /* Project page text: constrain width, no margins */
  .single .entry-title,
  .single .entry-body,
  .single .entry-meta {
    width: 100% !important;
    max-width: 100% !important;
    box-sizing: border-box !important;
    float: none !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  /* RoyalSlider full width, no corners on mobile */
  .single .myroyalslider {
    margin-left: -15px !important;
    margin-right: -15px !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    width: calc(100% + 30px) !important;
    max-width: none !important;
  }

  .rsProto,
  .rsProto .rsOverflow,
  .rsProto .rsSlide,
  .rsProto .rsThumbs,
  .rsProto .rsThumb,
  .rsProto img {
    border-radius: 0 !important;
    overflow: visible !important;
  }

  .rsProto {
    width: 100% !important;
  }
}

/* --- Referenzen section --- */

.referenzen-section {
  max-width: 710px !important;
  margin: 60px 0 40px 0 !important;
  padding: 0;
  color: var(--fg) !important;
  clear: both !important;
}

.referenzen-section h2 {
  text-transform: none !important;
  font-size: 2em !important;
  font-weight: 300 !important;
  line-height: 1.2em !important;
  margin-bottom: 20px !important;
  color: var(--fg) !important;
}

.referenzen-section .referenzen-subtitle {
  color: var(--fg-muted) !important;
  font-size: 0.9em !important;
  margin-bottom: 20px !important;
  margin-top: -10px !important;
}

.referenzen-section .bit {
  margin-bottom: 8px !important;
  font-size: 0.9em !important;
  line-height: 1.5em !important;
  color: var(--fg-muted) !important;
}

.referenzen-section .bit .year {
  color: var(--fg) !important;
}

.referenzen-section .bit a {
  color: var(--fg) !important;
  text-decoration: underline !important;
}

.referenzen-section .bit a:hover {
  color: var(--accent) !important;
}
