@font-face {
    font-family: "Roboto";
    font-style: normal;
    font-weight: 400;
    src: url("../fonts/roboto-v27-latin-regular.eot"); /* IE9 Compat Modes */
    src:
        local(""),
        url("../fonts/roboto-v27-latin-regular.eot?#iefix")
            format("embedded-opentype"),
        /* IE6-IE8 */ url("../fonts/roboto-v27-latin-regular.woff2")
            format("woff2"),
        /* Super Modern Browsers */
            url("../fonts/roboto-v27-latin-regular.woff") format("woff"),
        /* Modern Browsers */ url("../fonts/roboto-v27-latin-regular.ttf")
            format("truetype"),
        /* Safari, Android, iOS */
            url("../fonts/roboto-v27-latin-regular.svg#Roboto") format("svg"); /* Legacy iOS */
}

@font-face {
    font-family: "Roboto";
    font-style: normal;
    font-weight: 500;
    src: url("../fonts/roboto-v27-latin-500.eot"); /* IE9 Compat Modes */
    src:
        local(""),
        url("../fonts/roboto-v27-latin-500.eot?#iefix")
            format("embedded-opentype"),
        /* IE6-IE8 */ url("../fonts/roboto-v27-latin-500.woff2") format("woff2"),
        /* Super Modern Browsers */ url("../fonts/roboto-v27-latin-500.woff")
            format("woff"),
        /* Modern Browsers */ url("../fonts/roboto-v27-latin-500.ttf")
            format("truetype"),
        /* Safari, Android, iOS */
            url("../fonts/roboto-v27-latin-500.svg#Roboto") format("svg"); /* Legacy iOS */
}

/* roboto-700 - latin */
@font-face {
    font-family: "Roboto";
    font-style: normal;
    font-weight: 700;
    src: url("../fonts/roboto-v27-latin-700.eot"); /* IE9 Compat Modes */
    src:
        local(""),
        url("../fonts/roboto-v27-latin-700.eot?#iefix")
            format("embedded-opentype"),
        /* IE6-IE8 */ url("../fonts/roboto-v27-latin-700.woff2") format("woff2"),
        /* Super Modern Browsers */ url("../fonts/roboto-v27-latin-700.woff")
            format("woff"),
        /* Modern Browsers */ url("../fonts/roboto-v27-latin-700.ttf")
            format("truetype"),
        /* Safari, Android, iOS */
            url("../fonts/roboto-v27-latin-700.svg#Roboto") format("svg"); /* Legacy iOS */
}

/* roboto-mono-regular - latin */
@font-face {
    font-family: "Roboto Mono";
    font-style: normal;
    font-weight: 400;
    src: url("../fonts/roboto-mono-v13-latin-regular.eot"); /* IE9 Compat Modes */
    src:
        local(""),
        url("../fonts/roboto-mono-v13-latin-regular.eot?#iefix")
            format("embedded-opentype"),
        /* IE6-IE8 */ url("../fonts/roboto-mono-v13-latin-regular.woff2")
            format("woff2"),
        /* Super Modern Browsers */
            url("../fonts/roboto-mono-v13-latin-regular.woff") format("woff"),
        /* Modern Browsers */ url("../fonts/roboto-mono-v13-latin-regular.ttf")
            format("truetype"),
        /* Safari, Android, iOS */
            url("../fonts/roboto-mono-v13-latin-regular.svg#RobotoMono")
            format("svg"); /* Legacy iOS */
}

/* roboto-mono-500 - latin */
@font-face {
    font-family: "Roboto Mono";
    font-style: normal;
    font-weight: 500;
    src: url("../fonts/roboto-mono-v13-latin-500.eot"); /* IE9 Compat Modes */
    src:
        local(""),
        url("../fonts/roboto-mono-v13-latin-500.eot?#iefix")
            format("embedded-opentype"),
        /* IE6-IE8 */ url("../fonts/roboto-mono-v13-latin-500.woff2")
            format("woff2"),
        /* Super Modern Browsers */
            url("../fonts/roboto-mono-v13-latin-500.woff") format("woff"),
        /* Modern Browsers */ url("../fonts/roboto-mono-v13-latin-500.ttf")
            format("truetype"),
        /* Safari, Android, iOS */
            url("../fonts/roboto-mono-v13-latin-500.svg#RobotoMono")
            format("svg"); /* Legacy iOS */
}

