/*
	Theme Name: Concept
	Theme URI: http://opuscreative.ie
	Description: An Opus Creative Theme for Small and Large Business
	Version: 1.4.3
	Author: Gareth Barry
	Author URI: http://opuscreative.ie
	Tags:  Responsive, Brochure, Minimalist, Design

	License: MIT
	License URI: http://opensource.org/licenses/mit-license.php
*/
/*------------------------------------*\
    ADDITIONS 2022
\*------------------------------------*/
.blog{
    justify-content: center;
    align-items:center;
}
.blog .col-12{
    max-width: 800px;
}
.client-t{
  background-color: #e1e1e1;
  text-align: center;
  padding: 80px 0 80px 0;
}
.candidate-t{
  padding: 80px 0 0 0;
  text-align: center;
}
#wrapper .case-studies p{
  font-size: 16px;
  line-height: 24px;
  padding: 10px;
  margin: 0;
}

#wrapper .tt_img_circle img {
  border-radius: 50%;
  overflow: hidden;
  width: 100px;
  height: 100px;
  margin: 10px 20px;
}

#wrapper .ttshowcase_rl_info_wrap{
  min-width: 200px;
  font-weight: 100;
  font-size: 16px;
  padding-bottom: 20px;
}

#wrapper .ttshowcase_rl_title {
  font-weight: 500;
}
/*------------------------------------*\
    MAIN
\*------------------------------------*/
/* global box-sizing */
*,
*:after,
*:before {
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-font-smoothing: antialiased;
    font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}

/* html element 62.5% font-size for REM use */
html {
    font-size: 62.5%;
}

body {
    font-family: "Poppins", sans-serif !important;
    color: #430098 !important;
}

/* clear */
.clear:before,
.clear:after {
    content: " ";
    display: table;
}

.clear:after {
    clear: both;
}

.clear {
    *zoom: 1;
}

img {
    max-width: 100%;
    vertical-align: bottom;
}

#wrapper a {
    color: #430098 ;
    text-decoration: none;
}

#wrapper .slim a {
    font-weight: bold;
    color: #430098 ;
    text-decoration:underline;
}

#wrapper a:hover {
    color: #430098 ;
    text-decoration: none;
}

#wrapper a:focus {
    outline: 0;
    text-decoration: none;
}

#wrapper a:hover,
#wrapper a:active {
    outline: 0;
}

input:focus {
    outline: 0;
    border: 0;
}

/*------------------------------------*\
    STRUCTURE
\*------------------------------------*/
/* device rotation hidden */
.turnDeviceNotification {
    background-color: #430098;
    padding: 80px;
    position: fixed;
    z-index: 99999;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    display: none;
}

.turnDeviceNotification-inner {
    display: flex;
    flex-direction: column;
    align-items: center;
    align-content: center;
    justify-content: center;
    height: 100%;
}

.turnDeviceNotification h1 {
    color: white;
    margin: 0 0 20px 0;
}

.turnDeviceNotification p {
    font-size: 1.6rem;
    margin-top: 20px;
    text-align: center;
    color: #fff;
}

/* scroll to content */
#scroll-outer {
    position: absolute;
    z-index: 9998;
    width: 100%;
    bottom: 4%;
    left: 0;
    right: 0;
}

#scroll-inner {
    max-width: 36px;
    margin: 0 auto;
}

#scroll-inner div {
    width: 36px;
    height: 24px;
}

#scroll-inner a {
    z-index: 9999;
}

/* encapsulate content in a slim container */
.slim {
    max-width: 760px;
    margin: 0 auto;
}

.slim img{
    width: 100%;
    height: auto;
}

/* page images within the slim class container */
.slim .image,
.slim-2 .image {
    background-size: cover;
    background-position: top;
    margin-bottom: 80px;
    height: 400px;
    max-height: 400px;
}

/* encapsulate content in a slim container with scrolling icon */
.slim-2 {
    max-width: 950px;
    margin: 0 auto;
}

/* scroll icon wihtin slim 2 container with mouse */
.slim-2 .scroll {
    position: -webkit-sticky;
    position: sticky;
    top: 40px;
}

/* force ajax load more into full-width */
#ajax-load-more {
}

.slim ul{
    list-style:circle;
    padding: 0 0 0 40px;
    margin: 0 0 40px 0;
    font-size: 2rem;
}

.slim ol{
    list-style:decimal;
    padding: 0 0 0 40px;
    margin: 0 0 40px 0;
    font-size: 2rem;
}

.slim ul li,
.slim ol li{
    margin: 0 0 20px 0;
}

