/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
   ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */

html {
  line-height: 1.15; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
}

/* Sections
   ========================================================================== */

/**
 * Remove the margin in all browsers.
 */

body {
  margin: 0;
}

/**
 * Render the `main` element consistently in IE.
 */

main {
  display: block;
}

/**
 * Correct the font size and margin on `h1` elements within `section` and
 * `article` contexts in Chrome, Firefox, and Safari.
 */

h1 {
  font-size: 2em;
  margin: 0.67em 0;
}

/* Grouping content
   ========================================================================== */

/**
 * 1. Add the correct box sizing in Firefox.
 * 2. Show the overflow in Edge and IE.
 */

hr {
  box-sizing: content-box; /* 1 */
  height: 0; /* 1 */
  overflow: visible; /* 2 */
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

pre {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/* Text-level semantics
   ========================================================================== */

/**
 * Remove the gray background on active links in IE 10.
 */

a {
  background-color: transparent;
}

/**
 * 1. Remove the bottom border in Chrome 57-
 * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari.
 */

abbr[title] {
  border-bottom: none; /* 1 */
  text-decoration: underline; /* 2 */
  text-decoration: underline dotted; /* 2 */
}

/**
 * Add the correct font weight in Chrome, Edge, and Safari.
 */

b,
strong {
  font-weight: bolder;
}

/**
 * 1. Correct the inheritance and scaling of font size in all browsers.
 * 2. Correct the odd `em` font sizing in all browsers.
 */

code,
kbd,
samp {
  font-family: monospace, monospace; /* 1 */
  font-size: 1em; /* 2 */
}

/**
 * Add the correct font size in all browsers.
 */

small {
  font-size: 80%;
}

/**
 * Prevent `sub` and `sup` elements from affecting the line height in
 * all browsers.
 */

sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/* Embedded content
   ========================================================================== */

/**
 * Remove the border on images inside links in IE 10.
 */

img {
  border-style: none;
}

/* Forms
   ========================================================================== */

/**
 * 1. Change the font styles in all browsers.
 * 2. Remove the margin in Firefox and Safari.
 */

button,
input,
optgroup,
select,
textarea {
  font-family: inherit; /* 1 */
  font-size: 100%; /* 1 */
  line-height: 1.15; /* 1 */
  margin: 0; /* 2 */
}

/**
 * Show the overflow in IE.
 * 1. Show the overflow in Edge.
 */

button,
input { /* 1 */
  overflow: visible;
}

/**
 * Remove the inheritance of text transform in Edge, Firefox, and IE.
 * 1. Remove the inheritance of text transform in Firefox.
 */

button,
select { /* 1 */
  text-transform: none;
}

/**
 * Correct the inability to style clickable types in iOS and Safari.
 */

button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}

/**
 * Remove the inner border and padding in Firefox.
 */

button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}

/**
 * Restore the focus styles unset by the previous rule.
 */

button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}

/**
 * Correct the padding in Firefox.
 */

fieldset {
  padding: 0.35em 0.75em 0.625em;
}

/**
 * 1. Correct the text wrapping in Edge and IE.
 * 2. Correct the color inheritance from `fieldset` elements in IE.
 * 3. Remove the padding so developers are not caught out when they zero out
 *    `fieldset` elements in all browsers.
 */

legend {
  box-sizing: border-box; /* 1 */
  color: inherit; /* 2 */
  display: table; /* 1 */
  max-width: 100%; /* 1 */
  padding: 0; /* 3 */
  white-space: normal; /* 1 */
}

/**
 * Add the correct vertical alignment in Chrome, Firefox, and Opera.
 */

progress {
  vertical-align: baseline;
}

/**
 * Remove the default vertical scrollbar in IE 10+.
 */

textarea {
  overflow: auto;
}

/**
 * 1. Add the correct box sizing in IE 10.
 * 2. Remove the padding in IE 10.
 */

[type="checkbox"],
[type="radio"] {
  box-sizing: border-box; /* 1 */
  padding: 0; /* 2 */
}

/**
 * Correct the cursor style of increment and decrement buttons in Chrome.
 */

[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}

/**
 * 1. Correct the odd appearance in Chrome and Safari.
 * 2. Correct the outline style in Safari.
 */

[type="search"] {
  -webkit-appearance: textfield; /* 1 */
  outline-offset: -2px; /* 2 */
}

/**
 * Remove the inner padding in Chrome and Safari on macOS.
 */

