/*Globale Defintion*/
* {
    /*  background-color: white;*/

    /*    IE8 Fix*/
    font-size: 16px;

    font-size: 1em;

    /*slategray*/
    color: #708090;

    font-family: OpenSans, Arial, Helvetica, Lato, sans-serif;

}


input:active, input:focus, 
button:active, button:focus
a:active, a:focus
{
    outline: none;
    -moz-outline-style: none;
    outline: 0;
    -moz-outline-style: 0;
}

input::-moz-focus-inner {
    border: 0;
}
button::-moz-focus-inner {
    border: 0;
}
a::-moz-focus-inner {
    border: 0;
}



/*Anmation der PseudoLinks*/
#xFOOTER [type="submit"], [type="button"],
.NAVI [type="submit"], [type="button"]
{
    margin: 0;
    padding: 0;
}

#xFOOTER [type="submit"]:hover,
#xFOOTER [type="button"]:hover,
.NAVI [type="submit"]:hover,
.NAVI [type="button"]:hover,
.flaticon-paper-bag:hover,
#LiPUNKTE [type="submit"]:hover,
#LiPUNKTE [type="button"]:hover,
#IMPRESS [type="submit"]:hover,
#IMPRESS [type="button"]:hover,
#IMPRESS_HF [type="submit"]:hover,
#IMPRESS_HF [type="button"]:hover, 
.nBasketALLfrm [type="submit"]:hover,
.navLINK:hover,
#PREISE label:hover
{   cursor:pointer;
    color: black;
    text-decoration: none;
    -webkit-transition:color 0.30s ease-in;
    -moz-transition:color 0.30s ease-in;
    -o-transition:color 0.30s ease-in;
    transition:color 0.30s ease-in;
}



#instagram {
    display: inline-flex;
    align-items: center;
    gap: 0.30em;                 /* Abstand zwischen Text und Icon */
}

#instagram svg {
    vertical-align: middle;      /* zusätzliche vertikale Ausrichtung */
    width: 1em;                  /* Breite = Schriftgröße */
    height: 1em;                 /* Höhe = Schriftgröße */
    flex-shrink: 0;              /* SVG schrumpft nicht, wenn Text kleiner wird */
}

/* Standardfarbe (schwarz-grau) */
#instagram svg path {
    fill: url(#black-gray-gradient);
    transition: fill 0.3s ease-in;
}

/* Hoverfarbe + Zoom */
#instagram:hover svg path {
    fill: url(#insta-gradient);
}

#instagram:hover svg {
    transform: scale(1.15); /* leichtes Vergrößern */
}







/*Grundätzlich keine Links unterstreichen*/
a {
    text-decoration:none;
    background-color: white;
}

/*Grundätzlich keine List bullets*/
ul, li {list-style: none;}


html, body{
    background-color: white;
    margin: 0 auto;
    max-width:70em;
    height: auto;
    overflow-y: scroll;
}

body{
    display: table;
    /*FF-Fix*/
    /*    table-layout: fixed;*/

    /* Warenkorb cnt */
    counter-reset: cntBasket;
}

.page-row {
    display: table-row;
}

.page-row-expanded { 
    height: 100%;
}

#xHEADER, #xMAIN, #xFOOTER{
    margin:0 0.5em 0 0.5em;
}
#xHEADER{

    height: 100%;
    max-width:100%;
    position: relative;
    text-align: center;
    margin-top: 2em;

}
#BRAND
{
    height: 80px;
}

#uBRAND 
{    
    display: block;
    position: fixed;
    top: 0;
    left: -0.25em;
    width: 100%;
    text-align: center;
    border:0;
    background-color:white;
    cursor:pointer;

    padding-top: 2.3em;
    height: 7.5em;
}

#svgLOGO{

    height: 7em;
    width: 100%;
}








#xDSGVO 
{
    display: table;
    z-index: 1;
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 3em;
    text-align: left;
    border:solid 0.1em;
    border-color:#dfdfdf;
    background:#F9FAFC;
    font-size: 0.8em;
}

#xDSGVO .xZeile
{
    display: table-row;
    vertical-align: middle;
    background:transparent;
    width: 100%;
    height: 3em;
    color:black;
    font-weight: 500;
    background:transparent;
}

#xDSGVO .xZeile div{
    display: table-cell;
    vertical-align: middle;
}

#xDSGVO .xZeile div:nth-of-type(1) {
    text-align:left;
    vertical-align: middle;
    background:transparent;
    padding-left: 1em;
}

#xDSGVO .xZeile div:nth-of-type(2) {
    text-align:right;
    padding-left: 3em;
    vertical-align: middle;
    background:transparent;
    width: 1em;
}

#xDSGVO .xZeile div:nth-of-type(3) {
    text-align:left;
    vertical-align: middle;
    background:transparent;
    padding-left: 1em;
    padding-right: 5em;
    width: 1em;
}


#btnOK {
    width: 4em;
    height: 1.8em;
    -moz-border-radius: 0.5em;
    -webkit-border-radius:0.5em;
    border-radius: 0.5em;
    background-color: #3b89c7;
    color: #F9FAFC;
    border: none;
    font-weight:bold;
}

#btnForw {
    width: 8em;
    height: 1.8em;
    -moz-border-radius: 0.5em;
    -webkit-border-radius:0.5em;
    border-radius: 0.5em;
    background-color: #7b8a8b;
    color: #F9FAFC;
    border: none;
    font-weight:bold;

}




#xMAIN{
    position: relative;
    max-width:100%;
    min-height: 32.8em;
    margin-top: 4.5em;
}

#xMAIN_KD{
    position: relative;
    max-width:100%;
    height: auto;
    margin-top: 0em;
}


#xFOOTER{
    position: relative;
    max-width:100%;
    height: auto;
}


