:root{
    --contentBoxedWidth: 2560px;
}
.sbox-s {
    max-width: 300px;
    margin-left: auto;
    margin-right: auto;
}
.sbox-m {
    max-width: 500px;
    margin-left: auto;
    margin-right: auto;
}
.sbox-l {
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
}
.sbox-xl {
    max-width: 1500px;
    margin-left: auto;
    margin-right: auto;
}
body {
    background: #000;
}
#mpic {
  height: -100px;
}
.smartmenu-content {
    background: black;
}
.header {
	position: fixed;
}
.htop {
  padding-top: 79px;
}
.htop-main {
  padding-top: 60px;
}
.bottom {
  height: 100dvh;
  align-content: end;
  align-self: end;
  padding-bottom: 50px;
}
.bottom_main {
    height:100vh;
}
.mail-txt {
    top: -130px;
}
@media only screen and (max-width:767px) {
    .mail-txt {
    top: unset;
}
}


.mainframe {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-flow: column nowrap;
  font-family: monospace;
}
.top_wrap {
  height: 100vh;
  padding: 0;
  margin: 0;
  
}
.no-mar_pad {
    .ce_bgimage-inside.contentwrap.pt-no.pb-no {
    padding: 0 0 0 0;
    margin: 0 0 0 0;
     }
}
/*div.ce_bgimage-image {
  *  filter: brightness(70%);
}*/
.flex-cont-mid-box1{
    display: flex;
    height: calc(100dvh - 120px);
    /* Zentriert horizontal */
    align-items: center;     /* Zentriert optional auch vertikal */
    gap: 0px;               /* Abstand zwischen den Elementen */
}
.flex-cont-mid{
    display: flex;
    flex-direction: column;
    height: 80dvh;
    /* Zentriert horizontal */
    align-items: center;     /* Zentriert optional auch vertikal */
    gap: 0px;               /* Abstand zwischen den Elementen */
}
.flex {
    flex-direction:column;
}
/* Scroll */
/* 1. The Scroll Container */
.container_scroll {
  height: 100vh;
  overflow-y: scroll;
  scroll-snap-type: y mandatory; /* Locks to y-axis strictly */
  scroll-behavior: smooth; /* Animates the transition */
}

.section_w {
  height: 100vh;
  scroll-snap-align: start; /* Aligns the start of the section to the top of the viewport */
  scroll-snap-stop: always; /* Prevents skipping multiple sections on fast swipes/scrolls */
}
/* scroll bleibt in box */
.with-contain {
	overscroll-behavior: contain;
}


.mod_portfoliolist.portfolio-col1 .content{ 
    background: var(--bodyBackgroundColor);
}
.mod_portfoliolist.portfolio-col1 .image_container::before{
    background-color: var(--bodyBackgroundColor);
}
.mod_portfoliolist.portfolio-col1 .item {
    border-top: 2px solid;
    border-color: var(--customColor2);
}
.mod_portfoliolist.portfolio-col1 .item a {
    color: var(--customColor1);
}


.ce_portfoliofilter.style1 a.selected, .ce_portfoliofilter.style1 a:hover, .ce_portfoliofilter.default a.selected, .ce_portfoliofilter.default a:hover {
    background: var(--customColor1);
    color: var(--body-color);
}
.ce_portfoliofilter.style1 a, .ce_portfoliofilter.default a {
    border: 1px solid;
    border-color: var(--customColor1);
    color: var(--body-color);
}

/* TABS START */
.ce_tabs .tabs.horizontal ul {
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 35px;
    display: inline-flex;
    align-items: center;
    gap: 0;
    background: transparent;
    border-radius: 40pxpx;
    padding: 4px;
    text-align: center;
    border: 1px solid;
    border-color: var(--customColor1);
}
.ce_tabs .tabs.horizontal ul li.active {
    background: var(--customColor1);
    border-radius: 40pxpx;
}
.ce_tabs .tabs.horizontal ul li:hover span, .ce_tabs .tabs.horizontal ul li.active span {
    color: var(--body-color);
}

/* TABS END */

/*Chartbar START*/
.ce_chartbar.slim-x .chart_data span {
    color: var(--body-color);
}
/*Chartbar END*/

/* submit Form)*/
input.submit, button.submit {
    padding: 15px 20px;
    height: 48px;
    font-size: 1rem;
    width: auto;
    background: var(--customColor1);
    color: ar(--body-color);
    border-radius: 5px;
}
input.submit[type="submit"]:hover, button.submit[type="submit"]:hover {
    background: var(--customColor1);
    opacity: 0.8;
}
/* Tabelle START */
 /*.fixTableHead {
   overflow-y: auto;
   height: 50vh;
}

.fixTableHead thead th {
   position: sticky;
   top: 0;
}
*/
.ce_table table th{
    /*background: rgba(153,137,100,0.2); */
    background: rgba(153,137,100,0.2);
    border-bottom: 1px solid;
    border-color: var(--customColor1);
}
.ce_table.table-striped td, .ce_table.table-striped tr:nth-child(2n) td  {
    background: transparent;
    border-bottom: 1px solid;
    border-color: var(--customColor1);
}