[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}

/**
 * 1. Correct the inability to style clickable types in iOS and Safari.
 * 2. Change font properties to `inherit` in Safari.
 */

::-webkit-file-upload-button {
  -webkit-appearance: button; /* 1 */
  font: inherit; /* 2 */
}

/* Interactive
   ========================================================================== */

/*
 * Add the correct display in Edge, IE 10+, and Firefox.
 */

details {
  display: block;
}

/*
 * Add the correct display in all browsers.
 */

summary {
  display: list-item;
}

/* Misc
   ========================================================================== */

/**
 * Add the correct display in IE 10+.
 */

template {
  display: none;
}

/**
 * Add the correct display in IE 10.
 */

[hidden] {
  display: none;
}






/*! Google Fonts */
/* cyrillic-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  src: url(https://fonts.gstatic.com/s/montserrat/v31/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCtr6Hw0aXpsog.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  src: url(https://fonts.gstatic.com/s/montserrat/v31/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCtr6Hw9aXpsog.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* vietnamese */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  src: url(https://fonts.gstatic.com/s/montserrat/v31/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCtr6Hw2aXpsog.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  src: url(https://fonts.gstatic.com/s/montserrat/v31/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCtr6Hw3aXpsog.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  src: url(https://fonts.gstatic.com/s/montserrat/v31/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCtr6Hw5aXo.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* cyrillic-ext */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  src: url(https://fonts.gstatic.com/s/opensans/v44/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsjZ0B4taVIGxA.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}
/* cyrillic */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  src: url(https://fonts.gstatic.com/s/opensans/v44/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsjZ0B4kaVIGxA.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}
/* greek-ext */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  src: url(https://fonts.gstatic.com/s/opensans/v44/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsjZ0B4saVIGxA.woff2) format('woff2');
  unicode-range: U+1F00-1FFF;
}
/* greek */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  src: url(https://fonts.gstatic.com/s/opensans/v44/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsjZ0B4jaVIGxA.woff2) format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}
/* hebrew */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  src: url(https://fonts.gstatic.com/s/opensans/v44/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsjZ0B4iaVIGxA.woff2) format('woff2');
  unicode-range: U+0307-0308, U+0590-05FF, U+200C-2010, U+20AA, U+25CC, U+FB1D-FB4F;
}
/* math */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  src: url(https://fonts.gstatic.com/s/opensans/v44/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsjZ0B5caVIGxA.woff2) format('woff2');
  unicode-range: U+0302-0303, U+0305, U+0307-0308, U+0310, U+0312, U+0315, U+031A, U+0326-0327, U+032C, U+032F-0330, U+0332-0333, U+0338, U+033A, U+0346, U+034D, U+0391-03A1, U+03A3-03A9, U+03B1-03C9, U+03D1, U+03D5-03D6, U+03F0-03F1, U+03F4-03F5, U+2016-2017, U+2034-2038, U+203C, U+2040, U+2043, U+2047, U+2050, U+2057, U+205F, U+2070-2071, U+2074-208E, U+2090-209C, U+20D0-20DC, U+20E1, U+20E5-20EF, U+2100-2112, U+2114-2115, U+2117-2121, U+2123-214F, U+2190, U+2192, U+2194-21AE, U+21B0-21E5, U+21F1-21F2, U+21F4-2211, U+2213-2214, U+2216-22FF, U+2308-230B, U+2310, U+2319, U+231C-2321, U+2336-237A, U+237C, U+2395, U+239B-23B7, U+23D0, U+23DC-23E1, U+2474-2475, U+25AF, U+25B3, U+25B7, U+25BD, U+25C1, U+25CA, U+25CC, U+25FB, U+266D-266F, U+27C0-27FF, U+2900-2AFF, U+2B0E-2B11, U+2B30-2B4C, U+2BFE, U+3030, U+FF5B, U+FF5D, U+1D400-1D7FF, U+1EE00-1EEFF;
}
/* symbols */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  src: url(https://fonts.gstatic.com/s/opensans/v44/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsjZ0B5OaVIGxA.woff2) format('woff2');
  unicode-range: U+0001-000C, U+000E-001F, U+007F-009F, U+20DD-20E0, U+20E2-20E4, U+2150-218F, U+2190, U+2192, U+2194-2199, U+21AF, U+21E6-21F0, U+21F3, U+2218-2219, U+2299, U+22C4-22C6, U+2300-243F, U+2440-244A, U+2460-24FF, U+25A0-27BF, U+2800-28FF, U+2921-2922, U+2981, U+29BF, U+29EB, U+2B00-2BFF, U+4DC0-4DFF, U+FFF9-FFFB, U+10140-1018E, U+10190-1019C, U+101A0, U+101D0-101FD, U+102E0-102FB, U+10E60-10E7E, U+1D2C0-1D2D3, U+1D2E0-1D37F, U+1F000-1F0FF, U+1F100-1F1AD, U+1F1E6-1F1FF, U+1F30D-1F30F, U+1F315, U+1F31C, U+1F31E, U+1F320-1F32C, U+1F336, U+1F378, U+1F37D, U+1F382, U+1F393-1F39F, U+1F3A7-1F3A8, U+1F3AC-1F3AF, U+1F3C2, U+1F3C4-1F3C6, U+1F3CA-1F3CE, U+1F3D4-1F3E0, U+1F3ED, U+1F3F1-1F3F3, U+1F3F5-1F3F7, U+1F408, U+1F415, U+1F41F, U+1F426, U+1F43F, U+1F441-1F442, U+1F444, U+1F446-1F449, U+1F44C-1F44E, U+1F453, U+1F46A, U+1F47D, U+1F4A3, U+1F4B0, U+1F4B3, U+1F4B9, U+1F4BB, U+1F4BF, U+1F4C8-1F4CB, U+1F4D6, U+1F4DA, U+1F4DF, U+1F4E3-1F4E6, U+1F4EA-1F4ED, U+1F4F7, U+1F4F9-1F4FB, U+1F4FD-1F4FE, U+1F503, U+1F507-1F50B, U+1F50D, U+1F512-1F513, U+1F53E-1F54A, U+1F54F-1F5FA, U+1F610, U+1F650-1F67F, U+1F687, U+1F68D, U+1F691, U+1F694, U+1F698, U+1F6AD, U+1F6B2, U+1F6B9-1F6BA, U+1F6BC, U+1F6C6-1F6CF, U+1F6D3-1F6D7, U+1F6E0-1F6EA, U+1F6F0-1F6F3, U+1F6F7-1F6FC, U+1F700-1F7FF, U+1F800-1F80B, U+1F810-1F847, U+1F850-1F859, U+1F860-1F887, U+1F890-1F8AD, U+1F8B0-1F8BB, U+1F8C0-1F8C1, U+1F900-1F90B, U+1F93B, U+1F946, U+1F984, U+1F996, U+1F9E9, U+1FA00-1FA6F, U+1FA70-1FA7C, U+1FA80-1FA89, U+1FA8F-1FAC6, U+1FACE-1FADC, U+1FADF-1FAE9, U+1FAF0-1FAF8, U+1FB00-1FBFF;
}
/* vietnamese */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  src: url(https://fonts.gstatic.com/s/opensans/v44/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsjZ0B4vaVIGxA.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}
/* latin-ext */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  src: url(https://fonts.gstatic.com/s/opensans/v44/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsjZ0B4uaVIGxA.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 400;
  font-stretch: 100%;
  src: url(https://fonts.gstatic.com/s/opensans/v44/memSYaGs126MiZpBA-UvWbX2vVnXBbObj2OVZyOOSr4dVJWUgsjZ0B4gaVI.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}






/*! Quatetra Styles Copyright 2026 Quatetra, LLC. All rights reserved. */
* {
    box-sizing: border-box;
}

body {
    font-family: 'Open Sans', sans-serif;
    font-size: 14px;
    line-height: 1.4em;
    color: #fff;
    background-color: #091725;

    /* width: 100%;
    min-height: 1080px;
    background-color: #091725; */
    /* The Grid + The Fade */
    /* background-image:  */
        /* This radial gradient creates the 'fade' effect toward the top-left */
        /* radial-gradient(circle at bottom right, transparent 0%, #091725 90%), */
        /* These two linear gradients create the grid lines */
        /* linear-gradient(to right, #244564 1px, transparent 1px),
        linear-gradient(to bottom, #244564 1px, transparent 1px); */
  
    /* Setting the spacing between 90px and 120px */
    /* background-size: 100% 100%, 100px 100px, 100px 100px;
    background-position: bottom right;
    background-attachment: fixed; */
}
@media (min-width: 769px) {
    body {
        font-size: 18px;
    }
}



h1, h2, h3, h4 {
    margin: 1.5em 0 .5em 0;
    font-family: 'Montserrat', sans-serif;
    font-weight: 600;
    line-height: 1.4em;
    letter-spacing: 2px;
    color: #fff;
}
h1 {
    margin-top: 2em;
    margin-bottom: 1em;
    margin-left: -23px;
    padding-left: 11px;
    font-size: 1.5em;
    line-height: 2.1em;
    border-left: 11px solid #00b5af;
}
h2 {
    font-size: 1.25em;
    letter-spacing: 2px;
}
h3 {
    font-size: 1.20em;
    letter-spacing: 2px;
}
h4 {
    margin-bottom: 0;
    font-size: 1em;
    letter-spacing: 1px;
}
@media (min-width: 440px) {
    h1 { font-size: 2em; }
    h2 { font-size: 1.33em; }
    h3 { font-size: 1.25em; }
    h4 { font-size: 1em; }
}
@media (min-width: 769px) {
    h1 {
        margin-left: -35px;
        padding-left: 23px;
    }
}



p {
    margin-top: 0;
    margin-bottom: 1.5em;
}



a,
a:link {
    color: #00b5af;
}
a:visited {
    color: #00a59f;
}
a:hover,
a:active {
    color: #10c5bf;
    text-decoration: none;
}




strong {
    font-weight: bold;
}

.highlight-1 {
    color: #f47920;
}
.highlight-2 {
    color: #00b5af;
}
.highlight-3 {
    color: #4772b7;
}
.highlight-4 {
    color: #091725;
}

.smaller {
    font-size: 75%;
}
.small {
    font-size: 85%;
}
.big {
    font-size: 120%;
    line-height: 120%;
}
.bigger {
    font-size: 140%;
    line-height: 140%;
}

.text-center {
    text-align: center;
}



.float-left {
    float: left;
}
.float-right {
    float: right;
}
.clear {
    clear: both;
}



.mb-1 { margin-bottom: 12px; }
.mb-2 { margin-bottom: 24px; }
.mb-3 { margin-bottom: 36px; }
.mb-4 { margin-bottom: 48px; }
.mb-5 { margin-bottom: 60px; }

.pt-1 { padding-top: 12px; }

.pr-1 { padding-right: 12px; }
.pr-2 { padding-right: 24px; }

.pb-1 { padding-bottom: 12px; }

.pl-1 { padding-left: 12px; }



figure {
    margin: 0;
}
.portrait {
    padding-bottom: 1em;
    text-align: center;
}
    .portrait img {
        width: 100%;
        height: 100%;
        max-width: 240px;
        min-width: 180px;
        max-height: 240px;
        min-height: 180px;
    }
@media (min-width: 440px) {
    .portrait {
        padding-right: 1em;
        text-align: left;
    }
}


.button {
    display: inline-block;
    padding: .5em 1.5em;
    color: #fff;
    text-decoration: none;
    border-width: 0;
    border-radius: 1.25em;
    transition: background-color .5s ease-out;
}
.button:hover {
    text-decoration: underline;
    cursor: pointer;
}

.button.button-small {
    font-size: 85%;
}
.button.button-large {
    font-size: 110%;
}

.button.button-1 {
    color: #fff;
    background: #BA580D;
}
.button.button-1:hover {
    background: #ff8930;
}
.button.button-2 {
    color: #fff;
    background: #00b5af;
}
.button.button-2:hover {
    background: #22d7cf;
}
.button.button-3 {
    color: #fff;
    background: #2577F9;
}
.button.button-3:hover {
    background: #709de5;
}
.button.button-4 {
    color: #fff;
    background: #091725;
}
.button.button-4:hover {
    background: #102840;
}

.icon-32 {
    height: 32px;
    vertical-align: middle;
}
.icon-48 {
    height: 48px;
    vertical-align: middle;
}
.icon-64 {
    height: 64px;
    vertical-align: middle;
}



form {
    margin-bottom: 1.5em;
}

fieldset {
    margin: 0;
    padding: 0;
    border: none;
}

input,
textarea {
    padding: .375em .5em;
    border: 1px solid #ccc;
    border-radius: 0;
    border: none;
    background-color: rgba(255, 255, 255, .3);
}
input::placeholder,
textarea::placeholder {
    color: rgba(255, 255, 255, .6);
}

.form-aligned {

}
    .form-aligned .input-group {
        display: block;
        padding-bottom: .375em;
    }
        .form-aligned .input-group label {
            display: block;
            margin-bottom: .375em;
            text-align: left;
        }
        .form-aligned .input-group input,
        .form-aligned .input-group textarea {
            display: block;
            margin-bottom: .375em;
            width: 100%;
        }
    .form-aligned .form-controls {
        display: flex;
    }

@media (min-width: 440px) {
        .form-aligned .input-group {
            display: flex;
            margin-bottom: .375em;
        }
            .form-aligned .input-group label {
                display: inline-block;
                flex: 1;
                padding-right: .75em;
                line-height: 2em;
                text-align: right;
            }
            .form-aligned .input-group input,
            .form-aligned .input-group textarea {
                display: inline-block;
                flex: 3;
                border: 1px solid #ccc;
                border-radius: 4px;
            }
            .form-aligned .input-block {
                display: inline-block;
                flex: 3;
                padding: 0 1em .375em 0;
            }
        .form-aligned .form-controls {
            
        }
}

.form-stacked {

}
    .form-stacked .input-group {
        display: block;
        padding-bottom: .375em;
    }
        .form-stacked .input-group label {
            display: block;
            margin-bottom: .375em;
            text-align: left;
        }
        .form-stacked .input-group input,
        .form-stacked .input-group textarea {
            display: block;
            margin-bottom: .375em;
            width: 100%;
        }
    .form-stacked .form-controls {
        display: flex;
    }



.columns {
    display: flex;
    flex-flow: column;
    align-items: flex-start;
}
.column {
    width: 100%;
}

@media (min-width: 440px) {
    .columns {
        flex-flow: row;
        flex-wrap: wrap;
    }

    .column {
       
    }
    .column-full {
        flex: 12;
    }
    .column-eleven-twelfths {
        flex: 11;
    }
    .column-five-sixths {
        flex: 10;
    }
    .column-three-quarters {
        flex: 9;
    }
    .column-two-thirds {
        flex: 8;
    }
    .column-seven-twelfths {
        flex: 7;
    }
    .column-half {
        flex: 6;
    }
    .column-five-twelfths {
        flex: 6;
    }
    .column-third {
        flex: 6;
    }
    .column-quarter {
        flex: 6;
    }
    .column-sixth {
        flex: 6;
    }
    .column-twelfth {
        flex: 6;
    }
}

@media (min-width: 769px) {
    .columns {
        /* flex-wrap: nowrap; */
    }
        .column-five-twelfths {
            flex: 5;
        }
        .column-third {
            flex: 4;
        }
        .column-quarter {
            flex: 3;
        }
        .column-sixth {
            flex: 2;
        }
        .column-twelfth {
            flex: 1;
        }
}






.site {
    position: relative;
    margin: 0;
    width: 100%;
    min-width: 303px;
}
    .site:before {
        content: ' ';
        position: absolute;
        top: 0;
        left: 0;
        height: 100%;
        width: 1em;
        border-right: 1px solid rgba(255, 255, 255, .5);
    }
    .site:after {
        content: ' ';
        position: absolute;
        top: 0;
        right: 0;
        height: 100%;
        width: 1em;
        border-left: 1px solid rgba(255, 255, 255, .5);
    }
@media (min-width: 769px) {
    .site:before,
    .site:after {
        width: 2em;
    }
}
@media (min-width: 1336px) {
        .site:before {
            width: calc(100%/2 - 1280px/2);
        }
        .site:after {
            width: calc(100%/2 - 1280px/2);
        }
}


#site-header {
    position: relative;
    padding: 1em 1em;
    width: 100%;
    font-family: 'Montserrat', sans-serif;
    border-bottom: 1px solid rgba(255, 255, 255, .5);
}
    #logo {
        display: inline-block;
        margin: 0 0 0 12px;
        padding: 0;
        line-height: 40px;
        font-size: 18px;
        font-weight: 600;
        text-transform: uppercase;
        letter-spacing: 4px;
        color: #fff;
        border-radius: none;
        background: none;
    }
    #logo:link,
    #logo:visited,
    #logo:hover,
    #logo:active {
        text-decoration: none;
    }
        #logo img {
            width: 40px;
            height: 40px;
            vertical-align: top;
            transform-origin: center;
            transition: transform 1s;
        }
        #logo:hover img {
            transform: rotate(45deg);
        }

    #site-header .menu-toggle {
        position: absolute;
        top: 26px;
        right: 2em;
        font-family: 'Montserrat', sans-serif;
        text-transform: uppercase;
        letter-spacing: 1px;
        color: #fff;
    }
    #site-header .menu-toggle:hover {
        cursor: pointer;
    }

    #site-menu {
        position: absolute;
        top: 100%;
        left: 0;
        width: 100%;
        /*background: #091725;*/
        background: #fff;
        z-index: 100;
    }
        #site-menu ul {
            display: flex;
            flex-direction: column;
            height: 0;
            transition: all .5s ease-out;
            overflow: hidden;
        }
        #site-menu.active ul {
            height: 108px;
        }
        #site-header nav ul {
            margin: 0 auto;
            padding: 0;
            list-style: none;
            text-align: center;
        }
            #site-header nav ul li {
                padding: 0;
            }
                #site-header nav ul li a {
                    display: block;
                    padding: 6px 8px;
                    font-size: 14px;
                    line-height: 24px;
                    font-weight: bold;
                    text-decoration: none;
                    /*color: #fff;*/
                    color: #161e42;
                    background: none;
                    
                    transition: background-color 1s ease-out;
                }
                #site-header nav ul li a:link,
                #site-header nav ul li a:visited {
                    text-decoration: none;
                    /*color: #fff;*/
                    color: #161e42;
                }
                #site-header nav ul li a:hover,
                #site-header nav ul li a:active {
                    text-decoration: underline;

                    color: #161e42;
                    background: #fff;
                    
                    transition: background-color 1s ease-out;
                }
    #site-header .phone-number {
        display: block;
        margin-top: 6px;
        margin-left: 12px;
        width: 100%;
        font-size: 12px;
    }