/* force ajax load more to comply with bootstrap */
.alm-reveal .col-sm-6,
.alm-reveal .col-sm-4,
.alm-reveal .col-sm-3,
.alm-reveal .col-md-4,
.alm-reveal .col-lg-4,
.alm-reveal .col-lg-6,
.alm-reveal .col-xl-4,
.alm-reveal .col-6 {
    float: left;
}

/* remove ajax load more button container */
#wrapper .alm-btn-wrap {
    display: none;
}

/* back link */
.back{
    font-size: 2.6rem;
    font-weight:600;
    padding: 0 0 20px 0;
    border-bottom: #f1f1f1 4px solid;
}

/* add top and bottom border to headings */
.title-border {
    border-top: #f1f1f1 4px solid;
    border-bottom: #f1f1f1 4px solid;
    padding: 80px 0 80px 0;
    margin-top: 0;
    margin-bottom: 0 !important;
}

/* circle progress bar */
.progressbar {
    display: flex;
    flex-direction: column;
    width: 100%;
    height: auto;
}

/* circle progress bar */
.progressbar {
  display: flex;
  flex-direction: column;
  width: 100%;
  height: auto;
}

.counter-circle {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    width:auto;
    height: auto;
    margin: 0 auto;
    position: relative;
    text-align: center;
}

.counter-circle canvas {
    display: none;
    /*
    vertical-align: middle;
    border-radius: 50%;
    */
}

.counter-circle div {
    float: left;
    width:auto;
    text-align: center;
    line-height: normal;
    color: #06f0ff;
    font-weight: 600;
    font-size: 10rem;
}

.counter-circle span{
    float: right;
    font-size: 10rem;
    color: #06f0ff;
    font-weight: 600;
}

div#service:first-child {
    border-right: #f1f1f1 4px solid;
}

#service img {
    margin-bottom: 40px;
}

#service .cb-2 {
    margin-bottom: 0px;
}

#map iframe {
    width: 100%;
}

/* content dividers */
.breaker {
    border-bottom: #f1f1f1 4px solid;
    margin: 80px 0 80px 0;
}

.breaker-sm {
    border-bottom: #f1f1f1 4px solid;
    margin: 40px 0 40px 0;
}

.breaker-alt {
    border-bottom: #f1f1f1 4px solid;
    margin: 0 0 80px 0;
}

/* call to action blocks */
.cta {
    margin: -110px 0 0 0;
}

.cta .cta-block {
    position: relative;
    z-index: 1;
    min-height: 250px;
    max-width: 570px;
    margin-left: auto;
    margin-right: auto;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    background-color: white;
    padding: 40px;
}

/*posts categories*/
.jobs-main .post-categories {
    display: flex;
    justify-content: left;
    list-style: none;
    padding: 0;
    margin: 5px 0 0 0;
    font-size: 2rem;
    font-weight: 600;
}

.post-categories {
    display: flex;
    justify-content: center;
    list-style: none;
    padding: 0;
    margin: 5px 0 0 0;
    font-size: 2rem;
    font-weight: 600;
    color: #06f0ff !important;
}

.post-categories a {
    color: #06f0ff !important;
}

/*content filters*/
#filter{
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 0;
    margin: 0 auto;
    list-style: none;
}

#filter li a{
    display: block;
    cursor: pointer;
    font-size: 2rem !important;
    outline: none !important;
    background-color: #430098;
    color: white !important;
    text-align: center;
    width: 220px;
    border: 0;
    border-radius: 10px !important;
    padding: 7px 30px !important;
    margin: 0 15px 0 15px;
    font-weight: 600;
}

/*------------------------------------*\
                 TYPOGRAPHY
\*------------------------------------*/
#wrapper h1 {
    font-size: 3.6rem;
    color: #fff;
    font-weight: 600;
}

#wrapper h2 {
    font-size: 2.6rem;
    margin-bottom: 40px;
    font-weight: 600;
}

#wrapper h3 {
    font-size: 2.5rem;
    font-weight: 600;
}

#wrapper h3 a{
    color: #06F0FF;
}

#wrapper h4 {
    font-size: 2rem;
    padding: 0;
    margin: 0;
    font-weight: 600;
    color: #06f0ff;
}

#counter h3 {
    font-size: 4.6rem;
    color: #4c6d5d;
    padding: 40px 0 20px 0;
    margin: 0;
    line-height: normal;
    font-weight: 600;
}

#wrapper p {
    font-size: 2rem;
    margin-bottom: 40px;
    font-weight: 400;
}

#wrapper p.category{
    color: #06F0FF;
}

