@charset "UTF-8";
/*

    DIST_______ANZ Verlag
    
        Design by Maximilian Riedel
        Developed by Leon Klaßen—www.leonklassen.com
        Berlin, 2022, 2025

*/
@import url("https://fast.fonts.net/lt/1.css?apiType=css&c=98700ff2-a961-45de-b296-4b2e04015c76&fontids=1489728,1489740,1489752");
*, *:before, *:after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}
ol, ul {
  list-style: none;
}
b, strong {
  font-weight: bold;
}
i, em {
  font-style: italic;
}
dialog:modal {
  max-width: 100%;
  max-height: 100%;
}
/* ### THEME VARS ### */
/* ### FONTS ### */
/* This CSS resource incorporates links to font software which is the valuable copyrighted property of Monotype and/or its suppliers. You may not attempt to copy, install, redistribute, convert, modify or reverse engineer this font software. Please contact Monotype with any questions regarding Web Fonts: https://www.linotype.com */
@font-face {
  font-family: "DISTANZ-TG";
  src: url("../../427adfed81d1445784f3c5242f65c04e/assets/fonts/37c0d945-164a-4b2c-a02f-c6a5da97b5ea.ttf");
  font-weight: 300;
}
@font-face {
  font-family: "DISTANZ-TG";
  src: url("../../427adfed81d1445784f3c5242f65c04e/assets/fonts/d86ea674-f465-461f-ad6e-add26e3d64b0.ttf");
  font-weight: normal;
}
@font-face {
  font-family: "DISTANZ-TG";
  src: url("../../427adfed81d1445784f3c5242f65c04e/assets/fonts/b64ba73b-1cd9-4a30-b03d-cd7bd2a4c8de.ttf");
  font-weight: bold;
}
@font-face {
  font-family: "Social-Regular";
  src: url("../../427adfed81d1445784f3c5242f65c04e/assets/fonts/Social-Regular.otf");
  font-weight: normal;
}
/* ### VARS ### */
:root {
  --font-base-small-size: 0.875rem;
  --font-base-small-lineheight: 1.5em;
  --font-base-large-size: 1rem;
  --font-base-large-lineheight: 1.5em;
  --font-normal-size: 1.25rem;
  --font-normal-lineheight: 1.25em;
  --font-large-size: 1.875rem;
  --font-large-lineheight: 1.25em;
  --font-title-size: 2.5rem;
  --font-title-lineheight: 1.25em;
  --font-ultra-size: 3.75rem;
  --font-ultra-lineheight: 1.25em;
  --color-light: hsl( 0, 0%, 100% );
  --color-muted-light: hsl( 0, 0%, 65% );
  --color-muted-dark: hsl( 0, 0%, 35% );
  --color-dark: hsl( 0, 0%, 0% );
  --color-blue: rgb( 50, 50, 255 );
  /* 3232FF */
  --color-orange: rgb( 250, 120, 10 );
  --color-red: rgb( 250, 10, 30 );
  --color-green: rgb( 5, 235, 85 );
  /* 05EB55 */
  --color-pastel-green: rgb( 185, 255, 180 );
  --color-pastel-purple: rgb( 220, 210, 250 );
  --color-lightgrey: hsl( 0, 0%, 90% );
  --color-darkgrey: hsl( 0, 0%, 30% );
}
/* ### GENERAL ### */
body {
  margin: 0px;
  padding: 0px;
  font-family: "DISTANZ-TG", Helvetica Neue, Helvetica, sans-serif;
  font-size: var(--font-base-small-size);
  line-height: var(--font-base-small-lineheight);
  color: var(--color-dark);
  cursor: default;
  -webkit-user-select: text;
  -moz-user-select: text;
  -ms-user-select: text;
  user-select: text;
  min-height: 100%;
  background-color: var(--color-light);
  font-weight: normal;
  -webkit-overflow-scrolling: touch;
  -webkit-font-smoothing: subpixel-antialiased;
}
a {
  font: inherit;
  color: inherit;
  text-decoration: inherit;
}
button {
  background-color: transparent;
  text-align: left;
  color: inherit;
}
em, i {
  font-style: italic;
}
::selection {
  background: var(--color-dark);
  color: var(--color-light);
}
::placeholder {
  color: var(--color-muted-dark);
}
@media only screen and (min-width: 1450px) {
  body {
    font-size: var(--font-base-large-size);
    line-height: var(--font-base-large-lineheight);
  }
}
button:focus-visible, a:focus-visible, *[tabindex = "0"]:focus-visible, input[type="radio"]:focus-visible, input[type="checkbox"]:focus-visible {
  outline: 3px solid var(--color-blue);
  outline-offset: 5px;
  border-radius: 8px;
}
/* ### GENERAL ### */
.toolbar {
  height: 80px;
  background-color: var(--color-blue);
  color: var(--color-light);
  text-align: center;
}
.toolbar:focus-visible {
  border-radius: 0px;
  border: 3px solid var(--color-light);
  outline: none;
}
.toolbar_button {
  font: inherit;
  border: 0px none;
  padding-top: 6px;
}
.toolbar:hover, .toolbar:focus-visible {
  background-color: var(--color-green);
  color: var(--color-dark);
}
.toolbar_active {
  cursor: pointer;
}
.toolbar_attention {
  background-color: var(--color-red) !important;
}
.toolbar_attention:hover {
  background-color: var(--color-red) !important;
}
.toolbar_disabled {
  background-color: var(--color-darkgrey) !important;
}
.toolbar_sub {
  background-color: var(--color-darkgrey) !important;
}
.toolbar_sub:hover {
  background-color: var(--color-green) !important;
  color: var(--color-dark) !important;
}
.toolbar_fixed {
  position: fixed !important;
}
.general_close {
  width: 30px;
  height: 30px;
  cursor: pointer;
}
.general_close div {
  position: absolute;
  left: 0px;
  top: 50%;
  height: 1px;
  width: 100%;
  background-color: var(--color-dark);
}
.general_close:hover {
  opacity: 0.5;
}
.general_close div:first-child {
  transform: rotateZ(-45deg);
}
.general_close div:last-child {
  transform: rotateZ(45deg);
}
.load_indicator {
  display: none;
}
/*

    DIST_______ANZ Verlag
    
        Design by Maximilian Riedel
        Developed by Leon Klaßen—www.leonklassen.com
        Berlin, 2022, 2025

*/
/* ### INTRO ### */
#intro_container {
  position: fixed;
  left: 0px;
  top: 0px;
  bottom: 0px;
  height: auto;
  width: 100%;
  background-color: var(--color-light);
  overflow: hidden;
}
#intro {
  position: absolute;
  left: 0px;
  top: 0px;
  height: 100%;
  width: 100%;
  background-color: var(--color-light);
  user-select: none;
  background-image: url("../../427adfed81d1445784f3c5242f65c04e/assets/img/DIS_DISTANZ_Logo_black.svg");
  background-repeat: no-repeat;
  background-size: 40%;
  background-position: 50% 50%;
  opacity: 0;
  transition: opacity 0.5s;
}
#intro_dvp22 {
  position: absolute;
  left: 0px;
  top: 0px;
  height: 100%;
  width: 100%;
  background-color: var(--color-light);
  user-select: none;
  background-image: url("../../427adfed81d1445784f3c5242f65c04e/assets/img/intro_dvp_siegel.svg");
  background-repeat: no-repeat;
  background-size: 30%;
  background-position: 50% 50%;
  opacity: 0;
  transition: opacity 0.5s;
}
/*

    DIST_______ANZ Verlag
    
        Design by Maximilian Riedel
        Developed by Leon Klaßen—www.leonklassen.com
        Berlin, 2022, 2025

*/
/* ### HEADER ### */
header {
  position: fixed;
  left: 0px;
  top: 0px;
  width: 100%;
  height: 60px;
  box-shadow: inset 0px -1px 0px black;
  -webkit-user-select: none;
  z-index: 99999999;
  background-color: var(--color-light);
  color: var(--color-dark);
}
header nav {
  display: flex;
  height: 100%;
  white-space: nowrap;
}
header nav ul.main {
  display: flex;
  padding-left: 35px;
  padding-right: 35px;
  height: 100%;
  align-items: center;
}
header nav ul.main.left {
  order: 1;
}
header nav ul.main.center {
  order: 2;
  flex-basis: 84px;
  flex-grow: 0;
  flex-shrink: 0;
  position: relative;
  padding-left: 0px;
  padding-right: 0px;
}
header nav ul.main.right {
  order: 3;
  justify-content: flex-end;
}
header nav ul.main.left, header nav ul.main.right {
  flex-grow: 1;
  flex-basis: 50%;
}
header nav ul.main.center a {
  display: block;
  width: 100%;
  height: 100%;
}
header nav ul.main.center h2 {
  position: absolute;
  width: 100%;
  height: 100%;
  left: 0px;
  top: 0px;
  background-image: url("../../427adfed81d1445784f3c5242f65c04e/assets/img/DIS_DISTANZ_Logo_black.svg");
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  color: transparent;
}
header nav ul.main.center a:hover h2 {
  opacity: 0.65;
}
header nav ul.main li.main {
  padding-left: 15px;
  padding-right: 15px;
  height: 40px;
  display: flex;
  align-items: center;
}
header nav ul.main li.main.language_switch, header nav ul.main li.main.temp_language_switch {
  gap: 10px;
}
header nav ul.main.center li.main {
  padding: 0px;
  width: 100%;
}
header nav ul.sub {
  display: none;
  position: absolute;
  background-color: var(--color-light);
  left: 0px;
  top: 60px;
  width: 100%;
  height: auto;
  padding-left: 35px;
  padding-right: 35px;
  padding-top: 10px;
  padding-bottom: 10px;
  text-align: center;
  max-height: calc(100vh - 60px);
  overflow: hidden;
  overflow-y: auto;
}
header nav ul.main li.main.extended ul.sub {
  display: block;
}
header nav ul li a, header nav ul li button {
  color: var(--color-muted-dark);
  cursor: pointer;
}
header nav ul li a:hover, header nav ul li button:hover, header nav ul li a.selected, header nav ul li button.selected {
  color: var(--color-dark);
}
header nav ul.main li.main.extended .label.main {
  color: var(--color-dark);
}
header nav ul.main li.main.has_sub .label.main span {
  position: relative;
  padding-right: 26px;
}
header nav ul.main li.main.has_sub .label.main span::before, header nav ul.main li.main.has_sub .label.main span::after {
  content: "";
  display: block;
  width: 10px;
  height: 1px;
  background-color: var(--color-muted-dark);
  position: absolute;
  right: 0px;
  top: 7px;
}
header nav ul.main li.main.has_sub .label.main:hover span::before, header nav ul.main li.main.has_sub .label.main:hover span::after, header nav ul.main li.main.has_sub.extended .label.main span::before, header nav ul.main li.main.has_sub.extended .label.main span::after {
  background-color: var(--color-dark);
}
header nav ul.main li.main.has_sub .label.main span::before {
  transform: rotateZ(45deg);
  right: 7px;
}
header nav ul.main li.main.has_sub .label.main span::after {
  transform: rotateZ(-45deg);
}
header nav ul.main li.main.has_sub.extended .label.main span::before {
  transform: rotateZ(-45deg);
}
header nav ul.main li.main.has_sub.extended .label.main span::after {
  transform: rotateZ(45deg);
}
header nav ul.sub li.sub {
  padding-left: 15px;
  padding-right: 15px;
  padding-top: 10px;
  padding-bottom: 10px;
}
header nav ul.sub li.sub:last-child, header nav ul.sub li.sub.bottomline {
  position: relative;
}
header nav ul.sub li.sub:last-child {
  padding-bottom: 20px;
  margin-bottom: -10px;
}
header nav ul.sub li.sub.bottomline {
  padding-bottom: 20px;
  margin-bottom: 10px;
}
header nav ul.sub li.sub:last-child::before, header nav ul.sub li.sub.bottomline::before {
  content: "";
  display: block;
  width: auto;
  height: 1px;
  background-color: var(--color-dark);
  position: absolute;
  left: 15px;
  right: 15px;
  bottom: 0px;
}
header nav ul.main li.main.cart_wrapper {
  padding-left: 35px;
}
header nav ul.main li.main.cart_wrapper .cart {
  display: inline-block;
  cursor: pointer;
}
header nav ul.main li.main.cart_wrapper .cart .icon {
  font-family: "Social-Regular";
  font-size: 1.3125rem;
  line-height: 0px;
  top: 5px;
  position: relative;
}
header .hamburger {
  display: none;
  position: fixed;
  width: auto;
  height: 40px;
  padding-top: 0px;
  padding-left: 0px;
  padding-right: 0px;
  left: 25px;
  top: 10px;
  cursor: pointer;
}
header .hamburger .icon {
  position: relative;
  width: 30px;
  height: 10px;
  margin-left: 25px;
  margin-right: 25px;
  margin-top: 15px;
  margin-bottom: 15px;
}
header .hamburger .icon div {
  position: absolute;
  left: 0px;
  width: 100%;
  height: 1px;
  background-color: var(--color-dark);
  transition: top 0.4s, bottom 0.4s, transform 0.4s;
}
header .hamburger .icon div:first-child {
  top: 0px;
}
header .hamburger .icon div:last-child {
  bottom: 0px;
}
header .hamburger.close .icon div:first-child {
  transform: rotateZ(-45deg);
  top: 50% !important;
  bottom: auto !important;
}
header .hamburger.close .icon div:last-child {
  transform: rotateZ(45deg);
  top: 50% !important;
  bottom: auto !important;
}
header .search_container {
  position: absolute;
  top: 100%;
  width: 100%;
  height: auto;
  left: 0px;
  background-color: var(--color-light);
  display: none;
}
header .search_container.visible {
  display: block;
}
header .search_container input {
  position: relative;
  display: block;
  width: 100%;
  font: inherit;
  background-color: var(--color-light);
  margin: 0px;
  padding: 50px;
  border: 0px none;
  border-bottom: 1px solid black;
  outline: 0px none;
  font-size: var(--font-title-size);
  line-height: var(--font-title-lineheight);
}
header .search_container .results ul li {
  position: relative;
  width: 100%;
  padding-left: 50px;
  padding-right: 50px;
  border-bottom: 1px solid black;
  padding-top: 10px;
  padding-bottom: 9px;
}
header .search_container .results ul li a {
  display: flex;
  gap: 25px;
}
header .search_container .results ul li a span {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
header .search_container .results ul li a .title {
  flex-grow: 1;
  flex-shrink: 1;
}
header .search_container .results ul li a .title .author {
  text-transform: uppercase;
}
header .search_container .results ul li a .category {
  text-transform: uppercase;
  flex-grow: 0;
  flex-shrink: 0;
}
header .search_container .results .total {
  position: sticky;
  bottom: 0px;
  width: 100%;
  border-top: 1px solid black;
  border-bottom: 1px solid black;
  padding: 50px;
  padding-top: 10px;
  padding-bottom: 9px;
  background-color: var(--color-light);
  z-index: 1;
  margin-top: -1px;
}
header .search_container .results a:hover {
  color: var(--color-muted-dark);
}
#nav_back {
  display: none;
  position: fixed;
  left: 0px;
  top: 0px;
  width: 100%;
  height: 100%;
  z-index: 9999999;
}
#nav_back.visible {
  display: block;
}
@media only screen and (min-width: 1450px) {
  header {
    height: 80px;
  }
  header nav ul.main li.main.has_sub .label.main span::before, header nav ul.main li.main.has_sub .label.main span::after {
    top: 9px;
  }
  header nav ul.sub {
    top: 80px;
    padding-top: 20px;
    padding-bottom: 20px;
    max-height: calc(100vh - 80px);
  }
  header nav ul.sub li.sub:last-child {
    padding-bottom: 30px;
    margin-bottom: -20px;
  }
  header nav ul.sub li.sub.bottomline {
    padding-bottom: 30px;
    margin-bottom: 20px;
  }
}
@media only screen and (max-width: 1150px) {
  header nav {
    background-color: var(--color-light);
    position: absolute;
    top: 60px;
    height: 0px;
    width: 100%;
    overflow: hidden;
    flex-direction: column;
    text-align: center;
    padding-bottom: 0px;
  }
  header nav.visible {
    height: calc(100vh - 60px);
    padding-bottom: 20px;
    overflow-y: auto;
  }
  header nav ul.main {
    flex-direction: column;
  }
  header nav ul.main.center {
    position: fixed;
    width: 84px;
    height: 60px;
    top: 0px;
    left: 0px;
    right: 0px;
    margin-left: auto;
    margin-right: auto;
  }
  header nav ul.main.center li {
    margin-top: 10px;
  }
  header nav ul.main.left, header nav ul.main.right {
    flex-basis: 0px;
    flex-grow: 0;
  }
  header nav ul.main.right {
    justify-content: flex-start;
  }
  header nav ul.main.left li, header nav ul.main.right li:not(.cart_wrapper) {
    width: 100%;
    height: auto;
    flex-direction: column;
  }
  header nav ul.main.left li, header nav ul.main.right li:not(.cart_wrapper) {
    display: none;
  }
  header nav.visible ul.main.left li, header nav.visible ul.main.right li:not(.cart_wrapper) {
    display: flex;
  }
  header nav ul.main.right li.language_switch {
    flex-direction: row;
    height: 55px;
    justify-content: center;
    align-items: center;
  }
  header nav ul.main.left li .label, header nav ul.main.right li:not(.cart_wrapper) .label {
    width: 100%;
    text-align: center;
  }
  header nav ul.main li.main .label.main {
    position: relative;
    display: block;
    height: 60px;
    color: var(--color-dark);
    display: flex;
    align-items: center;
    justify-content: center;
  }
  header nav ul.main li.main .label.main::before {
    content: "";
    display: block;
    position: absolute;
    height: 1px;
    width: auto;
    bottom: 0px;
    left: -50px;
    right: -50px;
    background-color: var(--color-dark);
  }
  header nav ul.main li.main.cart_wrapper {
    position: fixed;
    height: 60px;
    top: 0px;
    right: 35px;
  }
  header nav ul.main li.main.has_sub .label.main span::before, header nav ul.main li.main.has_sub .label.main span::after {
    background-color: var(--color-dark);
  }
  header nav ul.sub {
    position: relative;
    padding-left: 0px;
    padding-right: 0px;
    overflow: visible;
    top: 0px;
  }
  header nav ul.sub li.sub {
    padding-left: 0px;
    padding-right: 0px;
  }
  header nav ul.sub li.sub:last-child::before, header nav ul.sub li.sub.bottomline::before {
    left: -50px;
    right: -50px;
  }
  header .hamburger {
    display: block;
  }
}
@media only screen and (max-width: 550px) {
  header {
    height: 50px;
  }
  header nav {
    top: 50px;
  }
  header nav.visible {
    height: calc(100vh - 50px);
  }
  header nav ul.main.center {
    height: 50px;
  }
  header nav ul.main li.main.cart_wrapper {
    right: 10px;
    height: 50px;
    /*padding-top: 15px;*/
  }
  header .hamburger {
    top: 5px;
    left: 0px;
  }
  header .hamburger .icon {
    margin-left: 25px;
    margin-right: 25px;
    /*margin-top: 20px;*/
  }
  header .search_container input {
    font-size: var(--font-normal-size);
    line-height: var(--font-normal-lineheight);
    padding: 25px;
  }
  header .search_container .results ul li, header .search_container .results .total {
    padding-left: 25px;
    padding-right: 25px;
  }
}
/*

    DIST_______ANZ Verlag
    
        Design by Maximilian Riedel
        Developed by Leon Klaßen—www.leonklassen.com
        Berlin, 2022, 2025

*/
/* ### COOKIE ### */
#cookie_banner {
  position: fixed;
  left: 0px;
  bottom: 0px;
  width: 100%;
  z-index: 99999999;
  padding: 50px;
  display: none;
  padding-top: 19px;
  padding-bottom: 19px;
  background-color: var(--color-dark);
  color: var(--color-light);
  max-height: 100svh;
  overflow: hidden;
  overflow-y: auto;
}
#cookie_banner.visible {
  display: block;
}
#cookie_banner #banner {
  display: flex;
  justify-content: space-between;
}
#cookie_banner .message {
  position: relative;
}
#cookie_banner .message a {
  color: var(--color-muted-light);
}
#cookie_banner .message a:hover {
  color: var(--color-light);
}
#cookie_banner .message p:not(:first-child) {
  padding-top: 21px;
}
#cookie_banner .action {
  position: relative;
  display: flex;
  gap: 50px;
  row-gap: 21px;
  flex-wrap: wrap;
  width: auto;
  overflow: hidden;
}
#cookie_banner .action div {
  position: relative;
  cursor: pointer;
}
@media only screen and (max-width: 1200px) {
  #cookie_banner #banner {
    flex-direction: column;
  }
  #cookie_banner .action {
    width: auto;
    margin-top: 21px;
    gap: 25px;
  }
  #cookie_banner .action div {
    border: 1px solid var(--color-light);
    padding: 5px;
    padding-left: 10px;
    padding-right: 10px;
  }
}
@media only screen and (max-width: 550px) {
  #cookie_banner {
    padding-left: 25px;
    padding-right: 25px;
  }
  #cookie_banner .action {
    gap: 15px;
  }
  #cookie_banner .action div span {
    display: none;
  }
}
/*

    DIST_______ANZ Verlag
    
        Design by Maximilian Riedel
        Developed by Leon Klaßen—www.leonklassen.com
        Berlin, 2022, 2025

*/
/* ### AJAX ### */
.ajax_loader {
  position: absolute;
  left: 0px;
  top: 0px;
  width: 100%;
  height: 100%;
  opacity: 0;
  transition: opacity 0.4s;
  pointer-events: none;
}
.ajax_loader.visible {
  opacity: 1;
}
.ajax_loader.white {
  background-color: var(--color-light);
}
.ajax_loader.black {
  background-color: var(--color-dark);
}
.ajax_loader .symbol {
  position: absolute;
  left: 0px;
  top: 0px;
  right: 0px;
  bottom: 0px;
  margin-left: auto;
  margin-right: auto;
  margin-top: auto;
  margin-bottom: auto;
  width: 80px;
  height: 80px;
  animation: spin 2s linear infinite;
}
.ajax_loader .symbol .frame {
  position: absolute;
  left: 0px;
  top: 0px;
  width: 50%;
  height: 100%;
  overflow: hidden;
}
.ajax_loader .symbol .frame::before {
  content: "";
  position: absolute;
  left: 0px;
  top: 0px;
  width: 200%;
  height: 100%;
  border: 1px solid white;
  border-radius: 50%;
}
.ajax_loader.white .symbol .frame::before, .ajax_loader.transparent_white .symbol .frame::before {
  border-color: var(--color-dark);
}
.ajax_loader.black .symbol .frame::before, .ajax_loader.transparent_black .symbol .frame::before {
  border-color: var(--color-light);
}
@keyframes spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
/*

    DIST_______ANZ Verlag
    
        Design by Maximilian Riedel
        Developed by Leon Klaßen—www.leonklassen.com
        Berlin, 2022, 2025

*/
/* ### POPUP ### */
#popup_container {
  position: absolute;
  left: 0px;
  width: 100%;
  top: 0px;
  z-index: 99999998;
}
#popup_container #popup {
  position: relative;
  height: auto;
  width: 100%;
  overflow: hidden;
}
#popup_container #popup #popup_message {
  position: relative;
  width: 100%;
  padding-top: 29px;
  padding-bottom: 29px;
  padding-left: 50px;
  padding-right: 50px;
  text-align: center;
  background-color: var(--color-dark);
  color: var(--color-light);
  transition: transform 0.5s;
  min-height: 80px;
}
#popup_container #popup .popup_message_active {
  cursor: pointer;
  transition: transform 0.5s !important;
}
#popup_container #popup .popup_message_active:hover {
  background-color: var(--color-green) !important;
  color: var(--color-dark);
}
#popup_container #popup.hidden #popup_message {
  transform: translate3d(0px, -100%, 0);
}
#popup_container.padded {
  top: 60px !important;
  position: fixed !important;
}
@media only screen and (min-width: 1450px) {
  #popup_container.padded {
    top: 80px !important;
  }
}
@media only screen and (max-width: 550px) {
  #popup_container.padded {
    top: 50px !important;
  }
}
/*

    DIST_______ANZ Verlag
    
        Design by Maximilian Riedel
        Developed by Leon Klaßen—www.leonklassen.com
        Berlin, 2022, 2025

*/
/* ### POPOVER ### */
#popover {
  position: fixed;
  left: 0px;
  top: 60px;
  width: 100%;
  height: auto;
  bottom: 0px;
  transition: opacity 0.2s;
  background-color: var(--color-light);
  z-index: 99999996;
}
#popover.hidden {
  opacity: 0;
}
#popover .close {
  position: absolute;
  width: 120px;
  height: 120px;
  right: 0px;
  top: 0px;
  cursor: pointer;
}
#popover .close::before, #popover .close::after {
  content: "";
  display: block;
  position: absolute;
  width: 30px;
  height: 1px;
  background-color: var(--color-dark);
  margin-left: auto;
  margin-right: auto;
  margin-top: auto;
  margin-bottom: auto;
  left: 0px;
  right: 0px;
  top: 0px;
  bottom: 0px;
}
#popover .close::before {
  transform: rotateZ(45deg);
}
#popover .close::after {
  transform: rotateZ(-45deg);
}
#popover .popover_message {
  position: absolute;
  left: 0px;
  top: 0px;
  width: 100%;
  height: 100%;
  overflow: hidden;
  overflow-y: auto;
  opacity: 1;
  transition: opacity 0.4s;
}
#popover .popover_message_hidden {
  opacity: 0;
}
#popover .popover_message_inner {
  position: relative;
  width: 100%;
  height: auto;
  left: 0px;
  right: 0px;
  padding: 50px;
  padding-top: 55px;
  padding-bottom: 54px;
  margin-left: auto;
  margin-right: auto;
  max-width: 800px;
}
#popover .popover_message_inner p:not(:last-child) {
  padding-bottom: 1.5em;
}
#popover .popover_message_inner h4 {
  padding-bottom: 1.5em;
}
#popover .popover_message_inner h4 {
  font-size: var(--font-large-size);
  line-height: var(--font-large-lineheight);
  font-weight: normal;
}
@media only screen and (max-width: 550px) {
  #popover {
    top: 50px;
  }
  #popover .popover_message_inner {
    padding-left: 25px;
    padding-right: 25px;
  }
}
@media only screen and (min-width: 1450px) {
  #popover {
    top: 80px;
  }
}
/*

    DIST_______ANZ Verlag
    
        Design by Maximilian Riedel
        Developed by Leon Klaßen—www.leonklassen.com
        Berlin, 2022, 2025

*/
/* ### CONTENT ### */
#content {
  transition: opacity 0.4s;
  position: relative;
  width: 100%;
  height: auto;
  padding-top: 60px;
}
#content .alert {
  text-align: center;
  padding: 20px;
  position: relative;
  z-index: 99999991;
  background-color: transparent;
  color: var(--color-red);
  padding: 0px;
  padding-top: 25px;
  padding-bottom: 75px;
}
#content .alert .icon {
  display: none;
}
#content_back_toolbar {
  position: fixed;
  bottom: 0px;
  width: 50%;
  z-index: 99999995;
  opacity: 0;
  transition: opacity 0.4s;
  display: none;
}
.content_back_toolbar_left {
  display: block !important;
  left: 50%;
}
.content_back_toolbar_right {
  display: block !important;
  left: 0%;
}
.contact_content_follow::before {
  font-family: "Social-Regular";
  position: relative;
  line-height: 0px;
  padding-right: 10px;
  top: 2px;
}
.contact_content_follow_newsletter::before {
  content: "e";
}
.contact_content_follow_facebook::before {
  content: "f";
}
.contact_content_follow_instagram::before {
  content: "i";
}
.contact_content_follow_twitter::before {
  content: "t";
}
.newform_width_limiter {
  position: relative;
  height: auto;
  /*overflow: hidden;*/
  width: 100%;
  max-width: 640px;
  left: 0px;
  right: 0px;
  margin-left: auto;
  margin-right: auto;
}
@media only screen and (max-width: 800px) {
  .content_back_toolbar_left {
    display: none !important;
  }
  .content_back_toolbar_right {
    display: none !important;
  }
}
@media only screen and (max-width: 550px) {
  #content {
    padding-top: 50px;
    transform: none;
  }
  #preview_form_container #contact_form_wrapper {
    height: auto;
    width: 100%;
    overflow: hidden;
    overflow-y: scroll;
  }
  #preview_form_container #contact_form_container {
    height: auto;
    width: 100%;
    overflow: hidden;
    overflow-y: scroll;
  }
  #preview_form_container #contact_form_toolbar {
    position: absolute;
    z-index: inherit;
  }
  .content_hidden_cart {
    opacity: 1;
  }
  .content_hidden_cartfull {
    opacity: 1;
  }
  .content_hidden_preview {
    opacity: 1;
  }
  .content_hidden_previewfull {
    opacity: 1;
  }
}
@media only screen and (min-width: 1450px) {
  #content {
    padding-top: 80px;
  }
}
/*

    DIST_______ANZ Verlag
    
        Design by Maximilian Riedel
        Developed by Leon Klaßen—www.leonklassen.com
        Berlin, 2022, 2025

*/
/* ### CMS ### */
#content .col-md-6, #popover .col-md-6 {
  position: relative;
  float: left;
  width: 50%;
}
#content .col-12, #popover .col-12 {
  position: relative;
  float: left;
  width: 100%;
}
#content div.extrapadding, #popover div.extrapadding {
  padding-top: 50px;
  padding-bottom: 50px;
}
#content div.extrapaddingtop, #popover div.extrapaddingtop {
  padding-top: 50px;
}
#content .cms-element-text, #popover .cms-element-text {
  padding: 50px;
}
#content div.small .cms-element-text, #popover div.small .cms-element-text {
  width: 75%;
}
#content div.onecolumn + div.onecolumn, #popover div.onecolumn + div.onecolumn {
  display: none;
}
#content .cms-element-text h3, #popover .cms-element-text h3 {
  font-size: var(--font-large-size);
  line-height: var(--font-large-lineheight);
  margin-bottom: 39px;
}
#content div.large .cms-element-text h3, #popover div.large .cms-element-text h3 {
  font-size: var(--font-title-size);
  line-height: var(--font-title-lineheight);
  margin-bottom: 0px;
}
#content .cms-element-text h4, #popover .cms-element-text h4 {
  font-size: var(--font-normal-size);
  line-height: var(--font-normal-lineheight);
  margin-top: 39px;
  margin-bottom: 39px;
}
#content .cms-element-text p:not(:first-child), #content .cms-element-text div:not(:first-child), #popover .cms-element-text p:not(:first-child), #popover .cms-element-text div:not(:first-child) {
  margin-top: 21px;
}
#content .cms-element-text blockquote, #popover .cms-element-text blockquote {
  font-size: var(--font-large-size);
  line-height: var(--font-large-lineheight);
}
#content .cms-element-text a, #popover .cms-element-text a {
  color: var(--color-muted-dark);
  cursor: pointer;
}
#content .cms-element-text a:hover, #popover .cms-element-text a:hover {
  color: var(--color-dark);
}
#content .col-12:not(:last-child) .cms-element-text, #popover .col-12:not(:last-child) .cms-element-text {
  padding-bottom: 100px;
}
#content .col-12.nopadding:not(:last-child) .cms-element-text, #popover .col-12.nopadding:not(:last-child) .cms-element-text {
  padding-bottom: 50px;
}
#content .col-12:not(:first-child) .cms-element-text::after, #popover .col-12:not(:first-child) .cms-element-text::after {
  content: "";
  display: block;
  width: auto;
  height: 1px;
  background-color: var(--color-dark);
  position: absolute;
  left: 50px;
  right: 50px;
  top: 0px;
}
#content .col-12.noline:not(:first-child) .cms-element-text::after, #popover .col-12.noline:not(:first-child) .cms-element-text::after {
  display: none;
}
#content .cms-element-image img, #popover .cms-element-image img {
  display: block;
  width: 100%;
  padding: 0px;
  margin: 0px;
  height: auto;
}
#content div.names.noline.extrapadding, #popover div.names.noline.extrapadding, #content div.names.noline.extrapaddingtop, #popover div.names.noline.extrapaddingtop {
  padding-top: 0px;
  margin-top: -50px;
}
#content div.names .cms-element-text, #popover div.names .cms-element-text {
  padding: 25px;
  height: auto;
  overflow: hidden;
  padding-bottom: 25px !important;
}
#content div.names.noline .cms-element-text, #popover div.names.noline .cms-element-text {
  display: flex;
  flex-wrap: wrap;
  padding-top: 0px;
  margin-top: -25px;
}
#content div.names .cms-element-text p, #popover div.names .cms-element-text p {
  position: relative;
  width: 25%;
  padding: 25px;
  margin-top: 0px !important;
}
#content .block-image-text {
  position: relative;
  width: 100%;
  height: auto;
  overflow: hidden;
}
#content div.large.headline_kontext::after, #content div.large.headline_fundus::after {
  content: "";
  display: block;
  height: 600px;
  width: 100%;
}
#content div.large.headline_kontext::after {
  background-color: var(--color-pastel-green);
}
#content div.large.headline_fundus::after {
  background-color: var(--color-pastel-purple);
}
#content div.readmore.readmore_hidden div:not(.link_hover) {
  display: none;
}
#content div.readmore .link_hover {
  font-size: var(--font-title-size);
  line-height: var(--font-title-lineheight);
  display: none;
}
#content div.readmore.readmore_hidden .link_hover {
  display: block;
  padding-top: 0px;
}
@media only screen and (max-width: 850px) {
  #content .col-md-6, #popover .col-md-6 {
    width: 100%;
  }
  #content div.names .cms-element-text p, #popover div.names .cms-element-text p {
    width: 100%;
  }
}
@media only screen and (max-width: 550px) {
  #content .cms-element-text, #popover .cms-element-text {
    padding-left: 25px;
    padding-right: 25px;
  }
  #content .cms-element-text blockquote, #popover .cms-element-text blockquote {
    font-size: var(--font-normal-size);
    line-height: var(--font-normal-lineheight);
  }
  #content .col-12:not(:first-child) .cms-element-text::after, #popover .col-12:not(:first-child) .cms-element-text::after {
    left: 25px;
    right: 25px;
  }
  #content div.names .cms-element-text, #popover div.names .cms-element-text {
    padding-left: 0px;
    padding-right: 0px;
  }
  #content div.large .cms-element-text h3, #popover div.large .cms-element-text h3 {
    font-size: var(--font-normal-size);
    line-height: var(--font-normal-lineheight);
  }
  #content .cms-element-text h3, #popover .cms-element-text h3 {
    font-size: var(--font-normal-size);
    line-height: var(--font-normal-lineheight);
    margin-bottom: 39px;
  }
}
@media only screen and (min-width: 1450px) {
  #content .cms-element-text blockquote, #popover .cms-element-text blockquote {
    font-size: var(--font-title-size);
    line-height: var(--font-title-lineheight);
  }
  #content div.large .cms-element-text, #popover div.large .cms-element-text {
    width: 66.66666666%;
  }
}
/*

    DIST_______ANZ Verlag
    
        Design by Maximilian Riedel
        Developed by Leon Klaßen—www.leonklassen.com
        Berlin, 2022, 2025

*/
/* ### COVER RESPONSIVE ### */
.cover_responsive {
  position: absolute;
  transition: box-shadow 0.4s, transform 0.4s;
  cursor: pointer;
  transform: scale(1);
}
.cover_responsive:hover, .cover_responsive:focus-visible {
  transform: scale(1.05);
}
.book.book_featured .cover_responsive:hover, .book.book_featured .cover_responsive:focus-visible {
  transform: scale(1.025);
}
.cover_responsive img {
  position: absolute;
  left: 0px;
  top: 0px;
  width: 100%;
  display: block;
  -webkit-filter: brightness(97%);
  transition: box-shadow 0.4s;
  box-shadow: -15px 0px 25px -10px rgba(0, 0, 0, 0.6);
}
.cover_responsive:hover img, .cover_responsive:focus-visible img {
  box-shadow: -20px 0px 35px -10px rgba(0, 0, 0, 0.6);
}
.book.book_featured .cover_responsive img {
  box-shadow: -30px 0px 30px -25px rgba(0, 0, 0, 0.6);
}
.book.book_featured .cover_responsive:hover img, .book.book_featured .cover_responsive:focus-visible img {
  box-shadow: -35px 0px 35px -25px rgba(0, 0, 0, 0.6);
}
.cover_responsive::after {
  content: "";
  display: block;
  position: absolute;
  left: 3%;
  top: 0px;
  width: 1%;
  background: linear-gradient(90deg, black, white);
  opacity: 0.1;
  height: 100%;
}
.cover_responsive.cover_responsive_nofold::after {
  display: none;
}
.cover_responsive.cover_responsive_middlefold::after {
  content: "";
  display: block;
  position: absolute;
  left: 0px;
  top: 0px;
  height: 100%;
  left: 0px;
  right: 0px;
  margin-left: auto;
  margin-right: auto;
  width: 20px;
  background: linear-gradient(to left, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.15) 50%, rgba(0, 0, 0, 0));
}
.cover_responsive.cover_responsive_middlefold .cover_responsive_middlefold_line {
  display: block;
  position: absolute;
  left: 50%;
  top: 0px;
  width: 1px;
  background-color: var(--color-dark);
  opacity: 0.15;
  height: 100%;
}
/*

    DIST_______ANZ Verlag
    
        Design by Maximilian Riedel
        Developed by Leon Klaßen—www.leonklassen.com
        Berlin, 2022, 2025

*/
/* ### BOOK LISTING ### */
.book_listing .book_cover {
  position: relative;
  width: 100%;
  height: calc(100% - 142px);
}
.book_listing .book_cover .cover_responsive {
  left: 0px;
  right: 0px;
  margin-left: auto;
  margin-right: auto;
  bottom: 0px;
  background-color: var(--color-lightgrey);
}
.book_listing .book_cover .cover_responsive .book_new {
  position: absolute !important;
  top: -21px !important;
  width: 50px !important;
  height: 50px !important;
  display: block;
  border-radius: 50px;
  overflow: hidden;
  color: var(--color-light);
  text-align: center;
  padding-top: 14px;
  background-image: url("../../427adfed81d1445784f3c5242f65c04e/assets/img/new_badge_blue.svg");
  z-index: 100;
  font-size: 0.75rem;
}
.book_listing .book_cover .cover_responsive .book_new.book_new_de {
  right: -13px !important;
}
.book_listing .book_cover .cover_responsive .book_new.book_new_en {
  right: -12px !important;
}
.book_listing .book_cover .cover_responsive .book_soon {
  position: absolute !important;
  top: -21px !important;
  width: 50px !important;
  height: 50px !important;
  display: block;
  border-radius: 50px;
  overflow: hidden;
  color: var(--color-light);
  text-align: center;
  padding-top: 14px;
  background-image: url("../../427adfed81d1445784f3c5242f65c04e/assets/img/soon_badge_orange.svg");
  z-index: 100;
  font-size: 0.75rem;
}
.book_listing .book_cover .cover_responsive .book_soon.book_soon_de {
  right: -13px !important;
}
.book_listing .book_cover .cover_responsive .book_soon.book_soon_en {
  right: -12px !important;
}
.book_listing .book_details {
  position: relative;
  width: 100%;
  padding-top: 55px;
}
.book_listing .book_details p {
  position: relative;
  width: 100%;
  overflow: hidden;
}
.book_listing .book_details .book_author {
  text-transform: uppercase;
  text-align: center;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.book_listing .book_details .book_title {
  text-align: center;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.book_listing .book_details .book_price {
  position: relative;
  width: 100%;
  box-shadow: 0px 1px 0px black;
  padding-top: 8px;
  margin-top: 7px;
  padding-bottom: 8px;
  margin-bottom: 7px;
  text-align: center;
}
.book_listing .book_details .book_price.attention {
  color: var(--color-red);
}
.book_listing .book_details .book_price .link {
  color: var(--color-muted-dark);
}
.book_listing .book_details .book_price .link strong {
  font-weight: normal;
}
.book_listing .book_details .book_price .add_to_cart {
  margin-left: 1em;
}
.book_listing .book_details .book_price .link span {
  cursor: pointer;
  /*transition: color 0.2s;*/
}
.book_listing .book_details .book_price .link span:not(:first-child) {
  padding-left: 1em;
}
.book_listing .book_details .book_price .link:hover span {
  color: var(--color-dark);
}
.book_listing .book_details .book_price .link span.outofstock {
  color: var(--color-red);
  text-decoration: line-through;
  cursor: default;
}
.book_listing .book_details .book_price_marked {
  text-transform: uppercase;
}
/*

    DIST_______ANZ Verlag
    
        Design by Maximilian Riedel
        Developed by Leon Klaßen—www.leonklassen.com
        Berlin, 2022, 2025

*/
/* ### BOOKS ### */
#books {
  position: relative;
  width: 100%;
  height: auto;
  overflow: hidden;
  padding: 50px;
  padding-top: 50px;
  padding-bottom: 100px;
  transition: padding-bottom 0.4s;
  z-index: 10;
}
#books ul {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-auto-rows: minmax(385px, auto);
  grid-column-gap: 50px;
  grid-row-gap: 80px;
  grid-auto-flow: dense;
  min-height: 0;
  min-width: 0;
}
#books ul li.book.sort_new {
  order: -1;
}
#books ul li.book.sort_manual {
  order: -2;
}
#books ul li.book {
  min-width: 0;
}
#books ul li.book.book_featured {
  grid-column-end: span 2;
  grid-row-end: span 2;
}
#books ul li.book.hidden {
  display: none;
}
#ticker {
  position: relative;
  width: 100%;
  padding-top: 29px;
  padding-bottom: 29px;
  padding-left: 50px;
  padding-right: 50px;
  text-align: center;
  background-color: var(--color-dark);
  color: var(--color-light);
  min-height: 80px;
  display: none;
}
#ticker .action-close {
  color: var(--color-muted-light);
  cursor: pointer;
}
#ticker .action-close:hover {
  color: var(--color-light);
}
#introtext .cms-element-text {
  position: relative;
  width: 100%;
  font-size: var(--font-title-size);
  line-height: var(--font-title-lineheight);
  padding: 50px;
}
#categories, #categories_artistsauthors {
  position: relative;
  width: 100%;
  font-size: var(--font-title-size);
  line-height: var(--font-title-lineheight);
  padding: 50px;
  padding-left: 25px;
  padding-right: 25px;
  padding-bottom: 0px;
}
#categories li, #categories_artistsauthors li {
  position: relative;
  float: left;
  display: block;
  width: auto;
  padding-left: 25px;
  padding-right: 25px;
  color: var(--color-muted-dark);
  cursor: pointer;
}
#categories li.active, #categories li:hover, #categories_artistsauthors li.active, #categories_artistsauthors li:hover {
  color: var(--color-dark);
}
#categories_categories {
  padding-right: 65px !important;
}
#categories_categories::before {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  border-right: 1px solid var(--color-muted-dark);
  border-bottom: 1px solid var(--color-muted-dark);
  position: absolute;
  right: 25px;
  top: 8px;
  transform: rotateZ(45deg);
}
#categories_categories.active::before {
  top: 21px;
  transform: rotateZ(225deg);
}
#categories_categories:hover::before, #categories_categories.active::before {
  border-right: 1px solid black;
  border-bottom: 1px solid black;
}
#categories ul.sub {
  display: none;
  position: relative;
  padding-top: 10px;
  width: 40px;
  left: -25px;
}
#categories li.active ul.sub {
  display: block;
}
#categories ul.sub li {
  clear: both;
  float: left;
}
#categories_search {
  float: none !important;
  overflow: hidden;
}
#categories_search_field {
  display: block;
  font: inherit;
  background-color: transparent;
  outline: 0px none;
  border: 0px none;
  margin: 0px;
  padding: 0px;
  resize: none;
  display: block;
  font-size: var(--font-title-size);
  line-height: var(--font-title-lineheight);
  font-weight: 400;
  -webkit-appearance: none;
  border-radius: 0px;
  width: 100%;
}
#listing_more {
  position: relative;
  font-size: var(--font-title-size);
  line-height: var(--font-title-lineheight);
  color: var(--color-muted-dark);
  margin-top: 100px;
  cursor: pointer;
}
#listing_more:hover {
  color: var(--color-dark);
}
@media only screen and (max-height: 1000px) {
  .book_featured {
    grid-column-end: span 1;
    grid-row-end: span 1;
  }
  .book.book_featured .cover_responsive img {
    box-shadow: -15px 0px 25px -10px rgba(0, 0, 0, 0.6);
  }
  .book.book_featured .cover_responsive:hover img {
    box-shadow: -20px 0px 35px -10px rgba(0, 0, 0, 0.6);
  }
}
@media only screen and (max-width: 1100px) {
  #books ul {
    grid-template-columns: 1fr 1fr 1fr;
  }
  .book_featured {
    grid-column-end: span 1;
    grid-row-end: span 1;
  }
  .book.book_featured .cover_responsive img {
    box-shadow: -15px 0px 25px -10px rgba(0, 0, 0, 0.6);
  }
  .book.book_featured .cover_responsive:hover img {
    box-shadow: -20px 0px 35px -10px rgba(0, 0, 0, 0.6);
  }
}
@media only screen and (max-width: 1500px) {
  #books_list.highlights .book_featured {
    grid-column-end: span 1;
    grid-row-end: span 1;
  }
  #books_list.highlights .book_featured .cover_responsive img {
    box-shadow: -15px 0px 25px -10px rgba(0, 0, 0, 0.6);
  }
  #books_list.highlights .book_featured .cover_responsive:hover img {
    box-shadow: -20px 0px 35px -10px rgba(0, 0, 0, 0.6);
  }
}
@media only screen and (max-width: 1075px) {
  #categories li, #categories_artistsauthors li {
    clear: both;
  }
  #categories ul.sub {
    padding-top: 0px;
  }
}
@media only screen and (max-width: 550px) {
  #books ul {
    grid-template-columns: none;
    grid-auto-rows: auto;
  }
  #books {
    padding: 25px;
    padding-top: 50px;
  }
  .book .cover_responsive {
    top: 0px;
  }
  #introtext .cms-element-text {
    font-size: var(--font-normal-size);
    line-height: var(--font-normal-lineheight);
    padding-left: 25px;
    padding-right: 25px;
    padding-top: 22px;
  }
  #categories, #categories_artistsauthors {
    font-size: var(--font-normal-size);
    line-height: var(--font-normal-lineheight);
    padding-left: 12.5px;
    padding-right: 12.5px;
  }
  #categories li, #categories_artistsauthors li {
    padding-left: 12.5px;
    padding-right: 12.5px;
  }
  #categories_search_field {
    font-size: var(--font-normal-size);
    line-height: var(--font-normal-lineheight);
  }
  #listing_more {
    font-size: var(--font-normal-size);
    line-height: var(--font-normal-lineheight);
  }
  #categories_categories {
    padding-right: 45px !important;
  }
  #categories_categories::before {
    width: 10px;
    height: 10px;
    right: 25px;
    top: 6px;
  }
  #categories_categories.active::before {
    top: 12px;
  }
  #categories ul.sub {
    left: -12.5px;
  }
}
@media only screen and (min-width: 1450px) {
  #books ul {
    grid-column-gap: 100px;
    grid-row-gap: 100px;
  }
  .book_new, .book_soon {
    top: -25px !important;
    width: 62px !important;
    height: 42px !important;
    padding-top: 20px;
    font-size: 0.875rem;
  }
  .book_new_de, .book_soon_de {
    right: -17px !important;
  }
  .book_new_en, .book_soon_en {
    right: -15px !important;
  }
  .edition_featured {
    grid-column-end: span 2;
    grid-row-end: span 2;
  }
  #introtext .cms-element-text {
    width: 66.66666666%;
  }
}
@media only screen and (min-width: 1600px) {
  #books ul {
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
    grid-auto-rows: minmax(380px, auto);
  }
}
@media only screen and (min-width: 1850px) {
  #books ul {
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
    grid-auto-rows: minmax(400px, auto);
  }
}
@media only screen and (min-width: 2040px) {
  #books ul {
    grid-auto-rows: minmax(380px, auto);
  }
}
@media only screen and (min-width: 2100px) {
  #books ul {
    grid-column-gap: 150px;
    grid-auto-rows: minmax(400px, auto);
  }
}
@media only screen and (min-width: 2380px) {
  #books ul {
    grid-auto-rows: minmax(450px, auto);
  }
}
/*

    DIST_______ANZ Verlag
    
        Design by Maximilian Riedel
        Developed by Leon Klaßen—www.leonklassen.com
        Berlin, 2022, 2025

*/
/* ### LISTING INLINE ### */
.listing_inline {
  grid-column-end: span 4;
  grid-row-end: span 1;
  min-width: 0;
  height: auto;
}
.listing_inline + .listing_inline {
  margin-top: -80px;
}
.listing_inline .container {
  position: relative;
  width: calc(100% + 100px);
  left: -50px;
  height: 100%;
}
#kontext_inline .container {
  background-color: var(--color-pastel-green);
}
#fundus_inline .container {
  background-color: var(--color-pastel-purple);
}
.listing_inline .container .headline {
  position: relative;
  width: 100%;
  font-size: var(--font-title-size);
  line-height: var(--font-title-lineheight);
  padding: 50px;
  padding-right: 180px;
}
.listing_inline ul {
  display: flex !important;
  overflow: hidden;
  overflow-x: auto;
  padding-top: 25px;
  padding-bottom: 25px;
  padding-left: 50px;
  padding-right: 50px;
  scroll-snap-type: x mandatory;
  scroll-padding-left: 50px;
}
.listing_inline ul li {
  width: 250px;
  flex-shrink: 0;
  scroll-snap-align: start;
}
.listing_inline ul li.book_listing .book_cover {
  height: 243px;
}
.listing_inline .scroll_prev, .listing_inline .scroll_next {
  position: absolute;
  width: 24px;
  height: 24px;
  cursor: pointer;
}
.listing_inline .scroll_prev::before, .listing_inline .scroll_next::before {
  content: "";
  display: block;
  position: absolute;
  width: 20px;
  height: 20px;
  left: 2px;
  top: 2px;
  border-top: 1px solid black;
  border-right: 1px solid black;
}
.listing_inline .scroll_prev {
  right: 105px;
  top: 65px;
}
.listing_inline .scroll_prev::before {
  transform: rotateZ(-135deg);
}
.listing_inline .scroll_next {
  right: 55px;
  top: 65px;
}
.listing_inline .scroll_next::before {
  transform: rotateZ(45deg);
}
.listing_inline .container .more {
  position: relative;
  width: 100%;
  font-size: var(--font-title-size);
  line-height: var(--font-title-lineheight);
  padding: 50px;
  padding-right: 180px;
}
.listing_inline .container .more .link_hover {
  color: var(--color-muted-dark);
}
.listing_inline .container .more .link_hover:hover {
  color: var(--color-dark);
}
@media only screen and (min-width: 1450px) {
  .listing_inline + .listing_inline {
    margin-top: -100px;
  }
}
@media only screen and (min-width: 1600px) {
  .listing_inline {
    grid-column-end: span 5;
  }
}
@media only screen and (min-width: 1850px) {
  .listing_inline {
    grid-column-end: span 6;
  }
  .listing_inline ul li.book_listing .book_cover {
    height: 308px;
  }
}
@media only screen and (max-width: 1100px) {
  .listing_inline {
    grid-column-end: span 3;
  }
}
@media only screen and (max-width: 550px) {
  .listing_inline {
    grid-column-end: span 1;
  }
  .listing_inline ul li.book_listing .book_cover {
    height: 300px;
  }
  .listing_inline .container {
    width: calc(100% + 50px);
    left: -25px;
  }
  .listing_inline .container .headline, .listing_inline .container .more {
    font-size: var(--font-normal-size);
    line-height: var(--font-normal-lineheight);
    padding-left: 25px;
    padding-right: 100px;
    padding-bottom: 50px;
  }
  .listing_inline .scroll_prev, .listing_inline .scroll_next {
    width: 14px;
    height: 14px;
  }
  .listing_inline .scroll_prev {
    right: 54px;
    top: 56px;
  }
  .listing_inline .scroll_next {
    right: 28px;
    top: 56px;
  }
}
/*

    DIST_______ANZ Verlag
    
        Design by Maximilian Riedel
        Developed by Leon Klaßen—www.leonklassen.com
        Berlin, 2022, 2025

*/
/* ### PREVIEW ### */
#preview_popover {
  background-color: var(--color-light);
  overflow: hidden;
  position: fixed;
  height: auto;
  left: 0px;
  width: 100vw;
  top: 60px;
  bottom: 0px;
  z-index: 99999996;
  display: none;
}
#preview_popover.visible {
  display: block !important;
}
#preview_popover .close, .magnify_popup .close {
  position: absolute;
  width: 120px;
  height: 120px;
  right: 0px;
  top: 0px;
  cursor: pointer;
  z-index: 1;
}
#preview_popover .close::before, #preview_popover .close::after, .magnify_popup .close::before, .magnify_popup .close::after {
  content: "";
  display: block;
  position: absolute;
  width: 30px;
  height: 1px;
  background-color: var(--color-dark);
  margin-left: auto;
  margin-right: auto;
  margin-top: auto;
  margin-bottom: auto;
  left: 0px;
  right: 0px;
  top: 0px;
  bottom: 0px;
}
.magnify_popup .close::before, .magnify_popup .close::after {
  background-color: var(--color-light);
}
#preview_popover .close::before, .magnify_popup .close::before {
  transform: rotateZ(45deg);
}
#preview_popover .close::after, .magnify_popup .close::after {
  transform: rotateZ(-45deg);
}
#preview_popover #preview_container {
  position: absolute;
  left: 0px;
  top: 0px;
  width: 100%;
  height: 100%;
  overflow: hidden;
  overflow-y: auto;
}
#preview {
  position: relative;
  width: 100%;
  height: auto;
  overflow: hidden;
}
#preview #preview_title {
  position: relative;
  width: 100%;
  height: auto;
  padding: 50px;
  padding-top: 85px;
  padding-bottom: 24px;
  text-align: center;
}
#preview #preview_title h3 {
  text-transform: uppercase;
}
#preview_pages {
  position: relative;
  left: 0px;
  top: 0px;
  width: 100%;
  height: 320px;
  margin-bottom: 30px;
  margin-top: 60px;
}
#preview_pages .arrow {
  position: absolute;
  height: 160px;
  width: 160px;
  top: 0px;
  bottom: 0px;
  margin-top: auto;
  margin-bottom: auto;
  cursor: pointer;
}
#preview_pages .arrow.prev {
  left: 0px;
}
#preview_pages .arrow.next {
  right: 0px;
}
#preview_pages .arrow::before {
  content: "";
  display: block;
  width: 60px;
  height: 60px;
  position: absolute;
  left: 0px;
  top: 0px;
  left: 0px;
  right: 0px;
  bottom: 0px;
  margin-left: auto;
  margin-right: auto;
  margin-top: auto;
  margin-bottom: auto;
}
#preview_pages .arrow.prev::before {
  border-left: 1px solid black;
  border-top: 1px solid black;
  transform: rotateZ(-45deg);
  left: 15px;
}
#preview_pages .arrow.next::before {
  border-right: 1px solid black;
  border-top: 1px solid black;
  transform: rotateZ(45deg);
  right: 15px;
}
#preview_pages ul {
  position: absolute;
  left: 0px;
  top: 0px;
  height: 100%;
  transition: transform 0.4s;
}
#preview_pages li {
  position: relative;
  float: left;
  height: 100%;
}
#preview_pages .cover_responsive {
  position: absolute;
  left: 0px;
  right: 0px;
  margin-left: auto;
  margin-right: auto;
  cursor: default;
}
#preview_pages .cover_responsive:hover {
  transform: none;
}
#preview_pages .cover_responsive:hover img {
  box-shadow: -15px 0px 25px -10px rgba(0, 0, 0, 0.6);
}
#preview_pages img {
  position: absolute;
  left: 0px;
  top: 0px;
  height: 100%;
  -webkit-user-drag: none;
  -khtml-user-drag: none;
  -moz-user-drag: none;
  -o-user-drag: none;
  user-drag: none;
}
#preview_pages .magnifier {
  position: absolute;
  width: 200px;
  height: 200px;
  overflow: hidden;
  border-radius: 50%;
  pointer-events: none;
  background-color: var(--color-light);
}
#preview_pages .magnifier img {
  position: absolute;
  width: auto;
  height: auto;
  box-shadow: none;
  display: block;
}
#preview_pages_back {
  position: absolute;
  left: 0px;
  top: 0px;
  width: 50%;
  height: 100%;
}
#preview_pages_foreward {
  position: absolute;
  left: 50%;
  top: 0px;
  width: 50%;
  height: 100%;
}
#preview #preview_line {
  position: relative;
  width: calc(100% - 50px - 50px);
  margin-left: 50px;
  height: 1px;
  background-color: var(--color-dark);
}
#preview #preview_text {
  position: relative;
  width: 50%;
  margin-left: 25%;
  height: auto;
  padding: 50px;
  padding-bottom: 113px;
  padding-top: 75px;
}
#preview #preview_text p:not(:last-child) {
  margin-bottom: 1.5em;
}
#preview .preview_text_subtitle {
  text-transform: uppercase;
  width: 100%;
  text-align: center;
  display: inline-block;
  padding-bottom: 50px;
}
#preview #preview_details {
  position: relative;
  width: 50%;
  margin-left: 25%;
  height: auto;
  overflow: hidden;
  padding: 50px;
  padding-top: 30px;
  padding-bottom: 40px;
}
#preview #preview_details li {
  position: relative;
  width: 100%;
  height: auto;
  overflow: hidden;
  border-bottom: 1px solid black;
}
#preview #preview_details li:first-child {
  border-top: 1px solid black;
}
#preview #preview_details li div {
  position: relative;
  width: 50%;
  float: left;
  height: auto;
  padding-bottom: 9px;
  padding-top: 10px;
}
#preview #preview_details li div:first-child {
  text-transform: uppercase;
}
#preview #preview_details li div:last-child {
  text-align: right;
}
#preview #preview_details a {
  color: var(--color-muted-dark);
  cursor: pointer;
}
#preview #preview_details a:hover {
  color: var(--color-dark);
}
#preview #preview_close {
  position: absolute;
  top: 55px;
  left: 46px;
}
#preview .toolbar_wrapper {
  position: sticky;
  height: 80px;
  width: 100%;
  bottom: 0px;
}
#preview .toolbar_wrapper .toolbar {
  width: 100%;
  float: left;
}
#preview .toolbar .select span {
  position: relative;
  padding: 20px;
}
#preview .toolbar .select span.outofstock {
  cursor: default;
  text-decoration: line-through;
}
.magnify_popup {
  position: fixed;
  left: 0px;
  top: 0px;
  width: 100%;
  height: 100%;
  background-color: var(--color-dark);
  z-index: 999999999;
  display: flex;
  align-items: center;
}
.magnify_popup #preview_pages {
  margin-top: 20px;
  margin-bottom: 20px;
}
.magnify_popup #preview_pages .arrow::before {
  border-color: var(--color-light);
}
@media only screen and (min-width: 1450px) {
  #preview_popover {
    top: 80px;
  }
  #preview .preview_text_subtitle {
    padding-left: 25%;
    padding-right: 25%;
  }
  #preview #preview_title {
    padding-left: 25%;
    padding-right: 25%;
  }
}
@media only screen and (max-width: 1200px) {
  #preview #preview_text {
    width: 70%;
    margin-left: 15%;
  }
  #preview #preview_details {
    width: 70%;
    margin-left: 15%;
  }
}
@media only screen and (max-width: 1000px) {
  #preview_pages .arrow {
    display: none;
  }
  #preview #preview_title {
    padding-top: 55px;
  }
}
@media only screen and (max-width: 800px) {
  #preview #preview_text {
    width: 100%;
    margin-left: 0%;
  }
  #preview #preview_details {
    width: 100%;
    margin-left: 0%;
  }
}
@media only screen and (max-width: 550px) {
  #preview_popover {
    top: 50px;
  }
  #preview_popover .close {
    width: 70px;
    height: 100px;
  }
  #preview #preview_title {
    padding-left: 25px;
    padding-right: 25px;
  }
  #preview #preview_text {
    padding-left: 25px;
    padding-right: 25px;
  }
  #preview #preview_details {
    padding-left: 25px;
    padding-right: 25px;
  }
  #preview #preview_cover_container {
    width: calc(100% - 50px);
    margin-left: 25px;
  }
  #preview #preview_line {
    width: calc(100% - 20px - 20px);
    margin-left: 20px;
  }
}
/*

    DIST_______ANZ Verlag
    
        Design by Maximilian Riedel
        Developed by Leon Klaßen—www.leonklassen.com
        Berlin, 2022, 2025

*/
/* ### CART ### */
#cart_back {
  position: fixed;
  z-index: 999990;
  width: 100%;
  height: 100%;
}
#cart_back.hidden {
  display: none;
}
#cart {
  position: fixed;
  z-index: 99999995;
  height: auto;
  top: 60px;
  bottom: 0px;
  right: 0px;
  width: 50%;
  transition: transform 0.4s;
  overflow: hidden;
  background-color: var(--color-light);
}
#cart.hidden {
  transform: translate3d(100%, 0px, 0);
}
#cart .close {
  position: absolute;
  width: 120px;
  height: 120px;
  right: 0px;
  top: 0px;
  cursor: pointer;
}
#cart .close::before, #cart .close::after {
  content: "";
  display: block;
  position: absolute;
  width: 30px;
  height: 1px;
  background-color: var(--color-light);
  margin-left: auto;
  margin-right: auto;
  margin-top: auto;
  margin-bottom: auto;
  left: 0px;
  right: 0px;
  top: 0px;
  bottom: 0px;
}
#cart .close::before {
  transform: rotateZ(45deg);
}
#cart .close::after {
  transform: rotateZ(-45deg);
}
#cart #cart_content {
  position: absolute;
  left: 0px;
  width: 100%;
  top: 0px;
  bottom: 80px;
  height: auto;
  background-color: var(--color-dark);
  color: var(--color-light);
  padding-left: 25px;
  padding-right: 50px;
  padding-top: 0px;
  padding-bottom: 60px;
  overflow: hidden;
  overflow-y: auto;
}
#cart #cart_content .link {
  color: var(--color-muted-light);
  cursor: pointer;
}
#cart #cart_content .link:hover {
  color: var(--color-light);
}
#cart #cart_content .summary .group {
  position: relative;
  width: 100%;
}
#cart #cart_content .summary .group + .group {
  margin-top: 50px;
}
#cart #cart_content .summary .group .title {
  text-transform: uppercase;
  padding-bottom: 15px;
}
#cart #cart_content .summary .group ul li {
  position: relative;
  width: 100%;
  border-top: 1px solid white;
  display: flex;
  justify-content: space-between;
  padding-top: 4px;
  padding-bottom: 8px;
}
#cart #cart_content .summary .group ul li:last-child {
  border-bottom: 1px solid white;
}
#cart #cart_content .summary .group ul li.align-right {
  justify-content: flex-end;
}
#cart #cart_content .summary .group .comment {
  padding-top: 8px;
  text-align: right;
}
#cart .toolbar {
  position: absolute;
  bottom: 0px;
  left: 0px;
  width: 100%;
}
#cart .cart_element {
  position: relative;
  box-sizing: content-box;
  width: 100%;
  padding-top: 50px;
  padding-bottom: 50px;
  height: 250px;
}
#cart .cart_element:not(:first-child) {
  box-shadow: inset 0px 1px 0px white;
}
#cart .cart_element_cover {
  position: relative;
  float: left;
  height: 100%;
  width: 200px;
  transition: transform 0.5s;
}
#cart .cart_element_cover .cover_responsive {
  right: 0px;
  top: 0px;
}
#cart .cart_element_author {
  text-transform: uppercase;
}
#cart .cart_element_details {
  position: relative;
  float: left;
  height: 100%;
  width: calc(100% - 200px - 60px);
  padding-left: 25px;
  padding-right: 25px;
  margin-top: -10px;
  padding-top: 5px;
  overflow: hidden;
  text-overflow: ellipsis;
}
#cart .cart_element_inlinebutton {
  display: inline-block;
  padding: 8px;
  padding-top: 4px;
  padding-bottom: 4px;
  border: 1px solid white;
  width: 40px;
  text-align: center;
  margin-left: 25px;
  margin-top: -50%;
  margin-bottom: -50%;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}