@media (min-width: 440px) {
    #site-header {

    }
        #logo {
            margin: 0 0 0 24px;
            font-size: 27px;
            line-height: 60px;
            letter-spacing: 6px;
        }
            #logo img {
                width: 60px;
                height: 60px;
            }

        #site-header .menu-toggle {
            top: 34px;
        }

        #site-menu {
            /*top: 86px;*/
        }

        #site-header .phone-number {
            display: block;
            margin-top: 0;
            margin-left: 0;
            width: auto;
            position: absolute;
            top:8px;
            right: calc(1em + 10px);
            font-size: 1em;
        }
}

@media (min-width: 769px) {
    #site-header {
        /* padding: 2em 2em; */
    }
        #logo {
            margin: 0 0 0 36px;
            font-size: 36px;
            line-height: 72px;
            letter-spacing: 9px;
        }
            #logo img {
                width: 72px;
                height: 72px;
            }

        #site-header .menu-toggle {
            display: none;
        }

        #site-menu {
            position: relative;
            top: 0;
            background: none;
        }
            #site-menu ul,
            #site-menu.active ul {
                flex-direction: row;
                height: auto;
            }
            #site-header nav ul {
                flex-flow: row wrap;
                justify-content: center;
            }
                #site-header nav ul li {
                    display: inline-block;
                }
                    #site-header nav ul li a {
                        display: inline-block;
                        margin: 0 5px;
                        padding: 12px 24px;
                        font-size: 18px;
                        color: #fff;
                        border-radius: 6px;
                    }
                    #site-header nav ul li a:link,
                    #site-header nav ul li a:visited {
                        color: #fff;
                    }
                    #site-header nav ul li a:hover,
                    #site-header nav ul li a:active {
                        color: #161e42;
                    }
        #site-header .phone-number {
            right: calc(36px + 8px);
            font-size: 18px;
        }
}
@media (min-width: 1336px) {
    #site-header {
        padding: 2em calc(100%/2 - 1280px/2);
    }
        #site-header .phone-number {
            right: calc(100%/2 - 1280px/2 + 10px);
        }
}