#wrapper p.category a{
    color: #06F0FF;
    margin-top: 20px;
    font-weight: 400;
    font-size: 1.8rem;
}

/* variations one  established font color and size*/
.primary {
    color: #430098 !important;
}

.secondary {
    color: #0e1318 !important;
}

.tertiary {
    color: #06F0FF;
}

.f-lg {
    font-size: 3.6rem !important;
}

.f-md {
    font-size: 2.6rem !important;
}

.f-sm {
    font-size: 2rem !important;
}

.f-xs{
    font-size: 1.8rem !important;
}

strong{
    font-weight: 800 !important;
}

/*------------------------------------*\
    SPACING & MARGINS
\*------------------------------------*/
.rm {
    margin: 0px !important;
}

/*margins*/
.m-80 {
    margin-top: 80px !important;
    margin-bottom: 80px !important;
}

.m-40 {
    margin-top: 40px !important;
    margin-bottom: 40px !important;
}

.m-t_160 {
    margin-top: 160px !important;
}

.m-t_120 {
    margin-top: 120px !important;
}

.m-tb_80_40 {
    margin-top: 80px !important;
    margin-bottom: 40px !important;
}

.m-tb_40_80 {
    margin-top: 40px !important;
    margin-bottom: 80px !important;
}

.m-tb_20_40 {
    margin-top: 20px !important;
    margin-bottom: 40px !important;
}

.m-t_80 {
    margin-top: 80px !important;
}

.m-t_40 {
    margin-top: 40px !important;
}

.m-b_80 {
    margin-bottom: 80px !important;
}

.m-b_40 {
    margin-bottom: 40px !important;
}

/*padding*/
.p-80 {
    padding-top: 80px !important;
    padding-bottom: 80px !important;
}

.p-40 {
    padding-top: 40px !important;
    padding-bottom: 40px !important;
}

.p-t_160 {
    padding-top: 160px !important;
}

.p-t_120 {
    padding-top: 120px !important;
}

.p-tb_80_40 {
    padding-top: 80px !important;
    padding-bottom: 40px !important;
}

.p-tb_40_80 {
    padding-top: 40px !important;
    padding-bottom: 80px !important;
}

.p-t_80 {
    padding-top: 80px !important;
}

.p-t_40 {
    padding-top: 40px !important;
}

.p-b_80 {
    padding-bottom: 80px !important;
}

.p-b_40 {
    padding-bottom: 40px !important;
}

/*------------------------------------*\
    NAVIGATION
\*------------------------------------*/
#sidebar {
    width: 280px;
    position: fixed;
    top: 0;
    left: -280px;
    height: 100vh;
    z-index: 999;
    background: #430098;
    color: #fff;
    transition: all 0.3s;
    overflow-y: scroll;
    box-shadow: 3px 3px 3px rgba(0, 0, 0, 0.2);
}

#sidebar.active {
    left: 0;
}

.overlay {
    display: none;
    position: fixed;
    width: 100vw;
    height: 100vh;
    background: rgba(0, 0, 0, 0.7);
    z-index: 2;
    opacity: 0;
    transition: all 0.5s ease-in-out;
}

.overlay.active {
    display: block;
    opacity: 1;
}

.mCSB_container {
    display: flex;
    flex-direction: column;
    min-height: 100%;
}

#sidebar .sidebar-header {
    padding: 50px 20px 50px 25px;
    background: transparent;
}

#sidebar .sidebar-header img {
    max-width: 160px;
}

#sidebar .sidebar-header a {
    padding: 0px;
}

#sidebar ul p {
    color: #fff;
    padding: 10px;
}

#sidebar ul li a {
    padding: 10px 20px 10px 20px;
    font-size: 1.6em;
    display: block;
    color: white;
}

#sidebar ul li a:hover {
    color: #4c6d5d;
    background: #fff;
}

#sidebar ul li.active>a,
a[aria-expanded="true"] {
    color: #fff;
    background: #4c6d5d;
}

.navbar-nav .fa {
    margin: 2px 0 0 0;
    transition: .3s transform ease-in-out;
}

.navbar-nav a[aria-expanded="true"] .fa {
    transform: rotate(180deg);
}

.main-nav ul {
    position: absolute;
    min-width: 240px;
    padding: 0;
    margin: 0;
    list-style: none;
    top: 80px;
    margin: 0 0 0 -80px;
    padding: 10px;
    background-color: #430098;
    text-align: center;
    border-radius: 20px;
}

