<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">/***********************************************************************************************************************
 * Project: enni-fairsorger-2024
 * File:    styles.css
 * Author:  Mario Diaz @ mario-diaz.com
 * Date:    15.12.21
 * Time:    14:57
 * @copyright 2025 by Mario Diaz @ mario-diaz.com
 *
 * Description: main CSS for website
 **********************************************************************************************************************/


/* gustavo webfont */
@font-face {
    font-family: Gustavo;
    font-weight: 200;
    font-style: normal;
    src: url(../fonts/gustavo_thin/Gustavo-Thin.woff2) format("woff2"), url(../fonts/gustavo_thin/Gustavo-Thin.woff) format("woff2")
}

@font-face {
    font-family: Gustavo;
    font-weight: 200;
    font-style: italic;
    src: url(../fonts/gustavo_thin_italic/Gustavo-ThinItalic.woff2) format("woff2"), url(../fonts/gustavo_thin_italic/Gustavo-ThinItalic.woff) format("woff2")
}

@font-face {
    font-family: Gustavo;
    font-weight: 300;
    font-style: normal;
    src: url(../fonts/gustavo_light/Gustavo-Light.woff2) format("woff2"), url(../fonts/gustavo_light/Gustavo-Light.woff) format("woff2")
}

@font-face {
    font-family: Gustavo;
    font-weight: 300;
    font-style: italic;
    src: url(../fonts/gustavo_light_italic/Gustavo-LightItalic.woff2) format("woff2"), url(../fonts/gustavo_light_italic/Gustavo-LightItalic.woff) format("woff2")
}

@font-face {
    font-family: Gustavo;
    font-weight: 400;
    font-style: normal;
    src: url(../fonts/gustavo_regular/Gustavo-Regular.woff2) format("woff2"), url(../fonts/gustavo_regular/Gustavo-Regular.woff) format("woff2")
}

@font-face {
    font-family: Gustavo;
    font-weight: 400;
    font-style: italic;
    src: url(../fonts/gustavo_italic/Gustavo-Italic.woff2) format("woff2"), url(../fonts/gustavo_italic/Gustavo-Italic.woff) format("woff2")
}

@font-face {
    font-family: Gustavo;
    font-weight: 500;
    font-style: normal;
    src: url(../fonts/gustavo_medium/Gustavo-Medium.woff2) format("woff2"), url(../fonts/gustavo_medium/Gustavo-Medium.woff) format("woff2")
}

@font-face {
    font-family: Gustavo;
    font-weight: 500;
    font-style: italic;
    src: url(../fonts/gustavo_medium_italic/Gustavo-MediumItalic.woff2) format("woff2"), url(../fonts/gustavo_medium_italic/Gustavo-MediumItalic.woff) format("woff2")
}

@font-face {
    font-family: Gustavo;
    font-weight: 700;
    font-style: normal;
    src: url(../fonts/gustavo_bold/Gustavo-Bold.woff2) format("woff2"), url(../fonts/gustavo_bold/Gustavo-Bold.woff) format("woff2")
}

@font-face {
    font-family: Gustavo;
    font-weight: 700;
    font-style: italic;
    src: url(../fonts/gustavo_bold_italic/Gustavo-BoldItalic.woff2) format("woff2"), url(../fonts/gustavo_bold_italic/Gustavo-BoldItalic.woff) format("woff2")
}



/* *** tags ********************************************************************************************************* */
body,div,h1,h2,h3,h4,h5,h6,blockquote,pre,code,ol,ul,li,dl,dt,dd,figure,table,th,td,form,fieldset,legend,input,textarea {
    margin: 0;
    padding: 0;
}

body {
    font-family: proxima-nova, "Myriad W01", Helvetica, Arial, sans-serif;
    color: #000;
    background: rgb(249, 252, 255);
    font-size: 100%;
    line-height: 1.8;
}



table {
    border-spacing: 0;
    border-collapse: collapse;
}

small {
    font-size: 85%;
}

caption,
th,
td {
    text-align: left;
    vertical-align: top;
}

abbr,
acronym {
    font-variant: normal;
    border-bottom: 1px dotted #666;
    cursor: help;
}

blockquote,
q {
    quotes: none;
}

fieldset,
img {
    border: 0;
}

ul {
    list-style-type: none;
}

sup {
    vertical-align: text-top;
}

sub {
    vertical-align: text-bottom;
}

del {
    text-decoration: line-through;
}

ins {
    text-decoration: none;
}

header, footer, nav, section, aside, article, figure, figcaption {
    display: block;
}

input,
button,
textarea,
select {
    font-family: inherit;
}
input,
textarea,
select {
    border: 1px solid #999;
    padding: 3px 8px;
}
input:focus,
textarea:focus,
select:focus {
    outline: none;
    border: 1px solid #368bcb;
}
button {
    border: none;
}
input[type="search"],
input[type="submit"],
.button {
    text-align: center;
    color: #368bcb;
    background: #fff;
    border: none;
    text-transform: uppercase;
}
.button:hover {
    cursor: pointer;
    color: #fff;
}
input[type="search"],
input[type="submit"] {
    padding: 10px;
}
select,
textarea,
input[type="number"],
input[type="search"],
input[type="tel"],
input[type="text"] {
    padding: 10px;
}


pre,code {
    font-family: Monaco,monospace;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    margin-top: 0;
    margin-bottom: 24px;
    overflow-wrap: break-word;
    -webkit-hyphens: auto;
    -ms-hyphens: auto;
    hyphens: auto;
    font-family: Gustavo,proxima-nova,"Myriad W01",Helvetica,Arial,sans-serif;
    letter-spacing: .02em;
    font-weight: 700;
}

h1, .h1 {
    font-size: 4.5rem;
    font-weight: 400;
}
.frame-layout-2 h1,
h2, .h2 {
    font-size: 2.5rem;
}

/* accessibility: use h1 in form steps */
h3,
.tx-ennitariff h1 {
    font-size: 2rem;
    font-weight: 700;
}

