html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline;
}

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

body {
    line-height: 1;
}

ol, ul {
    list-style: none;
}

blockquote, q {
    quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
    content: '';
    content: none;
}

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

strong, b {
    font-weight: 700;
}

i, em {
    font-style: italic;
}

input, select, textarea {
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -webkit-appearance: none;
    -webkit-border-radius: 0;
    border-radius: 0;
}

.invisible {
    display: none;
}

button, input.submit {
    cursor: pointer;
    -webkit-appearance: none;
    -webkit-border-radius: 0;
    border-radius: 0;
}

sub, sup {
    font-size: 70%;
    line-height: 0;
    position: relative;
}

sup {
    top: -0.4em;
}

sub {
    bottom: -0.25em;
}

* {
    box-sizing: border-box;
}

/* montserrat-100 - latin */
@font-face {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 100;
    src: url("../fonts/montserrat-v24-latin-100.eot");
    /* IE9 Compat Modes */
    src: local(""), url("../fonts/montserrat-v24-latin-100.eot?#iefix") format("embedded-opentype"), url("../fonts/montserrat-v24-latin-100.woff2") format("woff2"), url("../fonts/montserrat-v24-latin-100.woff") format("woff"), url("../fonts/montserrat-v24-latin-100.ttf") format("truetype"), url("../fonts/montserrat-v24-latin-100.svg#Montserrat") format("svg");
    /* Legacy iOS */
}

/* montserrat-200 - latin */
@font-face {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 200;
    src: url("../fonts/montserrat-v24-latin-200.eot");
    /* IE9 Compat Modes */
    src: local(""), url("../fonts/montserrat-v24-latin-200.eot?#iefix") format("embedded-opentype"), url("../fonts/montserrat-v24-latin-200.woff2") format("woff2"), url("../fonts/montserrat-v24-latin-200.woff") format("woff"), url("../fonts/montserrat-v24-latin-200.ttf") format("truetype"), url("../fonts/montserrat-v24-latin-200.svg#Montserrat") format("svg");
    /* Legacy iOS */
}

/* montserrat-300 - latin */
@font-face {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 300;
    src: url("../fonts/montserrat-v24-latin-300.eot");
    /* IE9 Compat Modes */
    src: local(""), url("../fonts/montserrat-v24-latin-300.eot?#iefix") format("embedded-opentype"), url("../fonts/montserrat-v24-latin-300.woff2") format("woff2"), url("../fonts/montserrat-v24-latin-300.woff") format("woff"), url("../fonts/montserrat-v24-latin-300.ttf") format("truetype"), url("../fonts/montserrat-v24-latin-300.svg#Montserrat") format("svg");
    /* Legacy iOS */
}

/* montserrat-regular - latin */
@font-face {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 400;
    src: url("../fonts/montserrat-v24-latin-regular.eot");
    /* IE9 Compat Modes */
    src: local(""), url("../fonts/montserrat-v24-latin-regular.eot?#iefix") format("embedded-opentype"), url("../fonts/montserrat-v24-latin-regular.woff2") format("woff2"), url("../fonts/montserrat-v24-latin-regular.woff") format("woff"), url("../fonts/montserrat-v24-latin-regular.ttf") format("truetype"), url("../fonts/montserrat-v24-latin-regular.svg#Montserrat") format("svg");
    /* Legacy iOS */
}

/* montserrat-500 - latin */
@font-face {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 500;
    src: url("../fonts/montserrat-v24-latin-500.eot");
    /* IE9 Compat Modes */
    src: local(""), url("../fonts/montserrat-v24-latin-500.eot?#iefix") format("embedded-opentype"), url("../fonts/montserrat-v24-latin-500.woff2") format("woff2"), url("../fonts/montserrat-v24-latin-500.woff") format("woff"), url("../fonts/montserrat-v24-latin-500.ttf") format("truetype"), url("../fonts/montserrat-v24-latin-500.svg#Montserrat") format("svg");
    /* Legacy iOS */
}

/* montserrat-600 - latin */
@font-face {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 600;
    src: url("../fonts/montserrat-v24-latin-600.eot");
    /* IE9 Compat Modes */
    src: local(""), url("../fonts/montserrat-v24-latin-600.eot?#iefix") format("embedded-opentype"), url("../fonts/montserrat-v24-latin-600.woff2") format("woff2"), url("../fonts/montserrat-v24-latin-600.woff") format("woff"), url("../fonts/montserrat-v24-latin-600.ttf") format("truetype"), url("../fonts/montserrat-v24-latin-600.svg#Montserrat") format("svg");
    /* Legacy iOS */
}

/* montserrat-700 - latin */
@font-face {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 700;
    src: url("../fonts/montserrat-v24-latin-700.eot");
    /* IE9 Compat Modes */
    src: local(""), url("../fonts/montserrat-v24-latin-700.eot?#iefix") format("embedded-opentype"), url("../fonts/montserrat-v24-latin-700.woff2") format("woff2"), url("../fonts/montserrat-v24-latin-700.woff") format("woff"), url("../fonts/montserrat-v24-latin-700.ttf") format("truetype"), url("../fonts/montserrat-v24-latin-700.svg#Montserrat") format("svg");
    /* Legacy iOS */
}

/* montserrat-800 - latin */
@font-face {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 800;
    src: url("../fonts/montserrat-v24-latin-800.eot");
    /* IE9 Compat Modes */
    src: local(""), url("../fonts/montserrat-v24-latin-800.eot?#iefix") format("embedded-opentype"), url("../fonts/montserrat-v24-latin-800.woff2") format("woff2"), url("../fonts/montserrat-v24-latin-800.woff") format("woff"), url("../fonts/montserrat-v24-latin-800.ttf") format("truetype"), url("../fonts/montserrat-v24-latin-800.svg#Montserrat") format("svg");
    /* Legacy iOS */
}

/* montserrat-900 - latin */
@font-face {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 900;
    src: url("../fonts/montserrat-v24-latin-900.eot");
    /* IE9 Compat Modes */
    src: local(""), url("../fonts/montserrat-v24-latin-900.eot?#iefix") format("embedded-opentype"), url("../fonts/montserrat-v24-latin-900.woff2") format("woff2"), url("../fonts/montserrat-v24-latin-900.woff") format("woff"), url("../fonts/montserrat-v24-latin-900.ttf") format("truetype"), url("../fonts/montserrat-v24-latin-900.svg#Montserrat") format("svg");
    /* Legacy iOS */
}

html, body, #wrapper {
    min-height: 100vh;
}

html {
    font-family: "Montserrat", Helvetica, Arial, sans-serif;
    font-weight: 300;
    font-size: 20px;
}

body {
    line-height: 1.4;
    background: #FFFFFF;
    color: #262626;
}

body img {
    display: block;
    width: 100%;
    height: auto;
}

body #wrapper {
    display: flex;
    flex-direction: column;
}

body #wrapper #container {
    flex-grow: 1;
}

header > .inside,
footer > div > .inside,
main .mod_article .block,
main .ce_text.hero > .content,
main .ce_text.disturber > .content,
main .ce_text.request > .content {
    padding-left: 2.5rem;
    padding-right: 2.5rem;
}