.main-nav ul:after, .arrow_box:before {
    bottom: 100%;
    left: 50%;
    border: solid transparent;
    content: " ";
    height: 0;
    width: 0;
    position: absolute;
    pointer-events: none;
}

.main-nav ul:after {
    border-color: rgba(0, 36, 46, 0);
    border-bottom-color: #430098;
    border-width: 10px;
    margin-left: -10px;
}

.main-nav ul:before {
    border-color: rgba(0, 36, 46, 0);
    border-bottom-color: #430098;
    border-width: 12px;
    margin-left: -12px;
}

.main-nav li {
    padding: 10px 15px 10px 15px;
}

.main-nav .collapsing {
    -webkit-transition: none;
    transition: none;
    display: none;
}

a[data-toggle="collapse"] {
    position: relative;
}

ul.contact {
    height: 100%;
    padding: 0;
    margin: 0;
    list-style: none;
    display: flex;
    flex-direction: column;
    flex-grow: 2;
    justify-content: flex-end;
}

ul.contact a {
    text-align: left;
    display: block;
    border-radius: 5px;
    margin-bottom: 5px;
}

.navbar img {
    max-width: 200px;
}

.navbar {
    min-height: 60px;
    z-index: 2;
    padding: 0 !important;
}

#wrapper .navbar-brand h1,
#wrapper .navbar-brand,
#wrapper .navbar-brand:hover {
    color: white;
    margin: 0;
}

.navbar-nav li a,
.navbar-nav li a:hover,
.navbar-nav li a:visited,
.navbar-nav li a:active {
    text-decoration: none;
    background-color: transparent !important;
    color: white !important;
    font-size: 1.5rem;
    margin-left: 0;
    margin-right: 0;
}

.navbar button {
    outline: none !important;
    background-color: #4c6d5d;
    font-size: 1.5rem !important;
    color: white;
    border: 0;
    width: auto;
    border-radius: 30px !important;
    padding: 10px 20px !important;
    margin: 0 0 0 20px;
}

.navbar .hamburger {
    font-size: 1.4rem !important;
    outline: none !important;
    background-color: transparent;
    color: white;
    border: 0;
    border-radius: 0px !important;
    padding: 0rem !important;
}

.navbar .hamburger-fixed {
    display: flex !important;
    align-items: center;
    align-content: center;
    justify-content: center;
    position: fixed;
    right: 20px;
    top: 45px;
    background-color: #430098;
    min-width: 50px;
    max-width: 50px;
    width: 50px;
    height: 50px;
    border-radius: 50% !important;
}

.navbar .navbar-toggler {
    outline: none !important;
    background-color: transparent !important;
    font-size: 1.5rem !important;
    color: white;
    border: 0;
    border-radius: 0 !important;
    padding: 0 !important;
}

/* Icon 1 */
.animated-icon1, .animated-icon2, .animated-icon3 {
    width: 30px;
    height: 25px;
    position: relative;
    margin: 0px;
    float: right;
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-transition: .5s ease-in-out;
    -moz-transition: .5s ease-in-out;
    -o-transition: .5s ease-in-out;
    transition: .5s ease-in-out;
    cursor: pointer;
}

.animated-icon1 span, .animated-icon2 span, .animated-icon3 span {
    display: block;
    position: absolute;
    height: 3px;
    width: 100%;
    border-radius: 9px;
    opacity: 1;
    left: 0;
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-transition: .25s ease-in-out;
    -moz-transition: .25s ease-in-out;
    -o-transition: .25s ease-in-out;
    transition: .25s ease-in-out;
}

.animated-icon1 span {
    background: #ffffff;
}

.animated-icon2 span {
    background: #ffffff;
}

.animated-icon3 span {
    background: #ffffff;
}

.animated-icon1 span:nth-child(1) {
    top: 0px;
}

.animated-icon1 span:nth-child(2) {
    top: 10px;
}

.animated-icon1 span:nth-child(3) {
    top: 20px;
}

.animated-icon1.open span:nth-child(1) {
    top: 11px;
    -webkit-transform: rotate(135deg);
    -moz-transform: rotate(135deg);
    -o-transform: rotate(135deg);
    transform: rotate(135deg);
}

.animated-icon1.open span:nth-child(2) {
    opacity: 0;
    left: -60px;
}

.animated-icon1.open span:nth-child(3) {
    top: 11px;
    -webkit-transform: rotate(-135deg);
    -moz-transform: rotate(-135deg);
    -o-transform: rotate(-135deg);
    transform: rotate(-135deg);
}

.navbar-nav .open,
.navbar-nav .show {
    min-width: 240px;
    background-color: #430098;
}

