:root {
    --colour-1:#1f1a17;
    --colour-2:#da251d;
    --colour-3:#605d5c;
    --colour-4:#9b1b15;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

td {
    vertical-align: top;
}

a {
    text-decoration: none;
    color: #181818;
}

.section-area a {
    color: #181818;
}

/* a:visited {
    color: #36A;
} */

a:hover,
a:focus {
    color: #446093;
}

a:focus {
    outline: 0;
}

a img {
    border: none;
}

b,
strong {
    font-weight: bold;
}

em,
i {
    font-style: italic;
}

dl {
    padding: 10px 0;
}

dt {
    font-weight: bold;
    font-size: 120%;
    font-family: lucida grande, calibri, arial, helvetica, sans-serif;
}

dd {
    padding: 0 0 10px 40px;
}

.ckeditor ul,
.ckeditor ol,
#content ul,
#content ol {
    padding: 0 0 0 30px;
}

body.ckeditor {
    background: #FFF none;
}

.ckeditor ul,
.ckeditor ol {
    padding: 0 0 0 30px;
}

.ckeditor table {
    border: 1px dotted #666 !important;
    border-spacing: 10px;
    border-collapse: separate;
}

.ckeditor td {
    border: 1px dotted #AAA !important;
    border-spacing: 10px;
    padding: 10px;
    border-collapse: separate;
}


.t2 {
    display: none;
}

ol ol {
    list-style-type: lower-alpha;
}

/* For form validation - do not remove */
#content td {
    padding: 3px 20px 3px 0;
    vertical-align: top;
}

body.notfound {
    background: #000;
    color: #FFF;
    padding: 100px;
}

body.notfound h1 {
    text-shadow: 0 0 20px #FFF;
    font: 46px consolas, arial;
}

body.notfound p {
    font: 24px consolas, arial;
    color: #888;
}

/* :target::before {
    content: "";
    display: block;
    height: 30px;
    
    margin: 30px 0 0;
    
    pointer-events: none;
} */

/* Site-specific CSS */

h1,
.h1,
h2,
.h2,
h3,
.h3,
h4,
.h4,
h5,
.h5,
h6,
.h6 {
    font-family: "Abel", Helvetica, Roboto, Arial, sans-serif;
    color: var(--colour-1);
}

body {
    font-family: "Abel", Helvetica, Roboto, Arial, sans-serif;
    font-weight: 500;
}

h1 {
    color: var(--colour-1);
    font-weight: 800;
}

i.fa-solid,
i.fa-brands {
    font-size: 22px;
    color: var(--colour-2);
    transition: color 0.3s;
}

a.inline-flex i.fa-solid {
    color: var(--colour-2);
    font-size: 18px;
}

a:hover i,
a.inline-flex:hover i.fa-solid {
    color: var(--colour-3);
}

.flex-center {
    display: flex;
    align-items: center;
}

.flex-end {
    display: flex;
    align-items: end;
}

.content {
    display: flex;
    margin: auto;
    padding: 0 1rem;
}

.flex-column {
    display: flex;
    flex-direction: column;
}

.section-area {
    padding: 2rem 0 1rem 0;
    z-index: 1;
    position: relative;
}

.section-area.alt {
    background: #fffcdf;
}

html {
    scroll-behavior: auto;
}

u {
    text-decoration-thickness: 7%;
    text-underline-offset: 4px;
}

.grid-container {
    padding-left: 1rem;
    padding-right: 1rem;
    padding-bottom: 1rem;
}

/* CALLOUT BUTTON STYLING */

.callout.behind {
    z-index: -1;
    border-radius: 0.5rem;
    box-shadow: rgb(0 0 0 / 5%) 1px 1px 5px 2px;
    overflow: hidden;
    margin-bottom: 0;
    display:flex;
    flex-direction:column;
    height:100%;
}

.callout.services {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    text-align: center;
    border-radius: 0;
    border:none;
    box-shadow:none;
    margin-bottom: 0;
    overflow: hidden;
    height:100%;
}

.callout.services.nopad h4 {
    display:flex;
    justify-content: center;
    align-items: center;
    background:none;
    color:var(--colour-1);
}

.zoom-img {
    overflow:hidden;
    position:relative;
}

.zoom-img img {
    transition:transform 0.3s;
}

.zoom-img h3 {
    position:absolute;
    opacity:0;
    display:flex;
    height:100%;
    width:100%;
    color:white;
    justify-content: center;
    align-items: center;
    background:#32578794;
    z-index:1;
    transition:opacity 0.3s;
}

a:hover .zoom-img h3 {
    opacity:1;
}

a:hover>.callout.nopad.services {
    box-shadow:none;
    transform:none;
}

a:hover>.callout.nopad.services img {
    transform:scale(1.2);
}

a:hover>.callout.nopad.services h4 {
    background:none;
}

.callout.services i.fa-solid {
    font-size: 48px;
    color: #143552;
    transition: none;
    line-height: 1;
}

.callout.nopad.services img {
    object-fit: cover;
    /* height: 100%; */
    max-height:250px;
    object-position:top;
}

.callout.nopad {
    padding: 0;
    text-align: center;
    transition: transform 0.3s, box-shadow 0.3s;
}

.callout.nopad img {
    object-fit: cover;
    width: 100%;
}

.callout.about-us-contact {
    max-width:700px;
    margin:auto;
    margin-top:2rem;
    text-align:center;
}
.callout.about-us-contact h5 {
    font-weight:700;
}
.callout.about-us-contact p {
    margin-bottom:0.2rem;
    font-size:16px;
}

.callout.careers-contact {
    /* max-width:700px; */
    margin:auto;
    text-align:center;
}
.callout.careers-contact h5 {
    font-weight:700;
    margin-bottom:2rem;
}
.callout.careers-contact p {
    margin-bottom:0.2rem;
    font-size:16px;
    margin-top:1.5rem;
}
.callout.careers-contact li {
    /* margin-bottom:0.2rem; */
    font-size:16px;
    text-align:left;
}
.callout.careers-contact a {
    color:#992f3b;
    text-decoration: underline;
}
.callout.careers-contact a:hover {
    color:#1a3a49;
}
.callout.careers-contact a.theme-button {
    color:white;
    text-decoration: none;
}
.callout.careers-contact a.theme-button:hover {
    color:white;
}
.section-links {
    margin-top: 2rem;
}

.section-links .callout.nopad img {
    object-fit: cover;
    width: 100%;
    margin: 0;
    border-radius: 0;
    height: 150px;
}

.callout.nopad h4 {
    margin: 0;
    padding: 0.5rem;
    background: var(--colour-3);
    color: white;
    transition: background 0.3s;
}

.callout.nopad.alt h4 {
    background: var(--colour-2);
}

a:hover>.callout.nopad h4 {
    background: var(--colour-2);
}

a:hover>.callout.nopad.alt h4 {
    background: #82a6e0;
}

.callout.nopad p {
    margin: 0;
    padding: 0.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-grow:1;
}

a:hover>.callout.nopad {
    transform: translateY(-5px);
    box-shadow: rgb(0 0 0 / 10%) 1px 5px 5px 2px;
}

.our-values .callout {
    border-radius:0.5rem;
    text-align:center;
    display:flex;
    flex-direction: column;
    padding: 2rem 1.5rem;
    background:whitesmoke;
    border:none;
    gap: 0.3rem;
}

