/* Critical CSS for index.php - moved from inline styles */

body {
    margin: 0;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
    -webkit-font-smoothing: antialiased
}

.body-inner {
    padding: 0;
    margin: 0
}

#header {
    position: fixed;
    width: 100%;
    z-index: 1000;
    background: #1a1a1a;
    height: 80px
}

.header-inner {
    padding: 0 15px;
    height: 80px
}

#logo {
    height: 80px;
    display: flex;
    align-items: center
}

#logo img {
    max-height: 60px
}

#mainMenu-trigger {
    height: 80px;
    display: flex;
    align-items: center
}

.container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 15px
}

main {
    padding-top: 0
}

.slide-captions {
    position: relative;
    z-index: 2
}

.btn {
    display: inline-block;
    padding: 10px 20px;
    text-decoration: none;
    border-radius: 4px;
    margin: 5px
}

.btn-inverted {
    background: transparent;
    border: 2px solid #fff;
    color: #fff
}

.btn-inverted:hover {
    background: #fff;
    color: #1a1a1a
}

.text-white {
    color: #fff
}

.text-lg {
    font-size: 2.5rem
}

.text-medium {
    font-size: 1.5rem
}

h1,
h2,
h3 {
    margin: 0 0 1rem
}

img {
    max-width: 100%;
    height: auto
}

.m-b-0 {
    margin-bottom: 0
}

.text-center {
    text-align: center
}

.row {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -15px
}

.col-lg-4,
.col-lg-6,
.col-lg-8,
.col-lg-9,
.col-lg-3 {
    padding: 0 15px;
    box-sizing: border-box
}

@media(min-width:992px) {
    .col-lg-4 {
        width: 33.333%
    }

    .col-lg-6 {
        width: 50%
    }

    .col-lg-3 {
        width: 25%
    }

    .col-lg-8 {
        width: 66.666%
    }

    .col-lg-9 {
        width: 75%
    }
}

.icon-svg {
    width: 24px;
    height: 24px;
    fill: currentColor;
    vertical-align: middle
}

.icon-box .icon-svg {
    width: 48px;
    height: 48px
}

.service-image {
    height: 200px;
    width: 100%;
    object-fit: cover;
    object-position: center
}

.p-t-100 {
    padding-top: 100px
}

.p-b-100 {
    padding-bottom: 100px
}

.p-t-60 {
    padding-top: 60px
}

.p-b-60 {
    padding-bottom: 60px
}

.mb-0 {
    margin-bottom: 0
}

.mb-3 {
    margin-bottom: 1rem
}

.mb-4 {
    margin-bottom: 1.5rem
}

.mt-3 {
    margin-top: 1rem
}

.border {
    border: 1px solid #dee2e6
}

.p-4 {
    padding: 1.5rem
}

.h-100 {
    height: 100%
}

.img-fluid {
    max-width: 100%;
    height: auto
}

.background-grey {
    background-color: #f8f9fa
}

.lead {
    font-size: 1.25rem;
    font-weight: 300
}

.align-items-center {
    align-items: center
}

.px-5 {
    padding-left: 3rem;
    padding-right: 3rem
}

.container-fluid {
    width: 100%;
    padding-right: 15px;
    padding-left: 15px;
    margin-right: auto;
    margin-left: auto
}

@media(max-width:991px) {
    .col-lg-4,
    .col-lg-6,
    .col-lg-3,
    .col-lg-8,
    .col-lg-9 {
        width: 100%
    }

    .px-5 {
        padding-left: 1rem;
        padding-right: 1rem
    }
}

/* Fallback for missing inspiro-icons font - use CSS arrows instead */
@font-face {
    font-family: 'inspiro-icons';
    src: local('Arial');
    font-display: swap
}

#mainMenu nav>ul>li.dropdown:before {
    content: '›' !important;
    font-family: Arial, sans-serif !important
}

#mainMenu nav>ul>li .dropdown-submenu:before {
    content: '›' !important;
    font-family: Arial, sans-serif !important
}

.icon-chevron-up:before {
    content: '↑';
    font-family: Arial, sans-serif
}

/* Navigation critical CSS to prevent CLS */
#mainMenu {
    height: 80px;
    display: flex;
    align-items: center
}

#mainMenu nav ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex
}

#mainMenu nav ul li {
    position: relative
}

#mainMenu nav ul li a {
    padding: 10px 15px;
    display: block;
    color: #fff;
    text-decoration: none
}

@media(max-width:991px) {
    #mainMenu {
        display: none;
        height: auto
    }
}

.sr-only {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    white-space: nowrap;
    border: 0
}