/* dropdown menu */
.dropdown-menu{
    min-width:196px !important;
    text-align: center !important;
    top: -8px !important;
    border: 0 !important;
    border-radius:  0 0 10px 10px !important;
    background-color: #430098 !important;
}

/*------------------------------------*\
    CONTENT BLOCKS
\*------------------------------------*/
.hero-lg {
    position: relative;
    background-attachment: fixed;
    background-position: bottom;
    background-color: #430098;
    background-size: cover;
    width: 100%;
    height: 600px;
}

.hero-md {
    position: relative;
    background-attachment: fixed;
    background-position: bottom;
    background-color: #430098;
    background-size: cover;
    width: 100%;
    height: 500px;
}

.hero-sm {
    position: relative;
    background-position: top;
    background-size: cover;
    width: 770px;
    height: 400px;
    margin-top: -200px;
}

.hero-lg section {
    position: relative;
    z-index: 1;
    text-align: center;
    padding-left: 15px;
    padding-right: 15px;
    margin-top: 140px;
    top: 0;
    left: 0;
    width: 100%;
    height: auto;
}

.hero-md section{
    position: relative;
    z-index: 1;
    text-align: center;
    padding-left: 15px;
    padding-right: 15px;
    margin-top: 140px;
    top: 0;
    left: 0;
    width: 100%;
    height: auto;
}

.hero-lg .line,
.hero-md .line,
.hero-sm .line {
    float: left;
    width: 8px;
    height: 40px;
    background-color: #4c6d5d;
    margin: 9px 20px 0 0;
}

.hero-lg section h1,
.hero-md section h1,
.hero-sm section h1 {
    font-size: 4.6rem;
    color: white;
    font-weight: 600;
}

.hero-lg .hero-overlay,
.hero-md .hero-overlay,
.hero-sm .hero-overlay {
    width: 100%;
    height: 100%;
    opacity: 0.4;
    filter: alpha(opacity=40);
    /* For IE8 and earlier */
    position: absolute;
    background-color: #000;
}

.cb-1 h2 {
    font-size: 2.6rem;
    color: #4c6d5d;
    font-weight: 600;
}

.cb-2 h2 {
  min-height: 70px;
}

.cb-2 {
    text-align: center;
    width: 100%;
    min-height: 450px;
    height: auto;
    margin-bottom: 80px;
    background-repeat: no-repeat;
}

.cb-2 div {
    width: 100%;
    height: 350px;
    margin-bottom: 40px;
    background-position: top center;
    background-size:cover;
}

.cb-3 {
    text-align: center;
    width: 100%;
    height: auto;
    margin-bottom: 80px;
    background-repeat: no-repeat;
}

.cb-3 div {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 250px;
    margin-bottom: 40px;
    background-position: top;
    background-size: cover;
    background-color: #430098;
}

.cb-4 {
    text-align: center;
    width: 100%;
    height: auto;
    margin-bottom: 80px;
    background-repeat: no-repeat;
}

.cb-4 div {
    width: 100%;
    height: 200px;
    margin-bottom: 40px;
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
}

.cb-4 p {
    margin: 40px 0 0 0 !important;
    padding: 0 !important;
}

.cb-5 {
    text-align: center;
    width: 100%;
    height: auto;
    margin-bottom: 80px;
    background-repeat: no-repeat;
}

.cb-5 div {
    width: 100%;
    height: 140px;
    margin-bottom: 40px;
    background-position: center center;
    background-size: contain;
    background-repeat: no-repeat;
}

.cb-5 h3 {
    margin: 20px 0 20px 0;
}

.cb-6 {
    text-align: center;
    width: 100%;
    height: auto;
    background-repeat: no-repeat;
}

.cb-6 div {
    width: 100%;
    height: 140px;
    margin-bottom: 40px;
    background-color: white;
    background-position: center center;
    background-size: contain;
    background-repeat: no-repeat;
}

/* date settings for content blocks */
.cb-1 .subheading,
.cb-2 .subheading,
.cb-3 .subheading,
.cb-4 .subheading,
.cb-5 .subheading,
.cb-6 .subheading {
    margin: 0 auto;
    font-size: 2.6rem;
    color: #430098;
    font-weight: 600;
    height: auto;
}

.subheading a {
    color: #4c6d5d;
}

/* content block bg colours */
.grey {
    background-color: #F0F1F1;
}

.partner-img{
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 10px;
}