body {
    font-family: "Roboto", "Helvetica Neue", sans-serif;
}

a {
    color: #c50000;
    text-decoration: none;
}

a:hover {
    color: #c50000;
    text-decoration: underline;
}

a:active,
a:visited {
    color: #c50000;
}

a.text-black {
    color: #111 !important;
}

a.text-lightgray {
    color: #bbb !important;
}

code {
    font-family: "Roboto Mono", monospace;
    color: black;
    background-color: #eee;
    padding: 0 6px;
    border-radius: 5px;
}

pre > code {
    font-family: "Roboto Mono", monospace;
    color: inherit;
    background-color: inherit;
    border-radius: inherit;
    padding-left: 0px;
}

[type="button"],
button {
    -webkit-appearance: none;
}

.font-family-mono {
    font-family: "Roboto Mono";
}

.lead {
    font-size: 2rem;
    font-weight: bold;
}

.site-header {
    background-color: rgb(255, 255, 255, 0);
}

.site-header a {
    color: #888;
    text-decoration: none;
    font-weight: bold;
}

.site-header a.active {
    color: #111;
}

.btn,
btn-lg {
    border-radius: 0;
}

.btn-primary {
    color: #ffffff !important;
    background-color: #c50000;
    border-color: #c50000;
}

.btn-primary:hover {
    color: #fff;
    background-color: #990000;
    border-color: #990000;
}
.btn-primary:focus {
    color: #fff;
    background-color: #990000;
    border-color: #990000;
    -webkit-box-shadow: 0 0 0 0.2rem rgba(197, 0, 0, 0.5);
    box-shadow: 0 0 0 0.2rem rgba(197, 0, 0, 0.5);
}
.btn-primary:not(:disabled):not(.disabled):active {
    color: #fff;
    background-color: #990000;
    border-color: #990000;
}

.btn-primary:not(:disabled):not(.disabled):active:focus {
    -webkit-box-shadow: 0 0 0 0.2rem rgba(197, 0, 0, 0.5);
    box-shadow: 0 0 0 0.2rem rgba(197, 0, 0, 0.5);
}

.highlight {
    background-color: rgba(197, 0, 0, 0.9);
    background-blend-mode: screen;
    text-shadow: none;
    padding: 0 4px;
}

.bg-cover {
    background-size: cover;
    background-position: center center;
}

.bg-cover-light {
    background-image: url("../img/cover_light.jpg");
}

.bg-data {
    background-image: url("../img/data.jpg");
    background-size: cover;
    background-position: center center;
}

@media (min-width: 768px) {
    .job-position-inset {
        padding-left: 17%;
    }
}

@media (min-width: 768px) {
    .developer2 {
        padding-left: 17%;
    }
}

.bg-bdr {
    background-image: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)),
        url("../img/bdr.jpg");
    background-size: cover;
    background-position: center center;
}

.bg-developer2 {
    background-image: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)),
        url("../img/developer2.jpg");
    background-size: cover;
    background-position: 0% center;
}

.bg-law_enforcement_vertical {
    background-image: url("../img/law_enforcement_vertical_left_light.jpg");
    background-size: cover;
    background-position: center center;
}

.bg-health_care_vertical {
    background-image: url("../img/health_care_vertical_dark.jpg");
    background-size: cover;
    background-position: center center;
}

.bg-public_transport_vertical {
    background-image: url("../img/public_transport_vertical_light.jpg");
    background-size: cover;
    background-position: center center;
}

.bg-inference_engine_product {
    background-image: url("../img/inference_engine_product_dark.jpg");
    background-size: cover;
    background-position: center center;
}

.bg-chip {
    background-image: url("../img/chip.jpg");
    background-size: cover;
    background-position: center center;
}

.bg-privacy-1 {
    background-image: url("../img/darkwindows.jpg");
    background-size: cover;
    background-position: center center;
}

.bg-privacy-2 {
    background-image: url("../img/crossing.jpg");
    background-size: cover;
    background-position: center center;
}