.our-values .callout .value-text {
    display:flex;
    /* flex-grow:1; */
    align-items: center;
}
.our-values .callout h4 {
    font-weight:600;
}
.our-values .callout h4:after {
    content: '';
    display: block;
    height: 3px;
    width: 1rem;
    margin: 1rem auto 0 auto;
    background: #c77072;
}

.our-values .callout p {
    margin:0;
    font-size:17px;
}

/*MEDIUM AND UP*/
@media print,
screen and (min-width: 40em) {
    .section-area {
        padding: 6rem 0 0rem 0;
    }

    .section-area.contact-footer {
        padding: 2rem 0 2rem 0;
    }

    .last-section {
        padding-bottom: 4rem;
    }
    .callout.services h4 {
        min-height:60px;
    }

}

/* NAVIGATION BAR */



@property --gradColour1 {
    syntax: '<color>';
    initial-value: rgb(79 99 72 / 80%);
    inherits: false;
}

@property --gradColour2 {
    syntax: '<color>';
    initial-value: rgb(79 99 72 / 55%);
    inherits: false;
}

@property --gradColour3 {
    syntax: '<color>';
    initial-value: transparent;
    inherits: false;
}

img.nav-logo {
    /* width:100%;
    max-width:500px; */
    /* padding: 10px; */
    max-height: 120px;
}

img.nav-logo.white {
    display: none;
}

.menu a {
    color: var(--colour-3);
    font-weight: 800;
}

a.is-active {
    color: var(--colour-1);
}

.top-bar,
.top-bar ul {
    /* background-color: #fffcdf; */
    /* background-color: #fff; */
    background: none;
}

.top-bar {
    padding: 0.1rem;
    background: white;
}

a.theme-button.client-portal {
    padding:0.5rem 1.2rem;
    background:var(--colour-2);
    line-height:1;
    color:var(--colour-1) !important;
    font-size:18px;
    font-weight:800;
}

a.theme-button.client-portal:hover {
    background:white;
}

/*ANCHORED NAV BAR STYLE*/

.top-bar.is-anchored {
    width: 100%;
}

.top-bar.is-anchored img.nav-logo {
    display: none;
    display: block;
}

.top-bar.is-anchored img.nav-logo.white {
    display: block;
}

.top-bar.is-anchored a {
    color: var(--colour-3);
    font-weight: 800;
}

.top-bar.is-anchored i.fa-solid,
.top-bar.is-anchored i.fa-brands {
    font-size: 22px;
    color: var(--colour-2);
    /* color:white; */
    transition: color 0.3s;
}

.top-bar.is-anchored a.inline-flex i.fa-solid {
    /* color: var(--colour-2); */
    font-size: 18px;
}

.top-bar.is-anchored a:hover i {
    color: var(--colour-3);
}



.top-bar.is-anchored a.inline-flex:hover i.fa-solid {
    /* color: #003b4a; */
}

.top-bar.is-anchored .top-bar-contact {
    border-bottom: 1px solid #0000006b;
}

.top-bar.is-anchored .is-dropdown-submenu {
    border: 1px solid #ffffff;
    background: rgba(0, 0, 0, 0.4);
}

.top-bar.is-anchored .dropdown.menu>li.is-active>a {
    color: #97aacd;
    color: #dfb3b0;
}

.dropdown.menu.medium-horizontal>li.is-dropdown-submenu-parent>a::after {
    margin-top: -1px;
}

.top-bar.is-anchored .dropdown.menu>li.is-dropdown-submenu-parent>a::after {
    border-color: #b06d69 transparent transparent !important;

}

.top-bar-contact {
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid #0000006b;
    padding-bottom: 0.5em;
    overflow: hidden;
    margin-top: 0.7rem;
}

.top-bar-contact .left .menu {
    /* gap: 0.5rem; */
}

.top-bar-contact .right .menu {
    gap: 0.5rem;
}

.top-bar-contact .right {
    margin-right: 0.5rem;
    margin-left: 2rem;
}

.top-bar-contact .right a {
    padding: 0.5rem 0.5rem;
}

/*END ANCHORED NAV BAR STYLE*/

/*REVEAL OVERLAY NAV BAR*/

.is-reveal-open .top-bar {
    background: white;
}

.is-reveal-open .top-bar.is-anchored {
    box-shadow: rgba(0, 0, 0, 0.05) 1px 1px
}

.is-reveal-open .top-bar-contact {
    display: none;
}

.is-reveal-open .is-anchored .menu.medium-horizontal {
    margin-top: 12px;
}

.is-reveal-open .top-bar.is-anchored img.nav-logo {
    display: block;
}

.is-reveal-open .top-bar.is-anchored img.nav-logo.white {
    display: none;
}

.is-reveal-open .top-bar.is-anchored a {
    color: rgb(0, 0, 0);
}

.is-reveal-open .top-bar.is-anchored .dropdown.menu.medium-horizontal a:hover {
    color: #97aacd;
}

.is-reveal-open .top-bar.is-anchored i.fa-solid,
.is-reveal-open .top-bar.is-anchored i.fa-brands {
    font-size: 18px;
    color: #000000;
    transition: color 0.3s;
}

/*END REVEAL OVERLAY NAV BAR*/

.top-bar.is-stuck {
    box-shadow: rgba(0, 0, 0, 0.1) 1px 1px 5px 0px;
}

.top-bar-container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    max-width: 1400px;
    margin: auto;
    gap: 1.5rem;
    min-height: 120px;
}

ul.menu li {
    text-align: center;
}

ul.menu.vertical li {
    text-align: left;
}

.sticky-container {
    /* position: fixed; */
    width: 100%;
    z-index: 100;
    top: 0;
}

.is-stuck .top-bar-contact {
    /* display: none; */

}

.is-stuck .menu.medium-horizontal {
    margin-top: 0.3em;
}

.inline-flex {
    display: flex !important;
    gap: 0.3em;
    align-items: center;
}

ul.nav-links li {
    font-size: 18px;
}

.title-bar {
    background: var(--colour-1);
    background:white;
    flex-direction: column;
    gap: 1rem;
}

.title-bar .menu-box {
    width: 100%;
    margin: auto;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.5rem;
    background: #353535;
}

#mobile-menu {
    background: white;
}

#mobile-menu a {
    color:var(--colour-1);
}

.dropdown.menu.medium-horizontal a {
    position: relative;
    padding: 0.7rem 0.5rem;
    margin: 0 0.5rem;
}

.dropdown.menu.medium-horizontal a:hover {
    color: var(--colour-2);
    color: var(--colour-2);
}

/* .menu.medium-horizontal a::before {
    transition: 300ms;
    height: 2px;
    content: "";
    position: absolute;
    background-color: #00234d;
    left: 0;
    bottom: 0;
    width: 0%;

} */

.dropdown.menu>li.is-active>a {
    color: #dfb3b0;
}

.dropdown.menu>li.is-dropdown-submenu-parent>a::after {
    border-color: #b06d69 transparent transparent !important;
}

.accordion-menu .is-accordion-submenu a {
    padding: 0.7rem 2rem;
}

.accordion-menu .is-accordion-submenu-parent:not(.has-submenu-toggle)>a::after {
    border-color: #dfb3b0 transparent transparent !important;
}

.align-left.vertical.menu>li:nth-of-type(n+2) {
    border-top: 1px #9b9b9b8f solid;
}

