html {
    height:100%
}
#body-wrapper .container {
    padding:2rem 0 2rem
}
.header-fixed #body-wrapper {
    padding-top:4rem
}
.header-fixed .hero+#start>#body-wrapper {
    padding-top:0
}
section.section {
    position:relative;
    padding-right:1rem;
    padding-left:1rem
}
.overlay-dark,.overlay-dark-gradient,.overlay-light,.overlay-light-gradient {
    z-index:0
}
.hero {
    display:-ms-flexbox;
    display:flex;
    padding-top:6rem;
    padding-bottom:7rem;
    background-position:center;
    background-size:cover;
    -ms-flex-align:center;
    align-items:center;
    -ms-flex-pack:center;
    justify-content:center
}
.hero h1 {
    font-size:4rem;
    color:#242931
}
.hero h2 {
    font-size:2.5rem;
    color:rgba(36,41,49,.8)
}
.hero.hero-fullscreen {
    min-height:100vh
}
.hero.hero-large {
    min-height:500px
}
.hero.hero-medium {
    min-height:400px
}
.hero.hero-small {
    min-height:110px
}
.hero.hero-tiny {
    min-height:8rem
}
.header-fixed .hero {
    background-position:50% 0
}
@media (max-width:840px) {
    .hero h1 {
        font-size:3rem
    }
    .hero h2 {
        font-size:1.75rem
    }
}
@media (max-width:600px) {
    .hero h1 {
        font-size:2rem
    }
    .hero h2 {
        font-size:1.25rem
    }
}
.hero.text-light h1 {
    color:#fff
}
.hero.text-light h2 {
    color:rgba(255,255,255,.8)
}
.hero p {
    font-size:.9rem;
    font-weight:300
}
.hero #to-start {
    font-size:2rem;
    position:absolute;
    bottom:10px;
    display:inline-block;
    cursor:pointer
}
.image-overlay {
    position:absolute;
    z-index:-1;
    top:0;
    right:0;
    bottom:0;
    left:0
}
.overlay-light .image-overlay {
    background:rgba(255,255,255,.4)
}
.overlay-light-gradient .image-overlay {
    background:linear-gradient(to bottom,rgba(255,255,255,.5),rgba(255,255,255,.2))
}
.overlay-dark .image-overlay {
    background:rgba(0,0,0,.4)
}
.overlay-dark-gradient .image-overlay {
    background:linear-gradient(to bottom,rgba(0,0,0,.5),rgba(0,0,0,.2))
}
html {
    font-size:16px
}
@media screen and (min-width:480px) {
    html {
        font-size:calc(16px + 4 * ((100vw - 480px)/ 800))
    }
}
@media screen and (min-width:1280px) {
    html {
        font-size:20px
    }
}
h1,h2,h3,h4,h5,h6 {
    font-family:-apple-system,system-ui,BlinkMacSystemFont,'Segoe UI',Roboto,'Helvetica Neue',sans-serif;
    margin-top:2rem;
    color:#3a414e
}
.h1,h1 {
    font-size:3rem
}
.h2,h2 {
    font-size:1.8rem
}
.h6,h6 {
    font-weight:400
}
.title-center h1,.title-center h2 {
    text-align:center
}
.title-h1h2 h1 {
    font-weight:100;
    line-height:1.1;
    margin-bottom:0
}
.title-h1h2 h1 bold,.title-h1h2 h1 strong {
    font-weight:400
}
.title-h1h2 h1+h2 {
    line-height:1.1;
    margin-top:0
}
.title-center h1+h2,.title-h1h2 h1+h2 {
    font-weight:700;
    margin-bottom:50px
}
a:focus {
    outline:0!important;
    box-shadow:none!important
}
img {
    max-width:100%
}
.table table {
    width:100%;
    border-spacing:0;
    border-collapse:collapse
}
pre code,pre.xdebug-var-dump {
    line-height:1.5;
    display:block;
    overflow-x:auto;
    padding:1rem!important;
    color:inherit;
    border-radius:2px;
    background:#fafafa
}
pre[class*=language-] code {
    overflow-x:initial;
    padding:0!important;
    border-radius:inherit
}
pre code:not(.hljs):not([class*=language-]) {
    background:#f8f8f8
}
i.fa.fa-heart-o.pulse,i.fa.fa-heart.pulse {
    color:#920
}
b,strong {
    font-weight:700
}
.heavy {
    font-weight:700
}
.light {
    font-weight:200
}
.text-light {
    color:rgba(255,255,255,.8)
}
.text-light h1,.text-light h2,.text-light h3,.text-light h4,.text-light h5,.text-light h6 {
    color:rgba(255,255,255,.9)
}
#error {
    position:relative;
    margin-top:5rem;
    text-align:center
}
#error .icon {
    font-size:50px
}
#messages {
    margin-bottom:1rem
}
#messages .icon {
    font-size:1rem
}
ol,ul {
    margin-left:1.6rem
}
ol ol,ol ul,ul ol,ul ul {
    margin-left:1.6rem
}
ul {
    list-style:disc outside
}
ol {
    list-style:decimal outside
}
.notices {
    margin:1.5rem 0
}
.notices p {
    margin:1rem 0
}
form .button-wrapper {
    margin-top:.75rem;
    margin-bottom:1rem
}
form span.required {
    font-size:1.2rem;
    font-weight:700;
    color:#e85600
}
form .form-input[type=range] {
    -webkit-appearance:slider-horizontal;
    -moz-appearance:slider-horizontal;
    appearance:slider-horizontal
}
form .form-input[type=range]:focus {
    border:none;
    box-shadow:none
}
form .form-group:not(.form-field-toggleable) .checkboxes {
    display:inherit
}
form .form-group:not(.form-field-toggleable) .checkboxes label {
    display:inherit;
    margin:inherit;
    padding:.1rem .4rem .1rem 1.2rem
}
form .form-group:not(.form-field-toggleable) .checkboxes label:before {
    display:none
}
#grav-login>form {
    max-width:350px;
    margin:2rem auto 0
}
#grav-login .form-label {
    display:none
}
#grav-login .form-data {
    margin:1rem 0
}
#grav-login .form-input {
    text-align:center
}
#grav-login .button-wrapper {
    text-align:right
}
#grav-login .button-wrapper .form-data.rememberme {
    float:left;
    margin:0
}
#grav-login .login-form button[type=submit] {
    color:#fff;
    border-color:#227ded;
    background:#3085ee
}
#grav-login .login-form button[type=submit]:focus,#grav-login .login-form button[type=submit]:hover {
    color:#fff;
    border-color:#1370e3;
    background:#1877ec
}
#grav-login .login-form button[type=submit].active,#grav-login .login-form button[type=submit]:active {
    color:#fff;
    border-color:#126bd9;
    background:#1372e7
}
#grav-login .twofa-form button[type=submit]:first-child {
    float:right;
    margin-left:4px;
    color:#fff;
    border-color:#227ded;
    background:#3085ee
}
#grav-login .twofa-form button[type=submit]:first-child:focus,#grav-login .twofa-form button[type=submit]:first-child:hover {
    color:#fff;
    border-color:#1370e3;
    background:#1877ec
}
#grav-login .twofa-form button[type=submit]:first-child.active,#grav-login .twofa-form button[type=submit]:first-child:active {
    color:#fff;
    border-color:#126bd9;
    background:#1372e7
}
.mobile-container {
    position:absolute;
    z-index:2;
    top:40%;
    left:0;
    margin:0 auto
}
.mobile-logo img,.mobile-logo svg {
    height:42px;
    margin-top:.7rem;
    margin-left:1.4rem
}
.mobile-logo img path,.mobile-logo svg path {
    fill:#fff
}
.mobile-menu {
    z-index:3;
    top:0;
    right:0;
    display:none
}
.header-fixed .mobile-menu {
    position:fixed
}
@media (max-width:840px) {
    .mobile-menu {
        display:block
    }
}
.mobile-menu .button_container {
    position:absolute;
    z-index:100;
    top:1.3rem;
    right:1rem;
    width:28px;
    height:24px;
    cursor:pointer;
    transition:opacity .25s ease,top .5s ease
}
.mobile-menu .button_container:hover {
    opacity:.7
}
.mobile-menu .button_container.active {
    position:fixed
}
.mobile-menu .button_container.active .top {
    transform:translateY(8px) translateX(0) rotate(45deg);
    background:#fff
}
.mobile-menu .button_container.active .middle {
    opacity:0;
    background:#fff
}
.mobile-menu .button_container.active .bottom {
    transform:translateY(-8px) translateX(0) rotate(-45deg);
    background:#fff
}
.mobile-menu .button_container span {
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:4px;
    cursor:pointer;
    transition:all .35s ease;
    border:none;
    background:#3085ee
}
.mobile-menu .button_container span:nth-of-type(2) {
    top:8px
}
.mobile-menu .button_container span:nth-of-type(3) {
    top:16px
}
.overlay {
    position:fixed;
    top:0;
    left:0;
    visibility:hidden;
    width:100%;
    height:0;
    transition:opacity .35s,visibility .35s,height .35s;
    opacity:0;
    background:#000
}
.overlay.open {
    visibility:visible;
    height:100%;
    opacity:.95
}
.overlay nav {
    position:relative;
    margin:0 auto;
    text-align:center
}
.overlay-menu {
    overflow-y:scroll;
    height:calc(100% - 90px)
}
.overlay-menu>.tree {
    text-align:left
}
.treemenu.treemenu-root {
    margin:1rem
}
.treemenu li {
    line-height:1.2rem;
    margin:0 0 1px;
    padding:5px 0;
    list-style:none;
    background:rgba(102,113,137,.1)
}
.treemenu li a {
    font-size:1rem;
    display:block;
    margin-left:1.2rem
}
.treemenu li a.active,.treemenu li a:focus,.treemenu li a:hover {
    text-decoration:none;
    color:#3e8def!important
}
.treemenu ul {
    margin:0 0 0 1rem
}
.treemenu .toggler {
    font-size:1.1rem;
    line-height:1rem;
    float:left;
    padding-left:5px;
    cursor:pointer;
    vertical-align:top
}
.treemenu .toggler:before {
    display:inline-block;
    margin-right:2pt
}
.treemenu li.tree-empty>.toggler {
    cursor:default;
    opacity:.3
}
.treemenu li.tree-empty>.toggler:before {
    content:'\2022'
}
.treemenu li.tree-closed>.toggler:before {
    content:'+'
}
.treemenu li.tree-opened>.toggler:before {
    content:'\2212'
}
.mobile-nav-open {
    overflow-y:hidden
}
#header,#header .logo img,#header .logo svg,#header .navbar-section,.default-animation,.modular-features .feature-icon,.modular-features.small .feature-icon i {
    transition:all .5s ease
}
.pulse {
    transform-origin:70% 70%;
    animation-name:pulse_animation;
    animation-duration:2s;
    animation-timing-function:linear;
    animation-iteration-count:infinite
}
@keyframes pulse_animation {
    0% {
        transform:scale(1)
    }
    30% {
        transform:scale(1)
    }
    40% {
        transform:scale(1.08)
    }
    50% {
        transform:scale(1)
    }
    60% {
        transform:scale(1)
    }
    70% {
        transform:scale(1.05)
    }
    80% {
        transform:scale(1)
    }
    100% {
        transform:scale(1)
    }
}
#header {
    font-size:.7rem;
    font-weight:700;
    width:100%;
    height:4rem;
    color:#454d5d;
    border-bottom:1px solid rgba(172,179,194,.2);
    background:#030201;
}
#header a {
    color:#454d5d
}
#header .logo svg path {
    fill:#222
}
.header-dark #header:not(.scrolled) {
    color:#fff;
    background:#222
}
.header-dark #header:not(.scrolled) a {
    color:rgba(255,255,255,.7)!important
}
.header-dark #header:not(.scrolled) a.active {
    color:#fff!important
}
.header-dark #header:not(.scrolled) .dropmenu ul ul a {
    color:#454d5d!important
}
.header-dark #header:not(.scrolled) .logo svg path {
    fill:#fff
}
.header-dark.header-transparent #header:not(.scrolled) {
    background:rgba(0,0,0,.05)
}
.header-transparent #header:not(.scrolled) {
    background:rgba(255,255,255,.05)
}
#header .navbar-section {
    height:4rem
}
@media (max-width:840px) {
    #header .navbar-section {
        margin-right:2rem
    }
}
@media (max-width:840px) {
    #header .navbar-section.desktop-menu {
        display:none
    }
}
#header .logo img,#header .logo svg {
    display:inherit;
    height:60px
}
.header-fixed #header {
    position:fixed;
    z-index:2;
    top:0
}
body.header-fixed.header-animated #header.scrolled {
    height:2.3rem
}
body.header-fixed.header-animated #header.scrolled .navbar-section {
    height:2.3rem
}
body.header-fixed.header-animated #header.scrolled .logo img,body.header-fixed.header-animated #header.scrolled .logo svg {
    height:28px
}
body.header-fixed.header-animated #header.scrolled~.mobile-menu .button_container {
    top:.5rem
}
.login-status-wrapper {
    white-space:nowrap
}
body.sticky-footer {
    display:-ms-flexbox;
    display:flex;
    flex-direction:column;
    height:100%;
    min-height:100vh;
    -ms-flex-direction:column
}
body.sticky-footer #page-wrapper {
    -ms-flex:1 0 auto;
    flex:1 0 auto
}
#footer {
    padding:1rem 1rem 0;
    text-align:center;
    color:#acb3c2
}
@media (max-width:840px) {
    .dropmenu {
        display:none
    }
}
.dropmenu ul {
    display:-ms-flexbox;
    display:flex;
    margin:0;
    white-space:nowrap
}
.dropmenu ul li {
    position:relative;
    margin:0
}
.dropmenu ul li a {
    display:block;
    padding:7px 30px 7px 20px;
    text-decoration:none
}
.dropmenu ul li a.active,.dropmenu ul li a:focus,.dropmenu ul li a:hover {
    color:#3085ee!important
}
.dropmenu ul li a:before {
    font-family:FontAwesome;
    display:inline-block;
    float:right;
    margin-right:-20px;
    content:'\f107';
    vertical-align:middle
}
.dropmenu ul li a:only-child {
    padding-right:20px
}
.dropmenu ul li a:only-child:before {
    content:''
}
.dropmenu ul li:hover>ul {
    display:block;
    visibility:visible
}
.dropmenu ul ul li a:before {
    content:'\f105'
}
.dropmenu ul ul {
    position:absolute;
    top:100%;
    visibility:hidden;
    list-style:none;
    background:#fff;
    box-shadow:0 3px 5px rgba(0,0,0,.1)
}
.dropmenu ul ul ul {
    position:absolute;
    top:0;
    left:100%
}
.dropmenu>ul>li {
    display:inline-block
}
.dropmenu.animated ul li {
    transition:background .7s,color .5s
}
.dropmenu.animated ul li:hover>ul {
    transform:translateY(0);
    opacity:1
}
.dropmenu.animated ul ul {
    transition:transform .3s,opacity .5s;
    transform:translateY(-10px);
    opacity:0
}
.extra-spacing:not(.col-12),:not(.col12)>.e-content {
    padding-right:1rem
}
@media (max-width:840px) {
    .extra-spacing:not(.col-12),:not(.col12)>.e-content {
        padding-right:0
    }
}
#breadcrumbs {
    display:-ms-flexbox;
    display:flex;
    margin-top:-1rem;
    margin-bottom:1rem;
    padding-left:0;
    -ms-flex-align:center;
    align-items:center
}
#breadcrumbs i {
    display:none
}
#breadcrumbs a,#breadcrumbs span {
    padding:0 .5rem
}
#breadcrumbs a:first-child,#breadcrumbs span:first-child {
    padding-left:0
}
#breadcrumbs a:not(:first-child)::before,#breadcrumbs span:not(:first-child)::before {
    padding-right:1rem;
    content:'/';
    color:#e7e9ed
}
.blog-listing .bricklayer-column {
    padding-right:25px;
    padding-left:0
}
.blog-listing .card {
    margin-bottom:25px;
    border:0;
    box-shadow:0 10px 45px -9px rgba(0,0,0,.1)
}
.blog-listing .card-footer {
    text-align:right
}
.blog-listing .blog-date {
    font-size:13px
}
.content-title {
    margin-bottom:2rem
}
.content-title h2 {
    margin-bottom:.5rem
}
.label {
    font-size:12px;
    text-transform:uppercase
}
ul.pagination {
    -ms-flex-pack:center;
    justify-content:center
}
.prev-next {
    margin-top:4rem
}
#sidebar ul.related-pages {
    z-index:1;
    padding:0;
    box-shadow:none
}
#sidebar ul.related-pages li {
    border-bottom:1px solid #e7e9ed
}
#sidebar ul.related-pages li:last-child {
    border-bottom:0
}
#sidebar ul.archives {
    margin-left:0;
    list-style:none
}
#sidebar ul.archives .label {
    vertical-align:text-top
}
.modular-hero #to-start {
    bottom:3.5rem
}
.modular-features {
    text-align:center
}
.modular-features.offset-box .frame-box {
    margin:-3rem -1.4rem 3rem;
    padding:1rem 1rem;
    background:#fff;
    box-shadow:0 0 75px 0 rgba(69,77,93,.1)
}
.modular-features.small .columns {
    margin-top:-1rem
}
.modular-features.small .column:hover .feature-icon i {
    color:#3085ee
}
.modular-features.small .feature-icon {
    display:block;
    -ms-flex-pack:left;
    justify-content:left
}
.modular-features.small .feature-icon i {
    font-size:70px;
    position:relative;
    top:auto;
    left:auto;
    display:inherit;
    margin:0 auto 1rem;
    transform:none;
    color:#acb3c2
}
.modular-features.small .feature-icon h6 {
    text-transform:none
}
.modular-features .frame-box {
    padding:3rem 0
}
.modular-features .frame-box>p {
    max-width:600px;
    margin-right:auto;
    margin-left:auto
}
.modular-features .column {
    padding:1rem
}
.modular-features .column:hover .feature-icon {
    color:#acb3c2
}
.modular-features .column:hover .feature-icon h6 {
    color:#3085ee
}
.modular-features .column:hover .feature-content {
    color:#667189
}
.modular-features .feature-icon {
    font-size:130px;
    position:relative;
    display:-ms-flexbox;
    display:flex;
    height:100px;
    margin:1rem 0;
    color:#e7e9ed;
    -ms-flex-align:center;
    align-items:center;
    -ms-flex-pack:center;
    justify-content:center
}
.modular-features .feature-icon i {
    position:absolute;
    top:50%;
    left:50%;
    transform:translateX(-50%) translateY(-50%)
}
.modular-features .feature-icon h6 {
    font-weight:600;
    line-height:1;
    z-index:1;
    display:block;
    margin:0;
    text-transform:uppercase;
    color:#667189;
    background:#fff
}
.modular-features .feature-content {
    color:#acb3c2
}
.modular-text {
    padding-top:4rem;
    padding-bottom:4rem
}
.modular-text .columns.left {
    flex-direction:row-reverse;
    -ms-flex-direction:row-reverse
}