/*------------------------------------*\
    BUTTONS
\*------------------------------------*/
section button,
button,
a.button {
    display: block;
    font-size: 2rem !important;
    outline: none !important;
    background-color: #430098;
    color: white !important;
    text-align: center;
    min-width: 280px;
    max-width: 380px;
    border: 0;
    border-radius: 10px !important;
    padding: 7px 30px !important;
    margin: 0 15px 0 15px;
    font-weight: 600;
}

.jobs-main .button{
    display: block;
    clear: both;
    font-size: 2rem !important;
    outline: none !important;
    background-color: #430098;
    color: white !important;
    text-align: center;
    width: 280px;
    border: 0;
    border-radius: 10px !important;
    padding: 7px 30px !important;
    margin: 40px 0 0 0;
    font-weight: 600;
}

#branda-cookie-notice .cookie-notice-container .branda-cn-container .branda-cn-column a.button {
    padding: 5px 10px !important;
    font-size: 1.4rem !important;
    font-weight: 400 !important;
    margin: 0;
    white-space: nowrap;
    display: inline;
}

/* add display block to button */
.btn-block-alt{
    min-width: 100% !important;
    max-width: 100% !important;
    width: 100% !important;
    display: block !important;
    clear: both !important;
    margin: 0 !important;
}

/*------------------------------------*\
    FORMS
\*------------------------------------*/

#wrapper .forminator-field label{
    color: #430098;
    opacity: 1; /* Firefox */
    font-size: 2rem;
    font-weight: normal;
}

#wrapper .forminator-custom-form input {
    background-color: transparent;
    padding: 18px;
    border: #f8f1f9 4px solid;
    border-radius: 8px;
    margin-bottom: 20px;
    font-size: 2rem;
    -webkit-appearance: none;
}

#wrapper .forminator-file-upload span{
    display: none;
}

#wrapper .forminator-custom-form textarea {
    background-color: transparent;
    padding: 18px;
    border: #f8f1f9 4px solid;
    border-radius: 8px;
    min-height: 210px;
    font-size: 2rem;
    -webkit-appearance: none;
    line-height: normal;
}

#wrapper .forminator-custom-form button{
    display: block;
    font-size: 2rem !important;
    outline: none !important;
    background-color: #430098;
    color: white !important;
    text-align: center;
    width: 100%;
    border: 0;
    border-radius: 10px !important;
    padding: 10px 30px !important;
    margin: 0;
    font-weight: 600;
}

#wrapper .forminator-button-delete{
    font-size: 2rem !important;
    outline: none !important;
    background-color: transparent !important;
    color: white !important;
    text-align: center;
    width: auto !important;
    border: 0;
    border-radius: 10px !important;
    padding: 10px 30px !important;
    margin: 0;
    font-weight: 600;
}

#wrapper .forminator-custom-form ::placeholder { /* Chrome, Firefox, Opera, Safari 10.1+ */
  color: #430098;
  opacity: 1; /* Firefox */
}

#wrapper .forminator-custom-form :-ms-input-placeholder { /* Internet Explorer 10-11 */
  color: #430098;
}

#wrapper .forminator-custom-form ::-ms-input-placeholder { /* Microsoft Edge */
  color: #430098;
}

/*------------------------------------*\
    FOOTER
\*------------------------------------*/
.footer #logo-responsive {
    max-width: 120px;
}

.social {
    display: flex;
    width: 400px;
    height: auto;
    margin: 0 auto;
}

#footer-menu {
    background-color: transparent;
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    width: 100%;
    padding: 40px 0 40px 0;
    margin: 40px 0 40px 0;
    border-top: #f1f1f1 4px solid;
    border-bottom: #f1f1f1 4px solid;
}

#footer-menu a,
#footer-menu a:hover,
#footer-menu a:active,
#footer-menu a:visited {
    font-size: 1.75rem;
    font-weight: 600;
    color: #430098;
    text-decoration: none;
    padding: 2px 20px;
}

#footer-secondary {
    display: flex;
    justify-content: center;
    align-items: center;
    text-align: center;
    width: 100%;
}

#footer-secondary a,
#footer-secondary a:hover,
#footer-secondary a:active,
#footer-secondary a:visited {
    font-size: 2.6rem;
    color: #0e1318;
    text-decoration: none;
    padding: 2px 25px;
}

#credits p {
    font-size: 1.75rem;
    font-weight: 600;
}

#credits a {
    color: #430098;
}

