/* Hey Eloise */
@import url("https://use.typekit.net/nly0izs.css");
.eloise {
font-family: "hey-eloise", sans-serif;
font-weight: 400;
font-style: normal;
font-size: var(--large);
line-height: 1;
color: #a8b85c;
}
body {
  font-synthesis: none; /* Verhindert künstliche Fettschrift */
  -webkit-font-smoothing: antialiased; /* Weicheres Rendering */
  text-rendering: optimizeLegibility;
}

/* Work Sans */
@font-face {  font-family: 'Work Sans';  src:  url("../fonts/WorkSans-VariableFont_wght.woff") format('woff'); font-style:normal; }
@font-face {  font-family: 'Work Sans';  src:  url("../fonts/WorkSans-Italic-VariableFont_wght.woff") format('woff'); font-style:italic; }

/* Publico Headline */
@font-face {
    font-family: 'Publico Headline';
    src: url("../fonts/Publico_Headline_Roman.woff") format('woff');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'Publico Headline';
    src: url("../fonts/Publico_Headline_Italic.woff") format('woff');
    font-weight: 400;
    font-style: italic;
}

@font-face {
    font-family: 'Publico Headline';
    src: url("../fonts/Publico_Headline_Medium_Italic.woff") format('woff');
    font-weight: 500;
    font-style: italic;
}

/* Publico Text */
@font-face {
    font-family: 'Publico Text';
    src: url("../fonts/PublicoText_Roman.woff") format('woff');
    font-weight: 400;
    font-style: normal;
}

@font-face {
    font-family: 'Publico Text';
    src: url("../fonts/PublicoText_Bold_Italic.woff") format('woff');
    font-weight: 700;
    font-style: italic;
}

@font-face {
    font-family: 'Publico Text';
    src: url("../fonts/PublicoText_Italic.woff") format('woff');
    font-weight: 400;
    font-style: italic;
}

@font-face {
    font-family: 'Publico Text';
    src: url("../fonts/PublicoText_Semibold_Italic.woff") format('woff');
    font-weight: 600;
    font-style: italic;
}

@font-face {
    font-family: 'Publico Text';
    src: url("../fonts/PublicoText_Semibold.woff") format('woff');
    font-weight: 600;
    font-style: normal;
}


:root {
  font-size: 16px;
--bg-white: #fefdf8;

  --background-color: #edebe3;
 --primary-color-50: #f2f8f7;
--primary-color-100: #ddeeed;
--primary-color-200: #c3dfdf;
--primary-color-300: #97c6c8;
--primary-color-400: #68a0a6;
--primary-color-500: #457d87;
--primary-color-600: #406a77;
--primary-color-700: #3b5863;
--primary-color-800: #3a4950;
--primary-color-900: #353f45;
--primary-color-950: #1e272e;
  --primary-color-1000: #151718;
  --primary-color-opacity: #1517184a;
  --primary-color-opacity-2: #15171885;
--primary-color-opacity-mid: #2e454b9e;
  --primary-color-opacity-light: #d1e0e49e;

--secondary-color-50: #fcf3f3;
--secondary-color-100: #fae5e5;
--secondary-color-200: #f6d1d0;
--secondary-color-300: #efb4b3;
--secondary-color-400: #e48886;
--secondary-color-500: #d3615f;
--secondary-color-600: #be4846;
--secondary-color-700: #a03837;
--secondary-color-800: #823230;
--secondary-color-900: #6f302f;
--secondary-color-950: #391414;
  --secondary-color-1000: #1a1511;
  --extra-small: 0.85rem;
  --small: 1rem;
  --medium: 1.25rem;
  --medium-large: 1.5rem;
  --large: 2.5rem;
  --xlarge: 3rem;
  --huge: 5rem;
}

body {
  margin: 0;
}

#main {
  padding-top: 100px;
}

* {
  font-family: 'Publico Text';
}

header h3 {
  margin-bottom: 2rem;
}
h1,
h2,
h3,
h4 {
  font-family: 'Publico Headline';
}