@media (max-width: 400px) {
    header > .inside,
    footer > div > .inside,
    main .mod_article .block,
    main .ce_text.hero > .content,
    main .ce_text.disturber > .content,
    main .ce_text.request > .content {
        padding-left: 1.25rem !important;
        padding-right: 1.25rem !important;
    }
}

header > .inside,
footer > div > .inside,
main .mod_article > .inside,
main .ce_text.disturber > .content {
    width: 100%;
    max-width: 75rem;
    margin-left: auto;
    margin-right: auto;
}

header > .inside {
    display: flex;
    justify-content: flex-start;
    align-items: center;
}

header a.logo {
    display: block;
    width: 262px;
    height: 83px;
    margin: 13px 0;
    margin-right: auto;
    max-width: 40vw;
    background: url(../img/logo.svg) no-repeat scroll 0 50%;
    background-size: contain;
}

@media (min-width: 769px) {
    header nav ul {
        display: flex;
        justify-content: flex-end;
        align-items: center;
    }
    header nav ul li a, header nav ul li strong {
        color: #000000;
        text-decoration: none;
        transition: color .2s;
    }
    header nav ul li a:hover {
        color: #ea5b0c;
    }
    header nav ul li + li {
        margin-left: 5rem;
    }
}

@media (max-width: 769px) {
    header nav {
        display: none;
    }
}

footer .upper {
    background: url(../img/background-footer.png) no-repeat scroll 50% 100% #002b71;
    background-size: cover;
    min-height: 400px;
}

footer .upper > .inside {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
    padding-top: 2.5rem;
    padding-bottom: 2.5rem;
    padding-left: 0;
    padding-right: 0;
}

footer .upper .block {
    flex-basis: 25%;
}

footer .upper .logo {
    padding: 2.5rem;
    display: flex;
    justify-content: center;
    align-items: center;
}

footer .upper .logo:before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    aspect-ratio: 1/1;
    background: url(../img/logo-w.svg) no-repeat scroll 50% 50%;
    background-size: contain;
    max-height: 200px;
}

footer .upper .box {
    padding: 2.5rem;
}

footer .upper .box a {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    aspect-ratio: 1/1;
    background-size: cover;
    background-attachment: scroll;
    background-position: 50% 50%;
    background-color: #ea5b0c;
    box-shadow: -0.732px 6.962px 42.14px 0.86px rgba(0, 0, 0, 0.7);
    font-size: 0.9em;
    font-weight: 500;
    text-align: center;
    color: #FFFFFF;
    text-decoration: none;
    transition: transform .4s;
}

footer .upper .box a:hover {
    transform: scale(1.01);
}

footer .upper .box.tel a {
    font-size: 1.25em;
    font-weight: 700;
    background-image: url(../img/background-box-phone.jpg);
}

footer .upper .box.mail a {
    background-image: url(../img/background-box-mail.jpg);
    word-break: break-all;
}

footer .upper .box.map a {
    background-image: url(../img/background-box-map.jpg);
}

footer .upper .partner {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    flex-basis: 100%;
    color: #FFFFFF;
}

footer .upper .partner p {
    font-size: 1.2em;
    font-weight: 100;
    padding: 2.5rem;
}

footer .upper .partner a {
    display: block;
    background-repeat: no-repeat;
    background-size: contain;
    background-position: 0 50%;
    filter: brightness(0) invert(1);
}

footer .upper .partner a[href*="bollaglegal.ch"] {
    width: 280px;
    height: 100px;
    background-image: url(../img/partners/jb-bollag.svg);
}

@media (max-width: 1350px) {
    footer .upper > .inside {
        justify-content: center;
    }
    footer .upper .logo {
        flex-basis: 100%;
        flex-shrink: 0;
        max-height: 300px;
    }
    footer .upper .box {
        flex-basis: 33.33333%;
        padding-left: 1.25rem;
        padding-right: 1.25rem;
    }
}

@media (max-width: 600px) {
    footer .upper .box {
        flex-basis: 100%;
    }
    footer .upper .box + .box {
        padding-top: 0;
    }
}

footer .lower {
    color: #002b71;
}

footer .lower > .inside {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    padding-top: 0.625rem;
    padding-bottom: 0.625rem;
}

@media (max-width: 600px) {
    footer .lower > .inside {
        justify-content: center;
        text-align: center;
    }
}

footer .lower .block {
    padding-top: 0.625rem;
    padding-bottom: 0.625rem;
}

footer .lower .copy {
    font-weight: 600;
}

@media (max-width: 600px) {
    footer .lower .copy {
        order: 2;
    }
}

footer .lower nav ul {
    flex-wrap: wrap;
}

footer .lower nav ul, footer .lower nav ul li {
    display: flex;
    justify-content: flex-end;
    align-items: center;
}

@media (max-width: 600px) {
    footer .lower nav ul, footer .lower nav ul li {
        justify-content: center;
    }
}

footer .lower nav ul li:not(:last-child):after {
    content: "|";
    margin: 0 0.5em;
}

footer .lower nav ul li a, footer .lower nav ul li strong {
    display: block;
    color: inherit;
    text-decoration: none;
    transition: color .2s;
}

footer .lower nav ul li a:hover {
    color: #ea5b0c;
}

main .mod_article {
    overflow: hidden;
}

main .mod_article > .inside {
    padding-top: 5rem;
    padding-bottom: 5rem;
}

@media (max-width: 768px) {
    main .mod_article:not(.partner) > .inside {
        padding-bottom: 0;
    }
}

main .mod_article.full-width > .inside {
    max-width: 100%;
    padding-top: 0;
    padding-bottom: 0;
}

main .mod_article.steps .ce_headline, main .mod_article.offer .ce_headline {
    flex-basis: 100%;
    flex-shrink: 0;
    margin-bottom: 1.25rem;
}

main .mod_article.steps .ce_headline .hl, main .mod_article.offer .ce_headline .hl {
    color: #173042;
    border-left: 5px solid #ea5b0c;
    line-height: 1.2;
    padding-left: 0.75em;
}

main .mod_article.steps .ce_headline .hl em, main .mod_article.offer .ce_headline .hl em {
    display: block;
    font-weight: 900;
    color: #ea5b0c;
}

main .mod_article.steps > .inside {
    position: relative;
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    padding-top: 0;
    counter-reset: steps;
}

main .mod_article.steps > .inside:before {
    content: "";
    position: absolute;
    z-index: -1;
    top: 13.5em;
    left: 5%;
    display: block;
    width: 90%;
    height: 2px;
    background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, #ea5b0c 10%, #ea5b0c 90%, rgba(255, 255, 255, 0) 100%);
}

@media (max-width: 920px) {
    main .mod_article.steps > .inside {
        flex-direction: column;
    }
    main .mod_article.steps > .inside:before {
        display: none;
    }
    main .mod_article.steps > .inside .ce_text.step + .ce_text {
        padding-top: 0;
    }
}

