:root {
    --igs-red: #be1522;
    --igs-red-ui: #dd3333;
    --igs-text: #444;
    --igs-muted: #686868;
    --igs-bg: #fff;
    --igs-max: 1180px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
    margin: 0;
    background: var(--igs-bg);
    color: var(--igs-muted);
    font-family: 'Abel', Arial, sans-serif;
    font-size: 17px;
    line-height: 1.45;
}
img { max-width: 100%; height: auto; }
a { color: var(--igs-red); text-decoration: none; }
a:hover { text-decoration: underline; }
h1, h2,  h4, h5, h6 { color: var(--igs-text); font-weight: 400; line-height: 1.25; }
h3 { color: var(--igs-text); font-weight: 400;  }
.site-header {
    position: fixed;
    inset: 0 0 auto 0;
    z-index: 1000;
    padding: 18px 28px;
    transition: background .25s ease, box-shadow .25s ease, padding .25s ease;
}
.site-header.is-scrolled {
    background: rgba(255,255,255,.96);
    box-shadow: 0 2px 14px rgba(0,0,0,.08);
    padding-block: 10px;
}
.site-header__inner {
    max-width: var(--igs-max);
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.site-logo img { width: 30px; height: 30px; object-fit: contain; }
.menu-toggle {
    width: 42px;
    height: 42px;
    border: 0;
    background: rgba(255,255,255,.92);
    display: grid;
    place-content: center;
    gap: 5px;
    cursor: pointer;
}
.menu-toggle span { width: 24px; height: 2px; background: #333; display: block; }
.site-nav {
    position: fixed;
    inset: 0;
    background: rgba(20,20,20,.96);
    display: none;
    align-items: center;
    justify-content: center;
    z-index: -1;
}
.site-nav.is-open { display: flex; }
.site-nav__list { list-style: none; margin: 0; padding: 0; text-align: center; }
.site-nav__list li { margin: 16px 0; }
.site-nav__list a { color: #fff; font-size: 30px; text-transform: uppercase; }

.site-main { overflow: hidden; }
.home-content > .legacy-vc_row:first-child img {
    display: block;
    width: 100%;
    max-height: 100vh;
    object-fit: cover;
}
.legacy-vc_row,
.legacy-vc_row_inner {
    width: 100%;
}
.legacy-vc_column,
.legacy-vc_column_inner,
.legacy-text {
    width: min(var(--igs-max), calc(100% - 48px));
    margin-inline: auto;
}
.legacy-vc_row > .legacy-vc_column,
.legacy-vc_row_inner > .legacy-vc_column_inner { padding-block: 0; }
.legacy-text:after { content: ''; display: table; clear: both; }
.legacy-text h1 { font-size: 32px; }
.legacy-text h2 { font-size: 28px; }
.legacy-text h3 { font-size: 20px; }
.legacy-text p { margin: 0 0 1rem; }
.legacy-text .alignleft { float: left; margin: .25rem 1rem .75rem 0; }
.legacy-text .alignright { float: right; margin: .25rem 0 .75rem 1rem; }
.legacy-text .aligncenter { display: block; margin: 1rem auto; }
.section-title {
    width: min(var(--igs-max), calc(100% - 48px));
    margin: 0 auto;
    text-align: center;
}
.section-title h2 {
    margin: 0;
    font-size: 34px;
    letter-spacing: .02em;
}
.section-title h2:after {
    content: '';
    width: 54px;
    height: 2px;
    background: var(--igs-red);
    display: block;
    margin: 18px auto 0;
}
.legacy-single-image { width: min(var(--igs-max), calc(100% - 48px)); margin: 24px auto; }
.legacy-single-image.align-center { text-align: center; }
.legacy-image { max-width: 100%; height: auto; }
.contact-info { list-style: none; padding-left: 0; }

.wrap { width: min(var(--igs-max), calc(100% - 48px)); margin: 0 auto; }
.content-page { padding: 120px 0 70px; }
.site-footer { background: #fff; border-top: 1px solid #eee; padding: 26px 24px; font-size: 14px; text-align: center; }
.site-footer__inner { max-width: var(--igs-max); margin: 0 auto; }

@media (max-width: 760px) {
    .site-header { padding: 12px 16px; }
    .legacy-vc_column,
    .legacy-vc_column_inner,
    .legacy-text,
    .section-title,
    .legacy-single-image { width: min(100% - 28px, var(--igs-max)); }
    .section-title h2 { font-size: 27px; }
    .legacy-text h1 { font-size: 27px; }
    .legacy-text h3 { font-size: 18px; }
    .legacy-space { max-height: 52px; }
}

.legacy-vc_row_inner {
    display: flex;
    flex-wrap: wrap;
}

.legacy-width-1-2 {
    width: 50%;
}

.legacy-width-1-3 {
    width: 33.333333%;
}

.legacy-width-2-3 {
    width: 66.666667%;
}

.legacy-width-1-4 {
    width: 25%;
}

.legacy-width-3-4 {
    width: 75%;
}

@media (max-width: 768px) {
    .legacy-width-1-2,
    .legacy-width-1-3,
    .legacy-width-2-3,
    .legacy-width-1-4,
    .legacy-width-3-4 {
        width: 100%;
    }
}