@charset "UTF-8";
/*
Theme Name: Ippendorf
Text Domain: ippendorf
Version: 1.1
Requires at least: 5.4
Requires PHP: 5.2.4
Description: This theme is based on the design by david ippendorf for his portfolio and corporate website
Tags: blog, custom-logo, custom-menu, editor-style, featured-images, footer-widgets, full-width-template, theme-options, block-styles, wide-blocks, accessibility-ready
Author: mjl design
Author URI: https://mjlux.de/
Theme URI: https://wordpress-themes.mjlux.de/
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html

All files, unless otherwise stated, are released under the GNU General Public
License version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html)

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned with others.
*/
/* ----- VARIABLES ----- */
:root {
  --spacing: 0.5em;
  --letter-spacing: 0.15em;
  --theme-color-primary: #a58c00;
  --theme-color-copy-black: #111111;
  --theme-color-copy-light: #fdfdfd;
  --theme-color-bg-black: #000000;
  --theme-color-bg-gray: #2d363b;
  --theme-color-bg-dark-gray: #1c2427;
  --theme-color-adi-red: #e30433;
  --theme-color-adi-yellowgreen: #a0c41a;
  --theme-color-adi-green: #049882;
  --theme-color-adi-blue: #009fe3;
  --wp-align-max-width-override: 768px; }

* {
  box-sizing: border-box; }

html, body {
  margin: 0;
  padding: 0; }

figure {
  margin-top: 0;
  margin-bottom: 0; }

html, body {
  font-family: 'Montserrat', sans-serif;
  font-size: 12px; }

@media screen and (min-width: 480px) {
  html, body {
    font-size: calc( 12px + (18 - 12) * (100vw - 480px) / (1200 - 480)); } }

@media screen and (min-width: 1200px) {
  html, body {
    font-size: 18px; } }

h1 {
  font-size: 4.00rem;
  font-weight: 600; }

h2 {
  font-size: 2.20rem;
  font-weight: 600; }

h3 {
  font-size: 1.70rem;
  font-weight: 600; }

h4 {
  font-size: 1.45rem;
  font-weight: 600; }

h5 {
  font-size: 1.20rem;
  font-weight: 600; }

h6 {
  font-size: 1.00rem;
  font-weight: 600; }

p {
  font-size: 1.00rem;
  font-weight: 400; }

html, body {
  background-color: var(--theme-color-bg-black); }

h1, h2, h3, h4, h5, h6, p, li, figcaption, cite, td, th, a,
.notice {
  color: var(--theme-color-copy-light); }

p {
  line-height: 1.45; }

p:empty {
  margin: 0;
  padding: 0;
  height: 0; }

a {
  color: var(--theme-color-copy-light);
  position: relative;
  text-decoration: none; }

/* ----- WP GENERATED CLASSES ----- */
/* The following classes are generated by Gutenberg and have to have these exact names */
/*
  Theme fontsize classes will be generated by PHP - see: $theme_font_sizes in functions.php
  .has-[fontsizename]-font-size{}
*/
/* applies to colorable blocks */
/* h1 h2 h3 h4 h5 h6 p td blockquote hr div */
/*
  Theme color classes will be generated by PHP - see: ippendorf_get_theme_colors_inline_css() in functions.php
  .has-[colorname]-color{}
  .has-[colorname]-background-color{}
*/
/* applies to text-alignable elements */
/* h1 h2 h3 h4 h5 h6 p td blockquote */
/* applies to paragraph blocks */
/* applies to buttons blocks*/
.wp-block-button.is-style-outline .wp-block-button__link {
  border: none; }

/* applies to image blocks */
/* applies to pullquote blocks */
/* applies to alignable blocks <div> */
.alignwide {
  max-width: 75vw;
  width: 100%;
  margin-left: auto;
  margin-right: auto; }

.alignfull {
  max-width: 100vw;
  width: 100%;
  margin-left: 0;
  margin-right: 0; }

/* override wordpress align defaults */
.wp-block-buttons.alignright .wp-block-button {
  /* margin-left: 8px; */
  margin-left: var(--spacing); }

.wp-block-cover-image.alignleft,
.wp-block-cover-image.alignright,
.wp-block-cover.alignleft,
.wp-block-cover.alignright,
.wp-block-gallery.alignleft,
.wp-block-gallery.alignright,
.blocks-gallery-grid.alignleft,
.blocks-gallery-grid.alignright,
.wp-block-pullquote.alignright,
.wp-block-pullquote.alignleft {
  /* max-width: 290px; */
  max-width: var(--wp-align-max-width-override); }

.block-editor-block-list__block[data-type="core/embed"][data-align=left],
.block-editor-block-list__block[data-type="core/embed"][data-align=right],
.wp-block-embed.alignleft,
.wp-block-embed.alignright {
  /* max-width: 360px; */
  max-width: var(--wp-align-max-width-override); }

.wp-block-latest-posts__featured-image.alignleft,
.wp-block-image .alignleft {
  /* margin-right: 1em; */
  margin-right: var(--spacing); }

.wp-block-latest-posts__featured-image.alignright,
.wp-block-image .alignright {
  /* margin-left: 1em; */
  margin-left: var(--spacing); }

.wp-block-rss.alignleft,
.wp-block-latest-posts.alignleft {
  /* margin-right: 2em */
  margin-right: var(--spacing); }

.wp-block-rss.alignright,
.wp-block-latest-posts.alignright {
  /* margin-left: 2em; */
  margin-left: var(--spacing); }

.wp-block-latest-posts__featured-image.aligncenter {
  /* margin-bottom: 1em; */
  margin-bottom: var(--spacing); }

.wp-block-pullquote.alignleft p,
.wp-block-pullquote.alignright p {
  /* font-size: 20px; */
  font-size: var(--spacing); }

/* ----- POST EDIT LINK ----- */
a.post-edit-link {
  background: pink;
  color: black;
  display: block;
  font-weight: 600;
  margin: var(--spacing) auto;
  padding: var(--spacing);
  text-align: center;
  width: 10vw; }

