/*
Theme Name: Savenergy
Theme URI: https://www.foxcomputers.ch
Author: Fox Computers
Author URI: https://www.foxcomputers.ch
Version: 2021
Requires at least: 5.0
Tested up to: 5.8
Requires PHP: 7.0
License: GNU General Public License v3 or Later
License URI: https://www.gnu.org/licenses/gpl.html
Text Domain: savenergy

Savenergy WordPress Theme © 2011-2022 Fox Computers
Savenergy is distributed under the terms of the GNU GPL
*/

* {
    margin:0;
    padding:0;
    border:0;
    font-size:100%;
    font:inherit;
    vertical-align:baseline;
    outline: none;
    box-sizing: border-box;
    -webkit-appearance:none;
}
html {
    scroll-behavior:smooth
}
body {
    line-height:1
}
a {
    text-decoration-skip-ink:auto
}
a[href^="tel"] {
    color:inherit;
    text-decoration:none
}
ol,ul {
    list-style:none
}
img {
    max-width:100%;
    height:auto;
}
strong {
    font-weight: 700 !important;
}
.wp-caption, .wp-caption-text, .gallery-caption {
    display: none;
}
.alignright {
    float:right;
    margin:0 0 20px 20px;
}
.alignleft {
    float:left;
    margin:0 20px 20px 0;
}
.aligncenter {
    display: block;
    margin:0 auto 20px auto;
}

#header {
    position: fixed;
    top:0;
    left:0;
    width:100%;
    background:rgba(255,255,255,.9);
    z-index: 1000;
}
#header-inner {
    margin:0 auto;
    max-width:1920px;
    position: relative;
    font-size:0;
}
#header #logo {
    display: inline-block;
    padding:42px 56px 21px 56px;
    transition: all .3s ease;
}
#header.shrink #logo {
    padding:10px 56px;
    transition: all .3s ease;
}
#header #logo img {
    display: block;
    width:106px;
    height:118px;
    transition: all .3s ease;
}
#header.shrink #logo img {
    width:54px;
    height:60px;
    transition: all .3s ease;
}
#header #menu {
    position: absolute;
    top:40px;
    right:56px;
    transform: translate(0,0);
    transition: all .3s ease;
}
#header.shrink #menu {
    top:50%;
    transform: translate(0,-50%);
    transition: all .3s ease;
}

#menu ul {
    font-size:0;
    text-align: right;
}
#menu ul li {
    display: inline-block;
    margin:0 17px;
    position: relative;
}
#menu ul li a {
    font-family: museo-sans, sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size:20px;
    line-height:30px;
    color:#000;
    padding:6px 14px;
    text-decoration: none;
    border:1px solid transparent;
    transition: all .3s ease;
}
#menu ul li a:hover, #menu ul li.current-menu-item > a, #menu ul li.current-menu-ancestor > a, .single-referenzen #menu ul li.menu-item-object-referenzen > a {
    border:1px solid #707070;
    transition: all .3s ease;
}
#menu ul li .sub-menu {
    display: none;
    position: absolute;
    left:0;
    padding-top:10px;
    text-align: left;
}
#menu ul li .sub-menu li {
    display: block;
    margin:0;
    background:#fff;
    padding:0 14px;
    white-space: nowrap;
}
#menu ul li .sub-menu li:nth-child(1) {
    padding:8px 14px 0 14px;
}
#menu ul li .sub-menu li:nth-last-child(1) {
    padding:0 14px 8px 14px;
}
#menu ul li .sub-menu li.special-gap {
    padding:8px 14px !important;
}
#menu ul li .sub-menu li a {
    font-size:16px;
    line-height:26px;
    padding:0;
    border:none;
}
#menu ul li .sub-menu a:hover, #menu ul li .sub-menu li.current-menu-item a {
    color:#FFDC00;
}
#menu ul li:hover .sub-menu {
    display: block;
}

#container {
    padding-top:248px;
}
.home #container {
    padding-top:222px;
}
.page-id-500 #container {
    padding-top:162px;
}

.page-template-default #content {
    padding-top:54px;
}

#content h1 {
    font-family: museo-sans, sans-serif;
    font-weight: 900;
    font-style: normal;
    font-size:52px;
    line-height:60px;
    color:#FFDC00;
    text-transform: uppercase;
}
.home #content h1, #content #news-list h1, .post-type-archive-dienstleistungen #content h1, #content #service-lead-text h1, #content #sitebuilder h1, #content .sbi-calc-text-inner h1 {
    margin-bottom:32px;
}
#content #ref-layout h1, #content #contact-layout h1 {
    margin-bottom:58px;
}
#content h2 {
    font-family: museo-sans, sans-serif;
    font-weight: 900;
    font-style: normal;
    text-transform: uppercase;
    font-size:30px;
    line-height:36px;
    color:#000;
}
#content h1.no-text-tranform, #content h2.no-text-tranform {
    text-transform: none;
}
#content .home-service-item h2 {
    color:#fff;
    margin-bottom:16px;
    text-align: center;
    transition: all .3s ease;
}
#content #home-news h2 {
    font-size:52px;
    line-height:60px;
    color:#fff;
    margin-bottom:30px;
}
#content #service-lead-text h2, #content .sb-item h2, #content .sbi-calc-text-inner h2 {
    text-transform: none;
    margin-bottom:24px;
}
#content h2 a {
    color:#000;
    text-decoration: none;
}
#content #ref-grid-items .ref-grid-item .ref-grid-item-overlay h2 {
    line-height:30px;
    color:#FFDC00;
}
#content .team-grid-item h2 {
    font-size:20px;
    line-height:30px;
    text-transform:none;
}
#content h3 {
    font-family: museo-sans, sans-serif;
    font-weight: 900;
    font-style: normal;
    text-transform: uppercase;
    font-size:30px;
    line-height:36px;
    color:#000;
    margin-bottom:18px;
}
#content #ref-grid-items .ref-grid-item .ref-grid-item-overlay h3 {
    font-weight: 300;
    font-size:20px;
    line-height:30px;
    color:#FFDC00;
    text-transform: none;
    margin:0;
}
#content #ref-info-text h3 {
    font-size:20px;
    line-height:28px;
    margin:0;
}
#content .ref-quote h3 {
    padding-top:28px;
    font-weight: 700;
    text-transform:none;
    font-size:20px;
    line-height:28px;
    font-style: italic;
}
#content .sbi-acc-panel h3 {
    font-weight: 700;
    font-size:20px;
    line-height:30px;
    text-transform:none;
    margin-bottom:0; 
}
#footer .footer-col h3 {
    font-family: museo-sans, sans-serif;
    font-weight: 700;
    font-style: normal;
    font-size:18px;
    line-height:30px;
    color:#fff;
}
#content p {
    font-family: museo-sans, sans-serif;
    font-weight: 300;
    font-style: normal;
    font-size:20px;
    line-height:30px;
    color:#000;
    margin:0 0 30px 0;
    -webkit-hyphens: auto;
    -moz-hyphens: auto;
    -ms-hyphens: auto;
    hyphens: auto;
    -webkit-hyphenate-limit-before: 3;
    -webkit-hyphenate-limit-after: 4;
    -ms-hyphenate-limit-chars: 10 3 4;
    hyphenate-limit-chars: 10 3 4;
}
#content .team-grid-item p {
    margin:0;
}
#content #home-lead p {
    font-size:38px;
    line-height:50px;
    margin:0;
}
#content .home-news-item p {
    font-size:18px;
    line-height:28px;
    margin:0;
}
#content .home-service-item p {
    font-size:18px;
    line-height:28px;
    color:#fff;
    text-align: center;
    margin:0;
    transition: all .3s ease;
}
#content .ref-quote p {
    font-size:24px;
    line-height:28px;
    font-style: italic;
    margin:0;
}
#content .ref-info-gallery-grid-item p, #content .sbi-ifull-caption p, #content .sbi-iblisr p, #content .sbi-islibr p, #content .sbi-igallery-grid-item p, #content #contact-layout-image p {
    font-size:16px;
    line-height:20px;
    margin:0;
    padding-top:10px;
}
#content .sbi-igallery-grid-item:nth-child(2) p {
    padding-left:56px;
    padding-right:56px;
}
#content .sbi-igallery-grid-item:nth-child(3) p {
    padding-left:27px;
    padding-right:27px;
}
#content .sbi-igallery-grid-item p {
    padding-left:16px;
    padding-right:16px;
}
#content .pdf-frame-text p {
    margin:0;
    padding-top:0;
}
#footer .footer-col p {
    font-family: museo-sans, sans-serif;
    font-weight: 300;
    font-style: normal;
    font-size:18px;
    line-height:30px;
    color:#fff;
}
span.nlic-date, span.nlcl-date {
    display: block;
    font-family: museo-sans, sans-serif;
    font-weight: 300;
    font-style: normal;
    font-size:20px;
    line-height:30px;
    color:#969696;
    margin-bottom:8px;
}
#content p a, #content ul li a, #content ol li a {
    color:#000;
}
#content p a:hover, #content ul li a:hover, #content ol li a:hover {
    text-decoration: none;
}
#content .home-news-item p a {
    color:#000;
    display: inline-block;
}
#footer .footer-col p a {
    color:#fff;
}
#footer .footer-col p a:hover, #footer .footer-col p a.phone {
    text-decoration: none;
}
#content ul, #content ol {
    margin:0 0 30px 0;
    padding-left:20px;
}
#content ul.ref-dos-list {
    padding-left:16px;
}
#content ul li {
    font-family: museo-sans, sans-serif;
    font-weight: 300;
    font-style: normal;
    font-size:20px;
    line-height:30px;
    color:#000;
    list-style: disc;
}
#content ul.ref-dos-list li {
    list-style: none;
    position: relative;
}
#content ul.ref-dos-list li:before {
    content:"-";
    font-family: museo-sans, sans-serif;
    font-weight: 300;
    font-style: normal;
    font-size:20px;
    line-height:30px;
    color:#000;
    position: absolute;
    top:0;
    left:-16px;
}
#content ol li {
    font-family: museo-sans, sans-serif;
    font-weight: 300;
    font-style: normal;
    font-size:20px;
    line-height:30px;
    color:#000;
    list-style: decimal;
}
#content .home-service-item:hover h2, #content .home-service-item:hover p {
    color:#FFDC00;
    transition: all .3s ease;
}
#content .stsi-content h2, #content .stsi-content h3, #content .stsi-content p, #content .stsi-content ul li, #content .stsi-content ol li, #content .pdf-frame-text h3 {
    font-weight: 300;
    font-size:16px;
    line-height:20px;
    color:#000;
    text-transform: none;
    margin-bottom:16px;
}

