.remove-this {
    display: none;
    height: 0;
    width: 0;
    opacity: 0;
}
/* FONTS */
@font-face {
    font-family: "ABBvoice";
    font-weight: 100;
    font-style: normal;
    src: url("../fonts/ABBvoice_Lt.ttf");
}

@font-face {
    font-family: "ABBvoice";
    font-weight: 400;
    font-style: normal;
    src: url("../fonts/ABBvoice_Rg.ttf");
}

@font-face {
    font-family: "ABBvoice";
    font-weight: 700;
    font-style: normal;
    src: url("../fonts/ABBvoice_Md.ttf");
}

@font-face {
    font-family: "ABBvoice";
    font-weight: 900;
    font-style: normal;
    src: url("../fonts/ABBvoice_Bd.ttf");
}





/* DEFAULTS and BOOTSTRAP OVERRIDES */
html, body {
    font-size: 16px;
    font-weight: 400;
    font-family: "ABBvoice", arial, sans-serif;
    color: #262626;
}

h1 {
    font-size: 1.5rem;
    font-weight: 700;
    letter-spacing: 1px;
}

@media only screen and (min-width : 768px) {
    h1 {
        font-size: 1.875rem;
        letter-spacing: 1px;
    }
}

@media only screen and (min-width : 992px) {
    h1 {
        font-size: 2.5rem;
        letter-spacing: 1px;
    }
}

@media only screen and (min-width : 1200px) {
    h1 {
        font-size: 3.125rem;
        letter-spacing: 1px;
    }
}

h2 {
    font-size: 1.4rem;
    font-weight: 400;
    letter-spacing: 1px;
}

@media only screen and (min-width : 768px) {
    h2 {
        font-size: 1.7rem;
        letter-spacing: 1px;
    }
}

@media only screen and (min-width : 992px) {
    h2 {
        font-size: 2.2rem;
        letter-spacing: 1px;
    }
}

@media only screen and (min-width : 1200px) {
    h2 {
        font-size: 2.5rem;
        letter-spacing: 1px;
    }
}

h3 {
    font-size: 1.3rem;
    font-weight: 900;
    letter-spacing: 1px;
}

@media only screen and (min-width : 768px) {
    h3 {
        font-size: 1.3rem;
        font-weight: 900;
        letter-spacing: 1px;
    }
}

@media only screen and (min-width : 992px) {
    h3 {
        font-size: 1.5rem;
        font-weight: 900;
        letter-spacing: 1px;
    }
}

@media only screen and (min-width : 1200px) {
    h3 {
        font-size: 1.5625rem;
        font-weight: 900;
        letter-spacing: 1px;
    }
}

h4 {
    font-size: 1.1rem;
    font-weight: 700;
}

    h4.abb_text--red-bar::before {
        width: 12px;
        height: 3px;
    }

p {
    font-size: 16px;
    font-size: 1rem;
    font-weight: 400;
}

strong {
    font-weight: 900;
}

.hide-until-md {
    display: none;
}

.hide-md-up {
    display: block;
}

img.hide-md-up {
    margin-left: auto;
    margin-right: auto;
}

@media only screen and (min-width : 992px) {
    .hide-until-md {
        display: block;
    }

    .hide-md-up {
        display: none;
    }
}

.btn.btn-default {
    color: white;
    font-size: 14px;
    line-height: 14px;
    padding: 12px 37px 7px;
    font-weight: 700;
    text-transform: uppercase;
    border-radius: 20px;
    background-color: #ff0b17;
    border: none;
    border: 0;
    height: 36px;
    margin-bottom: 15px;
}

@media only screen and (max-width : 475px) {
    .btn.btn-default {
        width: 100%;
        display: block;
    }
}

@media only screen and (min-width : 768px) {
    .btn.btn-default {
        color: white;
        font-size: 17px;
        line-height: 17px;
        padding: 12px 37px 10px;
        font-weight: 700;
        text-transform: uppercase;
        border-radius: 20px;
        background-color: #ff0b17;
        border: none;
        border: 0;
        height: 39px;
    }
}

.abb_watch_now_trigger {
    cursor: pointer;
    width: 100%;
    width: -moz-available; /* WebKit-based browsers will ignore this. */
    width: -webkit-fill-available; /* Mozilla-based browsers will ignore this. */
    width: fill-available;
}

.btn.btn-default.btn--wrap-text {
    display: inline-block;
    height: auto;
}