h1,
h2,
h3,
h4,
h5 {
  line-height: 110%;
}

h5,
h5 *,
.large,
.large *,
.small,
.small * {
  font-family: Work Sans;
}

h1,
h1 * {
  font-size: var(--huge);
  line-height: 100%;
}

h2,
h2 * {
  font-size: var(--xlarge);
  text-transform: none;
  line-height: 100%;
  font-weight: bold;
}

h3,
h3 * {
  font-size: var(--large);
  font-weight: normal;
  font-family: 'Publico Headline';
  /* color: var(--secondary-color-600) !important; */
}

h4,
h4 * {
  font-size: var(--medium-large);
  font-style: normal;
}

h5,
h5 * {
  font-weight: 400;
  font-size: var(--medium);
}

.large strong,
.large strong * {
  font-weight: bold !important;
}

p strong, p strong * {
  font-weight: 400 !important;
}

.extra.large,
.extra.large * {
  font-weight: normal;
  font-size: 2rem;
  line-height: 120% !important;
  font-family: 'Publico Headline';
  font-weight: 700;
  
  
  
  
  
  
  
  p {
    margin-bottom: 0.5em;
};
  margin-bottom: 0;
}

.extra.small,
.extra.small * {
  font-weight: 800;
  font-size: var(--medium-large);
  line-height: 120% !important;
}

.large,
.large *,
.small,
.small *,
p,
p * {
  line-height: 140%;
}
p.small.extra {
  margin-bottom: 1rem;
}

.large,
.large * {
  font-size: var(--medium);
    font-family: 'Publico Text';
}
p,
p * {
  font-size: var(--small);
  font-family: 'Work Sans';
  font-weight: 300;
}
.small,
.small * {
  font-size: var(--extra-small);
}

em,
em * {
  font-style: italic !important;
}

