
/* =============================================================================
   Typography
   ========================================================================== */

/* ROOT TEXT */
html           { font-size: 21px; }

/* HEADLINES */
h1             { font-size: 3.5rem; }                          /* Seitentitel */ 
h2             { font-size: 2.0rem; }                          /* Rubrikentitel */
h3             { font-size: 1.4rem; padding-bottom: 5px; }     /* Absatztitel */ 

/* TEXTE */
.ch_fact       { font-size: 3.5rem; }  /* Fact, Number */




/* =============================================================================
   Links
   ========================================================================== */
  
/* NAVIGATION */
.linknav          { font-size: 0.8rem; line-height: 1.2; text-decoration: unset; }  
.linknav.active   { padding-bottom: 2px; }




/* =============================================================================
   Other Elements
   ========================================================================== */







/* =============================================================================
   Embedded Content
   ========================================================================== */



/*-------------------------------*/
/*          HERO MASTER          */
/*-------------------------------*/

.hero {
   padding-top:      12vh !important;
}
   .hero .border {
      height:     84vh;
   }


   /*-------------------------------*/
   /*           HERO 1-2            */
   /*        IMAGE + TEXTE          */
   /*-------------------------------*/

   .hero.template-1-2 .border.line1 {
   }
      .hero.template-1-2 .txt {
      }
      .hero.template-1-2 .image,
      .hero.template-text .image  {
         height:     84vh;    
      }


   /*-------------------------------*/
   /*       HERO 1-3 (Projekte)     */
   /*-------------------------------*/

   /* LINES */
   .hero.template-1-3 .border.line2 {
      /* left:       calc(66.66vw - 0.4vw);*/
      left: 66.3%;
   }




/*-------------------------------*/
/*       TEXT COL 1 (1-2)        */
/*-------------------------------*/

.txt-1col-1-2 .box { 
   grid-column: span 6 !important;
}




/*-------------------------------*/
/*      TEASER GROUP (1-3)       */
/*-------------------------------*/

.teaser-group-3 { }
      /* LINE */
      .teaser-group-3 .teaser hr  {
         margin-bottom:    15px;
      }





/*-------------------------------*/
/*          ACCORDION            */
/*-------------------------------*/

.accordions {  }
   .accordions .acc { 
      border-top: 2px solid black;
   }
      /* Füge nur der letzten Box eine untere Linie hinzu */
      .accordions .acc:last-child {
          border-bottom: 2px solid black;
      }

      .accordions .acc li {
         padding-bottom: 0;
      }
      /* BOX */
      .accordions .acc_ctrl { 
         padding: 3% 0 2% 0;
      }

         /* ICON */
         .accordions .acc_ctrl:before,
         .accordions .acc_ctrl:after{
            margin-right:  2px;
            height:        2px;
            top:           50%;
            width:         22px;

         }
      /* PANEL */
      .accordions .acc_panel {
         padding: 0 0 5% 0;
      }










/* =============================================================================
   CHANGE: BASE and ADDONS
   ========================================================================== */




/*-------------------------------*/
/*      GRID: 3-SPALTIG          */
/*      GRID: 8-SPALTIG          */
/*-------------------------------*/

/* GRID  */
.grid-8,
.grid-3 {  }


/* BLOC GAPS */
.gap-0-25-top     { padding-top:     10px; }
.gap-0-25-bottom  { padding-bottom:  10px; }
.gap-0-5-top      { padding-top:     20px; }
.gap-0-5-bottom   { padding-bottom:  20px; }
.gap-1-top        { padding-top:     30px; }
.gap-1-bottom     { padding-bottom:  30px; }
.gap-2-top        { padding-top:     60px; }
.gap-2-bottom     { padding-bottom:  60px; }
.gap-3-top        { padding-top:     90px; }
.gap-3-bottom     { padding-bottom:  90px; }
.gap-4-top        { padding-top:    120px; }
.gap-4-bottom     { padding-bottom: 120px; }






/*-------------------------------*/
/*           BUTTONS            */
/*-------------------------------*/


/* BUTTON DEFAULT */
button {
   gap:  12px;
}

   /* ARROW IN CIRCLE */
   button .arrow {
      width:            42px;
      height:           42px;
      transform:        translateY(-8px); /* feintuning */
      font-size:        1.2rem;
   }
      button .arrow::before{
         top:     7px; /* feintuning */
      }

   /* ARROW WITHOUT CIRCLE */
   button .arrow-plain {   
      transform:        translateY(-9px); /* feintuning */
   }
      button .arrow-plain::before {
         top:     4px; /* feintuning */
      }





/*-------------------------------*/
/*       OWL SLIDESHOW           */
/*-------------------------------*/

/* SLIDE  */
.owl-theme .bg-image{
   height:               84vh !important;
}
   .owl-theme .owl-dots .owl-dot span {
      width:          45px !important;
      height:         3px !important;
      margin-left:    15px !important;
   }