.bg-stats {
    background-image: url("../img/crossing.jpg");
    background-size: cover;
    background-position: center center;
}

.bg-city {
    background-image: url("../img/city.jpg");
    background-size: cover;
    background-position: center center;
}

.bg-timelapse {
    background-image: url("../img/timelapse.jpg");
    background-size: cover;
    background-position: center center;
}

.bg-components {
    background-image: url("../img/components.jpg");
    background-size: cover;
    background-position: center center;
}

.bg-services-1 {
    background-image: url("../img/services_bg01_dark.jpg");
    background-size: cover;
    background-position: center center;
}

.bg-services-2 {
    background-image: url("../img/services_bg02_light.jpg");
    background-size: cover;
    background-position: center center;
}

.bg-services-3 {
    background-image: url("../img/services_bg03_dark.jpg");
    background-size: cover;
    background-position: center center;
}

.lightgray-bg {
    background-color: #f1f1f1;
}

.black-bg {
    background-color: #111;
}

.text-red {
    color: #c50000;
}

.text-black {
    color: #111;
}

.text-darkgray {
    color: #888;
}
.text-lightgray {
    color: #bbb;
}

.lead .text-black,
.text-darkgray {
    text-shadow: 0 0 25px rgba(255, 255, 255, 0.5);
}

.lead .text-white,
.text-lightgray {
    text-shadow: 0 0 25px rgb(0, 0, 0);
}

.text-light-shadow {
    text-shadow: 0 0 10px white;
}

.text-dark-shadow {
    text-shadow: 0 0 10px black;
}

.partners .partners-list img {
    max-width: 100%;
    width: auto;
    height: 75px;
    -o-object-fit: contain;
    object-fit: contain;
    -webkit-filter: saturate(0);
    filter: saturate(0);
    -webkit-transition: 0.12s all;
    -o-transition: 0.12s all;
    transition: 0.12s all;
}

.partners .partners-list img:hover {
    -webkit-filter: saturate(1);
    filter: saturate(1);
}

/*

  Animated Hero for Product page

*/

@-webkit-keyframes server {
    0% {
        opacity: 0;
        -webkit-transform: matrix(0.054941, 0, 0, 0.0549405, 192.081, 154.063);
        transform: matrix(0.054941, 0, 0, 0.0549405, 192.081, 154.063);
    }
    15% {
        opacity: 0;
        -webkit-transform: matrix(0.054941, 0, 0, 0.0549405, 192.081, 154.063);
        transform: matrix(0.054941, 0, 0, 0.0549405, 192.081, 154.063);
    }
    20% {
        opacity: 1;
        -webkit-transform: matrix(0.054941, 0, 0, 0.0549405, 192.081, 160.063);
        transform: matrix(0.054941, 0, 0, 0.0549405, 192.081, 160.063);
    }
    100% {
        opacity: 1;
        -webkit-transform: matrix(0.054941, 0, 0, 0.0549405, 192.081, 160.063);
        transform: matrix(0.054941, 0, 0, 0.0549405, 192.081, 160.063);
    }
}

@keyframes server {
    0% {
        opacity: 0;
        -webkit-transform: matrix(0.054941, 0, 0, 0.0549405, 192.081, 154.063);
        transform: matrix(0.054941, 0, 0, 0.0549405, 192.081, 154.063);
    }
    15% {
        opacity: 0;
        -webkit-transform: matrix(0.054941, 0, 0, 0.0549405, 192.081, 154.063);
        transform: matrix(0.054941, 0, 0, 0.0549405, 192.081, 154.063);
    }
    20% {
        opacity: 1;
        -webkit-transform: matrix(0.054941, 0, 0, 0.0549405, 192.081, 160.063);
        transform: matrix(0.054941, 0, 0, 0.0549405, 192.081, 160.063);
    }
    100% {
        opacity: 1;
        -webkit-transform: matrix(0.054941, 0, 0, 0.0549405, 192.081, 160.063);
        transform: matrix(0.054941, 0, 0, 0.0549405, 192.081, 160.063);
    }
}