main .mod_article.offer {
    min-height: 800px;
    background: url(../img/background-offer.jpg) no-repeat scroll 100% 100%;
    background-size: contain;
}

main .mod_article.offer > .inside {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: flex-start;
}

main .mod_article.extra-offer > .inside {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: flex-start;
}

main .mod_article.extra-offer .ce_headline {
    flex-basis: 100%;
    flex-shrink: 0;
    text-transform: uppercase;
    text-align: center;
}

main .mod_article.extra-offer .ce_headline .hl {
    font-weight: 300;
}

main .mod_article.extra-offer .ce_headline .hl em {
    font-weight: 800;
}

main .mod_article.request {
    padding-top: 6.25rem;
    padding-bottom: 6.25rem;
}

main .mod_article.request > .inside {
    display: flex;
    flex-wrap: wrap;
    padding: 0;
    max-width: 70rem;
    border-radius: 2rem;
    overflow: hidden;
    box-shadow: 9.193px 7.713px 39.2px 0.8px rgba(0, 0, 0, 0.2);
}

@media (max-width: 880px) {
    main .mod_article.request > .inside {
        flex-direction: column;
        border-radius: 0;
    }
}

main .mod_article.request .block {
    flex-basis: 50%;
}

main .mod_article.contact {
    overflow: hidden;
}

main .mod_article.contact > .inside {
    display: flex;
    flex-wrap: wrap;
    padding-bottom: 0;
    max-width: 75rem;
}

@media (max-width: 768px) {
    main .mod_article.contact > .inside {
        flex-direction: column;
    }
}

main .mod_article.contact .block {
    flex-basis: 50%;
}

main .mod_article.partner {
    background: #EFEFEF;
}

main .mod_article.partner > .inside {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}

main .mod_article.partner > .inside > * {
    flex-basis: 50%;
    flex-grow: 1;
}

main .block h1 em, main .block h2 em {
    font-style: inherit;
    font-weight: 300;
}

main .block h1 {
    font-size: 2.4rem;
    font-weight: 800;
}

@media (max-width: 400px) {
    main .block h1 {
        font-size: 1.9rem;
    }
}

main .block h2 {
    font-size: 1.95rem;
    font-weight: 800;
}

@media (max-width: 400px) {
    main .block h2 {
        font-size: 1.7rem;
    }
}

main .block h3 {
    font-weight: 800;
    color: #173042;
}

main .ce_text {
    padding: 3rem 2.5rem;
}

main .ce_text .content > * + * {
    margin-top: 1.5em;
}

main .ce_text .content a {
    color: inherit;
}

main .ce_text .content a:hover {
    color: #ea5b0c;
}

main .ce_text.hero {
    display: grid;
    padding: 0 !important;
}

main .ce_text.hero figure {
    grid-area: 1/1;
    position: relative;
    z-index: 1;
    line-height: 0;
}

main .ce_text.hero figure:before {
    content: "";
    position: absolute;
    z-index: 2;
    display: block;
    width: 100%;
    height: 100%;
    background: #002b71;
    opacity: 0.75;
    mix-blend-mode: multiply;
}

main .ce_text.hero figure img {
    height: 100%;
    min-height: 400px;
    object-fit: cover;
}

main .ce_text.hero .content {
    grid-area: 1/1;
    position: relative;
    z-index: 2;
    width: 100%;
    max-width: 1200px;
    margin: auto;
    font-size: 1.25em;
    color: #FFFFFF;
    text-align: center;
    padding-top: 3.75rem;
    padding-bottom: 3.75rem;
}

@media (max-width: 400px) {
    main .ce_text.hero .content {
        font-size: 1rem;
    }
}

main .ce_text.hero .content:before {
    content: "";
    display: block;
    font-size: 10em;
    background: url("../img/sprite-icons.svg?udf023903") no-repeat scroll;
    width: 1em;
    height: 1em;
    background-position: 0em -0em;
    background-size: auto 5em;
    filter: brightness(0) invert(1);
    margin: 0 auto;
    margin-bottom: 2.5rem;
}

@media (max-width: 450px) {
    main .ce_text.hero .content:before {
        font-size: 40vw;
    }
}

main .ce_text.hero .content p:last-child a:only-child {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    min-width: 265px;
    padding: 0.8rem 1.5rem;
    font-size: 1.25rem;
    font-weight: 800;
    color: #FFFFFF;
    line-height: 1;
    text-align: center;
    text-transform: uppercase;
    text-decoration: none;
    background: #ea5b0c;
    border: none;
    border-radius: 100em;
    transition: background .2s, color .2s;
}

@media (max-width: 400px) {
    main .ce_text.hero .content p:last-child a:only-child {
        font-size: 1.1rem;
    }
}

main .ce_text.hero .content p:last-child a:only-child:hover {
    background: #b9480a;
}