header#site-header {
  position: fixed;
  width: 100%;
  top: var(--spacing);
  z-index: 1000; }
  header#site-header .header-inner {
    align-items: center;
    display: flex;
    justify-content: space-between;
    padding: 0 calc(var(--spacing) * 2); }
  header#site-header .custom-logo-container a.custom-logo-link img {
    max-height: 2rem;
    max-width: 4rem;
    position: relative;
    z-index: 200;
    object-fit: scale-down; }
  header#site-header .navigation-header-container {
    align-items: center;
    display: flex;
    justify-content: space-between; }
  header#site-header .navigation-header-container .menu-kontakt-container {
    display: none; }
  header#site-header .navigation-header-container .menu-hauptmenue-container .menu-kontakt-container {
    display: block;
    width: 100%;
    padding: 0 3rem; }
  @media screen and (min-width: 720px) {
    header#site-header .navigation-header-container .menu-kontakt-container {
      display: block; }
    header#site-header .navigation-header-container .menu-hauptmenue-container .menu-kontakt-container {
      display: none; } }
  header#site-header .navigation-header-container .menu-kontakt-container ul.menu,
  header#site-header .navigation-header-container .menu-hauptmenue-container .menu-kontakt-container ul.menu {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    list-style: none; }
  header#site-header .navigation-header-container .menu-hauptmenue-container .menu-kontakt-container ul.menu {
    justify-content: flex-start;
    flex-direction: row;
    flex-wrap: wrap;
    padding-left: 0; }
  header#site-header .navigation-header-container .menu-kontakt-container ul.menu li.menu-item a,
  header#site-header .navigation-header-container .menu-hauptmenue-container .menu-kontakt-container ul.menu li.menu-item a {
    background: none;
    color: var(--theme-color-copy-black);
    display: block;
    font-weight: 600;
    margin-left: var(--spacing);
    padding: var(--spacing) calc(var(--spacing) * 2);
    position: relative;
    text-decoration: none;
    text-transform: uppercase;
    display: flex;
    align-items: center;
    font-size: 1rem;
    z-index: 1;
    transition: 400ms; }
  header#site-header .navigation-header-container .menu-kontakt-container ul.menu li.menu-item a:hover,
  header#site-header .navigation-header-container .menu-hauptmenue-container .menu-kontakt-container ul.menu li.menu-item a:hover {
    letter-spacing: var(--letter-spacing); }
  header#site-header .navigation-header-container .menu-hauptmenue-container .menu-kontakt-container ul.menu li.menu-item a {
    margin-bottom: var(--spacing); }
  header#site-header .navigation-header-container .menu-kontakt-container ul.menu li.menu-item a:hover:after,
  header#site-header .navigation-header-container .menu-hauptmenue-container .menu-kontakt-container ul.menu li.menu-item a:hover:after {
    background-color: transparent; }
  header#site-header .navigation-header-container .menu-kontakt-container ul.menu li.menu-item a:before,
  header#site-header .navigation-header-container .menu-hauptmenue-container .menu-kontakt-container ul.menu li.menu-item a:before {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    transform: skewX(-21.5deg);
    background-color: var(--theme-color-copy-light);
    z-index: -1; }
  header#site-header .navigation-header-container .menu-kontakt-container ul.menu li.menu-item a .theme-icon,
  header#site-header .navigation-header-container .menu-hauptmenue-container .menu-kontakt-container ul.menu li.menu-item a .theme-icon,
  header#site-header .navigation-header-container .menu-kontakt-container ul.menu li.menu-item a .theme-icon svg,
  header#site-header .navigation-header-container .menu-hauptmenue-container .menu-kontakt-container ul.menu li.menu-item a .theme-icon svg {
    width: 1.2em;
    height: 1.2em; }
  header#site-header .navigation-header-container .menu-hauptmenue-container {
    align-items: center;
    background-color: rgba(0, 0, 0, 0);
    bottom: 0;
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    left: 0;
    position: fixed;
    right: 0;
    top: 0;
    z-index: 100;
    transform: translateX(150%);
    transition: transform 500ms, background-color 1s ease-in-out;
    overflow: hidden; }
  header#site-header .navigation-header-container .menu-hauptmenue-container.js-show {
    background-color: rgba(0, 0, 0, 0.98);
    transform: translateX(0); }
  header#site-header .navigation-header-container .menu-hauptmenue-container .menu-item {
    transition: 800ms cubic-bezier(1, -0.18, 0.32, 1.37); }
  header#site-header .navigation-header-container .menu-hauptmenue-container .menu-item:nth-child(1) {
    transform: translateX(38%);
    transition-delay: 20ms; }
  header#site-header .navigation-header-container .menu-hauptmenue-container .menu-item:nth-child(2) {
    transform: translateX(36%);
    transition-delay: 40ms; }
  header#site-header .navigation-header-container .menu-hauptmenue-container .menu-item:nth-child(3) {
    transform: translateX(34%);
    transition-delay: 60ms; }
  header#site-header .navigation-header-container .menu-hauptmenue-container .menu-item:nth-child(4) {
    transform: translateX(32%);
    transition-delay: 80ms; }
  header#site-header .navigation-header-container .menu-hauptmenue-container .menu-item:nth-child(5) {
    transform: translateX(30%);
    transition-delay: 100ms; }
  header#site-header .navigation-header-container .menu-hauptmenue-container .menu-item:nth-child(6) {
    transform: translateX(28%);
    transition-delay: 120ms; }
  header#site-header .navigation-header-container .menu-hauptmenue-container .menu-item:nth-child(7) {
    transform: translateX(26%);
    transition-delay: 140ms; }
  header#site-header .navigation-header-container .menu-hauptmenue-container .menu-item:nth-child(8) {
    transform: translateX(24%);
    transition-delay: 160ms; }
  header#site-header .navigation-header-container .menu-hauptmenue-container .menu-item:nth-child(9) {
    transform: translateX(22%);
    transition-delay: 180ms; }
  header#site-header .navigation-header-container .menu-hauptmenue-container .menu-item:nth-child(10) {
    transform: translateX(20%);
    transition-delay: 200ms; }
  header#site-header .navigation-header-container .menu-hauptmenue-container .menu-item:nth-child(11) {
    transform: translateX(18%);
    transition-delay: 220ms; }
  header#site-header .navigation-header-container .menu-hauptmenue-container .menu-item:nth-child(12) {
    transform: translateX(16%);
    transition-delay: 240ms; }
  header#site-header .navigation-header-container .menu-hauptmenue-container .menu-item:nth-child(13) {
    transform: translateX(14%);
    transition-delay: 260ms; }
  header#site-header .navigation-header-container .menu-hauptmenue-container .menu-item:nth-child(14) {
    transform: translateX(12%);
    transition-delay: 280ms; }
  header#site-header .navigation-header-container .menu-hauptmenue-container .menu-item:nth-child(15) {
    transform: translateX(10%);
    transition-delay: 300ms; }
  header#site-header .navigation-header-container .menu-hauptmenue-container .menu-item:nth-child(16) {
    transform: translateX(8%);
    transition-delay: 320ms; }
  header#site-header .navigation-header-container .menu-hauptmenue-container .menu-item:nth-child(17) {
    transform: translateX(6%);
    transition-delay: 340ms; }
  header#site-header .navigation-header-container .menu-hauptmenue-container .menu-item:nth-child(18) {
    transform: translateX(4%);
    transition-delay: 360ms; }
  header#site-header .navigation-header-container .menu-hauptmenue-container .menu-item:nth-child(19) {
    transform: translateX(2%);
    transition-delay: 380ms; }
  header#site-header .navigation-header-container .menu-hauptmenue-container .menu-item:nth-child(20) {
    transform: translateX(0%);
    transition-delay: 400ms; }
  @media screen and (min-width: 720px) {
    header#site-header .navigation-header-container .menu-hauptmenue-container .menu-item:nth-child(1) {
      transform: translateX(-14%);
      transition-delay: 20ms; }
    header#site-header .navigation-header-container .menu-hauptmenue-container .menu-item:nth-child(2) {
      transform: translateX(-28%);
      transition-delay: 40ms; }
    header#site-header .navigation-header-container .menu-hauptmenue-container .menu-item:nth-child(3) {
      transform: translateX(-42%);
      transition-delay: 60ms; }
    header#site-header .navigation-header-container .menu-hauptmenue-container .menu-item:nth-child(4) {
      transform: translateX(-56%);
      transition-delay: 80ms; }
    header#site-header .navigation-header-container .menu-hauptmenue-container .menu-item:nth-child(5) {
      transform: translateX(-70%);
      transition-delay: 100ms; }
    header#site-header .navigation-header-container .menu-hauptmenue-container .menu-item:nth-child(6) {
      transform: translateX(-84%);
      transition-delay: 120ms; }
    header#site-header .navigation-header-container .menu-hauptmenue-container .menu-item:nth-child(7) {
      transform: translateX(-98%);
      transition-delay: 140ms; }
    header#site-header .navigation-header-container .menu-hauptmenue-container .menu-item:nth-child(8) {
      transform: translateX(-112%);
      transition-delay: 160ms; }
    header#site-header .navigation-header-container .menu-hauptmenue-container .menu-item:nth-child(9) {
      transform: translateX(-126%);
      transition-delay: 180ms; }
    header#site-header .navigation-header-container .menu-hauptmenue-container .menu-item:nth-child(10) {
      transform: translateX(-140%);
      transition-delay: 200ms; }
    header#site-header .navigation-header-container .menu-hauptmenue-container .menu-item:nth-child(11) {
      transform: translateX(-154%);
      transition-delay: 220ms; }
    header#site-header .navigation-header-container .menu-hauptmenue-container .menu-item:nth-child(12) {
      transform: translateX(-168%);
      transition-delay: 240ms; }
    header#site-header .navigation-header-container .menu-hauptmenue-container .menu-item:nth-child(13) {
      transform: translateX(-182%);
      transition-delay: 260ms; }
    header#site-header .navigation-header-container .menu-hauptmenue-container .menu-item:nth-child(14) {
      transform: translateX(-196%);
      transition-delay: 280ms; }
    header#site-header .navigation-header-container .menu-hauptmenue-container .menu-item:nth-child(15) {
      transform: translateX(-210%);
      transition-delay: 300ms; }
    header#site-header .navigation-header-container .menu-hauptmenue-container .menu-item:nth-child(16) {
      transform: translateX(-224%);
      transition-delay: 320ms; }
    header#site-header .navigation-header-container .menu-hauptmenue-container .menu-item:nth-child(17) {
      transform: translateX(-238%);
      transition-delay: 340ms; }
    header#site-header .navigation-header-container .menu-hauptmenue-container .menu-item:nth-child(18) {
      transform: translateX(-252%);
      transition-delay: 360ms; }
    header#site-header .navigation-header-container .menu-hauptmenue-container .menu-item:nth-child(19) {
      transform: translateX(-266%);
      transition-delay: 380ms; }
    header#site-header .navigation-header-container .menu-hauptmenue-container .menu-item:nth-child(20) {
      transform: translateX(-280%);
      transition-delay: 400ms; } }
  header#site-header .navigation-header-container .menu-hauptmenue-container.js-show .menu-item {
    transform: translateX(0); }
  header#site-header .navigation-header-container a.menu-hauptmenue-toggle {
    cursor: pointer;
    padding: var(--spacing);
    padding-right: 0;
    margin-left: var(--spacing);
    position: relative;
    z-index: 200; }
  header#site-header .navigation-header-container a.menu-hauptmenue-toggle:hover:after {
    background-color: transparent; }
  header#site-header .navigation-header-container a.menu-hauptmenue-toggle i.theme-icon {
    width: 2.5em;
    height: 2.5em; }
  header#site-header .navigation-header-container a.menu-hauptmenue-toggle i.theme-icon svg {
    width: 2.5em;
    height: 2.5em;
    fill: var(--theme-color-copy-light); }
  header#site-header .navigation-header-container .menu-hauptmenue-container ul.menu {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    list-style: none;
    width: 100%;
    padding: 0 1rem; }
  @media screen and (min-width: 720px) {
    header#site-header .navigation-header-container .menu-hauptmenue-container ul.menu {
      width: 20vw;
      padding: 0; } }
  header#site-header .navigation-header-container .menu-hauptmenue-container ul.menu li.menu-item a {
    color: var(--theme-color-copy-light);
    display: flex;
    white-space: nowrap;
    align-items: center;
    font-size: 1.5rem;
    padding: var(--spacing) calc(var(--spacing) *2);
    text-transform: uppercase;
    text-decoration: none;
    transition: 400ms; }
  header#site-header .navigation-header-container .menu-hauptmenue-container ul.menu li.menu-item a:hover {
    letter-spacing: var(--letter-spacing);
    transform: translateX(calc(var(--letter-spacing) * var(--char-count) * -1)); }
  header#site-header .navigation-header-container .menu-hauptmenue-container ul.menu li.menu-item a:hover:after {
    background-color: transparent; }

