body,form,figure{margin:0;padding:0}img{border:0}header,footer,nav,section,aside,article,figure,figcaption{display:block}body{font-size:100.01%}select,input,textarea{font-size:99%}#container,.inside{position:relative}#main,#left,#right{float:left;position:relative}#main{width:100%}#left{margin-left:-100%}#right{margin-right:-100%}#footer{clear:both}#main .inside{min-height:1px}.ce_gallery>ul,.content-gallery>ul{margin:0;padding:0;overflow:hidden;list-style:none}.ce_gallery>ul li,.content-gallery>ul li{float:left}.ce_gallery>ul li.col_first,.content-gallery>ul li.col_first{clear:left}.float_left,.media--left>figure{float:left}.float_right,.media--right>figure{float:right}.block{overflow:hidden}.media{display:flow-root}.clear,#clear{height:.1px;font-size:.1px;line-height:.1px;clear:both}.invisible{border:0;clip:rect(0 0 0 0);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px}.custom{display:block}#container:after,.custom:after{content:"";display:table;clear:both}
@media (max-width:767px){#wrapper{margin:0;width:auto}#container{padding-left:0;padding-right:0}#main,#left,#right{float:none;width:auto}#left{right:0;margin-left:0}#right{margin-right:0}}img{max-width:100%;height:auto}.audio_container audio{max-width:100%}.video_container video{max-width:100%;height:auto}.aspect,.responsive{position:relative;height:0}.aspect iframe,.responsive iframe{position:absolute;top:0;left:0;width:100%;height:100%}.aspect--16\:9,.responsive.ratio-169{padding-bottom:56.25%}.aspect--16\:10,.responsive.ratio-1610{padding-bottom:62.5%}.aspect--21\:9,.responsive.ratio-219{padding-bottom:42.8571%}.aspect--4\:3,.responsive.ratio-43{padding-bottom:75%}.aspect--3\:2,.responsive.ratio-32{padding-bottom:66.6666%}
.download-element a{padding:3px 6px 3px 22px;background:url(../../assets/contao/images/iconPLAIN.svg) left center no-repeat}ul.enclosure{padding-left:0}li.download-element{list-style-type:none}.ext-xl a{background-image:url(../../assets/contao/images/iconXL.svg)}.ext-xls a{background-image:url(../../assets/contao/images/iconXLS.svg)}.ext-xlsx a{background-image:url(../../assets/contao/images/iconXLSX.svg)}.ext-hqx a{background-image:url(../../assets/contao/images/iconHQX.svg)}.ext-cpt a{background-image:url(../../assets/contao/images/iconCPT.svg)}.ext-bin a{background-image:url(../../assets/contao/images/iconBIN.svg)}.ext-doc a{background-image:url(../../assets/contao/images/iconDOC.svg)}.ext-docx a{background-image:url(../../assets/contao/images/iconDOCX.svg)}.ext-word a{background-image:url(../../assets/contao/images/iconWORD.svg)}.ext-cto a{background-image:url(../../assets/contao/images/iconCTO.svg)}.ext-dms a{background-image:url(../../assets/contao/images/iconDMS.svg)}.ext-lha a{background-image:url(../../assets/contao/images/iconLHA.svg)}.ext-lzh a{background-image:url(../../assets/contao/images/iconLZH.svg)}.ext-exe a{background-image:url(../../assets/contao/images/iconEXE.svg)}.ext-class a{background-image:url(../../assets/contao/images/iconCLASS.svg)}.ext-so a{background-image:url(../../assets/contao/images/iconSO.svg)}.ext-sea a{background-image:url(../../assets/contao/images/iconSEA.svg)}.ext-dll a{background-image:url(../../assets/contao/images/iconDLL.svg)}.ext-oda a{background-image:url(../../assets/contao/images/iconODA.svg)}.ext-pdf a{background-image:url(../../assets/contao/images/iconPDF.svg)}.ext-ai a{background-image:url(../../assets/contao/images/iconAI.svg)}.ext-eps a{background-image:url(../../assets/contao/images/iconEPS.svg)}.ext-ps a{background-image:url(../../assets/contao/images/iconPS.svg)}.ext-pps a{background-image:url(../../assets/contao/images/iconPPS.svg)}.ext-ppt a{background-image:url(../../assets/contao/images/iconPPT.svg)}.ext-pptx a{background-image:url(../../assets/contao/images/iconPPTX.svg)}.ext-smi a{background-image:url(../../assets/contao/images/iconSMI.svg)}.ext-smil a{background-image:url(../../assets/contao/images/iconSMIL.svg)}.ext-mif a{background-image:url(../../assets/contao/images/iconMIF.svg)}.ext-odc a{background-image:url(../../assets/contao/images/iconODC.svg)}.ext-odf a{background-image:url(../../assets/contao/images/iconODF.svg)}.ext-odg a{background-image:url(../../assets/contao/images/iconODG.svg)}.ext-odi a{background-image:url(../../assets/contao/images/iconODI.svg)}.ext-odp a{background-image:url(../../assets/contao/images/iconODP.svg)}.ext-ods a{background-image:url(../../assets/contao/images/iconODS.svg)}.ext-odt a{background-image:url(../../assets/contao/images/iconODT.svg)}.ext-wbxml a{background-image:url(../../assets/contao/images/iconWBXML.svg)}.ext-wmlc a{background-image:url(../../assets/contao/images/iconWMLC.svg)}.ext-dmg a{background-image:url(../../assets/contao/images/iconDMG.svg)}.ext-dcr a{background-image:url(../../assets/contao/images/iconDCR.svg)}.ext-dir a{background-image:url(../../assets/contao/images/iconDIR.svg)}.ext-dxr a{background-image:url(../../assets/contao/images/iconDXR.svg)}.ext-dvi a{background-image:url(../../assets/contao/images/iconDVI.svg)}.ext-gtar a{background-image:url(../../assets/contao/images/iconGTAR.svg)}.ext-inc a{background-image:url(../../assets/contao/images/iconINC.svg)}.ext-php a{background-image:url(../../assets/contao/images/iconPHP.svg)}.ext-php3 a{background-image:url(../../assets/contao/images/iconPHP3.svg)}.ext-php4 a{background-image:url(../../assets/contao/images/iconPHP4.svg)}.ext-php5 a{background-image:url(../../assets/contao/images/iconPHP5.svg)}.ext-phtml a{background-image:url(../../assets/contao/images/iconPHTML.svg)}.ext-phps a{background-image:url(../../assets/contao/images/iconPHPS.svg)}.ext-js a{background-image:url(../../assets/contao/images/iconJS.svg)}.ext-psd a{background-image:url(../../assets/contao/images/iconPSD.svg)}.ext-rar a{background-image:url(../../assets/contao/images/iconRAR.svg)}.ext-fla a{background-image:url(../../assets/contao/images/iconFLA.svg)}.ext-swf a{background-image:url(../../assets/contao/images/iconSWF.svg)}.ext-sit a{background-image:url(../../assets/contao/images/iconSIT.svg)}.ext-tar a{background-image:url(../../assets/contao/images/iconTAR.svg)}.ext-tgz a{background-image:url(../../assets/contao/images/iconTGZ.svg)}.ext-xhtml a{background-image:url(../../assets/contao/images/iconXHTML.svg)}.ext-xht a{background-image:url(../../assets/contao/images/iconXHT.svg)}.ext-zip a{background-image:url(../../assets/contao/images/iconZIP.svg)}.ext-m4a a{background-image:url(../../assets/contao/images/iconM4A.svg)}.ext-mp3 a{background-image:url(../../assets/contao/images/iconMP3.svg)}.ext-wma a{background-image:url(../../assets/contao/images/iconWMA.svg)}.ext-mpeg a{background-image:url(../../assets/contao/images/iconMPEG.svg)}.ext-wav a{background-image:url(../../assets/contao/images/iconWAV.svg)}.ext-ogg a{background-image:url(../../assets/contao/images/iconOGG.svg)}.ext-mid a{background-image:url(../../assets/contao/images/iconMID.svg)}.ext-midi a{background-image:url(../../assets/contao/images/iconMIDI.svg)}.ext-aif a{background-image:url(../../assets/contao/images/iconAIF.svg)}.ext-aiff a{background-image:url(../../assets/contao/images/iconAIFF.svg)}.ext-aifc a{background-image:url(../../assets/contao/images/iconAIFC.svg)}.ext-ram a{background-image:url(../../assets/contao/images/iconRAM.svg)}.ext-rm a{background-image:url(../../assets/contao/images/iconRM.svg)}.ext-rpm a{background-image:url(../../assets/contao/images/iconRPM.svg)}.ext-ra a{background-image:url(../../assets/contao/images/iconRA.svg)}.ext-bmp a{background-image:url(../../assets/contao/images/iconBMP.svg)}.ext-gif a{background-image:url(../../assets/contao/images/iconGIF.svg)}.ext-jpeg a{background-image:url(../../assets/contao/images/iconJPEG.svg)}.ext-jpg a{background-image:url(../../assets/contao/images/iconJPG.svg)}.ext-jpe a{background-image:url(../../assets/contao/images/iconJPE.svg)}.ext-png a{background-image:url(../../assets/contao/images/iconPNG.svg)}.ext-tiff a{background-image:url(../../assets/contao/images/iconTIFF.svg)}.ext-tif a{background-image:url(../../assets/contao/images/iconTIF.svg)}.ext-svg a{background-image:url(../../assets/contao/images/iconSVG.svg)}.ext-svgz a{background-image:url(../../assets/contao/images/iconSVGZ.svg)}.ext-webp a{background-image:url(../../assets/contao/images/iconWEBP.svg)}.ext-avif a{background-image:url(../../assets/contao/images/iconAVIF.svg)}.ext-heic a{background-image:url(../../assets/contao/images/iconHEIC.svg)}.ext-jxl a{background-image:url(../../assets/contao/images/iconJXL.svg)}.ext-eml a{background-image:url(../../assets/contao/images/iconEML.svg)}.ext-asp a{background-image:url(../../assets/contao/images/iconASP.svg)}.ext-css a{background-image:url(../../assets/contao/images/iconCSS.svg)}.ext-scss a{background-image:url(../../assets/contao/images/iconSCSS.svg)}.ext-less a{background-image:url(../../assets/contao/images/iconLESS.svg)}.ext-html a{background-image:url(../../assets/contao/images/iconHTML.svg)}.ext-htm a{background-image:url(../../assets/contao/images/iconHTM.svg)}.ext-md a{background-image:url(../../assets/contao/images/iconMD.svg)}.ext-shtml a{background-image:url(../../assets/contao/images/iconSHTML.svg)}.ext-txt a{background-image:url(../../assets/contao/images/iconTXT.svg)}.ext-text a{background-image:url(../../assets/contao/images/iconTEXT.svg)}.ext-log a{background-image:url(../../assets/contao/images/iconLOG.svg)}.ext-rtx a{background-image:url(../../assets/contao/images/iconRTX.svg)}.ext-rtf a{background-image:url(../../assets/contao/images/iconRTF.svg)}.ext-xml a{background-image:url(../../assets/contao/images/iconXML.svg)}.ext-xsl a{background-image:url(../../assets/contao/images/iconXSL.svg)}.ext-mp4 a{background-image:url(../../assets/contao/images/iconMP4.svg)}.ext-m4v a{background-image:url(../../assets/contao/images/iconM4V.svg)}.ext-mov a{background-image:url(../../assets/contao/images/iconMOV.svg)}.ext-wmv a{background-image:url(../../assets/contao/images/iconWMV.svg)}.ext-webm a{background-image:url(../../assets/contao/images/iconWEBM.svg)}.ext-qt a{background-image:url(../../assets/contao/images/iconQT.svg)}.ext-rv a{background-image:url(../../assets/contao/images/iconRV.svg)}.ext-avi a{background-image:url(../../assets/contao/images/iconAVI.svg)}.ext-ogv a{background-image:url(../../assets/contao/images/iconOGV.svg)}.ext-movie a{background-image:url(../../assets/contao/images/iconMOVIE.svg)}
header,footer,nav,section,aside,main,article,figure,figcaption{display:block}body,div,h1,h2,h3,h4,h5,h6,p,blockquote,pre,code,ol,ul,li,dl,dt,dd,figure,table,th,td,form,fieldset,legend,input,textarea{margin:0;padding:0}table{border-spacing:0;border-collapse:collapse}caption,th,td{text-align:left;text-align:start;vertical-align:top}abbr,acronym{font-variant:normal;border-bottom:1px dotted #666;cursor:help}blockquote,q{quotes:none}fieldset,img,iframe{border:0}ul{list-style-type:none}sup{vertical-align:text-top}sub{vertical-align:text-bottom}del{text-decoration:line-through}ins{text-decoration:none}body{font:12px/1 "Lucida Grande","Lucida Sans Unicode",Verdana,sans-serif;color:#000}input,button,textarea,select{font-family:inherit;font-size:99%;font-weight:inherit}pre,code{font-family:Monaco,monospace}h1,h2,h3,h4,h5,h6{font-size:100%;font-weight:400}h1{font-size:1.8333em}h2{font-size:1.6667em}h3{font-size:1.5em}h4{font-size:1.3333em}table{font-size:inherit}caption,th{font-weight:700}a{color:#00f}h1,h2,h3,h4,h5,h6{margin-top:1em}h1,h2,h3,h4,h5,h6,p,pre,blockquote,table,ol,ul,form{margin-bottom:12px}
@charset "UTF-8";
/* 
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

    Vitafilm 2025 on Contao
    29.05.2025 - 15.00

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
*/
/* 
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

    Vitafilm 2025 on Contao
    12.06.2024 - 10.30

    +++ COMPONENTS +++

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
*/
/* 
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

    Vitafilm 2025 on Contao
    03.06.2025 - 15.30

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
*/
/* 
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

    Vitafilm 2025 on Contao
    29.05.2025 - 15.30

    +++ FARBEN +++

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
*/
/* 
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

    Vitafilm 2025 on Contao
    29.05.2025 - 15.15

    +++ SCHRIFTEN +++

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
*/
@font-face {
  font-family: "SourceSans";
  src: url("../../files/theme/css/fonts/source-sans-3-latin-300-normal.woff2") format("woff2");
  font-weight: 300;
  font-style: normal;
}
@font-face {
  font-family: "SourceSans";
  src: url("../../files/theme/css/fonts/source-sans-3-latin-300-italic.woff2") format("woff2");
  font-weight: 300;
  font-style: italic;
}
@font-face {
  font-family: "SourceSans";
  src: url("../../files/theme/css/fonts/source-sans-3-latin-400-normal.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: "SourceSans";
  src: url("../../files/theme/css/fonts/source-sans-3-latin-400-italic.woff2") format("woff2");
  font-weight: 400;
  font-style: italic;
}
@font-face {
  font-family: "SourceSans";
  src: url("../../files/theme/css/fonts/source-sans-3-latin-500-normal.woff2") format("woff2");
  font-weight: 500;
  font-style: normal;
}
@font-face {
  font-family: "SourceSans";
  src: url("../../files/theme/css/fonts/source-sans-3-latin-700-normal.woff2") format("woff2");
  font-weight: 700;
  font-style: normal;
}
@font-face {
  font-family: "DMDisplay";
  src: url("../../files/theme/css/fonts/dm-serif-display-latin-400-normal.woff2") format("woff2");
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-family: "DMDisplay";
  src: url("../../files/theme/css/fonts/dm-serif-display-latin-400-italic.woff2") format("woff2");
  font-weight: 400;
  font-style: italic;
}
/* 
*   ==============================================================================   
*   Nulldrei 2023
*   Version 0.1 
*
*   RESPONSIVE
*   ------------------------------------------------------------------------------
*   Definitionen, Mixins und Klassen für Resonsive Design
*   ==============================================================================
*/
@media screen and (orientation: landscape) {
  .portrait-only {
    display: none;
  }
}

@media screen and (orientation: portrait) {
  .landscape-only {
    display: none;
  }
}

@media screen and (min-width: 601px) {
  .for-small-only,
  .for-small {
    display: none;
  }
}

@media screen and (max-width: 600px) {
  .for-medium-only,
  .for-medium {
    display: none;
  }
}
@media screen and (min-width: 1001px) {
  .for-medium-only,
  .for-medium {
    display: none;
  }
}

@media screen and (max-width: 600px) {
  .for-medium-up {
    display: none;
  }
}

@media screen and (max-width: 1000px) {
  .for-larger-up {
    display: none;
  }
}

@media screen and (min-width: 1001px) {
  .for-medium-down {
    display: none;
  }
}

/* 
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

    Nulldrei 2024 on Contao
    17.06.2024 - 15.15

    +++ SPACER +++

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
*/
/* 
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

    Vitafilm 2025 on Contao
    15.06.2024 - 17.30

    +++ ANIMATIONS +++

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
*/
@keyframes slide-in-left {
  0% {
    transform: translateX(-75dvw);
    opacity: 0;
    letter-spacing: 5px;
  }
  25% {
    opacity: 1;
  }
  100% {
    transform: translateX(0px);
    letter-spacing: normal;
    opacity: 1;
  }
}
@keyframes slide-in-right {
  0% {
    transform: translateX(75dvw);
    opacity: 0;
    letter-spacing: 5px;
  }
  25% {
    opacity: 1;
  }
  100% {
    transform: translateX(0px);
    letter-spacing: normal;
    opacity: 1;
  }
}
@keyframes fade-in {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}
@keyframes fade-out {
  from {
    opacity: 1;
  }
  to {
    opacity: 0;
  }
}
.fadeIn {
  opacity: 0;
  animation: fade-in 0.3s linear forwards;
}

.fadeOut {
  opacity: 1;
  animation: fade-out 0.3s linear forwards;
}

.hideImage img {
  opacity: 0;
  transform: scale(0.8);
  transition: all 1s;
}

.hideImage.revealImage img {
  opacity: 1;
  transform: scale(1);
}

.hideSlideImage-left img {
  opacity: 0;
  transform: translateX(-25dvw);
  transition: all 1s;
}

.hideSlideImage-right img {
  opacity: 0;
  transition: all 1s;
}

.hideSlideImage-left.revealSlideImage img,
.hideSlideImage-right.revealSlideImage img {
  opacity: 1;
  transform: translateX(0);
}

* {
  box-sizing: border-box;
  margin: 0;
  border: 0;
  padding: 0;
}

html,
body {
  overflow-x: hidden;
  scroll-behavior: smooth;
}

figure,
picture {
  display: block;
  width: 100%;
  position: relative;
}

img {
  display: block;
  -o-object-fit: cover;
     object-fit: cover;
}

.span-2 {
  grid-column: span 2;
}

.span-3 {
  grid-column: span 3;
}

.span-4 {
  grid-column: span 4;
}

.span-6 {
  grid-column: span 6;
}

/* 
*   ==============================================================================   
*   Nulldrei 2023 - 08.05.2023
*
*   TEXT
*   ------------------------------------------------------------------------------
*   Definitionen, Mixins und Klassen für Texte
*   ==============================================================================
*/
html,
body {
  font-display: fallback;
  font-size: 16px !important;
  font-weight: normal;
  overflow-x: hidden;
  scroll-behavior: smooth;
}
@media screen and (min-width: 601px) {
  html,
  body {
    font-size: 16px !important;
  }
}
@media screen and (min-width: 1001px) {
  html,
  body {
    font-size: 20px !important;
  }
}
@media screen and (min-width: 1801px) {
  html,
  body {
    font-size: 24px !important;
  }
}

h1, h2, h3, h4, h5, h6,
p, q, blockquote, label,
sub, sup {
  font-kerning: auto;
  font-variant-ligatures: common-ligatures;
  font-variant-numeric: proportional-nums;
  -webkit-hyphens: auto;
          hyphens: auto;
  font-weight: normal;
}

sup {
  font-variant-position: super;
}

sub {
  font-variant-position: sub;
}

.num-fraction {
  font-variant-numeric: diagonal-fractions;
}

h1 {
  position: relative;
  font: normal normal 400 100%/140% "DMDisplay", serif;
  font-size: clamp(3.35rem, 7dvw, 7rem);
  font-weight: 400;
  margin: 0;
  padding: 0rem 0 0rem 0;
  color: hsl(142, 33%, 18%);
  line-height: 1.12;
  letter-spacing: 0;
  -webkit-hyphens: none;
          hyphens: none;
  text-wrap: balance;
}
@media screen and (min-width: 601px) {
  h1 {
    font-size: clamp(3.5rem, 7dvw, 6.5rem);
  }
}
h1:first-of-type {
  padding-top: 0;
}

h2 {
  position: relative;
  font: normal normal 400 100%/140% "DMDisplay", serif;
  font-size: clamp(2.25rem, 4.75vh, 3.25rem);
  font-weight: 400;
  margin: 0;
  padding: 1rem 0 2rem 0;
  color: hsl(142, 33%, 18%);
  line-height: 1.12;
  letter-spacing: 0;
  -webkit-hyphens: none;
          hyphens: none;
  text-wrap: balance;
}
@media screen and (min-width: 601px) {
  h2 {
    font-size: clamp(2.5rem, 4.75dvw, 5rem);
  }
}
h2:first-of-type {
  padding-top: 0;
}

h3 {
  position: relative;
  font: normal normal 400 100%/140% "DMDisplay", serif;
  font-size: clamp(1.5rem, 3.5vh, 2.25rem);
  font-weight: 400;
  margin: 0;
  padding: 1rem 0 1rem 0;
  color: hsl(142, 33%, 18%);
  line-height: 1.12;
  letter-spacing: 0;
  -webkit-hyphens: none;
          hyphens: none;
  text-wrap: balance;
}
@media screen and (min-width: 601px) {
  h3 {
    font-size: clamp(1.5rem, 3dvw, 2.5rem);
  }
}
h3:first-of-type {
  padding-top: 0;
}

h4 {
  position: relative;
  font: normal normal 400 100%/140% "DMDisplay", serif;
  font-size: 1rem;
  font-weight: 400;
  margin: 0;
  padding: 0.5rem 0 0.75rem 0;
  color: hsl(142, 33%, 18%);
  line-height: 1.12;
  letter-spacing: 0;
  -webkit-hyphens: none;
          hyphens: none;
  text-wrap: balance;
}
@media screen and (min-width: 601px) {
  h4 {
    font-size: 1rem;
  }
}
h4:first-of-type {
  padding-top: 0;
}

p, h5, h6 {
  font: normal normal 300 100%/140% "SourceSans", sans-serif;
  font-size: 1rem;
  color: rgb(0, 0, 0);
  line-height: 1.35;
  margin-bottom: 0.5rem;
}

p.initial::first-line {
  line-height: 100%;
}

p.initial::first-letter {
  font-size: 310%;
  font-weight: bold;
  margin: 0.1em 2px 0 -1px;
  float: left;
}

h5, h6 {
  font-weight: 700;
}

.small {
  font-size: 0.8rem;
}

a.no-decoration {
  text-decoration: none;
  font-weight: normal;
  color: inherit;
}

.no-headline h1, .no-headline h2, .no-headline h3, .no-headline h4 {
  display: none;
}

.brandname {
  font-family: "DMDisplay", serif;
  text-transform: lowercase;
}

.no-space {
  margin: 0;
  padding: 0;
}

.center {
  text-align: center;
}

li {
  font: normal normal 300 100%/140% "SourceSans", sans-serif;
  line-height: 1.35;
}

table {
  margin: 1rem 0;
  width: 100%;
  font: normal normal 300 100%/140% "SourceSans", sans-serif;
  color: rgb(0, 0, 0);
}
table tr {
  border-bottom: 1px solid rgb(117, 125, 133);
}
table tr:last-of-type {
  border-bottom: none;
}
table td {
  padding: 0.25rem 0.5rem;
}

.tfooter {
  font-size: 0.8rem;
  font-style: italic;
}

strong {
  font-weight: 700;
  color: hsl(142, 33%, 18%);
}

.thin {
  font: normal normal 300 100%/140% "SourceSans", sans-serif;
}

.black {
  color: rgb(0, 0, 0);
}

.hyphen {
  -webkit-hyphens: auto !important;
          hyphens: auto !important;
}

.ul-pri {
  -webkit-text-decoration: underline solid hsl(142, 33%, 18%);
          text-decoration: underline solid hsl(142, 33%, 18%);
}

.ul-sec {
  -webkit-text-decoration: underline solid hsl(68, 59%, 83%);
          text-decoration: underline solid hsl(68, 59%, 83%);
}

a {
  text-decoration: none;
  color: rgb(0, 0, 0);
}

p a {
  font: normal normal 700 100%/140% "SourceSans", sans-serif;
  font-weight: 500;
}

.internal-link {
  display: inline-block;
  border-radius: 0.25rem;
  background-color: hsl(68, 59%, 83%);
  color: hsl(142, 33%, 18%);
  padding: 0.25rem 2rem 0.25rem 2rem;
  font-size: 0.8rem;
  font-weight: bold;
  margin-top: 0.5rem;
  transition: all 400ms;
}
.internal-link:hover {
  background-color: hsl(68, 59%, 73%);
  box-shadow: 0 0 0.3rem 0 hsl(142, 33%, 28%);
  cursor: pointer;
  transition: all 400ms;
}

.indent-right-l {
  padding-right: 4.1666666667dvw;
}

.indent-left-l {
  padding-left: 4.1666666667dvw;
}

/* 
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

    Vitafilm 2025 on Contao
    11.06.2024 - 12.00

    +++ FORMS + BUTTONS +++

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
*/
form,
.formbody {
  width: 100%;
  overflow: visible;
}

.widget {
  overflow: visible;
}

label {
  display: block;
  font: normal normal 300 100%/140% "SourceSans", sans-serif;
  font-size: 0.9rem;
  font-weight: normal;
  color: rgb(0, 0, 0);
  margin-bottom: 0.1rem;
}

input, textarea, select {
  width: 100%;
  border-radius: 0.33rem;
  padding: 0.25rem 0.5rem;
  font: normal normal 300 100%/140% "SourceSans", sans-serif;
  font-weight: normal;
  background-color: hsl(68, 59%, 93%);
}
input:focus, textarea:focus, select:focus {
  outline: none;
  background-color: rgb(255, 255, 255);
  box-shadow: inset 0 0 0.25rem 0 rgb(178, 178, 178);
  border: rgb(203, 203, 203);
}

textarea {
  resize: vertical;
}

select option {
  font-family: normal normal 300 100%/140% "SourceSans", sans-serif;
  font-size: 1rem;
  font-weight: normal;
}

button,
.button a {
  padding: 0.3rem 1rem;
  border-radius: 0.25rem;
  background-color: hsl(142, 33%, 18%);
  color: rgb(255, 255, 255);
  font: normal normal 500 100%/140% "SourceSans", sans-serif;
  font-weight: 500;
  font-size: 0.9rem;
  transition: all 400ms;
}
button:hover,
.button a:hover {
  background-color: hsl(142, 33%, 28%);
  box-shadow: 0 0 0.3rem 0 hsl(142, 33%, 18%);
  cursor: pointer;
  transition: all 400ms;
}

button.button-extra-wide,
.button-extra-wide a {
  padding: 0.3rem 2rem;
}

button.button-tertiary,
.button-tertiary a {
  background-color: hsl(0, 66%, 69%);
}
button.button-tertiary:hover,
.button-tertiary a:hover {
  background-color: hsl(0, 66%, 59%);
  cursor: pointer;
  transition: all 400ms;
}

/* 
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

    Vitafilm 2025 on Contao
    09.06.2025 - 18.00

    +++ HEADER +++

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
*/
#header {
  position: relative;
}
#header .menubar {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1000;
  padding: 1.25rem 6.25dvw 1.25rem 8.3333333333dvw;
  display: grid;
  grid-template-columns: 1fr 1fr;
  background-color: transparent;
}
@media screen and (min-width: 601px) {
  #header .menubar {
    padding: 1.5rem 8.3333333333dvw;
  }
}
#header .menubar .logo {
  justify-self: start;
  align-self: center;
}
#header .menubar .logo img {
  width: 10.4166666667dvw;
  height: auto;
}
@media screen and (min-width: 601px) {
  #header .menubar .logo img {
    height: 3.5rem;
    width: auto;
  }
}
#header .menubar .hamburger {
  justify-self: end;
  align-self: center;
}
#header .menubar .hamburger img {
  height: auto;
  width: 10.4166666667dvw;
}
@media screen and (min-width: 601px) {
  #header .menubar .hamburger img {
    width: 6.6666666667dvw;
  }
}
@media screen and (min-width: 1001px) {
  #header .menubar .hamburger img {
    width: 3.7037037037dvw;
  }
}
#header .menubar .hamburger:hover {
  cursor: pointer;
}