main .ce_text.banner {
    background-image: linear-gradient(-25deg, #ea5b0c 0%, #173042 100%);
}

main .ce_text.banner .content {
    width: 100%;
    max-width: 1140px;
    margin: 0 auto;
    text-align: center;
    color: #FFFFFF;
}

main .ce_text.banner .content .hl {
    font-size: 1.25em;
}

main .ce_text.banner .content .hl + * {
    margin-top: 0.5em;
}

main .ce_text.banner .content p:last-child {
    margin-top: 3em;
}

main .ce_text.banner .content p:last-child a:only-child {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    min-width: 265px;
    padding: 0.8rem 1.5rem;
    font-size: 1.25rem;
    font-weight: 800;
    color: #FFFFFF;
    line-height: 1;
    text-align: center;
    text-transform: uppercase;
    text-decoration: none;
    background: #ea5b0c;
    border: none;
    border-radius: 100em;
    transition: background .2s, color .2s;
    background: none;
    border: 1px solid #FFFFFF;
}

@media (max-width: 400px) {
    main .ce_text.banner .content p:last-child a:only-child {
        font-size: 1.1rem;
    }
}

main .ce_text.banner .content p:last-child a:only-child:hover {
    background: #b9480a;
}

main .ce_text.banner .content p:last-child a:only-child:hover {
    background: #FFFFFF;
    color: #000000;
}

main .ce_text.notebook {
    display: flex;
    justify-content: flex-start;
    align-items: center;
}

main .ce_text.notebook figure {
    flex-basis: 58%;
    order: 2;
    position: relative;
    transform: scale(1.2);
}

main .ce_text.notebook figure:before {
    content: "";
    display: block;
    position: absolute;
    z-index: 1;
    top: 0;
    right: 0;
    font-size: 250px;
    background: url("../img/sprite-icons.svg?udf023903") no-repeat scroll;
    width: 1em;
    height: 1em;
    background-position: 0em -0em;
    background-size: auto 5em;
    transform: translateY(-40%) translateX(18%);
}

main .ce_text.notebook figure img {
    position: relative;
    z-index: 2;
}

main .ce_text.notebook .content {
    flex-basis: 42%;
}

main .ce_text.notebook .content .hl {
    color: #002b71;
}

main .ce_text.notebook .content .hl + p {
    margin-top: 0.3em;
    color: #ea5b0c;
    font-weight: 800;
    font-size: 1.25rem;
}

main .ce_text.notebook .content p:nth-of-type(n+2) {
    font-size: 0.9em;
    font-weight: 400;
    max-width: 350px;
}

main .ce_text.notebook .content p:last-child {
    padding-top: 2.5rem;
}

main .ce_text.notebook .content p:last-child a:only-child {
    display: inline-flex;
    justify-content: flex-start;
    align-items: center;
    text-transform: uppercase;
    color: #ea5b0c;
    font-weight: 300;
    text-decoration: none;
    line-height: 1;
    transition: color .2s;
}

main .ce_text.notebook .content p:last-child a:only-child:after {
    content: "";
    display: block;
    background: url("../img/sprite-icons.svg?udf023903") no-repeat scroll;
    width: 1.4em;
    height: 1.4em;
    background-position: 0em -1.4em;
    background-size: auto 7em;
    margin-left: 1em;
    flex-shrink: 0;
}

main .ce_text.notebook .content p:last-child a:only-child:hover {
    color: #b9480a;
}

@media (max-width: 768px) {
    main .ce_text.notebook {
        flex-direction: column;
    }
    main .ce_text.notebook figure {
        order: -1;
        flex-basis: auto;
        transform: none;
        margin-bottom: 2.5rem;
    }
    main .ce_text.notebook figure:before {
        font-size: 40vw;
    }
    main .ce_text.notebook .content {
        flex-basis: auto;
    }
    main .ce_text.notebook .content p:nth-of-type(n+2) {
        max-width: 100%;
    }
}

main .ce_text.step {
    counter-increment: steps;
    flex-basis: 0;
    flex-grow: 1;
    display: flex;
    flex-direction: column;
}

main .ce_text.step:before {
    content: "";
    display: block;
    margin: 0 auto;
    flex-shrink: 0;
}

main .ce_text.step.icon-time:before {
    background: url("../img/sprite-icons.svg?udf023903") no-repeat scroll;
    width: 10em;
    height: 10em;
    background-position: -10em -0em;
    background-size: auto 50em;
}

main .ce_text.step.icon-bank:before {
    background: url("../img/sprite-icons.svg?udf023903") no-repeat scroll;
    width: 10em;
    height: 10em;
    background-position: -10em -10em;
    background-size: auto 50em;
}

main .ce_text.step.icon-notar:before {
    background: url("../img/sprite-icons.svg?udf023903") no-repeat scroll;
    width: 10em;
    height: 10em;
    background-position: -10em -20em;
    background-size: auto 50em;
}

main .ce_text.step .content {
    display: flex;
    flex-direction: column;
    height: 100%;
    font-size: 0.9em;
    font-weight: 400;
    padding-top: 0;
}

main .ce_text.step .content .hl {
    font-size: 1.11111em;
}

main .ce_text.step .content:before {
    content: counter(steps);
    display: inline-flex;
    justify-content: center;
    align-items: center;
    margin: 0 auto;
    margin-bottom: 1.2em;
    width: 1.5em;
    height: 1.5em;
    border-radius: 1em;
    font-size: 0.8em;
    font-weight: 700;
    line-height: 1;
    text-align: center;
    color: #FFFFFF;
    background: #173042;
}

main .ce_text.step .content p:last-child {
    margin-top: auto;
    padding-top: 2em;
}

main .ce_text.step .content p:last-child a:only-child {
    display: inline-flex;
    justify-content: flex-start;
    align-items: center;
    color: #ea5b0c;
    font-weight: 300;
    text-decoration: none;
    line-height: 1;
    transition: color .2s;
}

main .ce_text.step .content p:last-child a:only-child:after {
    content: "";
    display: block;
    background: url("../img/sprite-icons.svg?udf023903") no-repeat scroll;
    width: 1.4em;
    height: 1.4em;
    background-position: 0em -1.4em;
    background-size: auto 7em;
    margin-left: 1em;
    flex-shrink: 0;
}

main .ce_text.step .content p:last-child a:only-child:hover {
    color: #b9480a;
}

main .ce_text.step .content p:last-child a:only-child[target="_blank"]:after {
    background: url("../img/sprite-icons.svg?udf023903") no-repeat scroll;
    width: 1.4em;
    height: 1.4em;
    background-position: 0em -5.6em;
    background-size: auto 7em;
}

main .ce_text.offer:nth-of-type(n+2) {
    margin-right: -3rem;
}

main .ce_text.offer > .content {
    position: relative;
    width: 310px;
    margin-top: 0.1px;
    padding-bottom: 1em;
    background: #FFFFFF;
    border-radius: 2rem;
    box-shadow: 9.193px 7.713px 39.2px 0.8px rgba(0, 0, 0, 0.2);
}

main .ce_text.offer > .content .hl {
    background: #ea5b0c;
    color: #FFFFFF;
    text-transform: uppercase;
    font-size: 1rem;
    font-weight: 600;
    text-align: center;
    line-height: 2;
    border-radius: 2rem 2rem 0 0;
}

main .ce_text.offer > .content p:nth-of-type(1) {
    text-align: center;
    text-transform: uppercase;
    font-weight: 700;
    font-size: 1.25rem;
    color: #002b71;
    margin-top: 1em;
}

main .ce_text.offer > .content p:nth-of-type(1):nth-child(1) {
    margin-top: 0;
    padding-top: 2.1em;
}

main .ce_text.offer > .content p:nth-of-type(2) {
    margin-top: 0;
    text-align: center;
    text-transform: uppercase;
    font-weight: 700;
    font-size: 1.25rem;
    color: #a1ba11;
}

main .ce_text.offer > .content p:nth-of-type(2):nth-child(2) {
    color: #ea5b0c;
}

main .ce_text.offer > .content p:nth-of-type(3) {
    border-top: 1px solid #c5c5c5;
    font-size: 0.675em;
    font-style: italic;
    padding-top: 0.5em;
    margin-left: 2.2em;
    margin-right: 2.2em;
}

main .ce_text.offer > .content p:nth-of-type(4) {
    text-align: center;
    text-transform: uppercase;
    color: #ea5b0c;
    font-size: 0.9em;
    font-weight: 400;
}

main .ce_text.offer > .content p:nth-of-type(4) a {
    color: inherit;
    text-decoration: none;
    transition: color .2s;
}

main .ce_text.offer > .content p:nth-of-type(4) a:hover {
    color: #b9480a;
}

main .ce_text.offer > .content p.badge {
    position: absolute;
    bottom: 0;
    right: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 93px;
    height: 93px;
    background: #a1ba11;
    border-radius: 50%;
    transform: translateX(30%) translateY(30%);
    text-align: center;
    color: #FFFFFF;
    font-size: 0.49em;
    font-weight: 700;
    text-transform: uppercase;
    line-height: 1;
    padding-top: 0.75em;
}

main .ce_text.offer > .content p.badge strong {
    font-size: 3.16327em;
    font-weight: 800;
}

main .ce_text.offer > .content p.badge em {
    font-size: 1.69388em;
    font-weight: 800;
    font-style: normal;
}

main .ce_text.offer > .content p.badge:before {
    content: "";
    display: block;
    width: 92%;
    height: 92%;
    border: 1px solid #FFFFFF;
    border-radius: 50%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
}

main .ce_text.offer > .content ul {
    font-size: 0.8em;
    font-weight: 400;
    padding-left: 0.5em;
}

main .ce_text.offer > .content ul li {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
}

main .ce_text.offer > .content ul li:before {
    content: "";
    display: block;
    flex-shrink: 0;
    background: url("../img/sprite-icons.svg?udf023903") no-repeat scroll;
    width: 1.4em;
    height: 1.4em;
    background-position: 0em -2.8em;
    background-size: auto 7em;
    margin-right: 0.3em;
    transform: translateY(-12%);
}

main .ce_text.offer > .content ul li:nth-child(n+2) {
    margin-top: 1em;
}

main .ce_text.offer > .content ul strong {
    font-weight: inherit;
    color: #ea5b0c;
}

@media (max-width: 700px) {
    main .ce_text.offer, main .ce_text.offer > .content {
        width: 100%;
    }
    main .ce_text.offer + .offer {
        padding-top: 0;
    }
}

main .ce_text.disturber {
    position: relative;
    padding: 0 !important;
    margin-bottom: 0.625rem;
}

main .ce_text.disturber figure {
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

main .ce_text.disturber figure img {
    position: relative;
    z-index: 1;
    display: block;
    width: 70%;
    height: 100%;
    object-fit: cover;
    object-position: 90% 0;
    margin-left: auto;
}

main .ce_text.disturber figure:before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
}

main .ce_text.disturber figure.float_left img {
    margin-left: initial;
    margin-right: auto;
    object-position: 0% 0;
}

main .ce_text.disturber figure.float_left:before {
    transform: scaleX(-1);
}

main .ce_text.disturber figure.float_left + .content {
    align-items: flex-end;
}

main .ce_text.disturber figure.float_left + .content p.badge {
    left: initial;
    top: 20%;
    right: 580px;
}

main .ce_text.disturber .content {
    position: relative;
    z-index: 2;
    padding-top: 5rem;
    padding-bottom: 5rem;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    color: #FFFFFF;
    font-size: 0.9em;
}

main .ce_text.disturber .content > * {
    width: 100%;
    max-width: 430px;
}

main .ce_text.disturber .content .hl {
    display: flex;
    align-items: flex-start;
    text-transform: uppercase;
    line-height: 1;
    font-weight: 700;
    margin-bottom: 1em;
    border-left: 5px solid;
    padding-left: 0.6ch;
}

main .ce_text.disturber .content h3 {
    color: inherit;
    font-size: 1.72222em;
    font-weight: 700;
}

main .ce_text.disturber .content h3 em {
    font-style: normal;
    font-weight: 200;
}

main .ce_text.disturber .content a {
    text-decoration: none;
    text-transform: uppercase;
    font-weight: 400;
}

main .ce_text.disturber .content p:nth-last-of-type(2) {
    margin-top: 4em;
}

main .ce_text.disturber .content p.badge {
    position: absolute;
    left: 580px;
    top: 3%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 175px;
    height: 175px;
    border-radius: 50%;
    background: #a1ba11;
    color: #FFFFFF;
    text-transform: uppercase;
    font-weight: 700;
    line-height: 1;
    padding-top: 1em;
}

main .ce_text.disturber .content p.badge strong {
    font-size: 3.16667em;
}

main .ce_text.disturber .content p.badge em {
    font-size: 1.72222em;
    font-style: normal;
}

main .ce_text.disturber .content p.badge:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    display: block;
    width: 92%;
    height: 92%;
    border-radius: 50%;
    border: 1px solid #FFFFFF;
}