#home-lead {
    position: relative;
}
#home-lead-content {
    padding:87px 32px 98px 32px;
    background:#fff;
}
#home-lead-content-inner {
    margin:0 auto;
    max-width:1184px;
}
#home-lead-content-inner h1, #home-lead-content-inner p {
    max-width:980px;
}

#home-img img {
    display: block;
    margin:0 auto;
}

#home-services {
    margin:0 auto;
    padding:80px 20px 40px 20px;
    max-width:1224px;
}

.post-type-archive-dienstleistungen #home-services {
    padding: 0 20px 40px 20px;
}

#home-services-inner {
    display: flex;
    flex-wrap: wrap;
    margin:0 -20px;
}
#home-services-inner .home-service-item {
    width:calc(33.333% - 40px);
    margin:0 20px 40px 20px;
    padding:28px 24px;
    background: linear-gradient(180deg, rgba(39,114,167,1) 0%, rgba(77,170,209,1) 100%);
    display: flex;
    flex-direction: column;
    align-items: center;
}
#home-services-inner .home-service-item .hsi-icon {
    height:156px;
    margin-bottom:20px;
    display: flex;
    justify-content: center;
    align-items: center;
}
#home-services-inner .home-service-item a, #home-news-items .home-news-item a {
    text-decoration: none;
}
#home-services-inner .home-service-item svg {
    width:142px;
    height:142px;
}
#home-services-inner .home-service-item svg .cls-1 {
    fill:#ffdc00;
    transition: all .3s ease;
}
#home-services-inner .home-service-item:hover svg .cls-1 {
    fill:#fff;
    transition: all .3s ease;
}

#home-news {
    background:#FFDC00;
    padding:40px 32px 80px 32px;
}
#home-news-inner {
    margin:0 auto;
    max-width:1184px;
}
#home-news-items {
    display: flex;
    flex-wrap: wrap;
    margin:0 -20px;
}
#home-news-items .home-news-item {
    width:calc(33.333% - 40px);
    margin:0 20px;
    padding:24px 0;
    border-top:1px solid #505046;
    border-bottom:1px solid #505046;
    transition: all .3s ease;
}
#home-news-items .home-news-item:hover {
    border-top:1px solid #fff;
    border-bottom:1px solid #fff;
    transition: all .3s ease;
}
#home-news-items .home-news-item a.more-link {
    display: none;
}

#news-list {
    margin:0 auto;
    padding:0 32px 68px 32px;
    max-width:1248px;
}
.news-list-item {
    margin-bottom:40px;
    padding-bottom:40px;
    border-bottom:1px solid #C8C8C8;
}
.news-list-item-inner {
    margin:0 -20px;
    display: flex;
    flex-wrap: wrap;
}
.news-list-item-img {
    width:470px;
    margin:0 20px;
    padding-top:6px;
}
.news-list-item-img img {
    display: block;
}
.news-list-item-content {
    width:calc(100% - 550px);
    margin:0 20px;
    position: relative;
}
.news-list-item-content a.more-link {
    position: absolute;
    bottom:0;
    right:0;
    font-size:0;
    width:35px;
    height:24px;
    background:url(images/arrow-right.svg) no-repeat left center;
    background-size:35px 24px;
    transition: all .4s ease;
}
.news-list-item-content a.more-link:hover {
    width:47px;
    transition: all .4s ease;
}

#news-layout {
    margin:0 auto;
    padding:0 32px;
    max-width:1248px;
}
#news-layout-img img {
    display: block;
}
#news-layout-title {
    padding:78px 0 60px 0;
}
#news-layout-content {
    display: flex;
    flex-wrap: wrap;
    margin:0 -20px;
    padding-bottom:70px;
}
#news-layout-content #news-layout-content-left {
    width:368px;
    margin:0 20px;
    position: relative;
}
#news-layout-bto {
    position: absolute;
    bottom:30px;
    left:0;
}
#news-layout-bto a {
    display: inline-block;
    font-size:0;
    width:35px;
    height:24px;
    background:url(images/arrow-left.svg) no-repeat right center;
    background-size:35px 24px;
    transition: all .4s ease;
}
#news-layout-bto a:hover {
    width:47px;
    transition: all .4s ease;
}
#news-layout-content #news-layout-content-right {
    width:calc(100% - 448px);
    margin:0 20px;
}