.menuoverlay {
  position: fixed;
  top: 0;
  right: calc(-100dvw - 25px);
  width: 100dvw;
  height: 100%;
  z-index: 1100;
  transition: right 300ms ease-in;
  background-color: hsl(142, 33%, 18%);
  box-shadow: -5px 0px 23px rgba(0, 0, 0, 0.5);
  padding: 6.6666666667dvh 8.3333333333dvw 0 7.5dvw;
}
@media screen and (min-width: 601px) {
  .menuoverlay {
    right: calc(-41.6666666667dvw - 25px);
    width: 41.6666666667dvw;
  }
}
.menuoverlay .content-hyperlink img {
  width: 16.6666666667dvw;
  height: auto;
  filter: grayscale(100%);
}
@media screen and (min-width: 601px) {
  .menuoverlay .content-hyperlink img {
    width: 4.1666666667dvw;
  }
}
@media screen and (min-width: 1001px) {
  .menuoverlay .content-hyperlink img {
    width: 3.7037037037dvw;
  }
}
.menuoverlay nav {
  margin-block: 5dvh;
  border-bottom: 1px solid rgb(255, 255, 255);
  padding-bottom: 5dvh;
}
.menuoverlay nav h4 {
  display: none;
}
.menuoverlay nav ul {
  margin-top: 0.5rem;
  margin-bottom: 0;
}
.menuoverlay nav p, .menuoverlay nav li, .menuoverlay nav a {
  font-size: 1.5rem;
  font-weight: normal;
  color: rgb(255, 255, 255);
}
.menuoverlay nav p.active strong, .menuoverlay nav li.active strong, .menuoverlay nav a.active strong {
  color: hsl(68, 59%, 83%);
}
.menuoverlay nav li {
  padding-bottom: 0.75rem;
}
.menuoverlay nav li:last-of-type {
  padding-bottom: 0;
}
.menuoverlay .say-hello p, .menuoverlay .say-hello a {
  color: rgb(255, 255, 255);
}
.menuoverlay .say-hello a {
  font-weight: bold;
}
.menuoverlay .say-hello img {
  display: inline-block;
  width: 1rem;
  height: auto;
  margin-right: 0.5rem;
}