@-webkit-keyframes server_mobile {
    0% {
        opacity: 0;
        -webkit-transform: matrix(0.054941, 0, 0, 0.0549405, 1.0808, 112.06346);
        transform: matrix(0.054941, 0, 0, 0.0549405, 1.0808, 112.06346);
        scale: 200%;
    }
    15% {
        opacity: 0;
        -webkit-transform: matrix(0.054941, 0, 0, 0.0549405, 1.0808, 112.06346);
        transform: matrix(0.054941, 0, 0, 0.0549405, 1.0808, 112.06346);
        scale: 200%;
    }
    20% {
        opacity: 1;
        -webkit-transform: matrix(0.054941, 0, 0, 0.0549405, 1.0808, 118.06346);
        transform: matrix(0.054941, 0, 0, 0.0549405, 1.0808, 118.06346);
        scale: 200%;
    }
    100% {
        opacity: 1;
        -webkit-transform: matrix(0.054941, 0, 0, 0.0549405, 1.0808, 118.06346);
        transform: matrix(0.054941, 0, 0, 0.0549405, 1.0808, 118.06346);
        scale: 200%;
    }
}

@keyframes server_mobile {
    0% {
        opacity: 0;
        -webkit-transform: matrix(0.054941, 0, 0, 0.0549405, 1.0808, 112.06346);
        transform: matrix(0.054941, 0, 0, 0.0549405, 1.0808, 112.06346);
        scale: 200%;
    }
    15% {
        opacity: 0;
        -webkit-transform: matrix(0.054941, 0, 0, 0.0549405, 1.0808, 112.06346);
        transform: matrix(0.054941, 0, 0, 0.0549405, 1.0808, 112.06346);
        scale: 200%;
    }
    20% {
        opacity: 1;
        -webkit-transform: matrix(0.054941, 0, 0, 0.0549405, 1.0808, 118.06346);
        transform: matrix(0.054941, 0, 0, 0.0549405, 1.0808, 118.06346);
        scale: 200%;
    }
    100% {
        opacity: 1;
        -webkit-transform: matrix(0.054941, 0, 0, 0.0549405, 1.0808, 118.06346);
        transform: matrix(0.054941, 0, 0, 0.0549405, 1.0808, 118.06346);
        scale: 200%;
    }
}

#g416 {
    -webkit-animation-name: server;
    animation-name: server;
    -webkit-animation-duration: 12s;
    animation-duration: 12s;
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
}

@-webkit-keyframes cables {
    0% {
        opacity: 0;
    }
    17% {
        opacity: 0;
    }
    25% {
        opacity: 1;
    }
}

@keyframes cables {
    0% {
        opacity: 0;
    }
    17% {
        opacity: 0;
    }
    25% {
        opacity: 1;
    }
}

@-webkit-keyframes data_cable {
    from {
        stroke-dashoffset: 0;
    }
    to {
        stroke-dashoffset: 100;
    }
}

@keyframes data_cable {
    from {
        stroke-dashoffset: 0;
    }
    to {
        stroke-dashoffset: 100;
    }
}

@-webkit-keyframes gray_to_red {
    0% {
        stroke: gray;
    }
    20% {
        stroke: gray;
    }
    22% {
        stroke: #ff0000;
    }
    100% {
        stroke: #ff0000;
    }
}

@keyframes gray_to_red {
    0% {
        stroke: gray;
    }
    20% {
        stroke: gray;
    }
    22% {
        stroke: #ff0000;
    }
    100% {
        stroke: #ff0000;
    }
}

.info-graphic {
    overflow-x: auto;
}

#path104,
#path48,
#path48-mobile,
#path104-mobile {
    -webkit-animation-name: data_cable, gray_to_red;
    animation-name: data_cable, gray_to_red;
    -webkit-animation-duration: 20s, 12s;
    animation-duration: 20s, 12s;
    -webkit-animation-direction: reverse, normal;
    animation-direction: reverse, normal;
    -webkit-animation-timing-function: linear, linear;
    animation-timing-function: linear, linear;
    -webkit-animation-iteration-count: infinite, infinite;
    animation-iteration-count: infinite, infinite;
}