/* ----- CONTENT ----- */
main#site-content {
  margin-bottom: 0; }

/* ----- CONTENT BLOCKS ----- */
/* the following tags are parented to "main#site-content article .post-inner .entry-content{}" */
/* it is not necessary to be as explicit in declaration - so we just prefix the ".entry-content" class */
.entry-content {
  /* audio */
  /* blockquote */
  /* buttons */
  /* code */
  /* columns */
  /* .wp-block-columns .wp-block-column [dynamic block content]{} */
  /* cover */
  /* .wp-block-cover .wp-block-cover__inner-container [custom block compoition]{} */
  /* embed */
  /* file */
  /* gallery */
  /* group */
  /* .wp-block-group .wp-block-group__inner-container [dynamic block content]{} */
  /* headlines */
  /* reserved for page and post title */
  /* image */
  /* lists */
  /* media and text */
  /* .wp-block-media-text .wp-block-media-text__content [dynamic block content]{} */
  /* paragraph */
  /* preformatted */
  /* pullquote */
  /* basically a blockquote with an icon before its contents */
  /* separator */
  /* spacer */
  /* table */
  /* vers */
  /* video */
  /* archives - list */
  /* contains month and year text */
  /* archives - dropdown */
  /* calendar */
  /* categories - list */
  /* categories - dropdown */
  /* latest comments */
  /* latest posts - list */
  /* contains post title */
  /* contains post publish date */
  /* contains post excerpt */
  /* rss feed */
  /* search */
  /* social links */
  /* tag cloud */ }
  .entry-content > *:not(.alignwide):not(.alignfull) {
    max-width: 50vw;
    width: 100%;
    margin-left: auto;
    margin-right: auto; }
  .entry-content figure.wp-block-audio figcaption {
    color: var(--theme-color-copy-light); }
  .entry-content blockquote.wp-block-quote {
    border-color: var(--theme-color-copy-light); }
  .entry-content blockquote.wp-block-quote cite {
    color: var(--theme-color-copy-light); }
  .entry-content .wp-block-button.is-style-slanted {
    transition: 400ms; }
  .entry-content .wp-block-button.is-style-slanted:hover {
    letter-spacing: var(--letter-spacing); }
  .entry-content .wp-block-button.is-style-slanted > * {
    position: relative;
    z-index: 1;
    background: none;
    transform: translateX(0.75em); }
  .entry-content .wp-block-button.is-style-slanted > *:before {
    border-radius: inherit;
    content: '';
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    transform: skewX(-21.5deg);
    border: 2px solid currentColor;
    z-index: -1; }
  .entry-content .wp-block-button.is-style-slanted > *.has-background {
    background: transparent !important; }
  .entry-content .wp-block-button.is-style-slanted > *.has-background:before {
    border: none; }
  .entry-content .wp-block-buttons .wp-block-button .wp-block-button__link {
    border-radius: 0; }


	.entry-content .wp-block-columns{
		flex-direction: column;
	}
	.entry-content .wp-block-columns.mobile-reverse{
		flex-direction: column-reverse;
	}

	@media (min-width: 782px){
		.entry-content .wp-block-columns,
		.entry-content .wp-block-columns.mobile-reverse{
			flex-direction:row;
		}
	
	
	}
  .entry-content .wp-block-columns.alignfull.has-background {
    padding: 0; }
  .entry-content .wp-block-columns .wp-block-column:not(:first-child) {
    margin-left: 0; }
  .entry-content .wp-block-columns .wp-block-column:not(:first-child) > *:not(.heading-style-slanted-keep-in-document-flow-wrapper) {
    margin-left: 0; }
  .entry-content .wp-block-columns .wp-block-column > h1:not(.heading-style-slanted-keep-in-document-flow-wrapper),
  .entry-content .wp-block-columns .wp-block-column > h2:not(.heading-style-slanted-keep-in-document-flow-wrapper),
  .entry-content .wp-block-columns .wp-block-column > h3:not(.heading-style-slanted-keep-in-document-flow-wrapper),
  .entry-content .wp-block-columns .wp-block-column > h4:not(.heading-style-slanted-keep-in-document-flow-wrapper),
  .entry-content .wp-block-columns .wp-block-column > h5:not(.heading-style-slanted-keep-in-document-flow-wrapper),
  .entry-content .wp-block-columns .wp-block-column > h6:not(.heading-style-slanted-keep-in-document-flow-wrapper),
  .entry-content .wp-block-columns .wp-block-column > p {
	padding: 0 1rem;
  }
  .entry-content .wp-block-cover {
    margin-top: 0;
    margin-bottom: 2rem; }
  .entry-content figure.wp-block-embed figcaption {
    color: var(--theme-color-copy-light); }
  .entry-content .wp-block-file a.wp-block-file__button {
    position: relative;
    z-index: 1;
    background: none;
    margin-left: 2em;
    text-transform: uppercase;
    font-weight: 600;
    letter-spacing: var(--letter-spacing);
    transform: translateX(0.75em); }
  .entry-content .wp-block-file a.wp-block-file__button:before {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    transform: skewX(-21.5deg);
    border: 2px solid currentColor;
    z-index: -1; }
  .entry-content figure.wp-block-gallery {
    margin-top: 0;
    margin-bottom: 2rem; }
  .entry-content figure.wp-block-gallery ul.blocks-gallery-grid li.blocks-gallery-item {
    margin: 0; }
  .entry-content figure.wp-block-gallery figcaption {
    color: var(--theme-color-copy-light); }
  .entry-content .wp-block-group.alignwide .wp-block-group__inner-container {
    max-width: 50vw;
    width: 100%;
    margin: 0 auto; }
  .entry-content .wp-block-group.alignfull .wp-block-group__inner-container {
    max-width: 50vw;
    width: 100%;
    margin: 0 auto; }
  .entry-content .heading-style-slanted-keep-in-document-flow-wrapper {
    position: relative;
    overflow: visible;
    z-index: 10;
    width: 100%; }
  .entry-content .heading-style-slanted-overflow-wrapper {
    position: absolute;
    top: 0;
    left: 0;
    overflow: hidden;
    width: 100%; }
  .entry-content h1.is-style-slanted {
    display: inline-flex;
    align-items: center;
    position: relative;
    z-index: 1;
    background: none;
    transform: translateX(-0.55em);
    margin: 0;
    padding: var(--spacing) calc(var(--spacing) * 2);
    font-weight: 400;
    text-transform: uppercase;
    white-space: nowrap; }
  .entry-content h1.is-style-slanted .theme-icon {
    width: 1.2em;
    height: 1em; }
  .entry-content h1.is-style-slanted .theme-icon svg {
    width: 1em;
    height: 1em; }
  .entry-content h1.is-style-slanted:before {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    transform: skewX(-21.5deg);
    background: var(--theme-color-bg-dark-gray);
    z-index: -1; }
  .entry-content h1.is-style-slanted.has-background {
    background: var(--theme-color-bg-dark-gray) !important; }
  .entry-content h1.is-style-slanted.has-background:before {
    border: none; }
  .entry-content h2.is-style-slanted {
    display: inline-flex;
    align-items: center;
    position: relative;
    z-index: 1;
    background: none;
    transform: translateX(-0.55em);
    margin: 0;
    padding: var(--spacing) calc(var(--spacing) * 2);
    font-weight: 400;
    text-transform: uppercase;
    white-space: nowrap; }
  .entry-content h2.is-style-slanted .theme-icon {
    width: 1.2em;
    height: 1em; }
  .entry-content h2.is-style-slanted .theme-icon svg {
    width: 1em;
    height: 1em; }
  .entry-content h2.is-style-slanted:before {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    transform: skewX(-21.5deg);
    background: var(--theme-color-bg-dark-gray);
    z-index: -1; }
  .entry-content h2.is-style-slanted.has-background {
    background: var(--theme-color-bg-dark-gray) !important; }
  .entry-content h2.is-style-slanted.has-background:before {
    border: none; }
  .entry-content h3.is-style-slanted {
    display: inline-flex;
    align-items: center;
    position: relative;
    z-index: 1;
    background: none;
    transform: translateX(-0.55em);
    margin: 0;
    padding: var(--spacing) calc(var(--spacing) * 2);
    font-weight: 400;
    text-transform: uppercase;
    white-space: nowrap; }
  .entry-content h3.is-style-slanted .theme-icon {
    width: 1.2em;
    height: 1em; }
  .entry-content h3.is-style-slanted .theme-icon svg {
    width: 1em;
    height: 1em; }
  .entry-content h3.is-style-slanted:before {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    transform: skewX(-21.5deg);
    background: var(--theme-color-bg-dark-gray);
    z-index: -1; }
  .entry-content h3.is-style-slanted.has-background {
    background: var(--theme-color-bg-dark-gray) !important; }
  .entry-content h3.is-style-slanted.has-background:before {
    border: none; }
  .entry-content h4.is-style-slanted {
    display: inline-flex;
    align-items: center;
    position: relative;
    z-index: 1;
    background: none;
    transform: translateX(-0.55em);
    margin: 0;
    padding: var(--spacing) calc(var(--spacing) * 2);
    font-weight: 400;
    text-transform: uppercase;
    white-space: nowrap; }
  .entry-content h4.is-style-slanted .theme-icon {
    width: 1.2em;
    height: 1em; }
  .entry-content h4.is-style-slanted .theme-icon svg {
    width: 1em;
    height: 1em; }
  .entry-content h4.is-style-slanted:before {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    transform: skewX(-21.5deg);
    background: var(--theme-color-bg-dark-gray);
    z-index: -1; }
  .entry-content h4.is-style-slanted.has-background {
    background: var(--theme-color-bg-dark-gray) !important; }
  .entry-content h4.is-style-slanted.has-background:before {
    border: none; }
  .entry-content h5.is-style-slanted {
    display: inline-flex;
    align-items: center;
    position: relative;
    z-index: 1;
    background: none;
    transform: translateX(-0.55em);
    margin: 0;
    padding: var(--spacing) calc(var(--spacing) * 2);
    font-weight: 400;
    text-transform: uppercase;
    white-space: nowrap; }
  .entry-content h5.is-style-slanted .theme-icon {
    width: 1.2em;
    height: 1em; }
  .entry-content h5.is-style-slanted .theme-icon svg {
    width: 1em;
    height: 1em; }
  .entry-content h5.is-style-slanted:before {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    transform: skewX(-21.5deg);
    background: var(--theme-color-bg-dark-gray);
    z-index: -1; }
  .entry-content h5.is-style-slanted.has-background {
    background: var(--theme-color-bg-dark-gray) !important; }
  .entry-content h5.is-style-slanted.has-background:before {
    border: none; }
  .entry-content h6.is-style-slanted {
    display: inline-flex;
    align-items: center;
    position: relative;
    z-index: 1;
    background: none;
    transform: translateX(-0.55em);
    margin: 0;
    padding: var(--spacing) calc(var(--spacing) * 2);
    font-weight: 400;
    text-transform: uppercase;
    white-space: nowrap; }
  .entry-content h6.is-style-slanted .theme-icon {
    width: 1.2em;
    height: 1em; }
  .entry-content h6.is-style-slanted .theme-icon svg {
    width: 1em;
    height: 1em; }
  .entry-content h6.is-style-slanted:before {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    transform: skewX(-21.5deg);
    background: var(--theme-color-bg-dark-gray);
    z-index: -1; }
  .entry-content h6.is-style-slanted.has-background {
    background: var(--theme-color-bg-dark-gray) !important; }
  .entry-content h6.is-style-slanted.has-background:before {
    border: none; }
  .entry-content .wp-block-image {
    margin-bottom: 0; }
  .entry-content .wp-block-image img {
    display: block; }
  .entry-content .wp-block-image figcaption {
    color: var(--theme-color-copy-light); }
  .entry-content ul li {
    margin-bottom: var(--spacing); }
  .entry-content ol li {
    margin-bottom: var(--spacing); }
  .entry-content .wp-block-media-text {
    margin-top: 0;
    margin-bottom: 2rem; }
  .entry-content .wp-block-media-text .wp-block-media-text__content {
    padding: 0; }
  .entry-content .wp-block-media-text .wp-block-media-text__content > *:not(.heading-style-slanted-keep-in-document-flow-wrapper) {
    margin-left: 2rem; }
  .entry-content .wp-block-media-text.has-media-on-the-right .wp-block-media-text__content > *:not(.heading-style-slanted-keep-in-document-flow-wrapper) {
    margin-left: 0;
    margin-right: 2rem; }
  .entry-content figure.wp-block-pullquote {
    color: var(--theme-color-copy-light); }
  .entry-content figure.wp-block-pullquote blockquote cite {
    color: var(--theme-color-copy-light); }
  .entry-content hr.wp-block-separator.is-style-default {
    max-width: 10vw;
    height: 2px; }
  .entry-content hr.wp-block-separator.is-style-wide {
    height: 2px; }
  .entry-content hr.wp-block-separator.is-style-dots {
    max-width: 10vw; }
  .entry-content hr.wp-block-separator.is-style-dots:before {
    content: '• • •';
    background: none !important;
    white-space: nowrap;
    font-weight: 600;
    letter-spacing: var(--letter-spacing);
    padding-left: 0;
    font-family: inherit; }
  .entry-content figure.wp-block-table.is-style-stripes {
    border-bottom: none; }
  .entry-content figure.wp-block-table table {
    border-collapse: collapse; }
  .entry-content figure.wp-block-table table thead {
    border-bottom: 3px solid var(--theme-color-copy-light); }
  .entry-content figure.wp-block-table.is-style-stripes table thead {
    border-bottom: none; }
  .entry-content figure.wp-block-table.is-style-stripes tbody tr:nth-child(odd) {
    background-color: var(--theme-color-bg-gray); }
  .entry-content figure.wp-block-table table tfoot {
    border-top: 3px solid var(--theme-color-copy-light); }
  .entry-content figure.wp-block-table.is-style-stripes table tfoot {
    border-top: none; }
  .entry-content figure.wp-block-table figcaption {
    color: var(--theme-color-copy-light); }
  .entry-content figure.wp-block-video {
    margin-top: 0;
    margin-bottom: 0; }
  .entry-content figure.wp-block-video video {
    display: block; }
  .entry-content figure.wp-block-video figcaption {
    color: var(--theme-color-copy-light); }
  .entry-content .wp-block-calendar table.wp-calendar-table {
    table-layout: fixed;
    width: 100%; }
  .entry-content .wp-block-calendar table.wp-calendar-table caption {
    color: var(--theme-color-copy-light); }
  .entry-content .wp-block-calendar table.wp-calendar-table thead tr th {
    background: none; }
  .entry-content .wp-block-calendar table.wp-calendar-table tbody {
    color: var(--theme-color-copy-light); }
  .entry-content .wp-block-calendar table.wp-calendar-table tbody tr td#today {
    position: relative; }
  .entry-content .wp-block-calendar table.wp-calendar-table tbody tr td#today:after {
    color: var(--theme-color-adi-red);
    content: '•';
    font-size: 1.5em;
    line-height: 0;
    position: absolute;
    right: 0.1em;
    top: 0.25em; }
  .entry-content .wp-block-calendar table.wp-calendar-table tbody tr td a {
    background: var(--theme-color-copy-light);
    border-radius: 1em;
    color: var(--theme-color-copy-black);
    padding: 0 0.5em;
    text-decoration: none;
    border: none;
    width: 2em;
    display: inline-block; }
  .entry-content .wp-block-calendar nav.wp-calendar-nav {
    padding: var(--spacing) 0; }
  .entry-content .wp-block-calendar nav.wp-calendar-nav span.wp-calendar-nav-prev a {
    text-decoration: none; }
  .entry-content .wp-block-calendar nav.wp-calendar-nav span.wp-calendar-nav-next a {
    text-decoration: none; }