/*HochformatBild Einzel*/
#IMPRESS, #IMPRESS_HF {
    margin-top: 0em;
    font-size:0.9em;
}

#IMPRESS, #IMPRESS_HF, input {
    border:none;
    background-color: white;
}
#IMPRESS{
    margin-top: 3.5em;
    font-size:0.9em;
}
#IMPRESS p, #IMPRESS_HF p {
    margin: 0;
    padding:0;
}
#IMPRESS ul, #IMPRESS_HF ul {
    margin:0;
    text-align:left;
    padding: 0;
    list-style-type: none;
}
#IMPRESS ul li, #IMPRESS_HF ul li{
    display:inline-block;
    text-align: left;
    list-style-type: none;
}



/*****LOGIN******/
#frmLOGIN {
    position: fixed;
    top: 0;
    right:0;
    border:0;
    margin-top: 0.1em;
    width: auto;
    height: auto;
} 

#frmLOGIN,
#fxLOGIN{
    font: 0/0 serif;  
    z-index: -1;
    display: none;
}

#fxLOGIN:checked ~
#frmLOGIN
{     
    font: inherit;  
    z-index: 1;
    display: block;
} 


.modal {
    display: inline-block;
    position:relative;
    z-index: 1; /* Sit on top */
    left: 0;
    top: 0;
    width: auto;
    height: auto;
    overflow: auto;
    background-color: rgb(0,0,0); /* Fallback color */
    background-color: rgba(0,0,0,0.3); /* Black w/ opacity */
    padding-top: 4.5em;

}

/* Modal Content/Box */
.modal_content {
    margin: 2% auto 15% auto; /* 5% from the top, 15% from the bottom and centered */
    border:none;
    width: 30em; /* Could be more or less, depending on screen size */
    height: 40em; /* Could be more or less, depending on screen size */
    font-size: 1.3em;
    background-color: white;
}

/* Center the image and position the close button */
.imgcontainer {
    text-align: center;
    position: relative;
    padding-top: 4em;
}

.modal_header{
    font-size: 2em;
    font-weight: bold;
    opacity: 0.7
}
.modal_header ~ span{
    color: red;
}

.loginchk[type=email], .loginchk[type=password] , .loginchk[type=text] {
    width: 100%;
    padding: 1em 2em;
    margin: 0.5em 0;
    display: inline-block;
    border: 0.1em solid #708090;
    box-sizing: border-box;
    font-weight:bold;
    font-size: 1.0em;
}

.loginbtn {
    background-color:#708090;
    color: white;
    border: none;
    cursor: pointer;
    width: 100%;
    height: 3em;
    font-size: 1.3em;
    font-weight: bold;
}

button:hover {
    opacity: 0.8;
}
button:focus {
    opacity: 0.8;
}

.container {
    padding: 3em 2em 0;
    text-align: center;
}

.psw {
    cursor: pointer;
    float: right;
}

/*Ausgabe bei realm Passwort*/
.realm {

    -webkit-user-select: all;
    -moz-user-select: all;
    -ms-user-select: all;
    user-select: all;
    margin: 0;

    /* white-space: pre-wrap;*/
    cursor: copy;
}

/* The Close Button (x) */
.close {
    position: absolute;
    right: 1em;
    top: 0.5em;
    color: #708090;
    font-size: 2em;
    /* font-weight: bold;*/
}

.close:hover,
.close:focus {
    color: red;
    cursor: pointer;
}

/* Add Zoom Animation */
.animate {
    -webkit-animation: animatezoom 0.6s;
    animation: animatezoom 0.6s
}

@-webkit-keyframes animatezoom {
    from {-webkit-transform: scale(0)} 
    to {-webkit-transform: scale(1)}
}

@keyframes animatezoom {
    from {transform: scale(0)} 
    to {transform: scale(1)}
}



.LOGOUT {
    color: red;
} 



/****************/
/*HAMBURGER*/
/****************/
#fxBURGER{
    font: 0/0 serif;  
    z-index: -1;
    display: none;
}


#BURGER {
    font: 0/0 serif;  
    z-index: -1;
    display: none;
    position: fixed; top: 0.5em; left:0.5em;
    cursor: pointer;
}

#BURGER:before {
    content:'\2630';
    font-size: 2em;
    position: absolute;
}




/****************/
/*****NAVI*******/
/****************/

#xKDNAVI{
    position: fixed;
    top: 0;
    left:0;
    border:0;
    margin-top: 0em;
    width: 100%;
    height: 4em;  
    background-color: white;
}
#xKDNAVI .NAVI ul {
    text-align:right;
    z-index: 1;
    margin-right:5em;
}


.NAVI{
    font-size:0.8em;
    margin:0;
    height: 100%;
    position: relative;
    background-color: white;
}

/*Keine Rander bei NaviInputBoxen*/
.NAVI input {
    border:none;
    background-color: white;
}

.NAVI ul {
    margin:0;
    text-align:right;
    padding: 0;
    list-style-type: none;
}   

.NAVI ul li {
    display:inline-block;
    margin: 0;
    padding: 0;
    margin-left: 1.0em;
    list-style-type: none;
}

.NAVI ul li .active {
    color: black;
}

/* Unternavigation ausblenden */
.NAVI ul ul {
    font: 0/0 serif;  
    z-index: -1;
    display: none;
    padding-top: 0.1em;
    list-style-type: none;
}

/*  Unternavigation einblenden */
.NAVI ul li:hover > ul {
    font: inherit;    
    z-index: auto;
    display: block;
    position: absolute;
    list-style-type: none;
}

/* 2te  Unternavigation einblenden */
.NAVI ul ul li:hover > ul {
    font: inherit;    
    z-index: auto;
    display: block;
    position: relative;
    list-style-type: none;
}