#cart .cart_element_inlinebutton:hover {
  background-color: var(--color-darkgrey);
  border-color: var(--color-darkgrey);
}
#cart .cart_element_price {
  position: relative;
  float: left;
  height: 100%;
  width: 60px;
  text-align: right;
  margin-top: -5px;
}
#cart .cart_element_stepper {
  position: absolute;
  left: 63px;
  top: 4px;
  width: 63px;
  height: 24px;
  display: flex;
  justify-content: space-between;
}
#cart .cart_element_stepper_disabled {
  opacity: 0.2;
  cursor: default !important;
  pointer-events: none;
}
#cart .cart_element_stepper .cart_action {
  position: relative;
  height: 100%;
  width: 24px;
  cursor: pointer;
}
#cart .cart_element_stepper .cart_action:first-child::before, #cart .cart_element_stepper .cart_action:first-child::after, #cart .cart_element_stepper .cart_action:last-child::before {
  content: "";
  display: block;
  position: absolute;
  background-color: var(--color-light);
}
#cart .cart_element_stepper .cart_action:first-child::before, #cart .cart_element_stepper .cart_action:last-child::before {
  width: 16px;
  height: 1px;
  left: 4px;
  top: 11.5px;
}
#cart .cart_element_stepper .cart_action:first-child::after {
  height: 16px;
  width: 1px;
  left: 11.5px;
  top: 4px;
}
#cart #cart_sum {
  position: relative;
  width: 100%;
  text-align: right;
  transition: transform 0.4s;
}
#cart #cart_sum p {
  position: relative;
  width: 100%;
  box-shadow: 0px -1px 0px white;
  padding-top: 8px;
  margin-top: 7px;
}
#cart .cart_sum_subtotal {
  margin-top: 0px !important;
}
#cart .cart_sum_info {
  margin-bottom: -7px;
}
#cart #cart_sum span {
  cursor: pointer;
}
#cart #cart_sum span:hover {
  color: var(--color-light);
}
@media only screen and (min-width: 1600px) {
  #cart .cart_element {
    height: 300px;
  }
  #cart .cart_element_cover {
    width: 250px;
  }
  #cart .cart_element_details {
    width: calc(100% - 250px - 60px);
  }
}
@media only screen and (min-width: 1450px) {
  #cart {
    top: 80px;
  }
}
@media only screen and (max-width: 800px) {
  #cart {
    width: 100%;
  }
}
@media only screen and (max-width: 550px) {
  #cart {
    top: 50px;
  }
  #cart #cart_content {
    padding-left: 25px;
    padding-right: 25px;
  }
  #cart .cart_element_cover {
    width: 100%;
    margin-bottom: 25px;
  }
  #cart .cart_element {
    height: auto;
    overflow: hidden;
  }
  #cart .cart_element_details {
    padding-left: 0px;
    width: calc(100% - 60px);
  }
}
/*

    DIST_______ANZ Verlag
    
        Design by Maximilian Riedel
        Developed by Leon Klaßen—www.leonklassen.com
        Berlin, 2022, 2025

*/
/* ### NEWFORM ### */
.newform_wrapper {
  padding: 50px;
  padding-top: 80px;
  padding-bottom: 150px;
  /*overflow: hidden;
    overflow-y: auto;*/
}
.newform_titlewrapper {
  position: relative;
  padding: 50px;
  padding-top: 60px;
  padding-bottom: 40px;
  overflow: hidden;
}
.newform_title {
  position: relative;
  width: 100%;
  text-transform: uppercase;
  box-shadow: inset 0px -1px black;
  padding-top: 80px;
  padding-bottom: 20px;
}
.newform_title_noversals {
  text-transform: none !important;
}
.newform_title_noborder {
  box-shadow: none !important;
  padding-bottom: 0px !important;
}
.newform_title .link {
  cursor: pointer;
}
.newform_title .link:hover {
  color: var(--color-dark);
}
.newform_title_top {
  padding-top: 0px !important;
}
.newform_title.bottom {
  padding-top: 150px;
  padding-bottom: 25px;
  box-shadow: none;
}
.newform_titledescription {
  position: relative;
  width: 100%;
  padding-top: 50px;
  padding-bottom: 50px;
  box-shadow: inset 0px -1px black;
}
.newform_field {
  position: relative;
  width: 100%;
  height: auto;
  overflow: hidden;
}
.newform_field input, .newform_field textarea, .newform_field label, .newform_checkbox label, .newform_select label, .newform_select div {
  position: relative;
  font: inherit;
  background-color: transparent;
  outline: 0px none;
  border: 0px none;
  margin: 0px;
  padding: 0px;
  resize: none;
  display: block;
  width: 100%;
  padding-top: 30px;
  padding-bottom: 30px;
  box-shadow: inset 0px -1px black;
  font-size: var(--font-normal-size);
  line-height: var(--font-normal-lineheight);
  font-weight: 300;
  -webkit-appearance: none;
  border-radius: 0px;
}
.newform_field textarea {
  box-shadow: none !important;
}
.newform_field label, .newform_select label {
  position: absolute;
  left: 0px;
  top: 0px;
  width: 100%;
  box-shadow: none;
  color: var(--color-muted-dark);
  transition: transform 0.3s;
  transform-origin: 0% 50%;
}
.newform_field_label_filled {
  transform: translate3d(0px, -28px, 0) scale(0.7);
}
.newform_field_label_filled_end {
  transform: none !important;
  font-size: 0.875rem !important;
  top: -23px !important;
}
.newform_field button {
  position: absolute;
  right: 0px;
  top: 22px;
  width: 40px;
  height: 40px;
  background-color: transparent;
  border: 0px none;
  padding: 0px;
  margin: 0px;
  border-radius: 50%;
  border: 1px solid var(--color-dark);
  color: var(--color-dark);
  font: inherit;
  cursor: pointer;
  text-align: center;
}
.newform_field button:hover {
  background-color: var(--color-dark);
  color: var(--color-light);
}
.has--error label {
  color: var(--color-red) !important;
}
.newform_field .warning {
  padding-left: 20px;
  color: var(--color-red) !important;
}
.newform_checkbox {
  position: relative;
  width: 100%;
  height: auto;
  /*overflow: hidden;*/
  color: var(--color-darkgrey);
  cursor: pointer;
}
.newform_checkbox label {
  padding-right: 65px;
  -webkit-hyphens: auto;
  -moz-hyphens: auto;
  -ms-hyphens: auto;
  hyphens: auto;
  cursor: pointer;
}
.newform_checkbox input {
  appearance: none;
  position: absolute;
  right: 0px;
  top: 22px;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  border: 1px solid var(--color-dark);
  cursor: pointer;
}
.newform_checkbox input:checked::before {
  content: "";
  position: absolute;
  left: 10px;
  top: 11px;
  width: 19px;
  height: 10px;
  border-radius: 0px;
  border: 0px none;
  border-left: 1px solid var(--color-dark);
  border-bottom: 1px solid var(--color-dark);
  transform: rotateZ(-45deg);
}
/*.newform_checkbox_selected div div {
    opacity: 1;
}*/
/*.newform_checkbox:hover, 
.newform_checkbox_selected {
    color: var( --color-dark );
}*/
/*.newform_checkbox:hover div, 
.newform_checkbox_selected div {
    border-color: var( --color-dark );
}

.newform_checkbox:hover div div, 
.newform_checkbox_selected div div {
    border-color: var( --color-dark );
}*/
.newform_select {
  position: relative;
  width: 100%;
  height: auto;
  overflow: hidden;
}
.newform_select select {
  position: absolute;
  left: 0px;
  top: 0px;
  height: 100%;
  width: 100%;
  -webkit-appearance: none;
  opacity: 0;
}
.newform_select span {
  position: absolute;
  display: block;
  right: 5px;
  top: 0px;
  border: 1px solid black;
  border-left-color: transparent;
  border-top-color: transparent;
  width: 20px;
  height: 20px;
  transform: rotateZ(45deg);
  bottom: 15px;
  margin-top: auto;
  margin-bottom: auto;
}
.newform_hiddenfield {
  display: none;
}
.newform_line {
  position: relative;
  width: 100%;
  height: 1px;
  background-color: var(--color-dark);
}
.newform_detail_title {
  position: relative;
  padding-top: 45px;
  padding-bottom: 19px;
  text-transform: uppercase;
}
.newform_detail_line_first {
  display: none;
}
.newform_detail_title_first {
  margin-top: -50px;
}
.newform_detail_text {
  position: relative;
  padding-top: 20px;
  padding-bottom: 19px;
}
.newform_detail_text_first {
  margin-top: -20px;
}
.newform_detail_text_last {
  padding-bottom: 94px;
  padding-bottom: 54px;
}
.newform_detail_text a, .newform_title a {
  color: var(--color-darkgrey);
  cursor: pointer;
}
.newform_detail_text a:hover, .newform_title a:hover {
  color: var(--color-dark);
}
.newform_field_shipping_hidden, .newform_field_business_hidden, .newform_field_state_hidden, .newform_field_shipping_state_hidden {
  display: none !important;
}
.newform_content_large {
  font-size: var(--font-large-size);
  line-height: var(--font-large-lineheight);
  padding-top: 23px;
}
.newform_content_superlarge {
  font-size: var(--font-ultra-size);
  line-height: var(--font-ultra-lineheight);
  padding-top: 23px;
}
.newform_toolbar {
  position: sticky;
  bottom: 0px;
  left: 0px;
  width: 100%;
}
.newform_table {
  position: relative;
  width: 100%;
  height: auto;
  overflow: hidden;
  border-top: 1px solid black;
  margin-top: 140px;
}
.newform_title + .newform_table {
  margin-top: 0px;
  border-top: none;
}
.newform_table li {
  position: relative;
  width: 100%;
  padding-top: 4px;
  padding-bottom: 8px;
  border-bottom: 1px solid black;
  text-align: right;
  text-transform: uppercase;
  height: auto;
  overflow: hidden;
}
.newform_table li.withcover {
  padding-left: 240px;
  height: 240px;
  padding-top: 10px;
  padding-bottom: 10px;
}
.newform_table li.withcover img {
  position: absolute;
  left: 0px;
  top: 0px;
  height: 100%;
  padding-top: 10px;
  padding-bottom: 10px;
  display: block;
}
.newform_table li.withcover div:first-child {
  text-transform: none;
}
.newform_table li.withcover .author {
  text-transform: uppercase;
}
.newform_table li div {
  position: relative;
  float: left;
  width: 50%;
}
.newform_table li div:first-child {
  text-transform: uppercase;
  text-align: left;
}
.newform_table li div:last-child {
  text-transform: none;
}
.newform_table a {
  color: var(--color-muted-dark);
  cursor: pointer;
}
.newform_table a:hover {
  color: var(--color-dark);
}
.payment-methods, .payment-method, .payment-form-group, .payment-method-radio, .payment-method-description, #ppplus, #swag-paypal-acdc-form {
  width: 100% !important;
}
.payment-method-description {
  text-transform: none !important;
}
.payment-method-description strong {
  font-weight: normal;
  text-transform: uppercase !important;
}
/*#confirmOrderForm {
    display: none;
}*/
/* TEMPORÄR: Zahlungsmethoden deaktivieren */
/*.payment-method-radio input,
.payment-method-description strong {
    display: none;
}*/
.newform_button {
  position: relative;
  width: 100%;
  height: 70px;
  background-color: var(--color-blue);
  color: var(--color-light);
  text-align: center;
  margin-top: 80px;
  cursor: pointer;
}
.newform_button:hover {
  background-color: var(--color-green);
  color: var(--color-dark);
}
@media only screen and (min-width: 1450px) {
  /*.newform_field input, 
    .newform_field textarea, 
    .newform_field label, 
    .newform_checkbox label, 
    .newform_select label, 
    .newform_select div {
        font-size: var( --font-title-size );
        line-height: var( --font-title-lineheight );
    }*/
  /*.newform_field_label_filled {
        transform: translate3d(0px,-40px,0) scale(0.35);
    }*/
  /*.newform_field_label_filled_end {
        top: -40px !important;
    }*/
  /*.newform_checkbox div {
        top:44px;
    }*/
  .newform_detail_text {
    padding-right: 50%;
  }
}
@media only screen and (max-width: 550px) {
  .newform_detail_line_first {
    display: block;
  }
  .newform_detail_title_first {
    margin-top: 0px;
  }
  .newform_wrapper {
    padding-left: 25px;
    padding-right: 25px;
  }
}
.payone-payment {
  margin-top: 80px;
  background-color: var(--color-dark);
  color: var(--color-light);
  padding: 20px;
  display: flex;
  flex-direction: column;
  gap: 0px;
}
.payone-payment .card fieldset {
  display: flex;
  flex-direction: column;
  gap: 0px;
}
.payone-payment .card-title {
  text-transform: uppercase;
  border-bottom: 1px solid var(--color-light);
  padding-bottom: 20px;
}
.payone-payment .row {
  display: flex;
  width: 100%;
  gap: 20px;
  margin-top: 20px;
}
.payone-payment .row .col-md-6, .payone-payment .row .col-md-4 {
  display: block;
  width: 100% !important;
  float: none !important;
}
.payone-payment .row .col-md-2 {
  display: block;
  width: 33.3333333% !important;
  float: none !important;
}
.payone-payment .form-label {
  display: block;
  width: 100%;
  margin-bottom: 4px;
}
.payone-payment .form-control {
  display: block;
  width: 100%;
}
.payone-payment input.form-control {
  height: 40px;
  padding: 0.5625rem;
}
.payone-payment .form-control iframe {
  display: block;
  width: 100%;
  height: 40px;
}
.payone-payment #card-logo {
  display: block;
  width: 100%;
  height: 40px;
  object-fit: contain;
  background-color: white;
  padding: 4px;
}
/*

    DIST_______ANZ Verlag
    
        Design by Maximilian Riedel
        Developed by Leon Klaßen—www.leonklassen.com
        Berlin, 2022, 2025

*/
/* ### ARTISTLIST ### */
#artistlist {
  position: relative;
  width: 100%;
  height: auto;
  overflow: hidden;
  padding-left: 50px;
  padding-right: 50px;
  font-size: var(--font-large-size);
  line-height: var(--font-large-lineheight);
  margin-top: -30px;
  padding-bottom: 45px;
}
#artistlist li.group {
  position: relative;
  width: 100%;
  height: auto;
  break-inside: avoid;
  list-style-type: none;
}
#artistlist li.group ul {
  list-style-type: none;
}
#artistlist li.group li.headletter, #artistlist li.group li.artist {
  position: relative;
  width: 100%;
  height: auto;
  display: block;
}
#artistlist li.group li.artist .artistname {
  cursor: pointer;
  display: inline-block;
  position: relative;
  width: 100%;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