footer#site-footer {
  background-color: var(--theme-color-bg-dark-gray);
  padding: 1rem 0; }
  footer#site-footer h1, footer#site-footer h2, footer#site-footer h3, footer#site-footer h4, footer#site-footer h5, footer#site-footer h6 {
    text-transform: uppercase;
    font-size: 1rem;
    letter-spacing: calc(var(--letter-spacing) * 0.5); }
  footer#site-footer a {
    letter-spacing: normal;
    transition: 400ms;
    text-decoration: none;
    white-space: nowrap; }
  footer#site-footer a:hover {
    text-decoration: none;
    letter-spacing: var(--letter-spacing); }
  footer#site-footer ul.menu {
    list-style: none;
    margin: 0;
    padding: 0; }
  footer#site-footer ul.menu li.menu-item {
    margin-bottom: var(--spacing); }
  footer#site-footer ul.menu li.menu-item a {
    display: inline-block;
    padding: var(--spacing) 0;
    text-transform: uppercase; }
  footer#site-footer a.custom-logo-link {
    display: inline-block;
    margin-top: calc(var(--spacing) * 3); }
  footer#site-footer a.custom-logo-link img {
    max-height: 2rem;
    max-width: 4rem;
    object-fit: scale-down; }
  footer#site-footer .menu-categories-menu-container ul.menu li.menu-item a {
    display: inline-flex;
    align-items: center; }
  footer#site-footer nav.social {
    margin: var(--spacing) 0; }
  footer#site-footer nav.social .menu-social-menue-container ul.menu {
    list-style: none;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center; }
  footer#site-footer nav.social .menu-social-menue-container ul.menu li.menu-item a {
    display: inline-block;
    margin: var(--spacing);
    opacity: 0.5;
    padding: var(--spacing);
    text-transform: uppercase;
    transition: 210ms; }
  footer#site-footer nav.social .menu-social-menue-container ul.menu li.menu-item a:hover {
    opacity: 1; }
  footer#site-footer p.copyright-info {
    opacity: 0.5;
    font-size: 0.85em;
    text-align: center; }
  footer#site-footer .menu-kontakt-container ul.menu {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    list-style: none;
    flex-wrap: wrap; }
  @media screen and (min-width: 1200px) {
    footer#site-footer .menu-kontakt-container ul.menu {
      flex-wrap: nowrap; } }
  footer#site-footer .menu-kontakt-container ul.menu li.menu-item a {
    background: none;
    color: var(--theme-color-copy-black);
    display: block;
    font-weight: 600;
    margin-left: var(--spacing);
    padding: var(--spacing) calc(var(--spacing) * 2);
    position: relative;
    text-decoration: none;
    text-transform: uppercase;
    display: flex;
    align-items: center;
    z-index: 1;
    white-space: nowrap;
    transition: 400ms; }
  footer#site-footer .menu-kontakt-container ul.menu li.menu-item a:hover {
    letter-spacing: var(--letter-spacing); }
  footer#site-footer .menu-kontakt-container ul.menu li.menu-item a:before {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    transform: skewX(-21.5deg);
    background-color: var(--theme-color-copy-light);
    z-index: -1; }
  footer#site-footer .menu-kontakt-container ul.menu li.menu-item a:hover:after {
    background-color: transparent; }
  footer#site-footer .menu-kontakt-container ul.menu li.menu-item a .theme-icon,
  footer#site-footer .menu-kontakt-container ul.menu li.menu-item a .theme-icon svg {
    width: 1.2em;
    height: 1.2em; }