/*COLOURS*/
.bg-white {background-color: var(--bg-white) !important}
.bg-yellow-50 {background-color: #fff2d4 !important}
.bg-primary-50 {
  background-color: var(--primary-color-50) !important;
}

.bg-primary-100 {
  background-color: var(--primary-color-100) !important;
}

.bg-primary-200 {
  background-color: var(--primary-color-200) !important;
}

.bg-primary-300 {
  background-color: var(--primary-color-300) !important;
}

.bg-primary-400 {
  background-color: var(--primary-color-400) !important;
}

.bg-primary-500 {
  background-color: var(--primary-color-500) !important;
}

.bg-primary-600 {
  background-color: var(--primary-color-600) !important;
}

.bg-primary-700 {
  background-color: var(--primary-color-700) !important;
}

.bg-primary-800 {
  background-color: var(--primary-color-800) !important;
}

.bg-primary-900 {
  background-color: var(--primary-color-900) !important;
}
.bg-primary-950 {
  background-color: var(--primary-color-950) !important;
}


.bg-primary-opacity-mid {  background-color:var(--primary-color-opacity-mid) !important;}

.bg-secondary-50 {
  background-color: var(--secondary-color-50) !important;
}

.bg-secondary-100 {
  background-color: var(--secondary-color-100) !important;
}

.bg-secondary-200 {
  background-color: var(--secondary-color-200) !important;
}

.bg-secondary-300 {
  background-color: var(--secondary-color-300) !important;
}

.bg-secondary-400 {
  background-color: var(--secondary-color-400) !important;
}

.bg-secondary-500 {
  background-color: var(--secondary-color-500) !important;
}

.bg-secondary-600 {
  background-color: var(--secondary-color-600) !important;
}

.bg-secondary-700 {
  background-color: var(--secondary-color-700) !important;
}

.bg-secondary-800 {
  background-color: var(--secondary-color-800) !important;
}

.bg-secondary-900 {
  background-color: var(--secondary-color-900) !important;
}

.bg-secondary-950 {
  background-color: var(--secondary-color-950) !important;
}

.bg-secondary-1000 {
  background-color: var(--secondary-color-1000) !important;
}

/*TEXTFARBEN*/

.opacity-75 {
  opacity: 0.75;
}

.super-small, .super-small *
{
font-size: 0.65rem;
}

.text-primary-50,
.text-primary-50 * {
  color: var(--primary-color-50) !important;
}

.text-primary-100,
.text-primary-100 * {
  color: var(--primary-color-100) !important;
}

.text-primary-200,
.text-primary-200 * {
  color: var(--primary-color-200) !important;
}

.text-primary-300,
.text-primary-300 * {
  color: var(--primary-color-300) !important;
}

.text-primary-400,
.text-primary-400 * {
  color: var(--primary-color-400) !important;
}

.text-primary-500,
.text-primary-500 * {
  color: var(--primary-color-500) !important;
}

.text-primary-600,
.text-primary-600 * {
  color: var(--primary-color-600) !important;
}

.text-primary-700,
.text-primary-700 * {
  color: var(--primary-color-700) !important;
}

.text-primary-800,
.text-primary-800 * {
  color: var(--primary-color-800) !important;
}

.text-primary-900,
.text-primary-900 * {
  color: var(--primary-color-900) !important;
}

.text-primary-950,
.text-primary-950 * {
  color: var(--primary-color-950) !important;
}

.text-secondary-50,
.text-secondary-50 * {
  color: var(--secondary-color-50) !important;
}

.text-secondary-100,
.text-secondary-100 * {
  color: var(--secondary-color-100) !important;
}

.text-secondary-200,
.text-secondary-200 * {
  color: var(--secondary-color-200) !important;
}

.text-secondary-300,
.text-secondary-300 * {
  color: var(--secondary-color-300) !important;
}

.text-secondary-400,
.text-secondary-400 * {
  color: var(--secondary-color-400) !important;
}

.text-secondary-500,
.text-secondary-500 * {
  color: var(--secondary-color-500) !important;
}

.text-secondary-600,
.text-secondary-600 * {
  color: var(--secondary-color-600) !important;
}

.text-secondary-700,
.text-secondary-700 * {
  color: var(--secondary-color-700) !important;
}

.text-secondary-800,
.text-secondary-800 * {
  color: var(--secondary-color-800) !important;
}

.text-secondary-900,
.text-secondary-900 * {
  color: var(--secondary-color-900) !important;
}

.text-secondary-950,
.text-secondary-950 * {
  color: var(--secondary-color-950) !important;
}

.text-secondary-1000,
.text-secondary-1000 * {
  color: var(--secondary-color-1000) !important;
}


/*FACTS*/

.fact {
    border-top: 1px solid var(--primary-color-opacity-mid); 
        border-left: 1px solid var(--primary-color-opacity-mid); 
  padding: 1rem 0 0 1rem;
  
h5 {color: var(--primary-color-opacity-mid); 
    font-weight: bold; 
    font-size:var(--small)
}
      p, p * {    font-size:var(--extra-small); font-family: "Publico Text" !important; color: var(--primary-color-opacity-mid);}

}



/*BG*/
body::after {
  content: "";
  height: 100%;
  width: 100%;
  opacity: 0.9;
  background-image: url("../website-rembrandt/media/effect-rembrandt.jpeg");
  background-repeat: no-repeat;
  background-size: cover;
  position: fixed;
  mix-blend-mode: multiply;
}

body {
  background-color: var(--background-color);
}

body,
body * {
  color: var(--primary-color-1000);
}

body .body-white,
body .body-white * {
  color: var(--bg-white) !important;
}
.body-white .fussnote .sup  {
  border: 1px solid var(--bg-white) !important;
  background: var(--bg-white);
  color: var(--primary-color-950) !important;!i;!;);
}
body .body-white,
.zoomable-image-container body .body-white,
.zoomable-image-container * {
  color: var(--bg-white) !important;
}


.frame-ruler-before {border-top: var(--primary-color-opacity-light) solid 0.5px;
}

.frame-ruler-after {border-bottom: var(--primary-color-opacity-light) solid 0.5px;  
}
;height: 1;}


 .ruler.frame-ruler-before {
    border-top: none;
}
  .ruler.frame-ruler-after {
    border-bottom: none;  
}
.frame-ruler-before {
  border-top: var(--primary-color-opacity) solid 0.5px;
}

