
@font-face {
    font-family: "Gilroy";
    src: url("../../fonts/Gilroy-Extrabold.eot");
    src: url("../../fonts/Gilroy-Extrabold.ttf") format("truetype"),
        url("../../fonts/Gilroy-Extrabold/8b7d8b69c993f3aa.eot") format("embedded-opentype"),
        url("../../fonts/Gilroy-Extrabold.woff") format("woff");
    font-weight: bold;
    font-style: normal;
}
@font-face {
    font-family: "Frutiger";
    src: url("../../fonts/asmFrutigerLTStd-Light.eot");
    src: url("../../fonts/asmFrutigerLTStd-Light.ttf") format("truetype"),
        url("../../fonts/asmFrutigerLTStd-Light/8b7d8b69c993f3aa.eot") format("embedded-opentype"),
        url("../../fonts/asmFrutigerLTStd-Light.woff") format("woff");
    font-weight: 300;
    font-style: normal;
}
@font-face {
    font-family: "Frutiger";
    src: url("../../fonts/asmFrutigerLTStd-Bold.eot");
    src: url("../../fonts/asmFrutigerLTStd-Bold.ttf") format("truetype"),
        url("../../fonts/asmFrutigerLTStd-Bold/8b7d8b69c993f3aa.eot") format("embedded-opentype"),
        url("../../fonts/asmFrutigerLTStd-Bold.woff") format("woff");
    font-weight: bold;
    font-style: normal;
}
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: Frutiger, Arial, Helvetica, sans-serif;
    /* font-weight: 300; */
}
body {
/*     text-align: center; */
    background-color: #fff;
}


#wrap {
    margin: auto;
    text-align: left;
    max-width: 760px;
    border: solid 1px #000;
    overflow: hidden;
    position: relative;
}
b, strong {
    font-weight: bold;
}


main, .main, header + div {
    padding-right: 6%;
}
main > *, .main > *, header + div > * {
    margin-left: calc( 10% + 20px );
}
main > #shape, .main > #shape, header + div > #shape {
    margin: 0;
}
header + div img {
    float: right;
    max-width: 130px;
    width: 25%;
    margin-left: 2% !important;
    margin-bottom: 10px;
}
header img {
    width: 100%;
    max-width: 760px;
}
header svg {
    margin-left: -16%;
    /* margin-left: -125px; */
    /* max-height: 420px; */
}
footer {
    text-align: right;
}
footer svg {
    width: 90%;
    max-width: 530px;
}
header {
    position: relative;
}
header svg {
    /* max-width: 160px; */
    height: 100%;
    left: 0;
    top: 54%;
    position: absolute;
}
h1 {
    position: absolute;
    left: 10%;
    width: 80%;
    font-family: Gilroy, Arial, Helvetica, sans-serif;
    font-weight: bold;
    padding: 15px 20px 10px;
    bottom: -17px;
    background-color: #fff;
}
h2 {
    font-family: Gilroy;
    font-weight: bold;
    padding: 5px 0 5px 0;
    clear: left;
    position: relative;
}
h3 {
    font-family: Gilroy;
    font-weight: bold;
    padding: 5px 0 5px 0;
}
h2::before {
    content: '';
    display: block;
    position: absolute;
    background-color: #FF002A;
}

h2 small {
    margin-top: 6px;
    display: block;
    font-size: 1.8rem;
    line-height: 2.2rem;
}