/* First Tier Dropdown */
.NAVI ul ul li {
    display: block;
    text-align: left;
    margin: 0;
    margin-top: 0.5em; 
    list-style-type: none;
}

/* 2 Tier Dropdown */
.NAVI ul ul ul li {
    display: block;
    text-align: left;
    margin-left: 1em;
    margin-top: 0.5em; 
    list-style-type: none;
}


/*******************
    KUNDENGALLERIE
*******************/
#KDMain {    
    width: 61.25em;
    min-height: 34.8em;
    text-align: center;
    position:relative;
    margin: 0;
    padding:0;
    margin-bottom: 2.5em;
    top: 1em;
}


#KDMainHead 
{
    position: fixed;
    top: 9.5em;
    width: inherit;
    height:3em;
    text-align: center;
    z-index: 1;
    background-color: white;
    padding-top: 1em;
}


#KDMainHead [type="checkbox"] { display:none; }

#KDMainHead form{
    position: relative; 
    display: inline-block;
    color: black;
    opacity: 1;
    cursor: pointer;
    margin-right: 0.5em;
}

#KDMainHead form:nth-of-type(1) {
    float: left; color:black; cursor: default;
}
#KDMainHead form:nth-of-type(2) {
    float:next ;
}
#KDMainHead form:nth-of-type(3) {
    float:next ;
}
#KDMainHead form:nth-of-type(4) {
    float:next;
}
#KDMainHead form:nth-of-type(5) {
    float:next;
}
#KDMainHead form:nth-of-type(6) {
    float:right;
}

#KDMainTAB {   
    display: table; 
    width: auto;
    position:relative;
    margin: 0;
    padding:0; 
    border-spacing: 0;
    margin-left: auto;
    margin-right: auto;
    margin-top: 6em;
}


#KDMain img 
{
    margin:0;
}


@-webkit-keyframes fadeOut { 
    0%    {opacity:0;}
    50%   {opacity:0.8;}
    100%  {opacity:0;}
}

@-moz-keyframes fadeOut { 
    0%    {opacity:0;}
    50%   {opacity:0.8;}
    100%  {opacity:0;}
}


@keyframes fadeOut { 
    0%    {opacity:0;}
    50%   {opacity:0.8;}
    100%  {opacity:0;}
}

.LIGHTBOX_KD {
    /*make things invisible upon start */
    opacity:0;   

    -webkit-animation:fadeIn ease-in 1;  /* only 1 time */
    -moz-animation:fadeIn ease-in 1;
    animation:fadeIn ease-in 1;

    /* this makes sure that after animation is done we remain at the last keyframe value (opacity: 1)*/
    -webkit-animation-fill-mode:forwards;  
    -moz-animation-fill-mode:forwards;
    animation-fill-mode:forwards;

    -webkit-animation-duration:2s;
    -moz-animation-duration:2s;
    animation-duration:2s;

    outline:none;
    overflow: hidden;
    margin: 0;
    padding: 0;
}



.ALBUM_STAR ~ label {
    opacity: 0.5;
    cursor:  pointer;
}

.ALBUM_STAR:hover ~ label  {
    opacity: 0.9;
}
.ALBUM_STAR:hover ~ label  i  {
    opacity: 0.9;
}

.ALBUM_STAR:checked ~ label {
    color: black;
    opacity: 1;
}
.ALBUM_STAR:checked ~ label i {
    color: black;
    opacity: 0.7;
}

.addALLcart {
    color: black;
    cursor: pointer;
}


.KD_ALBUM, .nBasket {display: none;}
.KD_ALBUM, .jpgINFO {display: none;}

.KD_ALBUM_THUMB .ALBUM_STAR {display: none;}
.KD_ALBUM_THUMB .dislike {display: none;}

.ONErow{
    display: table-row;
}

.KD_ALBUM_THUMB 
{
    display: table-cell;
    border-right:0.18em white solid;
}

.KD_ALBUM_THUMB figure {
    position: relative;
}



@-webkit-keyframes xfokusJPG { 
    0%   { opacity: 0;}
    10%  { opacity: 1;}
    20%  { transform: scale(0.5); opacity: 0;}
    100% {transform: scale(1); }
}
@-moz-keyframes xfokusJPG { 
    0%   { opacity: 0;}
    10%  { opacity: 1;}
    20%  { transform: scale(0.5); opacity: 0;}
    100% {transform: scale(1); }
}
@keyframes xfokusJPG 
{ 
    0%   { opacity: 0;}
    10%  { opacity: 1;}
    20%  { transform: scale(0.5); opacity: 0;}
    100% {transform: scale(1); }
}

.fokusJPG {
    -webkit-animation: xfokusJPG 1s ease-in;
    -moz-animation: xfokusJPG 1s ease-in;
    animation: xfokusJPG 1s ease-in;

    -webkit-animation-delay: 0.8s;
    -moz-animation-delay: 0.8s;
    animation-delay: 0.8s;
}


/*.frm_img {
 height: 80px;
}*/

.KD_ALBUM_THUMB figcaption {
    position: relative;
    bottom: 0;
    /* width: 108px;*/
    text-align: center;
    height: 1.5em;
    color: white;
    background-color:rgba(0, 0, 0, 0.2);
    margin-top: 0.1em;
    padding:0 ;
}

.KD_ALBUM_THUMB figcaption label {
    background-color:transparent;
    height: 100%;
}

.KD_ALBUM_THUMB figcaption span
{
    background-color: transparent;
    color:white;
}

.KD_ALBUM_THUMB fieldset {
    border: none;
    margin:0;
    padding:0;
    background-color: rgba(0, 0, 0, 0.5);
}