/* .dropdown.menu > li.is-dropdown-submenu-parent.is-active > a::after {
    border-color: #446093 transparent transparent !important;
} */

.top-bar .is-dropdown-submenu {
    min-width: 300px;
    border: 1px solid #f7eccd;
    background: rgb(79 99 72 / 100%);
}

.menu.medium-horizontal a:hover::before {
    width: 100%;
}

a.inline-flex {
    transition: background 0.5s, color 0.5s;
    border-radius: 0.5rem;
    padding: 0.7rem 0.7rem;
}

a.inline-flex span {
    position: relative;
    /* top:1px; */
}

a.inline-flex:hover {
    background: #fff;
    color: var(--colour-2);
}

.button-container {
    display: flex;
    justify-content: center;
    margin-top: 1rem;
    margin-bottom: 1rem;
}

a.theme-button {
    background:var(--colour-1);
    border-radius: 0.5rem;
    color: white;
    padding: 0.6rem 1.5rem;
    font-size: 20px;
    display: flex;
    transition: background 0.3s;
}


a.theme-button:hover {
    background: var(--colour-2);
}

.dropdown.menu.medium-horizontal a.theme-button {
    padding: 0.7rem 1.5rem;
}

.dropdown.menu.medium-horizontal a.theme-button:hover {
    color: white;
}

.dropdown.menu.medium-horizontal a.theme-button::before {
    content: none;
}

/*MEDIUM UP*/
@media print,
screen and (min-width: 40em) {

    .top-bar {
        -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
    }

    .top-bar .top-bar-left {
        -webkit-box-flex: 0;
        -webkit-flex: 0 1 auto;
        -ms-flex: 0 1 auto;
        flex: 0 1 auto;
        margin-right: 0;
        margin-left: 0.5rem;
    }

    .top-bar .top-bar-right {
        -webkit-box-flex: 1;
        -webkit-flex: 0 1 auto;
        -ms-flex: 0 1 auto;
        flex: 0 1 auto;
        margin-left: 0;
        /* max-width:900px; */
        min-width: 800px;
        min-width: 680px;
    }

    .menu.medium-horizontal {
        justify-content: space-between;
        margin-top: 0.3em;
    }

}


/* LARGE AND UP */
@media screen and (min-width: 64em) {

    .button-container {
        margin-bottom: 2rem;
    }

    .header-section {
        /* margin-top: 123px; */
    }

}

/* XLARGE AND UP */
@media screen and (min-width: 75em) {
    .top-bar-container {
        gap: 5rem;
    }
}


/************/
/* VIDEO HEADER */
/************/

.video-header-box {
    max-height: 100vh;
    min-height: 600px;
    position: relative;
    height: calc(100vh - 123px);
}

#video_header {
    position: relative;
    /* bottom: -10px; */
    width: 100%;
    /* z-index: -1; */
    object-fit: cover;
    display: block;
    min-height: 600px;
    height:100%; 

}

/* SLIDER HEADER */
.orbit-bullets {
    display:flex;
    justify-content: center;
    gap: 0.2rem;
    position: absolute;
    bottom: 0;
    width: 100%;
    z-index:2;
}

.orbit-bullets button {
    background:white;
}

.orbit-bullets button.is-active {
    background:var(--colour-2);
}

.orbit-image {
    min-height:600px;
    max-height:calc(100vh - 120px);
    object-fit: cover;
}

/* HOME */

.header-section {
    background: #fffcdf;
    position: relative;
    overflow: hidden;
}

.header-section img.header {
    width: 100%;
    object-fit: cover;
    max-height: 800px;
    min-height: 600px;
    object-position: 30% center;
}

.header-section .overlay {
    position: absolute;
    opacity: 0;
    height: 100%;
    width: 100%;
    background: rgba(0, 0, 0, 0.3);
    animation: fadeIn 1s both;
    animation-delay: 1.5s;
}

.header-section .hero-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    position: absolute;
    width: 100%;
    bottom: 0;
    z-index: 1;
    height: 100%;
    justify-content: center;
}

.hero-container img {
    max-width: 400px;
    padding: 1rem;
    border-radius: 0.5rem;
    background: white;
}

.hero-container h1 {
    width: 95%;
    text-align: center;
    /* background: #145c599c; */
    color: white;
    padding: 20px 10px;
    margin: 0;
    text-shadow: 0px 0px 5px black;
}

.hero-container h2 {
    width: 95%;
    text-align: center;
    /* background: #145c58; */
    color: white;
    font-weight: 800;
    padding: 0px 10px 20px 10px;
    margin: 0;
    text-shadow: 0px 0px 5px black;
}

.hero-container.alt h1 {
    background: #152f5e9c;
}

.hero-container.alt h2 {
    background: #152f5e;
}

.header-section h1 {
    font-size: 34px;
}

.section-title {
    margin-bottom: 2rem;
    text-align: center;
}

.section-title:after {
    content: '';
    display: block;
    height: 5px;
    width: 100px;
    margin: 25px auto;
    background: #E0952F;
    background: var(--colour-2);
}

.section-desc {
    text-align:center;
    max-width:min(80rem, 90%);
    margin:auto;
    margin-bottom:2rem;
}

.section-divider {
    background:var(--colour-4);
    padding: 3.5em 3em;
    margin-top:2.5rem;
    color: white;
}

.section-divider p {
    max-width:85rem;
    margin:auto;
    font-size:1.6em;
    text-align:center;
}

.section-divider.alt {
    background:var(--colour-1);
}

.section-divider.alt p {
    color:white;
}

.section-area p,
.header-section p {
    font-size: 20px;

    font-size: 1rem;
}

.section-area li {
    font-size: 1rem;
    margin-bottom: 0.5rem;
    margin-left:1.5rem;
    padding-left:0.5rem;
}

.section-area h2,
.section-1 h2 {
    text-align: center;
    margin-bottom: 2rem;
}

.section-callouts .grid-x {
    justify-content: center;
}

.image-caption {
    height:100%;
    display:flex;
    flex-direction:column;
    padding:1rem 0;
}

.image-caption img {
    width:100%;
    flex-grow:1;
    object-fit:cover;
}

.image-caption p {
    margin:0;
    padding-top:0.2rem;
    background:var(--colour-1);
    color:white;
    font-style: italic;
    text-align:center;
    font-size:18px !important;
}

.alertbox-buffer {
    min-height: 2rem;
}

.alertbox-container {
    /* position:absolute; */
    /* left:0;right:0;top:50px; */
    margin-top: 5rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-end;
    gap: 1rem;
}

.alertbox.callout {
    max-width: min(750px, 70%);
    margin: 0;
    border-radius: 5px;
    background: rgb(223 237 252);
    z-index: 20;
}

.alertbox.callout.alert {
    background: #800;
    min-width: 300px;
    color: white;
}

.alert-flex {
    display: flex;
    align-items: center;
    gap: 1rem;
}

.alert-flex img {
    height: 100px;
    width: 100px;
    object-fit: contain;
    max-height: none;
    min-height: initial;
}

.alertbox .alert_title {
    text-align: center;
    font-size: 1.2rem;
    font-weight: bold;
}

/* SECTIONS */

.section-about {
    text-align:left;
}

.section-about ul {
    list-style-position: outside;
    margin:0;
    margin-left:2rem;
}