.mShow {
  right: 0;
  transition: right 300ms ease-out;
}

/* 
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

    Vitafilm 2025 on Contao
    02.06.2025 - 15.00

    +++ FOOTER +++

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
*/
footer {
  background-color: hsl(142, 33%, 18%);
  box-shadow: inset 0px 20px 20px -15px rgb(0, 0, 0);
  padding: 6.6dvh 8.3333333333dvw;
}
@media screen and (min-width: 1001px) {
  footer {
    padding: 10dvh 8.3333333333dvw;
  }
}
footer .inside {
  display: grid;
  gap: 1rem 2rem;
  grid-template-columns: 1fr;
}
@media screen and (min-width: 601px) {
  footer .inside {
    grid-template-columns: 2fr 10fr 18fr;
  }
}
@media screen and (min-width: 1001px) {
  footer .inside {
    grid-template-columns: 4.1666666667dvw 16.6666666667dvw auto 25dvw;
  }
}
footer .inside #ft-logo img {
  width: 12.5dvw;
  height: auto;
  margin-bottom: 1rem;
}
@media screen and (min-width: 601px) {
  footer .inside #ft-logo {
    grid-row: span 2;
  }
  footer .inside #ft-logo img {
    width: 100%;
  }
}
@media screen and (min-width: 1001px) {
  footer .inside #ft-logo {
    grid-row: span 2;
  }
  footer .inside #ft-logo img {
    width: 3rem;
  }
}
@media screen and (min-width: 601px) {
  footer .inside #ft-navigation {
    grid-row: span 2;
  }
}
@media screen and (min-width: 1001px) {
  footer .inside #ft-contact {
    justify-self: right;
  }
}
footer .inside p, footer .inside li, footer .inside a {
  color: hsl(68, 59%, 93%);
}
footer .inside p, footer .inside li {
  margin-bottom: 0.5rem;
}
footer .inside li.active strong {
  font-weight: 400;
  color: hsl(68, 59%, 93%);
}
footer .inside img.phone-mail {
  display: inline-block;
  width: 1rem;
  height: auto;
  margin-right: 0.5rem;
}
footer .inside nav {
  display: none;
  font: inherit;
  text-transform: uppercase;
}
@media screen and (min-width: 601px) {
  footer .inside nav {
    display: initial;
  }
}
footer .inside .copyright {
  padding-top: 0.5rem;
  font-size: 0.7rem;
}