.content {

}

.section {
    padding: 0 1em;
    border-bottom: 1px dashed rgba(255, 255, 255, .3);
}
    .section .container {
        padding: 0 24px 3em;
    }
        .section .container h1:first-child {
            margin-top: 0;
            padding-top: 20px;
            padding-bottom: 20px;
            line-height: 1.75em;
        }
        /*.section .container*/ p:last-child {
            margin-bottom: 0;
        }
@media (min-width: 769px) {
    .section {
        padding: 0 2em;
    }
        .section .container {
            margin: 0 auto;
            padding: 0 36px 3em;
            max-width: 1280px;
        }
}
@media (min-width: 1336px) {
    .section {
        padding: 0 calc(100%/2 - 1280px/2);
    }
}

.section-light {
    background-color: rgba(255, 255, 255, .2);
}



.section-banner {
    border-bottom: 1px solid rgba(255, 255, 255, .3);
}
    .banner {
        padding: 30px;
        text-align: center;
        vertical-align: middle;
        /* border-bottom: 1px solid rgba(255, 255, 255, .3); */
    }
        .banner h1 {
            margin: 0 0 30px;
            font-size: 1.7em;
            border-left: none;
        }
        .banner h2 {
            margin: 0 0 24px;
            font-size: 1em;
        }
    .banner-code {
        background: url('/img/banner-laptop-with-code.jpg') 50% 70% no-repeat;
        background-size: cover;
    }