/*Button Abwählen*/
.KD_ALBUM_THUMB figcaption .ficap1
{
    position: absolute;
    text-align: center;
    /*	line-height: 3em;*/
    white-space: nowrap;
    cursor: pointer;
    width: 33%;
    left:0;
}

/*Button 1 Star*/
.KD_ALBUM_THUMB figcaption .ficap3
{	
    position: absolute;
    text-align: center;
    /*	line-height: 3em;*/
    white-space: nowrap;
    cursor: pointer;
    width: 33%;
    left: 33%;
}


/*Button Basket*/
.KD_ALBUM_THUMB figcaption .ficap6
{
    position: absolute;
    text-align: center;
    /*	line-height: 3em;*/
    white-space: nowrap;
    cursor: pointer;
    width: 33%;
    left:66%;
}

.KD_ALBUM_THUMB figcaption i
{
    font-size: 0.8em;
    background-color: transparent;
    color:white;
}


.KD_ALBUM_THUMB .rating_grp .rating_star 
{
    color:white;
}

/* make hover effect work properly in IE */
.KD_ALBUM_THUMB .rating_star {
    pointer-events: none;
}

/*make all stars orange on rating group hover */
.KD_ALBUM_THUMB .rating_grp:hover .rating_label .rating_star {
    color: blue;
}


/*Rahmen für Einzelbiddarstellung*/ 
#KDMainONE {    
    width: 61.25em;
    min-height: 40.2em;
    text-align: center;
    position:relative;
    margin: 0;
    padding:0; 
    margin-bottom: 1.8em;
}



@-webkit-keyframes fadeIn { from { opacity:0; } to { opacity:1; } }
@-moz-keyframes fadeIn { from { opacity:0; } to { opacity:1; } }
@keyframes fadeIn { from { opacity:0; } to { opacity:1; } }

.ONEJPG {
    position: relative;
    overflow: hidden;
    height: 600px;
    margin: 0;
    padding: 0;
    display: inline-block;
    overflow: visible;
}


.ONEJPG figcaption {
    position: absolute;
    display: none;
    z-index:-1;
    bottom: 0;
    width: 100%;
    text-align: center;
    height: 3em;
    color: white;
    background-color:rgba(0, 0, 0, 0.5);
}

.ONEJPG figcaption label {
    background-color:transparent;
    height: 100%;
}

/*Button Abwählen*/
.ONEJPG figcaption .ficap1
{
    position: absolute;
    display: none;
    z-index:-1;
    text-align: center;
    line-height: 3em;
    white-space: nowrap;
    cursor: pointer;
    width: 11.1111111111111%;
    left:0;
}

/*Lupe*/
.ONEJPG figcaption .ficap1_2
{
    position: absolute;
    display: none;
    z-index:-1;
    text-align: center;
    line-height: 3em;
    white-space: nowrap;
    cursor: pointer;
    width: 11.1111111111111%;
    left:  10%;

}




/*Button 0 Star*/
.ONEJPG figcaption .ficap2
{
    position: absolute;
    display: none;
    z-index:-1;
    text-align: center;
    line-height: 3em;
    white-space: nowrap;
    cursor: pointer;
    width: 3em;
    left: calc((100% / 2) - 3.75em);
}

/*Button 1 Star*/
.ONEJPG figcaption .ficap3
{
    position: absolute;
    display: none;
    z-index:-1;
    text-align: center;
    line-height: 3em;
    white-space: nowrap;
    cursor: pointer;
    width: 3em;
    left: calc((100% / 2) - 3.5em);
}

/*Button 2 Star*/
.ONEJPG figcaption .ficap4
{
    position: absolute;
    display: none;
    z-index:-1;
    text-align: center;
    line-height: 3em;
    white-space: nowrap;
    cursor: pointer;
    width: 3em;
    left: calc((100% / 2) - 1.5em);
}

/*Button 3 Star*/
.ONEJPG figcaption .ficap5
{
    position: absolute;
    display: none;
    z-index:-1;
    text-align: center;
    line-height: 3em;
    white-space: nowrap;
    cursor: pointer;
    width: 3em;
    left: calc((100% / 2) + 0.5em);
}

/*Button Basket*/
.ONEJPG figcaption .ficap6
{
    position: absolute;
    display: none;
    z-index:-1;
    text-align: center;
    line-height: 3em;
    white-space: nowrap;
    cursor: pointer;
    width: 11.1111111111111%;
    left:88.8888888888889%;
}


.ONEJPG figcaption i
{
    font-size: 1.5em;
    background-color: transparent;
    color:white;
}

.ONEJPG [type="radio"] {display:none; }
.ONEJPG [type="checkbox"] { display:none; }

.rating_grp {
    border: none;
    margin:0;
    padding:0;
}

.ONEJPG:focus figcaption,
.ONEJPG:focus figcaption label,
.ONEJPG:focus figcaption fieldset,
.ONEJPG:hover figcaption,
.ONEJPG:hover figcaption fieldset,
.ONEJPG:hover figcaption label
{
    z-index:1; display: block;

    -webkit-animation:fadeIn 1s ease; 
    -moz-animation:fadeIn 1s ease;
    animation:fadeIn 1s ease;

    -webkit-animation-fill-mode:forwards;
    -moz-animation-fill-mode:forwards;
    animation-fill-mode:forwards;

}

.rating_grp .rating_star 
{
    color:white;
}

/* make hover effect work properly in IE */
.rating_star {
    pointer-events: none;
}

/* if any input is checked, make its following siblings grey */
.rating_input:checked ~  form .rating_label .rating_star {
    color: #a1a1a1;
}
/*make all stars orange on rating group hover */
.rating_grp:hover form .rating_label .rating_star {
    color: white;
}
/*make hovered input's following siblings grey on hover */
.rating_input:hover ~  form .rating_label .rating_star {
    color: #a1a1a1;
}



