@charset "utf-8";

/* ------- color codes -------- *//*
sehr hellgraue Linien (Fuss)    #cecece;
helle Goldfarben (Button-Rand)  #bcafa6;
dunkere Foldfarbe (Logo unten)  #a9a6a1;

   
/* montserrat-300 - latin */
@font-face {
  font-display: swap;
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 300;
  src: url('../Fonts/montserrat-v31-latin-300.woff2') format('woff2'),
       url('../Fonts/montserrat-v31-latin-300.ttf') format('truetype');
  font-display: swap;
}

/* montserrat-regular - latin */
@font-face {
  font-display: swap;
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  src: url('../Fonts/montserrat-v31-latin-regular.woff2') format('woff2'),
       url('../Fonts/montserrat-v31-latin-regular.ttf') format('truetype');
  font-display: swap;
}

/* montserrat-500 - latin */
@font-face {
  font-display: swap;
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 500;
  src: url('../Fonts/montserrat-v31-latin-500.woff2') format('woff2'),
       url('../Fonts/montserrat-v31-latin-500.ttf') format('truetype');
  font-display: swap;
}

/* montserrat-600 - latin */
@font-face {
  font-display: swap;
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 600;
  src: url('../Fonts/montserrat-v31-latin-600.woff2') format('woff2'),
       url('../Fonts/montserrat-v31-latin-600.ttf') format('truetype');
  font-display: swap;
}

/* montserrat-700 - latin */
@font-face {
  font-display: swap;
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 700;
  src: url('../Fonts/montserrat-v31-latin-700.woff2') format('woff2'),
       url('../Fonts/montserrat-v31-latin-700.ttf') format('truetype');
  font-display: swap;
}

/* montserrat-800 - latin */
@font-face {
  font-display: swap;
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 800;
  src: url('../Fonts/montserrat-v31-latin-800.woff2') format('woff2'),
       url('../Fonts/montserrat-v31-latin-800.ttf') format('truetype');
  font-display: swap;
}


/* --- disable all spacing and margins, by default --- */
* { margin:0px; padding:0px; border:0px none; }

/* --- disable browser highlighting for links --- */
a:active, a:focus { outline-width:0; outline-style:none; outline-color:currentcolor; }

/* div.csc-textpic { position:relative; top:0px; overflow:hidden; }
div.csc-textpic .csc-textpic-imagewrap img { border:none; display:block; }
div.csc-textpic div.csc-textpic-imagewrap .csc-textpic-image { margin:0; padding:0; border:none; } */

/* --- often used styles in extra class --- */
.rehi { position:relative; overflow:hidden;  }
.abhi { position:absolute; overflow:hidden;  }
.fihi { position:fixed;    overflow:hidden;  }
.revi { position:relative; overflow:visible; }
.abvi { position:absolute; overflow:visible; }
.fivi { position:fixed;    overflow:visible; }

.vishid { visibility:hidden; }
.hide   { display:none; }
.clear  { clear:both; }
.fade   { opacity:0; transition:opacity 0.3s ease-in-out; }
.nobr   { white-space:nowrap; }

/* --- all breakpoints --- */
@media screen and (min-width:1281px)                        {  }
@media screen and (min-width:1001px) and (max-width:1280px) {  }
@media screen and (min-width:801px) and (max-width:1000px)  {  }
@media screen and (min-width:701px) and (max-width:800px)   {  }
@media screen and (min-width:601px) and (max-width:700px)   {  }
@media screen and (min-width:471px) and (max-width:600px)   {  }
@media screen and (max-width:470px)                         {  }

/* ======================================================================================================================================= */
/* ===========================================       Gemeinsame Styles für alle Viewports      =========================================== */
/* ======================================================================================================================================= */
 
/* ------------------------------------------------- Styles fuer mehrfach verwendete Systemklassen ------------------------- */
.inner     { width:100%; box-sizing:border-box; }
/* .innerHead { width:100%; box-sizing:border-box; transition:height 0.2 ease-in-out; } */
.innerBody { width:100%; box-sizing:border-box; margin:0 auto 0; max-width:800px; }

@media screen and (min-width:1281px)                        { .inner { max-width:1200px; margin:0 auto 0; } }
@media screen and (min-width:1001px) and (max-width:1280px) { .inner { padding:0 40px 0; } }
@media screen and (min-width:701px) and (max-width:1000px)  { .inner { padding:0 30px 0; } }
@media screen and (min-width:471px) and (max-width:700px)   { .inner { padding:0 20px 0; } }
@media screen and (max-width:470px)                         { .inner { padding:0 10px 0; } }