@media (min-width: 440px) {
        .banner {
            padding: 60px;
        }
            .banner h1 {
                font-size: 2.5em;
                line-height: 1.6em;
            }
            .banner h2 {
                font-size: 1.33em;
            }
}



.value-box {
    position: relative;
    padding: 0 6px 4.5em;
    min-width:250px;
    text-align: center;
    border: 1px solid rgba(255, 255, 255, .3);
    border-width: 1px 1px 0 0;
    transition: all 1s;
}
.value-box:hover {
    background-color: rgba(255, 255, 255, .2);
}
.column:last-child .value-box {
    border-right: none;
}
    .value-box .header {
        height: 4em;
        line-height: 4em;
    }
    .value-box .header h2 {
        display: inline-block;
        margin-top: 0;
        font-size: 1.1em;
        vertical-align: middle;
    }
    .value-box p {
        margin-bottom: 0;
    }
        .value-box a.cover:link,
        .value-box a.cover:visited,
        .value-box a.cover:hover,
        .value-box a.cover:active {
            position: absolute;
            top: 0;
            right: 0;
            bottom: 0;
            left: 0;
            padding: 4em 6px 0;
            text-decoration: none;
            color: #fff;
        }
@media (min-width: 769px) {
    .value-box {
        padding: 0 6px 3.5em;
        min-width: 25%;
    }
}