/* ----- PREV NEXT NAVIGATION ----- */
nav.prev-next-nav {
  display: flex;
  align-items: flex-start;
  overflow: hidden;
  height: 40vh;
  font-size: 2.25vw; }

@media (min-width: 720px) {
  nav.prev-next-nav {
    font-size: 1rem; } }

nav.prev-next-nav a.prev-next-nav--link {
  flex: 1;
  position: relative;
  height: 100%; }

nav.prev-next-nav a.prev-next-nav--link .prev-next-flag {
  position: absolute;
  padding: var(--spacing) calc( var(--spacing) * 3);
  display: flex;
  align-items: center; }

nav.prev-next-nav a.prev-next-nav--link .prev-next-flag:before {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  background: var(--theme-color-bg-dark-gray);
  transform: skewX(-21.5deg);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1; }

nav.prev-next-nav a.prev-next-nav--link.prev .prev-next-flag {
  top: 0;
  left: calc(var(--spacing) * -1); }

nav.prev-next-nav a.prev-next-nav--link.prev .prev-next-flag .next-icon {
  display: none; }

nav.prev-next-nav a.prev-next-nav--link.next .prev-next-flag {
  top: 0;
  right: calc(var(--spacing) * -1); }

nav.prev-next-nav a.prev-next-nav--link.next .prev-next-flag .prev-icon {
  display: none; }