h4.big {
    font-size: 1.5rem;
}
h4,
h5 {
    font-size: 1.0em;
}

table {
    font-size: inherit;
}

caption,
th {
    font-weight: 700;
}

a {
    color: #000;
    text-decoration: none;
    transition: all 500ms;
}
a:hover {
    color: #55afdc;
}
a.underline {
    padding-bottom: 3px;
    border-bottom: solid 1px rgba(0,79,159,.25);
    position: relative;
}
a.underline::after {
    content: '';
    position: absolute;
    bottom: -1px;
    left: 0;
    background: #55afdc;
    transition: width 250ms;
}

body,form,figure {
    margin: 0;
    padding: 0;
}

img {
    border: 0;
}

header,footer,nav,section,aside,article,figure,figcaption {
    display: block;
}

figcaption {
    font-size: 0.75rem;
    line-height: 1rem;
    padding-top: 0.6875rem;
}

::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
    color: #398ccb;
    opacity: 1; /* Firefox */
}

:-ms-input-placeholder { /* Internet Explorer 10-11 */
    color: #398ccb;
}

::-ms-input-placeholder { /* Microsoft Edge */
    color: #398ccb;
}




/* *** bootstrap container ****************************************************************************************** */
.container-fluid {
    max-width: 1280px;
}

@media (min-width: 992px) {
    .container-lg {
        max-width: 100%;
    }
}

@media (min-width:1400px) {
    .container,
    .container-md,
    .container-sm,
    .container-xl {
        max-width: 1280px;
    }
    .container-lg {
        max-width: 1280px;
    }
}
.container, .container-fluid, .container-md, .container-lg, .container-sm, .container-xl, .container-xxl {
    padding-left: 20px;
    padding-right: 20px;
}
.row {
    margin-left: -20px;
    margin-right: -20px;
}
.row&gt;* {
    padding-right: 20px;
    padding-left: 20px;
    margin-bottom: 40px;
}
.container-lg .row&gt;* {
    margin-bottom: 0;
}






/* *** header ******************************************************************************************************* */
body &gt; header {
    background: #fff;
    padding: 20px 0;
}
body &gt; header img {
    width: 160px;
    height: auto !important
}
/* *** fixed navi */
@media (min-width: 992px) {
    body &gt; header {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        z-index: 6541;
    }
    body &gt; header img {
        width: 200px;
    }
    body &gt; header .container-fluid {
        padding: 0;
    }
}
@media (max-width: 1280px) {
    body &gt; header .container-fluid {
        padding: 0 20px;
    }
}




/* *** main ********************************************************************************************************* */
/* for IE */
figure,
main {
    display: block;
}
/* fixed header -&gt; so margin-top */
@media (min-width: 992px) {
    main {
        margin-top: 100px;
    }
}
body main {
    background-repeat: no-repeat;
    background-position: top center;
    padding-bottom: 100px;
}
/* responsive */
@media (max-width: 599px) {
    body.start main {
        background-size: 600%;
    }
}
@media (max-width: 340px) {
    body.start main {
        background-size: 650%;
    }
}





div#standard-content {
    padding-bottom: 6rem;
}
div.container-fluid.normal,
div#standard-content.normal {
    padding-top: 4rem;
}
div#standard-content .row img {
    max-width: 100%;
    height: auto !important;
    width: auto !important;
}
main .container {
    padding-top: 0;
    padding-bottom: 1rem;
}
main .container:last-child {
    padding-bottom: 3rem;
}
main header .container:last-child,
main header .container {
    padding-top: 0;
    padding-bottom: 0;
}
main header .row &gt; * {
    margin-bottom: 0;
}









/* *** footer ******************************************************************************************************* */

footer {
    background: rgb(0, 90, 215);
    color: #fff;
    position: relative;
}

#box-white {
    position: relative;
    top: -117px;
    z-index: 33;
    color: #000;
    width: 100%;
}
#box-white &gt; div {
    padding: 20px 20px 0 20px;
    background: #fff;
    box-shadow: rgba(0, 81, 158, 0.1) 0 0 20px 0;
}
#box-white .social-links a {
    display: inline-block;
    margin: 4px;
}
#box-white .ce-bodytext p {
    margin-bottom: 0;
    line-height: 1.75rem;
}

#box-white .subheadline {
    text-transform: uppercase;
    letter-spacing: .01em;
    font-size: 1rem;
    margin-bottom: 6px;
    color: #646F7B;
    line-height: 28px;
    margin-top: 1rem;
    font-weight: 700;
}

footer .row-2 {
    margin-top: -100px;
    text-align: center;
}
footer .row-2 a {
    color: #fff;
}
footer .subheadline-footer {
    margin-top: 3rem;
    margin-bottom: 1.5rem;
    font-size: 1.5rem;
    line-height: 1.8125rem;
    color: rgba(249,252,255,.89);
    font-weight: 700;
    letter-spacing: 0.02em;
    font-family: Gustavo,proxima-nova,"Myriad W01",Helvetica,Arial,sans-serif;
}

@media (min-width: 768px) {
    footer .row-2 p {
        padding-left: 10rem;
        padding-right: 10rem;
    }
}


footer .row-2 ul {
    margin: 0.75rem 0 1.375rem 0;
}
footer .row-2 ul li {
    display: inline-block;
}
footer .row-2 ul li a {
    margin: 10px;
    /*color: rgba(249,252,255,.75);
    border-bottom: 1px solid rgba(249,252,255,.25);*/
    line-height: 30px;
    border-bottom: 1px solid rgba(255,255,255,.25);
}
footer .row-2 ul li a:hover {
    border-bottom-color: rgba(255,255,255,.75);
}





/* *** elements ***************************************************************************************************** */


/* typo3 fluid styled contents overrides */
.ce-intext.ce-left .ce-gallery {
    margin-right: 3%;
}
.ce-uploads img {
    padding-right: 4px;
    padding-top: 5px;
}
.ce-uploads span {
    display: inline-block;
}
.ce-uploads div &gt; span {
    margin-left: 10px;
    color: #878787;
}
.ce-uploads div &gt; span:before {
    content: '(';
}
.ce-uploads div &gt; span:after {
    content: ')';
}
body .ce-uploads a,
body .ce-uploads .ce-uploads-fileName {
    text-decoration: underline;
}