main .ce_text.disturber.blue {
    background: #002b71;
}

main .ce_text.disturber.blue figure:before {
    background: linear-gradient(90deg, #002b71 0%, #002b71 40%, rgba(255, 255, 255, 0) 70%);
}

main .ce_text.disturber.blue .content .hl {
    color: #ea5b0c;
    border-color: #ea5b0c;
}

main .ce_text.disturber.blue .content a {
    color: #a1ba11;
}

main .ce_text.disturber.orange {
    background: #ff5300;
}

main .ce_text.disturber.orange figure:before {
    background: linear-gradient(90deg, #ff5300 0%, #ff5300 40%, rgba(255, 255, 255, 0) 70%);
}

main .ce_text.disturber.orange .content .hl {
    color: #002b71;
    border-color: #002b71;
}

main .ce_text.disturber.orange .content a {
    color: #002b71;
}

@media (max-width: 768px) {
    main .ce_text.disturber figure {
        position: relative;
    }
    main .ce_text.disturber figure img {
        width: 100%;
        height: 50vw;
        min-height: 300px;
    }
    main .ce_text.disturber figure:before {
        display: none;
    }
    main .ce_text.disturber figure.float_left + .content p.badge {
        right: 2.5rem;
    }
    main .ce_text.disturber .content p.badge,
    main .ce_text.disturber figure.float_left + .content p.badge {
        top: -50vw;
        transform: translateY(50%) translateY(-1em);
    }
}

@media (max-width: 768px) and (max-width: 400px) {
    main .ce_text.disturber .content p.badge,
    main .ce_text.disturber figure.float_left + .content p.badge {
        transform: translateY(50%) translateY(-1em) scale(0.75);
    }
}

@media (max-width: 768px) {
    main .ce_text.disturber .content p.badge {
        left: 2.5rem;
    }
}

main .ce_text.contact-cta {
    flex-basis: 100%;
    flex-shrink: 0;
}

main .ce_text.contact-cta:last-child {
    padding-top: 0;
}

@media (min-width: 768px) {
    main .ce_text.contact-cta:last-child {
        padding-bottom: 0;
    }
}

main .ce_text.contact-cta .content {
    text-align: center;
}

main .ce_text.contact-cta .content p a {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    min-width: 265px;
    padding: 0.8rem 1.5rem;
    font-size: 1.25rem;
    font-weight: 800;
    color: #FFFFFF;
    line-height: 1;
    text-align: center;
    text-transform: uppercase;
    text-decoration: none;
    background: #ea5b0c;
    border: none;
    border-radius: 100em;
    transition: background .2s, color .2s;
    text-transform: none;
    background: #a1ba11;
}

@media (max-width: 400px) {
    main .ce_text.contact-cta .content p a {
        font-size: 1.1rem;
    }
}

main .ce_text.contact-cta .content p a:hover {
    background: #b9480a;
}

main .ce_text.contact-cta .content p a:hover {
    background: #798b0d;
}

main .ce_text.contact-cta .content p:nth-of-type(n+2) {
    margin-top: 0.5em;
    color: #a1ba11;
}

main .ce_text.extra-offer {
    flex-basis: 33.33333%;
}

main .ce_text.extra-offer:before {
    content: "";
    display: block;
    margin: 0 auto;
    flex-shrink: 0;
}

main .ce_text.extra-offer.icon-express:before {
    background: url("../img/sprite-icons.svg?udf023903") no-repeat scroll;
    width: 11em;
    height: 11em;
    background-position: -11em -33em;
    background-size: auto 55em;
}

main .ce_text.extra-offer.icon-contract:before {
    background: url("../img/sprite-icons.svg?udf023903") no-repeat scroll;
    width: 11em;
    height: 11em;
    background-position: -11em -44em;
    background-size: auto 55em;
}

main .ce_text.extra-offer.icon-deal:before {
    background: url("../img/sprite-icons.svg?udf023903") no-repeat scroll;
    width: 11em;
    height: 11em;
    background-position: -22em -0em;
    background-size: auto 55em;
}

main .ce_text.extra-offer .content {
    margin: 0 auto;
    text-align: center;
    font-size: 0.9em;
    font-weight: 400;
}

main .ce_text.extra-offer .content .hl {
    color: #ea5b0c;
    font-size: 1.11111em;
}

main .ce_text.extra-offer .content p:last-child a:only-child {
    text-transform: uppercase;
    text-decoration: none;
    color: #ea5b0c;
    transition: color .2s;
}

main .ce_text.extra-offer .content p:last-child a:only-child:hover {
    color: #b9480a;
}

@media (max-width: 600px) {
    main .ce_text.extra-offer + .extra-offer {
        padding-top: 0;
    }
}

main .ce_text.request {
    padding: 0 !important;
    display: grid;
}

main .ce_text.request > * {
    grid-area: 1/1;
}

main .ce_text.request > figure {
    position: relative;
}

main .ce_text.request > figure img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    min-height: 400px;
}

main .ce_text.request > figure:before {
    content: "";
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    background: linear-gradient(0deg, #ea5b0c 30%, rgba(255, 255, 255, 0) 50%);
    mix-blend-mode: multiply;
}

main .ce_text.request > .content {
    z-index: 2;
    color: #FFFFFF;
    padding-bottom: 1.875rem;
    margin-top: auto;
    font-size: 1.95em;
    line-height: 1.2;
}

@media (max-width: 400px) {
    main .ce_text.request > .content {
        font-size: 1.7rem;
    }
}

main .ce_text.contact .content .hl {
    color: #002b71;
}

main .ce_text.contact .content p:nth-of-type(1) {
    font-size: 1.55em;
    color: #002b71;
    font-weight: 400;
    margin-top: 0.5em;
    margin-bottom: 3em;
    max-width: 400px;
}

main .ce_text.contact .content p:nth-of-type(1) em {
    font-weight: 700;
    font-style: normal;
    color: #ea5b0c;
}

@media (max-width: 400px) {
    main .ce_text.contact .content p:nth-of-type(1) {
        font-size: 1.3rem;
    }
}

main .ce_text.contact .content h3 {
    font-size: 1.25em;
    color: #002b71;
    width: 100%;
    max-width: 590px;
    display: flex;
    justify-content: flex-start;
    align-items: center;
}

main .ce_text.contact .content h3:after {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background: #002b71;
    flex-basis: 0;
    flex-grow: 1;
    margin-left: 1em;
}

main .ce_text.contact .content p:nth-of-type(2) {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
    margin-top: 0;
}

main .ce_text.contact .content p:nth-of-type(2) a {
    flex-basis: 50%;
    flex-grow: 1;
}

main .ce_text.contact .content a[href^="tel:"], main .ce_text.contact .content a[href*="wa.me/"], main .ce_text.contact .content a[href*="maps"], main .ce_text.contact .content a[href^="mailto:"], main .ce_text.legal .content a[href^="tel:"], main .ce_text.legal .content a[href*="wa.me/"], main .ce_text.legal .content a[href*="maps"], main .ce_text.legal .content a[href^="mailto:"] {
    position: relative;
    display: block;
    margin-top: 1.5em;
    min-width: 200px;
    font-size: 0.8em;
    text-decoration: none;
    color: inherit;
    font-weight: 400;
    line-height: 1.2;
    padding-left: 3em;
    transition: color .2s;
}

main .ce_text.contact .content a[href^="tel:"]:hover, main .ce_text.contact .content a[href*="wa.me/"]:hover, main .ce_text.contact .content a[href*="maps"]:hover, main .ce_text.contact .content a[href^="mailto:"]:hover, main .ce_text.legal .content a[href^="tel:"]:hover, main .ce_text.legal .content a[href*="wa.me/"]:hover, main .ce_text.legal .content a[href*="maps"]:hover, main .ce_text.legal .content a[href^="mailto:"]:hover {
    color: #ea5b0c;
}

main .ce_text.contact .content a[href^="tel:"]:hover:before, main .ce_text.contact .content a[href*="wa.me/"]:hover:before, main .ce_text.contact .content a[href*="maps"]:hover:before, main .ce_text.contact .content a[href^="mailto:"]:hover:before, main .ce_text.legal .content a[href^="tel:"]:hover:before, main .ce_text.legal .content a[href*="wa.me/"]:hover:before, main .ce_text.legal .content a[href*="maps"]:hover:before, main .ce_text.legal .content a[href^="mailto:"]:hover:before {
    filter: brightness(0) invert(43%) sepia(56%) saturate(1423%) hue-rotate(350deg) brightness(89%) contrast(106%);
}

main .ce_text.contact .content a[href^="tel:"] em, main .ce_text.contact .content a[href*="wa.me/"] em, main .ce_text.contact .content a[href*="maps"] em, main .ce_text.contact .content a[href^="mailto:"] em, main .ce_text.legal .content a[href^="tel:"] em, main .ce_text.legal .content a[href*="wa.me/"] em, main .ce_text.legal .content a[href*="maps"] em, main .ce_text.legal .content a[href^="mailto:"] em {
    display: block;
    font-size: 0.625em;
    font-style: normal;
    color: #c5c5c5;
}

main .ce_text.contact .content a[href^="tel:"]:before, main .ce_text.contact .content a[href*="wa.me/"]:before, main .ce_text.contact .content a[href*="maps"]:before, main .ce_text.contact .content a[href^="mailto:"]:before, main .ce_text.legal .content a[href^="tel:"]:before, main .ce_text.legal .content a[href*="wa.me/"]:before, main .ce_text.legal .content a[href*="maps"]:before, main .ce_text.legal .content a[href^="mailto:"]:before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    transform: translateY(-17%);
    transition: filter .2s;
    font-size: 2em;
}

main .ce_text.contact .content a[href^="tel:"][href^="tel:"]:before, main .ce_text.contact .content a[href*="wa.me/"][href^="tel:"]:before, main .ce_text.contact .content a[href*="maps"][href^="tel:"]:before, main .ce_text.contact .content a[href^="mailto:"][href^="tel:"]:before, main .ce_text.legal .content a[href^="tel:"][href^="tel:"]:before, main .ce_text.legal .content a[href*="wa.me/"][href^="tel:"]:before, main .ce_text.legal .content a[href*="maps"][href^="tel:"]:before, main .ce_text.legal .content a[href^="mailto:"][href^="tel:"]:before {
    background: url("../img/sprite-icons.svg?udf023903") no-repeat scroll;
    width: 1em;
    height: 1em;
    background-position: -3em -0em;
    background-size: auto 5em;
}

main .ce_text.contact .content a[href^="tel:"][href*="wa.me/"]:before, main .ce_text.contact .content a[href*="wa.me/"][href*="wa.me/"]:before, main .ce_text.contact .content a[href*="maps"][href*="wa.me/"]:before, main .ce_text.contact .content a[href^="mailto:"][href*="wa.me/"]:before, main .ce_text.legal .content a[href^="tel:"][href*="wa.me/"]:before, main .ce_text.legal .content a[href*="wa.me/"][href*="wa.me/"]:before, main .ce_text.legal .content a[href*="maps"][href*="wa.me/"]:before, main .ce_text.legal .content a[href^="mailto:"][href*="wa.me/"]:before {
    background: url("../img/sprite-icons.svg?udf023903") no-repeat scroll;
    width: 1em;
    height: 1em;
    background-position: -3em -1em;
    background-size: auto 5em;
}

main .ce_text.contact .content a[href^="tel:"][href*="maps"]:before, main .ce_text.contact .content a[href*="wa.me/"][href*="maps"]:before, main .ce_text.contact .content a[href*="maps"][href*="maps"]:before, main .ce_text.contact .content a[href^="mailto:"][href*="maps"]:before, main .ce_text.legal .content a[href^="tel:"][href*="maps"]:before, main .ce_text.legal .content a[href*="wa.me/"][href*="maps"]:before, main .ce_text.legal .content a[href*="maps"][href*="maps"]:before, main .ce_text.legal .content a[href^="mailto:"][href*="maps"]:before {
    background: url("../img/sprite-icons.svg?udf023903") no-repeat scroll;
    width: 1em;
    height: 1em;
    background-position: -3em -2em;
    background-size: auto 5em;
}

main .ce_text.contact .content a[href^="tel:"][href^="mailto:"]:before, main .ce_text.contact .content a[href*="wa.me/"][href^="mailto:"]:before, main .ce_text.contact .content a[href*="maps"][href^="mailto:"]:before, main .ce_text.contact .content a[href^="mailto:"][href^="mailto:"]:before, main .ce_text.legal .content a[href^="tel:"][href^="mailto:"]:before, main .ce_text.legal .content a[href*="wa.me/"][href^="mailto:"]:before, main .ce_text.legal .content a[href*="maps"][href^="mailto:"]:before, main .ce_text.legal .content a[href^="mailto:"][href^="mailto:"]:before {
    background: url("../img/sprite-icons.svg?udf023903") no-repeat scroll;
    width: 1em;
    height: 1em;
    background-position: -3em -3em;
    background-size: auto 5em;
}

main .ce_text.legal h1, main .ce_text.legal h3 {
    font-size: 1.8em;
    font-weight: 500;
    text-transform: uppercase;
    color: #002b71;
    border-left: 3px solid #ea5b0c;
    padding-left: 1ch;
}

main .ce_text.legal h2 {
    font-size: 1.3em;
    font-weight: 500;
    text-transform: uppercase;
    color: #002b71;
}

main .ce_text.legal h3 {
    font-size: 1.1em;
    font-weight: 400;
}

main .ce_text.partner {
    padding-bottom: 1.875rem;
}

main .ce_text.partner .content p:last-child a:only-child {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    min-width: 265px;
    padding: 0.8rem 1.5rem;
    font-size: 1.25rem;
    font-weight: 800;
    color: #FFFFFF;
    line-height: 1;
    text-align: center;
    text-transform: uppercase;
    text-decoration: none;
    background: #ea5b0c;
    border: none;
    border-radius: 100em;
    transition: background .2s, color .2s;
    font-weight: 400;
    text-transform: none;
}

@media (max-width: 400px) {
    main .ce_text.partner .content p:last-child a:only-child {
        font-size: 1.1rem;
    }
}

main .ce_text.partner .content p:last-child a:only-child:hover {
    background: #b9480a;
}

main .ce_text.partner .content p:last-child a:only-child:before {
    content: "";
    flex-shrink: 0;
    background: url("../img/sprite-icons.svg?udf023903") no-repeat scroll;
    width: 1.4em;
    height: 1.4em;
    background-position: 0em -5.6em;
    background-size: auto 7em;
    filter: brightness(0) invert(1);
    margin-right: 1ch;
}

main .ce_accordion > div {
    border-top: 1px solid #c5c5c5;
}

main .ce_accordion > div input {
    display: none;
}

main .ce_accordion > div input:not(:checked) ~ .accordion {
    display: none;
}

main .ce_accordion > div input:checked ~ label:after {
    filter: none;
    transform: rotate(-90deg);
}

main .ce_accordion > div label {
    display: flex;
    justify-content: space-between;
    align-items: center;
    cursor: pointer;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-tap-highlight-color: transparent;
    padding: 1em 0;
    font-weight: 500;
}

main .ce_accordion > div label:after {
    content: "";
    display: block;
    margin-left: 1em;
    flex-shrink: 0;
    background: url("../img/sprite-icons.svg?udf023903") no-repeat scroll;
    width: 1em;
    height: 1em;
    background-position: 0em -1em;
    background-size: auto 5em;
    transform: rotate(90deg);
    transition: transform .2s;
}

main .ce_accordion > div .accordion {
    overflow: hidden;
}

main .ce_accordion > div .accordion > div {
    padding-bottom: 1em;
}

main .ce_accordion > div .accordion > div > * + * {
    margin-top: 1em;
}

main .ce_form {
    padding: 3rem 0.625rem;
}

@media (min-width: 881px) {
    main .ce_form {
        padding-bottom: 1.875rem;
    }
}

@media (max-width: 400px) {
    main .ce_form.block {
        padding-left: 0.625rem !important;
        padding-right: 0.625rem !important;
    }
}

main .ce_form form, main .ce_form .formbody {
    height: 100%;
}

main .ce_form form.loading .formbody {
    opacity: 0.5;
}

main .ce_form form.loading .formbody .widget-submit button {
    pointer-events: none;
}

main .ce_form form.success .widget-submit button {
    pointer-events: none;
    text-transform: none;
}

main .ce_form form.success .widget-submit button, main .ce_form form.success .widget-submit button:hover {
    background: #a1ba11;
}

main .ce_form .formbody {
    max-width: 526px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-items: center;
    transition: opacity .2s;
}

main .ce_form .widget {
    flex-basis: 100%;
    flex-grow: 1;
    padding: 0 0.625rem;
}

main .ce_form .widget.span50 {
    flex-basis: 50%;
    min-width: 200px;
}

main .ce_form .widget + .widget {
    padding-top: 1em;
}

main .ce_form .widget.widget-explanation {
    font-size: 1.95em;
    line-height: 1.2;
    color: #002b71;
    margin-bottom: 2.5rem;
}

@media (max-width: 400px) {
    main .ce_form .widget.widget-explanation {
        font-size: 1.7rem;
    }
}

main .ce_form .widget input[type="text"], main .ce_form .widget input[type="email"],
main .ce_form .widget select {
    display: block;
    width: 100%;
    border: 1px solid #c5c5c5;
    border-radius: 2rem;
    background: #FFFFFF;
    font-size: 0.8em;
    padding: 1.41em;
    line-height: 1;
    color: inherit;
}

main .ce_form .widget select option {
    color: #262626;
}

main .ce_form .widget select:invalid, main .ce_form .widget input::placeholder {
    font-style: italic;
    text-align: center;
    color: #c5c5c5;
}

main .ce_form .widget.widget-text > label, main .ce_form .widget.widget-select > label {
    display: none;
}

main .ce_form .widget.widget-select {
    position: relative;
}

main .ce_form .widget.widget-select:after {
    content: "";
    background: url("../img/sprite-icons.svg?udf023903") no-repeat scroll;
    width: 1em;
    height: 1em;
    background-position: 0em -1em;
    background-size: auto 5em;
    position: absolute;
    z-index: 1;
    top: 50%;
    right: 2em;
    transform: translateY(-50%) translateY(0.5em) rotate(90deg);
    pointer-events: none;
}

main .ce_form .widget.widget-submit {
    padding-top: 2em;
    text-align: center;
}

main .ce_form .widget.widget-submit button {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    min-width: 265px;
    padding: 0.8rem 1.5rem;
    font-size: 1.25rem;
    font-weight: 800;
    color: #FFFFFF;
    line-height: 1;
    text-align: center;
    text-transform: uppercase;
    text-decoration: none;
    background: #ea5b0c;
    border: none;
    border-radius: 100em;
    transition: background .2s, color .2s;
}

@media (max-width: 400px) {
    main .ce_form .widget.widget-submit button {
        font-size: 1.1rem;
    }
}

main .ce_form .widget.widget-submit button:hover {
    background: #b9480a;
}

main .ce_hyperlink.call {
    padding: 0 !important;
    position: absolute;
    z-index: 5;
    top: 41%;
    right: 0;
    transform-origin: 100% 100%;
    transform: rotate(-90deg);
    transition: all .2s;
}

@media (max-width: 400px) {
    main .ce_hyperlink.call {
        transform: rotate(-90deg) scale(0.7);
        top: 20%;
    }
}

main .ce_hyperlink.call a {
    display: inline-flex;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: center;
    font-size: 0.8em;
    font-weight: 700;
    line-height: 1;
    white-space: nowrap;
    color: #FFFFFF;
    text-decoration: none;
    height: 3.125em;
    padding: 0 1.5em;
    border-radius: 1.2em 1.2em 0 0;
    transition: background .2s;
    background: #a1ba11;
}

main .ce_hyperlink.call a:hover {
    background: #798b0d;
}

main .ce_hyperlink.call a:before {
    content: "";
    display: block;
    background: url("../img/sprite-icons.svg?udf023903") no-repeat scroll;
    width: 1.5em;
    height: 1.5em;
    background-position: 0em -4.5em;
    background-size: auto 7.5em;
    margin-right: 0.5ch;
    transform: rotate(90deg);
}

main .ce_map.block {
    padding: 0 !important;
}

main .ce_map iframe, main .ce_map .optin {
    width: 150%;
    height: 100%;
    min-height: 300px;
}

@media (max-width: 70rem) {
    main .ce_map iframe, main .ce_map .optin {
        width: 100%;
    }
}

@media (max-width: 768px) {
    main .ce_map iframe, main .ce_map .optin {
        height: 56vw;
    }
}

@keyframes placeHolderShimmer {
    0% {
        background-position: -468px 0;
    }
    100% {
        background-position: 468px 0;
    }
}

main .ce_map iframe {
    animation-name: placeHolderShimmer;
    animation-duration: 1.8s;
    animation-timing-function: linear;
    animation-fill-mode: forwards;
    animation-iteration-count: infinite;
    background: #f6f7f8;
    background: linear-gradient(to right, #fafafa 8%, #f4f4f4 38%, #fafafa 54%);
    background-size: 1000px 640px;
}

main .ce_map .optin {
    position: relative;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    width: 100%;
    padding: 1.25rem;
    text-align: center;
    font-size: 0.9em;
    font-weight: 400;
    line-height: 1.5;
    background: #FFFFFF;
}

main .ce_map .optin > div {
    position: relative;
    z-index: 2;
    max-width: 500px;
}

main .ce_map .optin > div p + p {
    margin-top: 1em;
}

main .ce_map .optin > div .button {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    min-width: 265px;
    padding: 0.8rem 1.5rem;
    font-size: 1.25rem;
    font-weight: 800;
    color: #FFFFFF;
    line-height: 1;
    text-align: center;
    text-transform: uppercase;
    text-decoration: none;
    background: #ea5b0c;
    border: none;
    border-radius: 100em;
    transition: background .2s, color .2s;
    text-transform: none;
    font-weight: 400;
    font-size: 1em;
    background: #c5c5c5;
}

@media (max-width: 400px) {
    main .ce_map .optin > div .button {
        font-size: 1.1rem;
    }
}

main .ce_map .optin > div .button:hover {
    background: #b9480a;
}

main .ce_map .optin > div .button:hover {
    background: #173042;
}

main .ce_map .optin:before {
    content: "";
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0;
    background: url(../img/background-maps-placeholder.png) no-repeat scroll 50% 50%;
    background-size: cover;
    filter: blur(3px);
    transform: scale(1.2);
    opacity: 0.4;
}

cms-cookie-bar,
cms-accept-tags {
    --btn-accept-bg-color: #ea5b0c;
    --btn-reject-bg-color: #c5c5c5;
    --btn-reject-text-color: #FFFFFF;
    padding: 0 !important;
}

cms-cookie-bar > cms-container,
cms-accept-tags > cms-container {
    margin: 0.5em;
    border-radius: 8px;
    font-family: "Montserrat", Helvetica, Arial, sans-serif;
    font-size: 0.9rem;
}

cms-cookie-bar > cms-container cms-buttons,
cms-accept-tags > cms-container cms-buttons {
    margin-top: 1.25rem;
}

cms-cookie-bar > cms-container cms-buttons cms-button[data-all] span,
cms-accept-tags > cms-container cms-buttons cms-button[data-all] span {
    font-weight: 500;
}

cms-cookie-bar > cms-container cms-buttons cms-button span:before,
cms-accept-tags > cms-container cms-buttons cms-button span:before {
    border-radius: 4em;
}

cms-cookie-bar > cms-container .disclaimer h3,
cms-accept-tags > cms-container .disclaimer h3 {
    color: #000000;
}

cms-cookie-bar > cms-container .disclaimer > * + *,
cms-accept-tags > cms-container .disclaimer > * + * {
    margin-top: 1em;
}

cms-cookie-bar > cms-container .disclaimer a,
cms-accept-tags > cms-container .disclaimer a {
    color: inherit;
    text-decoration: underline;
    transition: color .2s;
}

cms-cookie-bar > cms-container .disclaimer a:hover,
cms-accept-tags > cms-container .disclaimer a:hover {
    color: #ea5b0c;
}
