/* @section 1. Global Styles */

html {
    min-height: 100%;
}

body {
    color: #444;
    font: 0.75em/1.5em Rubik, sans-serif;
}

h1, h2, h3, h4, h5, b, strong {
    font-weight: 500;
}

button, input, optgroup, select, textarea {
    font-family: inherit;
    line-height: 1.15;
}

a {
    text-decoration: none;
}

a:not(.brandingLogo) svg,
a {
    color: #0022aa;
    fill: #0022aa;
}

a:not(.brandingLogo) svg {
    display: inline-block;
    height: 1.15em;
    vertical-align: middle;
    width: 1.15em;
}

a:hover:not(.brandingLogo) svg {
    fill: #50930e;
}

.vam {
    vertical-align: middle !important;
}

.inlined-element {
    display: inline-block;
}

.mt15 {
    margin-top: 15px;
}

.mb15 {
    margin-bottom: 15px;
}

.mtl5 {
    margin-left: -5px;
}

.ml15 {
    margin-left: 15px;
}

.alignCenter {
    text-align: center;
}

.wrapper {
    margin: 0 auto;
}

sup {
    font-size: 80%;
    vertical-align: .4em;
}

.wrapper.mobile .tooltip {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.contentSearch {
    max-width: 100%;
}

.contentSearch .ekomi-widget-wrapper {
    margin: 0 20px;
}

.compareTariffHeadline {
    color: #444;
    font-size: 1.2em;
    font-weight: 500;
    text-align: center;
    background: #F7F7F7;
}

.timePeriodPriceButtonsBox {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    margin: 0;
    padding-top: 8px;
    position: relative;
}

.timePeriodPriceButtonsBox:last-child {
	margin-bottom: -22px;
}

.timePeriodPriceButtonsBox .timePeriodPriceButtons {
    gap: 10px;
	flex-direction: row;
	display: flex;
	width: calc(100% - 92px);
}

.timePeriodPriceButtonsBox .legend {
    margin-right: 4px;
    line-height: 1;
	flex-basis: 72px;
}

.timePeriodPriceButtonsBox .legendMobile {
	display: none;
}

.timePeriodPriceButtonsBox input {
    display: none;
}

.timePeriodPriceButtonsBox label {
    border-radius: 4px;
    border: 1px solid #087e9f;
	color: #087e9f;
    cursor: pointer;
    display: block;
    padding: 6px 4px;
    user-select: none;
    line-height: 1;
	text-align: center;
	width: 50%;
}

.timePeriodPriceButtonsBox input:checked + label {
    background: #087e9f;
    color: #fff;
}

.ekomi-widget-container .ekw-template .grayed-box .stars-area {
    box-sizing: border-box;
	height: auto;
}

.ekomi-tooltip-widget .tooltip {
    min-width: 260px;
    width: 260px;
}

.ekomi-tooltip-widget > .sealDesktop {
    height: 61px;
	width: 125px;
}

.landingMobile .ekomi-tooltip-widget > img {
    height: 98px;
	width: 200px;
}

.sealDesktop {
    display: block;
}

.sealMobile {
    display: none;
    height: 200px;
}

@media (min-width: 650px) and (max-width: 768px) {
    .sealsSearchResults .sealDesktop {
        display: none;
    }

    .sealsSearchResults .sealMobile {
        display: block;
    }
}

@media (max-width: 980px) {
    .contentSearch {
        width: 100%;
    }

    .contentSearch .ekomi-widget-wrapper {
        margin: 0;
    }
}

@media (max-width: 650px) {
    .wrapper.mobile .tooltip {
        border-width: 4px !important;
        box-shadow: 0 .5em .5em rgba(0, 0, 0, .3);
        font-size: 0.85rem;
        line-height: 1.25em;
        margin: 0;
        max-height: 85% !important;
        max-width: 100%;
        overflow: hidden;
        padding: 2%;
        z-index: 99999;
    }

    .resultsTable .third .listBonus {
        display: block !important;
        margin-top: 10px;
    }

    .resultsTable .third .listBonus .specialinfo {
        display: none;
    }

    .resultsTable .listBonus span {
        font-size: 13px;
    }

    .resultsTable .listBonus .fas,
    .resultsTable .listBonus .fa,
    .resultsTable .listBonus .icoInfo {
        width: 20px !important;
    }

    .resultsTable .third .listBonus .icoInfo {
        margin-right: 0px !important;
    }
}

@media (max-width:800px) {
    .wrapper.mobile {
        font-size: 1.2em;
        line-height: 1.3em;
        min-width: 20em;
    }
}

@media (max-width:650px) {
    .wrapper.mobile {font-size: 1.3em;}
}

/* @section 2. Elements */

/* @section 2.1 Text */

.textLight,
.readonly {
    color: #909090;
}

select.readonly {
    color: #000;
}

.saving {
    font-weight: 500;
    font-size: 1.4em;
    color: #087e9f;
}

.textSmall {
    font-size: 0.9em;
    color: #909090;
}

.textSmaller {
    font-size: 0.8em;
    line-height: 1.25em;
    color: #909090;
}

.textBold {
    font-weight: 500;
}

.textSpecial {
    font-weight: 500;
}

.noWrap {
    white-space: nowrap;
}

.textOneFreeSpace {
    margin-bottom: 0.8em;
}

/*overwrite pvg-kit */
.searchResults .titleDefault {
    border: 0;
    border-bottom: 1px solid #d6d6d6;
    background: #fff;
    font-weight: normal;
    color: #666;
}

.searchResults .boxTitle .searchDescription {
    display: inline-block;
    color: #fa5e00;
}

.searchResults .boxTitle .searchDescription:hover {
    color: #fb8000;
}

.searchResults .tableSpacer {
    height: 7px;
}

.searchResults .main,
.contractFormdatastep1 .main,
.contractFormdatastep2 .main,
.contractFormdatacheck .main,
.contractFormdatasuccessful .main,
.contractFormdatasuccessfulshort .main {
    margin-top: -10px;
    padding-top: 10px;
}

.titleSidebar {
    border: 0;
}

/* Bottom sidebar */
.lineSpace.sidebarBottom {
    padding-left: 10px;
    padding-right: 10px;
}

.sidebarBottom .boxSidebarRight .titleSidebar {
    background: none;
    color: #888;
    border-bottom: 1px #888 solid;
    padding-left: 0;
    margin-left: 0;
    margin-right: 0;
}

.sidebarBottom .titleSidebar  .cornerSidebar {
    display: none;
}
/* end Bottom sidebar */

/* @section 2.2 Filter box - search resalt */
.searchResults .box {
    border: none;
    border-bottom: 1px #d6d6d6 solid;
}

.boxTitle + .box {
	border-top: 0;
    margin-top: 0;
}

.box + .boxTitle {
    margin-top: 10px
}

.tarifWrapper {
	align-items: center;
	display: flex;
    justify-content: space-between;
}

.boxCustom {border:1px solid #d6d6d6}
.infoParagraph {padding:10px}

.titleDefault,
.titleAlternative {
    background: #fff;
    border: 1px solid #d6d6d6;
    color: #666;
    font-size: 18px;
    line-height: 1.62;
    padding: 5px 8px;
}

.boxTitleCustom {border:1px solid #bed697; border-width:0 0 1px; background-color:#dbeebd; padding:5px 10px; color:#444444;
    background:-o-linear-gradient(top, rgb(242,250,229) 0%, rgb(219,238,189) 100%);
    background:-moz-linear-gradient(top, rgb(242,250,229) 0%, rgb(219,238,189) 100%);
    background:-webkit-gradient(linear, left top, left bottom, color-stop(0, rgb(242,250,229)), color-stop(1, rgb(219,238,189)));
    background:-webkit-linear-gradient(top, rgb(242,250,229) 0%, rgb(219,238,189) 100%);
    background:-ms-linear-gradient(top, rgb(242,250,229) 0%, rgb(219,238,189) 100%);
    background:linear-gradient(top, rgb(242,250,229) 0%, rgb(219,238,189) 100%);
}

/* @section 2.3 Teaser Ecken */

/* @section 2.4 Icons */

.icoError,
.icoWarning,
.icoSuccess {
    border-radius: 0 0.35em 0.35em 0;
    height: 2em;
    width: 2em;
    vertical-align: top;
}

@media (max-width: 800px) {
    .icoError,
    .icoWarning,
    .icoSuccess {
        height: 24px;
        width: 24px;
    }

    .powerCalculator .icoError,
    .gasCalculator .icoError {
        height: 26px;
        width: 25px;
    }
}

@media (max-width: 650px) {
    .icoError,
    .icoWarning,
    .icoSuccess {
        height: 2em;
    }
}

.content .icoCalendar {cursor:pointer}
.icoPlusAlternate {background-position:center -1149px; height:12px; width:12px}
.icoTel {vertical-align:top}

.icoLock:before {
    content: "V";
    font: 1.8em "icon pvg";
}

/* @section 2.5 Buttons */

.linkButton {
    background: none;
    color: #0022AA;
    text-decoration: underline;
    cursor: pointer;
}

.linkButton:hover {
    color: #50930e;
}

.calculatorFilter .linkButton {
    text-decoration: none;
}

.calculatorFilter .linkButton span {
    text-decoration: underline;
}

.fixedWidthSearchButton {
    max-width: 100%;
}

/* @section 2.5 Badgets */

.ekw-template {
    height: 124px;
}

.ekw-template .greyed-box {
    padding: 2px;
}

.seals.sealsSearchResults {
    height: 61px;
    width: 134px;
}

.optionsBox + .seals {
    display: inline-block;
    position: absolute;
    right: 17px;
    top: 8px;
}

.seals.sealsSearchResults .seal-widget {
    transform: scale(.53);
}

.boxTeaserMain .seals {
    bottom: 11.5px;
    margin-left: 12px;
    position: absolute;
    width: 227px;
}

.badgeSeal .seal {
    cursor: pointer;
    display: block;
    height: 95px;
    margin: 0 auto 5px;
    position: relative;
    width: 100px;
    z-index: 1;
}

.badgeSeal .seal:after {
    content: '';
    background-size: cover !important;
    background: url(../img/seal.svg);
    height: inherit;
    left: 0;
    position: absolute;
    top: 0;
    width: inherit;
}

.teaserMain .badgeSeal .seal {
    height: 68px;
    width: 71px;
}

.calculatorWrapper .badgeSeal {
    position: absolute;
    text-align: center;
    top: 5px;
    width: 150px;
}

.whitelabelPvg .badgeSeal .seal {
    height: 65px;
    width: 70px;
}

.searchResults .titleDefault {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.searchResults .resultsTable .first .priceThLabel {
    margin-right: 5px;
}

.searchResults .resultsTable .first .icoInfo {
    display: inline;
}

.searchResults .resultsTable .tablehead .first .icoInfo {
    position: absolute;
}

.resultsTable .third .listBonus {
    display: none;
}

.footnotes {
    color: #909090;
    font-size: 11px;
    padding: 10px 0 0 0;
}

.boxFormdata .boxContent > div.livyProtectBullet:last-child {
    clear: both;
    float: none;
    font-size: 12px;
    width: 100%;
}

.sidebarBottom > .titleDefault,
.sidebarBottom  .calculatorWrapper {
    width: 100%;
}

/* @section 2.7 Steps / Progressbar */

.progressBarStepsAlternative {margin-bottom: 1em}
.progressBarStepsAlternative .progressLine {width:80%; margin-left: 2%;}

/* @section 2.8 Tooltips */

.tooltip {
    max-width: 30em;
}

.tooltip.active {
    position: fixed;
    display: block;
    opacity: 1;
}

.tooltip .lineBorder {border-top:1px solid #D6D6D6; margin-top:5px; padding-top:5px}
.tooltip .lineBorderBold {border-top:2px solid #D6D6D6; margin:5px 0 10px; padding-top:5px}
.tooltip .lineDistance {margin-bottom: 10px}
.tooltip .textSmall {font-size:0.8em}

.tooltip dd,
.tooltip dt {display:inline-block; width:49px}
.tooltip li {padding:0}
.tooltip .label {display:inline-block; width:64%}
.tooltip .definition {display:inline-block; width:34%; text-align:right}
.tooltip table td {padding-right: 1em}

/* @section 2.9 UI - Autocompleter */

.ui-combobox {position:relative; z-index:500; display:inline-block}

.ui-autocomplete {position:absolute; max-height:224px; text-align: left; color:#444; cursor:pointer; background:#fff; padding-top:1px; /*width:10em !important;*/ overflow:auto; -moz-box-shadow:0 0 10px 10px #fff; -webkit-box-shadow:0 0 10px 10px #fff; box-shadow:0 0 10px 10px #fff}
.ui-autocomplete li {border:1px solid #D6D6D6; margin-bottom:1px}
.ui-autocomplete li a {padding:2px 5px; display:block}

.ui-helper-hidden-accessible {display: none}
.ui-autocomplete-term {font-weight:500}
.ui-combobox .ui-autocomplete-input {width:220px}
.ui-autocomplete-loading {color:#666}

.customProvider {display:inline-block}
.customProvider .hint {width:85%}

/* @section 2.10 Listen */

#formerProviderContractNotice {width:104px}

.listAlternate li,
.listTerminationToggle > div {
    border-top:1px dotted #D6D6D6; padding:0.75em 0 0.75em 1%; background-color:#ECF5FF;
    background:-moz-linear-gradient(left, rgb(236,245,255) 0%, rgb(236,245,255) 42%, rgb(255,255,255) 42%, rgb(255,255,255) 100%);
    background:-ms-linear-gradient(left, rgb(236,245,255) 0%, rgb(236,245,255) 42%, rgb(255,255,255) 42%, rgb(255,255,255) 100%);
    background:-o-linear-gradient(left, rgb(236,245,255) 0%, rgb(236,245,255) 42%, rgb(255,255,255) 42%, rgb(255,255,255) 100%);
    background:-webkit-gradient(linear, left bottom, right bottom, color-stop(0, rgb(236,245,255)), color-stop(0.48, rgb(236,245,255)), color-stop(0.48, rgb(255,255,255)), color-stop(1, rgb(255,255,255)));
    background:-webkit-linear-gradient(left, rgb(236,245,255) 0%, rgb(236,245,255) 42%, rgb(255,255,255) 42%, rgb(255,255,255) 100%);
    background:linear-gradient(left, rgb(236,245,255) 0%, rgb(236,245,255) 42%, rgb(255,255,255) 42%, rgb(255,255,255) 100%);
}
.listAlternate li.listTerminationToggle {
    padding: 0;
    border: 0;
    background-color: transparent;
}

.listAlternate li:first-child {border-top:none}
.listAlternate li ul li {background:#fff none}

.listAlternate label,
.listAlternate .label {display:inline-block; width:38%; padding:5px 0; text-align:right; font-weight:500; margin-right:5%; vertical-align:top}
.listAlternate input {vertical-align:middle}
.listAlternate .definition {display:inline-block; width:45%; padding:5px 0}
.listAlternate .hint {display:none}
.validationList {border-top:1px solid #d6d6d6}
.listPrice .label {margin-right:0}
.listPrice .definition {width:18%; text-align:right; margin-left:12px}

.bottomBar {border-top:1px solid #d6d6d6; padding: 0.5em 3%}
.bottomBar li {display:inline-block; vertical-align:middle}
.bottomBar .first {width:22%}
.bottomBar .second {width:76%; text-align:right}
.bottomBar .icoSsl {vertical-align:top}
.bottomBar .sslText {display:inline-block; text-align:left; vertical-align:middle; color:#909090; font-size:0.8em; line-height:1.6em}

.formDefault input:not([type="checkbox"]):not([type="radio"]).error {
    border-color: #c00;
    border-radius: 0 .35em .35em 0;
}

.calculatorWrapper .twoParts .icoInfo,
.calculatorWrapper .twoParts input[type=checkbox] {vertical-align:super}
.calculatorWrapper .twoParts label {display:inline-block}

.calculatorWrapper .criteriaBox .icoError {
    margin-left: -24px;
    height: 2em;
}

.formDefault .listAlternate select,
.formDefault .listAlternate input {
    width: 22em;
}

.formDefault .listAlternate input.inputSmall {
    width: 9em;
}

.formDefault .listAlternate input.inputMiddle {
    width: 11em;
}

.formDefault .listAlternate select.inputWidth,
.formDefault .listAlternate input.inputWidth {
    width: 13em;
}

.formDefault .listAlternate input[type=checkbox],
.formDefault .listAlternate input[type=radio],
.formDefault .listAlternate .specialTitle select {
    width: auto;
}

.formDefault .listAlternate .specialTitle select {
    background-color: #fff;
}

.formDefault .listAlternate .special label {
    width: auto;
    font-weight: normal;
    text-align: left;
    margin-right: 10px;
}

.formDefault .listAlternate label.error {width:auto; margin:0; padding:0}
.formDefault .listAlternate .specialTitle label input {margin-right:5px; vertical-align:middle; width: auto}
.formDefault .listAlternate .selectSmall {width:auto; margin-right:5px}
.formdatastep1 .formDefault .listAlternate .selectSmall[class*="Birthday"] {
    margin-right: 0;
    width:7.2em;
    background-color: #fff;
}
.formDefault .listAlternate .tooltip {left:-220px}

.formDefault .listAlternate .specialRadio {display:inline-block; width:45%}
.formDefault .listAlternate .specialRadio label.error {width:auto}

.formDefault .listAlternate .specialReason .specialRadio label {
    width: 90%;
    margin-left: .25em;
}
.formDefault .listAlternate .specialReason .comment {font-size:0.8em; color:#909090}
.formDefault .listAlternate .specialReason label input {margin-right:5px; margin-left:-18px}

.formDefault .boxDownload {border-width: 2px 0px 1px; padding: 0; position: relative}
.formDefault .boxDownload .boxDownloadContent {padding: 10px}
.formDefault .boxDownload p:first-of-type {margin-bottom: 8px}
.formDefault .boxDownload p a {cursor: pointer; color: #087e9f; text-decoration: none}
.formDefault .boxDownload .downloadLoaderBox,
.formdatasuccessful .boxDownload .downloadLoaderBox {
    align-items: center;
    background-color: #FFFFFF;
    display: none;
    flex-direction: column;
    height: 100%;
    justify-content: center;
    position: absolute;
    width: 100%;
    z-index: 8;
}
.boxDownload.boxDownloadPreliminary .downloadLoaderBox { background-color: #f8fbff}
.boxDownload.boxDownloadPreliminary .boxDownloadContent { padding: 0}
.formDefault .boxDownload .downloadLoaderBox .loaderModal,
.formdatasuccessful .boxDownload .downloadLoaderBox .loaderModal {
    margin: 3px;
    position: unset;
    padding: 0.8em;
}
.formDefault .boxDownload .downloadLoaderBox .loaderMessage,
.formdatasuccessful .boxDownload .downloadLoaderBox .loaderMessage {
    position: unset;
    padding: 0 10%;
    text-align: center;
}

.formdatasuccessful .boxDownload {
    align-items: center;
    display: flex;
    margin-bottom: 15px;
    padding: 8px;
    position: relative;
}

.formdatasuccessful .boxDownloadContent p {
    margin-bottom: 0;
}

.formdatasuccessful .boxDownload .downloadLoaderBox {
    position: unset;
}
.ibanBonus {
    font-size: .9em;
    margin: 0 0 10px calc(42% + 13px);
}

.priceNoticeModalContainer {
    display: none;
}

.priceNoticeModal {
    height: 100%;
    overflow: auto;
}

.priceNoticeModal > div {
    border: 1px solid #d6d6d6;
    font-size: 1.25em;
    line-height: 1.5em;
    padding: 10px;
}

@media (max-width: 700px) {
    .formDefault .listAlternate select,
    .formDefault .listAlternate input:not([type="checkbox"]):not([type="radio"]) {
        width: 16.25em;
    }

    .formDefault .listAlternate input:not([type="checkbox"]):not([type="radio"]).inputSmall {
        width: 5em;
    }

    .formDefault .listAlternate input:not([type="checkbox"]):not([type="radio"]).inputMiddle {
        width: 8em;
    }

    .formDefault .listAlternate select.inputWidth,
    .formDefault .listAlternate input:not([type="checkbox"]):not([type="radio"]).inputWidth {
        width: 11em;
    }
    .formdatastep1 .formDefault .listAlternate .selectSmall[class*="Birthday"] {
        width: 5.2em;
    }
}

@media (max-width: 500px) {
    .formDefault .listTerminationToggle > div,
    .formDefault .listAlternate li {
        background: none;
        padding-left: 3%;
    }
    .formDefault .listAlternate .label,
    .formDefault .listAlternate label {
        text-align: left;
        width: 95%;
        line-height: 2em;
        margin: 0;
    }
    .formDefault .listAlternate .specialRadio {
        display: block;
        width: 100%;
    }
    .formDefault .listAlternate .specialReason label {
        line-height: 1.5em;
    }

    .formDefault .listAlternate select,
    .formDefault .listAlternate input:not([type="checkbox"]):not([type="radio"]) {
        width: 89%;
    }

    .formDefault .listAlternate select.hasDatepicker,
    .formDefault .listAlternate input.hasDatepicker:not([type="checkbox"]):not([type="radio"]) {
        width: calc(89% - 25px);
    }

    .formDefault .listAlternate input:not([type="checkbox"]):not([type="radio"]).inputSmall {
        width: 24%;
    }

    .formDefault .listAlternate input:not([type="checkbox"]):not([type="radio"]).inputMiddle {
        width: 44%;
    }

    .formDefault .listAlternate select.inputWidth,
    .formDefault .listAlternate input:not([type="checkbox"]):not([type="radio"]).inputWidth {
        width: 64%;
    }

    .formdatacheck .boxAddressInvoice.listAlternate .textSmaller {
        margin-left: 0;
    }

    .formdatastep1 .formDefault .listAlternate .selectSmall[class*="Birthday"] {
        width: 29%;
    }

    .ibanBonus {
        margin-left: 0;
    }
}

.listLight li {border-top:1px dotted #D6D6D6; padding:1em}
.listLight li:first-child {border-top:none}
.listLight label {display:inline-block; margin-left:1%; vertical-align:top; width:85%; line-height: 1.25em;}
.listLight li.agreement {list-style-type: disc; margin-left: 24px; padding-left: 0px; border-top: none; padding-top: 0px; padding-bottom: 0px;}
.listLight .box {list-style-type: disc; margin: 5px 10px; background: #f8fbff; padding: 5px 0px; border: none;}
.listLight .title {margin: 10px 0px 0px 10px}
.listLight .bottom {margin: 10px 0px 10px 10px}

.validationList li {padding:0}
.validationList input,
.validationList .mainInfo,
.validationList label {margin:1em; vertical-align:middle}
.validationList label {width:88%}


/* @section 2.11 Siegel */

/* Öko Siegel */

.icoSeal {background:url('../img/pvg_sprite_details.png') no-repeat 0 0;
    width:60px; height:60px;
    display:inline-block;
    margin-right:5px
}
.icoSeal.seal4 {background-position:0 0}
.icoSeal.seal5 {background-position:0 -60px}
.icoSeal.seal9 {background-position:0 -120px}
.icoSeal.seal12 {background-position:0 -180px}
.icoSeal.seal13 {background-position:0 -240px}
.icoSeal.seal14 {background-position:0 -300px}
.icoSeal.seal15 {background-position:0 -360px}
.icoSeal.seal17 {background-position:0 -420px}
.icoSeal.seal18 {background-position:0 -480px}
.icoSeal.seal21 {background-position:0 -540px}

/* @section 2.12 Modal */

.simplemodal-default {
    background: #fff;
    border-radius: 0;
    border: none;
    padding-top: 0;
    position: relative;
}

.simplemodal-default * {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

.simplemodal-default.simplemodal-type-loader .simplemodal-wrap {
    padding-top: 15px;
}

.simplemodal-default .simplemodal-title {
    background: transparent;
    border-bottom: 1px solid #d6d6d6;
    color: inherit;
    font: 400 1.6em/1.6em Rubik, sans-serif;
    min-height: 45px;
    padding: 8px 3em 8px 20px;
    position: static;
    text-indent: 0;
    width: 100%;
}

.simplemodal-default .simplemodal-close {
    top: 10px;
    right: 4px;
}

.offlineLayer .titleSixthLevel {
    margin: 10px 0 5px;
}

.offlineLayer .hotline,
.offlineLayer .businessHours {display:inline-block; vertical-align:middle}
.offlineLayer .hotline {color:#2A4D8F; font-size:1.6em; font-weight:500; line-height:1.3em}
.offlineLayer .businessHours {width:150px}
.offlineLayer > div {width: 49%; display: inline-block; min-width: 18em;}
.offlineLayer .businessHours {
    display: inline-block;
    vertical-align: middle;
}

.offlineLayer .hotline {
    color: #2A4D8F;
    font-size: 1.6em;
    font-weight: 500;
    line-height: 1.3em;
}

.offlineLayer .businessHours {
    width: 150px;
}

.offlineLayer > div {
    width: 49%;
    display: inline-block;
    min-width: 18em;
}

.layoutModal {
    background: #fff
}

.layoutModal .layerContent a {
    cursor: pointer;
}

.layoutModal .layerContent .tooltip {
    left: auto;
    right: 0;
}

.layoutModal .layerContent > h1,
.layoutModal .layerContent > h3,
.layoutModal .layerContent > h5,
.layoutModal .titleFifthLevel {
    margin: 10px 0 5px;
}

.layoutModal .layerContent h4 {
    margin: 10px 0 5px;
    display: inline-block;
}

.layoutModal .layerContent ol li,
.layoutModal .layerContent p {
    margin-bottom: 5px;
}

.layoutModal .layerContent,
.layoutModal .layerContent dl {
    margin: 0.75em;
}

.layoutModal .layerContent dt {
    display: inline-block;
    width: 20%
}

.layoutModal .layerContent dd {
    display: inline-block;
    width: 80%;
}

@media (max-width: 800px) {
    .simplemodal-container.simplemodal-default.simplemodal-type-iframe,
    .simplemodal-container.simplemodal-default.simplemodal-type-content {
        height: 85% !important;
        max-height: 50em;
        left: 0 !important;
        right: 0;
        margin: auto;
        width: 90% !important;
    }

    .mobile .simplemodal-container.simplemodal-default.simplemodal-type-iframe,
    .mobile .simplemodal-container.simplemodal-default.simplemodal-type-content {
        top: 50px !important;
    }

    .simplemodal-close {
        overflow: hidden;
    }

    .simplemodal-default .simplemodal-title {
        font-size: 1.3em;
    }
	
	.priceNoticeModal > div {
		border: 0;
	}
}

/* @section 2.15 Banner */

/* @section 2.16 Rating Stars */

.ratingStars {
    display: inline;
}
.ratingStar {
    display: inline-block;
    height: 1.5em;
    width: 1.15em;
    vertical-align: top;
}
.ratingStars > .ratingStar {
    position: relative;
}

.ratingStar + .ratingStar {
    margin-left: .25em;
}

.ratingStar > .ratingStar {
    position: absolute;
    top: 0;
    left: 0;
}

.starIconQuarter {
    width: 0.5em;
    overflow: hidden;
}

.starIconHalf {
    width: 0.65em;
    overflow: hidden;
}

.starIconThreeQuarters {
    width: 0.85em;
    overflow: hidden;
}

.starIcon {text-decoration: none}
.starIcon:after {
    color: #c1c1c1;
    content: "★"; /* ★ stern*/
    font: 1.85em/0.7em "icon pvg";
    display: inline-block;
    width: 0.75em;
    left: -0.15em;
    position: relative;
}
.starIconActive:after {
    color: #feca00;
}

/* @section 3. Layout */

/* @section 3.1 Sidebar */

/* @section 4. Sections */

/* @section 4.1 Teaser */

/* @section 4.1 Index */

/* @section 4.2 Index Boxen */

/* @section 4.2.1 Form Box */

.teaserMain .formDefault input:not([type="checkbox"]):not([type="radio"]),
.teaserMain .formDefault select {
    height: 26px;
}

.formDefault select.citySelect {
    width: 112px;
}

.seoForm .formDefault select.citySelect{
    width: 157px;
}

.formDefault .hadCity ~ select.citySelect {
    margin-left: 2px;
}

.teaserMain .formDefault .usgBox input {
    text-align: center;
}

/* @section 4.2 Searchresults */
.resultsTable .icoLock:before {
    color: #50930e;
    margin-left: -3px;
}
.resultsTable .icoLock {
    margin-bottom: 3px;
}

/* @section 4.2.3.2 Bewertung Rating */

.layoutModal .layerContent.ratingexplanation {padding-bottom:0}
.ratingexplanation table {margin-top:10px}
.ratingexplanation tr {background-color:#f8fbff; border-bottom:2px solid #fff}
.ratingexplanation td {padding:7px 10px}
.ratingexplanation .explanationLabel {background-color:#edf6ff; font-weight:500; text-align:right}

/* @section 4.2.3.3 Sterne Star Rating */

.ratingStarTooltip {
    height: 1.5em;
    margin-bottom: 0.75em;
}
.ratingStarTooltip > .hasTooltip {
    height: 1.5em;
    top: -1.5em;
}

.ratingStarTooltip .tooltip {
    font-size: 12px;
}

.tooltip > table {
    width: 100%;
}
.ratingStarTooltip .tooltip td {
    white-space: nowrap;
    padding: 0 1em;
}
.ratingStarTooltip .tooltip > p {
    padding: 0.5em 1em;
}
.ratingStarTooltip .tooltip > p:first-child {
    border-bottom: 1px solid #bfd1e4;
    font-weight: 500;
    margin-bottom: 0.5em;
}
.ratingStarTooltip .tooltip > p:last-child {
    text-align: center;
}

.providerRatingLayer {
    margin: 1em;
}
.providerRatingLayer .headline {
    margin: 1em 0;
}
.providerRatingLayer .ratingFilter {
    float: right;
}
.providerRatingLayer .titleComment {
    background-color: #e2effd;
    font-weight: 500;
    padding: 0.25em 0.5em;
    border: 1px solid #d6d6d6;
    border-bottom-width:0;
}
.providerRatingLayer .titleComment .ratingStars {
    float: right;
}
.providerRatingLayer .box {
    border-top-style: dotted;
    border-bottom-width: 0;
}
.providerRatingLayer .box:last-child {
    border-bottom-width: 1px;
}

/* @section 4.3 Formdatastep 1-3 */

.imgCounter {background:url('../img/pvg_sprite_details.png') no-repeat -70px -300px; width:131px; height:147px; display:block; margin:5px auto}

.allDataPricingWrap {
    clear: left;
    float: left !important;
}

.allDataPricingWrap table.pricingLevels td.first {
    padding-right: 10px;
    width: 50%;
}

@media (min-width: 651px) {
    .boxFormdata .boxContent .allDataPricingWrap table.pricingLevels {
        width: 150%;
    }
}

.consumptionLevelsInfo {
    color: #909090;
    font-size: .8em;
    line-height: 1.4em;
    margin-top: 10px;
}

.allDataPricingOptions {
    color: #909090;
    font-size: .8em;
}

/* @section 4.8 gewählter Tarif */

.tarifWrapper {
    padding: 0;
    overflow: hidden;
}

.tarifWrapper > div {
    width: 20%;
}

.tarifWrapper > div > * {
    margin: 1em 0 1em 5%;
}

.tarifWrapper .tarifDates,
.tarifWrapper .providerImg,
.tarifWrapper .third {
    vertical-align: middle;
    display: inline-block;
    margin-left: -4px;
}

.tarifWrapper .providerImg {
    margin-left: 0;
}

.tarifWrapper .tableContainer {
    width: 100%;
}

.tarifWrapper > div:last-child > * {
    margin-right: 5%;
}

.tarifWrapper .tarifDates {
    width: 60%;
}

.tarifWrapper.tarifWrapperNoSavings .tarifDates {
    width: 70%;
}

.tarifWrapper table {
    display: inline-block;
    vertical-align: middle;
    width: 47%
}

.tarifWrapper table.second {
    width: 47%;
}

.tarifWrapper table tr td:first-child,
.tarifWrapper .third span:first-child {
    color: #909090;
    padding-right: 5px;
}

.tarifWrapper .third {
    text-align: right;
	position: relative;
}

.tarifWrapper .providerImg img {
    max-height: 45px;
    max-width: 135px;
}

@media (max-width:899px) {
    .tarifWrapper > div {
        width: 25%
    }

    .tarifWrapper .tarifDates table:first-child tr:first-child {
        display: none
    }

    .tarifWrapper table {
        width: 95% !important;
        float: none;
        display: table;
    }

    .tarifWrapper table tr td:first-child {
        width: 38%
    }

    .tarifWrapper .third {
        line-height: 1.5em;
    }

    .tarifWrapper .third span {
        display: block;
    }
}

@media (max-width:599px) {
    .tarifWrapper {
        flex-direction: column;
    }

	.tarifWrapper .providerImg,
	.tarifWrapper .tarifDates,
	.tarifWrapper.tarifWrapperNoSavings .tarifDates {
		width: 100%;
	}

    .tarifWrapper .third {
        display: none;
    }
}

.formDefaultx .listAlternate.box,
.formDefault > .box,
.formDefault.box {padding:0}

.listAlternate .hint {display:inline-block; vertical-align:middle}

.boxFormDatastep .boxTitle {border-width:0 0 1px}

/* @section 4.3.1 Formdatastep 1 */

#divAddressInvoice .boxTitle {border-top:1px solid #D6D6D6; margin-top:-1px}

/* @section 4.3.2 Formdatastep 2 */

.formdatastep2 .boxNote.error a {text-decoration:underline}
.boxFormDatastep .electricMeterIdTooltip .tooltip {top:-300px}
.infoParagraph p {margin-bottom:1em}
.infoParagraph p:last-child > * {margin: 0 0 0 10%;}

/* @section 4.3.2.1 js Anbieter Auswahlliste */

.selectDirectBox {position:relative; display:inline-block; vertical-align:top; margin-top:2px}
.listAlternate .customProvider {position:relative; z-index:500; display:inline}

.listSelect {font-size:0.75em; position:absolute; top:21px; left:0; width:260px; min-height:1em; max-height:12em; overflow-y:scroll; border:1px solid #aaa; z-index:10}
.listSelect li {padding:3px; border-bottom:1px solid #ddd; margin:0; background:#fff}
.listSelect li:last-child{border-bottom:0}
.listSelect li:hover,
.listSelect .firstMatch,
.listSelect .firstMatch:hover {cursor:pointer; background:#D5E8FE; color:#2A4D8F}

#generalTermsAccept + label.error,
#authorization + label.error,
#collection + label.error {
    display: none !important;
}

label.labelError,
label.error,
label[generated=true] {width:auto !important; margin:0; padding:0; border:0; vertical-align: top}

/* @section 4.4 Formdatacheck */

.formdatacheck form.boxCustom {border-top:none}
.formdatacheck form .titleFifthLevel {border-top:1px solid #d6d6d6; margin-top:-1px}

.formdatacheck .bottomBar .additionalText {
    display: inline-block;
    line-height: 1.2em;
    padding-right: 15px;
    text-align: right;
    vertical-align: middle;
    width: 40%;
}
.formdatacheck .checkNote,
.formdatacheck .splitHinweis {text-align:center; margin-top:10px}
.formdatacheck .boxAddressInvoice .textSmaller {margin-left: 43%;}

.bottombarInfo {text-align:right; font-size:0.8em; padding-right: 5px}

.consentDeclaration .hasTooltip {
    color:#0022aa;
}

/* @section 4.4.1 Tarifdaten */

/* @section 4.7 SEO */

/* @section 4.7.1 Strom News Seite */

/* @section 4.7.1 Blog-Pagination */
/* paginationSeoContent für Seo Seiten . paginationAlternative fürs Portal  */

.seoContent  {padding: 0}
.newsDetailsTitel {line-height: 1.25em}
.seoContent h2,
.seoContent h3,
.newsDetailsBox h2,
.newsDetailsBox h3 {
    font-size: 1.125em;
    margin-bottom: 0.5em;
}
.newsDetailsBox  {padding: 10px;}
.newsDetailsBox .seoContent > p {
    margin-bottom: 1em;
}
.seoContent .boxTitle {
    margin-bottom: 0;
}

.paginationAlternative {border:1px solid #d6d6d6}

.paginationAlternative,
.paginationSeoContent {
    font-size: 14px;
    line-height: 1.62;
    padding: 5px 5px 8px;
}

.paginationAlternative .itemSecond,
.paginationSeoContent .itemSecond {text-align:center}
.paginationAlternative .itemLast,
.paginationSeoContent .itemLast {text-align:right}

@media (max-width:400px) {
    .paginationDefault .next > *,
    .paginationDefault .prev > * {
        text-indent: -9999px;
    }
}

.icoArrowLeft,
.icoArrowRight,
.icoArrowUp,
.icoArrowDown {position:relative;display:inline-block;margin:0 5px;width:16px;height:16px;-moz-border-radius:2px;-webkit-border-radius:2px;border-radius:2px;-webkit-box-shadow:0 1px 1px 0 rgba(0,0,0,0.4);-moz-box-shadow:0 1px 1px 0 rgba(0,0,0,0.4);box-shadow:0 1px 1px 0 rgba(0,0,0,0.4);
    background:rgb(18,155,212);
    background:-moz-linear-gradient(top,rgba(18,155,212,1) 0%,rgba(9,99,193,1) 100%);
    background:-webkit-gradient(linear,left top, left bottom,color-stop(0%,rgba(18,155,212,1)),color-stop(100%,rgba(9,99,193,1)));
    background:-webkit-linear-gradient(top,rgba(18,155,212,1) 0%,rgba(9,99,193,1) 100%);
    background:-o-linear-gradient(top,rgba(18,155,212,1) 0%,rgba(9,99,193,1) 100%);
    background:-ms-linear-gradient(top,rgba(18,155,212,1) 0%,rgba(9,99,193,1) 100%);
    background:linear-gradient(to bottom,rgba(18,155,212,1) 0%,rgba(9,99,193,1) 100%);
}

.icoArrowLeft:after,
.icoArrowRight:after,
.icoArrowUp:after,
.icoArrowDown:after {content:'';position:absolute;top:50%;left:50%;border-width:5px;border-style:solid}
.icoArrowLeft:after {margin:-5px -8px;border-color:transparent #fff transparent transparent}
.icoArrowRight:after {margin:-5px -2px;border-color:transparent transparent transparent #fff}
.icoArrowUp:after {margin:-8px -5px;border-color:transparent transparent #fff transparent}
.icoArrowDown:after {margin:-1px -5px;border-color:#fff transparent transparent transparent}

/* @section 5 Datails */

/* @section 5.3 Verbraucherschutz */

.guidelines ul li {list-style-type:disc; margin-left:20px}
.guidelines p {margin-top:5px}

/* @section 3. Layout */

/* @section 3.1 Sidebar */

/* @section 3.1.1 Faq */

/* @section 3.1.2 Hilfebox / Hotline */

/* @section 3.1.3 Tüv */

/* @section 3.1.4 Check */

/* @section 3.1.6 Feedback */

/* @section 3.1.7 Anzeige */

/* @section 3.1.7.1 E wie einfach */

/* @section 3.1.7.2 voltera */

/* @section 3.1.7.3 product of month */

.productOfMonth .advertisement {
    display: block;
    height: 190px;
    width: 180px;
    -webkit-background-size: contain;
    background-size: contain;
}

/* @section 4.2.3 News Box */

/* @section 4.2 Searchresults */

/* @section 4.2.0 Form */

.calculatorWrapper {
    position: relative;
}

.calculatorWrapper .criteria {
    float: left;
    width: 100%;
}

.calculatorWrapper .criteria > li {
    width: 49%;
    float: left;
}

.calculatorWrapper .criteria > li:nth-child(2n) {
    width: 51%;
}

.calculatorWrapper .criteria label {
    width: 76px;
    line-height: 1em;
    display: inline-block;
}

@media (min-width: 769px) {
    .calculatorWrapper .criteria > li:nth-child(2n+1) label {
        width: 30%;
    }
}

.calculatorWrapper .criteria select,
.calculatorWrapper .criteria input:not([type="checkbox"]):not([type="radio"]) {
    font-size: 1em;
    height: 2em;
}

.calculatorWrapper .criteria li:nth-child(2n) select,
.calculatorWrapper .criteria li:nth-child(2n) input:not([type="checkbox"]):not([type="radio"]) {width:40%;}

.calculatorWrapper .criteria select,
.calculatorWrapper .criteria input:not([type="checkbox"]):not([type="radio"]) {
    width: 60%;
}

.calculatorWrapper .criteria .button {height:auto; text-align:center}
.calculatorWrapper .criteria .button button {margin-top:10px}

.calculatorWrapper .criteria .showLink {
    width: 100%;
    text-align: right;
}

.calculatorWrapper .criteria li:first-child {width: 100%}

.calculatorWrapper .criteria .tooltip .label {width: 40%;}
.calculatorWrapper .criteria .tooltip .definition {width: 58%;}

.calculatorWrapper li {margin-bottom:0.5em}
.calculatorWrapper .optionsSecond {margin:23px 0 0 10px}
.calculatorWrapper input,
.calculatorWrapper select,
.calculatorWrapper label,
.calculatorWrapper .icoInfo {vertical-align:middle}
.calculatorWrapper .linkButton {font-family:Rubik, sans-serif; font-weight:500; font-size:11px; margin:0 0 5px 15px}
.calculatorWrapper input[type="checkbox"] {
    margin-right: 3px;
}

.calculatorWrapper .showLink.opened svg{
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    -o-transform: rotate(45deg);
    transform: rotate(45deg);
}

.calculatorWrapper a.partner {
    color: inherit;
    vertical-align: middle;
}

.calculatorWrapper .showLink a,
.calculatorWrapper a.partner {
    cursor: pointer;
    color: #444;
}

.calculatorWrapper a.partner:hover,
.calculatorWrapper .showLink a:hover {
    color: #50930e;
}

.calculatorWrapper a.partner,
.calculatorWrapper .showLink a span {
    text-decoration: underline;
}

.calculatorWrapper .showLink a svg {
    fill: #666;
    margin-right: 4px;
}

.calculatorWrapper .showLink a:hover svg {
    fill: #50930e;
}

.boxFormDatastep .icoInfo,
.calculatorFilterInfo .icoInfo,
.contentSidebar .icoInfo,
.calculatorWrapper .criteria > li .icoInfo,
.calculatorWrapper .options > li .icoInfo,
.calculatorWrapper .icoInfo {
    background: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAzMzAgMzMwIj48ZyBmaWxsPSIjYWFhYWFhIj48cGF0aCBkPSJNMTY1IDBDNzQuMDIgMCAwIDc0LjAyIDAgMTY1YzAgOTAuOTgyIDc0LjAyIDE2NSAxNjUgMTY1czE2NS03NC4wMTggMTY1LTE2NUMzMzAgNzQuMDIgMjU1Ljk4IDAgMTY1IDB6bTAgMzAwYy03NC40NCAwLTEzNS02MC41Ni0xMzUtMTM1QzMwIDkwLjU2MyA5MC41NiAzMCAxNjUgMzBzMTM1IDYwLjU2MiAxMzUgMTM1YzAgNzQuNDQtNjAuNTYgMTM1LTEzNSAxMzV6Ii8+PHBhdGggZD0iTTE2NC45OTggNzBjLTExLjAyNiAwLTE5Ljk5NiA4Ljk3Ni0xOS45OTYgMjAuMDEgMCAxMS4wMjIgOC45NyAxOS45OSAxOS45OTYgMTkuOTkgMTEuMDI2IDAgMTkuOTk2LTguOTY4IDE5Ljk5Ni0xOS45OSAwLTExLjAzNC04Ljk3LTIwLjAxLTE5Ljk5Ni0yMC4wMXpNMTY1IDE0MGMtOC4yODQgMC0xNSA2LjcxNi0xNSAxNXY5MGMwIDguMjg0IDYuNzE2IDE1IDE1IDE1IDguMjg0IDAgMTUtNi43MTYgMTUtMTV2LTkwYzAtOC4yODQtNi43MTYtMTUtMTUtMTV6Ii8+PC9nPjwvc3ZnPg==) center no-repeat;
    background-size: 100%;
    width: 13px;
    height: 13px;
    margin-right: .25em;
    flex-shrink: 0;
}

.resultsTable .icoInfo {
    background: none;
}

.resultsTable .icoInfo::before {
    content: "ⓘ";
    display: inline-block;
    font-size: 18px;
    font-weight: 500;
    position: relative;
    right: 2px;
}

.calculatorWrapper .criteriaBox,
.calculatorWrapper .optionsBox {display:inline-block; vertical-align:top; padding:1% 1% 0}
.calculatorWrapper .optionsBox .buttonDefaultSmall {margin-left: 1.5em;}

.calculatorWrapper .criteria .criteriaTitle,
.calculatorWrapper .options .optionsTitle {
    font-size: 1.25em;
    float: none;
    color: #666;
}

.calculatorWrapper .buttonList {
    padding: 0 1%;
}

.calculatorWrapper .buttonList li {
    width: 50%;
    float: left;
}

.calculatorWrapper .optionWhl {
    display: flex;
    align-items: center;
    line-height: 1;
}

.backArrow {
    padding: 0.5em 0.675em 0.5em 1.675em;
}

.backArrow::before {
    content: '\2039';
    font-size: 1.5em;
    line-height: 0;
    position: absolute;
    left: 0.45em;
    top: 50%;
}

.backArrow::after {
    content: '';
}

@media (max-width:729px) {
    .calculatorWrapper .criteriaBox {width:57%}
    .calculatorWrapper .optionsBox {width:38%}
    .calculatorWrapper .buttonList li.showLink {width: 33%;}
    .calculatorWrapper .buttonList li.optionLinkButton {width: 38%;}
}

@media (max-width:650px) {
    /* results Filter */
    .calculatorWrapper .criteria > li:nth-child(2n),
    .calculatorWrapper .criteria > li {
        width: 100%;
    }

    .calculatorWrapper {
        position: relative;
    }

    .calculatorWrapper .criteriaBox {
        width: 60%;
        padding: 2% 2% 0;
    }

    .calculatorWrapper .criteria .showLink {
        text-align: left;
    }

    .calculatorWrapper .buttonList {
        margin-left: 0;
        padding: 0 2%;
    }

    .calculatorWrapper .buttonList li {
        padding-left: 0;
    }

    .calculatorWrapper .buttonList li.optionLinkButton {
        margin-bottom: .25em;
    }

    .calculatorWrapper .criteria li:nth-child(2n) select, .calculatorWrapper .criteria li:nth-child(2n) input:not([type="checkbox"]):not([type="radio"]) {
        width: 46%;
    }
}

@media (min-width:768px) {
    .calculatorWrapper .criteriaBox {
        width: 46%
    }

    .calculatorWrapper .optionsBox {
        width: 27%
    }
}

@media (min-width:769px) {
    .calculatorWrapper .buttonList {
        margin-left: 48%;
        width: 50%;
    }
}

@media (min-width:981px) {
    .calculatorWrapper .criteriaBox {
        width: 39%;
    }

    .calculatorWrapper .buttonList {
        margin-left: 41%;
        width: 57%;
    }

    .calculatorWrapper .optionLinkButton {
        text-align: right;
    }

    .calculatorWrapper:not(.sidebarBottom) .badgeSeal {
        display: none;
    }

    .calculatorWrapper .optionsBox {
        width: 41%;
    }

    .calculatorWrapper > li {
        float: left;
        width: 49%
    }

    .calculatorWrapper .buttonList .slidingButton {
        margin-left: 8px;
    }

    .calculatorWrapper .optionsBox li:nth-child(n+2) {
        float: left;
        width: 54%
    }

    .calculatorWrapper .optionsBox li:nth-child(2n+3) {
        float: left;
        width: 44%
    }
    .calculatorWrapper.sidebarBottom .badgeSeal {
        right: 16px;
    }

    .unitSpace > div.sidebarBottom {
        margin-left: 25px;
        margin-right: 25px;
    }
}

/* @section 4.2 Vergleichsfilter */
.calculatorFilter {
    background-color: #fff;
    padding: 1em 0;
    font-size: 0.9em;
    line-height: 1.1em;
    border-bottom: 1px #d6d6d6 solid;
	display: flex;
    justify-content: space-between;
    align-items: flex-start;
}
.calculatorFilter .calculatorFilterInfo {
    display:inline-block;
    padding:1.25em 1% 1em;
    vertical-align: middle;
}

.calculatorFilter .calculatorFilterInfo {
    color: #666;
}

.calculatorFilter .calculatorFilterInfo .priceResults {
    margin: 0 3px;
}

.calculatorFilter .calculatorFilterInfo .textSpecial {
    color: #666;
    font-weight: normal;
    font-size: 15px;
    margin-bottom: .25em;
    line-height: 1.25;
}

.calculatorFilter .linkButton {
    font-size: 12px;
    padding-top: 1.5em;
    color: #666;
    position: relative;
    text-align: right;
}

.sidebarBottom .calculatorFilter .linkButton {
    text-align: center;
}

.calculatorFilter .linkButton:hover {
    color: #50930e;
}

.calculatorFilter .formComparison {
    display: inline-block;
    width: 50%;
    padding: 1em 1% 0;
    vertical-align: top
}

.calculatorFilter .formComparison li {
    display: inline-block;
    width: 49%
}

.calculatorFilter .formComparison .comparisonText {
    font-size: 0.9em;
    line-height: 1.25em;
    padding: 4px 0;
	width: 100%;
}

.calculatorFilter .formComparison .comparisonTextWithIcon {
	align-items: center;
    color: #fa5e00;
    display: flex;
    font-size: 14px;
    margin-bottom: 8px;
	max-width: 350px;
    width: 100%;
}

.calculatorFilter .formComparison .comparisonTextWithIcon span {
	padding-left: 4px;  
}

.calculatorFilter .formComparison select {
    vertical-align: middle;
    width: 99%;
    font-size: 1em;
    height: 2.5em;
    background-color: #fff;
}

/* @section 4.2.1 Results Tabelle */

/* @section 4.2.1.1 Head */

/* @section 4.2.1.2 Tabelle */

.resultsTable {
    width: 100%;
    position: relative
}

.resultsTable p {
    text-align: left
}

.resultsTable a {
    text-decoration: none
}

.contractCashback a:not(.buttonDefault),
.contract .overviewTitle a:not(.buttonDefault),
.contract .boxAlternative a:not(.buttonDefault,.partner,.jsShowArea1),
.resultsTable a.moreDetailsButton:not(.buttonDefault),
.footnotes a:not(.buttonDefault),
.tooltip a:not(.buttonDefault) {
    color: #087e9f;
}

.contractCashback a:hover:not(.buttonDefault),
.contract .overviewTitle a:hover:not(.buttonDefault),
.contract .boxAlternative a:hover:not(.buttonDefault),
.resultsTable a.moreDetailsButton:hover:not(.buttonDefault),
.footnotes a:hover:not(.buttonDefault),
.tooltip a:hover:not(.buttonDefault) {
    color: #50930e;
}

.resultsTable th {
    text-align: left;
    color: #666;
    padding: 1.5px 1% 8px;
    vertical-align: middle;
    font-weight: normal;
}

#stromBox .boxTitle {
    font-size: 15px;
}

.calculatorFilter .calculatorFilterInfo .textSpecial,
.calculatorWrapper .criteria .criteriaTitle,
.calculatorWrapper .options .optionsTitle,
.resultsTable th {
    font-size: 14px;
}

.calculatorFilter .linkButton span {
	font-size: 13px;
}

.resultsTable .tablehead .textLight {line-height:1.2em}

.resultsTable .textLargest {
    font-size: 1.0em;
}

.resultsTable > tbody > tr:not(.tableSpacer) {
    border: 1px solid #C3C3C3;
    box-shadow: 0 1px 2px 2px rgba(0, 0, 0, 0.15);
}

.resultsTable td {
    padding: 1em 1%;
    vertical-align: middle;
}

.resultsTable .second {
    background-color: transparent;
    text-align: center;
	display: none;
}

.resultsTable td.second.savings {
    color: #087e9f;
}

.contentSeo .resultsTable td.fifth {
    border-right: 1px solid #c3c3c3;
}

.resultsTable .second p {text-align:center}
.resultsTable .comparisonText {font-size: 0.75em}
.resultsTable .tariffHeadline {display: block;}
.resultsTable .tariffHeadline img {max-height: 45px; max-width: 135px; font-weight:500}
.resultsTable .tariffHeadline span {font-weight:500}
.resultsTable .fourth .listBonus .icoAttention {padding-left:0}

.resultsTable .listBonus .textSpecial {font-weight:500;}
.resultsTable .listBonus li { align-items: center; display: flex; margin-bottom: 0.5em; clear: both;}
.resultsTable .listBonus span {display:inline-block; width:89%; vertical-align: middle;}
.resultsTable .listBonus .icoInfo {vertical-align:middle; width: 20px;}
.resultsTable .listBonus .bonusAbgaben, 
.resultsTable tr:not(.produktMonth):not(.tariffTop) .listBonus .bonusCashback { color: #087e9f; }
.resultsTable tr:not(.produktMonth):not(.tariffTop) .listBonus .bonusCashback .icoInfo { color: #087E9F; }
.resultsTable tr:not(.produktMonth):not(.tariffTop) .listBonus .bonusPreisgarantie { color: #003043; }
.resultsTable .listBonus .bonusPreisgarantie span { font-weight: 500; }
.resultsTable .listBonus .bonusPreisgarantie svg { position: relative; left: -3px; }
.resultsTable tr:not(.produktMonth):not(.tariffTop) .listBonus .bonusPreisgarantie svg g { fill: #003043; }
.resultsTable .listBonus .bonusPreisgarantie i { transform: scale(90%, 120%); position: relative; left: -2px; }
.resultsTable .listBonus .bonusEuro span {  }
.resultsTable .listBonus .fas,
.resultsTable .listBonus .fa { font-size: 18px; width: 20px; }
.resultsTable tr:not(.produktMonth):not(.tariffTop) .listBonus li:not(.bonusCashback) .fas.fa-euro-sign { color: #909090; }
.resultsTable .listBonus .fas.fa-landmark { transform: translateX(-2px); }
.resultsTable .icoAttention:before {color: rgba(255, 218, 10, 1); content: "M"; font: 1.2em 'icon pvg'; text-shadow: 0 1px 0 black, 1px 0 0 black, -1px 0 0 black, 0 -1px 0 black}
.resultsTable .icoAttention strong {margin-left:1px}


.resultsTable .second.badgeOffset,
.resultsTable .first.badgeOffset {
    padding-top: 40px;
}
.resultsTable .tariffTop .first.badgeOffset {
	padding-top: 55px;
}

.resultsTable .fifth .tooltip, 
.tarifMarkingLine .tooltip,
.ekomi-tooltip-widget .tooltip {
	left: auto;
	right: 0; 
	top: 35px; 
}

.resultsTable .third {
    position: relative;
}

.resultsTable .fifth {
    padding-left:0;
    padding-right: 0;
    text-align: center;
    position: relative;
}

.resultsTable .priceResults {
    vertical-align:middle;
    font-size: 1.6em;
}

.resultsTable .price .priceResults {
    line-height: 1;
    margin-right: 8px;
    white-space: nowrap;
}

.resultsTable .price.noPriceBrake .priceResults {
	color: #909090;
	text-decoration: line-through;
	text-decoration-thickness: 2px;
}

.resultsTable .price.noPriceBrake .icoInfo::before {
	display: none;
}

.resultsTable tr:not(.tariffTop.produktMonth) .price.isPriceBrake .priceResults {
	color: #087e9f;
}

.bubble {
    position: absolute;
    background: #087e9f;
    color: #fff;
    padding: 12px;
    border-radius: 10px;
    z-index: 9;
	display: none;
	text-align: center;
}

.bubble::after {
    display: block;
    content: "";
    width: 0;
    height: 0;
    border-left: 11px solid transparent;
    border-right: 11px solid transparent;
    border-bottom: 42px solid #087e9f;
    position: absolute;
}

.bubble.split401 {
    background: #1c449b;
}

.bubble.split401::after{
    border-bottom-color: #1c449b;
}

.bubble.split400 {
    background: #1c8ad9;
}

.bubble.split400::after {
    border-bottom-color: #1c8ad9;
}

.calculatorWrapper .priceBrakeBox .bubble {
	top: 50px;
    left: 150px;
	width: 170px;
}

.calculatorWrapper .priceBrakeBox .bubble::after {
	top: -25px;
    transform: rotate(-51deg);
}

.tarifWrapper .bubble {
    width: 220px;
	margin: 0;
}

.tarifWrapper .bubble::after {
    top: -25px;
    transform: rotate(-51deg);
}

.over30kInfo {
	display: none;
	width: 100%;
    color: #fa5e00;
    line-height: 1.1;
    margin-top: 6px;
}

.calculatorFilter .calculatorFilterInfo .priceBrakeCompareInfo.textSpecial {
	color: #087e9f;
	display: none;
}

.resultsTable .price .blueHeadline,
.resultsTable .savingPriceInfo .blueHeadline,
.upsellingTariffCompare .blueHeadline {
    color: #2a4d8f;
    font-weight: 500;
}

.resultsTable .price .tooltipCalculation {width:265px;}
.resultsTable .price .tooltipCalculation .textSpecial {font-weight:normal}

.resultsTable + .paginationDefault {
    border: 1px solid #C3C3C3;
    box-shadow: 0 1px 2px 2px rgba(0, 0, 0, 0.15);
}

.resultsTable .savingPrice {
    margin-top: 5px;
    color: #087e9f;
}

.resultsTable .savingPriceInfo {
    margin-bottom: 10px;
}

.resultsTable .secondYearPrice {
    color: #909090;
    margin-top: 8px;
}

.resultsTable .secondYearPrice .priceResults {
	float: left;
    font-size: 1.1em;
}

.resultsTable .secondYearPrice .priceResults::after {
	content: "\00a0";
}

.resultsTable .secondYearPrice span {
	white-space: nowrap;
}

.resultsTable .savingPrice p {
    float: left;
}

.resultsTable .savingPrice p span {
	font-size: 0.85em;
	margin-left: -4px;
}

.badgeCashback {
    background: #087e9f;
    border-radius: 2px;
    color: #fff;
    margin-top: 10px;
    padding: 5px;
    position: relative;
}

.resultsTable .badgeCashback .ico {
    margin-left: 3px;
    color: #fff;
}

.badgeCashback .badgeCashbackLabel {
    text-align: center;
}

.badgeCashback .cashbackMarking {
    font-weight: 500;
    font-size: 1.25em;
    text-align: center;
}

.cashbackNotLabeled {
	align-items: center;
	color: #087e9f;
	display: none;
	font-size: 13px;
	gap: 4px;
	margin: 0px 0 10px 0;
}

.cashbackNotLabeled .icoInfo {
	color: #087e9f;
	right: -2px;
}

.cashbackNotLabeled .icoInfo::before {
	font-size: 16px;
}

.cashbackNotLabeledIcon {
	background: transparent url('../img/favicon_blue.png') no-repeat left top / 16px 16px;
	height: 16px;
	width: 16px;
}

/* banners */
.resultsTable > tbody > tr.bannerRow {
	border: 0;
	box-shadow: none;
}

.resultsTable > tbody > tr.bannerRow td {
	height: 60px;
	line-height: 1;
	padding: 0;
	text-align: center;
	position: relative;
	overflow: hidden;
}
.resultsTable > tbody > tr.bannerRow a {
	position: absolute;
	top: 0;
	width: auto;
	height: auto;
	left: -1000px;
	right: -1000px;
	margin-left: auto;
	margin-right: auto;
}

.main .content {
	position: relative;
}

.leftBannerContainer {
	display: none;
	position: absolute; 
	top: 100px; 
	height: 100%; 
	left: 1010px;
	width: 200px;
}

.leftBannerContainer img {
	position: sticky;
	top: 100px;
	height: 600px;
	width: 200px;
}

.resultsTable .priceLabels {
	display: flex;
	gap: 8px;
	margin-bottom: 8px;
  	margin-left: -4px;
}

.resultsTable .third .priceLabels {
	display: none;
}

.resultsTable .priceLabels > div {
	color: #444;
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: #E0F2FF;
	width: 100px;
	min-height: 30px;
	line-height: 1;
	text-align: center;
}

.resultsTable .priceLabels .priceLabelsData {
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding: 2px;
}

.resultsTable .priceLabels.priceLabelsTopPosition > div {
	background-color: #FFFFFF;
}

.resultsTable .priceLabels .priceLabelsTitle {
	font-size: 10px;
    line-height: 10px;
}

.resultsTable .priceLabels .ico {
    margin-right: -4px;
}

@media (max-width: 420px) {
    .resultsTable .priceLabels .ico {
        margin-right: 0;
    }

    .resultsTable .priceLabels .hasTooltip {
        padding: 0 2px;
    }
}

.resultsTable .priceLabels .priceLabelsPrice {
	font-size: 11px;
	font-weight: bold;
}

@media (min-width: 1450px) {
	.leftBannerContainer {
		display: block;
	}
	
	.resultsTable > tbody > tr.bannerRow {
		display: none;
	}
}

/* @section 4.2.1.4 Vergleichstarif */

/* @section 4.2.2 Toptariff */

.resultsTable .tariffTop {
    background: #f7f7f7;
    border: 1px solid #ccc;
    display: table-row;
}

.resultsTable .tariffTop .savings {
    vertical-align: middle;
    margin-top: 2em;
}

.resultsTable .costs {
    position: relative;
    vertical-align: middle;
}

.resultsTable .tariffTop .indication {
    color: #909090;
}
.resultsTable .indication {
    position: absolute;
    right: 1em;
    top: 1em;
    display: none;
}

.resultsTable .fifth .indication {
    display: block;
}

.resultsTable .tariffTop .badgeBox,
.resultsTable .tariffRow .badgeBox {
    height: 3em;
    left: -.6em;
    position: absolute;
    top: .5em;
    width: 20em;
}

.resultsTable .tariffTop .badgeBoxInner,
.resultsTable .tariffRow .badgeBoxInner {
    background: #1192d8;
    color: #fff;
    font-size: 18px;
    line-height: 32px;
    height: 32px;
    max-width: 260px;
    position: absolute;
    text-transform: uppercase;
    top: 5px;
    z-index: 1;
}

.resultsTable .badgeBoxInner:after {
    -moz-border-bottom-colors: none;
    -moz-border-left-colors: none;
    -moz-border-right-colors: none;
    -moz-border-top-colors: none;
    border-color: #666666 #666666 transparent transparent;
    border-image: none;
    border-style: solid;
    border-width: 4px;
    bottom: -8px;
    content: "";
    left: 0;
    position: absolute;
}

.resultsTable .badgeBoxInner {
    display: flex;
}

.resultsTable .badgeBoxInner > span {
    display: block;
    overflow: hidden;
    -ms-text-overflow: ellipsis;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.resultsTable .badgeBoxInner > .badgeText {
    margin: 0 5px 0 10px;
}

.resultsTable .badgeBoxInner > .ico {
    min-width: 20px;
    height: 100%;
    text-align: center;
    text-transform: lowercase;
    margin-right: 5px;
}

.resultsTable .badgeBox .hasTooltip {
    height: 2.5em;
    width: 100%;
    position: absolute;
    top: 0;
    z-index:1;
    text-transform: none;
}

.boxFormdata .boxContent {background-color:#f8fbff; width:100%; padding:0}
.boxFormdata .boxContent + h2 {border-top:1px solid #D6D6D6}

.boxFormdata .boxContent > div {padding:1% 0.6%; width:32%; float:left}
.boxTitle.isOptionalInformation {border-top:1px solid #D6D6D6}
.isOptionalInformationList {border-bottom:1px solid #D6D6D6}

@media (min-width: 800px) {
	.boxFormdata .secondDatacheckBox.boxContent > div {width:30%;}
	.boxFormdata .secondDatacheckBox.boxContent > .priceBox {width:36%;}
}
@media (min-width: 800px) and (max-width: 980px) {
	.boxFormdata .secondDatacheckBox.boxContent > .priceBox > .price { font-size: 1.2em; }
	.boxFormdata .secondDatacheckBox.boxContent > .priceBox > .price + .priceText { font-size: 0.85em; }
}

.boxFormdata .boxContent .desktop-full-width {
    width: 98%;
}

.boxFormdata .boxContent > div:last-child {
    float: right;
}

.boxFormdata .boxContent table {width: 100%}
.boxFormdata .boxContent td:first-child {width: 45%}

.boxFormdata .priceBox {text-align:right}
.boxFormdata .priceBox .textSmaller {line-height:1.4em; margin-bottom:2em}
.boxFormdata .priceBox .saving {font-size:1.0em; margin-bottom:1em}
.boxFormdata .priceBox .price {font-size:1.5em}
.boxFormdata .priceBox .priceText {font-weight:500}
.boxFormdata .priceBox .tooltip {left:auto; right:0; width:230px}

.boxFormdata .priceBox .priceIconContainer {
    display: inline-block;
	margin-left: 2px;
    width: 20px;
}

.boxFormdata .priceBox .price span:last-of-type {
    width: 105px;
    display: inline-block;
}

.boxFormdata .priceBox .priceSecond {
    font-weight: 500;
    font-size: 0.8em;
}

.boxFormdata .sidebarHeadline span {font-weight:500; float:left}
.boxFormdata .sidebarHeadline .editLink {float:right}
.boxFormdata .listLight {
    border-top-style: dotted;
    border-color: #D6D6D6;
    border-width:1px 0;
}
.boxFormdata .listLight.validationList {position: relative}

.voiceRecordingBox {
    position: relative;
}
.boxFormdata .buttonCallback {
    position: absolute;
    right: 1em;
    top: 0.1em;
}

.boxFormdata .switchTariff {
    float: right;
}

.boxVoiceRecording {
    height: 95%;
    overflow: auto;
}
.boxVoiceRecording .slidingButton {
    display: inline-block;
}
.boxVoiceRecording p {
    margin-bottom: 0.5em;
}
.boxVoiceRecording > div > div {
    border-top: 1px dashed #ccc;
    margin-bottom: 1em;
    padding-top: 0.5em;
}
.boxVoiceRecording > div > div:first-child {
    border: 0;
    padding: 0;
}

.boxFormdata .upsellingWrapper > div:first-child {
    width: 96%;
}

label.upsellingAgreement {
    cursor: pointer;
    display: inline-block;
    font-size: 14px;
    padding: 10px 0;
}

label.upsellingAgreement .majorWord {
    color: #50920e;
    font-size: 16px;
    font-weight: 500;
}

.upsellingCheckbox {
    margin-right: 8px;
}

.boxFormdata .boxContent > div.upsellingGridContainer {
    display: -ms-grid;
    display: grid;
    float: none;
    grid-gap: 0 10px;
    gap: 0 10px;
    -ms-grid-columns: 550px auto;
    grid-template-columns: 550px auto;
    -ms-grid-rows: auto;
    width: 98%;
}

table.upsellingTariffCompare {
    -ms-grid-column: 1;
    grid-column: 1;
    -ms-grid-row: 1;
    grid-row: 1;
    max-width: 550px;
    text-align: left;
}

table.upsellingTariffCompare th {
    font-weight: 500;
}

.info {
    -ms-grid-column: 2;
    grid-column: 2;
    -ms-grid-row: 1;
    -ms-grid-row-span: 3;
    grid-row: 1 / span 3;
    padding: 10px 1% 10px 0;
}

.bulletsWrapper {
    -ms-grid-column: 1;
    grid-column: 1;
    -ms-grid-column-span: 3;
    grid-column-end: 3;
    -ms-grid-row: 2;
    grid-row: 2;
    padding-top: 10px;
}

.withNetflixCashback .bulletsWrapper {
    -ms-grid-column-span: 2;
    grid-column-end: 2;
    max-width: 550px;
}

.tableCaption {
    font-size: 14px;
    margin-top: 15px;
}

.boxFormDatastep table.upsellingTariffCompare .icoInfo {
    margin: 0 0 3px 0;
}

table.upsellingTariffCompare td {
    padding: 5px 0 0 5px;
    word-break: break-word;
}

table.upsellingTariffCompare.baseTariffChosen td:nth-of-type(1),
table.upsellingTariffCompare.upsellingTariffChosen td:nth-of-type(2) {
    font-weight: 500;
}

.cashbackLogo {
    margin-top: 5px;
}

.upsellingWrapper .info-text {
    box-sizing: border-box;
    padding-right: 10px;
    width: calc(100% - 570px);
}

.bulletsWrapper {
    display: flex;
    flex: 1 0 100%;
    flex-wrap: wrap;
    float: left;
    padding: 10px 0 0;
    width: auto;
}

.bulletsWrapper .bullet {
    flex-basis: 230px;
    min-height: 30px;
    padding: 10px 10px 0 0;
}

.bulletsWrapper .bullet .icoTickLarge {
    margin-top: -7px;
    vertical-align: top;
}

.bulletsWrapper .bullet .caption {
    display: inline-block;
    margin-left: 5px;
    max-width: calc(100% - 35px);
}

@media (max-width:800px) {
    .boxFormdata {line-height: 1.35em;}
    .boxFormdata .boxContent > div {width:46%; padding:1% 2%}
    .boxFormdata .secondDatacheckBox > div:last-child {width:96%}
    .boxFormdata .priceBox > p,
    .boxFormdata .priceBox > div {width: 100%}
    .boxFormdata .priceBox > p {text-align:left}
}

@media (max-width:650px) {
    .boxFormdata .priceBox .price {
        font-size: 1.1em;
    }
	.boxFormdata .priceBox .price + .priceText {
		font-size: 0.8em;
	}
    .boxFormdata .boxContent > div,
    .boxFormdata .boxContent .desktop-full-width {
        border: 0 none;
        float: left !important;
        display: block;
        width: 95%;
    }

    .boxFormdata .boxContent > div.livyProtectBullet:last-child {
        width: 95%;
    }

    .resultsTable .second.badgeOffset,
    .resultsTable .first.badgeOffset {
        padding-top: 55px;
    }

	.resultsTable .priceLabels {
		margin-top: 8px;
	}

	.resultsTable .fourth .priceLabels {
		display: none;
	}

	.resultsTable .third .priceLabels {
		display: flex;
	}

    .seoWidgetResults .resultsTable .third.badgeOffset {
        padding-top: 1em;
    }

    .boxTeaserMain .seals {
        margin: 0;
    }
}

@media (max-width:450px) {
    .boxFormdata .boxContent > div td {
        line-height: 1.5em;
        padding: 0.25em 0;
    }
	
	.resultsTable .priceLabels {
		width: 100%;
	}

	.resultsTable .priceLabels > div {
		max-width: 50%;
	}

	.resultsTable .priceLabels .priceLabelsTitle {
		font-size: 10px;
	}

	.resultsTable .priceLabels .priceLabelsPrice {
		font-size: 11px;
	}
}

/* @section 4.2.2.1 Toptariff 4 */

.badgeMore {
    background: #149bd5;
    border-radius: 2px;
    color: #fff;
    cursor: pointer;
    display: inline-block;
    margin-top: 10px;
    padding: .4em .4em .4em 3.5em;
    position: relative;
    user-select: none;
}

.badgeMore p:before {
    font: 500 22px/1.62em Rubik, sans-serif;
    left: .25em;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
}

.badgeMore.arrowDownwards p:before {
    content: '⮟';
}

.badgeMore.arrowUpwards p:before {
    content: '⮝';
}

.resultsTable .beforeResults {border-bottom:0}
.resultsTable .beforeResults + .tariffMoreResults {border-top:1px dashed #e9e9e9}

.resultsTable .tariffMoreResults .costs,
.resultsTable .tariffMoreResults .savings {
    padding-top: 10px;
    vertical-align: middle;
}
.resultsTable .tariffMoreResults .indication {
    display:none;
}

/* @section 4.2.2.1 Hotline Tarif */

.resultsTable .tarifMarkingLine {
    font:1.4em Rubik, sans-serif;
    border-width:0 1px 1px;
    color:#fff;
    text-align:center;
}
.resultsTable .tarifMarkingLine td {padding:0}
.tarifMarkingLine span {vertical-align:middle; position:relative; top:-1px}
.tarifMarkingLine .arrow {font-weight:500; line-height:1.0em}
.tarifMarkingLine .arrow1 {
    font-size:1.2em;
    margin-left:20px;
    top:-2px;
    line-height: 1.4em;
}
.tarifMarkingLine .arrow2 {font-size:1.4em; margin-left:-5px; top:-2px}
.tarifMarkingLine .arrow3 {font-size:1.6em; margin-left:-5px; top:-2px}
.tarifMarkingLine .tooltip {width:160px}
.tarifMarkingLine .hotline {display: inline-block}

.resultsTable .tariffTopHotline {
    border: 1px #1192d8 solid;
    background: #1192d8;
}

.resultsTable .badge,
.ekomi-tooltip-widget {
    cursor: pointer;
    margin-bottom: 1em;
}

.resultsTable .badge .badgeImg {
    max-width: 8em;
    max-height: 10em;
}
.resultsTable .badge > .tooltip {
    width: 240px;
}
.resultsTable .badge > .tooltip > img {
    margin: 0 auto;
    display: block;
    max-width: 100%;
}
.tariffTopHotline .foneNumber {color: #fff !important}
.tariffTopHotline .fone {margin-left:10px}
.tariffTopHotline .fone:before {content:"x"; font:1.4em/1em 'icon pvg'; margin-right:0.5em; position:relative; bottom:-5px; margin-right:-10px}


/* @section 4.2.3 Produkt des Monats */

.resultsTable .produktMonth {
    color: #000;
    background: #fff;
    -webkit-background-size: cover;
    background-size: cover;
}

body.ie .resultsTable .produktMonth {
    background-attachment: fixed;
}

.resultsTable .icoInfo {
    color: #aaa;
}

.resultsTable .produktMonth .tariffAssessment .title {
    color: #444;
}

.resultsTable .produktMonth .tooltip .textSpecial{
    color: #50930e;
}

.resultsTable .produktMonth .badgeBox {
    height: 35px;
    margin-bottom: 25px;
}
.resultsTable .produktMonth .indication {
    color: #000;
}

.resultsTable .produktMonth .savings {
    background: transparent none repeat scroll 0 0;
    padding-top: 63px;
    vertical-align: top;
}

.resultsTable .produktMonth .savings.badgeOffset {
    padding-top: 86px;
}

.resultsTable .produktMonth .savings p {
    display: inline-block;
    margin: 0;
    padding-top: 10px;
    vertical-align: middle;
    width: 80%;
}
.resultsTable .button-apponly {
    background: #22ddaa !important;
    text-align: center;
    margin-top: 1em;
    padding-right: .5em;
    text-shadow: none;
    color: #fff;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
    font-size: 1.1em;
    border-radius: 2px;
}

.resultsTable .produktMonth .button-apponly {
    background: #fff !important;
    color: #5e7a93;
}

.resultsTable .button-apponly::after {
    display: none;
}
.resultsTable .produktMonth .savings p:last-child {
    border-radius: 0 0 5px 5px;
    border-width: 0 4px 4px;
    padding: 0 0 5px;
    position: relative;
    top: -1px;
}
.resultsTable .produktMonth .savingPrice {
    font-weight: 500;
}

.resultsTable .produktMonth.tariffTop .badgeBoxInner {
    background: #fff;
    color: #fff;
    height: 32px;
}

.resultsTable .produktMonth .bigger-provider-logo {
    display: inline-block;
    vertical-align: middle;
    max-width: 100%;
    max-height: 15px !important;
}

.resultsTable .produktMonth .badgeCashback {
    background: #6cb33e;
}

/*@section 4.2.3 Tarifbewertung */

.tariffAssessment {
    display: inline-block;
    height: 2.5em;
    margin-top: 5px;
}

.tariffAssessment .highlight {
    font-weight: 500;
}

.tariffAssessment .title {
    color: #909090;
}

.tariffAssessment > .hasTooltip .tooltip {
    padding: 0;
    width: 350px;
}

.tariffAssessment > .hasTooltip .tooltip.showTooltipFirstState {
    padding: 5px 10px;
    width: auto;
}

.tariffAssessment > .hasTooltip .tariffRatingTable {width:100%}
.tariffAssessment > .hasTooltip .tariffRatingTable thead th {padding: 0}
.tariffAssessment > .hasTooltip .tariffRatingTable td {padding:3px 5px; vertical-align: top; border-top: 0;}
.tariffAssessment > .hasTooltip .tariffRatingTable td:first-child {padding-left:10px}
.tariffAssessment > .hasTooltip .tariffRatingTable td:last-child {padding-right:10px}
.tariffAssessment > .hasTooltip .tariffRatingTable .result {border-top: 1px solid #bfd1e4}
.tariffAssessment > .hasTooltip .tariffRatingTable tr:last-child {border-bottom: 1px solid #bfd1e4}
.tariffAssessment > .hasTooltip .tariffRatingTable .result:first-child {border:0}
.tariffAssessment > .hasTooltip .tariffRatingTable .result .highlight {font-size:1.2em}
.tariffAssessment > .hasTooltip .tariffRatingTable .result:first-child .highlight {font-size:1.4em}
.tariffAssessment > .hasTooltip .tariffRatingTable .result + .paragraph td {padding-top:0}
.tariffAssessment > .hasTooltip .tariffRatingTable .first {width: 40%}
.tariffAssessment > .hasTooltip .tariffRatingTable .last {width: 15%}
.tariffAssessment > .hasTooltip .tariffRatingTable .noAssessment {color:#c00}
.tariffAssessment > .hasTooltip .tariffRatingTable .grayout {color:#909090}

.tariffAssessment > .hasTooltip {
    height: 2.5em;
    top: -2.5em;
}

/* @section 4.2.3.1 Balken */

.progressStatusAlternate {width:80px; border:1px solid #d6d6d6;background:#9e9e9e;
    background:-moz-linear-gradient(left, #ccc, #979797);
    background:-ms-linear-gradient(left, #ccc, #979797);
    background:-o-linear-gradient(left, #ccc, #979797);
    background:-webkit-gradient(linear, left top, left right, from(#ccc), to(#979797));
    background:-webkit-linear-gradient(left, #ccc, #979797);
    background:linear-gradient(left, #ccc, #979797)}

.progressStatusInnerAlternate {border:1px solid #fff;position:relative}
.progressStatusAlternate .progressDivider {position:absolute;top:0;left:59%;height:8px;width:20%;border:1px solid #fff;border-width:0 1px}
.progressStatusAlternate .progressActiveAlternate + .progressDivider {left:19%}

.progressActiveAlternate {height:8px; width:200px}

.progressActiveAlternate.ratingLevel5 {background-color:#50930e}
.progressActiveAlternate.ratingLevel4 {background-color:#92b11a}
.progressActiveAlternate.ratingLevel3 {background-color:#ffd659}
.progressActiveAlternate.ratingLevel2 {background-color:#f98100}
.progressActiveAlternate.ratingLevel1 {background-color:#e2001a}

.tariffAssessment .explanationLink {text-align:center; margin-top:5px}

/* @section 4.3 Formdatastep 1-3 */

.boxNote .infoIcon {width: 40px; height: 40px; display: inline-block; background:url('../../whitelabel/img/powerIcons.png') 0 0 no-repeat;}

.boxNote.info {
    background-color: #feffe7;
    border: 1px solid #ede083;
    margin: 10px 0;
    padding: 10px;
}

.boxNote.success .ico,
.boxNote.error .icoCross,
.boxNote.info .infoIcon {
    float: left;
    margin: 2% 2% 0 0;
}

.boxNote.success .ico,
.boxNote.error .icoCross {
    margin-top: 0;
}

.boxNote.info .infoIcon.noMargin {
    margin: 0 2% 0;
}

.boxNote.success .infoText,
.boxNote.error .infoText,
.boxNote.info .infoText {
    float: left;
    width: 70%;
}

.boxNote.info button {
    background-color: transparent;
    color: #087e9f;
    float: right;
    font-size: 1.2em;
    text-align: right;
    width: 20%;
    position: relative;
    padding-right: 10px;
    top: 30px;
}

.boxNote.info button:after {
    font-family: "icon pvg", monospace;
    content: '>';
    right: -5px;
    position: absolute;
}

.boxNote.info strong {
    color: #d0940b
}

@media (max-width: 650px) {
    .stepBoxAlternative {display:none}
    .progressBarStepsAlternative .progressLine {width: 70%;}
    .boxNote.info .infoIcon,
    .boxNote.info .infoText > p {
        display: none;
    }

    .boxNote.info .infoText {
        width: 48%;
    }
    .boxNote.info button {
        width: 52%;
        top: 0;
    }
}

@media (max-width: 450px) {
    .progressBarStepsAlternative .progressLine {width: 65%;}
}

.formdatastep1 .boxCustom,
.formdatastep2 .boxCustom,
.formdatastep3 .boxCustom,
.formdatacheck .boxCustom,
.formdatasuccessful .boxCustom {margin-top:10px}
.boxTitle .textSmaller {white-space:nowrap}
.formdatacheck .boxTitle span {float:left}
.formdatastep1 .tooltip,
.formdatastep2 .tooltip,
.formdatastep3 .tooltip,
.formdatacheck .tooltip,
.formdatasuccessful .tooltip {left:auto}

/* @section 4.3.1 Formdatastep 1 */

/* @section 4.4 Formdatacheck */

.formdatacheck .titleFifthLevel {font-size:1.25em}

.formdatacheck form {margin:10px 0}

.formdatacheck .titleDefault .labelSmall {color:#909090; font-size:0.8em; font-weight:normal; margin-left:2px}

.formdatacheck .boxFormDatastep {margin:10px 0}
.formdatacheck .formData {padding:10px 0 0 10px}
.formdatacheck .formData .editLink {float:right; font-size:0.8em; font-weight:normal; text-decoration:underline}
.formdatacheck .formData .sidebarHeadline {font-weight:500}
.formdatacheck .formData ul {float:left; margin:0 3% 10px 0}
.formdatacheck .formData ul:last-child {margin-right:0}

.formdatacheck .consentDeclaration .hasTooltip {
    color: #0022aa;
}

@media (max-width:765px) {
    .formdatacheck .formData ul {width:30%}
    .sslText {margin:0 1em}
    .formdatacheck .bottomBar .additionalText {width: 100%; padding: 0; margin-bottom: 0.5em;}
}

@media (max-width:650px) {
    .formdatacheck .formData ul {width:45%}
}

@media (min-width:801px) {
    .formdatacheck .formData ul {width:22%}
}

.formdatacheck .splitHinweis {text-align:center}

/* @section 4.7 SEO */

/* @section 4.7.1 SEO-Elements */

.seoWidgetResults .resultsTable .fifth .buttonDefaultSmall {
    font-size: 1.15em;
    width: 65px;
}

/* @section 4.7.1 Galerie */

/* @section 4.7.1 Linkliste */

/* @section 11. News Details */

/* @section 4.7.1 Strom News Seite */

/* @section 4.8 Sondervertragskunden Layer */

/* @section 5 Datails */

/* @section 5.1 Tarifdatails */
.openWindow {overflow:hidden}

.layerContent #importantInformation dt {display:inline-block; width:20%}
.layerContent #importantInformation dd {display:inline-block; width:79%}
.layerContent .textLight {font-size:0.9em}

.tarifDetails .boxHotline {margin:1em 0}
.tarifDetails .boxHotline .textLight {font-size:0.75em}
.tarifDetails .boxAlternative {
    padding: 0;
    margin-bottom: 10px
}

.tarifDetails .boxCertificate .icoSealSize {
    display: inline-block;
}
.tarifDetails .boxCertificate .icoSealSize .imageIcon {
    max-height: 60px;
}

.tarifDetails .boxCertificate,
.tarifDetails .boxChange {padding:10px}
.tarifDetails .boxAlternative:last-Child {margin-bottom:0}
.tarifDetails .boxAlternative.tarifTeaser {min-height: 37em;}
.tarifDetails .tarifTeaser p {margin:0}
.tarifDetails .boxTitle {border-width:1px}

.tarifTeaser .listTarif {
    margin: 10px;
    border: 1px solid #D6D6D6
}
.listTarif li {padding:0.25em 1em; border-top:1px dotted #D6D6D6;
    background:-o-linear-gradient(left , rgb(236,245,255) 0%, rgb(236,245,255) 35%, rgb(255,255,255) 35%, rgb(255,255,255) 100%);
    background:-moz-linear-gradient(left , rgb(236,245,255) 0%, rgb(236,245,255) 35%, rgb(255,255,255) 35%, rgb(255,255,255) 100%);
    background:-webkit-gradient(linear, left bottom, right bottom, color-stop(0, rgb(236,245,255)), color-stop(0.35, rgb(236,245,255)), color-stop(0.35, rgb(255,255,255)), color-stop(1, rgb(255,255,255)));
    background:-webkit-linear-gradient(left , rgb(236,245,255) 0%, rgb(236,245,255) 35%, rgb(255,255,255) 35%, rgb(255,255,255) 100%);
    background:-ms-linear-gradient(left , rgb(236,245,255) 0%, rgb(236,245,255) 35%, rgb(255,255,255) 35%, rgb(255,255,255) 100%);
    background:linear-gradient(left , rgb(236,245,255) 0%, rgb(236,245,255) 35%, rgb(255,255,255) 35%, rgb(255,255,255) 100%);
}
.listTarif li:first-child {border-top:none}
.tarifDetails .infoParagraph {border-top:1px solid #d6d6d6; color:#909090}

.listTarif .label {
    display: inline-block;
    font-weight: 500;
    margin-right: 7%;
    padding: 0.5em 0;
    text-align: right;
    vertical-align: top;
    width: 30%;
}

.listTarif .definition {display:inline-block; width:55%; padding:0.5em 0}
.listTarif .definition .cashbackText ul li {border: none; background: none}
.listTarif .slidingButton {margin-left:45%; display:inline-block}
.listTarif .tooltip {top:20px; left:auto; right:20px}
.listTarif .itemImg {position:relative}

.tarifDetails .providerLogo {
    display: inline-block;
    padding: 1em 0 0 2%;
    vertical-align: top;
    width: 25%;
}

.providerLogo img {
    margin: 0;
    max-width: 100%;
    border: 0;
    box-shadow: none;
}

.tarifDetails .providerLogo img {
    max-height: 5em
}

.tarifDetails .tarifTitle {
    display: inline-block;
    margin: 0;
    padding: 1em 0 0 2%;
    width: 60%;
}

.calculatorFilter,
.boxTitle {
    position: relative;
}
.calculatorFilter .printBox .icoPrint,
.boxTitle .printBox .icoPrint,
.tarifDetails .icoPrint {
    text-indent:-999em;
}
.tarifDetails .icoPrint {
    float: right;
}
.boxTitle .printBox {
    position: absolute;
    top:0;
    right: 0;
}
.calculatorFilter .printBox {
    display: none;
}

.calculatorFilter > * {
	box-sizing: border-box;
}

.tarifDetails .number {
    display: inline-block;
    margin-right: 5px;
    text-align: right;
    vertical-align: middle;
}

.tarifDetails .bar {height:10px; display:inline-block; vertical-align:middle; -moz-border-radius:2px; border-radius:2px;
    background-color:#fa8000;
    background:-o-linear-gradient(top, rgb(250,129,0) 0%, rgb(247,82,0) 100%);
    background:-moz-linear-gradient(top, rgb(250,129,0) 0%, rgb(247,82,0) 100%);
    background:-webkit-gradient(linear, left top, left bottom, color-stop(0, rgb(250,129,0)), color-stop(1, rgb(247,82,0)));
    background:-webkit-linear-gradient(top, rgb(250,129,0) 0%, rgb(247,82,0) 100%);
    background:-ms-linear-gradient(top, rgb(250,129,0) 0%, rgb(247,82,0) 100%);
    background:linear-gradient(top, rgb(250,129,0) 0%, rgb(247,82,0) 100%);
}
.tarifDetails .barNuclear {
    background-color:#FFBF0A;
    background:-moz-linear-gradient(top, #FFBF0A, #FF9B06);
    background:-ms-linear-gradient(top, #FFBF0A, #FF9B06);
    background:-o-linear-gradient(top, #FFBF0A, #FF9B06);
    background:-webkit-linear-gradient(top, #FFBF0A, #FF9B06);
    background:-webkit-gradient(linear, left top, left bottom, color-stop(#FFBF0A), color-stop(#FF9B06));
    background:linear-gradient(top, #FFBF0A, #FF9B06)
}
.tarifDetails .barFossil {
    background-color:#FA8000;
    background:-moz-linear-gradient(top, #FA8000, #F75400);
    background:-ms-linear-gradient(top, #FA8000, #F75400);
    background:-o-linear-gradient(top, #FA8000, #F75400);
    background:-webkit-linear-gradient(top, #FA8000, #F75400);
    background:-webkit-gradient(linear, left top, left bottom, color-stop(#FA8000), color-stop(#F75400));
    background:linear-gradient(top, #FA8000, #F75400)
}
.tarifDetails .barRegenerative {
    background-color:#A8C40D;
    background:-moz-linear-gradient(top, #A8C40D, #86A900);
    background:-ms-linear-gradient(top, #A8C40D, #86A900);
    background:-o-linear-gradient(top, #A8C40D, #86A900);
    background:-webkit-linear-gradient(top, #A8C40D, #86A900);
    background:-webkit-gradient(linear, left top, left bottom, color-stop(#A8C40D), color-stop(#86A900));
    background:linear-gradient(top, #A8C40D, #86A900)
}
.tarifDetails .barOther {
    background-color:#129ad4;
    background:-moz-linear-gradient(top, #129ad4, #0b64bd);
    background:-ms-linear-gradient(top, #129ad4, #0b64bd);
    background:-o-linear-gradient(top, #129ad4, #0b64bd);
    background:-webkit-linear-gradient(top, #129ad4, #0b64bd);
    background:-webkit-gradient(linear, left top, left bottom, color-stop(#129ad4), color-stop(#0b64bd));
    background:linear-gradient(top, #129ad4, #0b64bd)
}

.tarifDetails .fonbox {display:inline-block; width:18em}
.tarifDetails .fonbox .hotline {display: inline-block; margin-right: 4px; color:#2A4D8F; font-size:1.6em; font-weight:500; line-height:1.3em; white-space: nowrap;}
.tarifDetails .boxChange p {margin-bottom:5px; line-height: 1.4em;}
.tarifDetails .boxChange .slidingButton {vertical-align:top; display:inline-block}

.tarifDetails .boxCertificate .tooltip {left:0; top:60px}

/* @section 5.5 Zipcode Box */

.updateZipBox form {text-align:center; padding:10px}
.updateZipBox label {font-weight:500}
.updateZipBox form p {margin:15px}
.updateZipBox form input:not([type="checkbox"]):not([type="radio"]) {width:7em; text-align: center}
.updateZipBox p {line-height: 1.3em}
.updateZipBox p.textSmaller {padding:5px 10px}
.updateZipBox .tooltip {left:-170px; top:30px}

/* @section 6. Tricks & Hints */

.ui-datepicker {z-index:505 !important}

/* @section 8. Formdatasuccessful */

.formdatasuccessful .boxCustom {margin-right:0}
.formdatasuccessful .changegraphic {padding: 0;width: 100%;}

.successfulContent {margin-bottom:10px}
.successfulContent .boxCrossSelling {background-color:#e4e4e4; padding:5px; margin-bottom:10px}
.successfulContent .provider {text-decoration:underline; font-style:italic}
.successfulContent .icoPlanet {background-position:-263px -305px; float:left; width:65px; height:65px; margin-right:10px}
.successfulContent .crossSellingText {margin-top:5px}
.boxTitle + .successfulContent {padding:10px; margin-bottom:10px}
.successfulContent .button {text-align:center}
.successfulContent p {margin-bottom:15px}

/* @section 4.14 Formdatacontractcomplete */

.listAlternate label,
.listAlternate .label {padding:1px 0}
.contractFormdatacontractcomplete .bottomBar .first {width: 0;}
.contractFormdatacontractcomplete .bottomBar .second {width: 95%;}

.confirmationPage p { padding: 8px 2px 0px}
.confirmationPage h2.boxTitle {
    border: 0;
    padding-left: 0;
    border-bottom: 1px solid #d6d6d6;
}



/* @section 8.1 Teaser */

.successTeaser {
    display: flex;
    flex-wrap: wrap;
}

.successTeaser .boxContentInner {
    display: inline-block;
    font-size: 0.9em;
    margin: 1em 0 0;
    vertical-align: top;
    width: 65%;
}

.boxContentInner ul {
    margin-bottom: 1em;
}
.successTeaser .boxContentInner li {margin-left:1.5em; line-height:1.35em}
.successTeaser .boxContentInner .icoTick {margin-left:-20px}

.successTeaser .boxDefault {
    display: inline-block;
    margin: 0.5em 1% 0 0;
    position: relative;
    vertical-align: top;
    width: 30%;
    padding: 1em 0 1em 2%;
}

.successTeaser .boxDefault:last-child {margin-right:0}
.successTeaser .badgeDefault {background-position:-508px 0; height:75px; width:75px; position:absolute; right:-1px; top:-1px}
.successTeaser .badgeDefault strong {width:56px; height:60px; text-indent:-999em; display:inline-block; margin:1px 0 0 17px}
.successTeaser .badgeInsurance {background-position:-525px -81px}
.successTeaser .badgeDsl {background-position:-524px -140px}
.successTeaser .badgeFinances {background-position:-525px -198px}

.btn-scroll-top {
    display: none;
    position: fixed;
    width: 45px;
    height: 45px;
    text-align: center;
    line-height: 45px;
    bottom: 11px;
    right: 11px;
    background: rgba(83, 128, 166, 0.5) url(data:image/svg+xml,%3C%3Fxml%20version%3D%221.0%22%20encoding%3D%22utf-8%22%3F%3E%0A%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20xmlns%3Axlink%3D%22http%3A//www.w3.org/1999/xlink%22%20version%3D%221.1%22%20viewBox%3D%220%200%20129%20129%22%20enable-background%3D%22new%200%200%20129%20129%22%20width%3D%2225px%22%20height%3D%2225px%22%3E%0A%20%20%20%20%3Cpath%20d%3D%22m121.4%2C61.6l-54-54c-0.7-0.7-1.8-1.2-2.9-1.2s-2.2%2C0.5-2.9%2C1.2l-54%2C54c-1.6%2C1.6-1.6%2C4.2%200%2C5.8%200.8%2C0.8%201.8%2C1.2%202.9%2C1.2s2.1-0.4%202.9-1.2l47-47v98.1c0%2C2.3%201.8%2C4.1%204.1%2C4.1s4.1-1.8%204.1-4.1v-98.1l47%2C47c1.6%2C1.6%204.2%2C1.6%205.8%2C0s1.5-4.2%201.42109e-14-5.8z%22%20fill%3D%22%23FFFFFF%22/%3E%0A%3C/svg%3E) no-repeat;
    background-position: center;
    z-index: 1005;
    font-size: 2em;
    font-weight: 500;
    border-radius: 2px;
}

.breakMid:after {
    display: none;
}

@media (max-width: 800px) {
    .successTeaser .boxDefault {
        display: inline-block;
        margin: 0.5em 1% 0 0;
        position: relative;
        vertical-align: top;
        width: 46%;
    }
    .formdatasuccessful .changegraphic {
        display: none;
    }
    .boxTitle .printBox {
        display: none;
    }

    #stromBox .boxTitle {
        padding-right: 10px;
    }

    .tarifDetails .boxAlternative.tarifTeaser {
        min-height: auto;
    }

    .calculatorFilter .formComparison .comparisonText {
        font-size: .8em;
    }
}

@media (max-width: 600px) {
    .successTeaser .boxDefault {
        display: block;
        height: auto;
        margin: 1em 0 0;
        padding-bottom: 1.5em;
        position: relative;
        vertical-align: top;
        width: 94%;
    }
    .successTeaser .boxContentInner {font-size: 1em;}
}

@media (max-width: 400px) {
    .successTeaser .boxImg {display: none;}
}

/* @section 8.2 Auftrags Übersicht Tabelle */

.overviewTitle .title {float:left}
.overviewTitle a {float:right; font-size:0.9em; font-weight:normal; margin:-5px 0; text-decoration:underline}
.overviewTitle a span {margin-right:3px}

.dataOverview {
    padding: 0;
    margin-bottom: 10px;
    background-color: #f8fbff;
}

.dataOverview .overviewTable table {width:100%}
.dataOverview .overviewTable {width:65%; float:left}
.dataOverview .overviewTable p,
.dataOverview .overviewTariff p {padding:0.25em 2%;}
.dataOverview .overviewTariff td p {padding: 0 0 4px 0;}
.dataOverview .headlineSecond {font-weight:500}

.dataOverview .price {font-size:1.4em}
.dataOverview .smallText {font-size:0.8em}

.dataOverview .overviewTable table > tbody > tr > td,
.dataOverview .overviewTariff table > tbody > tr > td {padding:1% 2%; width:48%; line-height: 1.25em;}
.dataOverview .overviewTable table td:first-child,
.dataOverview .overviewTariff table td:first-child {width: 35%}
.dataOverview .overviewTariff table td:last-child,
.dataOverview .overviewTable table td:last-child {padding-right:0}

.dataOverview .priceOverview td + td {text-align:right}

.dataOverview .overviewBoxFirst,
.dataOverview .overviewBoxSecond {
    background-color: #F8FBFF;
    border-right: 2px solid #FFFFFF;
}

.dataOverview .overviewTariff {
    width: 33%;
    float: right;
    padding: 1%;
    background-color: #F2FAE5;
}

.dataOverview .overviewTariff .headlineSecond {
    margin-top: 5px;
}

.disableDuplicateContainer {
    margin: 5px 0 15px;
    text-align: center;
}

.disableDuplicateContainer .deactivateDuplicate {
    display: inline-block;
    font-size: 1.1em;
    margin-bottom: 10px;
}

.disableDuplicateContainer .successIcon {
    display: block;
    margin: auto;
}

.disableDuplicateContainer .successIcon.hidden {
    display: none;
}

.disableDuplicateContainer .disableDuplicateError {
    background: #f7d9d9;
    border-color: #c00;
    color: #c00;
    padding: 10px;
}

@media (max-width:800px) {
    .dataOverview .overviewTable {width:100%; float:none}
    .dataOverview .overviewTariff {width:98%; float:none}
    .dataOverview .overviewTariff div {float:left; width:50%; margin-right:5%; margin-bottom: 1%;}
    .dataOverview .overviewTariff div:last-child {width:40%;margin-top:50px}
}

@media (max-width:650px) {
    .overviewTitle .jsPrintButton {display: none}
    .successfulContent .button {font-size: 0.8em}
    .dataOverview table {width: 100%}
    .dataOverview .overviewTariff div,
    .dataOverview .overviewTariff div:last-child {float:none; width:95%; margin: 0}
    .dataOverview .overviewTable > tbody > tr > td,
    .dataOverview .overviewTariff > tbody > tr > td {
        padding: 1% 2%;
        width: 96%;
        display: block;
    }
    .dataOverview .priceOverview.textSpecial:last-child {
        text-align: right;
        width: 100%;
    }
    .dataOverview .priceOverview.textSpecial:last-child p {
        padding-right: 0;
    }
}

/* Mobile */
@media screen and (min-width: 480px) {
    .landingForm .formContent {
        text-align: left
    }

    .landingForm .formContent > li {
        margin: 1em 0;
    }

    .landingForm .formContent .label-el {
        line-height: 1.35em;
        display: inline-block;
    }
}

/* not Mobile */
@media (min-width:801px) {
    .resultsTable .first {width:25%}
    .resultsTable .tablehead .second { display: none; width: 15%; text-align: left}
    .resultsTable .third {width:25%}
    .resultsTable .fourth {width:35%}
    .resultsTable .fifth {width:15%}
    .resultsTable .tarifMarkingLine {font-size:1.675em;}
    .resultsTable .fifth .buttonDefaultSmall {font-size: 1.25em;}

    .seoWidgetResults .badgeMore {
        padding-left: 2.5em;
        width: 75px;
    }

    .seoWidgetResults .badgeMore.plus,
    .seoWidgetResults .badgeMore.less {
        width: auto;
    }

    .seoWidgetResults .badgeMore p:before {font: bold 2.5em/1.45em Rubik, sans-serif;}
    .seoWidgetResults .resultsTable .savingPrice {display: block; font-size:0.85em}
    .seoWidgetResults .resultsTable .tariffHeadline img {max-width: 110px;}

    .seoWidgetResults .resultsTable .tariffTop .badgeBox,
    .seoWidgetResults .resultsTable .tariffRow .badgeBox {
        margin-bottom: 2em;
    }

    .seoWidgetResults .resultsTable .first {width: 22%;}
    .seoWidgetResults .resultsTable .second {display:none}
    .seoWidgetResults .resultsTable .third {width: 30%;}

    .seoWidgetResults .resultsTable .third.badgeOffset {
        padding-top: 55px;
    }

    .seoWidgetResults .resultsTable .fourth {width: 36%;}
    .seoWidgetResults .resultsTable .fifth {width: 12%;}
    .seoWidgetResults .resultsTable .tariffTop > .third,
    .seoWidgetResults .resultsTable .produktMonth > .third {padding-top: 5em;}
    .seoWidgetResults .resultsTable .tariffMoreResults > .third {padding-top: 1em;}
    .seoWidgetResults .resultsTable .tarifMarkingLine {font-size: 1.5em;}
    .seoWidgetResults .resultsTable .bestsellerBox img {
        max-height: 45px;
        max-width: 120px;
        width: 100%;
    }
    .seoWidgetResults .resultsTable .badgeCashback {font-size: 0.9em}
    .seoWidgetResults .slidingButton {
        display: inline-block;
    }
    .seoWidgetResults .resultsTable .listBonus span {
        width: 86%;
    }
    .seoWidgetResults .resultsTable .price .priceResults,
	.resultsTable .savingPrice .priceResults,
	.resultsTable .savingPrice .savedUp {
        font-size: 1.3em;
    }
    .seoWidgetResults .tariffAssessment .title {
        font-size: .9em;
    }
}

@media (min-width:981px) {
    .calculatorFilter .calculatorFilterInfo {
        width: 29%;
    }

    .resultsTable .first {
        width: 25%
    }

    .resultsTable .third {
        width: 25%
    }
}

@media (max-width: 980px) {
    .ratingStarTooltip {
        margin-bottom: 0;
    }

    .ratingStars > .ratingStar {
        -webkit-transform: scale(.8, .8);
        -moz-transform: scale(.8, .8);
        -ms-transform: scale(.8, .8);
        -o-transform: scale(.8, .8);
        transform: scale(.8, .8);
    }

    .ratingStarTooltip > .votesNumber {
        line-height: 2.25;
        display: inline-block;
        margin-left: .5em;
        font-size: .8em;
    }

    .calculatorWrapper .buttonList li.optionLinkButton {
        text-align: right;
    }

    .optionsBox + .seals {
        right: calc(1% + 7px);
    }

    .calculatorWrapper .badgeSeal {
        right: 7px;
    }

    .calculatorWrapper .badgeSeal .seal {
        height: 65px;
        width: 70px;
    }

    .calculatorWrapper .badgeSeal .desc {
        display: none;
    }

    .sidebarBottom > .titleDefault,
    .calculatorWrapper.sidebarBottom {
        width: 100%;
    }

    .calculatorWrapper .badgeSeal {
        top: 5px;
    }

    /* Calendar modification*/
    .ui-datepicker {
        padding: 0;
        border: 0;
    }

    .ui-datepicker td {
        padding: 1px;
    }

    .ui-datepicker-header {
        font-size: 16px;
    }

    .ui-datepicker-calendar .ui-state-default {
        font-size: 14px;
        height: 45px;
        line-height: 45px;
        width: 45px;
    }

    .boxFormdata .upsellingWrapper .flex {
        flex-wrap: wrap;
    }

    .contract .footnotes {
         padding-left: 0;
    }
}

@media (max-width: 900px) {
    .boxFormdata .boxContent > div.upsellingGridContainer {
        grid-gap: 0;
        gap: 0;
        -ms-grid-columns: auto 0;
        grid-template-columns: auto 0;
    }

    table.upsellingTariffCompare {
        -ms-grid-column-span: 3;
        grid-column-end: 3;
        max-width: none;
    }

    .info {
        -ms-grid-column: 1;
        grid-column: 1;
        -ms-grid-column-span: 3;
        grid-column-end: 3;
        -ms-grid-row: 2;
        grid-row: 2;
        -ms-grid-row-span: 1;
    }

    .bulletsWrapper {
        -ms-grid-row: 3;
        grid-row: 3;
    }

    .withNetflixCashback .bulletsWrapper {
        -ms-grid-column-span: 3;
        grid-column-end: 3;
        max-width: none;
        padding: 0;
    }
}

@media (max-width:800px) {
    .optionsBox + .seals {
        top: 13px;
    }

    .resultsTable .first {width:25%}
    .resultsTable .second {display:none}
    .resultsTable .fourth {
        width: 35%;
    }
    .resultsTable .third {
        width: 25%;
    }
    .resultsTable .fifth {width:15%}
    .resultsTable .savingPrice .priceResults {font-size:1.2em}
    .resultsTable .tarifMarkingLine {font-size: 1.3em}
    .resultsTable .compareTariffHeadline {display:none}
    .tarifDetails .boxAlternative {min-height: inherit}

    .calculatorWrapper a.partner,
    .calculatorWrapper .buttonList li,
    .calculatorFilter .formComparison select,
    .calculatorWrapper label {
        font-size: .775rem;
        line-height: 1;
    }
	.calculatorFilter {
		margin-bottom: 10px;
		margin-top: 0;
		min-height: 5.5em;
		padding: 10px 0.75em;
		position: relative;
	}
	.calculatorFilter .calculatorFilterInfo,
    .calculatorFilter .formComparison {
		padding: 0;
        margin: 0;
        width: 100%;
    }
    .calculatorFilter .linkButton {
        padding: 0;
        margin: 0.5em 0 0 0;
        float: right;
    }

    .badgeCashback,
    .badgeMore {
        font-size: .7rem;
    }

    .resultsTable .button-apponly {
        font-size: .9em;
    }

    .resultsTable .savingPrice .priceResults {
        font-weight: 400;
    }

    .resultsTable .priceResults {
        font-size: 1.5em;
    }

    .resultsTable .tariffTop .badgeBoxInner,
    .resultsTable .tariffRow .badgeBoxInner {
        font-size: 16px;
        line-height: 32px;
        max-width: 200px;
    }

    .resultsTable .produktMonth.tariffTop .badgeBoxInner {
        height: initial;
    }

    .boxFormdata .boxContent > div.upsellingGridContainer {
        width: 96%;
    }
	
	.resultsTable .listBonus .fas, 
	.resultsTable .listBonus .fa,
	.resultsTable .listBonus .icoInfo {
		width: 24px;
	}
}

@media (min-width: 769px) {
    .breakMid:after {
        content: "";
        display: block;
    }

    .breakMid.breakMidHyphen:after {
        content: " - ";
        display: inline;
    }
}

@media (max-width: 768px) {
    .calculatorWrapper .optionsBox,
    .calculatorWrapper .buttonList,
    .calculatorWrapper .buttonList li,
    .calculatorWrapper .options > li:not(.optionsTitle),
    .calculatorWrapper .criteriaBox {
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
    }

    .calculatorWrapper .options > li:not(.optionsTitle).hideIfJS,
    .calculatorWrapper .options > li:not(.optionsTitle).hideMobile,
    .calculatorWrapper .hideMobile {
        display: none;
    }

    .calculatorWrapper .criteria label {
        width: 35%;
    }

    .calculatorWrapper .criteriaBox {
        width:60%;
    }

    .calculatorWrapper .optionsBox {
        width:100%;
    }

    .calculatorWrapper .optionsBox.opened {
        display: block;
    }

    .calculatorWrapper .buttonList {
        padding: 0 2%;
    }

    .calculatorWrapper .buttonList li {
        width: 50% !important;
        float: left;
        padding-left: 0;
    }

    .calculatorWrapper .buttonList li.optionLinkButton {
        text-align: right;
    }

    /*calculator criteria*/
    .calculatorWrapper .criteria input:not([type="checkbox"]):not([type="radio"]),
    .calculatorWrapper .criteria select {
        margin-left: -5px;
        height: 2rem;
    }

    .calculatorWrapper .criteria select {
        background-color: #fff;
    }

    /*calculator options*/
    .calculatorWrapper .criteria > li .icoInfo,
    .calculatorWrapper .options > li .icoInfo {
        height: 2rem;
        width: 1.5rem;
        text-align: center;
        line-height: 2rem;
        margin-right: .5em;
        background-position: 0 50%;
        background-size: 15px;
    }

    .calculatorWrapper .criteria > li .icoInfo {
        margin: 0;
    }

    .calculatorWrapper .options > li .icoInfo {
        margin-left: -32px;
        top: 0;
        height: 1.9rem;
        width: 1.5rem;
        background-position: 50%;
        position: absolute;
    }

    .calculatorWrapper .options > li {
        padding: 6px;
    }

    .calculatorWrapper .criteria input:not([type="checkbox"]):not([type="radio"]),
    .calculatorWrapper .criteria select {
        width: calc(100% - 2.25rem) !important;
    }

    .calculatorWrapper .options > li:not(.optionsTitle) {
        border: 1px #d6d6d6 solid;
        border-radius: 3px;
        display: inline-block;
        height: 2rem;
        margin-left: 20px;
        margin-right: 8px;
        position: relative;
        width: 53%;
    }

    .calculatorWrapper .options > li.optionWhl {
        display: flex;
    }

    .calculatorWrapper .twoParts .icoInfo,
    .calculatorWrapper .twoParts input[type=checkbox] {
        vertical-align: middle;
    }

    .calculatorWrapper .optionsBox,
    .calculatorWrapper .criteriaBox {
        padding: 2% 10px 0;
    }

    .calculatorWrapper .criteria label {
        display: block;
        width: 100%;
        margin-bottom: .25em;
        padding-left: 1.8em;
        text-align: left;
    }

    .calculatorWrapper .options .optionsTitle {
        margin-bottom: 0;
    }

    .calculatorWrapper .buttonList li.showLink {
        margin-top: 7px;
        padding-left: 18px;
    }

    .validationList label {
        width:75%;
    }

    .resultsTable .listBonus span {
        width: 85%;
    }

    .calculatorWrapper .badgeSeal {
        top: 40px;
        right: 14px;
    }

    .optionsBox + .seals {
        right: calc(2% + 7px);
        top: 34px;
    }

    .boxFormDatastep .icoInfo,
    .contentSidebar .icoInfo,
    .resultsTable .icoInfo {
        width: 15px;
        height: 15px;
        margin-top: -3px;
    }

    .seoWidgetResults .resultsTable .tariffTop .badgeBoxInner,
    .seoWidgetResults .resultsTable .tariffRow .badgeBoxInner {
        width: 140px;
    }

    .resultsTable .secondYearPrice {
        margin-top: 5px;
    }

    .timePeriodPriceButtonsBox {
        margin: 15px 0;
        padding-left: 20px;
        align-items: center;
		display: block;
		padding-top: 0;
    }

	.timePeriodPriceButtonsBox:last-child {
		margin-bottom: 16px;
	}

	.timePeriodPriceButtonsBox:last-child label {
		font-size: 12px;
		padding: 6px;
	}

    .timePeriodPriceButtonsBox .icoInfo {
        background-size: 15px;
        position: absolute;
        left: -1px;
        top: 14px;
        height: 16px;
        width: 16px;
    }

	.calculatorFilter {
		display: block;
	}
	
	.timePeriodPriceButtonsBox.priceBrakeBox .legend {
		display: none;
	}

	.timePeriodPriceButtonsBox.priceBrakeBox .legendMobile {
		display: block;
	}

	.timePeriodPriceButtonsBox .timePeriodPriceButtons {
		width: 100%;
	}
	
	.timePeriodPriceButtonsBox.priceBrakeBox .bubble {
		top: 60px;
		left: 90px;
	}
}

@media (max-width: 690px) {
    .resultsTable td.fourth {
        font-size: .95em;
        padding: 1em 0;
    }
}

@media (max-width: 650px) {
    .cashbackNotLabeled {
        display: flex;
    }

    .titleContainer {
        display: inline-block;
        min-height: 33px;
        width: calc(100% - 130px);
    }

    .badgeSeal,
    .resultsTable .badgeMore,
    .resultsTable .tariffTopHotline,
    .resultsTable .fourth {
        display: none;
    }

    .boxTeaserMain .seals {
        bottom: 0;
        margin: 0 auto;
        position: relative;
        width: 214px;
    }

    .boxTeaserMain .badgeSeal {
        display: block;
        top: -2px;
    }

    .searchResults .calculator .boxTitle {
        min-height: 55px;
    }

    /* Results Table */
    .resultsTable {
        margin-top: 1em;
    }
    .resultsTable .tariffTop1 > .third,
    .resultsTable .tariffTop2 > .third,
    .resultsTable .produktMonth > .third {
        padding-top: 1em;
    }
    .resultsTable .first.costs {
        width: 32%;
        vertical-align: middle;
    }
    .resultsTable .third {
        width: 38%;
    }
    .resultsTable .fifth {
        width: 30%;
    }

    .resultsTable td.fifth {
        text-align: right;
        padding: 0 2%;
    }

    .resultsTable .badge .badgeImg {
        max-width: 5em;
    }
    .resultsTable .badge9545 .badgeImg {
        max-width: 6.5em;
    }

    .seoWidgetResults .resultsTable .tariffTop .badgeBoxInner,
    .seoWidgetResults .resultsTable .tariffRow .badgeBoxInner {
        width: 170px;
    }

    .calculatorWrapper .criteriaBox {
        padding: 10px 10px 0;
    }

    .calculatorWrapper li {
        margin-bottom:0.25em;
    }

    .calculatorWrapper .criteriaBox {
        width:100%;
    }

    .calculatorWrapper .optionsBox.opened {
        padding: 10px;
    }

    .calculatorWrapper .buttonList li.showLink {
        padding-left: 24px;
    }

    .calculatorFilter {
        margin-bottom: 10px;
        margin-top: 0;
        min-height: 5.5em;
        padding: 10px 0.75em;
        position: relative;
    }

    .calculatorFilter .calculatorFilterInfo,
    .calculatorFilter .formComparison {
        width: 100%;
    }

    .calculatorFilter .calculatorFilterInfo,
    .calculatorFilter .formComparison,
    .calculatorFilter .linkButton {
        padding: 0;
        margin: 0;
    }
    .calculatorFilter .formComparison .comparisonTextWithIcon {
        margin-bottom: 0;
    }
    .calculatorFilter .calculatorFilterInfo .textSpecial {
        display: inline-block
    }
    .calculatorFilter .linkButton {
        float: right;
		margin-top: 0.5em;
    }

    .calculatorWrapper .criteria input:not([type="checkbox"]):not([type="radio"]),
    .calculatorWrapper .criteria select {
        width: calc(100% - 1.5rem) !important;
    }

    .calculatorWrapper .criteria label {
        width: auto;
    }

    .calculatorWrapper .options > li {
        width: calc(100% - 22px) !important;
    }

    .calculatorWrapper .options .optionsTitle {
        margin-bottom: 0.5em;
    }

    .tariffAssessment .tariffRatingTable .result .highlight {
        font-size: 1em !important;
    }

    .calculatorFilter .formComparison .comparisonText {
        display: block;
        line-height: 1;
        margin-top: .5em;
    }

    .calculatorWrapper .buttonList,
    .calculatorWrapper .optionsBox {
        display: block;
        margin-bottom: 6px;
        padding: 0 8px;
    }

    .calculatorWrapper .criteria > li {
        position: relative;
        padding-right: .5em;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
    }

    .calculatorWrapper .criteria > li:nth-child(odd) {
        padding-right: 0;
        text-align: right;
    }

    .calculatorWrapper .criteria > li:not(.criteriaTitle ) {
        width: 50%;
        float: left;
        height: 50px;
    }

    .calculatorWrapper .options > li label {
        margin-top: -.3em;
        line-height: 1;
        display: inline-block;
        width: calc(100% - 4.5rem);
    }

    .optionsBox + .seals {
        right: 10px;
        top: -62px;
    }

    .seals.sealsSearchResults {
        height: 58px;
        width: 125px;
    }

    .optionsBox + .seals .seal-widget {
        transform: scale(.5);
    }

    .tarifDetails .listTarif li {
        padding: .25em;
    }

    .tarifDetails .listTarif .label {
        width: 38%;
    }

    .mobile .tarifDetails .listTarif .label {
        font-size: .9em;
    }

    .tarifDetails  .listTarif .definition {
        width: 54%;
    }

    .tarifDetails .listTarif li {
        background: -o-linear-gradient(left , rgb(236,245,255) 0%, rgb(236,245,255) 42%, rgb(255,255,255) 42%, rgb(255,255,255) 100%);
        background: -moz-linear-gradient(left , rgb(236,245,255) 0%, rgb(236,245,255) 42%, rgb(255,255,255) 42%, rgb(255,255,255) 100%);
        background: -webkit-gradient(linear, left bottom, right bottom, color-stop(0, rgb(236,245,255)), color-stop(0.35, rgb(236,245,255)), color-stop(0.35, rgb(255,255,255)), color-stop(1, rgb(255,255,255)));
        background: -webkit-linear-gradient(left , rgb(236,245,255) 0%, rgb(236,245,255) 42%, rgb(255,255,255) 42%, rgb(255,255,255) 100%);
        background: -ms-linear-gradient(left , rgb(236,245,255) 0%, rgb(236,245,255) 42%, rgb(255,255,255) 42%, rgb(255,255,255) 100%);
        background: linear-gradient(left , rgb(236,245,255) 0%, rgb(236,245,255) 42%, rgb(255,255,255) 42%, rgb(255,255,255) 100%);
    }

    .boxFormdata .boxContent .allDataPricingWrap table.pricingLevels {
        width: 115%;
    }

    .resultsTable .third.showLivyProtect .listBonus {
        display: block;
        font-size: 12px;
        margin-top: 10px;
    }

    .resultsTable .third .listBonus .icoInfo {
        margin-right: 4px;
    }
}

@media (max-width: 550px) {
    /* details */
    .lineSpace {
        margin: 1em 0;
    }

    .lineSpace:first-child {
        margin-top: 10px;
    }

    .tarifDetails .providerLogo {
        padding: 1em 0 0 5%;
        width: 30%;
    }
    .tarifDetails .tarifTitle {
        padding: 1em 0 0 5%;
        width: 55%;
    }
    .tarifDetails .icoPrint {
        display: none;
    }
    .tarifDetails .tarifTeaser .listTarif {
        border-width: 1px 0 0;
        margin: 1em 0 0;
    }

    .resultsTable {
        margin-top: 0;
    }

    .searchResults .resultsTable .first,
    .searchResults .resultsTable .third,
    .searchResults .resultsTable .fifth {
        width: 54%;
        padding: 3% 2%;
        display: inline-block;
        min-width: auto;
        vertical-align: middle;
        position: relative;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
    }

    .searchResults .resultsTable .first {
        padding-top: 70px;
        vertical-align: top;
        width: 45%;
    }

    .searchResults .resultsTable th.first,
    .searchResults .resultsTable th.third {
        padding-bottom: 5px;
        padding-top: 0;
        vertical-align: middle;
    }

    body.firefox .searchResults .resultsTable .third,
    body.ie .searchResults .resultsTable .third {
        margin-left: -4px;
    }

    .searchResults .resultsTable .fifth {
        padding-top: 0;
        left: 45%;
    }

    .contentSeo .resultsTable td.fifth {
         border-right: none;
    }

    .searchResults .resultsTable th.fifth {
        display: none;
    }

    .resultsTable .tariffTop td {
        border-top: 0;
    }

    .resultsTable .tariffTop .indication,
    .resultsTable .produktMonth .indication {
        right: auto;
    }

    .resultsTable .buttonDefaultSmall {
        display: block;
        text-align: center;
    }

    .seoWidgetResults .resultsTable .fifth .buttonDefaultSmall {
        display: block;
        font-size: 1.15em;
        width: auto;
    }

    .resultsTable .first .indication {
        display: block;
        font-size: .9em;
        top: 50px;
    }

    .resultsTable .fifth .indication {
        display: none;
    }

    .tariffAssessment {
        display: none;
    }

    .resultsTable .second.badgeOffset,
    .resultsTable .tariffTop .first.badgeOffset {
        padding-top: 80px;
    }

    .resultsTable .tariffTop .badgeBox,
    .resultsTable .tariffRow .badgeBox {
        top: 5px;
    }

    .resultsTable .tariffTop .badgeBoxInner,
    .resultsTable .tariffRow .badgeBoxInner {
        position: relative;
        text-align: center;
        width: 180px;
    }

    .resultsTable .fifth .badge {
        display: none;
    }

    .resultsTable .fifth.showLivyProtect .badge {
        display: block;
        text-align: center;
    }

    .resultsTable .secondYearPrice {
        margin-top: 0;
    }

    .disableDuplicateContainer .successIcon {
        margin: 5px auto 15px;
    }

	.tarifWrapper .bubble {
		line-height: 1;
	}
}

@media (max-width:500px) {
    .simplemodal-default .simplemodal-title {
        font-size: 1.15em;
    }

    .simplemodal-default .simplemodal-title {
        padding: 8px 20px;
    }
}

@media (max-width:400px) {
    .titleContainer {
        width: calc(100% - 120px);
    }

    .optionsBox + .seals {
        right: 0;
    }

    .searchResults .tablehead {
        display: none;
    }

    .resultsTable .priceResults {
        font-size: 1.4em;
    }

    .resultsTable .tariffTop .indication,
    .resultsTable .produktMonth .indication {
        font-size: .8em;
    }

    .tariffAssessment .title {
        font-size: .8em;
    }

    .resultsTable .price {
        margin-top: 0;
    }

    .searchResults .resultsTable .tariffAssessment {
        margin-top: auto;
        height: 2em;
    }
    .searchResults .resultsTable .badgeCashback {
        font-size: 0.7em;
    }

    .resultsTable p {
        font-size: 1em;
    }

    .resultsTable .badge .badgeImg {
        width: 5em;
    }
    .resultsTable .bestsellerBox img {
        max-height: 45px;
        max-width: 120px;
        width: 100%;
    }
    /* details*/
    .tarifDetails .providerLogo,
    .tarifDetails .tarifTitle {
        width: 95%;
    }
    .tarifDetails .listTarif li {
        background: none;
    }
    .tarifDetails .listTarif li > div {
        margin: 0;
        text-align: left;
        width: 100% !important;
    }
    .tarifDetails .listTarif .slidingButton {
        margin-left: 0;
    }
    /* Tooltips und Layer */
    .infoParagraph p:last-child > * {
        display: block;
        margin: 0 22% 5%;
    }
    .wrapper.mobile .agbLabel .tooltip {
        font-size: 0.735em;
    }
    .resultsTable + .paginationDefault {
        font-size: 0.8em;
    }
    /* check */
    .boxSocial .fbImg {
        display: none;
    }
    .boxSocial .fbText {
        font-size: 1.4em;
        margin: 0;
    }

    /*calculator box*/
    .calculatorWrapper .buttonList li {
        font-size: .7em;
        line-height: 2.25em;
    }

    .calculatorWrapper .buttonList li.optionLinkButton {
        margin-left: 0;
    }

    .calculatorWrapper .criteria > li[style*="list-item"] {
        display: block !important;
    }

    .tarifDetails .number {
        width: auto;
    }

    .tarifDetails .listTarif .label {
        padding: 0;
    }

    .calculatorWrapper .buttonList li.showLink {
        margin-top: 0;
        padding-left: 2px;
    }

    .boxFormdata .boxContent .allDataPricingWrap table.pricingLevels {
        width: 100%;
    }

    .resultsTable .tariffTop .badgeBoxInner,
    .resultsTable .tariffRow .badgeBoxInner {
        max-width: 160px;
    }
}

@media (max-width:375px) {
    .ui-datepicker-calendar .ui-state-default {
        width: 39px;
        height: 39px;
        line-height: 39px;
    }

    .resultsTable .tariffTop .badgeBoxInner,
    .resultsTable .tariffRow .badgeBoxInner {
        max-width: 140px;
    }

    .contentSeo .resultsTable .tariffTop .badgeBoxInner,
    .contentSeo .resultsTable .tariffRow .badgeBoxInner {
        max-width: 125px;
    }

    .boxFormdata .boxContent table.upsellingTariffCompare {
        font-size: .85em;
    }
}

a.showAllPricingOptions {
    cursor: pointer;
}

.jsArea1.show {
    display: block !important;
}

.formImageTooltip:hover {
    cursor: pointer;
}

.priceAlertInfo {
	border-top: 1px #d6d6d6 solid;
	border-bottom: 1px #d6d6d6 solid;
	display: flex; 
	align-items: center;
	flex-direction: row;
	justify-content: space-between;
	gap: 24px; 
	padding: 8px 0;
	margin: 12px 0;
}

.priceAlertInfo .priceAlertInfoContent {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	width: 100%;
	padding-left: 1%;
}

.priceAlertInfo .priceAlertInfoContent > img {
	width: 50px;
	height: auto;
}

.priceAlertInfo .priceAlertInfoContent div {
	flex: 1;
	font-size: 12px;
}

.priceAlertInfo .priceAlertInfoContent div p:first-child {
	font-weight: bold;
}

.layoutEnergy .priceAlertInfo a.buttonDefault {
	background-color: #087e9f;
}

.priceAlertModal button.buttonDefault {
    width: 22.5em;
    max-width: 90%;
}

.priceAlertModal {
	height: 100%;
	overflow: auto;
}

.priceAlertContent {
	display: flex;
	flex-direction: column;
	gap: 12px;
	padding: 8px 20px;
	font-size: 1.15em;
}

.priceAlertContent label {
    display: block;
    font-size: 1em;
    line-height: 1.5em;
    vertical-align: top;
}

.priceAlertContent .checkboxLabel {
	width: 100%;
	font-size: 0.85em;
	line-height: 1.15em;
	height: 80px;
    overflow-y: auto;
}

.priceAlertContent input[type="checkbox"] {
	align-self: flex-start;
}

.priceAlertContent input[type="text"],
.priceAlertContent input[type="tel"] {
	border: 1px solid #ccc;
	height: 34px;
	width: 100%;
	padding: 0 8px;
}

.priceAlertContent input[type="tel"] {
	border: 0;
}

.priceAlertContent .buttonDefault {
	font-size: 1.15em;
}

.priceAlertContent .priceAlertContentRow {
    display: flex;
    gap: 8px;
    justify-content: space-between;
	align-items: center;
}

.priceAlertContent .priceAlertContentRow.priceAlertActivateNewsletterRow {
    align-self: flex-end;
}

.priceAlertContent .priceAlertContentRow .icon-radio-label {
	flex: 1;
	padding: 4px;
	height: 50px;
	position: relative;
}

.priceAlertContent .form-radio-group {
	padding-top: 5px;
}

.priceAlertContent .form-radio-group .priceAlertContentRow input:checked + label {
	border-color: #087e9f;
	color: #087e9f;
	font-weight: 700;
}

.priceAlertContent .form-radio-group .priceAlertContentRow input:checked + label.icon-radio-label.error {
	font-size: 1em;
	border-color: #c00;
	color: #c00;
}

.priceAlertContent .radioPriceContent {
	display: flex;
	flex-direction: column;
	gap: 4px;
	justify-content: space-around;
	align-items: center;
	height: 100%;
}

.priceAlertContent .icon-radio-label .priceAlertLabelHeader {
    position: absolute;
    font-size: 10px;
    left: 0;
    top: -13px;
    text-align: center;
	width: max-content;
	font-weight: normal;
}

.priceAlertContent .error:not(input) {
	font-size: 10px;
	text-align: left;
	padding: 4px;
	line-height: 1;
}

.priceAlertContent .radioPriceError {
	display: none;
	margin-top: 4px;
}

.priceAlertContent .icon-radio-label span {
	line-height: 1;
}

.priceAlertContent .priceAlertContentSearchValues {
	font-style: italic;
	padding: 8px 0;
}

.priceAlertContent .priceAlertContentSearchValues + p {
	font-weight: bold;
}

.priceAlertContent input[type="tel"].priceAlertCustomPriceInput {
	display: block;
	text-align: center;
	padding: 0;
}

.priceAlertContent .priceAlertCustomPriceInputContainer {
	display: none;
	gap: 2px;
	align-items: center;
	width: 50px;
	color: #444;
	font-weight: normal;
}

.priceAlertContent .priceAlertConfirmation,
.priceAlertContent .priceAlertLoaderContainer {
	color: #55970E;
	display: none;
	flex-direction: row;
	gap: 8px;
	font-size: inherit;
    justify-content: center;
    align-items: center;
	width: 100%;
    align-self: center;
	min-height: 35px;
}

.priceAlertConfirmation .icoTickLarge {
	flex-shrink: 0;
}

.circularLoader {
    width: 25px;
    height: 25px;
    border: 5px solid #087e9f;
    border-bottom-color: transparent;
    border-radius: 50%;
    display: inline-block;
    box-sizing: border-box;
    animation: circularLoaderRotation 1s linear infinite;
}

.terminationInfo {
    max-width: 388px;
    border: 1px solid #d6d6d6;
    color: #444;
    padding: 3px 6px;
    margin-top: 11px;
    font-size: 0.9em;
    margin-right: 12px;
}

@keyframes circularLoaderRotation {
	0% {
		transform: rotate(0deg);
	}
	100% {
		transform: rotate(360deg);
	}
}

@media (max-width:800px) {
	.priceAlertInfo {
		flex-direction: column;
		gap: 16px;
		padding: 8px;
		font-size: 14px;
	}
	
	.layoutEnergy .priceAlertInfo a.buttonDefault {
		font-size: 1em;
	}
	
	.priceAlertContent {
		padding: 0 2px 4px;
	}
	
	.priceAlertContent .form-radio-group .priceAlertContentRow {
		flex-wrap: wrap;
	}
	
	.priceAlertContent .priceAlertContentRow .icon-radio-label {
		flex-basis: 40%;
	}
	
	.priceAlertContent .buttonDefault {
		align-self: center;
		font-size: 0.9em;
		width: 100%;
		text-align: center;
	}
	
	.priceAlertContent .priceAlertContentRow {
		gap: 16px;
	}
	
	.priceAlertContent .priceAlertContentRow.priceAlertActivateNewsletterRow {
		align-self: center;
		width: 99%;
	}

    .priceAlertContent .priceAlertEmailRow {
		flex-direction: column;
	}
	
	.priceAlertContent .icon-radio-label .priceAlertLabelHeader {
		top: -12px;
	}

	.priceAlertInfo .priceAlertInfoContent {
		padding-left: 0;
	}
	
	.priceAlertInfo .priceAlertInfoContent > img {
		display: none;
	}

	.priceAlertContent .checkboxLabel {
		height: auto;
	}

	.priceAlertContent .priceAlertConfirmation {
		width: 100%;
	}
}

.price-break-icon {
    margin-left: 0px;
    margin-right: 5px;
}

div[for="marketing"] {
    display: contents;
}

.yelloTooltip ul li {
    border-top: none;
    padding-top: 0px;
    padding-bottom: 0px;
}

.bannerRow.hidden,
.leftBannerContainer.hidden {
    display: none !important;
}