.tx-ennitariff {
    padding-top: 3rem;
}


/* double boxes */
.double-box {
    margin-bottom: 3rem;
}
.box-green {
    background: #28a08c;
}
.box-blue {
    background: rgb(0, 90, 215);
}
.box-green,
.box-blue {
    color: #fff;
    padding: 30px 50px;
    font-size: 1.125rem;
}
.box-green a.phone,
.box-blue a.phone {
    color: #fff;
}
.double-box .box-image img {
    max-width: 100%;
    width: auto !important;
    height: auto !important;
}
.box-green h1,
.box-blue h1,
.box-green h2,
.box-blue h2 {
    font-size: 1.875rem;
}

.box-blue a.underline {
    color: #fff;
    border-bottom: solid 1px rgba(255, 255, 255, 0.25);
}
.box-blue a.underline:hover {
    color: #fff;
    border-bottom-color: rgba(255, 255, 255, 0.75);
}


.box-green ul li,
.box-blue ul li {
    padding-left: 30px;
    font-size: 1.5rem;
    line-height: 1.8;
    margin-bottom: 0.75rem;
    background: url("data:image/svg+xml,%3csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M19.6.7c-.4-.1-.8-.2-1.1-.1-.8.1-1.6.3-2.3.8-.8.5-1.6 1.1-2.2 1.7-.8.7-1.5 1.6-2.2 2.4-1 1.3-2.3 3.6-3 4.7-1.2 2-1.9 3.7-2.3 3.5-.4-.5-.8-1.2-1.1-1.8-.9-1.5-1.4-2.3-1.5-2.4-.2-.3-.6-.7-.8-.7-.6 0-1.3.2-1.8.6-.6.4-1.3.9-1.3 1.4 0 .2 1.8 2.7 2.1 3.3.5.9 2.3 3.8 2.5 4.1.2.4.5.8.8 1 .4.2.9.2 1.3.1.6-.2.7-.3 1.3-1.3.2-.3.3-.5.4-.8 1.7-2.9 2.9-5.4 4.8-8.4 1.7-2.9 4-5.5 6.6-7.7 0 0 .1-.2-.2-.4z' fill='white'/%3e%3c/svg%3e") no-repeat 0 0.725rem;
}
@media only screen and (min-width: 992px) {
    .double-box {
        position: relative;
        margin-bottom: 6rem;
    }
    .box-green,
    .box-blue {
        display: inline-block;
        position: relative;
        height: 400px;
        overflow: hidden;
        padding: 50px;
    }
    .double-box .box-green {
        width: 50%;
        z-index: 20;
        margin-top: 40px;
    }
    .double-box .box-image {
        z-index: 10;
        width: 61%;
        position: absolute;
        right: 0;
        top: 0;
    }
    .box-green h1,
    .box-blue h1,
    .box-green h2,
    .box-blue h2 {
        font-size: 2.625rem;
    }
}

@media only screen and (min-width: 660px) {
    .boxes-center {
        width: 630px;
        margin: 4rem auto 0 auto;
    }
    .double-box .box-blue {
        z-index: 100;
        margin-top: 40px;
        height: auto;
    }
    .boxes-center .double-box .box-image {
        z-index: 1;
        width: 70%;
        position: relative;
        left: 0;
        top: 0;
    }
    .boxes-center .double-box .box-blue {
        position: absolute;
        right: 0;
        top: 0;
        z-index: 1000;
    }
}







.step-container {
    margin: 2rem 0;
    display: flex;
}
.step-progress {
    background: rgb(0, 90, 215);
    border-radius: 50px;
    text-transform: uppercase;
    width: 510px;
    max-width: 100%;
    padding: 0 30px 12px 70px;
    position: relative;
}
.step-number {
    background: #fff;
    color: rgb(0, 90, 215);
    border-radius: 50%;
    width: 56px;
    height: 56px;
    font-size: 36px;
    line-height: 56px;
    text-align: center;
    position: absolute;
    top: 12px;
    left: 12px;
    font-weight: 700;
}
.step-desc {
    padding: 4px 0 0 8px;
    display: inline-block;
    color: #fff;
}
.step-desc-step-of {
    padding: 4px 0;
    font-weight: 700;
}
.step-desc h2 {
    font-size: 20px;
    margin: 0;
    font-weight: 400;
}

.step-progress-inactive {
    background: rgba(0, 90, 215, 0.45);
}
.step-progress-inactive .step-number {
    background: rgba(0, 90, 215, 0.5);
    color: #fff;
}

.step-progress-completed {
    background: #fff;
}
.step-progress-completed .step-number {
    background: rgb(0, 90, 215);
    color: #fff;
}
.step-progress-completed .step-desc {
    color: #646F7B;
}

.step-container .edit {
    padding: 1.4rem 0 0 1rem;
}
.step-container .edit button {
    border-bottom: 1px solid rgba(0, 79, 159, 0.25);
    color: rgb(0, 90, 215);
    background: transparent;
    text-transform: uppercase;
    transition: all;
    font-weight: 600;
    font-size: 1rem;
    font-family: proxima-nova, Helvetica, Arial, sans-serif;
    position: relative;
}
.step-container .edit button:before {
    background: transparent url("data:image/svg+xml,%3csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill-rule='evenodd' clip-rule='evenodd' d='M20.71 5.63c.39.39.39 1.02 0 1.41l-1.83 1.83-3.75-3.75 1.83-1.83a.996.996 0 011.41 0l2.34 2.34zM3 21v-3.75L14.06 6.19l3.75 3.75L6.75 21H3z' fill='%23005AD7'/%3e%3c/svg%3e") no-repeat 50% 50%;
    background-size: auto;
    background-size: 100%;
    width: 24px;
    height: 24px;
    content: '';
    position: absolute;
    left: -35px;
    top: 0;
}
.step-container .edit button::after {
    content: '';
    position: absolute;
    left: 0;
    bottom: -1px;
    width: 0;
    height: 1px;
    transition: width .5s cubic-bezier(.75, .02, .5,1);
    background-color: #fff;
}
.step-container .edit button:hover {
    color: #55afdc;
}
.step-container .edit button:hover::before {
    background: transparent url("data:image/svg+xml,%3csvg width='24' height='24' viewBox='0 0 24 24' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath fill-rule='evenodd' clip-rule='evenodd' d='M20.71 5.63c.39.39.39 1.02 0 1.41l-1.83 1.83-3.75-3.75 1.83-1.83a.996.996 0 011.41 0l2.34 2.34zM3 21v-3.75L14.06 6.19l3.75 3.75L6.75 21H3z' fill='%2355AFDC'/%3e%3c/svg%3e") no-repeat 50% 50%;
}