.abb_clear-fix {
    height: 0;
    float: none;
    clear: both;
}

    .abb_clear-fix::after {
        content: "";
        display: table;
        clear: both;
        height: 0;
    }

.abb_img_with_border {
    border: 1px solid #333;
}




/* TEXT MODS */
.abb_text {
}

.abb_text--lighten-colors {
    color: #ffffff;
}

.abb_text--invert-colors {
    color: #ffffff;
}

    .abb_text--invert-colors .abb_text--red-bar::before {
        background-color: #ffffff;
    }

.abb_text--red-bar {
    position: relative;
    margin-top: 18px;
}

    .abb_text--red-bar::before {
        content: "";
        position: absolute;
        display: block;
        width: 46px;
        height: 6px;
        background-color: #ff0b17;
        margin-top: -18px;
    }

.text-center.abb_text--red-bar::before {
    left: 50%;
    transform: translateX(-50%);
}





/* BLOCKS */
/* large top container */
.abb_hero {
    background-position: center;
    background-size: cover;
    padding: 61px 0 25px;
    position: relative;
}

@media only screen and (min-width : 768px) {
    .abb_hero {
        padding: 40px 0;
    }
}

@media only screen and (min-width : 992px) {
    .abb_hero {
        padding: 85px 0;
    }
}

@media only screen and (min-width : 1200px) {
    .abb_hero {
        padding: 170px 0;
    }
}

.abb_hero::before {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: rgba(0,0,0,.55)
}

.abb_hero__title {
}

.abb_hero__sub-head {
}

.abb_hero__description {
    font-size: 1.2rem;
}

@media only screen and (min-width : 768px) {
    .abb_hero__description {
        font-size: 1.25rem;
    }
}

@media only screen and (min-width : 992px) {
    .abb_hero__description {
        font-size: 1.35rem;
    }
}

@media only screen and (min-width : 1200px) {
    .abb_hero__description {
        font-size: 1.525rem;
    }
}

#abb_hero_button {
    position: absolute;
    right: 0;
    top: 0;
    left: 0;
    border-radius: 0;
}

@media only screen and (min-width : 768px) {
    #abb_hero_button {
        right: 20px;
        top: 20px;
        left: auto;
        border-radius: 20px;
    }
}

/* standalone heading with spacing */
.abb_heading-strip {
    padding: 38px 0;
}

.abb_heading-strip__heading {
}

/* container for the slider and its components */
.abb_slider {
    margin: 0;
    padding: 0;
    border: 0;
    float: none;
    clear: both;
}

.abb_slider__left-half {
    position: relative;
    background-position: top right;
    background-size: cover;
}

@media only screen and (max-width: 1199px) {
    .abb_slider__left-half {
        padding: 15px;
    }
}

.abb_slider__left-half::before {
    content: "";
    z-index: 100;
    display: block;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: rgba(255,11,23,.55);
}

.abb_slider__left-half * {
    position: relative;
    z-index: 200;
}

@media only screen and (min-width : 768px) {
    .abb_slider__left-half {
    }
}

@media only screen and (min-width : 992px) {
    .abb_slider__left-half {
    }
}

@media only screen and (min-width : 1200px) {
    .abb_slider__left-half {
        width: 30%;
        display: inline-block;
        margin: 0;
        padding: 40px 50px;
        border: 0;
        float: left;
    }
}

@media only screen and (min-width : 1650px) {
    .abb_slider__left-half {
        padding: 80px 100px;
    }
}
/* left side of slider, red test area */
.abb_slide-description {
    display: none;
}

@media only screen and (max-width: 1199px) and (min-width: 600px) {
    .abb_slide-description {
        max-width: 300px;
    }
}

.abb_slide-description--active {
    display: block;
}

.abb_slide-description__heading {
}

.abb_slide-description__text {
}

.abb_slide-description__counter {
    font-size: 20px;
    font-weight: 700;
    line-height: 20px;
    margin-bottom: 32px;
    display: block;
}

/* slider container */
.abb_slider__right-half {
}

@media only screen and (min-width : 768px) {
    .abb_slider__right-half {
    }
}

@media only screen and (min-width : 992px) {
    .abb_slider__right-half {
    }
}

@media only screen and (min-width : 1200px) {
    .abb_slider__right-half {
        width: 70%;
        display: inline-block;
        margin: 0;
        padding: 0;
        border: 0;
        float: right;
    }
}
/* an actual instance of a slide */
.abb_slide {
    display: block;
}