#artistlist li.group li.artist .artistname:hover {
  color: var(--color-muted-dark);
}
#artistlist li.group li.headletter {
  padding-top: 74px;
}
#artistlist ul.artist_products, #preview_moreproducts ul.artist_products {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr 1fr;
  grid-auto-rows: 385px;
  grid-column-gap: 50px;
  grid-row-gap: 80px;
  grid-auto-flow: dense;
  min-height: 0;
  min-width: 0;
  font-size: var(--font-base-small-size);
  line-height: var(--font-base-small-lineheight);
  padding-top: 45px;
  padding-bottom: 45px;
  min-height: 385px;
}
#artistlist ul.artist_products li, #preview_moreproducts ul.artist_products li {
  min-width: 0;
}
#preview_moreproducts {
  display: none;
  background-color: var(--color-lightgrey);
  padding-top: 30px;
  padding-bottom: 30px;
}
#preview_moreproducts ul.artist_products {
  padding-left: 50px;
  padding-right: 50px;
  width: 100%;
  min-width: 320px;
}
#preview_moreproducts .headline {
  position: relative;
  padding: 50px;
  padding-bottom: 20px;
  padding-top: 45px;
  text-align: center;
  text-transform: uppercase;
}
@media only screen and (max-width: 1100px) {
  #artistlist ul.artist_products, #preview_moreproducts ul.artist_products {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media only screen and (max-width: 550px) {
  #artistlist {
    padding-left: 25px;
    padding-right: 25px;
    font-size: var(--font-normal-size);
    line-height: var(--font-normal-lineheight);
  }
  #artistlist ul.artist_products, #preview_moreproducts ul.artist_products {
    grid-template-columns: none;
    grid-auto-rows: auto;
  }
}
@media only screen and (min-width: 1450px) {
  #artistlist ul.artist_products, #preview_moreproducts ul.artist_products {
    grid-column-gap: 100px;
    grid-row-gap: 100px;
  }
}
@media only screen and (min-width: 1600px) {
  #artistlist ul.artist_products, #preview_moreproducts ul.artist_products {
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
    grid-auto-rows: 380px;
  }
}
@media only screen and (min-width: 1850px) {
  #artistlist ul.artist_products, #preview_moreproducts ul.artist_products {
    grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
    grid-auto-rows: 400px;
  }
}
@media only screen and (min-width: 2040px) {
  #artistlist ul.artist_products, #preview_moreproducts ul.artist_products {
    grid-auto-rows: 380px;
  }
}
@media only screen and (min-width: 2100px) {
  #artistlist ul.artist_products, #preview_moreproducts ul.artist_products {
    grid-column-gap: 150px;
    grid-auto-rows: 400px;
  }
}
@media only screen and (min-width: 2380px) {
  #artistlist ul.artist_products, #preview_moreproducts ul.artist_products {
    grid-auto-rows: 450px;
  }
}
/*

    DIST_______ANZ Verlag
    
        Design by Maximilian Riedel
        Developed by Leon Klaßen—www.leonklassen.com
        Berlin, 2022, 2025

*/
/* ### BOOKSELLING ### */
#bookselling {
  display: flex;
  width: 100%;
  padding: 50px;
  gap: 50px;
}
#bookselling .select {
  width: 33.333333%;
  flex-shrink: 1;
}
#bookselling .select .select-wrapper:not(:first-child) {
  margin-top: 50px;
}
#bookselling .select .select-wrapper .label {
  position: relative;
  display: block;
  margin-bottom: 20px;
}
#bookselling .select .select-wrapper .select {
  position: relative;
  padding-left: 40px;
  font-size: var(--font-large-size);
  line-height: var(--font-large-lineheight);
  cursor: pointer;
  width: 100%;
}
#bookselling .select .select-wrapper .select::before {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  position: absolute;
  left: 5px;
  top: 0px;
  border-bottom: 1px solid black;
  border-right: 1px solid black;
  transform: rotateZ(45deg);
}
#bookselling .select .select-wrapper.active .select::before {
  transform: translate3d(0px, 14px, 0) rotateZ(225deg);
}
#bookselling .select .select-wrapper .options {
  margin-top: 20px;
  font-size: var(--font-large-size);
  line-height: var(--font-large-lineheight);
  display: none;
}
#bookselling .select .select-wrapper.active .options {
  display: block;
}
#bookselling .select .select-wrapper .options p {
  padding-left: 40px;
}
#bookselling .list {
  width: 66.666666%;
  flex-shrink: 1;
}
#bookselling .list p:not(p.title) {
  font-size: var(--font-large-size);
  line-height: var(--font-large-lineheight);
}
#bookselling .list p.title {
  margin-bottom: 20px;
}
@media only screen and (max-width: 550px) {
  #bookselling {
    flex-direction: column;
    padding-left: 25px;
    padding-right: 25px;
    padding-top: 0px;
  }
  #bookselling .select select, #bookselling .list p:not(p.title) {
    font-size: var(--font-normal-size);
    line-height: var(--font-normal-lineheight);
  }
  #bookselling .select .select-wrapper {
    padding-left: 34px;
  }
  #bookselling .select .select-wrapper::before {
    width: 14px;
    height: 14px;
  }
}
/*

    DIST_______ANZ Verlag
    
        Design by Maximilian Riedel
        Developed by Leon Klaßen—www.leonklassen.com
        Berlin, 2022, 2025

*/
/* ### EVENTS ### */
#events {
  width: 100%;
  padding-left: 50px;
  padding-right: 50px;
}
#events ul.upcoming, #events ul.archive {
  display: flex;
  flex-wrap: wrap;
}
#events ul.archive {
  column-gap: 50px;
  padding-bottom: 100px;
  display: none;
}
#events ul.archive.visible {
  display: flex;
}
#events ul.upcoming li.event {
  width: 100%;
}
#events ul.upcoming li.event .info {
  font-size: var(--font-large-size);
  line-height: var(--font-large-lineheight);
}
#events ul.upcoming li.event .info p.subtitle {
  font-size: var(--font-base-small-size);
  line-height: var(--font-base-small-lineheight);
  margin-top: -4px;
  margin-bottom: 37px;
}
#events ul.upcoming li.event .info p:not(:first-child) {
  margin-top: 37px;
}
#events ul.archive li.event .info p.subtitle {
  margin-top: -4px;
  margin-bottom: 21px;
}
#events ul.archive li.event .info p:not(:first-child) {
  margin-top: 21px;
}
#events ul.archive li.year {
  width: 100%;
  font-size: var(--font-title-size);
  line-height: var(--font-title-lineheight);
}
#events ul.archive li.year:not(:first-child) {
  margin-top: 100px;
}
#events ul.archive li.event {
  width: calc(( 100% - 50px ) / 2);
  flex-shrink: 0;
  flex-grow: 0;
}
#events ul.upcoming li.event, #events ul.archive li.event {
  display: flex;
  column-gap: 50px;
  border-bottom: 1px solid black;
  padding-top: 50px;
  padding-bottom: 50px;
}
#events ul.upcoming li.event div, #events ul.archive li.event div {
  flex: 1 1 0%;
}
#events ul.upcoming li.event div img, #events ul.archive li.event div img {
  display: block;
  width: 100%;
  padding: 0px;
  margin: 0px;
  object-fit: cover;
  aspect-ratio: 1.25;
}
#events ul.upcoming li.event a, #events ul.archive li.event a {
  color: var(--color-muted-dark);
}
#events ul.upcoming li.event a:hover, #events ul.archive li.event a:hover {
  color: var(--color-dark);
}
#events .show_archive {
  position: relative;
  padding-top: 90px;
  padding-bottom: 90px;
  font-size: var(--font-title-size);
  line-height: var(--font-title-lineheight);
  cursor: pointer;
}
#events .show_archive:hover {
  color: var(--color-dark);
}
#events .show_archive::before, #events .show_archive::after {
  content: "";
  display: block;
  position: absolute;
  width: 30px;
  height: 1px;
  background-color: var(--color-dark);
  margin-top: auto;
  margin-bottom: auto;
  right: -4px;
  top: 0px;
  bottom: 0px;
}
#events .show_archive::before {
  transform: rotateZ(45deg);
  right: 17px;
}
#events .show_archive.visible::before {
  right: -4px;
}
#events .show_archive::after {
  transform: rotateZ(-45deg);
}
@media only screen and (min-width: 1450px) {
  #events ul.upcoming li.event .info p.subtitle {
    font-size: var(--font-base-large-size);
    line-height: var(--font-base-large-lineheight);
  }
}
@media only screen and (max-width: 1100px) {
  #events ul.upcoming li.event .info {
    font: inherit;
  }
  #events ul.upcoming li.event .info p.subtitle {
    margin-bottom: 21px;
  }
  #events ul.upcoming li.event .info p:not(:first-child) {
    margin-top: 21px;
  }
  #events ul.archive li.event {
    width: 100%;
    flex-basis: 100%;
  }
}
@media only screen and (max-width: 550px) {
  #events {
    padding-left: 25px;
    padding-right: 25px;
  }
  #events ul.upcoming li.event, #events ul.archive li.event {
    flex-direction: column;
    row-gap: 25px;
  }
  #events ul.archive li.year {
    font-size: var(--font-normal-size);
    line-height: var(--font-normal-lineheight);
  }
  #events .show_archive {
    font-size: var(--font-normal-size);
    line-height: var(--font-normal-lineheight);
  }
  #events .show_archive::before, #events .show_archive::after {
    width: 20px;
    right: -2px;
  }
  #events .show_archive::before {
    right: 12px;
  }
  #events .show_archive.visible::before {
    right: -2px;
  }
}
/*

    DIST_______ANZ Verlag
    
        Design by Maximilian Riedel
        Developed by Leon Klaßen—www.leonklassen.com
        Berlin, 2022, 2025

*/
/* ### FOOTER ### */
footer {
  position: relative;
  width: 100%;
  height: auto;
  overflow: hidden;
}
footer .link_hover {
  color: var(--color-muted-dark);
}
footer .link_hover:hover {
  color: var(--color-dark);
}
footer .newsletter {
  position: relative;
  width: 100%;
  background-color: var(--color-dark);
  color: var(--color-light);
  height: auto;
  overflow: hidden;
}
footer .newsletter .link_hover {
  color: var(--color-muted-light);
  cursor: pointer;
}
footer .newsletter .link_hover:hover {
  color: var(--color-light);
}
footer .newsletter .top {
  position: relative;
  width: 100%;
  padding: 25px;
  height: auto;
  overflow: hidden;
}
footer .newsletter .top h3, footer .newsletter .top div {
  padding: 25px;
  float: left;
}
footer .newsletter .top h3, footer .newsletter .top div.action {
  width: 25%;
  font-size: var(--font-title-size);
  line-height: var(--font-title-lineheight);
  padding-top: 15px;
  padding-bottom: 15px;
}
footer .newsletter .top div.tagline {
  width: 50%;
  padding-top: 20px;
  padding-bottom: 18px;
}
footer .newsletter .top div.action {
  text-align: right;
  display: none;
}
footer .newsletter .close {
  position: absolute;
  width: 120px;
  height: 120px;
  right: 0px;
  top: 0px;
  cursor: pointer;
}
footer .newsletter .close::before, footer .newsletter .close::after {
  content: "";
  display: block;
  position: absolute;
  width: 30px;
  height: 1px;
  background-color: var(--color-light);
  margin-left: auto;
  margin-right: auto;
  margin-top: auto;
  margin-bottom: auto;
  left: 0px;
  right: 0px;
  top: 0px;
  bottom: 0px;
}
footer .newsletter .close::before {
  transform: rotateZ(45deg);
}
footer .newsletter .close::after {
  transform: rotateZ(-45deg);
}
footer .newsletter .bottom {
  position: relative;
  width: 100%;
  padding: 25px;
  height: auto;
  overflow: hidden;
  padding-top: 0px;
  margin-top: -25px;
}
footer .newsletter .bottom .input_wrapper {
  position: relative;
  padding: 25px;
  float: left;
}
footer .newsletter .bottom .input_wrapper.email {
  width: 75%;
  margin-left: 25%;
}
footer .newsletter .bottom .input_wrapper.firstname, footer .newsletter .bottom .input_wrapper.lastname {
  width: 37.5%;
}
footer .newsletter .bottom .input_wrapper.firstname {
  margin-left: 25%;
}
footer .newsletter .bottom input[type=text], footer .newsletter .bottom input[type=email] {
  font: inherit;
  display: block;
  color: var(--color-light);
  background-color: transparent;
  font-size: var(--font-title-size);
  line-height: var(--font-title-lineheight);
  outline: 0px none;
  border: 0px none;
  padding: 0px;
  margin: 0px;
  border-bottom: 1px solid white;
  width: 100%;
}
footer .newsletter .bottom input::placeholder {
  color: var(--color-muted-light);
}
footer .newsletter .bottom .newsletter_list {
  position: relative;
  float: left;
  width: 50%;
  margin-left: 25%;
  padding: 25px;
}
footer .newsletter .bottom .policy {
  position: relative;
  float: left;
  width: 25%;
  padding: 25px;
}
footer .newsletter .bottom .radio_wrapper {
  position: relative;
  float: left;
  /*overflow: hidden;*/
}
footer .newsletter .bottom .radio_wrapper + .radio_wrapper {
  margin-left: 50px;
}
footer .newsletter .bottom input[type=radio], footer .newsletter .bottom input[type=checkbox] {
  -webkit-appearance: none;
  appearance: none;
  background-color: transparent;
  margin: 0;
  position: absolute;
  width: 25px;
  height: 25px;
}
footer .newsletter .bottom input[type=radio]::before, footer .newsletter .bottom input[type=checkbox]::before {
  content: "";
  display: block;
  position: absolute;
  left: 0px;
  top: 0px;
  width: 25px;
  height: 25px;
  border: 1px solid white;
  border-radius: 50%;
}
footer .newsletter .bottom input[type=radio]:checked::before, footer .newsletter .bottom input[type=checkbox]:checked::before {
  background-color: var(--color-light);
}
footer .newsletter .bottom label {
  position: relative;
  display: inline-block;
  position: relative;
  display: inline-block;
  margin-left: 35px;
  margin-right: 0px;
  padding-left: 0px;
  padding-top: 3px;
  padding-bottom: 2px;
}
footer .newsletter .bottom .action {
  position: relative;
  float: left;
  font-size: var(--font-title-size);
  line-height: var(--font-title-lineheight);
  padding: 25px;
  padding-top: 15px;
  padding-bottom: 15px;
  margin-left: 25%;
}
footer .newsletter .link_hover:hover {
  color: var(--color-light);
}
footer .newsletter.folded .close, footer .newsletter.folded .bottom, footer .newsletter.folded .toolbar {
  display: none;
}
footer .newsletter.folded .top div.action {
  display: block;
}
@media only screen and (max-width: 1100px) {
  footer .newsletter .top h3, footer .newsletter .top div.tagline, footer .newsletter .top div.action {
    width: 100%;
  }
  footer .newsletter .top div.action {
    text-align: left;
  }
  footer .newsletter .bottom .input_wrapper.email {
    width: 100%;
    margin-left: 0%;
  }
  footer .newsletter .bottom .input_wrapper.firstname, footer .newsletter .bottom .input_wrapper.lastname {
    width: 50%;
    margin-left: 0%;
  }
  footer .newsletter .bottom .newsletter_list, footer .newsletter .bottom .policy {
    width: 100%;
    margin-left: 0%;
  }
  footer .newsletter .bottom .action {
    margin-left: 0%;
  }
}
@media only screen and (max-width: 550px) {
  footer .newsletter .top, footer .newsletter .bottom {
    padding-left: 0px;
    padding-right: 0px;
  }
  footer .newsletter .top h3, footer .newsletter .top div.action {
    font-size: var(--font-normal-size);
    line-height: var(--font-normal-lineheight);
  }
  footer .newsletter .top div.tagline br {
    display: none;
  }
  footer .newsletter .bottom input[type=text], footer .newsletter .bottom input[type=email] {
    font-size: var(--font-normal-size);
    line-height: var(--font-normal-lineheight);
  }
  footer .newsletter .close {
    width: 70px;
    height: 100px;
  }
  footer .newsletter .bottom .radio_wrapper {
    width: 100%;
  }
  footer .newsletter .bottom .radio_wrapper + .radio_wrapper {
    margin-left: 0px;
    margin-top: 25px;
  }
  footer .newsletter .bottom .action {
    font-size: var(--font-normal-size);
    line-height: var(--font-normal-lineheight);
  }
}
footer .logo {
  position: relative;
  float: left;
  width: 84px;
  height: 100%;
  background-image: url("../../427adfed81d1445784f3c5242f65c04e/assets/img/DIS_DISTANZ_Logo_black.svg");
  background-size: 100%;
  background-repeat: no-repeat;
  background-position: 50% 50%;
  color: transparent;
  margin-left: 50px;
  margin-top: 100px;
}
footer nav.primary {
  position: relative;
  width: 100%;
  padding: 25px;
  height: auto;
  overflow: hidden;
  padding-bottom: 75px;
}
footer nav.primary ul {
  position: relative;
  width: 100%;
}
footer nav.primary ul li {
  position: relative;
  float: left;
  padding: 25px;
  width: 25%;
}
footer nav.primary ul li .badge {
  position: absolute;
  right: 25px;
  top: 5px;
  width: 100px;
  height: 100px;
}
footer nav.primary ul li .badge.verlage-gegen-rechts a {
  position: absolute;
  left: 0px;
  top: 0px;
  width: 100%;
  height: 100%;
  background-image: url("../../427adfed81d1445784f3c5242f65c04e/assets/img/VgR-Logo_01.png");
  background-size: contain;
}
footer nav.primary ul li ul li {
  float: none;
  padding: 0px;
  width: 100%;
}
footer nav.secondary {
  position: relative;
  width: 100%;
  padding: 25px;
  height: auto;
  overflow: hidden;
}
footer nav.secondary::before {
  content: "";
  display: block;
  width: auto;
  position: absolute;
  left: 50px;
  right: 50px;
  top: 0px;
  height: 1px;
  background-color: var(--color-dark);
}
footer nav.secondary ul li {
  position: relative;
  float: left;
  padding: 25px;
}
@media only screen and (max-width: 550px) {
  footer .logo {
    margin-left: 25px;
  }
  footer nav.primary {
    padding-left: 0px;
    padding-right: 0px;
  }
  footer nav.primary ul li {
    width: 100%;
  }
  footer nav.secondary {
    padding-left: 15px;
    padding-right: 15px;
  }
  footer nav.secondary::before {
    left: 25px;
    right: 25px;
  }
  footer nav.secondary ul li {
    padding-left: 10px;
    padding-right: 10px;
  }
}