.frame-ruler-after {
border-bottom: var(--primary-color-opacity) solid 0.5px;
}
.body-white {

  .frame-ruler-before {
  border-top: var(--primary-color-opacity-light) solid 0.5px;
}

.frame-ruler-after {
border-bottom: var(--primary-color-opacity-light) solid 0.5px;
}
}

.body-white .btn-primary:hover {
  border: 1px solid var(--secondary-color-1000);
  background: transparent;
  color: var(--secondary-color-1000) !important;
}

.body-white .btn-secondary {
  border: 1px solid var(--secondary-color-1000);
  background: transparent;
  color: var(--secondary-color-1000) !important;
}
.btn:active, .btn:focus-visible {
  border: 1px solid var(--secondary-color-200) !important;
  background: var(--secondary-color-200) !important;
  color: var(--secondary-color-1000) !important;
}

/*LINKS*/
a,
a:active,
a:visited,
a:focus {
  color: inherit;
  text-decoration: none;
}


/*CONTAINER MODS*/
@media (min-width: 1400px) 
{ .large-container  {
  max-width: 2440px !important;
}

 
}


/*BUTTONS*/

.btn {
  font-family: Work Sans;
  border-radius: var(--large);
  display: inline-flex;
  text-decoration: none;
  font-size: var(--medium);
  font-weight: 400;
  align-items: center;
  letter-spacing: 0.025em;
  /* text-transform: uppercase; */
  padding: 0.25em 1em;
  gap: 0.5em;
  justify-content: space-around;
  border: 1px solid transparent;
  width: fit-content;
}
.buttons {
  display: flex;
  flex-direction: row;
  gap: 2em;
}

.btn-primary {
  background-color: var(--secondary-color-500);
  color: var(--secondary-color-50) !important;
}
.btn-primary:hover {
  border: 1px solid var(--secondary-color-950);
  background: transparent;
  color: var(--secondary-color-950) !important;
}

.btn-secondary {
  border: 1px solid var(--primary-color-950);
  background: transparent;
  color: var(--primary-color-950) !important;
}

.btn-secondary:hover {
  border: 1px solid var(--secondary-color-500);
  background-color: var(--secondary-color-500);
  color: var(--secondary-color-50) !important;
}


/*HERO*/

.hero {padding: 0 2rem}
.hero-kopf .image.figure {
    z-index: 100;
    position: relative;

}

  

.item-container .item {
  position: relative;
  transition: filter 0.3s ease-in-out;
  padding: var(--medium) var(--small);
  height: 250px;
  display: flex;
  justify-content: center;
  align-items: center;
  text-align: center;
  cursor: pointer;
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
  
   /* 🔥 Ganze Box ist klickbar */
  .small {opacity: 0.5;}
}

.item-container .item:hover {
  filter: brightness(90%); /* 🔥 Hintergrund leicht abdunkeln */
}

/* Standard-Link bleibt sichtbar */
.item-container .item a {
  position: relative;
  text-decoration: none;
  display: inline-block;
  z-index: 2; /* 🔥 Stellt sicher, dass der Text über allem liegt */
}

/* 🔥 Animierte Linie */
.item-container .item a::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -2px;
  width: 100%;
  height: 1px;
  opacity: 0.5;
  background-color: currentColor;
  transform: scaleX(0); /* 🔥 Unsichtbar am Anfang */
  transform-origin: left;
  transition: transform 0.3s ease-in-out;
}

/* 🔥 Linie wird animiert, wenn man über `.item` fährt */
.item-container .item:hover a::after {
  transform: scaleX(1);
}

/* 🔥 Unsichtbare klickbare Fläche */
.item-container .item::before {
  content: "";
  position: absolute;
  inset: 0; /* Deckt die gesamte Box ab */
  z-index: 1; /* Liegt unter dem Text, aber über dem Hintergrund */
  background: transparent; /* Unsichtbar */
  pointer-events: auto; /* Klicks durchlassen */
}