#path106,
#path106-mobile {
    -webkit-animation-name: data_cable, cables;
    animation-name: data_cable, cables;
    -webkit-animation-duration: 20s, 12s;
    animation-duration: 20s, 12s;
    -webkit-animation-direction: reverse, normal;
    animation-direction: reverse, normal;
    -webkit-animation-timing-function: linear, linear;
    animation-timing-function: linear, linear;
    -webkit-animation-iteration-count: infinite, infinite;
    animation-iteration-count: infinite, infinite;
    stroke: #ff0000 !important;
}

#path47,
#path47-mobile {
    -webkit-animation-name: data_cable, cables;
    animation-name: data_cable, cables;
    -webkit-animation-duration: 20s, 12s;
    animation-duration: 20s, 12s;
    -webkit-animation-direction: normal, normal;
    animation-direction: normal, normal;
    -webkit-animation-timing-function: linear, linear;
    animation-timing-function: linear, linear;
    -webkit-animation-iteration-count: infinite, infinite;
    animation-iteration-count: infinite, infinite;
    stroke: #ff0000 !important;
}

#g48,
#g49,
#g50 {
    -webkit-animation-name: stack2, show;
    animation-name: stack2, show;
    -webkit-animation-duration: 2s, 12s;
    animation-duration: 2s, 12s;
    -webkit-animation-direction: alternate, normal;
    animation-direction: alternate, normal;
    -webkit-animation-timing-function: cubic-bezier(0.81, -0.02, 0.32, 1.01),
        linear;
    animation-timing-function: cubic-bezier(0.81, -0.02, 0.32, 1.01), linear;
    -webkit-animation-iteration-count: infinite, infinite;
    animation-iteration-count: infinite, infinite;
}

@-webkit-keyframes stack1 {
    from {
        -webkit-transform: translateY(-10px);
        transform: translateY(-10px);
    }
    to {
        -webkit-transform: translateY(10px);
        transform: translateY(10px);
    }
}

@keyframes stack1 {
    from {
        -webkit-transform: translateY(-10px);
        transform: translateY(-10px);
    }
    to {
        -webkit-transform: translateY(10px);
        transform: translateY(10px);
    }
}

@-webkit-keyframes stack2 {
    from {
        -webkit-transform: translateY(-10px);
        transform: translateY(-10px);
    }
    to {
        -webkit-transform: translateY(-5px);
        transform: translateY(-5px);
    }
}

@keyframes stack2 {
    from {
        -webkit-transform: translateY(-10px);
        transform: translateY(-10px);
    }
    to {
        -webkit-transform: translateY(-5px);
        transform: translateY(-5px);
    }
}

#g543,
#g546,
#g549 {
    -webkit-animation-name: stack1, show;
    animation-name: stack1, show;
    -webkit-animation-duration: 2s, 12s;
    animation-duration: 2s, 12s;
    -webkit-animation-direction: alternate, normal;
    animation-direction: alternate, normal;
    -webkit-animation-timing-function: cubic-bezier(0.81, -0.02, 0.32, 1.01),
        linear;
    animation-timing-function: cubic-bezier(0.81, -0.02, 0.32, 1.01), linear;
    -webkit-animation-iteration-count: infinite, infinite;
    animation-iteration-count: infinite, infinite;
}

@-webkit-keyframes blink1 {
    0% {
        opacity: 0.1;
    }
    to {
        opacity: 0.25;
    }
}

@keyframes blink1 {
    0% {
        opacity: 0.1;
    }
    to {
        opacity: 0.25;
    }
}

@-webkit-keyframes show {
    0% {
        -webkit-clip-path: circle(0);
        clip-path: circle(0);
    }
    20% {
        -webkit-clip-path: circle(0);
        clip-path: circle(0);
    }
    23% {
        -webkit-clip-path: circle(500%);
        clip-path: circle(500%);
    }
    100% {
        -webkit-clip-path: circle(500%);
        clip-path: circle(500%);
    }
}

@keyframes show {
    0% {
        -webkit-clip-path: circle(0);
        clip-path: circle(0);
    }
    20% {
        -webkit-clip-path: circle(0);
        clip-path: circle(0);
    }
    23% {
        -webkit-clip-path: circle(500%);
        clip-path: circle(500%);
    }
    100% {
        -webkit-clip-path: circle(500%);
        clip-path: circle(500%);
    }
}