/* 
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

    Vitafilm 2025 on Contao
    04.06.2025 - 10.00

    +++ HOME +++

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
*/
#hero-start {
  position: relative;
  width: 100%;
  height: auto;
  margin-bottom: 5dvh;
}
@media screen and (min-width: 1001px) {
  #hero-start {
    margin-bottom: 0;
  }
}
#hero-start .textlines {
  position: absolute;
  z-index: 150;
  width: 100%;
  height: 90dvh;
  background-image: url("../../files/theme/css/background/hero-circle-green-mobile.svg");
  background-repeat: no-repeat;
  background-position: top left;
  background-size: contain;
  padding-block: 12.5dvh 0;
  padding-inline: 8.3333333333dvw 10.4166666667dvw;
  color: rgb(255, 255, 255);
}
@media screen and (min-width: 601px) and (max-width: 1000px) {
  #hero-start .textlines {
    padding-inline: 8.3333333333dvw;
    width: 62.5dvw;
    height: 90dvh;
    background-image: url("../../files/theme/css/background/hero-circle-green-tablet.svg");
    padding-block: 20dvh 0;
  }
}
@media screen and (min-width: 1001px) {
  #hero-start .textlines {
    width: 58.3333333333dvw;
    height: 85dvh;
    background-image: url("../../files/theme/css/background/hero-circle-green.svg");
    padding-block: 20dvh 0;
  }
}
#hero-start .hero-image {
  position: relative;
  z-index: 100;
  margin: 0;
  padding: 0;
  width: 100dvw !important;
  height: auto;
}
#hero-start .hero-image figure, #hero-start .hero-image img {
  width: 100%;
  height: auto;
}
#hero-start .punchline {
  color: rgb(255, 255, 255);
}
#hero-start .subline {
  font-family: "SourceSans", sans-serif;
  font-size: clamp(1.1rem, 2.8dvw, 1.6rem);
  font-weight: 300;
  line-height: 130%;
  color: rgb(255, 255, 255);
  padding: 1.5rem 0 0 0;
}
@media screen and (min-width: 1001px) {
  #hero-start .subline {
    font-size: clamp(1.25rem, 2dvw, 1.75rem);
    line-height: 125%;
  }
}