.ce_table tr:hover{
    background: black;
}
.ce_table table a {
    text-decoration: underline;
    color: var(--body-color);
}
.ce_table table a:hover {
    text-decoration: underline;
    color: var(--customColor1);
}
/* Tabelle END */
/* Hover Portfolio START */
.mod_portfoliolist.portfolio-col1 .image_container:hover {
  -webkit-filter: grayscale(100%);
  filter: grayscale(100%);
}

/* Hover Portfolio END */
/* Pagination Portfolio */
.mod_portfoliolist_v1_pagination .pagination li a, .mod_portfoliolist_v1_pagination .pagination li span {
    background: none;
    display: block;
    margin-right: 0;
    color: inherit;
    text-decoration: none;
    padding: 0px 10px;
}
.mod_portfoliolist_v1_pagination .pagination {
    padding: 0px 30px;
}
.mod_portfoliolist_v1_pagination .pagination .active {
   color: var(--customColor1);
}


.form-confirmation {
    background: black;
    flex-direction: column;
    align-content: center;
    min-height: 100px;
    text-align: center;
    padding: 20px 0 20px 0;
    border: 2px solid;
    border-color: var(--customColor1);
    border-radius: 5px;
}

.pdf-pc {
    height: 50px;
    padding: 0;
    margin: 0;
}

.ce_table.flats table td:last-child {
    padding: 5px 0 0 0;
    text-align: center;
}
.ce_portfoliofilter.style2 .ce_portfoliofilter_content, .ce_portfoliofilter.only-icon .ce_portfoliofilter_content {
    background: var(--customColor2);
    color: var(--body-color);
    border-radius: 40px;
    padding: 4px;
    border: 2px solid;
    border-color: var(--customColor1);
    /* color: white; */
}
.ce_portfoliofilter.style2 .ce_portfoliofilter_content a.selected, .ce_portfoliofilter.only-icon .ce_portfoliofilter_content a.selected {
    background: var(--customColor1);
    border-radius: 40px;
    color: var(--body-color);
}
.ce_portfoliofilter.style2 .ce_portfoliofilter_content a, .ce_portfoliofilter.only-icon .ce_portfoliofilter_content a {
    color: var(--body-color);
}



.header .smartmenu .smartmenu-trigger .line, .header .smartmenu .smartmenu-trigger .line::before, .header .smartmenu .smartmenu-trigger .line::after {
    background: var(--customColor1);
}
.smartmenu-content .smartmenu-close::before, .smartmenu-content .smartmenu-close::after {
    background: var(--customColor1);
}
.smartmenu-content .mod_navigation a:hover, .smartmenu-content .mod_navigation a:active {
    color: var(--customColor1);
}
.smartmenu-content .mod_navigation a.active, .smartmenu-content .mod_navigation a.trail {
    border-bottom: 2px solid;
    color: var(--customColor1);
}

.bord_contact {
    border: 2px solid;
    border-color: var(--customColor1);
    border-radius: 10px;
    padding:0;
}
/* ARROW DOWN Start */
#sd {
  &-container {
    position: fixed;
    bottom: 10px;
    left: 50%;
    transform: translateY(-50%);
  }
}

.arrow-sdc {
  position: relative;
  width: 42px;
  height: 16px;
  opacity: 0;
  
  &::before,
  &::after {
    content: "";
    width:21px;
    height: 2px;
    background-color: #fff;
    border-radius: 2px;
    display: inline-block;
  }
  
  &::before {
    transform: rotate(45deg) translateX(25%)
  }
  
  &::after {
    transform: rotate(-45deg) translateX(-25%)
  }
  
  &:nth-child(1) {
    top: -50px;
    opacity: 1;
    animation: arrow-sdc2 1s ease 0s infinite;
  }
  
  &:nth-child(2) {
    top: -25px;
    animation: arrow-sdc1 1s ease 0.25s infinite;
  }
}

@keyframes arrow-sdc1 {
  from {
    opacity: 0;
    top: -25px;
  }
  
  to {
    opacity: 0;
    top: 0px;
  }
  
  50% {
    opacity: 1;
  }
}

@keyframes arrow-sdc2 {
  from {
    opacity: 0;
    top: -35px;
  }
  
  to {
    opacity: 0;
    top: -10px;
  }
  
  50% {
    opacity: 1;
  }
}
.main-arrow {
    text-align: center;
    text-align: -webkit-center;
}
/* ARROW DOWN End */