/*------------------------------------*\
    PAGES
\*------------------------------------*/
/*------------------------------------*\
    IMAGES
\*------------------------------------*/
/*------------------------------------*\
	TYPOGRAPHY
\*------------------------------------*/
@font-face {
    font-family: "Font-Name";
    src: url("fonts/font-name.eot");
    src: url("fonts/font-name.eot?#iefix") format("embedded-opentype"),
        url("fonts/font-name.woff") format("woff"),
        url("fonts/font-name.ttf") format("truetype"),
        url("fonts/font-name.svg#font-name") format("svg");
    font-weight: normal;
    font-style: normal;
}

/*------------------------------------*\
    RESPONSIVE
\*------------------------------------*/
@media (min-width: 1200px) {
    .container{
        max-width: 1170px !important;
    }
}

@media only screen and (max-width: 320px) {
    #navigation-inner a, #navigation-inner a:hover, #navigation-inner a:focus {
        font-size: 1.4rem !important;
    }
}

@media only screen and (max-width: 480px) {

    /* reduce spacing for smaller devices */
    .m-80 {
        margin-top: 40px !important;
        margin-bottom: 40px !important;
    }

    .m-t_80 {
        margin-top: 40px !important;
    }

    .m-b_80 {
        margin-bottom: 40px !important;
    }

    .m-tb_80 {
        margin-top: 40px !important;
        margin-bottom: 40px !important;
    }

    .m-tb_80_40 {
        margin-top: 40px !important;
        margin-bottom: 20px !important;
    }

    .m-t_40 {
        margin-top: 20px !important;
    }

    .navbar-nav li {
        padding: 0px;
    }

    .navbar-nav ul {
        position: relative;
    }

    .modal-body button, .modal-body button:hover {
        font-size: 1.4rem !important;
        border-radius: 30px !important;
        padding: 5px 20px !important;
    }

    .navbar img {
        max-width: 160px;
    }

    .sidenav a {
        font-size: 1.8rem !important;
    }

    #navigation-inner {
        overflow-y: scroll;
    }

    #burger-sticky {
        position: relative;
        bottom: 0;
    }

    .dropdown-menu {
        min-width: 280px !important;
        top: -8px !important;
    }

    .dropdown-toggle{
        min-width: 280px !important;
        max-width: 320px !important;
        width: auto;
    }

    section button {
        margin: 0 0 20px 0;
        font-size: 1.6rem !important;
    }

    /* reduce spacing from 80 to 40 on mobile */
    .slim .image {
        margin-bottom: 40px;
        max-height: 250px;
    }

    /* change spacing from 80 to 40 on mobile */
    .cb-6,
    .cb-5,
    .cb-4,
    .cb-3,
    .cb-2,
    .cb-1 {
        margin-bottom: 40px;
    }

    /* remove paralax on mobile devices */
    .hero-lg{
        background-attachment: scroll;
        height: 460px;
        width: auto;
    }

    .hero-md{
        background-attachment: scroll;
        height: 400px;
        width: auto;
    }

    .hero-sm {
        background-attachment: scroll;
        height: 300px;
        margin-top: -170px;
    }

    .hero-lg section,
    .hero-md section,
    .hero-sm section {
        padding: 0;
        height: auto;
        margin-top: 100px;
    }

    .hero-img {
        margin-top: -100px;
        max-height: 400px;
    }

    .cb-6 div,
    .cb-5 div,
    .cb-4 div,
    .cb-3 div,
    .cb-2 div,
    .cb-1 div {
        /*
        height: 85vw;
        */
    }

    .hero-lg section h1,
    .hero-md section h1,
    .hero-sm section h1 {
        font-size: 3rem !important;
        margin-bottom: 40px !important;
    }

    /* reduce spacing to 20px on mobile */
    #wrapper p {
        margin-bottom: 20px;
    }

    #wrapper h2 {
        margin-bottom: 20px;
    }

    .hero-lg .line,
    .hero-md .line,
    .hero-sm .line {
        display: none;
    }

    /* reduce spacing on mobile */
    .title-border {
        padding: 40px 0 40px 0;
    }

    #map iframe {
        width: 100%;
        max-height: 300px;
    }

    section button,
    button,
    a.button {
        width: auto;
    }

    .navbar .hamburger {
        min-width: 30px !important;
        max-width: 30px !important;
    }

    .navbar .hamburger-fixed {
        min-width: 50px !important;
        max-width: 50px !important;
    }

    .counter-circle div,
    .counter-circle span{
        font-size: 6rem;
    }

    #menu-footer-menu {
        display: flex;
        flex-direction: column;
    }

    #menu-footer-menu li{
        margin: 5px 0 5px 0;
    }

    .filter{
        display: none;
    }

    /*content filters*/
    #filter{
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        padding: 0;
        margin: 0 auto;
        list-style: none;
    }

    #filter li a{
        cursor: pointer;
        font-size: 2rem !important;
        outline: none !important;
        background-color: transparent;
        color: white !important;
        text-align: center;
        width: 100%;
        border: 0;
        border-radius: 0px !important;
        padding:0 !important;
        margin: 5px 0 5px 0 !important;
        font-weight: 600;
        display: block;
        clear: both;
    }

}