#story-of-life {
  padding-block: 0 7.5dvh;
  padding-inline: 8.3333333333dvw;
}
@media screen and (min-width: 601px) {
  #story-of-life {
    padding-inline: 16.6666666667dvw 8.3333333333dvw;
  }
}
@media screen and (min-width: 1001px) {
  #story-of-life {
    padding-block: 0 10dvh;
    padding-inline: 16.6666666667dvw;
  }
}
#story-of-life div.content-text {
  padding-inline: 8.3333333333dvw 0;
}
@media screen and (min-width: 601px) {
  #story-of-life div.content-text {
    padding-inline: 0 8.3333333333dvw;
  }
}
@media screen and (min-width: 1001px) {
  #story-of-life div.content-text {
    padding-inline: 8.3333333333dvw 7.0833333333dvw;
    -moz-columns: 2 auto;
         columns: 2 auto;
    -moz-column-gap: 2rem;
         column-gap: 2rem;
  }
}

#create-memories {
  padding-block: 0 10dvh;
  padding-inline: 0 8.3333333333dvw;
  background-color: hsl(68, 59%, 83%);
  background-image: url("../../files/theme/css/background/swoosh-with-dot.svg");
  background-repeat: no-repeat;
  background-size: 100% auto;
  background-position: bottom center;
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem 4.1666666667dvw;
  justify-items: start;
  align-items: center;
}
@media screen and (min-width: 601px) {
  #create-memories {
    padding-inline: 0 8.3333333333dvw;
  }
}
@media screen and (min-width: 1001px) {
  #create-memories {
    padding-inline: 0 23.75dvw;
  }
}
#create-memories .content-text {
  padding-left: 16.6666666667dvw;
}
@media screen and (min-width: 601px) {
  #create-memories {
    grid-template-columns: 1fr 1fr;
  }
  #create-memories .content-text {
    padding-left: 0;
  }
}