@-webkit-keyframes show_stroke {
    0% {
        stroke: #ffffff;
    }
    20% {
        stroke: #ffffff;
    }
    23% {
        stroke: #ff0000;
    }
    100% {
        stroke: #ff0000;
    }
}

@keyframes show_stroke {
    0% {
        stroke: #ffffff;
    }
    20% {
        stroke: #ffffff;
    }
    23% {
        stroke: #ff0000;
    }
    100% {
        stroke: #ff0000;
    }
}

#path581,
#path580 {
    -webkit-animation-name: blink1, show;
    animation-name: blink1, show;
    -webkit-animation-duration: 1s, 12s;
    animation-duration: 1s, 12s;
    -webkit-animation-direction: alternate, normal;
    animation-direction: alternate, normal;
    -webkit-animation-timing-function: cubic-bezier(0.81, -0.02, 0.32, 1.01),
        linear;
    animation-timing-function: cubic-bezier(0.81, -0.02, 0.32, 1.01), linear;
    -webkit-animation-iteration-count: infinite, infinite;
    animation-iteration-count: infinite, infinite;
}

#g578,
#g580-5 {
    -webkit-animation-name: show;
    animation-name: show;
    -webkit-animation-duration: 12s;
    animation-duration: 12s;
    -webkit-animation-direction: normal;
    animation-direction: normal;
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
}

#path310-69 {
    -webkit-animation-name: show_stroke;
    animation-name: show_stroke;
    -webkit-animation-duration: 12s;
    animation-duration: 12s;
    -webkit-animation-direction: normal;
    animation-direction: normal;
    -webkit-animation-timing-function: linear;
    animation-timing-function: linear;
    -webkit-animation-iteration-count: infinite;
    animation-iteration-count: infinite;
}

@-webkit-keyframes blink2 {
    from {
        opacity: 0.7;
    }
    to {
        opacity: 1;
    }
}

@keyframes blink2 {
    from {
        opacity: 0.7;
    }
    to {
        opacity: 1;
    }
}

#path368 {
    -webkit-animation-name: blink2, show;
    animation-name: blink2, show;
    -webkit-animation-duration: 1s, 12s;
    animation-duration: 1s, 12s;
    -webkit-animation-direction: alternate, normal;
    animation-direction: alternate, normal;
    -webkit-animation-timing-function: cubic-bezier(0.81, -0.02, 0.32, 1.01),
        linear;
    animation-timing-function: cubic-bezier(0.81, -0.02, 0.32, 1.01), linear;
    -webkit-animation-iteration-count: infinite, infinite;
    animation-iteration-count: infinite, infinite;
}

/*
 * Extra utilities
 */

.flex-equal > * {
    -ms-flex: 1;
    -webkit-box-flex: 1;
    flex: 1;
}

@media (min-width: 768px) {
    .flex-md-equal > * {
        -ms-flex: 1;
        -webkit-box-flex: 1;
        flex: 1;
    }
}

@media (max-width: 425px) {
    #svg1 {
        height: 700px !important;
    }
}

@media (max-width: 768px) {
    .display-4 {
        font-size: 2.5rem;
    }

    .lead {
        font-size: 1.5rem;
    }

    #svg1 {
        height: 1100px;
        width: 100%;
        transform: translateY(-5%);
    }

    #g1 {
        transform: translate(0%, -120%);
        scale: 200%;
    }

    #g2 {
        transform: translate(-60%, 60%);
        scale: 240%;
    }

    #g106 {
        scale: 200%;
        transform: matrix(0.0549405, 0, 0, 0.0549405, 70.608, 118.3279);
    }

    #g416 {
        scale: 200%;
        transform: matrix(0.05494054, 0, 0, 0.05494054, 1.0808, 120.06346);
        -webkit-animation-name: server_mobile;
        animation-name: server_mobile;
    }

    #path47,
    #path48,
    #path104,
    #path106 {
        stroke-opacity: 0 !important;
    }

    #path47-mobile,
    #path48-mobile,
    #path104-mobile,
    #path106-mobile {
        stroke-opacity: 1 !important;
    }
}