#shape {
    float: left;
    width: 100%;
    aspect-ratio: 760/270;
    shape-outside: polygon( 0 0, 39.5% 0, 39.5% 20%, 38.5% 40%, 35.5% 60%, 33.1% 70%, 29% 80%, 25.5% 88%, 20% 95% , 18% 98%, 0% 100% );
}
#shape + p,
.intro {
    padding-top: 30px;
    font-weight: bold;
}
.subheader {
    font-weight: bold;
}
.address {
    font-weight: bold;
    padding-bottom: 0;
}
.apply {
    margin-top: 25px;
    margin-bottom: 25px;
}
.apply a {
    background-color: #FF002A;
    color: #fff;
    border-radius: 6px;
    padding: 10px 25px 8px;
    margin:  auto;
}
.apply a:hover {
    color: #fff;
    background-color: #3c3c3b;
    transition: background-color 250ms ease-in-out;
}
a::before {
    content: '';
    display: inline-block;
    height: 1rem;
    width: 1rem;
    margin: 0px 3px -1px 3px;
    background-image: url(../../img/link.svg);
    background-repeat: no-repeat;
}
.apply a::before,
.address a::before { content: none; display: none; }

a { color: #FF002A; text-decoration: none; position: relative; font-weight: bold; white-space: nowrap; }
a:hover { color: #000; }
.address a:hover { color: #FF002A; }
.apply a { color: #fff; font-weight: inherit; }
.address a { font-weight: inherit; color: inherit; }

hr {
    border: none;
    border-top: solid 1.75px #FF002A;
    margin-bottom: 15px;
}
ul {
    list-style: none;
    padding-left: 15px;
    padding-bottom: 15px;
}
ul ul { padding-bottom: 0; }
li {
    position: relative;
}
li::before {
    content: '•';
    color: #FF002A;
    font-weight: bold;
    position: absolute;
    left: -15px;
}

header svg { left: -5px; }
html { font-size: 14px; line-height: 17px; }
h1 { font-size: 1.7rem; line-height: 1.8rem; }
h2 { font-size: 1.8rem; line-height: 2.1rem; }
h3 { font-size: 1.1rem; line-height: 1.4rem; }
h2::before { top: 0.55rem; left: -30px; height: 1.3rem; width: 1.3rem; }
p { padding: 0 0 15px 0; font-size: 1.1rem; line-height: 1.5rem; }
li { font-size: 1.1rem; line-height: 1.5rem; }

@media screen and ( min-width: 361px ) {
    html { font-size: 14px; line-height: 17px; }
}
@media screen and ( min-width: 481px ) {
    html { font-size: 14.5px; line-height: 17px; }
}
@media screen and ( min-width: 604px ) {
    h1 { font-size: 2.2rem; line-height: 2.4rem; bottom: -14px; }
    h2 { font-size: 2.4rem; line-height: 2.6rem; }
    h2::before { top: 0.5rem; left: -40px; height: 1.75rem; width: 1.75rem; }
    header svg { left: 0; }
    p { padding-bottom: 20px; }
}
@media print {
    html { font-size: 14.5px; line-height: 17px; }
    h1 { font-size: 2.2rem; line-height: 2.4rem; bottom: -19px; }
    h2 { font-size: 2.4rem; line-height: 2.6rem; }
    h2::before { top: 0.5rem; left: -40px; height: 1.75rem; width: 1.75rem; }
    p { padding-bottom: 20px; }
}

/* IE10+ specific styles go here */
@media screen and ( min-width: 361px ) and (-ms-high-contrast: active),
    screen and ( min-width: 361px ) and (-ms-high-contrast: none) {
    #shape + p, .intro { padding-left: 12%; }
    header svg { left: -30px; }
    #shape + p + p, .intro + p { padding-left: 0%; }
}
@media screen and ( min-width: 481px ) and (-ms-high-contrast: active),
    screen and ( min-width: 481px ) and (-ms-high-contrast: none) {
    #shape + p, .intro { padding-left: 11%; }
    #shape + p + p, .intro + p { padding-left: 1%; }
}
@media screen and ( min-width: 604px ) and (-ms-high-contrast: active),
    screen and ( min-width: 604px ) and (-ms-high-contrast: none) {
    #shape + p, .intro { padding-left: 10%; }
    #shape + p + p, .intro + p { padding-left: 3%; }
}

.noWrap {
    white-space: pre;
    word-break: keep-all;
  }