@media only screen and (max-width: 768px) {
    #wrapper #mc_embed_signup_scroll {
        display: flex;
        flex-direction: column;
    }

    #wrapper #mc_embed_signup input,
    #wrapper #mc_embed_signup .button {
        width: 100%;
        margin: 0 0 20px 0 !important;
    }

    /* center footer menues on mobile */
    .footer ul li ul li {
        width: 100%;
        display: block;
        text-align: center;
        float: none;
        margin: 0 0 10px 0;
    }

    div#service:first-child {
        border-right: 0px;
    }

    #service .cb-2 {
        margin-bottom: 40px;
    }

    .searchbar {
        display: none;
    }

    .navbar-nav .open,
    .navbar-nav .show {
        background-color: transparent;
    }

    .navbar .hamburger {
        min-width: 50px !important;
        max-width: 50px !important;
        max-height: 50px;
    }

}

@media only screen and (max-width: 1024px) {
    .cta .cta-block h2{
        min-height: 63px;
    }

    .logo-scroll button {
        top: 40px;
        right: 40px;
        float: right;
    }

    .counter-circle div,
    .counter-circle span{
        font-size: 6rem;
    }

}

@media only screen and (max-width: 1140px) {}

@media only screen and (max-width: 1366px) {
    #burger-sticky {
        position: relative;
        bottom: 40px;
    }
}

@media only screen and (-webkit-min-device-pixel-ratio: 1.5),
only screen and (min-resolution: 144dpi) {}

/*------------------------------------*\
    MISC
\*------------------------------------*/
::selection {
    background: #04a4cc;
    color: #fff;
    text-shadow: none;
}

::-webkit-selection {
    background: #04a4cc;
    color: #fff;
    text-shadow: none;
}

::-moz-selection {
    background: #04a4cc;
    color: #fff;
    text-shadow: none;
}

/*------------------------------------*\
    WORDPRESS CORE
\*------------------------------------*/
.alignnone {
    margin: 5px 20px 20px 0;
}

.aligncenter,
div.aligncenter {
    display: block;
    margin: 5px auto 5px auto;
}

.alignright {
    float: right;
    margin: 5px 0 20px 20px;
}

.alignleft {
    float: left;
    margin: 5px 20px 20px 0;
}

a img.alignright {
    float: right;
    margin: 5px 0 20px 20px;
}

a img.alignnone {
    margin: 5px 20px 20px 0;
}

a img.alignleft {
    float: left;
    margin: 5px 20px 20px 0;
}

a img.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.wp-caption {
    background: #fff;
    border: 1px solid #f0f0f0;
    max-width: 96%;
    padding: 5px 3px 10px;
    text-align: center;
}

.wp-caption.alignnone {
    margin: 5px 20px 20px 0;
}

.wp-caption.alignleft {
    margin: 5px 20px 20px 0;
}

.wp-caption.alignright {
    margin: 5px 0 20px 20px;
}

.wp-caption img {
    border: 0 none;
    height: auto;
    margin: 0;
    max-width: 98.5%;
    padding: 0;
    width: auto;
}

.wp-caption .wp-caption-text,
.gallery-caption {
    font-size: 1.1rem;
    line-height: 17px;
    margin: 0;
    padding: 0 4px 5px;
}

.sticky {}

.bypostauthor {}

/*------------------------------------*\
    PRINT
\*------------------------------------*/
@media print {
    * {
        background: transparent !important;
        color: #000 !important;
        box-shadow: none !important;
        text-shadow: none !important;
    }

    a,
    a:visited {
        text-decoration: underline;
    }

    a[href]:after {
        content: " ("attr(href) ")";
    }

    abbr[title]:after {
        content: " ("attr(title) ")";
    }

    .ir a:after,
    a[href^="javascript:"]:after,
    a[href^="#"]:after {
        content: "";
    }

    pre,
    blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    thead {
        display: table-header-group;
    }

    tr,
    img {
        page-break-inside: avoid;
    }

    img {
        max-width: 100% !important;
    }

    @	page {
        margin: 0.5cm;
    }

    p,
    h2,
    h3 {
        orphans: 3;
        widows: 3;
    }

    h2,
    h3 {
        page-break-after: avoid;
    }
}