@media only screen and (min-width: 800px) {
    .step-container .edit {
        padding-left: 4rem;
    }
}
@media only screen and (min-width: 1024px) {
    .step-container .edit {
        padding-left: 9rem;
    }
}




/* *** selection **************************************************************************************************** */

#tariff-city-blue {
    color: #fff;
    background: #005ad7;
    border-radius: 100px;
    font-size: 1.5rem;
    padding: 32px 30px 28px 30px;
}
@media only screen and (min-width: 1280px) {
    #tariff-city-blue {
        margin-left: -20px;
        margin-right: -20px;
    }
}


#tariff-selection div.row {
    display: flex;
    /*align-items: center;*/
    justify-content: center;
}
#tariff-selection div.row &gt; div {
    box-shadow: 5px 10px 40px rgba(207, 208, 209, .3);
    background-color: #fff;
    width: auto;
    margin: 10px 30px;
    text-align: center;
    border-top-left-radius: 20px;
}
#tariff-selection .hints {
    padding: 0.75rem 3em 0 3em;
    font-size: 0.875rem;
    color: #646F7B;
    line-height: 1.2em;
}
#tariff-selection .hints a {
    color: #646F7B;
    text-decoration: underline;
}
#tariff-selection .hints a:hover {
    text-decoration: none;
}

@media only screen and (max-width: 991px) {
    #tariff-selection div.row {
        margin-left: 0;
        margin-right: 0;
    }
}
@media only screen and (min-width: 992px) {
    #tariff-selection div.row &gt; div {
        width: 50%;
        width: calc(50% - 20px);
        margin: 10px;
    }
}


/* eco */
#tariff-selection div.row .info-with-expandable {
    border-top: 1px solid rgba(189, 189, 189, 0.2);
    padding: 10px 020px 0;
    margin-top: 10px;
    border-bottom: 1px solid rgba(189, 189, 189, 0.2);
    margin-bottom: 20px;
    text-align: left;
}
.info-text-expandable &gt; a {
    float: right;
    text-transform: uppercase;
    color: #000;
    transition: all .5s cubic-bezier(.75, .02, .5,1), transform .5s cubic-bezier(.75, .02, .5,1);
    display: inline-block;
    font-weight: 700;
    font-size: 1rem;
    letter-spacing: .01em;
    border-bottom: 1px solid rgba(0, 79, 159, 0.25);
    margin-top: -12px;
}
.info-text-expandable &gt; a:hover {
    color: rgb(0, 90, 215);
}
.info-text-expandable .hide-text,
.info-text-expandable .text-expandable {
    display: none;
}
.info-text-expandable .text-expandable {
    padding: 10px 0 0 0;
}




#tariff-selection div.row &gt; div span {
    display: block;
}
#tariff-selection div.row &gt; div span span {
    display: inline;
}
#tariff-selection div.row &gt; div span span.price-unit-nt,
#tariff-selection div.row &gt; div span span.price-unit-ht {
    display: inline;
}
#tariff-selection span.name {
    display: block;
    background: #28a08c;
    color: #fff;
    margin: 0 -20px;
    padding: 30px 10px;
    border-top-left-radius: 20px;
    font-size: 1.5rem;
    /*min-height: 200px;*/
    position: relative;
}

#tariff-selection .product-subtitle {
    padding-top: 30px;
    display: block;
    line-height: 44px;
    min-height: 88px;
    font-size: 28px;
    font-weight: 700;
    color: #3c3c3c;
}

span.counter {
    display: block;
    color: white;
    font-weight: 700;
    padding: 20px;
    font-size: 20px;
    background: #c85a28;
    max-width: 80%;
    margin: 10px auto 30px auto;
    border-radius: 100px
}


/* reorder with flex */
.tariff-product {
    display: flex;
    flex-direction: column;
}
.tariff-product .tariff-base {
    order: 1;
}
.tariff-product &gt; ul {
    order: 2;
}
.tariff-product &gt; button {
    order: 3;
}
.tariff-product &gt; .counter {
    order: 4;
}
.tariff-product &gt; .hints {
    order: 5;
}

.tariff-product span.text-top {
    margin: 2.75rem 0 0.375rem 0;
    font-size: 1.25rem;
}

.tariff-product .price {
    color: #005ad7;
    font-size: 1.25rem;
    font-weight: 700;
    line-height: 1.25;
    position: relative;
    display: block;
}
/*
.tariff-product .price:before {
    content: '';
    position: absolute;
    width: 30px;
    height: 1px;
    left: 15px;
    top: 50%;
    background: #005ad7;
}
.tariff-product .price:after {
     content: '';
     position: absolute;
     width: 30px;
     height: 1px;
     right: 15px;
     top: 50%;
     background: #005ad7;
}
*/
.tariff-product .price-desc {
    margin: 1rem 0 0 0;
    color: #646F7B;
    font-size: 1.25rem;
}