/* Klick auf `.item` öffnet den Link */
.item-container .item:has(a)::before {
  cursor: pointer;
}

.item-container .item:has(a):hover {
  filter: brightness(90%);
}


/*HEADER Startseite*/

.home-page header .btn.btn-secondary {
  border: var(--background-color)  1px solid;
  color: var(--background-color) !important;
}

.home-page .header-container {
  border-bottom: var(--background-color) 1.5px solid; 
}

.home-page .logo svg path {
  fill: var(--background-color);
}
.home-page .logo svg line {
  stroke: var(--background-color);
}


.home-page #header .language-navigation li a {
  display: flex;
  width: 100%;
  padding: 0.25em;
  text-align: center;
  color: var(--background-color);
  font-weight: normal;
  font-size: 1.25em;
  background-color: transparent !important;
  text-decoration: none;
  font-family: Work Sans;
}


.home-page .toggle-nav .icon {
  stroke: var(--background-color);
}

/*HEADER*/

.left, .right  {    width: 25%;}

#header .btn.btn-secondary {
  font-size: 1rem;

}

svg#khm-logo {
  width: 150px;
  height: auto;
}

.header-container {
  display: flex;
  height: 100%;
  justify-content: space-between;
  /* padding: 0 2rem; */
  align-items: center;
  position: relative;
  border-bottom: var(--primary-color-opacity) 1px solid;
}

.logo svg path {
  fill: var(--primary-color-950);
}
.logo svg line {
  stroke: var(--primary-color-950);
}

#header .language-navigation {
  position: relative !important;
  left: 0;
}

.right {
  display: flex;
  flex-direction: row;
  gap: 1em;
  align-items: center;
  width: 25%;
  justify-content: flex-end;
}

#header .language-navigation .triangle {
  display: none;
}

#header .language-navigation li a {
  display: flex;
  width: 100%;
  padding: 0.25em;
  text-align: center;
  color: var(--primary-color-950);
  font-weight: normal;
  font-size: 1.25em;
  background-color: transparent !important;
  text-decoration: none;
  font-family: Work Sans;
}


#header .language-navigation li.active a {
    background-color: white;
    font-weight: 700;
    text-decoration: underline;
}

.toggle-nav .icon {
  stroke: var(--primary-color-950);
}
.toggle-nav {
  padding: 0.5em;
}

/*HEADER ANIM*/
#header {
  position: fixed;
  top: 0;
  width: 100%;
  background-color: transparent;
  z-index: 1000;
  transition: transform 0.3s ease; /* Transition für die Animation */
  padding: 0 2rem;
}

.header-hidden {
  transform: translateY(-100%); /* Header wird nach oben geschoben */
}

#main {
  padding-top: 100px; /* Abstand zum Header */
}

/*Hotspots*/

.hotspot h2, .hotspot h2 * {
                            font-size: var(--small);
                            color: var(--primary-color-1000) !important;
                            font-family: 'Work Sans';
                            margin-bottom: 0.25rem;
                            font-weight: 500;
                            }

.hotspot p, .hotspot p * {opacity:0.75;
                 }



.hotspot-controls .btn.close {
  background-color: var(--bg-white);
  border-radius: 50px;
  /* border: 2px solid var(--primary-color-950); */
  display: none;
}
.hotspot-controls .btn svg {width: 17px;height: 17px;}
.hotspot-controls .icon use {
  fill: var(--primary-color-950);
  stroke: none;
}
.body-white .icon use {
  fill: var(--bg-white) !important;
}
.hotspot-controls .btn.close use {
  stroke: var(--primary-color-950);
  }

.hotspot-controls .btn.prev::after {
  content: "";
  border-right: 1.5px solid var(--secondary-color-950);
  height: var(--medium);
  position: absolute;
  /* translate: 100%; */
  left: 33.3%;
  display: none;
}

.switch-hotspot {
  background: var(--secondary-color-50);
  border-radius: 50px;
display: none;

}

.hotspot-controls.show {position: absolute;top: 1rem;right: 1rem;display: flex;gap: 1rem;float: right;}

