html, body {
  background: #EFF3F4;
  font-family: 'Open Sans', serif;
  font-size: 1.15em;
}
*:focus {
  outline: none; /*STUPID BROWSERS*/
  border: none;
}
.ubuntu-bold-font {
  font-family: ubuntu;
  font-weight: 700;
  font-style: normal;
}
/* NAVBAR / LOGOBAR */
.hero .navbar {
  /*background: #F1F2F2;*/
}
.navbar {
  font-family: ubuntu, sans-serif;
  font-weight: 700;
  font-style: normal;
  border-bottom: #fff 2px solid;
}
.navbar-item img {
  max-height: 3rem;
}
/*This overwrites the color behind the logo when hovered*/
.navbar-brand a.navbar-item, .navbar-brand a.navbar-item:hover {
  background-color: transparent !important;
  color: #fff !important;
}
/*Red instead of gray on active nav bar items*/
a.navbar-item.is-active, a.navbar-item.is-active:hover {
  background-color: #FA313B !important;
  color: black !important;
}
/*Hover blue over the nav bar items*/
a.navbar-item:hover {
  background-color: #002556 !important;
  color: #fff !important;
}
.hero-body {
  border-top: white solid 10px;
  border-bottom: white solid 10px;
	position: relative;
}
/*overwrites the huuuuge padding */
.hero.is-medium .hero-body {
  padding-bottom: 0.9rem;
  padding-top: 0.9rem;
}
/*overwrites the blue background*/
.hero.is-info.is-bold {
  background-image: linear-gradient(141deg, #4D4D4D 0%, #494949 71%, #3e3e3e 100%);
}
/*Different background for the pages on the hero section*/
.about-bkg {
  background-image: url(../images/about/creating_steps_800.jpg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}
.services-bkg {
  background-image: url(../images/services/machines_2.jpg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}
.work-usps-bkg {
  background-image: url(../images/work_usps_bkg.jpg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}
.work-bkg {
  background-image: url(../images/work_bkg.jpg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}
.testimonials-bkg {
  background-image: url(../images/testimonials_bkg.jpg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}
/*This was the old carousel but pages that do not have slider still use it, suggest renaming to avoid confusion*/
.carousel {
  width: 98%;
  overflow: hidden;
  display: -ms-flex;
  display: -webkit-flex;
  display: flex;
  flex-wrap: wrap;
  height: 400px;
  outline: 0px solid transparent;
}
.carousel-pages {
  width: 100%;
  overflow: hidden;
  display: -ms-flex;
  display: -webkit-flex;
  display: flex;
  flex-wrap: wrap;
  height: 400px;
  outline: 0px solid transparent;
}
#carousel-company {
  height: 500px;
}
#carousel-company .slider-container {
  min-height: 490px;
}
#carousel-company .slider-pagination .slider-page.is-active, #carousel-company .slider-pagination .slider-page:hover {
  background-color: #830018;
}
#carousel-work {
  height: 400px;
}
#carousel-work .slider-container {
  min-height: 390px;
}
#carousel-work .slider-pagination .slider-page.is-active, #carousel-work .slider-pagination .slider-page:hover {
  background-color: #830018;
}
.special-column-pages {
  background-color: #FA313B;
  padding: 0.9em;
  display: flex;
  flex-direction: column; /**/
  flex: 1 0 auto;
  height: 500px;
  margin: 0 auto 0 80px;
}
.special-column {
  background-color: #FA313B;
  width: 88%;
  padding: 0.9em;
  display: flex;
  flex-direction: column; /**/
  flex: 1 0 auto;
  height: 400px;
  margin: 0 auto;
}
.special-column-pic {
  width: 88%;
  display: flex;
  flex-direction: column; /**/
  flex: 1 0 auto;
  height: 400px;
  margin: 0 auto;
  overflow: hidden;
}
.special-column-pic img {
  max-width: 150%;
  height: 100%;
}
.special-column a.button {
  margin: auto;
  align-self: center;
  font-family: ubuntu, sans-serif;
  font-weight: 700;
  font-style: normal;
  justify-content: flex-end;
}
.special-column p {
  flex: 1 0 auto;
}
/* ---------------------------------------------------------------------- */
/*	glidejs slider
/* ---------------------------------------------------------------------- */
.glide__arrow {
  position: absolute;
  display: block;
  top: 50%;
  z-index: 2;
  color: rgba(255, 0, 4, 0.5);
  text-transform: uppercase;
  font-size: 20px;
  padding: 10px 13px;
  background-color: none /*rgba(255, 255, 255, 0.5)*/ ;
  border: none /*2px solid rgba(255, 255, 255, 0.5)*/ ;
  border-radius: 0%;
  box-shadow: none /*0 0.25em 0.5em 0 rgba(0, 0, 0, 0.1)*/ ;
  text-shadow: 0 0.25em 0.5em rgba(0, 0, 0, 0.1);
  opacity: 1;
  cursor: pointer;
  transition: opacity 150ms ease, border 300ms ease-in-out;
  transform: translateY(-50%);
  line-height: 1;
}
.glide__bullet {
  width: 12px;
  height: 12px;
background-color: rgba(138,138,138,0.5);
}
.glide__bullets {
  bottom: 0.6em;
}
.glide__bullets.g {
  bottom: -1.6em;
}
.glide__bullets.g .glide__bullet {
  width: 15px;
  height: 15px;
}
.glide__bullet--active {
  background-color: rgba(255, 0, 4, 0.5);
}
/* On hover, add a black background color with a little bit see-through */
.glide__arrow--left--g:hover, .glide__arrow--right--g:hover {
  background-color: rgba(0, 0, 0, 0.2);
}
.glide__arrow--left--g {
  left: -0em;
}
.glide__arrow--right--g {
  right: -0em;
}
.glide__arrow--left--h {
  left: -2em;
}
.glide__arrow--right--h {
  right: -2em;
}
/*gives the underline red on some images*/
.glide__slide__cont img.underline {
  width: 100%;
  height: auto;
  max-height: 250;
  border-bottom: #FA313B 3vh solid;
}
.glide__slide__height {
  height: 30vw;
  max-height: 460px;
}
/*MOBILE BREAKPOINT*/
@media screen and (max-width: 768px) {
  .glide__slide__height {
    height: 60vw;
    max-height: 460px;
  }
  .glide__arrow.a {
    position: absolute;
    display: block;
    top: 50%;
    z-index: 2;
    color: white;
    text-transform: uppercase;
    padding: 16px;
    background-color: rgba(0, 0, 0, 0.3);
    border: none;
    border-radius: 0%;
    box-shadow: 0 0.25em 0.5em 0 rgba(0, 0, 0, 0.1);
    text-shadow: 0 0.25em 0.5em rgba(0, 0, 0, 0.1);
    opacity: 1;
    cursor: pointer;
    transition: opacity 150ms ease, border 300ms ease-in-out;
    transform: translateY(-50%);
    line-height: 1;
    height: 100%;
    font-size: 15px;
    width: 24px;
    text-align: center;
  }
  .glide__arrow.g {
    position: absolute;
    display: block;
    top: 50%;
    z-index: 2;
    color: rgba(255, 0, 4, 0.5);
    text-transform: uppercase;
    padding: 16px;
    background-color: rgba(0, 0, 0, 0.0);
    border: none;
    border-radius: 0%;
    box-shadow: 0 0.25em 0.5em 0 rgba(0, 0, 0, 0.0);
    text-shadow: 0 0.25em 0.5em rgba(0, 0, 0, 0.1);
    opacity: 1;
    cursor: pointer;
    transition: opacity 150ms ease, border 300ms ease-in-out;
    transform: translateY(-50%);
    line-height: 1;
    height: 100%;
    font-size: 15px;
    width: 24px;
    text-align: center;
  }
  .glide__arrow--left {
    left: 0em;
  }
  .glide__arrow--right {
    right: 0em;
  }
  .glide__arrow--left--g {
    left: -2em;
  }
  .glide__arrow--right--g {
    right: -2em;
  }
  .glide__bullet {
    width: 22px;
    height: 22px;
  }
  .glide__bullets {
    bottom: -2.9em;
  }
  .glide__bullets.g .glide__bullet {
    width: 15px;
    height: 15px;
  }
  .glide__bullets.g {
    bottom: -1.5em;
  }
  .glide__bullet--active {
    background-color: rgba(255, 0, 4, 0.5)
  }
  .glide__arrow .material-icons {
    font-size: 24px; /* make it the same size as .glide__arrow.g */
  }
}
.glide__slide__cont {
  display: flex;
  flex-direction: row;
  height: 100%;
}
.left-column {
  background-color: #FA313B;
  width: 48%;
  padding: 0.9em;
  display: flex;
  flex-direction: column; /**/
  flex: 1 0 auto; /**/
  align-content: space-between;
  height: 100%;
}
.left-column p {
  flex: 1 0 auto;
}
.left-column p.vcenter {
  align-self: stretch;
  display: flex;
  align-items: center;
}
.left-column h1 {
  margin-bottom: 1rem;
}
.right-column {
  width: 48%;
  display: flex;
  flex-direction: column; /**/
  flex: 1 0 auto; /**/
}
.right-column img {
  width: 100%;
  height: auto;
}
/* ---------------------------------------------------------------------- */
/*	end glidejs slider
/* ---------------------------------------------------------------------- */
/*NEW MODAL CONTENT*/
.modal-row > .modal-column {
  padding: 0 8px;
}
.modal-row:after {
  content: "";
  display: table;
  clear: both;
}
/* Create four equal columns that floats next to eachother */
.modal-column {
  float: left;
  width: 25%;
}
/* The Modal (background) */
.modal {
  display: none;
  position: fixed;
  z-index: 99999;
  padding-top: 100px;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: auto;
  background-color: black;
}
/* Modal Content */
.modal-content {
  position: relative;
  margin: auto;
  padding: 0;
  width: 90%;
  max-width: 1200px;
  background-color: black;
  /*background-color: #fefefe;*/
}
/*image enlarges depend on width and height*/
.port{width:auto; height:100%; max-height:90vh;}
.land{width:100%; height:auto; max-width:90vw;}