.tx-ennitariff .btn-order-all,
.tariff-product .btn-secondary {
    background: #fff;
    color: #28a08c;
    margin: 1.75rem 40px 2rem 40px;
    border: 3px solid rgba(149, 193, 31, .2);
    display: block;
    width: calc(100% - 80px);
    text-transform: uppercase;
    font-size: 1.25rem;
    border-radius: 30px;
    padding: 20px 0 17px 0;
    font-weight: 700;
    box-shadow: 0 10px 20px rgba(0, 81, 158, .1);
}
.tx-ennitariff .btn-order-all:hover,
.tariff-product .btn-secondary:hover {
    box-shadow: 0 15px 30px rgba(0, 81, 158, .2);
    transition: border .5s cubic-bezier(0.75,0.02,0.5,1), background .5s cubic-bezier(0.75,0.02,0.5,1), box-shadow .5s cubic-bezier(0.75, 0.02, 0.5, 1), transform .5s cubic-bezier(0.75, 0.02, 0.5, 1);
}
.tariff-product .dn {
    display: none;
}
.tx-ennitariff .btn-order-all {
    margin-left: auto;
    margin-right: auto;
    max-width: 800px;
}

.tx-ennitariff ol {
    margin-left: 1em;
}


.product-show-details {
    text-align: center;
    /*margin-bottom: 3rem;*/
    margin: 2rem 0 1.75rem 0;
}

.product-show-details a {
    color: #005ad7;
    transition: all .5s cubic-bezier(.75, .02, .5,1), transform .5s cubic-bezier(.75, .02, .5,1);
    text-transform: uppercase;
    display: inline-block;
    font-weight: 700;
    font-size: 1rem;
    letter-spacing: .01em;
    border-bottom: 1px solid rgba(0, 79, 159, 0.25);
    margin: 0 auto;
}
.product-show-details a:hover {
    color: rgb(63, 192, 240);
    border-bottom-color: rgb(63, 192, 240);
}

.tariff-product hr {
    background: #f2f2f2;
    opacity: 1;
}

.tariff-product ul {
    margin: 0 -20px;
    font-size: 1.25rem;
}
.tariff-product ul li {
    border-bottom: 1px solid rgba(189, 189, 189, 0.2);
    padding: 0.8rem 30px;
}
.tariff-product ul li:last-child {
    border-bottom: none;
}
.tariff-product ul li span {
    display: inline-block !important;
    background: url("data:image/svg+xml,%3csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M19.6.7c-.4-.1-.8-.2-1.1-.1-.8.1-1.6.3-2.3.8-.8.5-1.6 1.1-2.2 1.7-.8.7-1.5 1.6-2.2 2.4-1 1.3-2.3 3.6-3 4.7-1.2 2-1.9 3.7-2.3 3.5-.4-.5-.8-1.2-1.1-1.8-.9-1.5-1.4-2.3-1.5-2.4-.2-.3-.6-.7-.8-.7-.6 0-1.3.2-1.8.6-.6.4-1.3.9-1.3 1.4 0 .2 1.8 2.7 2.1 3.3.5.9 2.3 3.8 2.5 4.1.2.4.5.8.8 1 .4.2.9.2 1.3.1.6-.2.7-.3 1.3-1.3.2-.3.3-.5.4-.8 1.7-2.9 2.9-5.4 4.8-8.4 1.7-2.9 4-5.5 6.6-7.7 0 0 .1-.2-.2-.4z' fill='%23005AD7'/%3e%3c/svg%3e") no-repeat 0 0.4rem;
    padding-left: 30px;
}

/* details layer */
#tariff-details-layer {
    background: rgba(11, 11, 11, .8);
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 99999;
    height: 100%;
}
#tariff-details-layer .product-subtitle {
    display: none;
}
#tariff-details-layer .close {
    position: fixed;
    right: 0;
    top: 0;
    display: block;
    color: #fff;
    background: #55afdc;
    opacity: 0.9;
    transition: opacity .4s ease;
    z-index: 888888;
    font-size: 28px;
    padding: 24px 20px 26px 20px;
    line-height: 0;
    cursor: pointer;
    font-family: Arial, Baskerville, monospace;
    font-weight: 400;
}
#tariff-details-layer .close:hover {
    opacity: 1;
}
#tariff-details-layer .content {
    border: 20px solid #fff;
    background: #005ad7;
    width: 100%;
    color: #fff;
    margin: 20px 0;
    max-width: none;
    max-height: 100%;
    overflow-x: hidden;
    overflow-y: auto;
}
#tariff-details-layer .content .left {
    padding: 45px 15px 0 60px;
}
#tariff-details-layer .left ul {
    margin-bottom: 2rem;
}
#tariff-details-layer .left ul li {
    background: transparent url("data:image/svg+xml,%3csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M19.6.7c-.4-.1-.8-.2-1.1-.1-.8.1-1.6.3-2.3.8-.8.5-1.6 1.1-2.2 1.7-.8.7-1.5 1.6-2.2 2.4-1 1.3-2.3 3.6-3 4.7-1.2 2-1.9 3.7-2.3 3.5-.4-.5-.8-1.2-1.1-1.8-.9-1.5-1.4-2.3-1.5-2.4-.2-.3-.6-.7-.8-.7-.6 0-1.3.2-1.8.6-.6.4-1.3.9-1.3 1.4 0 .2 1.8 2.7 2.1 3.3.5.9 2.3 3.8 2.5 4.1.2.4.5.8.8 1 .4.2.9.2 1.3.1.6-.2.7-.3 1.3-1.3.2-.3.3-.5.4-.8 1.7-2.9 2.9-5.4 4.8-8.4 1.7-2.9 4-5.5 6.6-7.7 0 0 .1-.2-.2-.4z' fill='%23FFF'/%3e%3c/svg%3e") no-repeat 0 0.4rem;
    padding-left: 30px;
    font-weight: 700;
    margin-bottom: 1rem;
    font-size: 1.25rem;
}
#tariff-details-layer .your-product-for {
    font-size: 1.25rem;
}
#tariff-details-layer .product {
    font-size: 2rem;
    margin: 2rem 0 4rem 0;
}
#tariff-details-layer .hints {
    font-size: 1.0625rem;
}
#tariff-details-layer .hints a {
    color: #fff;
    text-decoration: underline;
}
#tariff-details-layer .hints a:hover {
    text-decoration: none;
}
#tariff-details-layer .right ul {
    float: left;
    margin-top: 4rem;
}
#tariff-details-layer .right ul li {
    border-bottom: 1px solid rgba(255,255,255,.25);
    font-size: 1.25rem;
    padding: 0.4rem 0;
}
#tariff-details-layer .right ul li a {
    color: #fff;
    text-decoration: underline;
}
#tariff-details-layer .right ul li a:hover {
    text-decoration: none;
}
body.no-scroll {
    height: 100%;
    overflow-y: hidden;
}