.section-about ul ul {
    list-style-type: circle;
    margin-top:0.5rem;
}

.section-about li {
    margin-left:0;
    padding:0;
    line-height:1.2;
}

#splide .splide__arrow--prev {
    left: -3em;
}

#splide .splide__arrow--next {
    right: -3em;
}

#splide .splide__pagination__page.is-active {
    background: var(--colour-1);
}

#splide .splide__pagination {
    bottom:-2.5rem;
}

#splide p.testimonial-name {
    color:var(--colour-1);
    font-style:italic;
    font-weight: 900;
}

.section-2 img {
    border-radius: 10px;
}

.section-1 {
    padding-top: 2rem;
}

.section-2 {
    padding: 0 0 4rem 0;
    z-index: 0;
}

.section-1 .grid-container,
.section-2 .grid-container {
    max-width: 80em;
}

.full-width-border {
    margin: 1rem;
    background: #f4f4f4;
    display: flex;
    padding: 3rem;
    align-items: center;
    justify-content: center;
}

.full-width-border h2 {
    font-size: 1.5rem;
}

.text-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.text-content p:last-of-type {
    margin-bottom: 0;
}

img.full-height {
    height: 100%;
    width: 100%;
    object-fit: cover;
}

.pricing-table {
    display:flex;
    flex-direction:column;
    box-shadow: 0 1px 3px rgba(0,0,0,.12), 0 1px 2px rgba(0,0,0,.24);
    border: none;
    align-items:center;
}

.pricing-table * {
    text-align:center;
}

.pricing-table a.theme-button {
    display:block;
    margin-bottom:1rem;
}

.pricing-table ul {
    width:100%;
}

.pricing-table ul,
.pricing-table li {
    margin:0;
    padding:0;
}

.pricing-table ul.accordion ul {
    list-style: none;
    margin:0;
}
.pricing-table ul.accordion ul li {
    margin:0;
    padding: 0.5rem 1rem;
    border-bottom: dotted 1px #ddd;
}

.accordion-title,
.accordion-content {
    border:none !important;
}

.accordion-title {
    font-size:18px;
    background: #6b92d2;
}
.accordion-title:hover,
.accordion-title:focus {
    background: #8cb1ec;
    color:black;
}

.accordion-content {
    padding:0;
}

.pricing-table img {
    width:100%;
}

.pricing-table h2 {
    margin:0;
    padding: 1rem 0;
}

.pricing-table h2.title {
    width:100%;
    color:white;
    background:var(--colour-1);
}

.pricing-table .description {
    padding:1rem 0;
    background:rgb(243, 243, 243)
}

.pricing-table .description :last-child {
    margin-bottom:0;
}

/* MEDIUM */
@media print,
screen and (min-width: 40em) {
    .hero-container h1 {
        font-size: 48px;
    }

    .hero-container h2 {
        font-size: 2.2rem;
    }

    .hero-container h1,
    .hero-container h2 {
        width: min(900px, 80%);
    }

    .section-2 .hero-container h1,
    .section-2 .hero-container h2 {
        width: min(1200px, 80%);
    }

    .alertbox-buffer {
        min-height: 3rem;
    }

    .full-width-border {
        padding: 5rem 5rem;
    }

    .full-width-border h2 {
        font-size: 2.5rem;
    }

    .section-area p,
    .header-section p {
        font-size: 20px;
    }

    .section-area li {
        font-size: 20px;
    }
}

/* LARGE AND UP */
@media screen and (min-width: 64em) {

    /* :target::before {
        height: 160px;
        fixed header height
        margin: -160px 0 0;
        negative fixed header height
    } */

    .link-anchor {
        display: block;
        position: relative;
        top: -150px;
        visibility: hidden;
    }

    .hero-container h1 {
        font-size: 60px;
    }

    .alertbox-container {
        margin-top: 3.5rem;
    }

    .section-1 {
        padding-top: 3rem;
    }

    .alertbox-buffer {
        min-height: 4rem;
    }

    .full-width-border {
        padding: 5rem 10rem;
    }
}

/* PARALLAX */

.parallax {
    background-repeat: no-repeat;
    background-position: center center;
    background-attachment: fixed;
    background-size: cover;
    height: 30vh;
    /* margin-top: 2rem; */
}

.parallax.lazyload {
    background-image: none !important
}

.parallax.parallax-1 {
    background-image: url(../images/cp-bg-3.webp);
}

.parallax.parallax-2 {
    background-image: url(../images/cp-bg-4.webp);
}

.parallax.parallax-3 {
    background-image: url(../images/cp-bg-5.webp);
    /* background-position:right; */
}

.parallax.parallax-5 {
    background-image: url(../images/cp-bg-6.webp);
}

.parallax.parallax-4 {
    background-image: url(../images/cp-bg-2.webp);
}

/* LARGE AND UP */
@media screen and (min-width: 64em) {

    .parallax {
        margin-top: 2rem;
        height:50vh;
    }
}

/* END PARALLAX*/

/* SUB-PAGE */

.sub-page .header-section {
    min-height: 250px;
    /* margin-top:8rem; */
}

/* .sub-page .header-section .hero-container {
    bottom: 30px;
} */

.sub-page .header-section {
    background: none;
    background-image:
        linear-gradient(rgba(0, 0, 0, 0.02), rgba(0, 0, 0, 0.5)),
        url(../images/pp-news-header.webp);
    background-size: cover;
    background-position: center 25%;
}

.aid49331 .header-section {
    background-image: url(../images/header-1.webp);
    /*ABOUT*/
}

.aid49332 .header-section {
    background-image: url(../images/header-3.webp);
    /*OUR-WORK*/
    background-position: center center;
}

.aid49333 .header-section {
    background-image: url(../images/header-4.webp);
    /*GET-INVOLVED*/
}

.aid49841 .header-section {
    /*NEWS & EVENTS*/
    background: none;
    background-image:
        linear-gradient(rgba(0, 0, 0, 0.02), rgba(0, 0, 0, 0.5)),
        url(../images/header-default.webp);
    background-position: center 25%;
}

.sub-page .section-2 .hero-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-bottom: 2rem;
}

.sub-page .section-area img {
    /* width:100%; */
    height: 100%;
    display: block;
    margin: auto;
    border-radius: 0.5rem;
    margin-top: 0.5rem;
    margin-bottom: 1rem;

}

.sub-page .section-area .grid-x {
    align-items: center;
}

.section-area.our-team-area {
    padding-top: 0rem;
}

.section-area.our-team-area .grid-x {
    justify-content: center;
}

.our-team img {
    max-height:400px;
    object-position:top;
}

.news-page .section-area .grid-x {
    align-items: normal;
}

.services-page .section-area .grid-x {
    align-items: normal;
}

#services-menu {
    background: #f4f4f4;
}

#services-menu.menu .is-active>a {
    background: #152f5e;
    color: #fefefe;
}

#services-menu a {
    font-weight: 800;
}

.branding-area {
    display: flex;
    flex-wrap: wrap;
    padding: 1.5rem 1.5rem;
    align-items: center;
    justify-content: center;
    gap: 2.5rem;
    width: fit-content;
    margin: 1rem auto;
    box-shadow: 0 1px 4px rgba(0, 0, 0, 0.3), 0 0 40px rgba(0, 0, 0, 0.1) inset;
}

.branding-area img {
    max-height:150px;
    max-width:200px;
}