nav.prev-next-nav a.prev-next-nav--link .prev-next-flag .prev-next-label {
  padding: 0 calc(var(--spacing) * 2);
  text-transform: uppercase;
  letter-spacing: var(--letter-spacing);
  font-weight: 600; }

nav.prev-next-nav a.prev-next-nav--link .prev-next-flag .prev-icon,
nav.prev-next-nav a.prev-next-nav--link .prev-next-flag .next-icon,
nav.prev-next-nav a.prev-next-nav--link .prev-next-flag .prev-next-label {
  position: relative;
  z-index: 3; }

nav.prev-next-nav a.prev-next-nav--link .preview {
  overflow: hidden;
  margin-top: 2.75em;
  width: 100%;
  height: 100%; }

nav.prev-next-nav a.prev-next-nav--link .preview img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: 1s;
  transform: scale(1); }

nav.prev-next-nav a.prev-next-nav--link:hover .preview img {
  transform: scale(1.1); }

nav.prev-next-nav a.prev-next-nav--link .preview .category-flag {
  position: absolute;
  display: inline-flex;
  align-items: center;
  bottom: 0;
  padding-left: calc(var(--spacing) * 3);
  padding-right: calc(var(--spacing) * 3);
  padding-bottom: calc(var(--spacing) - 0.33em);
  padding-top: var(--spacing);
  transition: 500ms;
  opacity: 0;
  z-index: 2; }

nav.prev-next-nav a.prev-next-nav--link.prev .preview .category-flag {
  transform: translateX(-100%); }

nav.prev-next-nav a.prev-next-nav--link.next .preview .category-flag {
  transform: translateX(100%); }

nav.prev-next-nav a.prev-next-nav--link:hover .preview .category-flag {
  opacity: 1;
  transform: translateX(0); }

nav.prev-next-nav a.prev-next-nav--link.prev .preview .category-flag {
  left: calc(var(--spacing) * -1); }

nav.prev-next-nav a.prev-next-nav--link.next .preview .category-flag {
  right: calc(var(--spacing) * -1); }

nav.prev-next-nav a.prev-next-nav--link .preview .category-flag:before {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  background: var(--theme-color-bg-dark-gray);
  transform: skewX(-21.5deg);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1; }

nav.prev-next-nav a.prev-next-nav--link .preview .category-flag .slashicon {
  position: relative;
  z-index: 2; }

nav.prev-next-nav a.prev-next-nav--link .preview .category-flag .category-name {
  position: relative;
  z-index: 2; }

nav.prev-next-nav a.prev-next-nav--link .preview .overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.5);
  opacity: 0;
  transition: 500ms; }

nav.prev-next-nav a.prev-next-nav--link:hover .preview .overlay {
  opacity: 1; }