.hotspot-controls.show .switch-hotspot {
  background: var(--bg-white);
  border-radius: 50px;
  display: flex;
  flex-direction: row;
  width: fit-content;
}

.hotspot-controls.show .btn.close {
  display: flex;
  padding: 0.5rem;
}


.hotspot-controls .btn {
  padding: 0.5rem 1rem;
  border: 0;
}

.openseadragon-canvas {
  touch-action: manipulation !important;
}
.zoomable-image {
  height: 90vh;
  margin: 0 auto;
}
.hotspot.active p,
.hotspot.active p * {
  color: var(--primary-color-1000) !important;
  font-size: 0.75rem;
}

.hotspot.active p a  {font-size: 14px; 
                      line-height: 10px;
                     text-decoration: underline;
                     color: var(--primary-color-600) !important}
.hotspot.active p a:hover  {font-size: 14px; 
                      line-height: 10px;
                     text-decoration: underline;
                     color: var(--primary-color-800) !important}

.switch-hotspot svg.icon {
  width: 1.5rem;
}

.zoomable-image-container .hotspot {
  display: none;
  max-width: 100%;
  width: 100%;
  /* margin: 1rem; */
  background: #fdfcf9f2;
  color: var(--secondary-color-1000);
  padding: var(--small);
  position: absolute; /* Absolute Positionierung innerhalb des Containers */
  bottom: 0; /* Positioniert die Hotspot-Controls auf 25% der Höhe des Containers */
  border-radius: 0;
  /* left: 1rem; */
}

.zoomable-image-container .controls {
  display: none;
}

.zoomable-image-container .highlight:hover span {
  display: none;
}

.zoomable-image-container .highlight {
  padding: 0.5rem;
  width: 2rem;
  height: 2rem;
  text-align: center;
  border-radius: 50%;
  border: 1px solid transparent;
  background: white;
  cursor: pointer;
  color: var(--primary-color-900)!important;
  font-size: 1.5rem;


  &::before,
  &::after {
    content: "";
    position: absolute;
    top: -50%;
    bottom: -50%;
    left: -50%;
    right: -50%;
    margin: auto;
    height: 100%;
    width: 100%;
    border: 2px solid white;);
    border-radius: inherit;
    animation: pulse 2s ease infinite;
  }
  &::after {
    animation-delay: 0.35s;
  }
  align-items: center;
  display: flex !important;
  justify-content: center;
  font-family: "Work Sans";
  font-weight: 300;
}

@keyframes pulse {
  0% {
    transform: scale(1);
    opacity: 1;
  }
  100% {
    transform: scale(1.5);
    opacity: 0;
  }
}

.zoomable-image-container .highlight.active {
  display: none !important;
}
.zoomable-image-container .highlight:hover {
    background: var(--bg-white);
opacity: 0.8;
}

/*GALLERY*/
.gallery-container {
  margin: 0 -15px;
  padding-top: 3rem;
  padding-bottom: 3rem;
  background-color: transparent;
  overflow: hidden;
}

.gallery-container h2 {
  font-size: var(--medium);
  font-weight: 500;
  margin: 0;
  font-family: Work Sans;
}
.gallery-container p {
  font-size: var(--extra-small);
  font-weight: 400;
  margin-top: 10px;
  font-family: Work Sans;
}

.gallery-container .caption {
  margin: 1rem 0;
  /*width: 400px;*/
  opacity: 0.5;
}

.gallery-container .item.active .caption {
  opacity: 1;
}
.gallery-sly .item {height: fit-content !important;}
.icon use {
  fill: var(--primary-color-1000);
}

.gallery-container .col-6 {
  width: min-content;
}

.gallery-container .row {
  display: flex;
  justify-content: space-between;
  padding: 1rem 2rem;
}

.slidee {
  height: max-content;
}

/*CAPTIONS*/
.cursive p, .cursive p *,
.figure-caption,
.figure-caption * {
  color: var(--primary-color-900);
}

.cursive p, .cursive p *, .figure-caption p, .figure-caption p * {font-family: Publico Text;font-size: var(--extra-small) !important}