/* SUB-PAGE MQs */
/* LARGE AND UP */
@media screen and (min-width: 64em) {

    /* .sub-page .header-section .hero-container {
        bottom: 100px;
    } */

    .sub-page .header-section {
        min-height: 500px;
        max-height: 600px;
        /* margin-top:8.5rem; */
    }

    .sub-page .section-1 {
        padding-top: 3rem;
    }

    .sub-page .section-area img {
        width: 100%;
    }
}

/* NEWS */

a .news-item-container:hover {
    transform: translateY(-5px);
    box-shadow: 0 14px 28px rgb(0 0 0 / 25%), 0 10px 10px rgb(0 0 0 / 22%);
}

.news-item-container {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    box-shadow: #7a7a7a 0 0 5px 0px;
    /* margin-bottom: 30px; */
    transition: box-shadow 0.3s cubic-bezier(.25, .8, .25, 1), transform 0.3s ease-out;
    background: white;
    border-radius: 5px;
    overflow: hidden;
    height:100%;
}

.news-item-container img {
    max-height: 200px;
    object-fit: cover;
    width: 100%;
    height: 200px;
}

.news-item-container p {
    padding: 0rem 1rem;
    font-size: 15px;
}


.news-item-container p.news-title {
    margin-top: 0.5rem;
    font-weight: 900;
    font-size: 17px;
    color: #132a40;
}

.news-item-container p.news-description {
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.news-item-container p.news-read-more {
    font-size: 15px;
    line-height: normal;
    margin-bottom: 0.8rem;
    font-weight: 900;
}

/*TESTING AOS*/
 div.aos.visible:nth-of-type(n) {
    animation-delay: 0s;
}

/* LARGE AND UP */
@media screen and (min-width: 40em) {


     div.aos.visible:nth-of-type(2n) {
        animation-delay: 0.1s;
    }

}

/* LARGE AND UP */
@media screen and (min-width: 64em) {

     div.aos.visible:nth-of-type(3n-2) {
        animation-delay: 0s;
    }

     div.aos.visible:nth-of-type(3n-1) {
        animation-delay: 0.1s;
    }

     div.aos.visible:nth-of-type(3n) {
        animation-delay: 0.2s;
    }

}
/*END TESTING*/


.news-grid div.visible:nth-of-type(n) {
    animation-delay: 0s;
}

/* LARGE AND UP */
@media screen and (min-width: 40em) {


    .news-grid div.visible:nth-of-type(2n) {
        animation-delay: 0.1s;
    }

}

/* LARGE AND UP */
@media screen and (min-width: 64em) {

    .news-grid div.visible:nth-of-type(3n-2) {
        animation-delay: 0s;
    }

    .news-grid div.visible:nth-of-type(3n-1) {
        animation-delay: 0.1s;
    }

    .news-grid div.visible:nth-of-type(3n) {
        animation-delay: 0.2s;
    }

}

/* NEWS ARTICLE PAGE */

.news-page .header-section {
    text-align: center;
}

.news-share-links-top {
    display: flex;
    align-items: center;
    margin: 0.5rem 0 2rem 0;
    gap: 1rem;
}

.news-share-links-top ul {
    display: flex;
    list-style: none;
    margin: 0;
    gap: 0.8rem;
}

.news-share-links-top li {
    margin: 0;
}

.news-share-links-top p {
    margin: 0;
    line-height: normal;
    font-size: 16px;
}

.news-share-links-top i {
    font-size: 22px;
    color: var(--colour-1);
}

.news-page #article {
    padding: 0.5rem;
}

.news-page #article h1.content_title {
    display: inline-block;
    padding-bottom: 1rem;
    border-bottom: solid #305a592e;
}

.news-page #article .articledescription {
    font-size: 20px;
    font-weight: 600;
    line-height: 1.6;
    margin-bottom: 1rem;
}

.news-page #article img {
    width: 95%;
    display: inline-block;
}

div#index {
    padding: 1rem;
    border-radius: 1rem;
    background: var(--colour-1);
    color: white;
    box-shadow: rgb(0 0 0 / 10%) 1px 1px 5px 0px;
}

div#archive {
    padding: 1rem;
    border-radius: 1rem;
    background: #e7e7e7;
    color: #132a40;
    margin-top: 2rem;
    margin-bottom: 2rem;
    box-shadow: rgb(0 0 0 / 10%) 1px 1px 5px 0px;
}

div#listing ul {
    list-style: none;
    margin: 0;
}

div#listing p.newsindexheading {
    font-size: 30px;
    text-align: center;
}

div#listing a {
    color: white;
    font-size: 16px;
}

div#listing a:hover {
    color: var(--colour-2);
}

div#archive a {
    color: #132a40;
}

div#listing li {
    padding-bottom: 0.5rem;
    margin-top: 0.5rem;
    border-bottom: solid 1px;
    margin-left:0;
    padding-left:0;
}

.news-form-container {
    background: #e2f1ff;
    padding: 2rem 2rem 1.5rem 2rem;
    border-radius: 1rem;
    margin-bottom: 2rem;
    box-shadow: rgb(0 0 0 / 10%) 1px 1px 5px 0px;
}

.news-form-container label {
    font-size: 18px;
}

.news-form-container input,
.news-form-container textarea {
    border-radius: 0.3rem;
}

.news-form-container textarea {
    min-height: 6rem;
}

/* LARGE AND UP */
@media screen and (min-width: 64em) {

    .news-page .header-section {
        padding: 12rem 0 4rem 0;
        text-align: center;
    }

    .news-form-container {
        margin-bottom: 0;
    }
}

/* CALL TO ACTION */

.call-to-action {
    color: white;
    padding: 0;
    margin: 0 2rem;
}

.sub-page .call-to-action {
    padding: 1rem 0 4rem 0;
}

.call-to-action .grid-container {
    max-width: 85rem;
}

.call-to-action h1 {
    color: white;
    font-size: 2.5rem;
}

.call-to-action p {
    /* margin:0; */
    font-size: 2rem;
}

.cta-container {
    background: rgb(21 47 94);
    background: linear-gradient(46deg, rgb(21 47 94) 0%, rgb(53 83 139) 100%);
    border-radius: 1rem;
    padding: 2rem;
    box-shadow: 0px 24px 40px 0px rgba(1, 28, 46, 0.24);
    text-align: center;
}

.cta-buttons {
    margin: 0;
    gap: 2rem;
    justify-content: center;
}

.cta-buttons a.theme-button {
    justify-content: center;

}

.cta-buttons a.cta-phone {
    background: white;
    color: #132a40;
    display: flex;
    align-items: center;
    gap: 1rem;
    padding: 0.5rem 1rem;
    border-radius: 5px;
    transition: all 0.3s;
    justify-content: center;
}

.cta-buttons a.cta-phone:hover {
    background: #b6c5e2;
    color: white;
}

.cta-buttons i.fa-solid {
    font-size: 18px;
    color: #97aacd;
}

.cta-buttons a.cta-phone:hover i.fa-solid {
    color: #132a40;
}


/* LARGE AND UP */
@media screen and (min-width: 64em) {
    .cta-container {
        text-align: left;
    }

    .call-to-action h1 {
        font-size: 4rem;
    }

    .call-to-action {
        padding: 4rem 0 0 0;
    }

    .sub-page .call-to-action {
        padding: 4rem 0 4rem 0;
    }
}