#ref-grid, #team-grid {
    margin:0 auto;
    padding:54px 32px 0 32px;
    max-width:1248px;
    position: relative;
}
#ref-grid-head, #team-grid-head {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    margin-bottom:58px;
}
#ref-filter {
    font-size:0;
}
#ref-filter .ref-filter-item {
    margin:0 0 8px 32px;
    display: inline-block;
}
#ref-filter .ref-filter-item button {
    font-family: museo-sans, sans-serif;
    font-weight: 500;
    font-style: normal;
    font-size:16px;
    line-height:20px;
    color:#000;
    background:none;
    border:none;
    border-radius:0;
    cursor: pointer;
}
#ref-filter .ref-filter-item button:hover, #ref-filter .ref-filter-item button.is-checked {
    color:#FFDC00;
}
#ref-grid-items, #team-grid-items {
    display: flex;
    flex-wrap: wrap;
    margin:0 -20px 60px -20px;
}
#ref-grid-items .ref-grid-item, #team-grid-items .team-grid-item {
    width:calc(33.333% - 40px);
    margin:0 20px 40px 20px;
    position: relative;
}
#team-grid-items .team-grid-item {
    margin:0 20px 64px 20px;
}
#ref-grid-items .ref-grid-item img, #team-grid-items .team-grid-item img {
    display: block;
}
#team-grid-items .team-grid-item .team-grid-item-img {
    margin-bottom:20px;
}
#ref-grid-items .ref-grid-item .ref-grid-item-overlay {
    position: absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    background:rgba(255,220,0,0.4);
    opacity:0;
    transition: opacity .4s ease;
}
#ref-grid-items .ref-grid-item .ref-grid-item-overlay a {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding:0 30px 28px 30px;
    text-decoration: none;
    height:100%;
}
#ref-grid-items .ref-grid-item:hover .ref-grid-item-overlay {
    opacity:1;
    transition: opacity .4s ease;
}
#ref-grid-items .ref-grid-item .ref-grid-item-overlay h2, #ref-grid-items .ref-grid-item .ref-grid-item-overlay h3 {
    opacity: 0;
    transform: translate(0,80px);
    transition: all .4s ease;
}
#ref-grid-items .ref-grid-item:hover .ref-grid-item-overlay h2, #ref-grid-items .ref-grid-item:hover .ref-grid-item-overlay h3 {
    opacity: 1;
    transform: translate(0,0);
    transition: all .4s ease .2s;
}

#ref-layout {
    margin:0 auto;
    padding:54px 32px 0 32px;
    max-width:1248px;
}
#ref-info-grid {
    padding-top:32px;
    padding-bottom:64px;
    display: flex;
    flex-wrap: wrap;
    margin:0 -20px;
}
#ref-info-grid #ref-info-text {
    width:368px;
    margin:0 20px;
    position: relative;
}
#ref-info-grid #ref-info-gallery {
    width:calc(100% - 448px);
    margin:0 20px;
}
.ref-quote {
    padding-top:48px;   
    padding-left:20px;
    position: relative;
}
.ref-quote:before {
    position: absolute;
    top:48px;
    left:2px;
    content:"»";
    font-family: museo-sans, sans-serif;
    font-weight: 300;
    font-style: italic;
    font-size:24px;
    line-height:28px;
    color:#FFDC00;
}

#ref-navi {
    display: flex;
    margin:0 -16px;
}
#ref-navi.desktop {
    position: absolute;
    bottom:0;
    left:0;
}
.ref-navi-before, .ref-navi-next, .ref-navi-overview {
    margin:0 16px;
}
.ref-navi-before, .ref-navi-next {
    width:35px;
    height:24px;
}
.ref-navi-next a {
    width:35px;
    height:24px;
    background:url(images/arrow-left.svg) no-repeat center center;
    background-size:35px 24px;
    font-size:0;
    display: block;
    transform: translateX(0);
    transition: all .5s ease;
}
.ref-navi-next a:hover {
    transform: translateX(-4px);
    transition: all .5s ease;
}
.ref-navi-before a {
    width:35px;
    height:24px;
    background:url(images/arrow-right.svg) no-repeat center center;
    background-size:35px 24px;
    font-size:0;
    display: block;
    transform: translateX(0);
    transition: all .5s ease;
}
.ref-navi-before a:hover {
    transform: translateX(4px);
    transition: all .5s ease;
}
.ref-navi-overview a {
    width:24px;
    height:24px;
    background:url(images/overview.svg) no-repeat center center;
    background-size:24px 24px;
    font-size:0;
    display: block;
    transform: translateY(0);
    transition: all .5s ease;
}
.ref-navi-overview a:hover {
    transform: translateY(-4px);
    transition: all .5s ease;
}

#ref-info-gallery-grid {
    display: flex;
    flex-wrap: wrap;
    margin:0 -20px;
}

#ref-info-gallery-grid .ref-info-gallery-grid-item.half, .ref-info-gallery-grid-sizer {
    width:calc(50% - 40px);
    margin:0 20px 40px 20px;
    overflow: hidden;
}
#ref-info-gallery-grid .ref-info-gallery-grid-item.full {
    width:calc(100% - 40px);
    margin:0 20px 40px 20px;
    overflow: hidden;
}

.pdf-frame {
    margin:0 -20px;
    padding: 20px 0;
    border-top: 1px solid #C8C8C8;
    border-bottom: 1px solid #C8C8C8;
    display: flex;
}
.pdf-frame-img {
    width:calc(36% - 40px);
    margin: 0 20px;
}
.pdf-frame-img img {
    display: block;
}
.pdf-frame-text {
    width:calc(64% - 40px);
    margin:0 20px;
}

.mfp-bottom-bar {
    display: none !important;
}

#service-lead, .sbi-calc {
    margin:0 auto;
    max-width:1248px;
    margin-bottom:50px;
    padding:54px 32px 0 32px;
}
#service-lead-inner, .sbi-calc-inner {
    display: flex;
    flex-wrap: wrap;
    margin:0 -20px;
}
#service-lead-icon, .sbi-calc-icon {
    width:164px;
    height:164px;
    background: linear-gradient(180deg, rgba(39,114,167,1) 0%, rgba(77,170,209,1) 100%);
    display: flex;
    justify-content: center;
    align-items: center;
    margin:10px 20px 0 20px;
}
#service-lead-icon img, .sbi-calc-icon img {
    max-width:120px;
    height:auto;
    max-height: 120px;
}
#service-lead-text, .sbi-calc-text {
    width:calc(100% - 244px);
    margin:0 20px;
}
#service-lead-text-inner, .sbi-calc-text-inner {
    max-width:776px;
}
#service-lead-text-inner.big-width {
    max-width:100%;
}

.service-tfull-sidebar {
    display: flex;
    flex-wrap: wrap;
    margin:0 -20px;
}
.service-tfull-sidebar-text {
    width:calc(100% - 448px);
    margin:0 20px;
}

#sitebuilder {
    padding-bottom:30px;
}
.sb-item {
    overflow: hidden;
}
.sbi-tfull, .sbi-ifull, .sbi-acc {
    margin:0 auto;
    margin-bottom:70px;
    max-width:1248px;
    padding:0 32px;
}
.sbi-islibr, .sbi-iblisr {
    margin-bottom:30px;
}
.sbi-ifull.borderless {
    padding:0;
}

.sbi-tfull-inner {
    display: flex;
    flex-wrap:wrap;
    margin:0 -20px;
}
.sbi-tfull-content {
    width:calc(100% - 448px);
    margin:0 20px;
}
.sbi-tfull-sidebar {
    width:368px;
    margin:0 20px;
}
.sbi-tfull-sidebar-items {
    border-top:1px solid #C8C8C8;
}
.sbi-tfull-sidebar-items .sbi-tfull-sidebar-item {
    padding:20px 0 4px 0;
    border-bottom:1px solid #C8C8C8;
}
.sbi-tfull-sidebar-items .sbi-tfull-sidebar-item .sbi-tfull-sidebar-item-inner {
    display: flex;
    flex-wrap: wrap;
    margin:0 -20px;
}
.sbi-tfull-sidebar-items .sbi-tfull-sidebar-item .stsi-img {
    margin:0 20px;
    padding-bottom:20px;
    width:102px;
}
.sbi-tfull-sidebar-items .sbi-tfull-sidebar-item .stsi-img img {
    display: block;
}
.sbi-tfull-sidebar-items .sbi-tfull-sidebar-item .stsi-content {
    width:calc(100% - 182px);
    margin:0 20px;
}

