body,
body * {
  margin: 0;
  padding: 0;
}
#ag {
  width: 100%;
  max-width: 776px;
  margin: min(20px, max(0px, calc(50vw - 388px))) auto;
  text-align: left;
  background: #fff;
  border: solid 2px #0251a0;
  -webkit-font-variant-ligatures: none;
          font-variant-ligatures: none;
}
#ag,
h1,
h2,
h3,
h4,
h5,
h6,
p,
ul,
ol {
  font-family: Arial, Helvetica, Sans-Serif;
  color: #000;
  font-size: 14px;
  line-height: 19px;
}
h1,
h2,
h3,
h4,
h5,
h6,
p,
ul,
ol {
  margin: 15px 0;
}
h1 {
  font-size: 28px;
  line-height: 32px;
  color: #f90;
}
h2 {
  font-size: 20px;
  line-height: 25px;
  font-weight: 400;
}
h3,
p[role="heading"][aria-level="3"] {
  font-weight: bold;
  font-size: 16px;
  line-height: 20px;
  color: #0251a0;
  margin-bottom: 0;
}
h3.margin,
p[role="heading"][aria-level="3"].margin {
  margin-bottom: 10px;
}
.contact h3,
.contact p[role="heading"][aria-level="3"] {
  font-weight: 400;
  font-size: 22px;
  line-height: 26px;
  color: #fff;
  margin-bottom: 15px;
}
h3 + p,
h3 + ul,
p[role="heading"][aria-level="3"] + p,
p[role="heading"][aria-level="3"] + ul {
  margin-top: 0;
}
a {
  color: inherit;
  text-decoration: none;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
a:hover {
  color: #0251a0;
  text-decoration: underline;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
ul {
  list-style-type: none;
}
li {
  position: relative;
  padding-left: 15px;
}
ul li:before {
  position: absolute;
  top: 7px;
  left: 1px;
  content: '';
  height: 6px;
  width: 6px;
  background-color: #0251a0;
}
ul ul {
  margin: 0;
}
header {
  position: relative;
  width: 100%;
  max-width: 100%;
}
.hero {
  display: block;
  width: 100%;
}
.logo {
  position: absolute;
  width: 120px;
  top: min(30px, 4.5vw);
  right: min(30px, 4.5vw);
  display: block;
}
.claimbox {
  position: absolute;
  width: 100%;
  max-width: 100%;
  bottom: 0;
  background-color: rgba(2,30,100,0.7);
}
.claimbox img {
  display: block;
  width: 400px;
  max-width: calc(100% - 60px);
  padding: 15px min(30px, 4.5vw) 10px min(30px, 4.5vw);
}
main {
  padding: 0 min(30px, 4.5vw) min(30px, 4.5vw) min(30px, 4.5vw);
}
.content {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row wrap;
          flex-flow: row wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: start;
}
.infobox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-flow: row nowrap;
          flex-flow: row nowrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-column-gap: 16px;
     -moz-column-gap: 16px;
          column-gap: 16px;
}
.infobox div {
  width: calc((100% - 32px) / 3);
}
.infobox p {
  margin: 0;
  -webkit-hyphens: auto;
      -ms-hyphens: auto;
          hyphens: auto;
}
.job {
  width: calc((200% - 85px) / 3);
}
.contact {
  width: calc((100% - 85px) / 3);
  background-color: #0251a0;
  padding: 0 15px;
  margin-bottom: 15px;
}
.contact,
.contact p,
.contact a {
  color: #fff;
}
.info p {
  margin-bottom: 0;
}
.linewrap {
  margin: 20px 0 5px 0;
}
.line {
  height: 3px;
  background-color: #e0e0e0;
}
.thinline {
  height: 1px;
  background-color: #e0e0e0;
}
.apply-btn {
  display: inline-block;
  background-color: #f90;
  padding: 18px 35px;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.apply-btn:hover {
  background-color: #0251a0;
  -webkit-box-shadow: inset 0px 0px 8px rgba(0,0,0,0.2);
          box-shadow: inset 0px 0px 8px rgba(0,0,0,0.2);
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.apply-btn p,
.apply-btn a {
  margin: 0;
  padding: 0;
  font-size: 16px;
  line-height: 16px;
  color: #fff;
  font-weight: 400;
}
@media all and (max-width: 699px) {
  #ag {
    border: none;
  }
  h1 {
    font-size: 23px;
    line-height: 28px;
  }
  h3 {
    font-size: 16px;
    line-height: 20px;
  }
  .contact h3 {
    font-size: 18px;
    line-height: 23px;
  }
}
@media all and (max-width: 640px) {
  .logo {
    position: relative;
    width: 90px;
    top: 0;
    left: 0;
    margin: min(30px, 4.5vw);
  }
  .claimbox {
    position: relative;
    bottom: auto;
    background-color: #0251a0;
  }
  .claimbox img {
    width: 280px;
  }
  .job,
  .contact {
    width: 100%;
  }
}
@media (max-width: 480px) {
  #ag {
    -webkit-hyphens: auto;
        -ms-hyphens: auto;
            hyphens: auto;
  }
  .infobox {
    display: block;
  }
  .infobox div {
    width: 100%;
    margin-bottom: 15px;
  }
}
@media print {
  #ag {
    margin: 0;
    max-width: 100%;
    border-width: 0;
  }
  header,
  .job > div {
    page-break-inside: avoid;
  }
}