/*****************************************
/* FILP FÜR INFO ANZEIGE
/*****************************************/

.frm_img  {

    position: relative;

    -webkit-transition: 0.6s;
    -moz-transition: 0.6s;
    -ms-transition: 0.6s;
    transition: 0.6s;

    -webkit-transform-style: preserve-3d;
    -moz-transform-style: preserve-3d;
    -ms-transform-style: preserve-3d;
    transform-style: preserve-3d;

}

/* Top left text */
.iOrdering {
    position: absolute;
    top: 0;
    left: 0;
    width: 0;
    height: 0;
    background-color: transparent;
    z-index: 1;
    border-top: 0.8em solid aliceblue;
    border-right: 0.8em solid transparent;
}


/* hide back of pane during swap */
.img_front, .img_back {
    /*backface-visibility: hidden;*/
    top: 0;
    left: 0;
}
/* front pane, placed above back */
.img_front {
    /*	 for firefox 31 */
    -webkit-transform: rotateY(0deg);
    -moz-transform: rotateY(0deg);
    -ms-transform: rotateY(0deg);
    transform: rotateY(0deg);
}


/* back, initially hidden pane */
.img_back {
    display: table;
    position: absolute;
    -webkit-transform: rotateY(180deg);
    -moz-transform: rotateY(180deg);
    -ms-transform: rotateY(180deg);
    transform: rotateY(180deg);
    visibility: hidden;
    background-color: whitesmoke;
    width: 100%;
    height:100%;
    font-size: 0.8em;
}

.img_back_txt {
    display: table-cell;
    vertical-align: middle;
}


/*.ONEJPG {
 -webkit-transition: -webkit-transform 0.4s ease-out;  Saf3.1+, Chrome 
 -moz-transition: -moz-transform 0.4s ease-out;  FF3.5+ 
 -o-transition: -o-transform 0.4s ease-out;  Opera 
 transition: transform 0.4s ease-out;
}

.ONEJPG:hover {
 -webkit-transform: scale(1.1);  Saf3.1+, Chrome 
 -moz-transform: scale(1.5);  FF3.5+ 
 -ms-transform: scale(1.5);  IE9+ 
 -o-transform: scale(1.5);  Opera 
 transform: scale(1.5);
} */


.base_img {
    position:relative;
}


.dislike:checked ~ .base_img  {opacity: 0.25;}
.dislike:checked ~  form .base_img  {opacity: 0.25;}