/* CONTACT FORM */

.contact-form-area {
    background: #152f5e;
    background: linear-gradient(191deg, #152f5e 0%, #254072 100%);
}

.contact-form-area .contact-form {
    background: #f5faff;
    padding: 2rem 2rem 1.5rem 2rem;
    border-radius: 1rem;
    margin: 1rem;
}


.contact-form-area ul {
    margin: 0;
    margin-left: -1rem;
}

.contact-form-area ul li {
    display: flex;
    align-items: center;
    gap: 1rem;
    margin-bottom: 1.5rem;
    color: white;
    font-size: 18px;

}

.contact-form-area ul li a {
    display: flex;
    align-items: center;
    gap: 1rem;
    color: white;
    padding: 0.5rem 1rem;
    border-radius: 5px;
    transition: all 0.3s;
}

.contact-form-area ul li a:hover {
    background: white;
    color: #132a40;
}

.contact-form-area a,
.contact-form-area h2 {
    color: white;
}

.contact-form-area p {
    font-size: 16px;
}

.contact-form-area h2 {
    text-align: center;
}

.contact-form-area i.fa-solid,
.contact-form-area i.fa-brands {
    font-size: 18px;
    color: #97aacd;
}

.contact-form-area .section-text {
    margin: auto 1rem;
    justify-content: center;
    display: flex;
}


/* CONTACT FOOTER */

.contact-footer {
    background: var(--colour-1);
    background: #f3f3f3;
}

input.theme-button {
    background: var(--colour-3);
    border-radius: 0.5rem;
    color: white;
    padding: 1rem 3rem;
    font-size: 18px;
    display: flex;
    border: none;
    margin-top: 1.5rem;
    width: 100%;
    justify-content: center;
}

input.theme-button:hover {
    background: var(--colour-2);
    color: white;
}

.contact-footer ul.socials {
    margin: 0;
    /* margin-left: -1rem; */
}

.contact-footer ul.socials li {
    display: flex;
    align-items: center;
    /* margin-bottom: 0.8rem; */
    justify-content: center;
    margin:0;
    padding:0;
}

.contact-footer ul.socials li a {
    display: flex;
    align-items: center;
    padding: 1rem;
    border-radius: 5px;
    /* transition: background 0.3s; */
}

.contact-footer ul.socials a.inline-flex {
    color: var(--colour-3);
    font-weight: 600;
    font-size: 16px;
    padding: 0.5rem 0.5rem;
    gap: 0.5rem;
}

.contact-footer ul.socials a.inline-flex i {
    font-size: 22px;
    position:relative;
    bottom:-1px;
}

.contact-footer ul.socials a.inline-flex:hover {
    color: var(--colour-2);
}

.contact-footer ul.socials li a:hover {
    background: none;
}

.contact-footer ul.disclaimers {
    justify-content: center;
    gap: 0.5rem;
}

.contact-footer ul.disclaimers li {
    margin: 0;
    font-size: 16px;
}

.contact-footer ul.disclaimers li a {
    color: var(--colour-3);
    border-radius: 5px;
}

.contact-footer ul.disclaimers li a:hover {
    color: var(--colour-1);
    /* background: white; */
}

.contact-footer a,
.contact-footer h2 {
    color: #181818;
}

.contact-footer p {
    font-size: 16px;
    text-align: center;
}

.contact-footer h2 {
    text-align: center;
}

.contact-footer i.fa-solid,
.contact-footer i.fa-brands {
    font-size: 18px;
    color: white;
}

.contact-footer .socials {
    justify-content: center;
    gap: 0.5rem;
}

.contact-footer i.fa-brands,
.contact-footer i.fa-solid {
    font-size: 36px;
    color:var(--colour-2);
}

.contact-footer a:hover i {
    color: var(--colour-3);
}

.contact-footer .is-dropdown-submenu {
    min-width: 150px;
    border: 1px solid #181818;
}

/* .contact-footer .section-text {
    margin: 1rem;
} */

.contact-footer p.liability {
    margin-bottom: 0;
    font-size: 13px;
    color: var(--colour-3);
    margin-top: 1rem;
}

.contact-footer .contact-form {
    background: #fffef8;
    background: none;
    /* padding: 2rem 2rem 1.5rem 2rem; */
    border-radius: 1rem;
    margin: 1rem;
}

ul.contact-us {
    list-style: none;
    margin-top: 1rem;
    font-size: 20px;
}

ul.contact-us li {
    padding: 0.5rem 1rem;
}

ul.contact-us li a {
    display: flex;
    align-items: center;
    gap: 1rem;
    color: #181818;
    /* padding: 0.5rem 1rem; */
    border-radius: 5px;
    transition: all 0.3s;
}

ul.contact-us i {
    font-size: 20px;
    position: relative;
    top: 1px;
}

.contact-form input,
.contact-form textarea {
    border-radius: 0.3rem;
}

.contact-form textarea {
    min-height: 6rem;
}

.contact-form label {
    color: var(--colour-3);
    font-size: 16px;
    font-weight: 600;
}

.google-map iframe {
    display: block;
    width: 100%;
}

.sitemap {
    background: #152f5e;
    padding: 1rem;
}

.sitemap a {
    color: white;
}

.sitemap a:hover {
    color: #d7fdfb;
}

.sitemap ul {
    display: flex;
    list-style: none;
    gap: 2rem;
    margin: 0;
    justify-content: center;
    font-weight: bold;
    font-size: 0.9rem;
}

.sitemap ul ul {
    font-weight: 400;
    flex-direction: column;
    gap: 0;
    font-size: 0.8rem;
}

.sitemap a {
    padding: 0.2rem;
}

/* FOOTER */

.acknowledgement-of-country {
    background: #b17f22;
    color: white;
    padding: 1rem;
}

.acknowledgement-of-country p {
    margin: 0;
    text-align: center;
}

.footer-main {
    padding: 1rem;
    background: #414042;
    font-size: 0.8rem;
}

.footer-main .grid-container {
    padding:0;
}

.footer-main p,
.footer-main a {
    margin: 0;
    color: white;
}

/*MODAL STYLING*/

.close-button, .close-button.medium {
    right: 0.5rem;
    top: 0.2rem;
    font-size: 1.8em;
    line-height: 1;
}

.reveal {
    border-radius: 0.5rem;
    padding: 2rem;
}

.reveal.staff-profile {
    max-width: 60em;
}

.reveal.staff-profile img {
    margin-bottom:0.3rem;
    float:none;
}

.reveal.staff-profile .staff-profile-details {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap:0.1rem;
    text-align:center;
}

.reveal.staff-profile .staff-profile-details h2 {
    line-height:1.2;
    font-size:28px;
    margin-bottom:0;
}

.reveal.staff-profile .staff-profile-details span.role {
    color:var(--colour-1);
}

.reveal.staff-profile .staff-profile-details span.credentials {
    
}

.reveal.staff-profile .modal-email {
    display:flex;
    margin-top:0.5rem;
    align-items: center;
    gap:0.5rem;
}

.reveal.staff-profile .modal-email:hover i {
    color:var(--colour-2);
}

.reveal.service {
    padding:0;
    border:none;
    max-width:60rem;
}

.reveal.service .service-modal {
    padding:0;
    display:flex;
}

.reveal.service .service-modal img {
    width:100%;
    max-height:150px;
    object-fit:cover;
    margin-bottom:0.5rem;
}

.reveal.service .service-modal .side-colour {
    min-width:5%;
    background:var(--colour-4);
    max-width:50px;
}

.reveal.service .service-modal-text {
    padding:2rem;
}

.reveal.service .service-modal-text a.theme-button {
    display:inline-block;
}

.reveal.service h2.article_title:after {
    content: '';
    display: block;
    height: 5px;
    width: 100px;
    margin: 0.3rem 0 0.7rem 0;
    background: var(--colour-2);
}

.staff-profile p:last-of-type {
    margin-bottom: 0;
}

#dingo .grid-x .columns {
    padding:0.5rem
}