@media (max-width: 767px) {
    #tariff-details-layer .content .left {
        padding: 30px 30px 0 30px;
        margin-bottom: 0;
    }
    #tariff-details-layer .content .right {
        padding: 0 30px;
    }
    #tariff-details-layer .right ul {
        margin-top: 0;
    }
}



/* *** repeating styles ********************************************************************************************* */

.form-vertical {
    background: #fff;
    border-radius: 20px;
    box-shadow: 0 10px 20px rgba(0, 81, 158, .1);
    padding: 40px;
    margin-bottom: 3rem;
}

.form-vertical .group-inset {
    margin-top: -24px;
    padding-bottom: 32px;
    margin-left: 42px;
}

.form-vertical h2,
.form-vertical h3 {
    font-size: 1.0em;
}
.form-vertical h2 {
    margin-bottom: 1.5rem;
}
.form-vertical h3 {
    margin: 1rem 0 0.25rem 0;
}

.form-vertical legend {
    font-size: 1.25rem;
    font-weight: 700;
    margin: 2em 0 1em;
}
.form-vertical legend.first {
    margin-top: 0;
}
.form-vertical legend.empty {
    margin: 0;
}

.form-vertical select,
.form-vertical input[type="date"],
.form-vertical input[type="tel"],
.form-vertical input[type="email"],
.form-vertical input[type="number"],
.form-vertical input[type="text"],
.form-vertical label {
    display: block;
    margin-right: 2rem;
}
.form-vertical label.label-radio {
    display: inline-block;
}

.group-label,
.form-vertical legend.group-label,
.form-vertical label {
    font-size: 16px;
    vertical-align: middle;
    line-height: 1.3;
    margin-bottom: 5px;
    font-weight: 700;
    color: #646F7B;
}
.form-vertical legend.group-label {
    margin-top: 0;
}
.form-vertical label.radio {
    display: inline-block;
    color: rgb(117, 117, 117);
}
.form-vertical select,
.form-vertical input[type="date"],
.form-vertical input[type="tel"],
.form-vertical input[type="number"],
.form-vertical input[type="text"],
.form-vertical input[type="email"] {
    padding: 6px 12px;
    font-size: 20px;
    line-height: 36px;
    color: rgb(117, 117, 117);
    background-color: #fff;
    background-image: none;
    border: 1px solid #dde2e5;
    display: inline-block;
    box-sizing: border-box;
    border-radius: 8px;
    vertical-align: middle;
    width: 493px;
    max-width: 100%;
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
    transition: border-color ease-in-out .15s, box-shadow ease-in-out .15s;
}
.form-vertical select,
.form-vertical input[type="date"]:focus,
.form-vertical input[type="tel"]:focus,
.form-vertical input[type="number"]:focus,
.form-vertical input[type="text"]:focus,
.form-vertical input[type="email"]:focus {
    outline: 0;
    box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 8px rgba(102, 175, 233, .6);
}
.form-vertical select {
    height: 50px;
}

.form-vertical .group {
    position: relative;
    margin-bottom: 1rem;
}
.form-vertical .label-required {
    position: relative;
}
.form-vertical .label-required::before,
.form-vertical .group-required::before {
    content: '*';
    color: #eb5757;
    position: absolute;
    top: 2px;
    left: -14px;
    z-index: 20;
    font-size: 20px;
    line-height: 1;
    font-weight: 700;
}
.form-vertical .label-not-required span.text,
.form-vertical .label-required span.text {
    margin-left: 7px;
}
.form-vertical label.label-required::before {
    left: 30px;
}

.form-vertical .group-margin {
    margin: 2rem 0;
}



/* Customize the label */
.label-checkbox,
.label-radio {
    display: inline-block;
    position: relative;
    padding-left: 35px;
    margin-bottom: 12px;
    cursor: pointer;
    font-size: 22px;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
.label-radio {
    margin-top: 8px;
    margin-bottom: 0;
    padding-bottom: 5px;
}
/* Hide the browser's default checkbox */
.label-checkbox input,
.label-radio input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
    height: 0;
    width: 0;
}
/* Create a custom checkbox */
.checkmark {
    position: absolute;
    top: 0;
    left: 0;
    height: 25px;
    width: 25px;
    background-color: #eee;
    border-radius: 50%;
}
/* On mouse-over, add a grey background color */
/*
.label-radio:hover input ~ .checkmark {
    background-color: #ccc;
}*/
/* When the checkbox is checked, add a blue background */
.label-radio input:checked ~ .checkmark {
    /*background-color: rgb(126, 137, 163);*/
    border-color: rgb(0, 90, 215);
}
/* Create the checkmark/indicator (hidden when not checked) */
.checkmark:after {
    content: "";
    position: absolute;
    display: none;
}
/* Show the checkmark when checked */
.label-radio input:checked ~ .checkmark:after {
    display: block;
}
/* Style the checkmark/indicator */
.label-radio .checkmark:after {
    top: 8px;
    left: 8px;
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: rgb(0, 90, 215);
}


/* checkbox */
.form-vertical .label-checkbox {
    margin-bottom: 2rem;
}
.label-checkbox:hover input ~ .checkmark {
    background-color: transparent;
}
.label-checkbox .checkmark {
    border-radius: 5px;
    background: transparent;
    border: 1px solid #dde2e5;
    width: 27px;
    height: 27px;
}
.label-radio .checkmark {
    background: transparent;
    border: 1px solid #dde2e5;
    width: 27px;
    height: 27px;
}