.dislike:checked ~ .ficap1 i {color: white;}
.dislike:not(:checked) ~ form img {opacity: 1;} 
.dislike:not(:checked) ~ figcaption form .ficap1 i {color: #a1a1a1;}

.jpgINFO:checked ~ .frm_img  {transform: rotateY(180deg);}
.jpgINFO:checked ~ .frm_img .img_back  {visibility: visible; }
.jpgINFO:checked ~ .frm_img .img_front  {visibility: collapse; }
.jpgINFO:checked ~  figcaption form .ficap3 span {color: blue;}

.jpgINFO:hover ~ .frm_img  {transform: rotateY(180deg);}
.jpgINFO:hover ~ .frm_img .img_back  {visibility: visible; }
.jpgINFO:hover ~ .frm_img .img_front  {visibility: collapse; }

.jpgINFO:hover ~  figcaption form .ficap3 span {color: blue;}

.nBasket:checked ~  .ficap6 i {color: white;}
.nBasket:not(:checked) ~ .ficap6 i {color: #a1a1a1;}


/*Nur beim Warenkorb aktiv, Element liegt über figure*/
.nBasket:not(:checked) + figure  {display: none; height: 0; width: 0; z-index: -1;}
.nBasketcnt {display: block; opacity: 0; height: 0; width: 0; z-index: -1;}


.nBasketcnt {	counter-increment: cntBasket;}




.nBasketALLfrm 
{
    position: fixed;
    top: 9.8em;
    left: inherit;
    width: inherit;
    text-align: center;
    height: 3em;
    background-color: white;
}
.nBasketALLfrm form{
    position: relative; 
    display: inline-block;
    opacity: 1;
    cursor: pointer;
}

.nBasketALLfrm form:nth-of-type(1) {
    float:left;
}
.nBasketALLfrm form:nth-of-type(2) {
    float:right;
}

.nBasketALLfrm form:nth-of-type(1)::after {
    content: ' ('counter(cntBasket)' Bilder)';
}



/*
.ONEJPG:before {
        content: "i";
        position: absolute;
        bottom: 1em;
        left: 1em;
        background: rgba(255, 255, 255, 0.8);
        color: black;
        width: 1.5em;
        height: 1.5em;
        border-radius: 1em;
        text-align: center;
        font-size: 1.5em;
        line-height: 1.5em;
        -webkit-transition: all 1s ease;
        transition: all 1s ease;
}
*/

.ONEJPG:focus:before,
.ONEJPG:hover:before {
    background: rgba(255, 255, 255, 0);
    color: rgba(0, 0, 0, 0);
}


.LIGHTBOX {
    /*make things invisible upon start */
    opacity:0;   

    -webkit-animation:fadeIn ease-in 1;  /* only 1 time */
    -moz-animation:fadeIn ease-in 1;
    animation:fadeIn ease-in 1;

    /* this makes sure that after animation is done we remain at the last keyframe value (opacity: 1)*/
    -webkit-animation-fill-mode:forwards;  
    -moz-animation-fill-mode:forwards;
    animation-fill-mode:forwards;

    -webkit-animation-duration:2s;
    -moz-animation-duration:2s;
    animation-duration:2s;

    display: none;
    position: relative;
    max-width: 100%;
    height: 100%;
    outline:none;
    overflow: hidden;
}

.LIGHTBOX:target {
    /** Show LIGHTBOX when it is target */
    display: inherit;
    text-align: center;
} 

.LIGHTBOX:target ~
#GALLERY{
    display: none;
    z-index:-1;
} 
.LIGHTBOX:target ~
.IMGTITLE{
    display: none;
    z-index:-1;
}


.uniTableWrap {
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    top:0;
    background-color: transparent;
}



.LIGHTBOX_NAVI {
    position: absolute;
    display:table;
    opacity:0;

    width: 100%;
    height:100%;
    top:0;

    font-size: -webkit-calc(100% + 3vw);
    font-size: -moz-calc(100% + 3vw);
    font-size: -ms-calc(100% + 3vw);
    font-size: -o-calc(100% + 3vw);
    font-size: calc(100% + 3vw);

    font-weight:100;

    border:none;
    background-color: transparent;
    z-index: 1;

    -webkit-animation:fadeOut 3s ease-out 1;  
    -moz-animation:fadeOut 3s ease-out 1;
    animation:fadeOut 3s ease-out 1 ;


    -webkit-animation-delay:2.5s;
    -moz-animation-delay:2.5s;
    animation-delay:2.5s;
}


.LIGHTBOX:target .LIGHTBOX_NAVI {
    display:table;
} 


.imgPREV {
    display: table-cell;
    background-color: transparent;
    border:none;
    outline:0;
    color:white;
    left:0%;
    height: 100%;
    text-align: left;
    vertical-align: middle;
    z-index: 1;
}

.imgPREV i,
.imgCLOSE i,
.imgNEXT i
{
    background-color: transparent;
    color:white;
}


.imgCLOSE {    
    display: table-cell;
    background-color: transparent;
    border:none;
    outline:0;
    color:white;
    left:33.33333333333%;
    text-align: center;
    vertical-align: middle;
    z-index: 1;
}

.imgNEXT{   
    display: table-cell;
    background-color: transparent;
    border:none;
    outline:0;
    color:white;
    left:66.66666666666%;
    text-align: right;
    vertical-align: middle;
    z-index: 1;
}




.imgTXT {
    position: absolute;
    right: 0;
    text-align: center;
    background-color:transparent;
    color: white;
    font-size: 4.2vh;
    padding-right: 0.5em;
}


/*Lupe Magnify*/
.img-magnifier-glass {
    position: absolute;
    border: none;
    border-radius: 50%;
    cursor: none;
    width: 300px;
    height: 300px;
    left: 0;
    top: 0;
    visibility: visible;
    z-index: 10;
    overflow: visible;
}



#ALBUM_MAIN
{
    display: inline-block;
    bottom: 0;
    margin: 0;
    min-height: 31.563em;
    
    background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='100%25' width='100%25'%3E%3Cdefs%3E%3Cpattern id='doodad' width='6' height='6' viewBox='0 0 40 40' patternUnits='userSpaceOnUse' patternTransform='rotate(90)'%3E%3Crect width='100%25' height='100%25' fill='rgba(245, 245, 245,1)'/%3E%3Cpath d='M0 20h0.7v20h-0.7zM2 20h0.7v20h-0.7zM4 20h0.7v20h-0.7zM6 20h0.7v20h-0.7zM8 20h0.7v20h-0.7zM10 20h0.7v20h-0.7zM12 20h0.7v20h-0.7zM14 20h0.7v20h-0.7zM16 20h0.7v20h-0.7zM18 20h0.7v20h-0.7zM20 20h0.7v20h-0.7zM22 20h0.7v20h-0.7zM24 20h0.7v20h-0.7zM26 20h0.7v20h-0.7zM28 20h0.7v20h-0.7zM30 20h0.7v20h-0.7zM32 20h0.7v20h-0.7zM34 20h0.7v20h-0.7zM36 20h0.7v20h-0.7zM38 20h0.7v20h-0.7zM40 20h0.7v20h-0.7zM42 20h0.7v20h-0.7zM44 20h0.7v20h-0.7zM46 20h0.7v20h-0.7zM48 20h0.7v20h-0.7zM50 20h0.7v20h-0.7zM52 20h0.7v20h-0.7zM54 20h0.7v20h-0.7zM56 20h0.7v20h-0.7zM58 20h0.7v20h-0.7zM60 20h0.7v20h-0.7zM62 20h0.7v20h-0.7zM64 20h0.7v20h-0.7zM66 20h0.7v20h-0.7zM68 20h0.7v20h-0.7zM70 20h0.7v20h-0.7zM72 20h0.7v20h-0.7zM74 20h0.7v20h-0.7zM76 20h0.7v20h-0.7zM78 20h0.7v20h-0.7zM40 20h0.7v20h-0.7z' fill='rgba(203, 213, 224,1)' filter='url(%23filter-doodad-1)'/%3E%3Cpath d='M1 20h0.7v20h-0.7zM3 20h0.7v20h-0.7zM5 20h0.7v20h-0.7zM7 20h0.7v20h-0.7zM9 20h0.7v20h-0.7zM11 20h0.7v20h-0.7zM13 20h0.7v20h-0.7zM15 20h0.7v20h-0.7zM17 20h0.7v20h-0.7zM19 20h0.7v20h-0.7zM21 20h0.7v20h-0.7zM23 20h0.7v20h-0.7zM25 20h0.7v20h-0.7zM27 20h0.7v20h-0.7zM29 20h0.7v20h-0.7zM31 20h0.7v20h-0.7zM33 20h0.7v20h-0.7zM35 20h0.7v20h-0.7zM37 20h0.7v20h-0.7zM39 20h0.7v20h-0.7zM41 20h0.7v20h-0.7zM43 20h0.7v20h-0.7zM45 20h0.7v20h-0.7zM47 20h0.7v20h-0.7zM49 20h0.7v20h-0.7zM51 20h0.7v20h-0.7zM53 20h0.7v20h-0.7zM55 20h0.7v20h-0.7zM57 20h0.7v20h-0.7zM59 20h0.7v20h-0.7zM61 20h0.7v20h-0.7zM63 20h0.7v20h-0.7zM65 20h0.7v20h-0.7zM67 20h0.7v20h-0.7zM69 20h0.7v20h-0.7zM71 20h0.7v20h-0.7zM73 20h0.7v20h-0.7zM75 20h0.7v20h-0.7zM77 20h0.7v20h-0.7zM79 20h0.7v20h-0.7z' fill='rgba(245, 245, 245,1)'/%3E%3C/pattern%3E%3Cfilter id='filter-doodad-1'%3E%3CfeTurbulence baseFrequency='0.1' numOctaves='2' type='fractalNoise' result='result1'/%3E%3CfeDisplacementMap in2='result1' scale='1' result='result2' xChannelSelector='R' in='SourceGraphic'/%3E%3CfeComposite in2='result2' in='SourceGraphic' operator='atop' result='fbSourceGraphic'/%3E%3C/filter%3E%3C/defs%3E%3Crect fill='url(%23doodad)' height='200%25' width='200%25'/%3E%3C/svg%3E ")
    ;
}



#ALBUM_MAIN figure
{
    margin-bottom: 1em;
}

#ALBUM_MAIN figure figcaption
{
    color: black;
}

.ALBUMtxt {
    font-size: 0.8em;
    margin-bottom: 0.5em;
}




.BASKET 
{
    margin-top: 0.5em;
    margin-bottom: 0.5em;
    text-align: center;
}
.BASKET [type="checkbox"]  {
    cursor: pointer;
}

.navLINK {
    font-size: 1.0em;
}


/*******************
    GALLERY GRIT
*******************/
#SLIDER {
    position:relative;
    max-width: 100%;
    height: auto;
    text-align: center;
}