.cursive p, .cursive p *, .figure-caption {
  margin-top: 0;
  font-size: var(--extra-small);
  line-height: 1.2rem;
  opacity: 0.75;
  font-style: italic;
  padding: 0.5rem 0 0.5rem;
}

.figure-caption sup {
  padding: 0 0 0 5px;
  vertical-align: baseline;
  font-size: inherit;
  line-height: inherit;
  position: static;
  font-family: 'Work Sans';
  font-style: normal;
}

.fussnote .ce-bodytext {
  /* border-top: 1px solid var(--primary-color-950); */
  display: flex;
  flex-direction: row;
  gap: 1em;
  align-items: center;
}

.fussnote-accent .sup {
  font-size: var(--extra-small);
  margin: 0;
  border-radius: 55%;
  padding: 1em;
  height: 2rem;
  width: 2rem;
  display: flex;
  justify-content: center;
  align-items: center;
  font-family: 'Work Sans';
  font-weight: bold;
}


.fussnote .sup {
  font-size: var(--extra-small);
  background: var(--primary-color-950);
  margin: 0;
  border-radius: 55%;
  padding: 1em;
  height: 1.5rem;
  width: 1.5rem;
  display: flex;
  justify-content: center;
  color: var(--background-color);
  align-items: center;
  font-family: 'Work Sans';
  font-weight: bold;
}

.fussnote p,
.fussnote p * {
  color: #65797f;
  font-size: var(--extra-small);
  font-family: 'Publico Text';
  font-weight: 300;
}

.versetzt {
  position: relative;
  top: 3rem;
}

.versetzt-links {
  position: relative;
  bottom: 15rem;
  left: -2rem;
}



/*NAV*/

#nav .close-nav {
    top: 2rem;
    right: 2rem;}

nav#nav {
  background: var(--secondary-color-700);
  z-index: 10000;
}


nav .title   {color: var(--bg-white) !important; }
nav .icon use {
    fill: var(--bg-white) !important;
}


.menu-item-right {
  display: flex;
  justify-content: space-between;
  /* font-family: Work Sans; */
  border-top: #d1e0e447 0.5px solid;
  padding: 0.5rem 0;
}



.menu-item {
  padding: 0.5rem 1rem;


}

.menu-item  .icon {display:none;}

.title-container {
  display: flex;
  justify-content: flex-start;
}

.menu-item span.title {
  font-family: 'Publico Headline';
  font-size: var(--medium);
  text-align: left !important;
}

/*THEMEN NAV*/
.themen-kachel:hover .themen-item {
  transform: scale(1.05); /* Leicht das gesamte Element vergrößern */
  background-size: auto 105%; /* Hintergrundbild vergrößern */
  background-position: left center; /* Hintergrundbild nach links verschieben */
}

.themen-kachel:hover h4.text-center {
  font-size: 1.6rem;
   transition: all 0.6s ease
}

.themen-item {
  height: 450px !important;
  background-size:  auto 100%;
  background-position: center;
  border-radius: 150px;
  transition: transform 0.4s ease, background-size 0.4s ease-in,
    background-position 20s ease;
  /* Sanfte Übergänge für die Animation */
}

.themen-item-big {
height: 300px !important;
}

 .pagination .themen-item {
    height: 200px !important;
    width: 200px;
    background-size: auto 100%;
    background-position: center center;
    border-radius: 100px;
    margin: 0 auto;
}

 .pagination .themen-kachel:hover .themen-item {
  transform: scale(1.05); /* Leicht das gesamte Element vergrößern */
    background-size: auto 110%; /* Hintergrundbild vergrößern */
  background-position: left center; /* Hintergrundbild nach links verschieben */
}

 .pagination .active  {
   opacity:0.75;
   pointer-events:none;
filter: grayscale(1);
}
 .pagination h4.text-center {
  font-size: 1.25rem;
  transition: all 0.6s ease;
  height: 3.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
}


 .pagination .themen-kachel:hover h4.text-center {
  font-size: 1.28rem;
   transition: all 0.6s ease
}