.sbi-ifull.borderless {
    max-width:100%;
}
.sbi-ifull img {
    display: block;
    margin:0 auto;
}
.sbi-ifull.borderless .sbi-ifull-caption {
    margin:0 auto;
    max-width:1184px;
}

.sbi-acc-inner {
    max-width:776px;
}
.sbi-acc-inner .sbi-acc-panel:nth-child(1) {
    border-top:1px solid #C8C8C8;
}
.sbi-acc-inner .sbi-acc-panel {
    border-bottom:1px solid #C8C8C8;
}
.sbi-acc-trigger {
    padding:18px 54px 18px 0;
    position: relative;
    cursor: pointer;
}
.sbi-acc-trigger:after {
    position: absolute;
    top:50%;
    right:0;
    content:"";
    width:36px;
    height:12px;
    background:url(images/acc-arrow.svg) no-repeat center center;
    background-size:36px 12px;
    transform: translate(0,-50%) rotate(0deg);
    transition:all .4s ease;
}
.sbi-acc-trigger.active:after {
    transform: translate(0,-50%) rotate(180deg);
    transition:all .4s ease;
}
.sbi-acc-toggle {
    display: none;
}

.sbi-iblisr-inner, .sbi-islibr-inner {
    display: flex;
    flex-wrap: wrap;
    margin:0 -20px;
}
.sbi-iblisr-inner img, .sbi-islibr-inner img {
    display: block;
}
.sbi-iblisr-big-image, .sbi-islibr-big-image {
    width:calc(60.62499999999999% - 40px);
    margin:0 20px 40px 20px;
}
.sbi-iblisr-big-image p, .sbi-islibr-small-image p {
    text-align: right;
    padding-left:24px;
}
.sbi-iblisr-small-image, .sbi-islibr-small-image {
    width:calc(39.37500000000001% - 40px);
    margin:0 20px 40px 20px;
}
.sbi-iblisr-small-image p, .sbi-islibr-big-image p {
    padding-right:24px;
}
.sbi-islibr-big-image {
    order:2;
}
.sbi-islibr-small-image {
    order:1;
}

.sbi-igallery-grid {
    margin:0 -20px;
}
.sbi-igallery-grid-item img, .sbi-igallery-grid-item a {
    display: block;
}
.sbi-igallery-grid-item .sbi-igallery-grid-item-inner {
    margin:0 20px;
}
.sbi-igallery-grid-item:nth-child(2) {
    width:60%
}
.sbi-igallery-grid-item:nth-child(3) {
    width:40%
}
.sbi-igallery-grid-item {
    width:20%;
    float: left;
    margin-bottom:40px;
}
.grid-sizer {
    width:1%;
    float: left;
}
.nivo-lightbox-theme-default.nivo-lightbox-overlay {
    background: rgba(0,0,0,0.9) !important;
}

#contact-layout-inner {
    margin:0 auto;
    padding:54px 32px 0 32px;
    max-width:1248px;
}
#contact-layout-image {
    margin-bottom:70px;
}
#contact-layout-image img {
    display: block;
}
#contact-layout-request {
    display: flex;
    flex-wrap: wrap;
    margin:0 -20px 80px -20px;
}
#contact-layout-address {
    width:360px;
    margin:0 20px;
}
#contact-layout-form {
    width:calc(100% - 440px);
    margin:0 20px;
}
.gmap {
    width: 100%;
    height: 645px;
}
.gmap img {
   max-width: inherit !important;
}

.form-element {
    margin-bottom:24px;
}
.form-element.fsubmit {
    display: flex;
    justify-content: flex-end;
}
.wpcf7-text, .wpcf7-textarea {
    width:100%;
    background:#EBEBEB;
    height:48px;
    font-family: museo-sans, sans-serif;
    font-weight: 300;
    font-style: normal;
    font-size:20px;
    line-height:30px;
    color:#000;
    padding:9px 20px 9px 20px;
    border:1px solid #EBEBEB;
    border-radius:0;
}
.wpcf7-textarea {
    max-width:100%;
    height:auto;
}
.wpcf7-submit {
    width:132px;
    height:48px;
    font-family: museo-sans, sans-serif;
    font-weight: 300;
    font-style: normal;
    font-size:20px;
    line-height:30px;
    color:#fff;
    background:#000;
    cursor: pointer;
    transition: all .4s ease;
    order:2;
    border-radius:0;
}
.wpcf7-submit:hover {
    background:#FFDC00;
    color:#000;
    transition: all .4s ease;
}
.wpcf7-spinner {
    order:1;
}
.wpcf7-not-valid-tip {
    font-family: museo-sans, sans-serif;
    font-weight: 700;
    font-style: normal;
    font-size:16px;
    line-height:20px;
    text-transform: uppercase;
    padding-top:4px;
}
.wpcf7-not-valid {
    border:1px solid #dc3232;
}
.wpcf7 form .wpcf7-response-output {
	margin: 2em 0 1em 0 !important;
	padding:12px 20px;
	border:none !important;
    font-family: museo-sans, sans-serif;
    font-weight: 700;
    font-style: normal;
    font-size:16px;
    line-height:20px;
    text-align: center;
}
.wpcf7 form.sent .wpcf7-response-output {
	color: #fff;
    background:#46b450;
}
.wpcf7 form.failed .wpcf7-response-output, .wpcf7 form.aborted .wpcf7-response-output, .wpcf7 form.spam .wpcf7-response-output, .wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output {
	color: #fff;
    background:#dc3232;
}

#footer {
    background:#505046;
    padding:36px 32px 64px 32px;
}
#footer-inner {
    margin:0 auto;
    max-width:1184px;
}
#footer-cols {
    margin:0 -20px;
    display: flex;
    flex-wrap: wrap;
}
#footer-cols .footer-col {
    width:calc(33.333% - 40px);
    margin:0 20px;
    position: relative;
}
#footer-cols .footer-col.fmenucol {
    display: flex;
    justify-content:space-between;
}
#footer-cols .footer-col .fmenu-1 {
    margin-right:20px;
}


#fmenu ul li {
    margin:0 0 8px 0;
}
#fmenu ul li a {
    font-family: museo-sans, sans-serif;
    font-weight: 700;
    font-style: normal;
    font-size:18px;
    line-height:30px;
    color:#fff;
    text-decoration: none;
}
#fmenu ul li a:hover {
    color:#FFDC00;
}

#fsocials-items {
    display: flex;
    margin:0 -8px;
    padding-right:54px;
    justify-content: flex-end;
}
#fsocials-items .fsocials-item {
    margin:0 8px;
}
#fsocials-items .fsocials-item svg {
    width:48px;
    height:48px;
}
#fsocials-items .fsocials-item svg .cls-1{
    fill:#fff;
}
#fsocials-items .fsocials-item:hover svg .cls-1 {
    fill:#FFDC00;
}

.video-frame {
    position: relative;
    padding-bottom: 56.25%;
    height: 0;
    overflow: hidden; 
    max-width: 100%;
}
.video-frame iframe, .video-frame video {
    position: absolute;
    top: 0;
    left: 0; 
    width: 100%;
    height: 100%;
}