/* Show the checkmark when checked */
.label-checkbox input:checked ~ .checkmark:after {
    display: block;
    background: transparent url("data:image/svg+xml,%3csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M19.6.7c-.4-.1-.8-.2-1.1-.1-.8.1-1.6.3-2.3.8-.8.5-1.6 1.1-2.2 1.7-.8.7-1.5 1.6-2.2 2.4-1 1.3-2.3 3.6-3 4.7-1.2 2-1.9 3.7-2.3 3.5-.4-.5-.8-1.2-1.1-1.8-.9-1.5-1.4-2.3-1.5-2.4-.2-.3-.6-.7-.8-.7-.6 0-1.3.2-1.8.6-.6.4-1.3.9-1.3 1.4 0 .2 1.8 2.7 2.1 3.3.5.9 2.3 3.8 2.5 4.1.2.4.5.8.8 1 .4.2.9.2 1.3.1.6-.2.7-.3 1.3-1.3.2-.3.3-.5.4-.8 1.7-2.9 2.9-5.4 4.8-8.4 1.7-2.9 4-5.5 6.6-7.7 0 0 .1-.2-.2-.4z' fill='%237E89A3'/%3e%3c/svg%3e") no-repeat 50% 50%;
    background-size: auto;
    background-size: 20px;
    width: 29px;
    height: 29px;
}
/* Style the checkmark/indicator */
.label-checkbox .checkmark:after {
    left: 0;
    top: 0;
    width: 6px;
    height: 10px;
    border: solid white;
    border-width: 0 3px 3px 0;
}
.label-radio .text,
.label-checkbox .text {
    line-height: 22px;
    color: #000;
    font-weight: 400;
    font-size: 1.125rem;
    display: inline-block;
    margin-top: 3px;
}
.label-checkbox .text a {
    color: #005ad7;
}
.label-checkbox .text a:hover {
    color: #003a8b;
}

.checkboxes-overview {
    margin: 3rem 0 2rem;
}


.hint-required {
    margin-left: 20px;
    color: #646F7B;
    font-size: 1.125rem;
}





.form-vertical input[readonly] {
    background: rgb(232, 235, 237);
    color: #000;
}

.blue-info {
    padding: 4rem 0 0 0;
    background: rgb(0, 90, 215);
    color: #fff;
    margin-bottom: 5rem;
    font-size: 1.25rem;
}
.blue-info a {
    color: #fff;
    text-decoration: underline;
}
.blue-info a:hover {
    text-decoration: none;
}
.blue-info .product-name {
    font-size: 2rem;
    margin: 2rem 0 2rem 0;
    font-weight: normal;
    line-height: 1.25em;
}
.blue-info .product-name span span {
    font-size: 0.8em;
}
.blue-info .dn {
    display: block;
}
.blue-info .hints {
    font-size: 0.95625rem;
    line-height: 22px;
}
.blue-info ul {
    margin-bottom: 3rem;
}
.blue-info ul li {
    background: transparent url("data:image/svg+xml,%3csvg width='20' height='20' viewBox='0 0 20 20' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M19.6.7c-.4-.1-.8-.2-1.1-.1-.8.1-1.6.3-2.3.8-.8.5-1.6 1.1-2.2 1.7-.8.7-1.5 1.6-2.2 2.4-1 1.3-2.3 3.6-3 4.7-1.2 2-1.9 3.7-2.3 3.5-.4-.5-.8-1.2-1.1-1.8-.9-1.5-1.4-2.3-1.5-2.4-.2-.3-.6-.7-.8-.7-.6 0-1.3.2-1.8.6-.6.4-1.3.9-1.3 1.4 0 .2 1.8 2.7 2.1 3.3.5.9 2.3 3.8 2.5 4.1.2.4.5.8.8 1 .4.2.9.2 1.3.1.6-.2.7-.3 1.3-1.3.2-.3.3-.5.4-.8 1.7-2.9 2.9-5.4 4.8-8.4 1.7-2.9 4-5.5 6.6-7.7 0 0 .1-.2-.2-.4z' fill='%23FFF'/%3e%3c/svg%3e") no-repeat 0 0.4rem;
    padding-left: 30px;
    font-size: 1.125rem;
    font-weight: 600;
    margin-bottom: 0.8rem;
}

/* no html table because of accessibility */
.table-responsive {
    margin-top: -0.25rem;
}
.table-row {
    display: flex;
}
.table-row div:first-child {
    padding-right: 10px;
}
@media (min-width: 1024px) and (max-width: 1339px) {
    #tariff-details-layer-prices .table-row div:last-child {
        width: 275px;
    }
}
@media (min-width: 1440px) {
    .prices-infos .table-row div:first-child {
        width: 360px;
    }
    .prices-infos .table-row div:last-child {
        width: 240px;
    }
}

@media (max-width: 479px) {
    .form-vertical .table-row {
        display: block;
    }
    .form-vertical .table-row div:first-child {
        font-style: italic;
    }
}

@media (min-width: 480px) {
    .form-vertical .table-row div:first-child {
        width: 130px;
    }
}
@media (min-width: 600px) {
    .form-vertical .table-row div:first-child {
        width: 160px;
    }
}
.form-vertical .table-row div:last-child {
    width: auto;
}


.prices-infos .table-row div {
    padding-top: 0.25rem;
    padding-bottom: 0.25rem;
}
.blue-info .table-row div {
    border-bottom: 1px solid rgba(255, 255, 255, 0.25);
}
@media (max-width: 992px) {
    .blue-info .row .col-md-4 {
        width: 100%;
    }
}

@media (max-width: 992px) {
    .blue-info .col-md-6,
    .blue-info .col-md-8 {
        width: 100%;
    }
}

@media (max-width: 600px) {
    .prices-infos .table-row {
        display: block;
    }

    .blue-info .col-md-8 {
        margin-bottom: 0;
    }
}
.eco-info-blue {
    line-height: 1.25em;
    display: none;/* not in use now */
}