/*ETC*/
.imagesequence-container .captions .caption * {color: var(--bg-primary-1000) !important}
.abstand .ce-gallery img {margin-bottom: 1.5rem;}
.zutaten > .col-12 > .row:last-of-type {
    gap: 1rem;
}

/*FOOTER*/
#footer {
  z-index: 200;
  position: relative;
  width: 100%;
  overflow: auto;
  background-color: white;
  border-top: none;
}
#footer a,
#footer a:active,
#footer a:visited,
#footer a:focus {
  text-decoration: underline;
}

@media (max-width: 1400px) {
  :root {
    --large: calc(2.5rem * 0.85);
    --xlarge: calc(4rem * 0.85);
    --huge: calc(5rem * 0.85);
  }


  
}

@media (min-width: 1200px) {.hero {padding: 0 4rem}
                           }
@media (max-width: 1200px) {
  :root {
    --large: calc(2.5rem * 0.75);
    --xlarge: calc(4rem * 0.75);
    --huge: calc(5rem * 0.75);
  }


  
}


@media (max-width: 900px) {





.themen-item {
    height: 300px !important;
    background-size: cover;
    background-position: center;
    border-radius: 100px;
}

  .themen-kachel:hover .themen-item {
  transform: scale(1.05); /* Leicht das gesamte Element vergrößern */
  background-size: 105% auto ; /* Hintergrundbild vergrößern */
  background-position: left center; /* Hintergrundbild nach links verschieben */
}

  .themen-kachel:hover h4.text-center {
  font-size: 1.5rem;
   transition: all 0.6s ease
}
  
  
}

@media (max-width: 780px) {


.padding-mobile {padding: 0 1rem ;}

.mobile-left * {text-align: left !important;}
.mobile-center {text-align: center !important;}
.mobile-right {text-align: right !important;}

 :root {
    --large: calc(2.5rem * 0.75);
  }

.item-container .item {
              
height: auto;
              
}

  
  #header {height: 80px !important;}
.header-container {padding: 1rem; }
  .left, .right  {    width: 50%;}
.hero-kopf {padding: 1rem 2rem;}

  :root {
    --huge: calc(5rem * 0.5);
  }
  

.zoomable-image-container .hotspot {
    display: none;
    max-width: 100%;
    width: 600px;
    /* margin: 1rem; */
    background: #fefdf8;
    color: var(--secondary-color-1000);
    padding: var(--extra-small);
    position: absolute;
    bottom: auto;
    border-radius: 0;
    z-index: 10000;
    left: 0;
    /* font-size: var(--extra-small); */
}
.hotspot-controls.show {
  bottom: 1rem;
  position: absolute;
  display: flex;
  /* bottom: 25vh; */
  border-radius: 5px;
  right: 1rem;
  border-radius: 5px;
  padding: 0;
  flex-direction: row;
  gap: 10px;
  height: fit-content;
  align-items: center;
  z-index: 1000;
  /* bottom: auto; */
  z-index: 100000;
}

.hotspot-controls.show .switch-hotspot {
    display: flex;
    flex-direction: row;
    background: var(--bg-white);
    /* border: 2px solid var(--primary-color-950); */
}
  
 .hero h2, .hero h2 * {font-size: calc(4rem * 0.39);}
  .hero h2.text-center {
    display: flex;
    gap: 1rem;
    flex-direction: column;
    
  }



  .hero .gridelement-container .images .image {
    background-size: 100%;
    background-position-y: 25vh;
  }

  .hero .btn {
    width: 100%;
font-size: 1rem;
  }
  header#header {
    padding: 0 0.5rem;
  }

  svg#khm-logo {
    width: 100px;
    height: auto;
  }
}

/*@media (max-width: 900px) {

  :root {
    --medium-large: calc(1.5rem * 0.75);
    --large: calc(2.5rem * 0.5);
    --xlarge: calc(4rem * 0.5);
    --huge: calc(6rem * 0.5);
  }
}*/

/* Ticket Button */
header .btn {opacity: 0;}