#mobile-menu {
    position: fixed;
    top:0;
    right:0;
    width:50%;
    height:100%;
    background:#fff;
    z-index: 99999;
    transform: translateY(-150%);
    transition: all 1.2s ease;
}
#mobile-menu.mopen {
    transform: translateY(0);
    transition: all 1.2s ease;
}
#mm-close {
    position: absolute;
    top:27px;
    right:27px;
    cursor: pointer;
    z-index: 2;
}
#mm-inner {
    width:100%;
    height:100%;
    max-height:100%;
    overflow-y: scroll;
    -ms-overflow-style: none;
    scrollbar-width: none;
    z-index: 1;
    position: relative;
}
#mm-inner::-webkit-scrollbar {
    display: none;
}
#mmenu {
    padding:80px 27px;   
    opacity:0;
    transform: translateY(-32px);
    transition: all .8s ease;
}
.mopen #mmenu {
    opacity:1;
    transform: translateY(0);
    transition: all .8s ease .6s;
}
#mmenu ul li {
    padding:4px 0;
    text-align: right;
}
#mmenu ul li a {
    font-family: museo-sans, sans-serif;
    font-weight: 700;
    font-style: normal;
    font-size:24px;
    line-height:38px;
    color:#000;
    text-decoration: none;
    text-transform: uppercase;
    display: inline-block;
}
#mmenu ul li.current-menu-item a, #mmenu ul li.current-menu-item .sub-menu li a:hover, #mmenu ul li .sub-menu li.current-menu-item a, #mmenu ul li.current-menu-ancestor a, #mmenu ul li.current-menu-ancestor .sub-menu li a:hover, #mmenu ul li.current-menu-ancestor .sub-menu li.current-menu-item a {
    color:#FFDC00;
}
#mmenu ul li.current-menu-item .sub-menu li a, #mmenu ul li.current-menu-ancestor .sub-menu li a {
    color:#000;
}
#mmenu ul li .sub-menu li {
    padding:7px 0;
} 
#mmenu ul li .sub-menu li a {
    font-weight: 300;
    font-size:20px;
    line-height:34px;
    text-transform: none;
} 
#mmenu ul li .sub-menu li .sub-menu {
    display: none;
} 
#menu-trigger {
    display: none;
    position: absolute;
    top:33px;
    right:27px;
    width:36px;
    height:12px;
    cursor: pointer;
}
#menu-trigger .line-top, #menu-trigger .line-bottom {
    width:36px;
    height:2px;
    background:#000;
    transition: all .3s ease;
}
#menu-trigger .line-top {
    position: absolute;
    top:0;
}
#menu-trigger .line-bottom {
    position: absolute;
    bottom:0;
}

#back-to-top {
    display: none;
    position: absolute;
    top:0;
    right:0;
    cursor: pointer;
}

#ref-navi.mobile, #news-layout-bto.mobile {
    display: none;
}

.sbi-calculator {
    max-width:776px;
    margin-bottom:18px;
}
.ccols {
    display: flex;
    flex-wrap: wrap;
}
.calc-title-line, .calc-benefit-line {
    background:#EBEBEB;
}
.ccols .col-1 { 
    width:calc(100% - 364px);
    margin-right:8px;
}
.ccols .col-2 {
    width:182px;
    margin:0 8px;
}
.ccols .col-3 {
    width:150px;
    margin-left:8px;
}
.ccols .col-1, .ccols .col-2, .ccols .col-3 {
    border-bottom:1px solid #6F6F6F;
}
.ccols.calc-title-line .col-1, .ccols.calc-title-line .col-2, .ccols.calc-title-line .col-3, .ccols.calc-total-line .col-1, .ccols.calc-total-line .col-2, .ccols.calc-total-line .col-3, .ccols.calc-benefit-line .col-1, .ccols.calc-benefit-line .col-2, .ccols.calc-benefit-line .col-3 {
    border-bottom:none;
}
.ccols.calc-subtotal-line .col-1, .ccols.calc-subtotal-line .col-2, .ccols.calc-subtotal-line .col-3, .ccols.calc-total-line .col-1, .ccols.calc-total-line .col-2, .ccols.calc-total-line .col-3 {
    border-top:1px solid #6F6F6F;
}
.ccols label {
    font-family: museo-sans, sans-serif;
    font-weight: 300;
    font-style: normal;
    font-size:18px;
    line-height:24px;
    color:#2B2E34;
    padding:14px 0;
    display: block;
}
.ccols .sbi-calculator-line-3.col-1 label {
    padding:14px 0 10px 16px;
}
.ccols .col-1 label {
    padding:14px 0 14px 16px;
}
.ccols .sbi-calculator-title-line-0 label, .ccols.calc-subtotal-line label, span.subtotal-standard, span.subtotal-solar, span.subtotal-standard:after, span.subtotal-solar:after, .ccols.calc-total-line label, .ccols.calc-benefit-line label, span.benefit-solar, span.benefit-solar:after {
    font-weight: 700 !important;
}
.sbi-calculator-title-line-0.col-2 label, .sbi-calculator-title-line-0.col-3 label {
    text-align: center;
}
.sbi-calculator-title-line-0.col-3 label {
    margin-right:20px;
}
.ccols label span {
    font-size:14px;
    line-height:19px;
    display: inline;
    margin-left:10px;
}
.ccols .col-2 span, .ccols .col-3 span {
    font-family: museo-sans, sans-serif;
    font-weight: 300;
    font-style: normal;
    font-size:18px;
    line-height:24px;
    color:#2B2E34;
    margin:0 20px;
    padding:14px 0;
    display: block;
    text-align: right;
}
.ccols .col-2 span:after, .ccols .col-3 span:after {
    content:".–";
    font-family: museo-sans, sans-serif;
    font-weight: 300;
    font-style: normal;
    font-size:18px;
    line-height:24px;
    color:#2B2E34;
    padding:14px 0 14px 3px;
    display: inline;
}
.sbi-calculator-input-select-item input {
    border:1px solid #6F6F6F;
    font-family: museo-sans, sans-serif;
    font-weight: 300;
    font-style: normal;
    font-size:14px;
    line-height:19px;
    color:#2B2E34;
    padding:8px 16px;
}
select#lights, select#region {
    width:153px;
}
.sbi-calculator-line-1.col-1, .sbi-calculator-input-select-items {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
}
.sbi-calculator-input-select-items {
    margin:0 0 10px 16px;
}