#dingo_tax h1,
#dingo_tax h2 {
    font-size:2rem
}

#newsletters.reveal a {
    color: var(--colour-1);
    color: black;
    line-height: 1.8;
}

#newsletters.reveal a:hover {
    color: var(--colour-3);
    text-decoration: underline;
    text-underline-offset: 5px;
}

@media print,
screen and (max-width: 39.99875em) {
    .reveal {
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        width: 100%;
        max-width: none;
        margin-left: 0;
        border: 0;
        border-radius: 0;
    }
}

@media print,
screen and (min-width: 40em) {
    .reveal {
        width: 95%;
        max-width: 75rem;
    }
    #tax-deductions.reveal {
        max-width: 65rem;
    }
    .reveal.staff-profile img {
        max-height: 360px;
        width: 100%;
        object-fit: cover;
        object-position: 50% 35%;
    }
}

/*END MODAL STYLING*/

/* messages */
#message_box {
    background: #080;
    padding: 10px 20px;
    color: #FFF;
    font: 18px arial, helvetica, sans-serif;
    border: 2px solid #050;
    border-radius: 4px;
    margin: 10px 0;
}

#error_message_box {
    background: #800;
    padding: 10px 20px;
    color: #FFF;
    font: 18px arial, helvetica, sans-serif;
    border: 2px solid #400;
    border-radius: 4px;
    margin: 10px 0;
}

/* Ticker */
#ticker_core {
    height: 20px;
    padding: 13px 20px 0 20px;
}

/* jsticker_scroll and jsticker_scroll_vertical */
.scrollingtext {
    position: absolute;
}

#jsticker_scroll {
    position: relative;
    height: 30px;
    width: 980px;
    display: block;
    overflow: hidden;
    margin: 0 auto;
    margin: 10px;
}

#jsticker_scroll div {
    display: inline-block;
    margin: 0;
}

#jsticker_scroll a {
    color: #333;
    display: block;
    padding: 8px 20px;
    font: 11px Verdana;
}

#jsticker_scroll a:hover {
    color: #090;
}

#jsticker_scroll .scrollingtext {
    white-space: nowrap;
}


/* ANIMATE ON SCROLL TESTING */

.aos {
    visibility: hidden;
}

.aos.visible {
    visibility: visible;
}

.aos.slideUp.visible {
    transform: translateY(100%);
    animation: slideUp 0.5s both;
}

.aos.slideDown.visible {
    transform: translateY(-100%);
    animation: slideDown 0.5s both;
}

.aos.fadeOut {
    visibility: visible;
    animation-delay: 0s !important;
    animation: fadeOut 0.5s both;
}

.aos.fadeIn.visible {
    animation: fadeIn 1s both;
}

/* BASIC ANIMATIONS */
@keyframes slideUp {
    from {
        transform: translatey(90%);
        opacity: 0;
    }

    to {
        transform: translateY(0);
        opacity: 1;
    }
}

@keyframes fadeOut {
    from {
        opacity: 1;
    }

    to {
        opacity: 0;
        visibility: hidden
    }
}

@keyframes fadeIn {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

@keyframes slideDown {
    from {
        transform: translatey(-100%);
        opacity: 0
    }

    to {
        transform: translateY(0);
        opacity: 1
    }
}

/*TIMELINE*/

@media (min-width: 1200px) {
    #timeline .demo-card:nth-child(odd) .head::after, #timeline .demo-card:nth-child(even) .head::after {
        position: absolute;
        content: "";
        width: 0;
        height: 0;
        border-top: 15px solid transparent;
        border-bottom: 15px solid transparent;
   }
    #timeline .demo-card:nth-child(odd) .head::before, #timeline .demo-card:nth-child(even) .head::before {
        position: absolute;
        content: "";
        width: 9px;
        height: 9px;
        background-color: #bdbdbd;
        border-radius: 9px;
        box-shadow: 0px 0px 2px 8px #f7f7f7;
   }
}
/* Some Cool Stuff */
.demo-card:nth-child(1) {
    order: 1;
}
.demo-card:nth-child(2) {
    order: 4;
}
.demo-card:nth-child(3) {
    order: 2;
}
.demo-card:nth-child(4) {
    order: 5;
}
.demo-card:nth-child(5) {
    order: 3;
}
.demo-card:nth-child(6) {
    order: 6;
}
/* #timeline {
    padding: 100px 0;
    background: #f7f7f7;
    border-top: 1px solid rgba(191, 191, 191, 0.4);
    border-bottom: 1px solid rgba(191, 191, 191, 0.4);
} */
#timeline h1 {
    text-align: center;
    font-size: 3rem;
    font-weight: 200;
    margin-bottom: 20px;
}
#timeline p.leader {
    text-align: center;
    max-width: 90%;
    margin: auto;
    margin-bottom: 45px;
}
#timeline .demo-card-wrapper {
    position: relative;
    margin: auto;
}
@media (min-width: 1200px) {
    #timeline .demo-card-wrapper {
        display: flex;
        flex-flow: column wrap;
        width: 1170px;
        height: 888px;
        margin: 0 auto;
   }
}
#timeline .demo-card-wrapper::after {
    z-index: 1;
    content: "";
    position: absolute;
    top: 0;
    bottom: 0;
    left: 50%;
    width:1px;
    background:rgba(191, 191, 191, 0.4);
    height:95%;
    /* border-left: 1px solid rgba(191, 191, 191, 0.4); */
}
@media (min-width: 1200px) {
    #timeline .demo-card-wrapper::after {
        /* border-left: 1px solid #bdbdbd; */
        background:#bdbdbd;
        height:90%;
   }
}
#timeline .demo-card {
    position: relative;
    display: block;
    margin: 10px auto 40px;
    max-width: 94%;
    z-index: 2;
    border-radius:1rem;
}
#timeline .demo-card:hover{
    transform:translateY(-10px);
}
@media (min-width: 480px) {
    #timeline .demo-card {
        max-width: 80%;
        box-shadow: 0px 1px 22px 4px rgba(0, 0, 0, 0.07);
   }
}
@media (min-width: 720px) {
    #timeline .demo-card {
        max-width: 80%;
   }
}
@media (min-width: 1200px) {
    #timeline .demo-card {
        max-width: 450px;
        height: auto;
        margin: 90px;
        margin-top: 45px;
        margin-bottom: 45px;
   }
    #timeline .demo-card:nth-child(odd) {
        margin-right: 45px;
   }
    #timeline .demo-card:nth-child(odd) .head::after {
        border-left-width: 15px;
        border-left-style: solid;
        left: 100%;
   }
    #timeline .demo-card:nth-child(odd) .head::before {
        left: 491.5px;
   }
    #timeline .demo-card:nth-child(even) {
        margin-left: 45px;
   }
    #timeline .demo-card:nth-child(even) .head::after {
        border-right-width: 15px;
        border-right-style: solid;
        right: 100%;
   }
    #timeline .demo-card:nth-child(even) .head::before {
        right: 489.5px;
   }
    #timeline .demo-card:nth-child(2) {
        margin-top: 180px;
   }
}
#timeline .demo-card .head {
    position: relative;
    display: flex;
    align-items: center;
    color: #fff;
    font-weight: 400;
    justify-content: center;
}
#timeline .demo-card .head .number-box {
    display: inline;
    float: left;
    margin: 15px;
    padding: 10px;
    font-size: 35px;
    line-height: 35px;
    font-weight: 600;
    background: rgba(0, 0, 0, 0.17);
}
#timeline .demo-card .head h2 {
    /* text-transform: uppercase; */
    font-size: 1.3rem;
    font-weight: inherit;
    /* letter-spacing: 2px; */
    margin: 0;
    /* padding-bottom: 6px; */
    /* line-height: 1rem; */
    /* margin-right: 4rem; */
    font-weight:600;
}
@media (min-width: 480px) {
    #timeline .demo-card .head h2 {
        font-size: 1.5rem;
        /* line-height: 1.2rem; */
        color:white;
        flex-grow:1;
        text-align: left;
   }
}
#timeline .demo-card .head h2 span {
    display: block;
    font-size: 0.6rem;
    margin: 0;
}
@media (min-width: 480px) {
    #timeline .demo-card .head h2 span {
        font-size: 0.8rem;
   }
}
#timeline .demo-card .body {
    background: #fff;
    border: 1px solid rgba(191, 191, 191, 0.4);
    border-top: 0;
    padding: 15px;
    border-bottom-left-radius: 0.8rem;
    border-bottom-right-radius: 0.8rem;
}
@media (min-width: 1200px) {
    #timeline .demo-card .body {
        height: 315px;
   }
}
#timeline .demo-card .body p {
    font-size: 14px;
    line-height: 18px;
    margin-bottom: 15px;
    margin-bottom:0;
}
#timeline .demo-card .body img {
    display: block;
    width: 100%;
}
#timeline .demo-card--step1 {
    background-color: #46b8e9;
    background-color: var(--colour-2);
}
#timeline .demo-card--step1 .head::after {
    border-color: #46b8e9;
    border-color: var(--colour-2);
}
#timeline .demo-card--step2 {
    background-color: #3ee9d1;
    background-color: var(--colour-2);
}
#timeline .demo-card--step2 .head::after {
    border-color: #3ee9d1;
    border-color: var(--colour-2);
}
#timeline .demo-card--step3 {
    background-color: #ce43eb;
    background-color: var(--colour-2);
}
#timeline .demo-card--step3 .head::after {
    border-color: #ce43eb;
    border-color: var(--colour-2);
}
#timeline .demo-card--step4 {
    background-color: #4d92eb;
    background-color: var(--colour-2);
}
#timeline .demo-card--step4 .head::after {
    border-color: #4d92eb;
    border-color: var(--colour-2);
}
#timeline .demo-card--step5 {
    background-color: #46b8e9;
    background-color: var(--colour-2);
}
#timeline .demo-card--step5 .head::after {
    border-color: #46b8e9;
    border-color: var(--colour-2);
}