.abb_slide--active {
    display: block;
}

.abb_slide__content {
    width: inherit;
}
/* slider controls */
.slick-arrow {
    position: absolute;
    z-index: 500;
}

.slick-dots li button::before {
    content: url(../images/slick-inactive-dot.png);
}

.slick-dots li.slick-active button::before {
    content: url(../images/slick-active-dot.png);
}

.abb_slider__dot-container {
    background-color: #262626;
    padding-top: 30px;
    padding-bottom: 30px;
    position: relative;
}

.slick-dotted.slick-slider {
    margin-bottom: 0;
}

.slick-dots {
    bottom: auto;
    position: relative;
    z-index: 600;
}

.slick-prev {
    left: 5px;
}

    .slick-prev::before {
        background-image: url(../images/prev-arrow.png);
    }

@media only screen and (min-width : 1200px) {
    .slick-prev {
        left: 38.857%;
        left: calc(-42.857% + 46px);
    }
}

.slick-next {
    right: 20px;
}

@media only screen and (min-width: 900px) {
    .slick-next {
        right: 36px;
    }
}

.slick-next::before {
    background-image: url(../images/next-arrow.png);
    color: white;
}

@media only screen and (min-width : 1200px) {
    .slick-next {
        right: 60px;
    }
}
/* modify tops on awkward sizes. */
@media only screen and (max-width : 1649px) and (min-width: 1200px) {
    .slick-prev, .slick-next {
        top: 89%;
        top: calc(100% - 60px);
    }
}
/* control their sizes */
.slick-arrow, .slick-arrow::before {
    background-size: 30px 30px;
    width: 30px;
    height: 30px;
    content: "";
    display: inline-block;
}

@media only screen and (min-width: 900px) {
    .slick-arrow, .slick-arrow::before {
        background-size: 46px 46px;
        width: 46px;
        height: 46px;
    }
}

.abb_content {
    padding: 65px 0;
}

footer.abb_content a {
    text-decoration: none;
}

.abb_content__list {
    padding-left: 15px;
    margin-bottom: 20px;
}

.abb_content__list-item {
    margin-bottom: 10px;
}

.abb_mining-background {
    position: relative;
    background-position: top center;
    background-size: cover;
}

    .abb_mining-background * {
        position: relative;
        z-index: 200;
    }

.abb_track {
    display: flex;
}

@media only screen and (min-width: 701px) {
    .abb_track {
        max-width: 1180px;
        margin: 0 auto;
    }
}

.abb_track-slide {
    display: inline-block;
    padding: 0;
    margin: 0;
    border: 0;
}

.abb_track-slide__link {
    border: 0;
    padding: 0;
    margin: 0;
    text-decoration: none;
}

.abb_form {
    position: relative;
    background-color: #f3f3f4;
}

    .abb_form::before {
        position: absolute;
        top: 0;
        bottom: 0;
        left: 0;
        right: 50%;
        background-image: url("../images/drill-form.jpg");
        background-size: cover;
        z-index: 100;
        content: "";
    }

    .abb_form#abb_upstream_ops::before {
        background-image: url("../images/worker-form.jpg");
    }

    .abb_form#abb_any_size_ops::before {
        background-image: url("../images/any_size_op_form.jpg");
    }

@media only screen and (max-width: 767px) {
    .abb_form::before {
        content: none;
    }
}

@media only screen and (max-width: 767px) {
    #abb_form__left-side {
        background-image: url("../images/drill-form.jpg");
        background-size: cover;
        background-position: center center;
        padding-top: 100px;
        padding-bottom: 100px;
    }

    #abb_form__right-side {
        padding-top: 25px;
        padding-bottom: 25px;
    }
}

.abb_form > .container {
    padding-top: 200px;
    padding-bottom: 200px;
    z-index: 200;
    position: relative;
}

@media only screen and (max-width: 767px) {
    .abb_form > .container {
        padding-top: 0;
        padding-bottom: 0;
    }
}

@media only screen and (min-width: 767px) {
    .abb_form__extra-content {
        position: absolute;
        bottom: 0;
        left: 0;
        right: 0;
        z-index: 1000;
        padding-bottom: 40px;
    }
}

.abb_form .abb_form__extra-content p, .abb_form__extra-content p a {
    font-size: 18px;
    font-weight: 400;
    color: #000;
}