nav.prev-next-nav a.prev-next-nav--link .preview .title {
  display: block;
  font-size: 2rem;
  font-weight: bold;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) scale(0.8);
  max-width: 80%;
  text-align: center;
  z-index: 2;
  opacity: 0;
  transition: 400ms; }

nav.prev-next-nav a.prev-next-nav--link:hover .preview .title {
  transform: translate(-50%, -50%) scale(1);
  opacity: 1; }

.recent-categories-container {
  overflow: hidden; }

/* ----- HOME CATEGORY NAV ----- */
.ippendorf-home-category-nav ul {
  display: inline-flex;
  flex-wrap: wrap;
  flex-direction: column;
  align-items: flex-start;
  margin: 0;
  margin-left: 50%;
  transform: translateX(-50%);
  list-style: none;
  padding: 0;
  width: calc( var(--max-char-count) * 1.1em); }

/*
display: inline-flex;
flex-wrap: wrap;
flex-direction: column;
align-items: flex-start;
z-index: 10;
transform: translateX(-50%);
padding: 0;
margin: 0;
margin-left: 50%;
list-style: none;
white-space: nowrap;
*/
@media screen and (min-width: 720px) {
  .ippendorf-home-category-nav ul {
    display: flex;
    flex-direction: row;
    margin-left: 0;
    overflow: hidden;
    width: calc(100% + 1.5em);
    transform: translateX(-0.75em); } }

.ippendorf-home-category-nav .ippendorf-home-category-overview-nav--item {
  flex: 1;
  position: relative; }

@media screen and (min-width: 720px) {
  .ippendorf-home-category-nav .ippendorf-home-category-overview-nav--item {
    flex: 1;
    position: relative; } }

.ippendorf-home-category-nav .ippendorf-home-category-nav--link {
  display: flex;
  font-size: 1.2em;
  align-items: center;
  justify-content: center;
  text-transform: uppercase;
  padding: var(--spacing) calc(var(--spacing) * 2);
  white-space: nowrap;
  transition: 400ms;
  width: 100%; }

@media screen and (min-width: 720px) {
  .ippendorf-home-category-nav .ippendorf-home-category-nav--link {
    font-size: 1em; } }

.ippendorf-home-category-nav .ippendorf-home-category-nav--link:hover {
  letter-spacing: var(--letter-spacing);
  transform: translateX(calc(var(--letter-spacing) * var(--char-count) * -1)); }

@media screen and (min-width: 720px) {
  .ippendorf-home-category-nav .ippendorf-home-category-nav--link:hover {
    letter-spacing: var(--letter-spacing);
    transform: translateX(0); } }

.ippendorf-home-category-nav .ippendorf-home-category-nav--link .slashicon {
  padding-left: 0; }

.ippendorf-home-category-nav .ippendorf-home-category-nav--link .slashicon,
.ippendorf-home-category-nav .ippendorf-home-category-nav--link .category-name {
  position: relative;
  z-index: 2; }

.ippendorf-home-category-nav .ippendorf-home-category-nav--link:before {
  position: absolute;
  content: '';
  width: 100%;
  height: 100%;
  display: block;
  transform: skewX(-21.5deg);
  transition: 400ms;
  background-color: transparent;
  z-index: 1; }

.ippendorf-home-category-nav .ippendorf-home-category-nav--link:hover:before {
  background-color: var(--theme-color-bg-dark-gray); }

@media screen and (min-width: 720px) {
  .ippendorf-home-category-nav .ippendorf-home-category-nav--link {
    justify-content: center;
    flex: 1; } }

/* ----- HOME RECENT CATEGORY POSTS ----- */
.home-recentcategorypost-item a.home-recentcategorypost-item--link {
  display: block;
  width: 100%;
  height: 50vh;
  position: relative;
  overflow: hidden; }

.home-recentcategorypost-item a.home-recentcategorypost-item--link img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: 1s;
  transform: scale(1); }

.home-recentcategorypost-item a.home-recentcategorypost-item--link:hover img {
  transform: scale(1.1); }

.home-recentcategorypost-item a.home-recentcategorypost-item--link .category-flag {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  top: 0;
  left: 0;
  padding: var(--spacing) calc( var(--spacing) * 3);
  transform: translateX(-1em);
  z-index: 2;
  text-transform: uppercase; }

.home-recentcategorypost-item a.home-recentcategorypost-item--link .category-flag:before {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  background: var(--theme-color-bg-dark-gray);
  transform: skewX(-21.5deg);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1; }

.home-recentcategorypost-item a.home-recentcategorypost-item--link .category-flag .slashicon {
  position: relative;
  z-index: 2; }

.home-recentcategorypost-item a.home-recentcategorypost-item--link .category-flag .category-name {
  white-space: nowrap;
  position: relative;
  z-index: 2; }

.home-recentcategorypost-item a.home-recentcategorypost-item--link .overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.5);
  transition: 500ms; }

@media screen and (min-width: 720px) {
  .home-recentcategorypost-item a.home-recentcategorypost-item--link .overlay {
    opacity: 0; } }

.home-recentcategorypost-item a.home-recentcategorypost-item--link:hover .overlay {
  opacity: 1; }

.home-recentcategorypost-item a.home-recentcategorypost-item--link .title {
  display: block;
  font-size: 3rem;
  font-weight: bold;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) scale(0.8);
  max-width: 80%;
  text-align: center;
  z-index: 2;
  opacity: 0;
  transition: 400ms; }

.home-recentcategorypost-item a.home-recentcategorypost-item--link:hover .title {
  transform: translate(-50%, -50%) scale(1);
  opacity: 1; }

/* ----- HOME OVERVIEW ----- */
.home-overview {
  position: relative;
  overflow: hidden; }

.ippendorf-home-category-overview-nav {
  position: sticky;
  top: 0;
  background: #000;
  padding-top: calc(var(--spacing) * 9); }

.ippendorf-home-category-overview-nav ul {
  display: inline-flex;
  flex-wrap: wrap;
  flex-direction: column;
  align-items: flex-start;
  z-index: 10;
  transform: translateX(-50%);
  width: calc( var(--max-char-count) * 1.1em);
  padding: 0;
  margin: 0;
  margin-left: 50%;
  list-style: none;
  white-space: nowrap; }

@media screen and (min-width: 720px) {
  .ippendorf-home-category-overview-nav ul {
    overflow: hidden;
    display: flex;
    flex-direction: row;
    margin-left: 0;
    width: calc(100% + 1.5em);
    transform: translateX(-0.75em); } }

.ippendorf-home-category-overview-nav .ippendorf-home-category-overview-nav--item {
  flex: 1;
  position: relative; }

@media screen and (min-width: 720px) {
  .ippendorf-home-category-overview-nav .ippendorf-home-category-overview-nav--item {
    flex: 1;
    position: relative; } }

.ippendorf-home-category-overview-nav a.ippendorf-home-category-overview-nav--link {
  flex: 1;
  display: block;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 1.2em;
  padding-top: calc(var(--spacing) * 1.6);
  padding-bottom: var(--spacing);
  padding-left: calc(var(--spacing) * 2);
  padding-right: calc(var(--spacing) * 2);
  transition: 400ms;
  text-transform: uppercase;
  cursor: default;
  position: relative;
  white-space: nowrap; }