@media only screen and (max-width:1248px) {
    #header #logo {
        padding: 42px 32px 21px 32px;
    }
    #header.shrink #logo {
        padding: 10px 32px;
    }
    #content .sbi-ifull-caption p {
        padding:10px 32px 0 32px;
        max-width: 1248px;
    }
    .sbi-ifull.borderless .sbi-ifull-caption {
        max-width: 1248px;
    }
    #content .sbi-igallery-grid-item:nth-child(2) p {
        padding-left:32px;
        padding-right:32px;
    }
}
@media only screen and (max-width:1080px) {
    #home-lead-content {
        max-width:80%;
    }
}
@media only screen and (max-width:1024px) {
    #menu {
        display: none;
    }
    #menu-trigger {
        display: block;
    }
    #header #logo {
        padding: 25px 27px 21px 27px;
    }
    #header.shrink #logo {
        padding: 15px 27px;
    }
    #header #logo img {
        width: 95px;
        height: 106px;
    }
    #header.shrink #logo img {
        width: 45px;
        height: 50px;
    }
    #home-lead-content {
        padding:26px 27px 48px 27px;
    }
    #home-services-inner .home-service-item .hsi-icon {
        margin-bottom: 0;
        height:132px;
    }
    #home-services-inner .home-service-item svg {
        width: 96px;
        height: 96px;
    }
    #content h1 {
        font-size: 44px;
        line-height: 52px;
    }
    .home #content h1, #content #news-list h1, .post-type-archive-dienstleistungen #content h1, #content #service-lead-text h1, #content #sitebuilder h1, #content .sbi-calc-text-inner h1 {
        margin-bottom: 24px;
    }
    .home #content h1 br {
        display: none;
    }
    #content #ref-grid-head h1 {
        margin-bottom:26px;
    }
    #content h2 {
        font-size: 22px;
        line-height: 28px;
    }
    #content p {
        font-size: 18px;
        line-height: 28px;
        margin: 0 0 28px 0;
    }
    #content .team-grid-item h2 {
        font-size: 18px;
        line-height: 28px;
    }
    #content .home-service-item p {
        font-size:16px;
        line-height: 26px;
    }
    #content #home-lead p {
        font-size: 26px;
        line-height: 36px;
    }
    #content ul li, #content ol li {
        font-size: 18px;
        line-height: 28px;
    }
    #home-services {
        padding: 27px;
    }
    #home-services-inner {
        margin: 0 -14px;
    }
    #home-services-inner .home-service-item {
        width: calc(33.333% - 28px);
        margin: 0 14px 27px 14px;
        padding:13px;
    }
    #home-news {
        padding: 30px 27px 54px 27px;
    }
    #home-news-items {
        margin: 0 -15px;
    }
    #home-news-items .home-news-item {
        width: calc(50% - 30px);
        margin: 0 15px;
    }
    #home-news-items .home-news-item:nth-child(3) {
        display: none;
    }
    #content #home-news h2 {
        font-size: 44px;
        line-height: 52px;
        margin-bottom: 24px;
    }
    #content h3 {
        font-size: 22px;
        line-height: 30px;
    }
    #content .home-news-item p {
        font-size: 16px;
        line-height: 26px;
    }
    #news-list {
        padding: 0 27px 5px 27px;
    }
    .news-list-item-inner {
        margin: 0 -15px;
    }
    .news-list-item-img {
        width: 312px;
        margin: 0 15px;
    }
    .news-list-item-content {
        width: calc(100% - 372px);
        margin: 0 15px;
    }
    .news-list-item {
        margin-bottom: 27px;
        padding-bottom: 27px;
    }
    span.nlic-date, span.nlcl-date {
        font-size: 18px;
        line-height: 28px;
    }
    #news-layout {
        padding:0 27px;
    }
    #news-layout-title {
        padding: 48px 0 52px 0;
    }
    #news-layout-content #news-layout-content-left {
        width: 124px;
        margin: 0 15px;
    }
    #news-layout-content #news-layout-content-right {
        width: calc(100% - 184px);
        margin: 0 15px;
    }
    #service-lead, .sbi-calc {
        margin-bottom:22px;
        padding:0 27px;
    }
    #service-lead-inner, .sbi-calc-inner {
        margin: 0 -15px;
    }
    #service-lead-icon, .sbi-calc-icon {
        width: 94px;
        height: 94px;
        margin: 10px 15px 0 15px;
    }
    #service-lead-text, .sbi-calc-text {
        width: calc(100% - 154px);
        margin: 0 15px;
    }
    #service-lead-icon img, .sbi-calc-icon img {
        max-width: 64px;
        max-height: 64px;
    }
    #content .ref-info-gallery-grid-item p, #content .sbi-ifull-caption p, #content .sbi-iblisr p, #content .sbi-islibr p, #content .sbi-igallery-grid-item p, #content #contact-layout-image p {
        font-size: 14px;
        line-height: 18px;
    }
    #content .sbi-ifull-caption p {
        padding:10px 27px 0 27px;
    }
    .sbi-tfull, .sbi-ifull, .sbi-acc {
        margin-bottom:60px;
        padding:0 27px;
    }
    .sbi-ifull {
        padding:0;   
    }
    #content .stsi-content h2, #content .stsi-content h3, #content .stsi-content p, #content .stsi-content ul li, #content .stsi-content ol li, #content .pdf-frame-text h3 {
        font-size: 14px;
        line-height: 18px;
        margin-bottom: 12px;
    }
    #content .sbi-acc-panel h3 {
        font-size: 18px;
    }
    .sbi-acc-trigger {
        padding: 16px 54px 16px 0;
    }
    #sitebuilder {
        padding-bottom: 0;
    }
    #content .sbi-igallery-grid-item:nth-child(2) p {
        padding-left: 27px;
        padding-right: 27px;
    }
    .sbi-igallery-grid {
        margin: 0 -15px;
    }
    .sbi-igallery-grid-item .sbi-igallery-grid-item-inner {
        margin: 0 15px;
    }
    .sbi-igallery-grid-item, .sbi-igallery {
        margin-bottom: 30px;
    }
    .sbi-iblisr-inner, .sbi-islibr-inner {
        margin:0 -13px;
    }
    .sbi-iblisr-big-image, .sbi-islibr-big-image {
        width:calc(60.62499999999999% - 26px);
        margin:0 13px 27px 13px;
    }
    .sbi-iblisr-small-image, .sbi-islibr-small-image {
        width:calc(39.37500000000001% - 26px);
        margin:0 13px 27px 13px;
    }
    #ref-grid, #team-grid {
        padding:0 27px;
    }
    #ref-grid-head, #team-grid-head {
        display: block;
        margin-bottom: 24px;
    }
    #ref-filter .ref-filter-item {
        margin: 0 32px 8px 0;
    }
    #ref-filter .ref-filter-item button {
        font-size: 16px;
        line-height: 26px;
    }
    #ref-grid-items, #team-grid-items {
        margin: 0 -15px 14px -15px;
    }
    #ref-grid-items .ref-grid-item, #team-grid-items .team-grid-item {
        width: calc(33.333% - 30px);
        margin: 0 15px 30px 15px;
    }
    #team-grid-items .team-grid-item {
        margin: 0 15px 56px 15px;
    }
    #ref-grid-items .ref-grid-item .ref-grid-item-overlay a {
        padding: 0 13px 11px 13px;
    }
    #ref-grid-items .ref-grid-item .ref-grid-item-overlay {
        top: 66.666%;
        bottom:0;
        height: 33.333%;
        background: linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,.6) 100%);
        opacity: 1;
    }
    #ref-grid-items .ref-grid-item .ref-grid-item-overlay h2, #ref-grid-items .ref-grid-item .ref-grid-item-overlay h3 {
        opacity: 1;
        transform: translate(0,0);
    }
    #content #ref-grid-items .ref-grid-item .ref-grid-item-overlay h2 {
        color: #fff;
    }
    #content #ref-grid-items .ref-grid-item .ref-grid-item-overlay h3 {
        font-size: 14px;
        line-height: 22px;
        color: #fff;
    }
    #ref-layout {
        padding: 0 27px;
    }
    #content #ref-layout h1, #content #contact-layout h1 {
        margin-bottom: 36px;
    }
    #content #ref-info-text h3 {
        font-size: 18px;
    }
    #contact-layout-inner {
        padding:0 27px;
    }
    #contact-layout-image {
        margin-bottom:60px;
    }
    .wpcf7-text, .wpcf7-textarea {
        font-size: 18px;
    }
    .wpcf7-submit {
        font-size: 18px;
        line-height: 28px;
    }
    #contact-layout-request {
        margin: 0 -20px 48px -20px;
    }
    .page-template-default #content {    
        padding-top:0;
    }
    #ref-info-gallery-grid .ref-info-gallery-grid-item.full {
        margin: 0 20px 27px 20px;
    }  
    .sbi-tfull-sidebar-items .sbi-tfull-sidebar-item .sbi-tfull-sidebar-item-inner {
        margin:0 -10px;
    }
    .sbi-tfull-sidebar-items .sbi-tfull-sidebar-item .stsi-img {
        margin:0 10px;
    }
    .sbi-tfull-sidebar-items .sbi-tfull-sidebar-item .stsi-content {
        width:calc(100% - 142px);
        margin:0 10px;
    }
    #footer {
        padding:52px 27px;
    }
    #footer-cols .footer-col.fmenucol {
        display: none;
    }
    #footer-cols .footer-col.fsocials {
        order:2;
        width: 120px;
        display: flex;
        align-items: flex-end;
        justify-content: flex-end;
        padding-top:34px;
    }
    #footer-cols .footer-col.faddress {
        order:1;
        width: calc(100% - 200px);
    }
    #fsocials-items {
        margin: 0 -6px;
        padding-right:0;
    }
    #fsocials-items .fsocials-item {
        margin: 0 6px;
    }
    #fsocials-items .fsocials-item svg {
        width: 40px;
        height: 40px;
    }
    #footer .footer-col h3, #footer .footer-col p {
        font-size: 16px;
        line-height: 26px;
    }
    #back-to-top {
        display: block;
    }
}
@media only screen and (max-width:1023px) {
    .sbi-tfull-content, .sbi-tfull-sidebar, .service-tfull-sidebar-text, #ref-info-grid #ref-info-text, #ref-info-grid #ref-info-gallery, #contact-layout-address, #contact-layout-form {
        width: calc(100% - 40px);
    }
    .sbi-tfull-sidebar-items {
        display: flex;
        flex-wrap: wrap;
        margin:0 -15px;
        border:none;
    }
    .sbi-tfull-sidebar-items .sbi-tfull-sidebar-item {
        padding: 20px 0 4px 0;
        width:calc(50% - 30px);
        margin:0 15px;
    }
    .sbi-tfull-sidebar-items .sbi-tfull-sidebar-item:nth-child(1), .sbi-tfull-sidebar-items .sbi-tfull-sidebar-item:nth-child(2) {
        border-top: 1px solid #C8C8C8;
    }
    #ref-info-grid {
        padding-top:0;
        padding-bottom: 32px;
    }
    #ref-navi.desktop {
        display: none;
    }
    #ref-navi.mobile {
        display: flex;
        margin-bottom:32px;
        justify-content: center;
    }
    .sbi-calculator-input-select-items .sbi-calculator-input-select-item:nth-child(1) {
        width:calc(100% - 165px);
    }
    .sbi-calculator-input-select-items .sbi-calculator-input-select-item:nth-child(1) input {
        width:100%;
    }
}
@media only screen and (max-width:840px) {
    .ccols label span {
        white-space: nowrap;
    }
    .ccols label, .ccols .col-2 span, .ccols .col-3 span, .ccols .col-2 span:after, .ccols .col-3 span:after {
        font-size:16px;
    }
    .ccols label span, .sbi-calculator-input-select-item input {
        font-size:12px;
        line-height:19px;
    }
    .ccols .col-1 { 
        width:calc(100% - 280px);
    }
    .ccols .col-2 {
        width:124px;
    }
    .ccols .col-3 {
        width:124px;
    }
    .ccols .col-1 label {
        padding: 14px 0 14px 8px;
    }
    .ccols .col-2 span, .ccols .col-3 span {
        margin: 0 10px;
    }
    .sbi-calculator-title-line-0.col-3 label {
        margin-right:10px;
    }
    .ccols .sbi-calculator-line-3.col-1 label {
        padding: 14px 0 10px 8px;
    }
    .sbi-calculator-input-select-items {
        margin: 0 0 10px 8px;
    }
    #content .sbi-calculator-note p {
        font-size:16px;
    }
}
@media only screen and (max-width:810px) {
    #team-grid-items .team-grid-item {
        width: calc(50% - 30px);
    }
}
@media only screen and (max-width:768px) {
    .alignright, .alignleft {
        float:none;
        display: block;
        margin:0 auto 20px auto;
    }
    .gmap {
        height: 460px;
    }
}
@media only screen and (max-width:767px) {
    .sbi-igallery-grid-item:nth-child(2) {
        width: 100%;
    }
    .sbi-igallery-grid-item:nth-child(3) {
        width: 50%;
    }
    .sbi-igallery-grid-item {
        width: 25%;
    }
    .news-list-item-inner {
        margin: 0;
    }
    .news-list-item-img, .news-list-item-content {
        width: 100%;
        margin: 0;
    }
    .news-list-item-img {
        padding-top:0;
        margin-bottom:12px;
    }
    #home-services-inner .home-service-item {
        width: calc(50% - 28px);
    }
    .sbi-tfull-sidebar-items {
        margin: 0;
    }
    .sbi-tfull-sidebar-items .sbi-tfull-sidebar-item {
        width: 100%;
        margin: 0;
    }
    #ref-grid-items .ref-grid-item {
        width: calc(50% - 30px);
    }
    #mobile-menu {
        width:100%;
    }
    #home-lead-content {
        max-width:100%;
    }
    #service-lead-inner, .sbi-calc-inner {
        margin: 0;
        position: relative;
    }
    #service-lead-text, .sbi-calc-text {
        width: 100%;
        margin: 0;
    }
    #service-lead-icon, .sbi-calc-icon {
        width: 58px;
        height: 58px;
        margin: 0;
        position: absolute;
        top:7px;
        left:0;
    }
    #service-lead-icon img, .sbi-calc-icon img {
        max-width: 48px;
        max-height: 48px;
    }
    #service-lead-text-inner h1, .sbi-calc-text-inner h1 {
        padding-left:74px;
    }
    #content #service-lead-text h1, #content .sbi-calc-text-inner h1 {
        min-height:72px;   
    }
    #content h1 {
        font-size: 30px;
        line-height: 36px;
    }
    #content h2 {
        font-size: 20px;
        line-height: 26px;
    }
    #content h3 {
        font-size: 20px;
        line-height: 26px;
        margin-bottom:13px;
    }
    #content p {
        font-size: 16px;
        line-height: 26px;
        margin: 0 0 26px 0;
    }
    #content ul li, #content ol li, #content .team-grid-item h2 {
        font-size: 16px;
        line-height: 26px;
    }  
    #content #home-lead p {
        font-size: 20px;
        line-height: 28px;
    }
    #content .home-service-item h2 {
        font-size:30px;
        line-height:36px;
        margin-bottom:0;
    }
    #content #home-news h2 {
        font-size: 30px;
        line-height: 36px;
        margin-bottom: 21px;
    }
    #content .home-service-item h2 {
        min-height:108px;
        display: flex;
        flex-direction: column;
        justify-content: center;
    }
    #header #logo {
        padding: 23px 27px 20px 27px;
    }
    #header #logo img {
        width: 64px;
        height: 70px;
    }
    .home #container, #container, .page-id-500 #container {
        padding-top: 140px;
    }   
}
@media only screen and (max-width:640px) {
    
    .sbi-calculator-input-select-items .sbi-calculator-input-select-item, .sbi-calculator-input-select-items .sbi-calculator-input-select-item:nth-child(1) {
        width:153px;
    }
    .sbi-calculator-input-select-items .sbi-calculator-input-select-item:nth-child(1) {
        margin-bottom:10px;
    }
    .sbi-calculator-line-1.col-1 {
        flex-direction: column;
        justify-content: flex-start;
        align-items: flex-start;
    }
    select#lights, select#region {
        width: 153px;
    }
    .ccols .col-1 label {
        padding: 14px 0;
    }
    .ccols .sbi-calculator-title-line-0 label, .ccols.calc-benefit-line label {
        padding: 14px 0 14px 8px;
    }
    .ccols .sbi-calculator-line-1.col-1 {
        padding:0 0 10px 0;
    }
    .sbi-calculator-input-select-items {
        margin: 0 0 10px 8px;
    }
    .ccols label span {
        display: block;
        white-space:normal;
        margin-left:0;
    }
    .ccols .sbi-calculator-line-1.col-1 label, .ccols .sbi-calculator-line-3.col-1 label {
        padding: 14px 0 10px 0;
    }
    .sbi-calculator-input-select-items {
        margin: 0 0 10px 0;
    }
}
@media only screen and (max-width:568px) {
    #content .home-service-item p {    
        display: none;
    } 
    #home-services-inner .home-service-item {
        width: calc(100% - 28px);
        padding: 20px;
    }
    #home-services-inner .home-service-item .hsi-icon {
        margin-bottom: 20px;
        height: 156px;
    }
    #home-services-inner .home-service-item svg {
        width: 143px;
        height: 143px;
    }
    #home-news {    
        padding: 30px 27px 14px 27px;
    }
    #home-news-items .home-news-item {
        width: calc(100% - 30px);
        padding:22px 0 30px 0;
        margin-bottom:13px;
    }
    span.nlic-date, span.nlcl-date {
        font-size: 16px;
        line-height: 26px;
        margin-bottom:0;
    } 
    .news-list-item {
        margin-bottom: 28px;
        padding-bottom: 0;
    }
    #news-layout-title {
        padding: 36px 0 22px 0;
    }
    #news-layout-content {
        display: block;
        margin: 0;
        padding-bottom:54px;
    }
    #news-layout-content #news-layout-content-left, #news-layout-content #news-layout-content-right {
        width:100%;
        margin:0;
    }
    #news-layout-bto.desktop {  
        display: none;
    }
    #news-layout-bto.mobile {
        display: block;
        position: inherit;
        bottom:inherit;
    } 
    .sbi-tfull, .sbi-ifull, .sbi-acc {
        margin-bottom: 44px;
    }
    .sbi-tfull-sidebar-items .sbi-tfull-sidebar-item .sbi-tfull-sidebar-item-inner {
        margin: 0 -12px;
    }
    .sbi-tfull-sidebar-items .sbi-tfull-sidebar-item .stsi-img {
        margin: 0 12px;
    }
    .sbi-tfull-sidebar-items .sbi-tfull-sidebar-item .stsi-content {
        width: calc(100% - 150px);
        margin: 0 12px;
    }
    .sbi-acc-trigger {
        padding: 12px 42px 12px 0;
    }
    #content .sbi-acc-panel h3 {
        font-size: 16px;
        line-height: 22px;
    }
    .sbi-acc-trigger::after {
        width: 25px;
        height: 8px;
        background: url(images/acc-arrow.svg) no-repeat center center;
        background-size: 25px 8px;
    }
    #ref-grid-head {
        margin-bottom: 46px;
    }
    #ref-filter .ref-filter-item {
        margin:0 0 4px 0;
        display: block;
    }
    #ref-grid-items .ref-grid-item, #team-grid-items .team-grid-item {
        width: calc(100% - 30px);
    }
    #ref-grid-items .ref-grid-item img, #team-grid-items .team-grid-item img {
        width:100%;
    }
    #ref-grid-items .ref-grid-item .ref-grid-item-overlay a {
        padding: 0 30px 28px 30px;
    }
    #content #ref-grid-items .ref-grid-item .ref-grid-item-overlay h2 {
        font-size:30px;
        line-height:30px;
    }
    #content #ref-grid-items .ref-grid-item .ref-grid-item-overlay h3 {
        font-size: 20px;
        line-height: 30px;
    }
    #content #ref-layout h1, #content #contact-layout h1 {
        margin-bottom: 27px;
    }
    #ref-info-gallery-grid .ref-info-gallery-grid-item.half, .ref-info-gallery-grid-sizer {
        width: calc(100% - 40px);
    }
    #team-grid-items .team-grid-item {
        margin: 0 15px 32px 15px;
    }
    #team-grid-items .team-grid-item .team-grid-item-img {
        margin-bottom: 12px;
    }
    .pdf-frame {
        margin: 0 -15px;
    }
    .pdf-frame-img {
        width: calc(36% - 30px);
        margin: 0 15px;
    }
    .pdf-frame-text {
        width: calc(64% - 30px);
        margin: 0 15px;
    }
    #contact-layout-image {
        margin-bottom: 27px;
    }
    .wpcf7-text, .wpcf7-textarea {
        font-size: 16px;
    }
    .wpcf7-submit {
        font-size: 16px;
        line-height: 26px;
    }
    #contact-layout-request {
        margin: 0 -20px 24px -20px;
    }
    .gmap {
        height: 320px;
    }
    #footer-cols .footer-col.faddress {
        width: calc(100% - 140px);
        margin:0 10px;
    }
    #footer-cols .footer-col.fsocials {
        width: 100px;
        margin:0 10px;
    }
    #footer .footer-col h3, #footer .footer-col p {
        font-size: 14px;
        line-height: 20px;
    }
    #fsocials-items .fsocials-item svg {
        width: 34px;
        height: 34px;
    }
    #footer .footer-col p a {
        white-space: nowrap;
    }
}
@media only screen and (max-width:480px) {
    .sbi-iblisr-inner, .sbi-islibr-inner {
        margin: 0 -13px;
    }
    .sbi-iblisr-big-image, .sbi-islibr-big-image, .sbi-iblisr-small-image, .sbi-islibr-small-image {
        width: calc(100% - 26px);
        margin: 0 13px 27px 13px;
    }
    .sbi-iblisr-big-image p, .sbi-islibr-small-image p, .sbi-iblisr-small-image p, .sbi-islibr-big-image p {
        text-align: center;
        padding-left:20px;
        padding-right:20px;
    }
    .ccols {
        flex-direction: column;
    }
    .ccols .col-1, .ccols .col-2, .ccols .col-3 { 
        width:100%;
        margin:0;
    }
    .sbi-calculator-line-0, .sbi-calculator-line-9.col-2 {
        display: none;
    }
    .ccols label {
        font-weight: 700;
        text-align: center;
    }
    .ccols label span {
        font-weight: 300;
    }
    .ccols .sbi-calculator-line-1.col-1 label {
        display: block;
        width:100%;
    }
    .ccols .sbi-calculator-line-1.col-1 {
        padding: 0 0 10px 0;
    }
    .ccols .sbi-calculator-line-1.col-1 .select2-container {
        margin:0 auto;
    }
    .sbi-calculator-input-select-items {
        margin:0 0 10px 0;
    }
    .ccols .sbi-calculator-line-9.col-1 label {
        padding: 14px 0 0 0;
    }
    .ccols .col-3 span.benefit-solar {
        padding:0 0 14px 0;
        text-align: center;
    }
    .sbi-calculator-note p {
        text-align: center;
    }
    .ccols .col-2 span, .ccols .col-3 span {
        display: block;
    }
    .ccols .col-2 span:before, .ccols .col-3 span:before {
        content:"Standardleuchten";
        font-family: museo-sans, sans-serif;
        font-weight: 300;
        font-style: normal;
        font-size: 16px;
        line-height: 24px;
        color: #2B2E34;
        float:left;
    }
    .ccols .col-3 span:before {
        content:"Solarleuchten";
    }
    .ccols .col-3 span.benefit-solar:before {
        content:"";
    }
    .ccols.calc-subtotal-line .col-2, .ccols.calc-subtotal-line .col-3 {
        border-top:none;
    }
    .ccols .col-2 span, .ccols .col-3 span {
        padding: 7px 0;
    }
    .sbi-calculator-input-select-items {
        flex-direction: column;
        justify-content: center;
    }
    .ccols .col-2 span, .ccols .col-3 span {
        margin: 0;
    }
}
@media only screen and (max-width:375px) {
    #content .home-service-item h2 {
        min-height:96px;
        font-size: 26px;
        line-height: 32px;
    }
}

/* Big iPad fix */
@media only screen 
  and (min-device-width: 1112px) 
  and (max-device-width: 1112px) 
  and (orientation: landscape) 
  and (-webkit-min-device-pixel-ratio: 2) {
    #menu {
        display: none;
    }
    #menu-trigger {
        display: block;
    }
    #header.shrink #logo {
        padding: 10px 27px;
    }
    #header #logo {
        padding: 25px 27px 21px 27px;
    }
}
@media only screen 
  and (min-device-width: 1366px) 
  and (max-device-width: 1366px) 
  and (orientation: landscape) 
  and (-webkit-min-device-pixel-ratio: 2) {
    #menu {
        display: none;
    }
    #menu-trigger {
        display: block;
    }
    #header.shrink #logo {
        padding: 10px 27px;
    }
    #header #logo {
        padding: 25px 27px 21px 27px;
    }
}