#examples {
  padding-block: 10dvh;
  padding-inline: 8.3333333333dvw;
  background-color: hsl(68, 59%, 83%);
}
#examples .example-single {
  margin: 0 0 0 8.3333333333dvw;
  display: grid;
  grid-template-columns: 1fr;
  gap: 0.5rem 4.1666666667dvw;
  align-items: start;
  justify-items: start;
}
@media screen and (min-width: 601px) {
  #examples .example-single {
    margin: 0 8.3333333333dvw;
    grid-template-columns: 1fr 1fr;
    grid-template-areas: "left right";
    align-items: center;
  }
}
@media screen and (min-width: 601px) {
  #examples .content-headline {
    margin-left: 8.3333333333dvw;
  }
  #examples .set-left {
    grid-area: left;
  }
  #examples .set-right {
    grid-area: right;
  }
}
#examples .example-single:first-of-type {
  margin-bottom: 2rem;
}

#testimonials {
  padding-block: 15dvh 10dvh;
  padding-inline: 6.6666666667dvw 0;
  background-image: url("../../files/theme/css/background/swoosh-negative-light-green.svg");
  background-repeat: no-repeat;
  background-position: top;
  background-size: 100dvw auto;
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem 4.1666666667dvw;
  justify-items: start;
  align-items: center;
}
@media screen and (min-width: 601px) and (max-width: 1000px) {
  #testimonials {
    padding-block: 20dvh 10dvh;
  }
}
@media screen and (min-width: 1001px) {
  #testimonials {
    padding-inline: 15dvw 0;
  }
}
@media screen and (min-width: 601px) {
  #testimonials {
    grid-template-columns: 1fr 1fr;
  }
}
#testimonials h2 {
  margin-left: 1.6666666667dvw;
}
#testimonials .testimony {
  margin: 0 8.3333333333dvw 2rem 8.3333333333dvw;
  background-image: url("../../files/theme/css/background/quote-gray.svg");
  background-repeat: no-repeat;
  background-size: 2.5rem auto;
  background-position: top left;
}
@media screen and (min-width: 601px) and (max-width: 1000px) {
  #testimonials .testimony {
    margin: 0 0 2rem 8.3333333333dvw;
  }
}
@media screen and (min-width: 1001px) {
  #testimonials .testimony {
    margin: 0 0 2rem 0;
  }
}
#testimonials .testimony:last-of-type {
  margin-bottom: 0;
}
#testimonials .testimony p {
  margin-left: 1.6666666667dvw;
  font-style: italic;
}
#testimonials .testimony p.source {
  font-style: normal;
  font-weight: bold;
  font-size: 0.9rem;
  text-transform: uppercase;
}

#way-to-film {
  padding-block: 0 2.5dvh;
  padding-inline: 16.6666666667dvw;
  background-color: hsl(68, 59%, 83%);
  overflow: visible;
}
@media screen and (min-width: 601px) {
  #way-to-film {
    padding-block: 0;
  }
}
#way-to-film .timeline {
  display: grid;
  grid-auto-flow: column;
  grid-template-columns: 1fr auto 1fr;
  grid-template-rows: repeat(6, 1fr);
  gap: 0;
  justify-items: center;
  align-items: center;
}
@media screen and (min-width: 601px) {
  #way-to-film .timeline {
    padding-top: 2.5dvh;
  }
}
#way-to-film .timeline .content-image {
  grid-row: span 6;
}
#way-to-film .timeline img {
  width: 0.4rem;
}
#way-to-film .timeline p {
  margin-block: 0;
  padding-block: 0;
}
@media screen and (min-width: 601px) {
  #way-to-film .timeline {
    grid-auto-flow: row;
    grid-template-columns: repeat(6, 1fr);
    grid-template-rows: 1fr 1rem 1fr;
  }
  #way-to-film .timeline .content-image {
    grid-column: span 6;
  }
  #way-to-film .timeline img {
    width: 66.6666666667dvw;
    height: auto;
    margin-block: 0.75rem;
  }
}
#way-to-film .content-hyperlink {
  display: flex;
  width: 100%;
  justify-content: center;
}
@media screen and (min-width: 1001px) {
  #way-to-film .content-hyperlink {
    justify-content: left;
  }
}

#about-us {
  padding-block: 0 10dvh;
  padding-inline: 8.3333333333dvw;
}
@media screen and (min-width: 1001px) {
  #about-us {
    padding-inline: 16.6666666667dvw;
  }
}
#about-us .portrait-outer {
  margin-left: 8.3333333333dvw;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: 1fr 1fr;
  gap: 2rem 4.1666666667dvw;
}
@media screen and (min-width: 1001px) {
  #about-us .portrait-outer {
    margin-left: 0;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1fr;
  }
}
#about-us .portrait-inner {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem 1rem;
}
#about-us .portrait-inner img {
  width: 66.6%;
  height: auto;
}
@media screen and (min-width: 601px) {
  #about-us .portrait-inner {
    grid-template-columns: 4fr 5fr;
    grid-template-areas: "image text";
  }
  #about-us .portrait-inner img {
    width: 100%;
  }
}
@media screen and (min-width: 601px) and (max-width: 1000px) {
  #about-us .portrait-last {
    grid-template-columns: 5fr 4fr;
    grid-template-areas: "text image";
  }
  #about-us .portrait-last .content-image {
    grid-area: image;
  }
  #about-us .portrait-last .content-text {
    grid-area: text;
  }
}

#FAQ,
#Subpage-CTA {
  padding-block: 6.6666666667dvh;
  padding-inline: 8.3333333333dvw;
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto;
  gap: 1.5rem 0;
  align-items: center;
  background-color: hsl(142, 33%, 18%);
}
@media screen and (min-width: 601px) {
  #FAQ,
  #Subpage-CTA {
    padding-inline: 16.6666666667dvw;
  }
}
@media screen and (min-width: 601px) {
  #FAQ,
  #Subpage-CTA {
    grid-template-columns: max-content auto max-content;
  }
}
#FAQ .content-headline,
#Subpage-CTA .content-headline {
  color: rgb(255, 255, 255);
  padding: 0;
}
#FAQ .arrow,
#Subpage-CTA .arrow {
  display: none;
}
@media screen and (min-width: 601px) {
  #FAQ .arrow,
  #Subpage-CTA .arrow {
    display: block;
    background: no-repeat url(../../files/theme/css/background/faq-arrow.svg);
    background-position: center center;
    background-size: 90% auto;
  }
}
@media screen and (min-width: 601px) {
  #FAQ .justify-right,
  #Subpage-CTA .justify-right {
    justify-self: right;
  }
}