/* ------------------------------------------------- Styles fuer Positionierung der Grundbloecke ------------------------- */
html, body { background-color:#fff; }

#frameSite { width:100%; z-index:1; }

/*header*/
#frameBooking  { left:0; top:0; width:100%; height:34px;  background-color:#bcafa6; border-bottom:1px solid #cecece; z-index:91; } 
#booking       { width:100%; height:100%; }
#bookingInner  { height:26px; width:auto; left:50%; top:50%; transform:translate(-50%, -50%);
                 box-sizing:border-box; padding:0 5px 0 30px; white-space:nowrap;
                 background:url(../Images/head_booking.png) no-repeat 3px 3px; background-size:20px 20px;
                 font-size:14px; line-height:26px; text-decoration:none; text-align:right; color:#fff; }
#bookingLink   { left:0; top:0; width:100%; height:100%; }
#bookingLink a { display:block; position:absolute; left:0; top:0; width:100%; height:100%; overflow:hidden; }

@media screen and (min-width:401px) { #bookingInner .showMobile { display:none; } }
@media screen and (max-width:400px) { #bookingInner .showDesk   { display:none; } }

#frameHeaderPlaceholder { width:100%; margin-top:33px; }

#headerTag    { width:100%; height:100%; }

#frameHeader   { width:100%; left:0; background-color:#fff; border-bottom:1px solid #fff; transition:all 0.2 ease-in-out; z-index:91; }
#header        { height:100%; }
#headerInner   { width:100%; height:100%; }
#logoTop       { left:50%; top:50%; height:82.1%; width:auto; transform:translate(-50%, -50%); }
#logoTop a     { display:block; height:100%; width:auto; margin:0; padding:0; outline-width:0; outline-style:none; outline-color:currentcolor; }
#logoTop img   { height:100%; width:auto; }
#iconContact   { right:0; top:50%; height:40px; width:40px; transform:translate(0, -50%); }
#iconBasket    { right:60px; top:50%; height:40px; width:40px; transform:translate(0, -50%); }
.iconsHead     { width:24px; height:24px; margin:8px; }
.iconsHead a   { display:block; position: relative; width:100%; height:100%; overflow:hidden; }
.iconsHead img { width:100%; height:auto; }

#burger       { left:0; top:50%; height:40px; width:40px; transform:translate(0, -50%); cursor:pointer; }
#burger .b    { right:5px; width:30px; height:1px; background-color:#000; }
#burger .top  { top:13px; }
#burger .cen  { top:20px; }
#burger .bot  { top:27px; }

#frameHeader.headBorder { border-bottom:1px solid #cecece; }

@media screen and (min-width:1281px) {
  #frameHeader { height:140px; }
  #frameHeaderPlaceholder { height:140px; }
}
@media screen and (min-width:1001px) and (max-width:1280px) {
  #frameHeader { height:120px; }
  #frameHeaderPlaceholder { height:120px; }
  #iconBasket { right:50px; }
}
@media screen and (min-width:601px) and (max-width:1000px) {
  #frameHeader { height:100px; }
  #frameHeaderPlaceholder { height:100px; }
  #iconBasket { right:40px; }
}
@media screen and (max-width:600px) {
  #frameHeader { height:80px; height:100px; }
  #frameHeaderPlaceholder { height:80px; height:100px; }
  #iconContact   { right:-5px; }
  #iconBasket { right:35px; }
}
@media screen and (max-width:370px) {
  #logoTop { max-height:70%; }
}

#maskGrey        { left:0; top:0; width:0; height:100%; cursor:pointer; background-color:rgba(0,0,0,0); transition:background-color 0.2s ease-out; z-index:95; }
#maskGrey.active { width:100%; }
#maskGrey.grey   { background-color:rgba(0,0,0,0.5); transition: background-color 0.2s ease-out; }

#mainNavDrawer        { left:0px; top:0px; width:360px; height:100vh; background-color:#fff; z-index:98;
                        transform:translate(-361px, 0); transition:all 0.2s ease-in; }
#mainNavDrawer.active { transform:translate(0px, 0); transition: all 0.2s 0.1s ease-out; }
                        /* Wenn Umbau auf Sliden: z-index 97 und 97 freigehalten */

/*content*/
#frameContent { width:100%; }
#mainTag      {  }

/*footer*/
#frameFooter         { width:100%; }
#footer              { width:100%; }
#footerTag           { display:block; position:relative; width:auto; height:auto; overflow:hidden; }
#footerLogo          { width:100%; padding:1em 0 3em; }
#footerLogoInner     { width:150px; height:128px; margin:0 auto 0; }
#footerLogoInner img { width:100%; height:auto; }
#footerBlocks        { width:100%; margin-top:20px; padding:40px 0 40px; border-top:2px solid #cecece; }

.footerLeftBlockTitle { font-weight:600; text-transform:uppercase; }
.footerLeftBlockText  {  }

#footerLeft          { float:left; width:23%; }
.footerLeftItem      { width:100%; font-size:14px; line-height:28px; text-decoration:none; color:#000; }
.footerLeftAddress   { width:100%; padding-top:6px; }
.footerLeftAddress a { text-decoration:none; color:#000; font-weight:400; padding-right:18px;
                       background:url(../Images/arrow-top-right-24.svg) no-repeat right top; background-size:20px 20px; }
.footerLeftNumbers   { width:100%; padding-top:16px; }
.footerLeftPhone     { width:100%;  }
.footerLeftPhone a   { text-decoration:none; color:#000; font-weight:400; padding-right:18px;
                       background:url(../Images/arrow-top-right-24.svg) no-repeat right top; background-size:20px 20px; }
.footerLeftMobile    { width:100%; }
.footerLeftDevice    { float:left; width:60px; font-weight:600; }
.footerLeftNumber    { float:left; }
 
.a-widerruf { display:inline-block; position:relative; width:auto; padding:0 20px; margin:0 0 20px; overflow:hidden;       display:none;
              font-size:14px; line-height:39px; text-align: center; text-decoration:none; font-weight:500; color:#fff;
			  background-color:#847973; border:1px solid:#847973;
			  transition:background-color 0.7s ease-in-out; }
.a-widerruf:hover { background-color:#9c958f; }

.a-widerruf::after { content:''; position:absolute; top:0; left:-100%; width:100%; height:100%;
                     background:linear-gradient(to right, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0.2) 40%, rgba(255, 255, 255, 0.2) 60%, rgba(255, 255, 255, 0) 100% );
					 transform: skewX(-10deg); transition: none; }
			  
.a-widerruf:hover::after { animation: shine 1s; /* Startet die Animation bei Hover */ }

@keyframes shine {
  0% {
    left: 150%;
  }
  100% {
    left: -100%; /* Endposition: Außerhalb rechts */
  }
}
 
.footerLeftPhone a:hover,
.footerLeftAddress a:hover { text-decoration:underline; }
 
.footerLeftItem:first-child { min-height:220px; }
.footerLeftItem:last-child  { padding-top:5px; }

#navSocial { width:100%; padding-bottom:20px; transform:translate(-6px,0); }
#navLinks  { width:100%; transform:translate(-10px,0); }

#footerRight     { float:left; width:77%; }
.footerRightItem { float:left; min-height:220px; }

.footerBlockTitle        { text-transform:uppercase; color:#000; } /* accordionHeader */
.footerBlockTitleInner   {  }
.blockTitleText          {  }
.blockTitlePlus          {  } 
.footerBlockText         {  } /* accordionBody no */
.footerBlockTextAnimated {  } /* no */
.footerBlockTextInner    {  } 
.footerBlockTextInner    { font-size:13px; line-height:32px; color:#000; }
.footerBlockTextInner a  { text-decoration:none; color:#000; }

#footerLine      { width:100%; padding:20px 0 20px; border-top:2px solid #cecece; }
#footerLineLeft  { font-size:14px; line-height:28px; color:#000; }
#footerLineRight {  }

@media screen and (min-width:601px) {
 .footerBlockTitle        { padding:5px 0 8px; font-size:13px; line-height:20px; font-weight:600; }
 .footerBlockTitleInner   {  }
 .blockTitleText          {  }
 .blockTitleChevron       { display:none; }
 .footerBlockText         { position:relative; width:100%; overflow:hidden; }
 .footerBlockTextAnimated { position:relative; width:100%; overflow:hidden; }
 .footerBlockTextInner    { position:relative; width:100%; overflow:hidden; } 
}
@media screen and (max-width:600px) {
 .footerBlockTitle        { width:100%; text-align:center; cursor:pointer; line-height:0; padding:0; font-size:16px; line-height:24px; font-weight:600; }
 .footerBlockTitleInner   { display:inline-block; width:auto; }
 .blockTitleText          { width:100%; box-sizing:border-box; padding-right:30px; }
 .blockTitlePlus          { display:block; position:absolute; right:0; top:4px; width:15px; height:15px; cursor:pointer; overflow:hidden; z-index:2; } 
 .blockTitlePlus .p       { background-color:#999; }
 .blockTitlePlus .one     { left:0; top:0; width:1px; height:15px; transform:translate(8px,0) rotate(0deg); }
 .blockTitlePlus .two     { left:0; top:7px; width:15px; height:1px; }
 .footerBlockText         { display:grid; grid-template-rows:0fr; position:relative; width:100%; overflow:hidden; transition: grid-template-rows 0.3s ease-in-out; }
 .footerBlockText.out     { grid-template-rows:1fr; transition: grid-template-rows 0.3s ease-in-out; }
 .footerBlockTextAnimated { min-height:0; transition: min-height 0.3s ease-in-out; }
 .footerBlockTextInner    { opacity:0; transition:opacity 0.4s ease-in-out 0s; padding-bottom:30px;
                            font-size:14px; line-height:28px; text-decoration:none; color:#000; }
 
 .footerBlockText.out .footerBlockTextInner { opacity:1; transition:opacity 0.3s ease-in-out 0.2s; }
 
 .footerBlockTitle .blockTitlePlus .one     { animation:footerPlusAni 0.3s ease-in-out forwards; }
 .footerBlockTitle.out .blockTitlePlus .one { animation:footerPlusAniOpen 0.3s ease-in-out forwards; }
 .footerBlockTitle .blockTitlePlus .two     { opacity:1;  transition: all 0.2s ease-in 0.1s; }
 .footerBlockTitle.out .blockTitlePlus .two { opacity:0;  transition: all 0.2s ease-out; }
}
@keyframes footerPlusAni {
 0%   { width:15px; height:1px; transform:translate(0,7px) rotate(0deg); }
 99%  { width:15px; height:1px; transform:translate(0,7px) rotate(-90deg); }
 100% { width:1px; height:15px; transform:translate(7px,0) rotate(0deg); }
}

@keyframes footerPlusAniOpen {
 0%   { width:1px; height:15px; transform:translate(7px,0) rotate(0deg); }
 99%  { width:1px; height:15px; transform:translate(7px,0) rotate(90deg); }
 100% { width:15px; height:1px; transform:translate(0,7px) rotate(0deg); }
}

@media screen and (min-width:1051px) {
  #footerLineLeft  { float:left; width:25%; }
  #footerLineRight { float:right; width:75%; }
}
@media screen and (min-width:801px) and (max-width:1050px) {
  #footerLineLeft  { width:100%; }
  #footerLineRight { width:100%; }
}
@media screen and (max-width:800px) {
  #footerLineLeft  { width:100%; text-align:center; }
  #footerLineRight { width:100%; text-align:center; }
}

@media screen and (min-width:1261px) {
  .footerRightItem:nth-child(1), .footerRightItem:nth-child(5) { width:30%; }
  .footerRightItem:nth-child(2), .footerRightItem:nth-child(6) { width:28%; }
  .footerRightItem:nth-child(3), .footerRightItem:nth-child(7) { width:26%; }
  .footerRightItem:nth-child(4)                                { width:16%; }
	
  .footerRightItem:nth-child(5),
  .footerRightItem:nth-child(6),
  .footerRightItem:nth-child(7) { min-height:160px; }  
}
@media screen and (min-width:1001px) and (max-width:1260px) {
  .footerRightItem:nth-child(1), .footerRightItem:nth-child(5) { width:32.5%; }
  .footerRightItem:nth-child(2), .footerRightItem:nth-child(6) { width:28%; }
  .footerRightItem:nth-child(3), .footerRightItem:nth-child(7) { width:24.5%; }
  .footerRightItem:nth-child(4)                                { width:15%; }
	
  .footerRightItem:nth-child(5),
  .footerRightItem:nth-child(6),
  .footerRightItem:nth-child(7) { min-height:140px; }  
}
@media screen and (min-width:801px) and (max-width:1000px) {
  #footerLeft { width:28%; }
  #footerRight { width:72%; }

  .footerRightItem:nth-child(1), .footerRightItem:nth-child(4) { width:39%; }
  .footerRightItem:nth-child(2), .footerRightItem:nth-child(5) { width:35%; }
  .footerRightItem:nth-child(3), .footerRightItem:nth-child(6) { width:26%; }
  .footerRightItem:nth-child(7)                                { width:26%; float:right; }

  .footerLeftItem:first-child,
  .footerRightItem:nth-child(1),
  .footerRightItem:nth-child(2),
  .footerRightItem:nth-child(3) { min-height:200px; } 
  .footerRightItem:nth-child(6) { min-height:140px; } 
}
@media screen and (min-width:601px) and (max-width:800px) {
  #footerLeft { width:100%; margin-bottom:20px; text-align:center; }
  #footerRight { width:100%; }
  .footerLeftItem:first-child { min-height:200px; }
  .footerLeftPhone
  .footerLeftMobile { text-align:center; }
  .footerLeftDevice  { display:inline-block; float:none; }
  .footerLeftNumber  { display:inline-block; float:none; }
  
  .footerRightItem:nth-child(1), .footerRightItem:nth-child(4) { width:39%; }
  .footerRightItem:nth-child(2), .footerRightItem:nth-child(5) { width:37%; }
  .footerRightItem:nth-child(3), .footerRightItem:nth-child(6) { width:24%; }
  .footerRightItem:nth-child(7)                                { width:24%; float:right; }

  .footerLeftItem:first-child,
  .footerRightItem:nth-child(1),
  .footerRightItem:nth-child(2),
  .footerRightItem:nth-child(3) { min-height:200px; } 
  .footerRightItem:nth-child(4),
  .footerRightItem:nth-child(5),
  .footerRightItem:nth-child(6),
  .footerRightItem:nth-child(7) { min-height:100px; } 
}
@media screen and (max-width:600px) {
  #footerLeft { width:100%; margin-bottom:20px; text-align:center; }
  #footerRight { width:100%; }
  .footerLeftItem:first-child { min-height:0; margin-bottom:30px; }
  .footerLeftPhone
  .footerLeftMobile { text-align:center; }
  .footerLeftDevice  { display:inline-block; float:none; }
  .footerLeftNumber  { display:inline-block; float:none; }
  
  .footerRightItem { width:100%; min-height:auto; text-align:center; margin-bottom:20px; }
}
  
 
/* ------------------------------------------------- Styles fuer die Top-Navigation  ------------------------------------------------ */
#mainNavDrawer {  } /* fihi */
                    /* Wenn Umbau auf Sliden: z-index 97 und 97 freigehalten */

#mainNavFrame { width:100%; height:100%; display:flex; flex-direction:column; }

#mainNavHead        { width:100%; height:72px; }
#mainNavClose       { right:27px; top:30px; height:30px; width:30px; cursor:pointer; z-index:99; }
#mainNavClose .c    { right:3px; top:15px; width:24px; height:1px; background-color:#999; }
#mainNavClose .down { transform:rotate(45deg); }
#mainNavClose .up   { transform:rotate(-45deg); }

#mainNav { flex:1; width:100%; overflow-x:hidden; overflow-y:auto; }

#mainNavFoot   { width:100%; height:80px; }
#accountLink   { margin:20px 30px 20px; height:40px; text-align:center; }
#accountLink a { display:inline-block; position:relative; width:auto; padding:0 35px 0 15px;
                 font-size:14px; line-height:38px; font-weight:500; text-decoration:none; text-transform:uppercase; letter-spacing:1px; color:#000;
                 background:url(../Images/arrow-top-right-24.svg) no-repeat right top; background-size:20px 20px;
                 border:1px solid #bcafa6; background-position: right 10px top 10px; }

#firstUlFrame { display:block; position:relative; width:100%; overflow:visible; transition:opacity 0.2s ease-in-out; }

li.firstLi { display:block; position:relative; list-style:none; width:100%; box-sizing:border-box; padding:0 28px 0; overflow:visible; }

span.firstButton         { display:block; position:relative; width:100%; overflow:hidden; }
span.firstButton.active  {  }
span.firstButton.current {  }
span.firstButton.open    {  }

span.firstButton:last-child { border-bottom:0 none; }

a.firstLink             { display:block; position:relative; width:100%; height:60px; box-sizing:border-box; padding:15px 0 15px; overflow:hidden;
                          font-size:14px; line-height:30px; font-weight:500; text-decoration:none; text-transform:uppercase; letter-spacing:1px; color:#000; }
span.firstText          { display:block; position:relative; width:100%; box-sizing:border-box; padding-right:20px; height:30px; overflow:hidden; }
span.firstChevron       { display:block; position:absolute; right:0; top:15px; width:16px; height:30px; color:#999; z-index:99; }
span.firstChevron .c    { display:block; position:absolute; left:0px; width:10px; height:1px; background-color:#999; overflow:hidden; }
span.firstChevron .down { top:9px; transform:rotate(60deg); }
span.firstChevron .up   { top:17px; transform:rotate(-60deg); }

span.firstButton.active a,
span.firstButton.current a { color:#000; }

@media screen and (min-width:751px) { 
  span.secondBackMask { display:block; position:absolute; width:0; height:0; background-color:#f9f8f6; overflow:hidden; }

  #firstUlFrame.mask span.secondBackMask { position:fixed; left:360px; top:0; width:360px; height:100vh; background-color:#f9f8f6; }

  li.firstLi        { background-color:transparent; transition:background-color 0.2s ease-in-out; }
  li.firstLi.hasOut { background-color:#f9f8f6; }
  
  li.firstLi span.firstButton                          { border-bottom:1px solid #cecece; transition:border-bottom 0.2s ease-in-out; }
  li.firstLi.hasOut span.firstButton                   { border-bottom:1px solid #fff; }
  li.firstLi:has(+ li.firstLi.hasOut) span.firstButton { border-bottom:1px solid #fff; }

  span.secondSheet      { position:fixed; left:360px; top:0; width:0; height:0; overflow:hidden; opacity:1; background-color:#f9f8f6; transition:width 0.2s ease-in-out; }
  span.secondSheetInner { display:block; position:absolute; right:0; top:0; width:360px; height:100%; box-sizing:border-box; padding:72px 28px 80px; } 

  span.firstButton.show+span.secondSheet { position:fixed; left:360px; top:0; width:0; height:100vh; }
  span.firstButton.out+span.secondSheet { position:fixed; left:360px; top:0; width:360px; height:100vh; }
  span.firstButton.movehard+span.secondSheet { transition:width 0s linear; }
  span.firstButton.fadein+span.secondSheet { opacity:1; transition:opacity 0.2s ease-in-out; }
  span.firstButton.fadeout+span.secondSheet { opacity:0; transition:opacity 0.2s ease-in-out; }
  span.firstButton.clear+span.secondSheet { opacity:0; }  
  
  span.secondTitle,
  span.secondTitleInner,
  span.secondTitleText,
  span.secondTitleChevron { display:none; }
  
  ul.secondUl { display:block; position:relative; width:100%; overflow:hidden; }
  li.secondLi { display:block; position:relative; width:100%; overflow:hidden; }
}
@media screen and (max-width:750px) {
  #firstUlFrame.navFade                 { opacity:0; }
  #firstUlFrame.shrink span.firstButton { height:0; padding:0; border:0 none;  }
  
  span.firstButton { border-bottom:1px solid #cecece; }
  
  span.secondSheet { display:block; position:relative; width:100%; height:0; overflow:hidden; }

  span.firstButton.open+span.secondSheet { height:auto; }
  
  span.secondTitle              { display:block; position:relative; width:100%; border-bottom:1px solid #cecece; overflow:hidden; cursor:pointer; }
  span.secondTitleInner         { display:block; position:relative; width:100%; height:60px; box-sizing:border-box; padding:15px 0 15px; overflow:hidden; cursor:pointer; }
  span.secondTitleText          { display:block; position:relative; width:100%; box-sizing:border-box; padding-left:20px; height:30px; overflow:hidden;
								  font-size:14px; line-height:30px; font-weight:500; text-decoration:none; text-transform:uppercase; letter-spacing:1px; color:#000; }
  span.secondTitleChevron       { display:block; position:absolute; left:0; top:15px; width:16px; height:30px; z-index:99; }
  span.secondTitleChevron .c    { display:block; position:absolute; left:0; width:10px; height:1px; background-color:#999; overflow:hidden; }
  span.secondTitleChevron .up   { top:11px; transform:rotate(-60deg); }
  span.secondTitleChevron .down { top:19px; transform:rotate(60deg); }
  
  ul.secondUl { display:block; position:relative; width:100%; overflow:hidden; }
  li.secondLi { display:block; position:relative; width:100%; overflow:hidden; }
}

span.secondButton         { display:block; position:relative; width:100%; overflow:hidden; } /* accordionHeader */
span.secondButton.border  { border-bottom:1px solid #cecece; }
span.secondButton.active  {  }
span.secondButton.current {  }

span.firstButton:last-child { border-bottom:0 none; }

a.secondLink         { display:block; position:relative; width:100%; height:60px; box-sizing:border-box; padding:15px 0 15px; overflow:hidden;
					   font-size:14px; line-height:30px; font-weight:500; text-decoration:none; text-transform:uppercase; letter-spacing:1px; color:#000; }
span.secondText      { display:block; position:relative; width:100%; box-sizing:border-box; padding-right:20px; height:30px; overflow:hidden; }

span.secondPlus      { display:block; position:absolute; right:0; top:19px; width:20px; height:20px; cursor:pointer; z-index:99; overflow:hidden; }
span.secondPlus .p   { display:block; position:absolute; background-color:#ccc; overflow:hidden; }
span.secondPlus .one { left:0; top:0; width:2px; height:20px; transform:translate(9px,0) rotate(0deg); }
span.secondPlus .two { left:0; top:9px; width:20px; height:2px; }

span.secondButton span.secondPlus .one      { animation:secondPlusHeight 0.6s ease-in-out forwards; }
span.secondButton.open span.secondPlus .one { animation:secondPlusHeightOpen 0.6s ease-in-out forwards; }
span.secondButton span.secondPlus .two      { opacity:1; transition:all 0.2s ease-in 0.1s; }
span.secondButton.open span.secondPlus .two { opacity:0; transition:all 0.2s ease-out; }

@keyframes secondPlusHeight {
 0%   { width:20px; height:2px; transform:translate(0,9px) rotate(0deg); }
 99%  { width:20px; height:2px; transform:translate(0,9px) rotate(-90deg); }
 100% { width:2px; height:20px; transform:translate(9px,0) rotate(0deg); }
}

@keyframes secondPlusHeightOpen {
 0%   { width:2px; height:20px; transform:translate(9px,0) rotate(0deg); }
 99%  { width:2px; height:20px; transform:translate(9px,0) rotate(90deg); }
 100% { width:20px; height:2px; transform:translate(0,9px) rotate(0deg); }
}

span.thirdMenuAccordion         { display:grid; grid-template-rows:0fr; position:relative; width:100%; overflow:hidden;
                                  transition: grid-template-rows 0.3s ease-in-out; border-bottom:1px solid #cecece; } /* accordionBody */
span.thirdMenuAccordion.open    { grid-template-rows:1fr;
                                  transition: grid-template-rows 0.3s ease-in-out; }
span.thirdMenuAccordionAnimated { min-height:0;
                                  transition: min-height 0.3s ease-in-out; }

ul.thirdUl                      { display:block; position:relative; width:100%; padding:5px 0 30px; overflow:hidden;
                                  opacity:0; transition:opacity 0.2s ease-in-out 0s; }
li.thridLi                      { display:block; position:relative; margin-left:10px; padding:0 0 0 20px; height:40px; border-left:1px solid #cecece; overflow:hidden; }
a.thirdLink                     { display:block; position:relative; width:100%; height:40px; overflow:hidden;
                                  font-size:14px; line-height:40px; font-weight:500; text-decoration:none; color:#000; }
a.thirdLink.active              {  }
a.thirdLink.current             {  }

span.thirdMenuAccordion.open ul.thirdUl { opacity:1; transition:opacity 0.3s ease-in-out 0.2s; }


/*Slider in Navigation*/
.secondMenuContent      { display:block; position:relative; width:100%; overflow:hidden; }
.secondMenuContentInner { display:block; position:relative; margin:40px 0 0 -5px; }
						  
.navslider        { width:100%; } /* swiper navsliderSwiper */
.navsliderWrapper {  } /* swiper-wrapper */

.navsliderItem       { display:flex;  width:90%; justify-content:center; align-items:center; } /* swiper-slide  */
.navsliderItemBorder { width:100%; box-sizing:border-box; padding:5px; }
.navsliderItemInner  { width:100%; }

.navsliderItemImage { width:100%; height:auto; }
.navsliderItemImage img,
.navsliderItemImage picture { display:block; position:relative; overflow:hidden; width:100%; height:auto; }

.navsliderItemText       { width:100%; }
.navsliderItemTextInner  { padding:10px 0 10px; }
.navsliderItemTextTitle  { font-size:15px; line-height:20px; font-weight:600; padding-bottom:10px; }
.navsliderItemTextBody   { font-size:14px; line-height:20px; }
.navsliderItemTextBody p { padding:0; }

.navsliderItemTitle       { left:0; bottom:0; width:100%; height:auto; min-height:50px; z-index:9;
                            background-image:linear-gradient(to bottom, rgba(0,0,0,0) 0%, rgba(0,0,0,0.4) 40%, rgba(0,0,0,0.7) 100%); }
.navsliderItemTitleInner  { text-align:center; width:100%; height:30px; }
.navsliderItemTitleArrow  { display:inline-block; position:relative; width:auto; padding-right:24px; margin:0 auto 0; overflow:hidden;
                            font-size:14px; line-height:30px; font-weight:500; letter-spacing:1px; text-transform:uppercase; color:#fff; 
                            background:url(../Images/arrow-right-24-white.svg) no-repeat right -4px top 2px; }
.navsliderItemTitleSpacer { width:100%; height:0; }

.navsliderItemTitleSpacer.top    { padding-bottom:20% }
.navsliderItemTitleSpacer.bottom { padding-bottom:8%; }


/* ---------------------------------------------------- Styles fuer die Fussnavigation --------------------------------------------------- */
#navFoot ul   { display:block; position:relative; float:right; text-align:right; width:auto; list-style:none; overflow:hidden; }
#navFoot li   { display:inline-block; position:relative; width:auto; padding-left:20px; padding-bottom:10px;
                font-size:14px; line-height:28px; text-decoration:none; color:#000; }
#navFoot li a { text-decoration:none; color:#000; }

#navFoot li:first-child { padding-left:0; }

@media screen and (min-width:801px) {
  #navFoot ul { text-align:right; }
}
@media screen and (max-width:800px) {
  #navFoot ul { text-align:center; }
}


/* ------------------------------------------------- Styles fuer die Social-Navigation im Fuss ------------------------------------------------ */
#navSocial ul     { float:left; width:auto; text-align:left; }
#navSocial li     { display:block; list-style:none; float:left; width:37px; height:37px; }
#navSocial li img { width:100%; height:auto; }

#navSocial .ico-facebook span.i  { background-image:url(../Images/sm_facebook.svg); }
#navSocial .ico-pinterest span.i { background-image:url(../Images/sm_pinterest.svg); }
#navSocial .ico-instagram span.i { background-image:url(../Images/sm_instagram.svg); }
#navSocial .ico-linkedin span.i  { background-image:url(../Images/sm_linkedin.svg); }
#navSocial .ico-youtube span.i   { background-image:url(../Images/sm_youtube.svg); }
#navSocial .ico-tiktok span.i    { background-image:url(../Images/sm_tiktok.svg); }
#navSocial .ico-whatsapp span.i  { background-image:url(../Images/sm_whatsapp.svg); }

#navSocial span.i { display:block; position:relative; width:37px; height:37px; background-repeat:no-repeat; background-position:4px 4px; background-size:29px 29px; overflow:hidden; }
#navSocial span.t { display:none; }

@media screen and (min-width:1261px) {
  #navSocial li { margin:0; }
}
@media screen and (min-width:1001px) and (max-width:1260px) {
  #navSocial li { margin:0 10px 10px 0; }
  #navSocial li:nth-child(4) { clear:both; }
}
@media screen and (min-width:801px) and (max-width:1000px) {
  #navSocial li { margin:0 10px 10px 0; }
  #navSocial li:nth-child(4) { clear:both; }
}
@media screen and (max-width:800px) {
  #navSocial ul { width:100%; text-align:center; }
  #navSocial li { display:inline-block; float:none; }
}



/* ---------------------------------------------------- Styles fuer die Breadcrump-Navigation --------------------------------------------------- */
#rootline                { width:100%;  }
#rootlineInner           {  }
#rootlineInner nav       { display:block; position:relative; width:auto; overflow:hidden; }
ul.breadcrumb            { display:block; position:relative; width:auto; margin:20px 0 25px; padding:0; line-height:0; text-align:center; overflow:hidden; } 
li.breadcrumbItem        { display:inline-block; width:auto; margin:0; padding:0 4px 0; font-size:14px; line-height:24px; color:#000; overflow:hidden; } 
li.breadcrumbItem a      { text-decoration:none; color:#000;  }
li.breadcrumbItem.slash  { color:#cecece;  } 
li.breadcrumbItem.active {  }

@media screen and (min-width:1001px)                       { ul.breadcrumb {  } }
@media screen and (min-width:701px) and (max-width:1000px) { ul.breadcrumb {  } }
@media screen and (max-width:700px)                        { ul.breadcrumb {  } }
 

/* ---------------------------------------------------------- Styles fuer die Schriften -------------------------------------------------------------- */
html { font-family: 'Montserrat', Arial, Helvetica, sans-serif; font-weight:400; line-height:1.5em; color:#000; }

.text p   { padding-bottom:0.8em; }

.text p a,
.text li a          { text-decoration:none; color:#000; padding-right:18px; font-weight:500;
                      background:url(../Images/arrow-top-right-24.svg) no-repeat right top; background-size:20px 20px; }

.text p a:hover,
.text li a:hover { text-decoration:underline; }

.text p a.a-button,
.text li a.a-button { display:inline-block; position:relative; width:auto; padding:10px 35px 10px 15px; margin:11px 1px 25px;
                      text-decoration:none; font-weight:500; color:#000;
                      background:url(../Images/arrow-top-right-24.svg) no-repeat right top; background-size:20px 20px;
                      border:1px solid #bcafa6; background-position: right 10px top 13px; }
.text p a.a-button:hover,
.text li a.a-button:hover { margin:10px 0px 24px; border:2px solid #bcafa6; text-decoration:none; } 

.text .linkRingButton a { display:inline-block; position:relative; width:auto; padding:5px 30px 5px 10px; margin:1px;
                          font-size:0.9em; font-weight:500; text-decoration:none; color:#000;
                          background:url(../Images/arrow-top-right-24.svg) no-repeat right top; background-size:20px 20px;
                          border:1px solid #bcafa6; background-position: right 10px top 10px; }
.text .linkRingButton a:hover { margin:0; border:2px solid #bcafa6; }

.text .textflowRight { text-align:right; }

.text b,
.text strong { font-weight:600; }

.lowercase { text-transform:lowercase; }

.text .p-claim {  }
.text .p-quote {  }

.image-caption,
.video-caption { font-weight:400; }

.text h1            { font-family: 'Montserrat', 'Times New Roman', Times, serif; margin:0; padding:0; font-weight:500; letter-spacing:-1px; }
.text h1.h1-smaller { font-family: 'Montserrat', 'Times New Roman', Times, serif; margin:0; padding:0; font-weight:500; }
.text h2.h2-bigger  { font-family: 'Montserrat', 'Times New Roman', Times, serif; margin:0; padding:0; font-weight:500; letter-spacing:-1px; }
.text h2            { font-family: 'Montserrat', 'Times New Roman', Times, serif; margin:0; padding:0; font-weight:500; }
.text h2.h2-smaller { font-family: 'Montserrat', 'Times New Roman', Times, serif; margin:0; padding:0; font-weight:500; }
.text h3.h3-bigger  { font-family: 'Montserrat', 'Times New Roman', Times, serif; margin:0; padding:0; font-weight:500; }
.text h3            { font-family: 'Montserrat', 'Times New Roman', Times, serif; margin:0; padding:0; font-weight:500; }

.text h1, .text h2   { text-align:center; }
.text h3             { text-align:left; }
.text h3.text-center { text-align:center; }

.text h1 a, .text h2.h2-bigger a, .text h2 a, .text h2.h2-smaller a, .text h3 a, .text h4 a { text-decoration:none; }

.text .headerPosition-center { text-align:center; }
.text .headerPosition-left   { text-align:left; }
.text .headerPosition-right  { text-align:right; }

/*@media screen and (min-width:1261px) {
  .text h1, .text h2.h2-bigger  { font-size:40px; line-height:50px; }
  .text h2, .text h1.h1-smaller { font-size:32px; line-height:40px; }
  .text h3.h3-bigger            { font-size:32px; line-height:40px; }
  .text h3, .text h2.h2-smaller { font-size:24px; line-height:30px; }
  .text h3.h3-smaller           { font-size:20px; line-height:26px; }
  html                          { font-size:18px; line-height:1.7em; }
}
@media screen and (min-width:1001px) and (max-width:1260px) {
  .text h1, .text h2.h2-bigger  { font-size:36px; line-height:46px; }
  .text h2, .text h1.h1-smaller { font-size:30px; line-height:38px; }
  .text h3.h3-bigger            { font-size:30px; line-height:38px; }
  .text h3, .text h2.h2-smaller { font-size:24px; line-height:30px; }
  .text h3.h3-smaller           { font-size:20px; line-height:26px; }
  html                          { font-size:18px; line-height:1.6em; }
}
@media screen and (min-width:701px) and (max-width:1000px) { */
@media screen and (min-width:701px) {
  .text h1, .text h2.h2-bigger  { font-size:32px; line-height:40px; }
  .text h2, .text h1.h1-smaller { font-size:28px; line-height:36px; }
  .text h3.h3-bigger            { font-size:28px; line-height:36px; }
  .text h3.h3-smaller           { font-size:19px; line-height:25px; }
  html                          { font-size:17px; line-height:1.5em; }
}
@media screen and (max-width:700px) {
  .text h1, .text h2.h2-bigger  { font-size:28px; line-height:36px; }
  .text h2, .text h1.h1-smaller { font-size:24px; line-height:32px; }
  .text h3.h3-bigger            { font-size:24px; line-height:32px; }
  .text h3.h3-smaller           { font-size:18px; line-height:24px; }
  html                          { font-size:16px; line-height:1.4em; }
}

.itrk-legaltext h1 { display:none; }
.itrk-legaltext h2 { margin:30px 0 10px; }
.itrk-legaltext h3 { margin:30px 0 10px; } 

.text-left   { text-align:left; } 
.text-center { text-align:center; } 
.text-right,
.text-end    { text-align:right; } 

.text ul    { list-style-position:outside; margin-bottom:1em; }
.text ul li { font-weight:400; margin-left:36px; margin-bottom:0.3em; }
.text ul li.li-bold::marker { font-weight:600; }
							 
.text ul li ul    { margin:0 0 10px; }
.text ul li ul li { margin-left:0; }

.text ol    { list-style-position:outside; margin-bottom:1em; }
.text ol li { font-weight:400; margin-left:36px; margin-bottom:0.3em; }
.text ol li.li-bold::marker { font-weight:600; }

.text ol li ol    { margin:0 0 10px; }
.text ol li ol li { margin-left:0; }

@media screen and (min-width:1261px) and (max-width:1420px) { .text .element ul { margin-bottom:9px; } .text .element ul li { margin-left:22px; } }
@media screen and (min-width:1001px) and (max-width:1260px) { .text .element ul { margin-bottom:8px; } .text .element ul li { margin-left:20px; } }
@media screen and (min-width:701px) and (max-width:1000px)  { .text .element ul { margin-bottom:7px; } .text .element ul li { margin-left:18px; } }
@media screen and (min-width:481px) and (max-width:700px)   { .text .element ul { margin-bottom:6px; } .text .element ul li { margin-left:17px; } }
@media screen and (max-width:480px)                         { .text .element ul { margin-bottom:5px; } .text .element ul li { margin-left:16px; } }

 
/* ------------------------------------------------- Styles fuer Inhaltsblöcke ------------------------------------------------ */
.element      { width:100%; }
.elementInner {  }

.elementSpacer { width:100%; }

.elementSpaceBefore0  { margin-bottom:0; }
.elementSpaceBefore1  { margin-bottom:5px; }
.elementSpaceBefore2  { margin-bottom:10px; }
.elementSpaceBefore3  { margin-bottom:15px; }
.elementSpaceBefore4  { margin-bottom:20px; }
.elementSpaceBefore5  { margin-bottom:25px; }
.elementSpaceBefore6  { margin-bottom:30px; }
.elementSpaceBefore7  { margin-bottom:35px; }
.elementSpaceBefore8  { margin-bottom:40px; }
.elementSpaceBefore9  { margin-bottom:45px; }
.elementSpaceBefore10 { margin-bottom:50px; }
.elementSpaceBefore11 { margin-bottom:55px; }
.elementSpaceBefore12 { margin-bottom:60px; }
.elementSpaceBefore13 { margin-bottom:65px; }
.elementSpaceBefore14 { margin-bottom:70px; }
.elementSpaceBefore15 { margin-bottom:75px; }
.elementSpaceBefore16 { margin-bottom:80px; }
.elementSpaceBefore17 { margin-bottom:85px; }
.elementSpaceBefore18 { margin-bottom:90px; }
.elementSpaceBefore19 { margin-bottom:95px; }
.elementSpaceBefore20 { margin-bottom:100px; }

.elementSpaceAfter0  { margin-top:0; }
.elementSpaceAfter1  { margin-top:5px; }
.elementSpaceAfter2  { margin-top:10px; }
.elementSpaceAfter3  { margin-top:15px; }
.elementSpaceAfter4  { margin-top:20px; }
.elementSpaceAfter5  { margin-top:25px; }
.elementSpaceAfter6  { margin-top:30px; }
.elementSpaceAfter7  { margin-top:35px; }
.elementSpaceAfter8  { margin-top:40px; }
.elementSpaceAfter9  { margin-top:45px; }
.elementSpaceAfter10 { margin-top:50px; }
.elementSpaceAfter11 { margin-top:55px; }
.elementSpaceAfter12 { margin-top:60px; }
.elementSpaceAfter13 { margin-top:65px; }
.elementSpaceAfter14 { margin-top:70px; }
.elementSpaceAfter15 { margin-top:75px; }
.elementSpaceAfter16 { margin-top:80px; }
.elementSpaceAfter17 { margin-top:85px; }
.elementSpaceAfter18 { margin-top:90px; }
.elementSpaceAfter19 { margin-top:95px; }
.elementSpaceAfter20 { margin-top:100px; }
			
.headingFrame { width:100%; margin:0; padding:0; }
.headerSpacer { width:100%; }

.headerSpaceBottom0  { padding-bottom:0.8em; }
.headerSpaceBottom1  { padding-bottom:0; }
.headerSpaceBottom2  { padding-bottom:0.1em; }
.headerSpaceBottom3  { padding-bottom:0.2em; }
.headerSpaceBottom4  { padding-bottom:0.3em; }
.headerSpaceBottom5  { padding-bottom:0.4em; }
.headerSpaceBottom6  { padding-bottom:0.5em; }
.headerSpaceBottom7  { padding-bottom:0.6em; }
.headerSpaceBottom8  { padding-bottom:0.7em; }
.headerSpaceBottom9  { padding-bottom:0.8em; }
.headerSpaceBottom10 { padding-bottom:0.9em; }
.headerSpaceBottom11 { padding-bottom:1em; }
.headerSpaceBottom12 { padding-bottom:1.1em; }
.headerSpaceBottom13 { padding-bottom:1.2em; }
.headerSpaceBottom14 { padding-bottom:1.3em; }
.headerSpaceBottom15 { padding-bottom:1.4em; }
.headerSpaceBottom16 { padding-bottom:1.5em; }
.headerSpaceBottom17 { padding-bottom:1.6em; }
.headerSpaceBottom18 { padding-bottom:1.7em; }
.headerSpaceBottom19 { padding-bottom:1.8em; }
.headerSpaceBottom20 { padding-bottom:1.9em; }
.headerSpaceBottom21 { padding-bottom:2em; }

.additionalSpaceH0 h1,
.additionalSpaceH0 h2,
.additionalSpaceH0 h3  { margin-bottom:0.6em; }
.additionalSpaceH1 h1,
.additionalSpaceH1 h2,
.additionalSpaceH1 h3  { margin-bottom:0; }
.additionalSpaceH2 h1,
.additionalSpaceH2 h2,
.additionalSpaceH2 h3  { margin-bottom:0.2em; }
.additionalSpaceH3 h1,
.additionalSpaceH3 h2,
.additionalSpaceH3 h3  { margin-bottom:0.4em; }
.additionalSpaceH4 h1,
.additionalSpaceH4 h2,
.additionalSpaceH4 h3  { margin-bottom:0.6em; }
.additionalSpaceH5 h1,
.additionalSpaceH5 h2,
.additionalSpaceH5 h3  { margin-bottom:0.8em; }
.additionalSpaceH6 h1,
.additionalSpaceH6 h2,
.additionalSpaceH6 h3  { margin-bottom:1em; }
.additionalSpaceH7 h1,
.additionalSpaceH7 h2,
.additionalSpaceH7 h3  { margin-bottom:1.2em; }
.additionalSpaceH8 h1,
.additionalSpaceH8 h2,
.additionalSpaceH8 h3  { margin-bottom:1.4em; }
.additionalSpaceH9 h1,
.additionalSpaceH9 h2,
.additionalSpaceH9 h3  { margin-bottom:1.6em; }
.additionalSpaceH10 h1,
.additionalSpaceH10 h2,
.additionalSpaceH10 h3 { margin-bottom:1.8em; }
.additionalSpaceH11 h1,
.additionalSpaceH11 h2,
.additionalSpaceH11 h3 { margin-bottom:2em; }

.additionalTopSpaceH0 p+h1,
.additionalTopSpaceH0 p+h2,
.additionalTopSpaceH0 p+h3  { margin-top:1em; }
.additionalTopSpaceH1 p+h1,
.additionalTopSpaceH1 p+h2,
.additionalTopSpaceH1 p+h3  { margin-top:0; }
.additionalTopSpaceH2 p+h1,
.additionalTopSpaceH2 p+h2,
.additionalTopSpaceH2 p+h3  { margin-top:0.2em; }
.additionalTopSpaceH3 p+h1,
.additionalTopSpaceH3 p+h2,
.additionalTopSpaceH3 p+h3  { margin-top:0.4em; }
.additionalTopSpaceH4 p+h1,
.additionalTopSpaceH4 p+h2,
.additionalTopSpaceH4 p+h3  { margin-top:0.6em; }
.additionalTopSpaceH5 p+h1,
.additionalTopSpaceH5 p+h2,
.additionalTopSpaceH5 p+h3  { margin-top:0.8em; }
.additionalTopSpaceH6 p+h1,
.additionalTopSpaceH6 p+h2,
.additionalTopSpaceH6 p+h3  { margin-top:1em; }
.additionalTopSpaceH7 p+h1,
.additionalTopSpaceH7 p+h2,
.additionalTopSpaceH7 p+h3  { margin-top:1.2em; }
.additionalTopSpaceH8 p+h1,
.additionalTopSpaceH8 p+h2,
.additionalTopSpaceH8 p+h3  { margin-top:1.4em; }
.additionalTopSpaceH9 p+h1,
.additionalTopSpaceH9 p+h2,
.additionalTopSpaceH9 p+h3  { margin-top:1.6em; }
.additionalTopSpaceH10 p+h1,
.additionalTopSpaceH10 p+h2,
.additionalTopSpaceH10 p+h3 { margin-top:1.8em; }
.additionalTopSpaceH11 p+h1,
.additionalTopSpaceH11 p+h2,
.additionalTopSpaceH11 p+h3 { margin-top:2em; }

.additionalTopSpaceH0 ol+h1, .additionalTopSpaceH0 ul+h1,
.additionalTopSpaceH0 ol+h2, .additionalTopSpaceH0 ul+h2,
.additionalTopSpaceH0 ol+h3, .additionalTopSpaceH0 ul+h3  { margin-top:2.0em; }
.additionalTopSpaceH1 ol+h1, .additionalTopSpaceH1 ul+h1,
.additionalTopSpaceH1 ol+h2, .additionalTopSpaceH1 ul+h2,
.additionalTopSpaceH1 ol+h3, .additionalTopSpaceH1 ul+h3  { margin-top:0; }
.additionalTopSpaceH2 ol+h1, .additionalTopSpaceH2 ul+h1,
.additionalTopSpaceH2 ol+h2, .additionalTopSpaceH2 ul+h2,
.additionalTopSpaceH2 ol+h3, .additionalTopSpaceH2 ul+h3  { margin-top:1.2em; }
.additionalTopSpaceH3 ol+h1, .additionalTopSpaceH3 ul+h1,
.additionalTopSpaceH3 ol+h2, .additionalTopSpaceH3 ul+h2,
.additionalTopSpaceH3 ol+h3, .additionalTopSpaceH3 ul+h3  { margin-top:1.4em; }
.additionalTopSpaceH4 ol+h1, .additionalTopSpaceH4 ul+h1,
.additionalTopSpaceH4 ol+h2, .additionalTopSpaceH4 ul+h2,
.additionalTopSpaceH4 ol+h3, .additionalTopSpaceH4 ul+h3  { margin-top:1.6em; }
.additionalTopSpaceH5 ol+h1, .additionalTopSpaceH5 ul+h1,
.additionalTopSpaceH5 ol+h2, .additionalTopSpaceH5 ul+h2,
.additionalTopSpaceH5 ol+h3, .additionalTopSpaceH5 ul+h3  { margin-top:1.8em; }
.additionalTopSpaceH6 ol+h1, .additionalTopSpaceH6 ul+h1,
.additionalTopSpaceH6 ol+h2, .additionalTopSpaceH6 ul+h2,
.additionalTopSpaceH6 ol+h3, .additionalTopSpaceH6 ul+h3  { margin-top:2.0em; }
.additionalTopSpaceH7 ol+h1, .additionalTopSpaceH7 ul+h1,
.additionalTopSpaceH7 ol+h2, .additionalTopSpaceH7 ul+h2,
.additionalTopSpaceH7 ol+h3, .additionalTopSpaceH7 ul+h3  { margin-top:2.2em; }
.additionalTopSpaceH8 ol+h1, .additionalTopSpaceH8 ul+h1,
.additionalTopSpaceH8 ol+h2, .additionalTopSpaceH8 ul+h2,
.additionalTopSpaceH8 ol+h3, .additionalTopSpaceH8 ul+h3  { margin-top:2.4em; }
.additionalTopSpaceH9 ol+h1, .additionalTopSpaceH9 ul+h1,
.additionalTopSpaceH9 ol+h2, .additionalTopSpaceH9 ul+h2,
.additionalTopSpaceH9 ol+h3, .additionalTopSpaceH9 ul+h3  { margin-top:2.6em; }
.additionalTopSpaceH10 ol+h1, .additionalTopSpaceH10 ul+h1,
.additionalTopSpaceH10 ol+h2, .additionalTopSpaceH10 ul+h2,
.additionalTopSpaceH10 ol+h3, .additionalTopSpaceH10 ul+h3 { margin-top:2.8em; }
.additionalTopSpaceH11 ol+h1, .additionalTopSpaceH11 ul+h1,
.additionalTopSpaceH11 ol+h2, .additionalTopSpaceH11 ul+h2,
.additionalTopSpaceH11 ol+h3, .additionalTopSpaceH11 ul+h3 { margin-top:3.0em; }


/* Sytyles für Youtube-Einbindung */
figure.video                 { margin:0; padding:0; border:none; width:100%; }
.videoEmbedded               { position:relative; margin:0; padding:0; border:none; width:100%; height:auto; overflow:hidden;  }
.videoEmbeddedYoutube        { position:relative; width:100%; height:0; padding-bottom:52.75%; overflow:hidden; }
.videoEmbeddedYoutube iframe { position:absolute; top:0; left:0; width:100%; height:100%; }


/* Styles für Link-Fläche */
.linkCoverAll     { left:0; bottom:0; width:100%; height:100%; z-index:19; }
.linkCoverAll a   { display:block; position:absolute; left:0; top:0; width:100%; height:100%; border:0 none; outline:0 none; overflow:hidden; z-index:19; }
.linkCoverAllSpan { display:block; position:relative; width:100%; height:100%; border:2px solid transparent; box-sizing:border-box; border-radius:10px; overflow:hidden; }

/* Styles für das Verhindern von Text-Kennzeichnungen bei Div als Buttons */
.glass { display:block; position:absolute; left:0; top:0; width:100%; height:100%; overflow:hidden; }

/* Styles für das Verhindern von Text-Kennzeichnungen bei Div als Buttons */
.text-gray-700 { max-width:800px; margin:0 auto 0;}

.fixed.bottom-0.left-0.right-0.bg-white.border-t.border-gray-200.p-4 shadow-lg z-50.flex justify-between.items-center { display:block !important; width:100% !important; }
.text-sm text-gray-700 { display:block !important; width:100% !important; }
.flex.gap-3 { display:block !important; width:100% !important; }


/* ______________________________________________________  */ 
/* elementBreak [ break // Trennlinie } */

.elementBreak     {  }
.elementBreakLine { width:100%; height:3px; background-color:#bcafa6; }
 
  
/* ______________________________________________________  */ 
/* elementText [ text // Text (und Überschrift) } */

.elementText {  }

.headerCenter { display:block; position:relative; overflow:hidden; }
.textBodytext { width:100%; }

.textBodytextContainer { display:flex; align-items:flex-end; width:100%; }
.textBodytextLeft      { flex: 1; }
.textBodytextRight     { width:326px; height:auto; flex-shrink:0; }

.ringSingleMaterial    { font-size:0.9em; font-weight:500; color:#bcafa6; }
.ringSingleLinkFrame   { margin-top:15px; }
 
 
/* ______________________________________ */
/* elementImage ( image // Bild )  */

.elementImage { width:100%; }

.imageFrame { width:100%; }
.imageInner { width:100%; }

.imageInner.imageWidth0 { max-width:800px; margin: 0 auto 0; }
.imageInner.imageWidth1 { max-width:1200px; }

.imageInner.imageExtra1 { max-width:600px; margin: 0 auto 0; }
.imageInner.imageExtra2 { max-width:500px; margin: 0 auto 0; }
.imageInner.imageExtra3 { max-width:400px; margin: 0 auto 0; }
.imageInner.imageExtra4 { max-width:300px; margin: 0 auto 0; }
.imageInner.imageExtra5 { max-width:200px; margin: 0 auto 0; }

figure.image            { width:100%; }
figure.image img,
figure.image picture    { width:100%; height:auto; }

figcaption.imageCaption { margin:0; padding:0 0 5px; font-size:0.9em; line-height:1.2 em }

@media screen and (min-width:471px) { .elementImage figure.image+figure.image { margin-top:20px; } }
@media screen and (max-width:470px) { .elementImage figure.image+figure.image { margin-top:10px; } }

.imageCovertext              { left:0; bottom:0; width:100%; height:auto; min-height:50px; z-index:2; }
.imageCovertext.wob          { background-image:linear-gradient(to bottom, rgba(0,0,0,0) 0%, rgba(0,0,0,0.4) 40%, rgba(0,0,0,0.7) 100%); }
.imageCovertext.bot          { background-color:transparent; }
.imageCovertextSpacer        { width:100%; height:0; }
.imageCovertextSpacer.top    { padding-bottom:20%; }
.imageCovertextSpacer.bottom { padding-bottom:8%; }
.imageCovertextInner         { padding:0 5% 0; }
.imageCovertextTitle         { width:100%;
                               font-size:18px; font-weight:500; line-height:26px; color:#fff; }
.imageCovertextTitle.left    { text-align:left; }
.imageCovertextTitle.center  { text-align:center; }
.imageCovertextTitle.size2   { }
.imageCovertextTitle.size3   { }
	
@media screen and (min-width:1261px) {
  .imageCovertextTitle.size2 { font-size:32px; line-height:40px; }
  .imageCovertextTitle.size3 { font-size:24px; line-height:30px; }
}
@media screen and (min-width:1001px) and (max-width:1260px) {
  .imageCovertextTitle.size2 { font-size:30px; line-height:38px; }
  .imageCovertextTitle.size3 { font-size:24px; line-height:30px; }
}
@media screen and (min-width:701px) and (max-width:1000px) {
  .imageCovertextTitle.size2 { font-size:28px; line-height:36px; }
  .imageCovertextTitle.size3 { font-size:22px; line-height:28px; }
}
@media screen and (max-width:700px) {
  .imageCovertextTitle.size2 { font-size:24px; line-height:32px; }
  .imageCovertextTitle.size3 { font-size:20px; line-height:26px; }
}


/* _________________________*/
/*  ( video // Video )  */

.elementVideo {   }

.videoCenter {  }

.videoAccordionFrame           { width:100%; border-top:2px solid #cecece; border-bottom:2px solid #cecece; }
.videoAccordionHeader          { width:100%; padding:1em 0 1em; cursor:pointer; }
.videoAccordionHeaderInner     { width:100%; box-sizing:border-box; padding-right:30px; }
.videoAccordionHeaderPlus      { right:10px; top:1.3em; width:22px; height:22px; cursor:pointer; z-index:2; }
.videoAccordionHeaderPlus .one { left:9px; top:0; width:3px; height:21px; background-color:#999; }
.videoAccordionHeaderPlus .two { left:0; top:9px; width:21px; height:3px; background-color:#999; }
.videoAccordionAnswer          { display:grid; grid-template-rows:0fr; position:relative; width:100%; overflow:hidden;
                                 transition: grid-template-rows 0.3s ease-in-out; }
.videoAccordionAnswer.out      { grid-template-rows:1fr;
           
		                         transition: grid-template-rows 0.3s ease-in-out; }
.videoAccordionAnswerAnimated  { min-height:0;
                                 transition: min-height 0.3s ease-in-out; }
.videoAccordionAnswerInner     { padding:0 30px 0 0; margin-bottom:20px; border-left:3px solid #cecece; margin:0 0 30px 20px; opacity:0; transition:opacity 0.2s ease-in-out 0s; }

.videoAccordionAnswer.out .faqAnswerInner { opacity:1; transition:opacity 0.3s ease-in-out 0.2s; }

.videoYoutubeBox             { margin:0 0 24px; width:100%; height:auto; }
.videoYoutubePlaceholder     { width:100%; height:auto; }
.videoYoutubePlaceholder img { width:100%; height:auto; cursor:pointer; }
.videoYoutubeClick           { left:0; top:0; width:100%; height:100%; z-index:8; cursor:pointer; }
.videoYoutubeButton          { left:50%; top:50%; width:79px; height:56px; z-index:9; transform: translate(-50%,-50%);
                               background:url(../Images/youtube_play.png) 0 0 no-repeat; background-size:100% 100%; }

.videoYoutubeClick:hover .videoYoutubeButton { background:url(../Images/youtube_play_hover.png) 0 0 no-repeat; background-size:100% 100%; }


/* __________________________________________*/
/*  ( home_headimages // Home: Kopfbilder )  */

#homeBanner            { width:100%; }
#homeBanner.onlyMobile {  }
#homeBanner img,
#homeBanner picture    { display:block; position:relative; width:100%; height:auto; overflow:hidden; }

#homePanels      { width:100%; margin-bottom:60px; }
#homePanelsInner { margin:10px; }

#homePanelFirst  {  }
#homePanelSecond {  }
#homePanelThird  {  }

#homePanelSecondInner { width:100%; height:auto; overflow:hidden; }

.homePanel img, 
.homePanel picture { display:block; position:relative; width:100%; height:auto; overflow:hidden; }

.homePanelTextFrame { left:0; bottom:0; width:100%; height:auto; background-image:linear-gradient(to bottom, rgba(0,0,0,0) 0%, rgba(0,0,0,0.4) 40%, rgba(0,0,0,0.5) 100%); z-index:2; } /*abhi*/

.homePanelTextBlock      { height:auto; z-index:2; }
.homePanelTextBlockInner { padding:40px 20px 40px 40px; }
.homePanelTextTitle      { text-transform:uppercase; letter-spacing:1px; color:#fff; }
.homePanelTextTitle p    { padding:0; }
.homePanelTextBody       { font-size:15px; line-height:26px; font-weight:300; color:#fff; }
.homePanelTextBody p     { padding:0; } 

.homePanelTextLinks      { overflow:hidden; z-index:2; }
.homePanelTextLinksInner { padding:40px 40px 40px 20px; }
.homePanelFirstLink      { width:100%; color:#fff; }
.homePanelFirstLink a    { display:block; position:relative; color:#fff; text-decoration:none; overflow:hidden;
                           padding-right:22px; background:url(../Images/arrow-right-24-white.svg) no-repeat right -4px top 1px; }
.homePanelSecondLink     { width:100%; color:#fff; }
.homePanelSecondLink a   { display:block; position:relative; color:#fff; text-decoration:none; overflow:hidden;
                           padding-right:22px; background:url(../Images/arrow-right-24-white.svg) no-repeat right -4px top 1px; }

@media screen and (min-width:1341px) {
  .homePanelTextBlock  { float:left; width:50%; }
  .homePanelTextTitle  { font-size:16px; line-height:26px; font-weight:600; padding-bottom:8px; }
  .homePanelTextBody   { font-size:15px; line-height:26px; }
  .homePanelTextLinks  { position:absolute; right:0; bottom:0; width:50%; max-width:380px; height:auto; }
  .homePanelFirstLink  { font-size:16px; line-height:26px; font-weight:500; padding-bottom:10px; }
  .homePanelSecondLink { font-size:16px; line-height:26px; font-weight:500; padding-top:10px; }
  
  .text .homePanelTextTitle h1,
  .text .homePanelTextTitle h2,
  .text .homePanelTextTitle h3 { font-size:16px; line-height:26px; font-weight:600; padding-bottom:8px; text-transform:uppercase; letter-spacing:1px; color:#fff; }
  
  .homePanelLink            { border-bottom:1px solid rgba(255,255,255,0.7); }
  .homePanelLink:last-child { border-bottom:0 none; }
}
@media screen and (min-width:1261px) and (max-width:1340px) {
  .homePanelTextBlock  { float:left; width:50%; }
  .homePanelTextBlockInner { padding:30px 15px 30px 30px; }
  .homePanelTextTitle  { font-size:15px; line-height:24px; font-weight:600; padding-bottom:6px; }
  .homePanelTextBody   { font-size:14px; line-height:24px; }
  .homePanelTextLinks  { position:absolute; right:0; bottom:0; width:50%; max-width:380px; height:auto; }
  .homePanelTextLinksInner { padding:30px 30px 30px 15px; }
  .homePanelFirstLink  { font-size:15px; line-height:24px; font-weight:500; padding-bottom:8px; }
  .homePanelSecondLink { font-size:15px; line-height:24px; font-weight:500; padding-top:8px; }
  .homePanelFirstLink a,
  .homePanelSecondLink a { background:url(../Images/arrow-right-24-white.svg) no-repeat right -4px top 0; }
  
  .text .homePanelTextTitle h1,
  .text .homePanelTextTitle h2,
  .text .homePanelTextTitle h3 { font-size:15px; line-height:24px; font-weight:600; padding-bottom:6px; text-transform:uppercase; letter-spacing:1px; color:#fff; }
  
  .homePanelLink            { border-bottom:1px solid rgba(255,255,255,0.7); }
  .homePanelLink:last-child { border-bottom:0 none; }
}
@media screen and (min-width:1001px) and (max-width:1260px) {
  .homePanelTextBlock  { width:100%; }
  .homePanelTextBlockInner { padding:30px 30px 20px 30px; }
  .homePanelTextTitle  { font-size:15px; line-height:24px; font-weight:600; padding-bottom:6px; }
  .homePanelTextBody   { font-size:14px; line-height:24px; }
  .homePanelTextLinks  { position:relative; float:right; width:100%; max-width:400px; }
  .homePanelTextLinksInner { padding:0 30px 30px 30px; }
  .homePanelFirstLink  { font-size:15px; line-height:24px; font-weight:500; padding-bottom:8px; }
  .homePanelSecondLink { font-size:15px; line-height:24px; font-weight:500; padding-top:8px; }
  .homePanelFirstLink a,
  .homePanelSecondLink a { background:url(../Images/arrow-right-24-white.svg) no-repeat right -4px top 0; }
  
  .text .homePanelTextTitle h1,
  .text .homePanelTextTitle h2,
  .text .homePanelTextTitle h3 { font-size:15px; line-height:24px; font-weight:600; padding-bottom:6px; text-transform:uppercase; letter-spacing:1px; color:#fff; }
  
  .homePanelLink            { border-bottom:1px solid rgba(255,255,255,0.7); }
  .homePanelLink:last-child { border-bottom:0 none; }

}
@media screen and (min-width:801px) and (max-width:1000px) {
  .homePanelTextBlock  { width:100%; }
  .homePanelTextBlockInner { padding:30px 30px 0px 30px; }
  .homePanelTextTitle  { font-size:15px; line-height:24px; font-weight:600; }
  .homePanelTextBody   { font-size:14px; line-height:24px; }
  .homePanelTextLinks  { position:relative; width:100%; }
  .homePanelTextLinksInner { padding:0 30px 30px 30px; }
  .homePanelFirstLink  { font-size:14px; line-height:24px; font-weight:500; }
  .homePanelSecondLink { font-size:14px; line-height:24px; font-weight:500; }
  .homePanelFirstLink a,
  .homePanelSecondLink a { background:url(../Images/arrow-right-24-white.svg) no-repeat right -4px top -1px; }
  
  .text .homePanelTextTitle h1,
  .text .homePanelTextTitle h2,
  .text .homePanelTextTitle h3 { font-size:15px; line-height:24px; font-weight:600; text-transform:uppercase; letter-spacing:1px; color:#fff; }
}
@media screen and (min-width:601px) and (max-width:800px) {
  .homePanelTextBlock  { float:left; width:50%; }
  .homePanelTextBlockInner { padding:30px 15px 30px 30px; }
  .homePanelTextTitle  { font-size:15px; line-height:24px; font-weight:600; padding-bottom:6px; }
  .homePanelTextBody   { font-size:14px; line-height:24px; }
  .homePanelTextLinks  { position:absolute; right:0; bottom:0; width:50%; max-width:380px; height:auto; }
  .homePanelTextLinksInner { padding:30px 30px 30px 15px; }
  .homePanelFirstLink  { font-size:15px; line-height:24px; font-weight:500; padding-bottom:8px; }
  .homePanelSecondLink { font-size:15px; line-height:24px; font-weight:500; padding-top:8px; }
  .homePanelFirstLink a,
  .homePanelSecondLink a { background:url(../Images/arrow-right-24-white.svg) no-repeat right -4px top 0; }
  
  .text .homePanelTextTitle h1,
  .text .homePanelTextTitle h2,
  .text .homePanelTextTitle h3 { font-size:15px; line-height:24px; font-weight:600; padding-bottom:6px; text-transform:uppercase; letter-spacing:1px; color:#fff; }
  
  .homePanelLink            { border-bottom:1px solid rgba(255,255,255,0.7); }
  .homePanelLink:last-child { border-bottom:0 none; }
}
@media screen and (max-width:600px) {
  .homePanelTextBlock  { width:100%; }
  .homePanelTextBlockInner { padding:50px 40px 20px 40px; }
  .homePanelTextTitle  { text-align:center; font-size:17px; line-height:24px; font-weight:600; padding-bottom:4px; }
  .homePanelTextBody   { text-align:center; font-size:17px; line-height:24px; }
  .homePanelTextLinks  { position:relative; width:100%; }
  .homePanelTextLinksInner { padding:0 40px 30px 40px; max-width:400px; margin:0 auto 0; }
  .homePanelFirstLink  { font-size:14px; line-height:24px; font-weight:500; padding-bottom:8px; }
  .homePanelSecondLink { font-size:14px; line-height:24px; font-weight:500; padding-top:8px; }
  .homePanelFirstLink a,
  .homePanelSecondLink a { background:url(../Images/arrow-right-24-white.svg) no-repeat right -4px top -1px; }
  
  .text .homePanelTextTitle h1,
  .text .homePanelTextTitle h2,
  .text .homePanelTextTitle h3 { text-align:center; font-size:17px; line-height:24px; font-weight:600; padding-bottom:4px;
                                 text-transform:uppercase; letter-spacing:1px; color:#fff; }
  
  .homePanelLink            { border-bottom:1px solid rgba(255,255,255,0.7); }
  .homePanelLink:last-child { border-bottom:0 none; }
}
	
@media screen and (min-width:801px) {
  #homeBanner.onlyMobile img,
  #homeBanner.onlyMobile picture { width:100%; height:auto; aspect-ratio:3/2; object-fit:cover; }

  #homePanelsInner { display:grid; grid-template-columns:1fr 1fr; grid-template-rows:auto auto; gap:10px; }
  #homePanelFirst  { grid-column: 1; grid-row: 1; }
  #homePanelSecond { grid-column: 2; grid-row: 1 / span 2; }
  #homePanelThird  { grid-column: 1; grid-row: 2; }

  #homePanelSecondInner { position:absolute; left:0; top:0; }

  .homePanel.onlyMobile img, 
  .homePanel.onlyMobile picture { display:block; position:relative; width:100%; height:auto; aspect-ratio:3/2; object-fit:cover; overflow:hidden; }
}
@media screen and (min-width:601px) and (max-width:800px) {
  #homePanels      { margin-bottom:20px; }
  #homePanelsInner { position:relative; overflow:hidden; }
  #homePanelFirst,
  #homePanelSecond { width:100%; height:auto; margin-bottom:10px; }
  #homePanelThird  { width:100%; height:auto; }

  #homePanelSecondInner { position:relative; }
}
@media screen and (max-width:600px) {
  #homePanels      { margin-bottom:20px; }
  #homePanelsInner { position:relative; overflow:hidden; }
  #homePanelFirst,
  #homePanelSecond { width:100%; height:auto; margin-bottom:10px; }
  #homePanelThird  { width:100%; height:auto; }

  #homePanelSecondInner { position:relative; }
}


/* __________________________________*/
/*  ( home_google // Home: Google )  */

.elementGoogle { width:100%; }
.googleFrame   { margin-bottom:60px;  } /*inner*/

.googleClaimCenter { width:100%; padding-bottom:30px; }
.googleClaim       { font-size:14px; font-weight:600; letter-spacing:1px; text-transform:uppercase; }

.googleHeaderCenter { width:100%; padding-bottom:40px; }
.googleHeader       { width:100%; }
.googleHeader h2    {  }

.googleSliderArea      { width:100%; }
.googleReviewLinkFrame {  } /*no*/
.googleReviewLink      { width:253px; margin:0 auto 0; }
.googleReviewLink a    { display:block; position:relative; overflow:hidden; text-decoration:none; color:#000; padding-right:18px;
                         font-size:14px; line-height:30px; font-weight:700; letter-spacing:1px; text-transform:uppercase;
                         background:url(../Images/arrow-top-right-24.svg) no-repeat right top 4px; background-size:20px 20px; }

.googleSliderFrame { width:100%; }
.googleSlider      { width:100%; } /*swiper googleSwiper*/

.googleSwiperPagenationFrame { width:100%; min-height:60px; }
.googleSwiperPagenation      { width:100%; height:30px; margin-top:5px; text-align:left; } /*swiper1-pagination*/

.googleSwiperPagenation .swiper-pagination-bullet { display:inline-block; position:relative; overflow:hidden; text-align:left; height:30px; width:auto;
                                                    border-radius:0; background-color:transparent; opacity:1; margin:0; }
													
.googleSwiperPagenation .googleBulletNumber { display:block; float:left; position:relative; overflow:hidden; height:30px;
                                              padding:0 5px 0 0px; transition:all 0.5s ease-in-out;
                                              font-size:14px; line-height:30px; font-weight:700; letter-spacing:1px; text-transform:uppercase; color:#a9a6a1; }
											  
.googleSwiperPagenation .googleBulletLine      { display:block; float:left; position:relative; overflow:hidden; height:30px; width:120px; 
                                                 max-width:0; padding:0 15px 0 0; transition:all 0.5s ease-in-out; }
												 
.googleSwiperPagenation .googleBulletLine span { display:block; position:relative; overflow:hidden; width:100%; height:2px; margin:15px 0 13px;
                                                 background-color:#bcafa6; transition:all 0.5s ease-in-out; }


.googleSwiperPagenation .swiper-pagination-bullet-active .googleBulletNumber { color:#000; }
.googleSwiperPagenation .swiper-pagination-bullet-active .googleBulletLine   { max-width:120px; }

.googleSwiperWrapper {  } /*swiper-wrapper no  wichtig: kein display, kein overflow*/

.googleSwiperItem       { width:100%; float:left; background-color:#f9f8f6; } /*swiper-slide*/
.googleSwiperItemInner  { padding:60px 60px 60px; }
.googleSwiperItemText   { width:100%; min-height:150px; margin-bottom:20px; }
.googleSwiperItemFoot   { width:100%; }

.googleSwiperItemPerson {  }

.googleSwiperItemPersonImage        { display:inline-block; /*width:32px; height:32px;*/ width:50px; height:50px; }
.googleSwiperItemPersonImageCircle  { width:100%; height:100%; /*border-radius:16px;*/ border-radius:25px; }
.googleSwiperItemPersonImagePic     { width:100%; height:100%; }
.googleSwiperItemPersonImagePic img { width:100%; height:auto; }
.googleSwiperItemPersonColour       { width:100%; height:100%; text-align:center; background-color:#000;
                                      /*font-size:18px; line-height:32px;*/ font-size:24px; line-height:50px; font-weight:500; color:#fff; }

.googleSwiperItemPersonColour.reviewsColour1  { background-color:#ee531a; }
.googleSwiperItemPersonColour.reviewsColour2  { background-color:#ac310f; }
.googleSwiperItemPersonColour.reviewsColour3  { background-color:#689835; }
.googleSwiperItemPersonColour.reviewsColour4  { background-color:#005b49; }
.googleSwiperItemPersonColour.reviewsColour5  { background-color:#0688d6; }
.googleSwiperItemPersonColour.reviewsColour6  { background-color:#05589c; }
.googleSwiperItemPersonColour.reviewsColour7  { background-color:#947abb; }
.googleSwiperItemPersonColour.reviewsColour8  { background-color:#512dab; }
.googleSwiperItemPersonColour.reviewsColour9  { background-color:          #6d5d50; }
.googleSwiperItemPersonColour.reviewsColour10 { background-color:#6d5d50; }
.googleSwiperItemPersonColour.reviewsColour11 { background-color:#5d68c1; }
.googleSwiperItemPersonColour.reviewsColour12 { background-color:#01876e; }

.googleSwiperItemPersonText { display:inline-block; padding-left:20px; }
.googleSwiperItemPersonName { text-align:left; font-size:20px; line-height:30px; font-weight:600; white-space:nowrap; }
.googleSwiperItemPersonDate { text-align:left; font-size:13px; line-height:20px; font-weight:400; white-space:nowrap;  } /*googleDateCalculate*/
/* googleSwiperItemPersonCalculate hide*/

.googleSwiperItemGoogletop      { width:100%; padding-bottom:30px; }
.googleSwiperItemGoogletopInner { width:135px; margin:0 auto 0; }
.googleSwiperItemGoogletopStars { float:right; width:90px; height:22px; background:url(../Images/reviews_5_stars.png) no-repeat 0 2px; background-size:100% auto; }
.googleSwiperItemGoogletopPipe  { float:right; width:1px; height:22px; background-color:#cecece; margin:0 10px 0;  }
.googleSwiperItemGoogletopIcon  { float:right; width:22px; height:22px; background:url(../Images/reviews_google-mark.svg) no-repeat 0 0; background-size:auto 100%; }

.googleSwiperItemGoogle      { float:right; width:175px; }
.googleSwiperItemGoogleInner { margin:14px 40px 14px 0; }
.googleSwiperItemGoogleStars { float:right; width:90px; height:22px; background:url(../Images/reviews_5_stars.png) no-repeat 0 2px; background-size:100% auto; }
.googleSwiperItemGooglePipe  { float:right; width:1px; height:22px; background-color:#cecece; margin:0 10px 0;  }
.googleSwiperItemGoogleIcon  { float:right; width:22px; height:22px; background:url(../Images/reviews_google-mark.svg) no-repeat 0 0; background-size:auto 100%; }
	
@media screen and (min-width:801px) {
  .googleClaim { text-align:left; }
  .googleHeader.text h1,
  .googleHeader.text h2 { text-align:left; }
  .googleReviewLinkFrame { position:absolute; right:0; top:4px; width:253px; z-index:9; } /*no*/
  .googleSwiperItemGoogletop { display:none; }
  .googleSwiperPagenationFrame { float:left; max-width:480px; }
  .googleSwiperPagenation { float:left; } /*swiper1-pagination*/
  .googleSwiperItemPerson { float:left; width:60%; text-align:left; }
  .googleSwiperItemText { text-align:left; }
}
@media screen and (max-width:800px) {
  .googleFrame { margin-bottom:20px;  } /*inner*/
  .googleClaim { text-align:center; }
  .googleReviewLinkFrame { position:relative; width:100%; padding-bottom:30px; } /*no*/
  .googleSwiperItemGoogle { display:none; }
  .googleSwiperPagenation { text-align:center; } /*swiper1-pagination*/
  .googleSwiperItemPerson { width:100%; text-align:center; }
  .googleSwiperItemText { text-align:center; }

  .googleSliderFrame .swiper-wrapper { display:flex; align-items:stretch; }
  .googleSliderFrame .swiper-slide {  height: auto; }
}
@media screen and (max-width:600px) {
  .googleSwiperItemInner  { padding:40px 20px 40px; }
  .googleSwiperItemPersonText { padding-left:10px; }
  .googleSwiperPagenation .swiper-pagination-bullet-active .googleBulletLine { max-width:60px; }
}
@media screen and (max-width:500px) {
  .googleSwiperPagenation .swiper-pagination-bullet-active .googleBulletLine { max-width:30px; }
  .googleSwiperPagenation .googleBulletLine { padding:0 10px 0 0; }
}
@media screen and (max-width:400px) {
  .googleSwiperPagenation .swiper-pagination-bullet-active .googleBulletLine { max-width:25px; }
  .googleSwiperPagenation .googleBulletLine { padding:0 8px 0 0; }
}


/* _________________________________________________*/
/*  ( home_collektion // Home: Kollektion-Slider )  */

.elementCollection {  }
.collectionFrame   { width:100%; }

.collectionFirstLayer { width:100%; }

.collectionSliderSpacerTop    { width:100%; height:50px; background-color:#000; }
.collectionSliderSpacerBottom { width:100%; height:5px; background-color:#000; }
.collectionSliderMaskTop      { left:0; top:0; width:100%; height:70px; background-image:linear-gradient(to bottom, rgba(0,0,0,1) 0%, rgba(0,0,0,0.5) 60%, rgba(0,0,0,0) 100%); z-index:2; }
.collectionSliderMaskBottom   { left:0; bottom:0; width:100%; height:70px; background-image:linear-gradient(to bottom, rgba(0,0,0,0) 0%, rgba(0,0,0,0.5) 40%, rgba(0,0,0,1) 100%); z-index:3; }

.collectionSlider        { width:100%; } /* swiper collectionMediaSwiper */
.collectionSliderWrapper {  } /* swiper-wrapper no */
.collectionSliderItem    { width:100%; float:left; background-color:#000; } /* swiper-slide #collectionSliderItem{firstlayer.cycle} */
.collectionSlider video,
.collectionSlider img,
.collectionSlider picture { display:block; position:relative; width:100%; height:auto; overflow:hidden; }

.collectionsSecondLayer { left:0; top:0; width:100%; z-index:4; }

.collectionsStaticSpacer { width:100%; height:0; }
.collectionsStaticText   { height:100%; }
.collectionsStaticClaim  { font-size:14px; line-height:20px; font-weight:600; letter-spacing:1px; text-transform:uppercase; color:#fff; }
.collectionsStaticTitle  {  }

.text .collectionsStaticTitle h2 { text-align:left; color:#fff; }

.collectionsThirdLayer {  }

.collectionFaderFrame  { width:100%; }
.collectionFader       { width:100%; } /* swiper collectionTextSwiper */
.collectionFaderSpacer { width:100%; height:0; }

.collectionFaderPagenationFrame { width:100%; }
.collectionFaderPagenationInner {  }
.collectionFaderPagenation      { width:100%; height:30px; } /* swiper-pagination  */

.collectionFaderPagenation .swiper-pagination-bullet { display:block; float:left; position:relative; overflow:hidden; height:30px; width:auto;
                                                       border-radius:0; background-color:transparent; opacity:1; }
.collectionFaderPagenation .swiper-pagination-bullet .collectionBulletLine { display:block; position:relative; overflow:hidden; opacity:0.5; width:50px; height:3px;
                                                                             margin:14px 5px 13px 0; background-color:#fff; }
.collectionFaderPagenation .swiper-pagination-bullet-active .collectionBulletLine { opacity:1; }

/* ueberschreibt aussenabstand 4px von .swiper-pagination-bullet aus swiper-bundle.min.js*/
.swiper-horizontal > .swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal,
.swiper-pagination-custom,
.swiper-pagination-fraction { bottom:0; top:0; }

/* ueberschreibt abstaende von .swiper-pagination-horizontal aus swiper-bundle.min.js*/
.swiper-horizontal > .swiper-pagination-bullets,
.swiper-pagination-horizontal.swiper-pagination-bullets { .swiper-pagination-bullet { margin:0; } }

.collectionFaderWrapper {  } /* swiper-wrapper no */
.collectionFaderItem    { width:100%; }/* swiper-slide */

.collectionFaderTextInner      {  }
.collectionFaderText           {  }
.collectionFaderTextLeft       {  }
.collectionFaderTextTitle      { padding-bottom:5px; font-size:14px; line-height:20px; font-weight:600; letter-spacing:1px; text-transform:uppercase; color:#fff; }
.collectionFaderTextBody       { max-width:400px; font-size:14px; line-height:20px; font-weight:300; color:#fff; }
.collectionFaderTextRight      {  }
.collectionFaderTextRightInner {  }
.collectionFaderTextLinkWrap   { float:right; width:auto; min-width:260px; }
.collectionFaderTextLink       { padding:10px 0 10px; border-bottom:1px solid rgba(255,255,255,0.7); }

@media screen and (min-width:1001px) {
  .collectionsStaticSpacer,
  .collectionFaderSpacer { padding-bottom:5%; }
  .collectionsStaticClaim { margin-bottom:20px; }
  .collectionSliderSpacerTop,
  .collectionSliderSpacerBottom,
  .collectionSliderMaskTop,
  .collectionSliderMaskBottom { display:none; }
  .collectionsThirdLayer { position:absolute; left:0; top:0; width:100%; height:100%; z-index:5; display:flex; flex-direction:column; }
  .collectionFaderFrame { margin-top:auto; }
  .collectionFaderPagenationFrame { padding-bottom:10px; }
  .collectionFaderText { display:flex; align-items:stretch; }
  .collectionFaderTextLeft { flex:1; }
  .collectionFaderTextRight { flex:1; display:flex; flex-direction:column; }
  .collectionFaderTextRightInner { margin-top:auto; }
  .collectionFaderTextLink:last-child { padding:10px 0 0; border-bottom:0 none; }
  .text .collectionFaderTextLink a { display:block; position:relative; width:100%; box-sizing:border-box; padding-right:22px; overflow:hidden;
                                     font-size:14px; line-height:20px; font-weight:500; text-decoration:none; letter-spacing:1px; text-transform:uppercase; color:#fff;
                                     background:url(../Images/arrow-right-24-white.svg) no-repeat right -4px top -2px; }
}
@media screen and (min-width:801px) and (max-width:1000px) {
  .collectionsStaticSpacer,
  .collectionFaderSpacer { padding-bottom:3%; }
  .collectionsStaticClaim { margin-bottom:10px; }
  .collectionSliderSpacerTop,
  .collectionSliderSpacerBottom,
  .collectionSliderMaskTop,
  .collectionSliderMaskBottom { display:none; }
  .collectionsThirdLayer { position:absolute; left:0; top:0; width:100%; height:100%; z-index:5; display:flex; flex-direction:column; }
  .collectionFaderFrame { margin-top:auto; }
  .collectionFaderPagenationFrame { padding-bottom:10px; }
  .collectionFaderText { display:flex; align-items:stretch; }
  .collectionFaderTextLeft { flex:1; }
  .collectionFaderTextRight { flex:1; display:flex; flex-direction:column; }
  .collectionFaderTextRightInner { margin-top:auto; }
  .collectionFaderTextLink:last-child { padding:10px 0 0; border-bottom:0 none; }
  .text .collectionFaderTextLink a { display:block; position:relative; width:100%; box-sizing:border-box; padding-right:22px; overflow:hidden;
                                     font-size:14px; line-height:20px; font-weight:500; text-decoration:none; letter-spacing:1px; text-transform:uppercase; color:#fff;
                                     background:url(../Images/arrow-right-24-white.svg) no-repeat right -4px top -2px; }
}
@media screen and (max-width:800px) {
  .collectionSliderSpacerTop,
  .collectionSliderSpacerBottom,
  .collectionSliderMaskTop,
  .collectionSliderMaskBottom {  }

  .collectionsStaticSpacer { padding-bottom:25px; }
  .collectionsStaticClaim { margin-bottom:10px; text-align:center; }
  .text .collectionsStaticTitle h2 { text-align:center; }

  .collectionsThirdLayer { position:relative; width:100%; background-color:#000; }
  .collectionFaderSpacer { padding-bottom:15px; }
  .collectionFaderPagenationFrame { padding-bottom:15px; }
  .collectionFaderPagenation { text-align:center; } /* swiper-pagination  */
  .collectionFaderPagenation .swiper-pagination-bullet { display:inline-block; float:none; }
  .collectionFaderText { width:100%; }
  .collectionFaderTextLeft { width:100%; }
  .collectionFaderTextRight { width:100%;  }
  .collectionFaderTextRightInner {  }
  .collectionFaderTextTitle { text-align:center; }
  .collectionFaderTextBody { text-align:center; margin:0 auto 17px;  }
  .collectionFaderTextLinkWrap { float:none; width:100%; text-align:center; }
  .collectionFaderTextLink { padding:0 0 17px; border-bottom:0 none; }
  .text .collectionFaderTextLink a { display:inline-block; position:relative; width:auto; padding-right:20px; margin:0 auto 0; overflow:hidden;
                                     font-size:12px; line-height:20px; font-weight:500; text-decoration:none; letter-spacing:1px; text-transform:uppercase; color:#fff;
                                     background:url(../Images/arrow-right-24-white.svg) no-repeat right -4px top 1px; background-size:auto 95%; }
}


/* _________________________________________ */
/*  ( home_service // Home: Service-Icons )  */

.elementService { width:100%; }

.serviceFrame     { width:100%; text-align:center; margin:30px 0 30px; }
.serviceInner     {  }
.serviceItem      { float:left; }
.serviceItemInner { padding:20px; margin:0 auto 0; max-width:280px; }

.serviceItemImage          { width:100%;  }
.serviceItemImageInner     { width:60px; height:60px; margin:0 auto 0; }
.serviceItemImageInner img { width:100%; height:auto; }

.serviceItemTitle      { width:100%; padding-top:15px; }
.serviceItemTitleInner { font-size:18px; line-height:26px; font-weight:600; text-align:center; }

.serviceItemText      { width:100%; padding-top:10px; }
.serviceItemTextInner { font-size:14px; line-height:22px; font-weight:400; text-align:center;  }

@media screen and (min-width:1121px) {
 .serviceInner { width:100%; }
 .serviceItem { width:25%; }
}
@media screen and (min-width:1001px) and (max-width:1120px) {
 .serviceInner { width:100%; }
 .serviceItem { width:25%; }
 .serviceItemInner { margin:18px; }
 .serviceItemTitleInner { font-size:16px; line-height:24px; }
 .serviceItemTextInner { font-size:12px; line-height:20px;  }
}
@media screen and (min-width:701px) and (max-width:1000px) {
 .serviceFrame { margin:10px 0 10px; }
 .serviceInner { display:inline-block; width:auto; }
 .serviceItem { width:50%; }
 .serviceItem:nth-child(3) { clear:both; }
}
@media screen and (max-width:700px) {
 .serviceFrame { margin:0; }
 .serviceInner { width:100%; }
 .serviceItem { width:100%; }
 .serviceItemInner { padding:20px 20px 20px; }
}


/* _________________________________________ */
/*  ( home_ringslider // Home: Ringslider )  */

.elementRingslider {  }

.ringlsiderFrame   { margin:30px 0 30px;  }
.ringsliderInner   {  }

.ringsliderClaimCenter { width:100%; padding-bottom:30px; text-align:center; }
.ringsliderClaim       { font-size:14px; font-weight:600; letter-spacing:1px; text-transform:uppercase; }

.ringsliderHeaderCenter { width:100%; padding-bottom:40px; }
.ringsliderHeader       {  }
.ringsliderHeader h2    {  }

.ringsliderSliderFrame   { width:100%; }
.ringsliderSlider        { width:100%; }/* swiper ringsliderSwiper */
.ringsliderSliderWrapper {  }/* swiper-wrapper no */

.ringsliderSwiperItem      {  }/* swiper-slide */
.ringsliderSwiperItemCover { width:100%; box-sizing:border-box; padding:5px; }
.ringsliderSwiperItemInner { width:100%; }

.ringsliderSwiperItemImage { width:100%; height:auto; }
.ringsliderSwiperItemImage img,
.ringsliderSwiperItemImage picture { display:block; position:relative; overflow:hidden; width:100%; height:auto; }

.ringsliderSwiperItemTitle              { left:0; bottom:0; width:100%; height:auto; min-height:50px; z-index:9;
                                          background-image:linear-gradient(to bottom, rgba(0,0,0,0) 0%, rgba(0,0,0,0.4) 40%, rgba(0,0,0,0.7) 100%); }  /* abhi */
.ringsliderSwiperItemTitleInner         { text-align:center; width:100%; height:30px; }
.ringsliderSwiperItemTitleArrow         { display:inline-block; position:relative; width:auto; padding-right:24px; margin:0 auto 0; overflow:hidden;
                                          font-size:14px; line-height:30px; font-weight:500; letter-spacing:1px; text-transform:uppercase; color:#fff; 
                                          background:url(../Images/arrow-right-24-white.svg) no-repeat right -4px top 2px; }
.ringsliderSwiperItemTitleSpacer        { width:100%; height:0; }
.ringsliderSwiperItemTitleSpacer.top    { padding-bottom:20% }
.ringsliderSwiperItemTitleSpacer.bottom { padding-bottom:8%; }

.ringsliderSliderFrame .swiper-slide { display:flex; justify-content:center; align-items:center; }

@media screen and (min-width:1421px) {
  .ringsliderSliderFrame .swiper-slide { width:26%; }
}
@media screen and (min-width:1201px) and (max-width:1420px) {
  .ringsliderSliderFrame .swiper-slide { width:30%; }
}
@media screen and (min-width:1001px) and (max-width:1200px) {
  .ringsliderSliderFrame .swiper-slide { width:40%; }
}
@media screen and (min-width:801px) and (max-width:1000px) {
  .ringsliderSliderFrame .swiper-slide { width:46%; }
}
@media screen and (min-width:701px) and (max-width:800px) {
  .ringsliderSliderFrame .swiper-slide { width:52%; }
}
@media screen and (min-width:601px) and (max-width:700px) {
  .ringsliderSliderFrame .swiper-slide { width:64%; }
}
@media screen and (max-width:600px) {
  .ringsliderSliderFrame .swiper-wrapper { display:block; position:relative; width:100%; overflow:hidden; transform:translate3d(0px, 0px, 0px) !important; }
  .ringsliderSliderFrame .swiper-slide { display:block; width:100%; } 
  .ringsliderSwiperItem:nth-child(n+5) { display:none; }
  .ringsliderSwiperItemCover { padding:5px 10px 5px; }
}