/*
MESSAGE BOX ---------------------------------------------
*/

/* This is the container for the message box */
#messages {
    width: 100%;
    position: absolute;
    bottom: 0px;
    z-index: 10;
}

#messages:after {
    content: '';
    display: table;
    clear: both;
}

/* message box */
.msgbox_messages {
    width: 100%;
    padding: 0px 0px;
    height: 50px;
    min-height: 50px;
    background: var(--colour-3);
}

.msgbox_message {
    width: 100%;
}

.msgbox_title {
    font: bold 24px Calibri, sans-serif;
    color: #FFF;
    display: block;
    line-height: 50px;
    text-align: center;
}

.msgbox_title a {
    font: bold 24px Calibri, sans-serif;
    color: #FFF;
    display: block;
    padding: 0 10px;
    line-height: 50px;
    text-decoration: none;
    transition-property: background-position;
    transition-duration: 1s;
}

.msgbox_title a:hover {
    background: var(--colour-2);
    color: #FFF;
}

.msgbox_body {
    padding: 10px;
    font: 15px arial, sans-serif;
    line-height: 140%;
}

.msgbox_body a {
    color: #F00;
}

.msgbox_prevnext {
    border-radius: 0 0 5px 5px;
    background: #444;
    height: 50px;
    overflow: hidden;
    width: 100%;
}

.msgbox_prevnext a {
    color: #AAA;
    display: block;
    width: 50%;
    float: left;
    font: bold 32px arial;
    line-height: 50px;
    text-align: center;
}

.msgbox_prevnext a:hover {
    color: #FFF;
    background: #222;
}

/* LetterFX */

.letterfx {
    display: inline-block;
    margin: 0;
    padding: 0;
    transition: all 1s;
    -ms-transition: all 1s;
    -webkit-transition: all 1s
}

.letterfx-spin-before {
    transform: rotate(3600deg);
    -ms-transform: rotate(3600deg);
    -webkit-transform: rotate(3600deg)
}

.letterfx-spin-after {
    transform: none
}

.letterfx-fade-before {
    opacity: 0
}

.letterfx-grow-before {
    transform: scale(0, 0);
    -ms-transform: scale(0, 0);
    -webkit-transform: scale(0, 0)
}

.letterfx-grow-after {
    transform: none
}

.letterfx-smear-before {
    color: transparent;
    text-shadow: -1px -1px 25px transparent
}

.letterfx-smear-after {
    color: inherit;
    text-shadow: 0 0 #333
}

.letterfx-fall-before {
    visibility: hidden;
    transform: scale(3, 3);
    -ms-transform: scale(3, 3);
    -webkit-transform: scale(3, 3)
}

.letterfx-fall-after {
    transform: scale(1, 1);
    -ms-transform: scale(1, 1);
    -webkit-transform: scale(1, 1);
    text-shadow: 0
}

.letterfx-swirl-before {
    visibility: hidden;
    transform: scale(3, 3) rotate(3600deg);
    -ms-transform: scale(3, 3) rotate(3600deg);
    -webkit-transform: scale(3, 3) rotate(3600deg)
}

.letterfx-swirl-after {
    transform: none text-shadow:0
}

.letterfx-wave-container .letterfx {
    position: relative
}

.letterfx-wave-before {
    bottom: 0
}

.letterfx-wave-after {
    bottom: 15px
}

.letterfx-fly-left-container .letterfx,
.letterfx-fly-right-container .letterfx,
.letterfx-fly-top-container .letterfx,
.letterfx-fly-bottom-container .letterfx {
    position: relative
}

.letterfx-fly-left-before {
    left: -50em
}

.letterfx-fly-left-after {
    left: 0
}

.letterfx-fly-right-before {
    right: -50em
}

.letterfx-fly-right-after {
    right: 0
}

.letterfx-fly-top-before {
    top: -20em
}

.letterfx-fly-top-after {
    top: 0
}

.letterfx-fly-bottom-before {
    bottom: -20em
}

.letterfx-fly-bottom-after {
    bottom: 0
}