#Subpage-CTA {
  background-color: hsl(68, 59%, 83%);
}
#Subpage-CTA .content-headline {
  color: hsl(142, 33%, 18%);
}
@media screen and (min-width: 601px) {
  #Subpage-CTA .arrow {
    background-image: url(../../files/theme/css/background/cta-arrow.svg);
  }
}

#form-main {
  padding-block: 10dvh;
  padding-inline: 8.3333333333dvw;
  background-color: hsl(68, 59%, 83%);
}
@media screen and (min-width: 1001px) {
  #form-main {
    padding-inline: 16.6666666667dvw;
  }
}
#form-main .ce_form.block {
  overflow: visible;
}
#form-main form {
  padding-left: 8.3333333333dvw;
}
#form-main form div.widget {
  margin-bottom: 1rem;
}
@media screen and (min-width: 1001px) {
  #form-main form {
    padding-left: 0;
  }
  #form-main form div.widget {
    margin-bottom: 0;
  }
  #form-main form .formbody {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1rem 4.1666666667dvw;
  }
}

/* 
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

    Vitafilm 2025 on Contao
    04.06.2025 - 10.00

    +++ SUBPAGES +++

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
*/
.article,
.article-half {
  padding-block: 5dvh 5dvh;
  padding-inline: 8.3333333333dvw;
}
@media screen and (min-width: 1001px) {
  .article,
  .article-half {
    padding-block: 5dvh 10dvh;
    padding-inline: 16.6666666667dvw;
  }
}
.article div.content-text.article-intro,
.article-half div.content-text.article-intro {
  margin-bottom: 10dvh;
}
.article div.content-text.article-intro .rte,
.article-half div.content-text.article-intro .rte {
  padding-inline: 8.3333333333dvw 0;
}
@media screen and (min-width: 1001px) {
  .article div.content-text.article-intro .rte,
  .article-half div.content-text.article-intro .rte {
    padding-inline: 0;
    -moz-columns: 2 auto;
         columns: 2 auto;
    -moz-column-gap: 2rem;
         column-gap: 2rem;
  }
}

.article-half {
  padding-inline: 8.3333333333dvw;
}
@media screen and (min-width: 1001px) {
  .article-half .content-text.article-intro {
    padding-inline: 8.3333333333dvw;
  }
}

#referenzen .filmset {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto;
  gap: 1rem 4.1666666667dvw;
}
@media screen and (min-width: 1001px) {
  #referenzen .filmset {
    grid-template-columns: 5fr 2.5fr;
  }
}
#referenzen .filmset .content-text {
  align-self: center;
}
#referenzen .filmset-reverse {
  margin-top: 5dvh;
}
@media screen and (min-width: 1001px) {
  #referenzen .filmset-reverse {
    margin-top: 10dvh;
    grid-template-columns: 2.5fr 5fr;
  }
}
@media screen and (max-width: 1000px) {
  #referenzen .filmset-reverse .rev-text {
    grid-row: 2/3;
  }
}
@media screen and (max-width: 1000px) {
  #referenzen .filmset-reverse .rev-video {
    grid-row: 1/2;
  }
}
#referenzen .head-sub h3 {
  padding-bottom: 0.333rem;
}
#referenzen .content-youtube figure {
  border: 0.75rem solid hsl(68, 59%, 83%);
  border-radius: 1rem;
}
#referenzen .content-youtube figure, #referenzen .content-youtube img {
  width: 100%;
  height: auto;
}
#referenzen .content-youtube button {
  width: 100%;
  font: normal normal 500 100%/140% "SourceSans", sans-serif;
  background-color: hsl(68, 59%, 83%);
  font-size: 0.8rem;
  text-align: center;
}
#referenzen .package {
  display: inline-block;
  background-color: hsl(68, 59%, 83%);
  color: rgb(0, 0, 0);
  border-radius: 0.25rem;
  padding: 0.1rem 0.25rem;
  font-size: 0.8rem;
  font-weight: 500;
}

#filmpakete {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto;
  -moz-column-gap: 2rem;
       column-gap: 2rem;
  row-gap: 2rem;
}
@media screen and (min-width: 1001px) {
  #filmpakete {
    padding-inline: 4.1666666667dvw;
  }
}
@media screen and (min-width: 1001px) {
  #filmpakete {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
#filmpakete .filmpaket-solo {
  background-color: hsl(68, 59%, 83%);
  border-radius: 1rem;
  box-shadow: 0.1rem 0.1rem 1rem -0.2rem rgba(0, 0, 0, 0.3);
  padding-top: 1rem;
  padding-bottom: 2rem;
  padding-inline: 1rem;
}
@media screen and (min-width: 601px) {
  #filmpakete .filmpaket-solo {
    padding-block: 1.5rem;
    padding-inline: 1.5rem;
  }
}
#filmpakete .filmpaket-solo .solo-title-price {
  padding-bottom: 0.75rem;
  border-bottom: thin dotted hsl(142, 33%, 18%);
  margin-bottom: 1.5rem;
}
#filmpakete .filmpaket-solo .solo-title-price h3, #filmpakete .filmpaket-solo .solo-title-price h4, #filmpakete .filmpaket-solo .solo-title-price h5 {
  font-size: 1.5rem;
  color: hsl(142, 33%, 18%);
  text-align: center;
}
#filmpakete .filmpaket-solo .solo-title-price .rte p {
  text-align: center;
  font-size: 1.5rem;
}
#filmpakete .filmpaket-solo .content-list ul {
  list-style-type: disc;
  list-style-position: outside;
  padding-left: 1rem;
}
#filmpakete .filmpaket-solo-trans {
  background-color: transparent;
}

#filmdetails .detailvergleich {
  overflow: auto;
  min-width: 300px;
}
#filmdetails .detailvergleich table {
  width: 100%;
}
#filmdetails .detailvergleich table tr {
  border: none;
}
#filmdetails .detailvergleich table td {
  padding-block: 0.25rem;
}
#filmdetails .detailvergleich .colored {
  background-color: hsl(68, 59%, 93%);
}
#filmdetails .detailvergleich .row-label {
  font-style: italic;
}
#filmdetails .detailvergleich .tb-section {
  font-weight: 500;
  color: hsl(142, 33%, 18%);
}
#filmdetails .detailvergleich .tb-footer {
  padding-top: 1rem;
  font-size: 0.8rem;
  line-height: 125%;
}

#filmauftrag .bigform {
  margin-inline: 0;
  padding-inline: 4.1666666667dvw;
  background-color: hsl(68, 59%, 83%);
  border-radius: 0.5rem;
}
@media screen and (min-width: 1001px) {
  #filmauftrag .bigform {
    margin-inline: 4.1666666667dvw;
  }
}
#filmauftrag .bigform form {
  margin: 0;
  padding: 1rem 0;
}
@media screen and (min-width: 1001px) {
  #filmauftrag .bigform form {
    padding: 1.5rem 0;
  }
}
#filmauftrag .bigform .formbody {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 1rem 4.1666666667dvw;
}
@media screen and (max-width: 1000px) {
  #filmauftrag .bigform .formbody .fullwidth-small {
    grid-column: span 2;
  }
}
#filmauftrag .bigform .formbody .fullwidth {
  grid-column: span 2;
}
#filmauftrag .explanation {
  align-self: center;
}
#filmauftrag .explanation p.small {
  margin-bottom: 0;
}
#filmauftrag .smallprint {
  margin-top: 5dvh;
  padding-inline: 4.1666666667dvw;
}
@media screen and (min-width: 1001px) {
  #filmauftrag .smallprint {
    margin-top: 10dvh;
    padding-inline: 8.3333333333dvw;
  }
}