@media screen and (min-width: 720px) {
  .ippendorf-home-category-overview-nav a.ippendorf-home-category-overview-nav--link {
    font-size: 1em; } }

.ippendorf-home-category-overview-nav a.ippendorf-home-category-overview-nav--link:hover,
.ippendorf-home-category-overview-nav a.ippendorf-home-category-overview-nav--link.active {
  letter-spacing: var(--letter-spacing);
  transform: translateX(calc(var(--letter-spacing) * var(--char-count) * -1)); }

@media screen and (min-width: 720px) {
  .ippendorf-home-category-overview-nav a.ippendorf-home-category-overview-nav--link:hover,
  .ippendorf-home-category-overview-nav a.ippendorf-home-category-overview-nav--link.active {
    letter-spacing: var(--letter-spacing);
    transform: translateX(0); } }

.ippendorf-home-category-overview-nav a.ippendorf-home-category-overview-nav--link:before {
  position: absolute;
  content: '';
  width: 100%;
  height: 100%;
  display: block;
  transform: skewX(-21.5deg);
  transition: 400ms;
  background-color: transparent;
  z-index: -1; }

.ippendorf-home-category-overview-nav a.ippendorf-home-category-overview-nav--link:hover:before,
.ippendorf-home-category-overview-nav a.ippendorf-home-category-overview-nav--link.active:before {
  background-color: var(--theme-color-bg-dark-gray); }

.categoryposts-overview {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(100%, 1fr));
  grid-gap: 0;
  grid-auto-rows: minmax(50vh, auto); }

@media screen and (min-width: 720px) {
  .categoryposts-overview {
    grid-template-columns: repeat(auto-fit, minmax(50%, 1fr)); } }

@media screen and (min-width: 1200px) {
  .categoryposts-overview {
    grid-template-columns: repeat(auto-fit, minmax(25%, 1fr)); } }

.categoryposts-overview .home-overview-item {
  position: relative; }

.categoryposts-overview .home-overview-item.js-initially-hidden {
  opacity: 0; }

.categoryposts-overview .home-overview-item a.home-overview-item--link {
  display: block;
  width: 100%;
  height: 50vh;
  position: relative;
  overflow: hidden; }

.categoryposts-overview .home-overview-item a.home-overview-item--link img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: 1s;
  transform: scale(1); }

.categoryposts-overview .home-overview-item a.home-overview-item--link:hover img {
  transform: scale(1.1); }

.categoryposts-overview .home-overview-item a.home-overview-item--link .category-flag {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  top: 0;
  left: 0;
  padding: var(--spacing) calc( var(--spacing) * 3);
  transform: translateX(-1em);
  z-index: 2;
  text-transform: uppercase;
  transition: 500ms; }

@media screen and (min-width: 720px) {
  .categoryposts-overview .home-overview-item a.home-overview-item--link .category-flag {
    transform: translateX(-5em);
    opacity: 0; } }

.categoryposts-overview .home-overview-item a.home-overview-item--link:hover .category-flag {
  opacity: 1;
  transform: translateX(-1em); }

.categoryposts-overview .home-overview-item a.home-overview-item--link .category-flag:before {
  content: '';
  display: block;
  width: 100%;
  height: 100%;
  background: var(--theme-color-bg-dark-gray);
  transform: skewX(-21.5deg);
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1; }

.categoryposts-overview .home-overview-item a.home-overview-item--link .category-flag .slashicon {
  position: relative;
  z-index: 2; }

.categoryposts-overview .home-overview-item a.home-overview-item--link .category-flag .category-name {
  white-space: nowrap;
  position: relative;
  z-index: 2; }

.categoryposts-overview .home-overview-item a.home-overview-item--link .overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.5);
  transition: 500ms; }

@media screen and (min-width: 720px) {
  .categoryposts-overview .home-overview-item a.home-overview-item--link .overlay {
    opacity: 0; } }

.categoryposts-overview .home-overview-item a.home-overview-item--link:hover .overlay {
  opacity: 1; }

.categoryposts-overview .home-overview-item a.home-overview-item--link .title {
  display: block;
  font-size: 3rem;
  font-weight: bold;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%) scale(0.8);
  max-width: 80%;
  text-align: center;
  z-index: 2;
  transition: 400ms; }

@media screen and (min-width: 720px) {
  .categoryposts-overview .home-overview-item a.home-overview-item--link .title {
    opacity: 0; } }

.categoryposts-overview .home-overview-item a.home-overview-item--link:hover .title {
  transform: translate(-50%, -50%) scale(1);
  opacity: 1; }

.coblocks-form input,
.coblocks-form textarea,
.coblocks-form select {
  font-family: 'Montserrat', sans-serif;
  padding: var(--spacing);
  font-size: 1rem; }

.coblocks-form__submit.wp-block-button .wp-block-button__link {
  background: none;
  color: var(--theme-color-copy-black);
  display: block;
  font-weight: 600;
  padding: var(--spacing) calc(var(--spacing) * 2);
  position: relative;
  text-decoration: none;
  text-transform: uppercase;
  display: flex;
  align-items: center;
  font-size: 1rem;
  z-index: 1;
  transition: 400ms;
  background-color: transparent;
  letter-spacing: calc(var(--letter-spacing) * 0.5); }

.coblocks-form__submit.wp-block-button .wp-block-button__link:hover {
  letter-spacing: var(--letter-spacing); }

.coblocks-form__submit.wp-block-button .wp-block-button__link:before {
  content: '';
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  transform: skewX(-21.5deg);
  background-color: var(--theme-color-copy-light);
  z-index: -1; }

.coblocks--inline .checkbox {
  flex-basis: 10%; }

.coblocks--inline .coblocks-checkbox-label {
  flex-basis: 80%; }

/* remove all margins in coblocks gallery */
.coblocks-gallery--figure[class^='has-margin-'],
.coblocks-gallery--figure[class*=' has-margin-'] {
  margin-left: 0 !important;
  margin-right: 0 !important; }

.ui-datepicker.coblocks * {
  color: var(--theme-color-copy-black); }

/* remove background from gallery buttons */
.wp-block-coblocks-gallery-carousel .flickity-button,
.wp-block-coblocks-gallery-carousel .flickity-button:hover {
  background-color: transparent !important; }

.mb-0 {
  margin-bottom: 0 !important; }

.mt-0 {
  margin-top: 0 !important; }

.wp-caption {
  font-size: inherit; }

.wp-caption-text {
  font-size: inherit; }

.sticky {
  font-size: inherit; }

.gallery-caption {
  font-size: inherit; }

.bypostauthor {
  font-size: inherit; }

.screen-reader-text {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  margin: -1px;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  border: 0; }

/* ----- THEME ICONS ----- */
.theme-icon {
  display: inline-block;
  width: 1.5em;
  height: 1.5em;
  padding: 0;
  margin: 0; }

.theme-icon svg {
  width: 1.5em;
  height: 1.5em;
  fill: currentColor; }