.abb_form__extra-content p a {
    text-decoration: underline;
}

.abb_form__h3 {
    font-weight: 100;
    line-height: 1.4;
    max-width: 340px;
}

.abb_form__h1 {
    line-height: 1.3;
}

    .abb_form__h1.abb_text--red-bar::before {
        margin-top: -40px;
    }

@media only screen and (max-width: 767px) {
    .abb_form__h1.abb_text--red-bar::before {
        margin-top: -20px;
    }
}

.abb_form p {
    font-weight: 700;
}

    .abb_form p.abb_form__para {
        font-weight: 400;
    }

.abb_form button[type='submit'] {
    margin-top: 20px;
}

.abb_form input[type="checkbox"] {
    background-color: transparent;
    border-radius: 0;
    border: solid 2px #000000;
    max-width: 16px;
    width: 16px;
    line-height: 16px;
    font-size: 16px;
    margin-top: 3px;
}

.abb_form__check--left {
    max-width: 16px;
    width: 16px;
}

.abb_form__check--right {
    max-width: 95%;
    max-width: calc(99% - 17px);
    width: 100%;
}

.abb_form .abb_form__check {
    display: inline-block;
    vertical-align: top;
}

.abb_form .form-check-label {
    max-width: 95%;
    max-width: calc(99% - 17px);
    font-size: 14px;
}

.abb_form input[type="text"], .abb_form input[type="email"], .abb_form input[type="tel"] {
    background-color: #ffffff;
    color: #000000;
    font-weight: 700;
    border-color: #ffffff;
    border-radius: 0;
    padding-bottom: 6px;
    padding-top: 8px;
    -webkit-box-shadow: none;
    -moz-box-shadow: none;
    box-shadow: none;
}

    .abb_form input[type="text"]::-webkit-input-placeholder { /* Chrome/Opera/Safari */
        color: #000000;
    }

    .abb_form input[type="email"]::-webkit-input-placeholder { /* Chrome/Opera/Safari */
        color: #000000;
    }

    .abb_form input[type="tel"]::-webkit-input-placeholder { /* Chrome/Opera/Safari */
        color: #000000;
    }

    .abb_form input[type="text"]::-moz-placeholder { /* Firefox 19+ */
        color: #000000;
    }

    .abb_form input[type="email"]::-moz-placeholder { /* Firefox 19+ */
        color: #000000;
    }

    .abb_form input[type="tel"]::-moz-placeholder { /* Firefox 19+ */
        color: #000000;
    }

    .abb_form input[type="text"]:-ms-input-placeholder { /* IE 10+ */
        color: #000000;
    }

    .abb_form input[type="email"]:-ms-input-placeholder { /* IE 10+ */
        color: #000000;
    }

    .abb_form input[type="tel"]:-ms-input-placeholder { /* IE 10+ */
        color: #000000;
    }

    .abb_form input[type="text"]:-moz-placeholder { /* Firefox 18- */
        color: #000000;
    }

    .abb_form input[type="email"]:-moz-placeholder { /* Firefox 18- */
        color: #000000;
    }

    .abb_form input[type="tel"]:-moz-placeholder { /* Firefox 18- */
        color: #000000;
    }

/* FF follows stricter dom rules, and doesn't allow pseudo-elements to be clicked, as they are out of the main doc flow. we're going to add some fancy css here to allow the slider buttons to launch the event triggers */
.slick-prev::before, .slick-next::before {
    pointer-events: all;
    cursor: pointer;
    z-index: 1000;
}

.multimediaVideo {
    position: relative;
}

    .multimediaVideo::after {
        background-image: url(../images/media-sprite.png?1513348063);
        background-position-x: -80px;
        background-position-y: 0px;
        color: rgb(38, 38, 38);
        cursor: pointer;
        display: block;
        font-family: ABBVoice, Verdana, Arial, sans-serif;
        font-size: 16px;
        height: 30px;
        line-height: 20px;
        position: absolute;
        right: 0px;
        text-size-adjust: 100%;
        top: 0;
        width: 29px;
        content: " ";
        z-index: 1000;
    }

.multimediaVideo__overlay {
    position: absolute;
    top: 20%;
    bottom: 20%;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1001;
}

img.multimediaVideo__overlay {
    height: 60%;
    width: auto;
}

.copyright-div a {
    text-decoration: none;
    color: #337ab7;
}

.modal-body {
    margin: 20px;
}