.display-6 {
    font-size: 1.5rem;
}

.display-7 {
    font-size: 1.25rem;
}

.display-8 {
    font-size: 1.2rem;
}

@media (min-width: 768px) {
    .display-md-2 {
        font-size: 5.5rem;
        font-weight: 300;
        line-height: 1.2;
    }
    .display-md-3 {
        font-size: 4.5rem;
        font-weight: 300;
        line-height: 1.2;
    }
    .display-md-4 {
        font-size: 3.5rem;
        font-weight: 300;
        line-height: 1.2;
    }
    .display-md-5 {
        font-size: 2.25rem;
    }
    .display-md-6 {
        font-size: 1.5rem;
    }
    .display-md-7 {
        font-size: 1.25rem;
    }

    .display-md-8 {
        font-size: 1rem;
    }
}

.display-5 {
    font-size: 2.25rem;
}

.m-1 {
    margin: 1rem;
}

.m-2 {
    margin: 2rem;
}

.m-3 {
    margin: 3rem;
}

.m-4 {
    margin: 4rem;
}

.py-2 {
    padding-top: 1.5rem;
    padding-bottom: 1.5rem;
}

.py-4 {
    padding-top: 2.5rem;
    padding-bottom: 2.5rem;
}

.py-6 {
    padding-top: 4rem;
    padding-bottom: 4rem;
}

.py-7 {
    padding-top: 4.5rem;
    padding-bottom: 4.5rem;
}

.py-8 {
    padding-top: 5.5rem;
    padding-bottom: 5.5rem;
}

.pt-6 {
    padding-top: 4rem;
}

.py-7 {
    padding-top: 4.5rem;
}

.pt-8 {
    padding-top: 5.5rem;
}

.mt-n9 {
    margin-top: -6rem !important;
}

@media (min-width: 768px) {
    .m-md-1 {
        margin: 1rem;
    }

    .m-md-2 {
        margin: 2rem;
    }

    .m-md-3 {
        margin: 3rem;
    }

    .m-md-4 {
        margin: 4rem;
    }

    .py-md-0 {
        padding-top: 0;
        padding-bottom: 0;
    }

    .py-md-6 {
        padding-top: 4rem;
        padding-bottom: 4rem;
    }

    .py-md-7 {
        padding-top: 4.5rem;
        padding-bottom: 4.5rem;
    }
    .py-md-8 {
        padding-top: 5.5rem;
        padding-bottom: 5.5rem;
    }

    .pt-md-6 {
        padding-top: 4rem;
    }
    .pt-md-7 {
        padding-top: 4.5rem;
    }
    .pt-md-8 {
        padding-top: 5.5rem;
    }

    .mt-md-n9 {
        margin-top: -6rem !important;
    }
}

.sm-none {
    display: none;
}

@media (min-width: 768px) {
    .sm-none {
        display: inherit;
    }
}

@media (min-width: 576px) {
    .modal-dialog {
        max-width: 640px;
        margin: 1.75rem auto;
    }
}

.modal-content {
    border: none;
    border-radius: 0;
    -webkit-box-shadow: 0 0 16px #666;
    box-shadow: 0 0 16px #666;
    padding: 1rem;
}

.modal-header {
    border-bottom: none;
    display: block;
}

.modal-footer {
    border-top: none;
}

.modal-title {
    font-size: 3rem;
    font-family: "Roboto", "Helvetica Neue", sans-serif;
    font-weight: bold;
}

.form-group {
    font-family: "Roboto Mono";
}

.form-group label {
    font-size: 0.8rem;
}

.form-control {
    margin-top: 4px;
    margin-bottom: 12px;
    border: none;
    border-radius: 0;
    border-bottom: 1px solid #c50000;
    background-color: #fafafa;
}

#partner-form .form-group {
    margin-bottom: 36px;
}

.close {
    text-shadow: none;
    opacity: 1 !important;
    padding: 0 !important;
    font-size: 0.8rem;
    font-weight: normal;
}

.close:not(:disabled):not(.disabled):focus,
.close:not(:disabled):not(.disabled):hover {
    color: #c50000;
}

.modal-header .close {
    float: right;
}