.feature-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, max-content));
    grid-gap: 2em;
    justify-content: center;
}
@media (min-width: 1200px) {
    .feature-grid {
        grid-template-columns: repeat(auto-fit, minmax(320px, max-content));
    }
}

.icon-badge {
    display: flex;
    flex-flow: row;
    padding-right: 18px;
    height: 48px;
    min-width: 200px;
}
    .icon-badge .icon-48 {
        display: inline-block;
        margin: auto 12px auto 0;
    }
    .icon-badge span {
        display: inline-block;
        margin: auto 0;
    }



.steps {
    counter-reset: my-awesome-counter;
    display: flex;
    flex-flow: column;
    align-items: flex-start;

    list-style: none;
    padding-left: 0;
}
    .steps li {
        /*min-height: 50px;*/
        width: 100%;
        /*border: 1px solid red;*/

        counter-increment: my-awesome-counter;
        position: relative;
        --size: 48px;
        padding-right: 18px;
        padding-bottom: 1.5em;
        min-height: var(--size);
    }
    .steps li:last-child {
        padding-bottom: 0;
    }
    .steps li::before {
        content: counter(my-awesome-counter);
        position: absolute;
        top: 0;
        left: 0;

        width: var(--size);
        height: var(--size);

        font-size: 1.5em;
        font-weight: 700;
        line-height: var(--size);
        color: #091725;
        text-align: center;

        border-radius: 50%;
        box-shadow: 1px 1px 0 #999;
        background: #fff;
    }
        .steps li h2 {
            margin: .35em 0 1.2em 0;
            padding-left: calc(var(--size) + 18px);
            font-size: 24px;
        }
        .steps li p {

        }
@media (min-width: 961px) {
    .steps {
        flex-flow: row;
        flex-wrap: wrap;
    }
        .steps li {
           
        }       
}



p.stat {
    margin-bottom: 24px;
    font-size: 4em;
    line-height: 1.2em;
    text-align: center;
}
    p.stat span {
        display: block;
        font-size: .4em;
        line-height: 1.2em;
    }



.footer {
    padding: 1.5em 0;
    text-align: center;
    color: #fff;
    /*background: #091725;*/
}
@media (min-width: 769px) {
    .footer {
        margin: 0 auto;
        max-width: 1280px;
    }
}