#GALLERY {
    display: table-cell;
    vertical-align:bottom;
    width: 61.25em;
    height: 31.563em;
    text-align: center;
    position:relative;
    max-width:100%;
    margin: 0;
    padding:0;    
}

#GALLERY .item {
    display: table-cell;
    bottom: 0;
    margin: 0;
    border-right:0.1em white solid;
}

#GALLERY section:last-of-type {
    border-right:0;
}

#GALLERY a {
    text-decoration:none;
}


.GALLERY_fig {
    margin: 0;
    padding: 0;
}
.GALLERY_fig figcaption {
    margin: 0;
    padding: 0;
    text-align: left;
    font-size: 0.8em;
}


.IMGTITLE
{
    position:relative;
    max-width: 100%;
    height: 100%; 

    margin: 0;
    margin-top: 0.3em;
    padding:0; 
    height: 1.5em;

    z-index: 1;
}

.GALLERY_Album
{
    font-size: 3em;
    opacity: 0.1;
}




#AUTOSLIDE {
    position:relative;
    width: 980px;
    height: 500px;
    text-align: center;
    overflow:hidden;
}

#AUTOSLIDE img{
    opacity:0;
    position:absolute;
    width: 980px;
    height: 500px;
    top:0;
    left:0;
}

/*Setzt den Container auf die passsende Groesse*/
#AUTOSLIDE img:first-child {position:relative;}




/*SEITENBLAETTERN*/
#LiPUNKTE {
    margin: 0;
    padding:0; 
    position:relative;
    text-align:left;
    list-style-type: none;
}

#LiPUNKTE li {
    display:inline-block;
}

.PUNKTE {
    height: 1em;
    margin-right: 0.5em;
    padding:0;    
    font-family: icomoon;
    /*    font-size: 1.3em;*/
    border:none;
    border: 0;
    background-color: white;
}



/*******************
     PREISSEITE
*******************/

#PREISE {
    display: table;
    table-layout: fixed;
    width: 980px;
    height: 500px;
    vertical-align:top;
    text-align: center;
    position:relative;
    /*margin-bottom: 1.75em;*/
    padding:0;
    border-spacing: 0;
    border-collapse:  collapse;
}

#PREISE figure{
    display: table-cell;
    bottom: 0;
    margin: 0;
    border:none;
    border-spacing: 0;
    border-collapse: collapse;
    opacity: 0.6;
}

#PREISE figure form {
    height:250px;
}

#PREISE figure:hover {
    opacity: 1;
}

.wrap {
    width: 490px;
    height: 500px;
    overflow: hidden;
    margin: 0;
    padding: 0;
}


/*Preise Detail*/
.offerbox {
    width: 490px;
    height: 500px;
    display: table-cell;
    bottom: 0;
    margin: 0;
    border:none;
    border-spacing: 0;
    border-collapse: collapse;
    vertical-align:middle;
}


.offerbox_backside {
    display: none;
}

.offerbox_turn {
    display: none;
}

.lbl_offerbox_turn {
    float: right;
    bottom: 0;
}


.offerbox_turn:checked ~ .offerbox_backside { display: table-cell;}
.offerbox_turn:checked ~ .offerbox_frontside { display: none;}

.offerbox_full {
    width: 980px;
    height: 500px;
    display: table-cell;
    bottom: 0;
    margin: 0;
    border:none;
    border-spacing: 0;
    border-collapse: collapse;
    vertical-align:middle;
}


.offernavHOME, .offernavHOMExlast {
    display: table-cell;
    bottom: 0;
    position: absolute;
}
.offernavNEXT {
    display: table-cell;
    bottom: 0;
    position: absolute;
    right: 0;
}

.offernavHOMExlast{
    display: none;
}