#more-videos .video-grid {
  margin-top: 5dvh;
  display: grid;
  grid-template-columns: 1fr;
  gap: 1rem 2rem;
}
@media screen and (min-width: 601px) {
  #more-videos .video-grid {
    grid-template-columns: 1fr 1fr;
    gap: 5dvh 4.1666666667dvw;
  }
}

#ablauf {
  padding-bottom: 5dvh;
}
#ablauf .ablauf-details {
  margin-bottom: 10dvh;
}
#ablauf .ablauf-details .content-text {
  margin-bottom: 2rem;
}
#ablauf .ablauf-details .content-text:last-of-type {
  margin-bottom: 0;
}
#ablauf .ablauf-details .content-text h4 {
  position: relative;
  padding-left: 1.5rem;
  background: no-repeat url(../../files/theme/css/icons/num-1.svg);
  background-size: 1rem auto;
  background-position: left 0.1rem;
}
#ablauf .ablauf-details .content-text h4::after {
  position: absolute;
  left: 1.5rem;
  bottom: 0.25rem;
  display: inline-block;
  width: 2rem;
  height: 0.5rem;
  border-bottom: 2px solid hsl(68, 59%, 83%);
  content: "";
}
#ablauf .ablauf-details .content-text .rte {
  padding-left: 1.5rem;
}
#ablauf .ablauf-details .two h4 {
  background-image: url(../../files/theme/css/icons/num-2.svg);
}
#ablauf .ablauf-details .three h4 {
  background-image: url(../../files/theme/css/icons/num-3.svg);
}
#ablauf .ablauf-details .four h4 {
  background-image: url(../../files/theme/css/icons/num-4.svg);
}
#ablauf .ablauf-details .five h4 {
  background-image: url(../../files/theme/css/icons/num-5.svg);
}
#ablauf .ablauf-details .six h4 {
  background-image: url(../../files/theme/css/icons/num-6.svg);
}

#faq-wrapper {
  margin-bottom: 5dvh;
}
#faq-wrapper h4.handorgel__header {
  padding: 0;
}
#faq-wrapper h4.handorgel__header button {
  box-shadow: none;
  padding-block: 0.75rem;
  padding-inline: 0.5rem;
  border-left: none;
  border-right: none;
  border-top-color: hsl(142, 33%, 18%);
  background: no-repeat url(../../files/theme/css/icons/accordeon-plus.svg);
  background-position: right center;
  background-size: auto 1rem;
}
#faq-wrapper h4.handorgel__header--opened button {
  background-image: url(../../files/theme/css/icons/accordeon-minus.svg);
}
#faq-wrapper .handorgel__content {
  background: none;
  border: none;
}
#faq-wrapper .handorgel__content__inner {
  padding-block: 0 0.5rem;
  padding-inline: 0.5rem;
}

@media screen and (max-width: 1000px) {
  #filmteam .vita {
    padding-left: 8.3333333333dvw;
  }
}
#filmteam .vita h2, #filmteam .vita h3, #filmteam .vita h4 {
  display: inline-block;
}
#filmteam .vita figure, #filmteam .vita img {
  width: 100%;
  height: auto;
  margin-bottom: 1rem;
}
@media screen and (min-width: 1001px) {
  #filmteam .vita figure, #filmteam .vita img {
    width: 41.6666666667dvw;
    margin-bottom: 0;
  }
}
#filmteam .vita-top {
  margin-bottom: 10dvh;
}
@media screen and (min-width: 1001px) {
  #filmteam .vita-top {
    margin-bottom: 15dvh;
  }
}
#filmteam .img-right img {
  float: right;
  shape-outside: circle(50%);
  margin-left: 2rem;
}
#filmteam .img-left img {
  float: left;
  shape-outside: circle(50%);
  margin-right: 2rem;
}

#impressum h5 {
  padding: 1rem 0 0 8.3333333333dvw;
}
@media screen and (min-width: 1001px) {
  #impressum h5 {
    padding: 1rem 0 0 0;
  }
}
#impressum .content-text .rte {
  padding-inline: 8.3333333333dvw 0;
}
@media screen and (min-width: 1001px) {
  #impressum .content-text .rte {
    padding-inline: 0;
    -moz-columns: 2 auto;
         columns: 2 auto;
    -moz-column-gap: 2rem;
         column-gap: 2rem;
  }
}
#impressum .kontaktdaten .rte {
  -moz-columns: 1;
       columns: 1;
}

/* 
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

    Nulldrei 2024 on Contao
    13.09.2024 - 12.00

    +++ PAGE NOT FOUND +++

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
*/
.errorpage {
  margin: 15dvh 8.3333333333dvw 10dvh 0;
  display: grid;
  grid-template-columns: 1fr;
}
@media screen and (min-width: 601px) {
  .errorpage {
    margin: 15dvh 0 10dvh 0;
    grid-template-columns: 4fr 8fr;
  }
}
.errorpage .content-headline {
  background-color: hsl(142, 33%, 18%);
  border-bottom: 10dvh solid hsl(142, 33%, 18%);
  padding: 10dvh 8.3333333333dvw 0 8.3333333333dvw;
  text-align: right;
  line-height: 90%;
}
@media screen and (min-width: 601px) {
  .errorpage .content-headline {
    border-bottom: 10dvh solid rgb(255, 255, 255);
  }
}
.errorpage .content-text {
  padding: 5dvh 8.3333333333dvw;
}
@media screen and (min-width: 601px) {
  .errorpage .content-text {
    padding: 10dvh 16.6666666667dvw 10dvh 8.3333333333dvw;
  }
}
.errorpage .content-text strong {
  color: rgb(0, 0, 0);
}
.errorpage .content-text ul {
  list-style: square inside;
}
.errorpage .content-text ul a {
  text-decoration: none;
}
.errorpage .content-text ul a:hover {
  text-decoration: underline;
  text-decoration-color: hsl(68, 59%, 83%);
}
@media screen and (max-width: 600px) {
  .errorpage .content-text li {
    padding-bottom: 0.5rem;
  }
}
.errorpage .content-text li::marker {
  color: hsl(68, 59%, 83%);
}

/* 
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

    Vitafilm 2025 on Contao
    27.06.2024 - 12.00

    +++ UTILITY Classes +++

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
*/
.m-top-full {
  margin-top: 10dvh;
}

.m-top-half {
  margin-top: 5dvh;
}

.m-top-third {
  margin-top: 3.33dvh;
}

.m-top-quarter {
  margin-top: 2.5dvh;
}

.m-bottom-full {
  margin-bottom: 10dvh;
}

.m-bottom-half {
  margin-bottom: 5dvh;
}

.m-bottom-third {
  margin-bottom: 3.33dvh;
}

.m-bottom-quarter {
  margin-bottom: 2.5dvh;
}

.p-top-full {
  padding-top: 8.3333333333dvw;
}

.p-top-half {
  padding-top: 4.1666666667dvw;
}

.p-top-third {
  padding-top: 2.775dvw;
}

.p-top-quarter {
  padding-top: 2.0833333333dvw;
}

.p-inline-full {
  padding-inline: 8.3333333333dvw;
}

.p-inline-half {
  padding-inline: 4.1666666667dvw;
}/*# sourceMappingURL=style.css.map */