/* The Close Button */
.close {
  color: white;
  position: absolute;
  top: 10px;
  right: 25px;
  font-size: 35px;
  font-weight: bold;
}
.close:hover, .close:focus {
  color: #999;
  text-decoration: none;
  cursor: pointer;
}
/* Hide the slides by default */
.mySlides {
  display: none;
}
/* Next & previous buttons */
.prev, .next {
  cursor: pointer;
  position: absolute;
  display: block;
  top: 50%;
  width: auto;
  padding: 16px;
  /*margin-top: -50px;*/
  color: white;
  font-weight: bold;
  font-size: 20px;
  transition: 0.6s ease;
  border-radius: 0 3px 3px 0;
  user-select: none;
  -webkit-user-select: none;
  /*height: 100%;*/
  transform: translateY(-50%);
  line-height: 100%;
  text-align: center;
}
/* Position the "next button" to the right */
.next {
  right: 0;
  border-radius: 3px 0 0 3px;
}
/* On hover, add a black background color with a little bit see-through */
.prev:hover, .next:hover {
  background-color: rgba(0, 0, 0, 0.2);
}
/* Number text (1/3 etc) */
.numbertext {
  color: #f2f2f2;
  font-size: 12px;
  padding: 8px 12px;
  position: absolute;
  top: 0;
}
/* Caption text */
.caption-container {
  text-align: center;
  background-color: black;
  padding: 2px 16px;
  color: white;
}
img.demo {
  opacity: 0.6;
}
.active, .demo:hover {
  opacity: 1;
}
img.hover-shadow {
  transition: 0.3s;
}
.hover-shadow:hover {
  box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2), 0 6px 20px 0 rgba(0, 0, 0, 0.19);
}
/*END NEW MODAL CONTENT*/
/* ---------------------------------------------------------------------- */
/*	Miscellaneous
/* ---------------------------------------------------------------------- */
.top40 {
  margin-top: 40px;
}
.bottom40 {
  margin-bottom: 40px;
}
/*this isn't just used in work it is used whenever you want a white bkg section*/
.our-work {
  background-color: #fff;
}
.push-left {
  margin-right: 10px;
}
.push-right {
  margin-left: 10px;
}
.push-down {
  margin-top: 10px;
}
.no-overflow {
  overflow: hidden;
}
.card {
  height: 100%;
  box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.18) !important;
}
.card-image img {
  border-bottom: #FA313B 3vh solid;
}
.is-shady {
  animation: flyintoright .4s backwards;
  background: #fff;
  box-shadow: rgba(0, 0, 0, .1) 0 1px 0;
  border-radius: 4px;
  display: inline-block;
  margin: 10px;
  position: relative;
  transition: all .2s ease-in-out;
}
.is-shady:hover {
  box-shadow: 0 10px 16px rgba(0, 0, 0, .13), 0 6px 6px rgba(0, 0, 0, .19);
}
.big-title {
  font-size: 3rem;
  color: #FA313B;
}
.big-title span {
  color: #474F59;
}
.big-title-work {
  font-size: 3rem;
  color: #00338B;
  text-align: center;
  width: 100%;
}
.no-line {
  border: none !important;
}
img.icon {
  height: 1em;
  width: 1em;
  top: .125em;
  position: relative;
}
.free_quote {
  background-color: #00338B;
  padding: 30px;
}
.free_quote h1 {
  color: white;
  line-height: 3rem;
}
.is-quote {
  background-color: white;
  border-color: transparent;
  border-radius: 0;
  color: #00338B;
  font-size: 1.5rem;
  font-family: ubuntu;
  font-weight: 700;
  font-style: normal;
}
.to-right {
  right: 0;
}
#myBtn {
  display: none; /* Hidden by default */
  position: fixed; /* Fixed/sticky position */
  bottom: 20px; /* Place the button at the bottom of the page */
  right: 30px; /* Place the button 30px from the right */
  z-index: 99; /* Make sure it does not overlap */
  border: none; /* Remove borders */
  outline: none; /* Remove outline */
  color: white; /* Text color */
  cursor: pointer; /* Add a mouse pointer on hover */
  padding: 15px; /* Some padding */
  border-radius: 10px; /* Rounded corners */
  font-size: 18px; /* Increase font size */
  background: #FA313B url(/images/scroll-top.png) no-repeat 50% 48%; /* #830018 darker red */
}
#myBtn:hover {
  background-color: #555; /* Add a dark-grey background on hover */
}
.button.is-reddish {
  background-color: #830018;
  border-color: transparent;
  color: whitesmoke;
  font-weight: 800;
  border-radius: 0rem;
  margin: 30px;
}
.card-image {
  margin: 10px;
}
/* ---------------------------------------------------------------------- */
/*	end misc
/* ---------------------------------------------------------------------- */
/*CONTACT US SECTION */
.map-bg {
  background-image: url(../images/home/map.png);
  background-size: cover;
  background-repeat: no-repeat;
}
.control {
  text-align: center;
}
/* FOOTER */
.footer {
  background-image: linear-gradient(360deg, #00132B 0%, #002556 71%, #224370 100%);
  border-top: white solid 10px;
}
.footer {
  color: white;
}
@media screen and (max-width: 1087px) {
  .navbar-menu {
    background-color: #F1F2F2;
  }
}
/*MOBILE BREAKPOINT*/
@media screen and (max-width: 768px) {
  html.has-navbar-fixed-top {
    padding-top: 5.01rem;
  }
  .navbar-burger {
    height: 5rem;
    width: 5rem;
  }
  .navbar-burger span {
    height: 2px;
    width: 20px;
  }
  .hero-body {
    padding: 3rem 0rem;
  }
  .carousel .container {
    margin: 0 6%;
  }
  .special-column {
    padding: 5% 10%;
    /* margin: 0 0%;
    height: 150%; */
  }
  .item-1 {
    width: 100%;
    text-align: center;
    white-space: normal;
  }
  .special-column-pages {
    padding: 5%;
    /* margin: 0 0%;
    height: 150%; 
    position: absolute;*/
    height: 400px;
    display: flex;
    margin: 0 auto;
    white-space: pre-wrap;
  }
  .special-column-pages .button-container {
    margin-top: auto;
    margin-bottom: 20px;
  }
  .special-column-pages h1 {
    margin-bottom: 1rem;
  }
  .special-column-pages p {
    font-size: calc(15px + 6 * ((100vw - 320px) / 680));
  }
  .special-column h1 {
    margin-bottom: 0rem;
  }
  .left-column {
    padding: 0 0.9rem;
  }
  .left-column h1 {
    margin-bottom: 0rem;
    margin-top: 0rem;
  }
  .left-column p.push-down {
    margin-top: 0px;
  }
  .left-column p {
    flex: 0.1 0 auto;
  }
  .left-column p.vcenter {
    align-self: auto;
    display: block;
    align-items: center;
  }
  .special-column p {
    font-size: calc(12px + 6 * ((100vw - 320px) / 680));
  }
  .left-column p {
    font-size: calc(12px + 6 * ((100vw - 320px) / 680));
  }
  .special-column a {
    font-size: calc(16px + 6 * ((100vw - 320px) / 680));
  }
  .special-column a.button {
    margin-top: 8%;
  }
  .big-title {
    padding-right: 1rem;
    border-bottom: black 1px solid;
  }
  .footer {
    font-size: calc(11px + 6 * ((100vw - 320px) / 680));
  }
  a.navbar-item:hover {
    background-color: #F1F2F2 !important;
    color: black !important;
  }
  .work-usps-bkg {
    background: none;
  }
  .work-bkg {
    background: none;
  }
  .about-bkg {
    background: none;
  }
  .services-bkg {
    background: none;
  }
  .testimonials-bkg {
    background: none;
  }
  /*OVERWRITES THE PADDING ON COLUMNS FOR MOBILE*/
  .section {
    padding: 0 !important;
    overflow: hidden;
  }
  .padded {
    padding: 15px;
  }
  .extra-padded {
    padding: 25px;
  }
  .left-column {
    height: 295px;
  }
	
	.button.is-reddish {
  margin: 30px 10px;
}
	
	
}
/*MOBILE BREAKPOINT END*/
/*TABLET BREAKPOINT*/
@media screen and (min-width: 769px) {
  html.has-navbar-fixed-top {
    padding-top: 5.10rem;
  }
  .navbar-item img {
    height: 7vw;
  }
  .navbar-burger {
    height: 5rem;
    width: 5rem;
  }
  .navbar-burger span {
    height: 2px;
    width: 20px;
  }
  .hero-body {
    padding: 3rem 0rem;
  }
  .carousel .container {
    margin: 0 6%;
  }
  .special-column {
    /* width:44vw;
    padding: 2% 2%;
    margin: 0 1.5%;
    height: 112%;
    position: absolute;
    top: -5.8%; */
  }
  .special-column-pages {
    padding: 3%;
    /* margin: 0 0%;
    height: 150%; */
    position: absolute;
    height: 400px;
    width: 400px;
    display: flex;
    margin-right: 5%;
  }
  .special-column-pages h1 {
    margin-bottom: 1rem;
  }
  .to-right {}
  .special-column-pages .button-container {
    margin-top: auto;
    margin-bottom: 0px;
  }
  .special-column h1 {
    margin-bottom: 0rem;
  }
  .special-column p {
    font-size: calc(7.2px + 6 * ((100vw - 320px) / 680));
  }
  .left-column h1 {
    margin-bottom: 0rem;
  }
  .left-column p {
    font-size: calc(7.2px + 6 * ((100vw - 320px) / 680));
  }
  .big-title {
    padding-right: 1rem;
    border-right: #00338B 2px solid;
  }	
	.button.is-reddish {
/*	  margin: 30px 10px;*/
	  margin: 15px 5px;
	}
	.usps-buttons .button.is-reddish {
	  margin: 50px 5px;
	}
	
.video-wrapper {
	overflow: hidden;
	position: absolute;
	height: 100%;
	width: 100%;
	margin-top:-16px;
/*  z-index: -1;*/
}
.video-wrapper video {
  position: absolute;
  height: auto;
  width: 100%;
  min-height: 100%;
}
audio, canvas, video {
  display: inline-block;
}
}
/*TABLET BREAKPOINT END*/
/*DESKTOP BREAKPOINT*/
@media screen and (min-width: 1024px) {
  html.has-navbar-fixed-top {
    padding-top: 4.10rem;
  }
  .special-column p {
    font-size: 1rem;
  }
  .left-column p {
    font-size: 1rem;
  }
  .special-column h1 {
    margin-bottom: 1rem;
  }
  .left-column h1 {
    margin-bottom: 1rem;
  }
  .special-column-pages {
    width: 33%;
    padding: 1% 2%;
    margin: 0 1.5%;
    height: 112%;
    position: absolute;
    top: -5.8%;
  }
  .special-column-pages p {
    font-size: 1rem;
  }
  .special-column-pages h1 {
    font-size: 3rem;
    margin-bottom: 1rem;
  }
  .special-column-pages .button-container {
    margin-top: auto;
    margin-bottom: 20px;
  }
}
/*DESKTOP BREAKPOINT END*/