.form-vertical #input-desiredBeginDate {
    width: 220px;
}


.form-vertical .group span.error {
    display: block;
    color: rgb(169, 68, 66);
}
.form-vertical .error input[type="number"],
.form-vertical .error input[type="tel"],
.form-vertical .error input[type="text"],
.form-vertical .error input[type="email"] {
    border: 1px solid rgb(169, 68, 66);
}





.btn-primary {
    border-radius: 50px;
    vertical-align: top;
    white-space: normal;
    color: #fff;
    text-transform: uppercase;
    background-color: #28a08c;
    position: relative;
    transition: background .7s, box-shadow .3s, transform .3s;
    box-shadow: 0 10px 20px rgba(135, 222, 203, .25);
    border: 2px solid transparent;
    font-weight: 700;
    font-size: 1.25rem;
    letter-spacing: .01em;
    text-shadow: 0 1px 4px #78d6c6;
    padding: 8px 3.5rem;
    height: auto;
}
.btn-primary:hover {
    transform: translate(0,-1px);
    box-shadow: 0 15px 30px rgba(135, 222, 203, .6);
    border: 2px solid transparent;
    background-color: #4fbea8;
}
#choose-gas-el button:nth-child(1):hover {
    box-shadow: 0 15px 30px rgba(55, 117, 208, .6);
    background-color: #3775d0;
}

.btn-back {
    font-size: 1.25rem;
    display: inline-block;
    padding: 8px 0;
    text-transform: uppercase;
    outline: none;
    margin-right: 3.5rem;
}
.btn-back:focus {
    box-shadow: none;
}
.btn-back:hover {
    color: rgb(0, 90, 215);
}

.clear,
.clearfix {
    clear: both;
}
body .dn {
    display: none;
}
.frame-default {
    clear: both;
}
.float-left {
    float: left;
}
.float-right {
    float: right;
}
.ce_gallery &gt; ul {
    margin: 0;
    padding: 0;
    overflow: hidden;
    list-style: none;
}
.ce_gallery &gt; ul li {
    float: left;
}
.ce_gallery &gt; ul li.col_first {
    clear: left;
}
.block {
    overflow: hidden;
}
main header h1.no-margin {
    margin: 0;
}
.font-24 {
    font-size: 1.5rem;
}

body .no-margin-bottom {
    margin-bottom: 0;
}

/* bootstrap tooltip */
.tooltip.show {
    opacity:1
}
.tooltip .tooltip-arrow {
    display: none;
}
.tooltip-inner {
    max-width: 250px;
    padding: .5rem;
    color: #121212;
    text-align: left;
    background: #fff;
    border-radius: 0;
    -webkit-box-shadow: 0 0 5px 4px rgba(186,186,186,1);
    -moz-box-shadow: 0 0 5px 4px rgba(186,186,186,1);
    box-shadow: 0 0 5px 4px rgba(186,186,186,1);
    font-size: 1rem;
}
@media screen and (min-width: 600px) {
    .tooltip-inner {
        max-width: 300px;
        font-size: 1.25rem;
        transform: translateX(138px);
    }
}
.form-icon-info {
    position: absolute;
    top: 0;
    background: transparent url("data:image/svg+xml,%3csvg width='23' height='22' viewBox='0 0 23 22' fill='none' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M11.21 21c5.524 0 10-4.477 10-10s-4.476-10-10-10c-5.522 0-10 4.477-10 10s4.478 10 10 10z' stroke='%23005AD7' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3e%3cpath d='M8.3 8a3 3 0 015.83 1c0 2-3 3-3 3m.08 3v.5' stroke='%23005AD7' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3e%3c/svg%3e") no-repeat 50% 50%;
    background-size: 100%;
    width: 23px;
    height: 22px;
    padding: 0;
    border: none;
}

.white-space-nowrap {
    white-space: nowrap;
}

.fw-normal {
    font-weight: normal;
}






/* *** form for new customers *************************************************************************************** */

#choose-gas-el {
    margin: 0 0 1rem 0;
}
#choose-gas-el button:nth-child(1) {
    margin-right: 1rem;
}

.form-consumption {
    display: flex;
    padding-left: 11px;
}

.form-consumption &gt; div {
    margin-right: 30px;
}
.form-consumption #input-zip-el,
.form-consumption #input-zip-gas {
    width: 90px;
}
.form-consumption input.input-consumption[type="text"] {
    width: 90px;
    padding-left: 109px;
    padding-right: 127px;
    box-sizing: content-box;
    text-align: center;
}
.form-consumption input#input-consumption-el[type="text"] {
    width: 120px;
}
.form-consumption button.btn-primary {
    margin-top: 14px;
    height: 4.8rem;
}
#icons-persons,
#icons-houses,
.icons-plus-minus {
    position: absolute;
    bottom: 13px;
}
#icons-persons {
    bottom: 8px;
}
#icons-persons,
#icons-houses {
    left: 16px;
}
#icons-persons svg,
#icons-houses svg {
    width: 20px;
    cursor: pointer;
}
#icons-persons svg path,
#icons-houses svg path {
    fill-opacity: 0.25;
    height: 100%;
}
#icons-persons svg.active path,
#icons-houses svg.active path {
    fill-opacity: 1;
}
.icons-plus-minus {
    right: 40px;
    bottom: 8px;
    display: flex;
}
.icons-plus-minus svg {
    align-self: center;
}
.icons-plus-minus svg:nth-child(1),
.icons-plus-minus svg:nth-child(3) {
    cursor: pointer;
}
.icons-plus-minus svg:nth-child(1):hover path,
.icons-plus-minus svg:nth-child(3):hover path {
    fill-opacity: 0.8;
}
.icons-plus-minus svg:nth-child(2) {
    height: 24px;
}

.icons-plus-minus svg path {
    -webkit-transition: all 0.5s;
    transition: all 0.5s;
}





/* *** other styles *** */

.fs18 {
    font-size: 1.125rem;
}
</pre></body></html>