/*+++++++++++++++++++++++++++++++++*/
/*Preise Formatierung individuell*/
/*+++++++++++++++++++++++++++++++++*/       
.offerboxtxt {
    font-size: 1.1em;
    text-align: left;
    padding-left: 1em;
    vertical-align:top;
    text-align: justify;
    vertical-align: text-top;

    height: 500px;

    overflow-wrap: break-word;
    word-wrap: break-word;
    -webkit-hyphens: auto;
    -ms-hyphens: auto;
    -moz-hyphens: auto;
    hyphens: auto;
}

.offertxtbig {
    font-size: 2em;
}

.offer_ltr {
    text-align: right;
}

.offer_rtl {
    text-align: left;
}



/*******************
BILD mit TEXT GRIT
*******************/
#BLOGMain {
    display: table;
    table-layout: fixed;
    width: 61.25em;
    position:relative;
    margin: 0;
    padding:0; 
    padding:0;
    border-spacing: 0;
    border-collapse:  collapse;
}

.BLOGrow {
    display: table-row;
}

#BLOGMain hr{
    height: 0.05em;
    border: none;
    background: #cccccc;
}


.FREITEXT {
    vertical-align: top;
    display:inline-block;
    bottom: 0;
}

.rtxtBOX {
    line-height: 120%;
    margin-left: 1em;
    margin-top: 5.0em;
    font-size: 0.9em;
}

.ltxtBOX {
    line-height: 120%;
    margin-left: 0em;
    margin-top: 5.0em;
    font-size: 0.9em;
    text-align: left;
}

/*SU*/
.AINFO {
    color: green;  
}
.AWARN {
    color: red;  
}

#map {
    width:980px;
    height:500px;
    z-index: 1;
    background-color: white;
}


.email2txtbox{
    width: 50%;
    display: inline-block;
}
.email2txt{
    resize: none;
    border: 1px solid;
}





@media only screen and (max-width:980px)
{

    #xHEADER {margin-top: 0em;}
    #IMPRESS {margin-top: 1em;}

    #uBRAND   {padding-top: 0em;}
    #BRAND    {height: 120px;}

    #BURGER {font: inherit; z-index:2; display:block;}




    .NAVI ul li:hover > ul { position: relative !important;}

    .NAVI{
        font-size:medium;
        position: fixed;        
        top:7em;
        padding-left:0.5em;
        left:0;
        margin-right:2em;
        height: 50%;
        width: 70%;
        overflow-y:scroll;
    }

    .NAVI ul{padding-top: 3em;}

    .NAVI ul li {display: block; 
                 text-align: left; 
                 padding: 0; 
                 margin:0; 
                 margin-bottom: 1em;}

    .NAVI ul ul { display: block; 
                  position: relative; 
                  font: inherit; 
                  z-index: auto;
                  padding: 0; 
                  margin:0;}

    .NAVI ul ul li { 
        position: relative; 
        font: inherit; 
        z-index: auto;
        padding: 0; 
        margin:0;
        margin-bottom: 0.5em;
        margin-top: 1em;
        margin-left: 1em;}


    #SLIDER,  #SLIDER img,  

    #AUTOSLIDE,  #AUTOSLIDE img,

    #GALLERY, #GALLERY img,


    #KDMain, #KDMain img, #KDMain .NAVI, #KDMain section,

    KDMainHead,
    #KDMainTAB, #KDMainTAB img,
    .LIGHTBOX_KD, 

    /* .KD_ALBUM_THUMB figcaption, .ONErow, .ONErow figure, .KD_ALBUM_THUMB,*/

    #ALBUM_MAIN,

    #KDMainONE, #KDMainONE img,

    .LIGHTBOX_KD, 

    #PREISE, #PREISE img,
    .frm_img,
    .offerbox,
    .offerboxtxt,
    .offerbox_full,
    .wrap,
    .email2txtbox, .email2txt, 

    #BLOGMain, #BLOGMain img, #BLOGMain section
    {width:100%; height:auto;}


    #xMAIN, #KDMainONE {
        min-height:0;
        height:auto;
        margin-top: 0;
    }

    .ONErow, .KD_ALBUM_THUMB {
        display: block;
        margin: 0;
        border:none;
    }

    .KD_ALBUM_THUMB {
        margin-bottom: 2em;
    }

    .KD_ALBUM_THUMB figcaption,  .img_back {
        font-size: 1.5em;
    }




    #PREISE figure form { 
        height: 0;
    }
    .offerboxtxt,  .offerbox {
        text-align: left;
        padding-left: 0;
    }

    #GALLERY .item, #KDMain .NAVI, .offerbox {
        display: inline-block;
    }

    /*+++++++++++++PREISE+++++++++++++++++++++*/
    .offerbox_turn:checked ~ .offerbox_backside { display: initial;}
    .offerbox_turn:checked ~ .offerbox_frontside { display: initial;}

    .offernavHOME, .offernavNEXT {
        display: none;
    }

    .offernavHOMExlast {
        display: initial;
        font-weight: bold;
    }



    .LIGHTBOX_KD, #KDMain img
    {margin:0;}

    #KDMainHead {
        display: flex;
        justify-content: space-between;
        top: 5em;
        height: 5em;
    }

    .nBasketALLfrm {
        display: grid;
    }


    .rtxtBOX {margin-top:0;}



    #fxBURGER:checked ~
    #xNAVI {
        font: inherit;  
        display: block; 
        z-index: 1;
    } 


    #fxBURGER:not(:checked) ~
    #xNAVI{font: 0/0 serif;  
           z-index:-1;
           display: none;
    }





    #frmLOGIN
    {
        margin:0;
        width: 100%;
        height: 100%;
    }

    #frmLOGIN .modal_content
    {
        margin:0;
        max-width: 80%;
        max-height: 80%;
        margin: auto;
        font-size:smaller; 
    }

}

