@charset "UTF-8";
:root {
  --blue: #007bff;
  --indigo: #6610f2;
  --purple: #6f42c1;
  --pink: #e83e8c;
  --red: #dc3545;
  --orange: #f4623a;
  --yellow: #ffc107;
  --green: #28a745;
  --teal: #20c997;
  --cyan: #17a2b8;
  --white: #fff;
  --gray: #6c757d;
  --gray-dark: #343a40;
  --primary: #007bff;
  --secondary: #6c757d;
  --success: #28a745;
  --info: #17a2b8;
  --warning: #ffc107;
  --danger: #dc3545;
  --light: #f8f9fa;
  --dark: #343a40;
  --breakpoint-xs: 0;
  --breakpoint-sm: 576px;
  --breakpoint-md: 768px;
  --breakpoint-lg: 992px;
  --breakpoint-xl: 1200px;

  --custom-body-bg: #FFF;
  --custom-body-color: #757575;

  --custom-navbar-bg: #214458;
  --custom-navbar-navlink: #FFF;
  --custom-navbar-navlink-hover: #EEE;
  --custom-navbar-navlink-active: #d1a872;
  --custom-navbar-social: #dfdfdf;
  --custom-navbar-social-hover: #d1a872;

  --custom-primary: #214458;
  --custom-primary-o: rgba(239, 209, 0,0.8);
  --custom-primary-hover: #172e3b;
  --custom-primary-text: #FFF;
  --custom-secondary: #212121;
  --custom-secondary-hover: #545b62;  
  --custom-bg-primary-hover: #d3b807;
  --custom-primary-alternative: #d1a872;
  --custom-primary-btn-bg: #212121;
  --custom-primary-btn: #FFF;
  --custom-primary-btn-hover: #FFF;
  --custom-primary-a: #FFF;

  --custom-light: #FFF;
  --custom-light-o: rgba(255,255,255,0.5);
  --custom-light-f: #f8f9fa;
  --custom-light-color: #212529;
  --custom-light-text: #212121;
  --custom-light-banner: #e9ecef;
  --custom-light-btn-bg: #efd100;
  --custom-light-btn: #FFF;
  --custom-light-btn-hover: #FFF;
  --custom-light-a: #efd100;

  --custom-dark: #212121;
  --custom-dark-o: rgba(0,0,0,0.5);
  --custom-dark-text: #FFF;

  --custom-dark-btn-bg: #f8f9fa;
  --custom-dark-btn: #212121;
  --custom-dark-btn-hover: #212121;
  --custom-dark-a: #efd100;

  --custom-navbar-brand-o: rgba(255, 255, 255, 0.7);
  --custom-navbar-brand: #212529;
  --custom-navbar-brand-hover: #fff;
  
  --custom-footer: #214458;
  --custom-footer-text: #FFF;
  --custom-footer-link: #adadad;

  --custom-main-font: 'Lora', sans-serif;
  --custom-main-title: 'Poppins', sans-serif;

  --custom-scroll-to-top: rgba(52,58,64,.5);
  --custom-scroll-to-top-text: #fff;

  --custom-search-modal: #fff;

  --custom-feedback: #6c757d;
  --custom-primary-feedback: #EEE;
  --custom-primary-subheading: #CCC;
  --custom-primary-team: #EEE;
  --custom-cf7: #dc3232;
  --custom-slick: #BBB;
  --custom-slider-bg: #212121;

  --custom-block-square: #222;
  --custom-block-square-color: #f9f9f9;  
}

body {
  margin: 0;
  font-size: 1rem;
  font-weight: 400;
  line-height: 1.5;
  color: var(--custom-body-color);
  text-align: left;
  background-color: var(--custom-body-bg);
  font-family: var(--custom-main-font);
}

h1, h2, h3, h4, h5, h6 { font-family: var(--custom-main-title); color: #16355B;}

.so-panel {
  margin-bottom: 0px !important;
}

@-webkit-keyframes spinner-border {
  to {
    transform: rotate(360deg);
  }
}

@keyframes spinner-border {
  to {
    transform: rotate(360deg);
  }
}
.spinner-border {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  vertical-align: text-bottom;
  border: 0.25em solid currentColor;
  border-right-color: transparent;
  border-radius: 50%;
  -webkit-animation: spinner-border 0.75s linear infinite;
          animation: spinner-border 0.75s linear infinite;
}

.spinner-border-sm {
  width: 1rem;
  height: 1rem;
  border-width: 0.2em;
}

@-webkit-keyframes spinner-grow {
  0% {
    transform: scale(0);
  }
  50% {
    opacity: 1;
    transform: none;
  }
}

@keyframes spinner-grow {
  0% {
    transform: scale(0);
  }
  50% {
    opacity: 1;
    transform: none;
  }
}
.spinner-grow {
  display: inline-block;
  width: 2rem;
  height: 2rem;
  vertical-align: text-bottom;
  background-color: currentColor;
  border-radius: 50%;
  opacity: 0;
  -webkit-animation: spinner-grow 0.75s linear infinite;
          animation: spinner-grow 0.75s linear infinite;
}

.spinner-grow-sm {
  width: 1rem;
  height: 1rem;
}

.custom-last-articles:hover { text-decoration: none !important; }
.custom-last-articles:hover .card-image, .custom-last-articles:hover .card-body, .custom-article-image:hover, .mode1:hover h3, .mode1:hover p, .mode1:hover .btn  { opacity: 0.8; }
.album .card-image { border-top-right-radius:.25rem; border-top-left-radius:.25rem; }
.card-image-search { border-bottom:1px solid #efefef }
a { color: #16355B; }
a:hover { color: var(--custom-primary-hover); }
.bg-primary { background-color: var(--custom-primary) !important; }

.btn-primary { color: var(--custom-primary-text); background-color: var(--custom-primary); border-color: var(--custom-primary); }
.btn-primary:hover, .btn-primary:active { color: var(--custom-primary-text); background-color: var(--custom-primary-hover); border-color: var(--custom-primary-hover); }
a.bg-primary:hover, a.bg-primary:focus, a.bg-primary:active, button.bg-primary:hover, button.bg-primary:focus, button.bg-primary:active { background-color: var(--custom-bg-primary-hover) !important; }
.bg-secondary { background-color: var(--custom-secondary) !important; }

a.bg-secondary:hover, a.bg-secondary:focus, button.bg-secondary:hover, button.bg-secondary:focus { background-color: var(--custom-secondary-hover) !important; }

.lead2 { font-size:1rem; font-weight:400 }

.bg-success { background-color: #28a745 !important; }

a.bg-success:hover, a.bg-success:focus, button.bg-success:hover, button.bg-success:focus { background-color: #1e7e34 !important; }

.bg-info { background-color: #17a2b8 !important; }

a.bg-info:hover, a.bg-info:focus, 
button.bg-info:hover,
button.bg-info:focus {
  background-color: #117a8b !important;
}

.bg-warning {
  background-color: #ffc107 !important;
}

a.bg-warning:hover, a.bg-warning:focus,
button.bg-warning:hover,
button.bg-warning:focus {
  background-color: #d39e00 !important;
}

.bg-danger {
  background-color: #dc3545 !important;
}

a.bg-danger:hover, a.bg-danger:focus,
button.bg-danger:hover,
button.bg-danger:focus {
  background-color: #bd2130 !important;
}

.bg-light {
  background-color: #f8f9fa !important;
}

a.bg-light:hover, a.bg-light:focus,
button.bg-light:hover,
button.bg-light:focus {
  background-color: #dae0e5 !important;
}

.bg-dark {
  background-color: #343a40 !important;
}

.bg-black {
  background-color: #333333 !important;
}

a.bg-dark:hover, a.bg-dark:focus,
button.bg-dark:hover,
button.bg-dark:focus {
  background-color: #1d2124 !important;
}

.bg-white {
  background-color: #fff !important;
}


.text-white {
  color: #fff !important;
}

.text-primary {
  color: var(--custom-light-a) !important;
}

a.text-primary:hover, a.text-primary:focus {
  color: #d6370c !important;
}

.text-secondary {
  color: #6c757d !important;
}

a.text-secondary:hover, a.text-secondary:focus {
  color: #494f54 !important;
}

.text-success {
  color: #28a745 !important;
}

a.text-success:hover, a.text-success:focus {
  color: #19692c !important;
}

.text-info {
  color: #17a2b8 !important;
}

a.text-info:hover, a.text-info:focus {
  color: #0f6674 !important;
}

.text-warning {
  color: #ffc107 !important;
}

a.text-warning:hover, a.text-warning:focus {
  color: #ba8b00 !important;
}

.text-danger {
  color: #dc3545 !important;
}

a.text-danger:hover, a.text-danger:focus {
  color: #a71d2a !important;
}

.text-light {
  color: #f8f9fa !important;
}

a.text-light:hover, a.text-light:focus {
  color: #cbd3da !important;
}

.text-dark {
  color: #343a40 !important;
}

a.text-dark:hover, a.text-dark:focus {
  color: #121416 !important;
}

.text-body {
  color: #212529 !important;
}

.text-muted {
  color: #6c757d !important;
}

.text-black-50 {
  color: rgba(0, 0, 0, 0.5) !important;
}

.text-white-50 {
  color: rgba(255, 255, 255, 0.5) !important;
}

.text-hide {
  font: 0/0 a;
  color: transparent;
  text-shadow: none;
  background-color: transparent;
  border: 0;
}



body,
html {
  width: 100%;
  height: 100%;
}

.topmenu-container { display: none; }

h1.custom-main-title {
  color: var(--custom-navbar-navlink);
  padding: 30px;
  display: inline-block;
}

.custom-last-articles a:hover { text-decoration: none; }

a.nav-link {
  font-family: var(--custom-main-title);
}

nav#mainNav {
  padding-top: 20px;
  padding-bottom: 20px;
}

@media (min-width:992px) { 
  .hidden-desktop { display: none;} 
  /*#mainNav { padding: 0 !important; }*/
  .topmenu-container { display: block; width: 100%; }
  .topmenu-container ul { padding: 0; margin-top: 5px; margin-bottom: 5px; }
  .topmenu-container ul.justify-content-start li { padding-right: 12px; }  
  .topmenu-container ul.justify-content-end li { padding-left: 12px; }  
  .topmenu-container ul li { font-size: 13px; }
  .topmenu-container ul li a { font-weight: 600; }    
  .topmenu-container a { text-decoration:none !important; }
  .topmenu-container.custom-dark a { color: var(--custom-dark-btn-bg) !important; }
  .topmenu-container.custom-dark a svg { color: var(--custom-primary) ;  }  
  .navbar-expand-lg { -ms-flex-flow: column; flex-flow: column; }  
  .navbar-collapse { padding-top: 5px;}
  #mainNav .navbar-nav .nav-item .nav-link {
    padding-bottom: 10px !important;
  }  
  #mainNav .navbar-nav .nav-item .nav-link .dropdown-menu .nav-link {
    padding-bottom: 0px !important;
  }  
 .navbar-expand-lg .navbar-nav .dropdown-menu {
  border-top: 0;
  border-top-left-radius: 0;
  border-top-right-radius: 0;
  top: 28px;
  margin-top: 0;
 }
 .navbar-expand-lg .navbar-nav .dropdown-menu .dropdown-menu {
  top: 25px;
  left: 15px;
  border: 1px solid rgba(0,0,0,.15);
  border-radius: .25rem;  
  border-top-left-radius: 0;
 }

 ul.dropdown-menu li > ul.dropdown-menu {
  left: 100%;
  top: 0px;  
 }
}

li:hover > ul.dropdown-menu, li:focus > ul.dropdown-menu { display: block; }

@media (max-width:991px) {
  .navbar-brand { margin-left: .4rem; margin-right: .4rem;}
  .navbar-collapse { text-align:center }
  .navbar-collapse ul.dropdown-menu { margin-top: 0; padding: 0; } 
  ul.dropdown-menu li > ul.dropdown-menu {
    position: relative !important;
    display: block;
    left: 0px;
    top: 0;
  }
  ul.dropdown-menu { border:0; text-align:center }
  li > ul.dropdown-menu { display: block; }
}

.bd-placeholder-img { background-position:center center; background-repeat:no-repeat; background-size:cover }
.card-image { width:100%; height:225px; background-position:center center; background-repeat:no-repeat; background-size:cover }
.custom-evidence-image { background-color: #FFF; float: right; width: 220px; min-height: 220px; height: 100%; background-position:center center; background-repeat:no-repeat; background-size:cover }
.custom-evidence-image:hover { opacity: 0.8; }
.custom-evidence-left { width: calc(100% - 220px); float: left; }
.custom-dark .mode2 { color: var(--custom-dark-btn); background-color: var(--custom-dark-btn-bg); }
.custom-dark .mode2 h3 { color: var(--custom-dark-a); }
.custom-primary .mode2 { color: var(--custom-primary-btn-bg); background-color: var(--custom-primary-btn); }
.custom-primary .mode2 h3 { color: var(--custom-primary); }

.navbar-brand img { height:auto; max-width:100%; width: 225px; }

hr.divider {
  max-width: 3.25rem;
  border-width: 0.2rem;
  border-color: var(--custom-primary);
}

.masthead hr.divider {
  width: 100%;
  max-width: 80%;
  border-width: 0.2rem;
  border-color: var(--custom-primary-alternative);
  display: inline-block;
}

.page-link {  color: var(--custom-primary); }

hr.light { border-color: #fff; }

.btn-xl {
  padding: 1.25rem 2.25rem;
  font-size: 0.85rem;
  font-weight: 600;
  text-transform: uppercase;
  border: none;
  border-radius: 10rem;
  outline: 0 !important;
  box-shadow: none !important;
}
.btn-xl:active { background-color:var(--custom-primary); }

.btn-primary:not(:disabled):not(.disabled).active, .btn-primary:not(:disabled):not(.disabled):active, .show>.btn-primary.dropdown-toggle {
  background-color: var(--custom-primary-hover);
  border-color: var(--custom-primary-hover);
}

.page-section {
  padding: 6rem 0;
}

#mainNav {
  box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
  background-color: var(--custom-navbar-bg);
  transition: background-color 0.2s ease;
  font-family: var(--custom-main-font), sans-serif;
}
#mainNav .navbar-nav .nav-item .nav-link {
  color: var(--custom-navbar-navlink);
  padding: 0.75rem 0;
}
#mainNav .navbar-text a {
    color: var(--custom-navbar-navlink);
}
#mainNav .navbar-nav .nav-item .nav-link:hover, #mainNav .navbar-nav .nav-item .nav-link:active {
  color: var(--custom-navbar-navlink-hover);
}
#mainNav .navbar-text a:hover {
    color: var(--custom-primary);
}
#mainNav .navbar-nav .nav-item .nav-link.active {
  color: var(--custom-navbar-navlink-active) !important;
}
#mainNav .navbar-nav .active>.nav-link { color: var(--custom-navbar-navlink-active) !important; }

#mainNav .socials a { color: var(--custom-navbar-social) !important; font-size: 18px !important; }
#mainNav .socials a:hover { color: var(--custom-navbar-social-hover) !important; }

.navbar-dark .navbar-toggler {
  border: 0;
  outline: 0;
}

.back-menu { width:100%; height: 115px; }

.custom-topbar { padding: 10px; font-size: 13px; width: 100%; display: block; }
.custom-topbar p { margin-bottom: 0 ;}
.custom-topbar2 { box-shadow: 0 0.5rem 1rem rgb(0 0 0 / 15%); z-index: 0; position: relative; }
.custom-topbar.custom-light { background-color:var(--custom-light); color:var(--custom-light-text) }
.custom-topbar.custom-dark { background-color:var(--custom-dark); color: var(--custom-dark-text); }
.custom-topbar.custom-primary { background-color:var(--custom-primary); color:var(--custom-primary-text) }

.main-title { font-weight:bold; color:#16355B;}
.main-subtitle { font-weight: normal; color: #398CCB; }

@media (max-width: 992px) {
  
  .hidden-mobile { display:none }
  /*.back-menu { height: 100px; }  */
  #mainNav { padding-right: 0; }
  .navbar-toggler { padding: 0; margin-right: 15px; }
  .navbar-brand { max-width: calc(100% - 100px); min-height: 50px; }

  .custom-evidence-image { float:none; width: 100%; margin-bottom: 0px; height: 200px; }
  .custom-evidence-left { width: 100%; float: none; }  

}
@media (min-width: 992px) {
  #mainNav {
    box-shadow: none;
    background-color: transparent;
  }

  #mainNav .navbar-brand {
    color: var(--custom-navbar-brand-o);
  }
  #mainNav .navbar-brand:hover {
    color: var(--custom-navbar-brand-hover);
  }
  #mainNav .navbar-nav .nav-item .nav-link {    
    padding: 0.7rem 1rem;
    text-transform: uppercase;
    font-weight: 700;
  }  
  #mainNav .navbar-nav .nav-item .nav-link, #mainNav .navbar-text a {
    color: var(--custom-navbar-brand-o);
  }
  #mainNav .navbar-nav .nav-item .nav-link:hover, #mainNav .navbar-text a:hover {
    color: var(--custom-navbar-brand-hover);
  }
  #mainNav .navbar-nav .nav-item:last-child .nav-link {
    padding-right: 0;
  }
  #mainNav.navbar-scrolled {
    box-shadow: 0 0.5rem 1rem rgba(0, 0, 0, 0.15);
    background-color: var(--custom-navbar-bg);
  }
  #mainNav.navbar-scrolled .navbar-brand {
    color: var(--custom-navbar-brand);
  }
  #mainNav.navbar-scrolled .navbar-brand:hover {
    color: var(--custom-primary);
  }
  #mainNav.navbar-scrolled .navbar-nav .nav-item .nav-link, #mainNav.navbar-scrolled .navbar-text a {
    color: var(--custom-navbar-navlink);
    font-weight:600;
    line-height: 18px; 
    font-size: 15px;   
  }
  #mainNav.navbar-scrolled .navbar-nav .nav-item .nav-link:hover, #mainNav.navbar-scrolled .navbar-text a:hover {
    color: var(--custom-navbar-navlink-hover);
  }
}

header.masthead {
  padding-top: 10rem;
  padding-bottom: calc(10rem - 4.5rem);
  background: linear-gradient(to bottom, rgba(92, 77, 66, 0.8) 0%, rgba(92, 77, 66, 0.8) 100%);
  background-position: center;
  background-repeat: no-repeat;
  background-attachment: scroll;
  background-size: cover;
  position:relative;
}
header.masthead .container { /*padding-left: 65px; padding-right: 65px;*/
  display: flex;
  align-items: center;
  height: 100%;
}

/*.slick-dots > li { display: inline-block; }*/
.slick-dots > li:only-child { display: none; }

@media (max-width:1100px) {
  header.masthead .container { padding-left: 40px; padding-right: 40px; }
}
header.masthead h1 {
  font-size: 2.25rem;
  /*color: #8e8e8e !important;*/
}
@media (min-width: 992px) {
  header.masthead {
    height: 100vh;
    min-height: 40rem;
    padding-top: 4.5rem;
    padding-bottom: 0;
  }
  header.masthead p {
    font-size: 23px;
  }
  header.masthead h1 {
    font-size: 3rem;
    font-weight: 600;    
  }
  .custom-slider header.masthead, .single-slider header.masthead  {
    height: calc(100vh - 110px);
    min-height: 40rem;
    padding-top: 8rem;
    padding-bottom: 3rem;
  }
  input.form-control { min-height: 60px;}
  .navbar-form input.form-control { min-height: 30px; } 
}
.slick-slide img {
  max-width: 75%;
}
.slick-slide { font-family: var(--custom-main-title); color: #FFF; }
.wpcf7-list-item { margin: 0; }

@media (min-width: 1200px) {
  header.masthead h1 {
    font-size: 3.5rem;
  }
}

.portfolio .container-fluid { padding-left: 0; padding-right:0; }

.portfolio .portfolio-box {
  position: relative;
  display: block;
}
.portfolio .portfolio-box .portfolio-box-caption {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  width: 100%;
  height: 100%;
  position: absolute;
  bottom: 0;
  text-align: center;
  opacity: 0;
  transition: opacity 0.25s ease;
  text-align: center;
}

.custom-light.portfolio .portfolio-box .portfolio-box-caption { background-color:var(--custom-light-o); color:var(--custom-primary) }
.custom-dark.portfolio .portfolio-box .portfolio-box-caption { background-color:var(--custom-dark-o); color: var(--custom-dark-text); }
.custom-primary.portfolio .portfolio-box .portfolio-box-caption { background-color:var(--custom-primary-o); color:var(--custom-primary-text) }

.portfolio .portfolio-box .portfolio-box-caption .project-category {
  font-size: 0.85rem;
  font-weight: 600;
  text-transform: uppercase;
}
.portfolio .portfolio-box .portfolio-box-caption .project-name {
  font-size: 1.2rem;
}
.portfolio .portfolio-box:hover .portfolio-box-caption {
  opacity: 1;
}

.text-white-75 {
  color: rgba(255, 255, 255, 0.75);
}

/* Center align the text within the three columns below the carousel */
.marketing .col-lg-4 {
  margin-bottom: 1.5rem;
  text-align: center;
}
.marketing h2 {
  font-weight: 400;
}
.marketing .col-lg-4 p {
  margin-right: .75rem;
  margin-left: .75rem;
}

.socials { height:25px; font-size:20px }
.socials a { padding-left:6px; }

.team-member {
    margin-bottom: 3rem;
    text-align: center;
}
.team-member img {
  width: 14rem;
  height: 14rem;
  border: 0.5rem solid rgba(0, 0, 0, 0.1);
}

h4.feedback-stars {
  color: #fdfd07;
  font-size: 16px;
}

.team-member.home-team-member img {
    width: 9rem;
    height: 9rem;
    border: 0.5rem solid rgba(0, 0, 0, 0.1);
}

.team-member h4 {
    margin-top: 1.5rem;
    margin-bottom: 0;
}

.btn:not(:disabled):not(.disabled) {
    cursor: pointer;
}
.btn-social {
    height: 2.5rem;
    width: 2.5rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    border-radius: 100%;
}

section#contact-form {
    background-color: #212529;    
    background-repeat: no-repeat;
    background-position: center;
}
section#contact-form form#contactForm .form-group {
    margin-bottom: 1.5rem;
}
section#contact-form form#contactForm .form-group input.form-control {
    height: auto;
}
section#contact-form form#contactForm .form-group input, section#contact-form form#contactForm .form-group textarea {
    padding: 1.25rem;
}
section#contact-form form#contactForm .form-group-textarea {
    height: 100%;
}
section#contact-form form#contactForm .form-group-textarea textarea {
    height: 100%;
    min-height: 10rem;
}
/* Featurettes
------------------------- */

.featurette-divider {
  margin: 5rem 0; /* Space out the Bootstrap <hr> more */
}

.jumbotron {
  padding-top: 3rem;
  padding-bottom: 3rem;
  margin-bottom: 0;
  /*background-color: #fff;*/
}
@media (min-width: 768px) {
  .jumbotron {
    padding-top: 6rem;
    padding-bottom: 6rem;
  }
}

.jumbotron h1 {
  font-weight: 300;
}

.jumbotron .container {
  max-width: 40rem;
}

.map {
    height: 30rem;
}

.map iframe {
    height: 100%;
    width: 100%;
    border: 0;
}

footer.footer {
    padding-top: 20px;
    padding-bottom: 20px;
    background-color: var(--custom-footer) !important;
}

footer.footer h5, footer.footer { color: var(--custom-footer-text); }
footer.footer hr { background-color: var(--custom-footer-text); opacity: 0.6; }
footer.footer .list-unstyled li a { font-size: 14px; color: var(--custom-footer-link); }


footer.footer p { margin-bottom: 0; font-size:14px }
footer.footer .list-unstyled li a { font-size: 14px; }

footer.footer .social-link {
    display: block;
    height: 4rem;
    width: 4rem;
    line-height: 4.1rem;
    font-size: 1.5rem;
    background-color: var(--custom-navbar-social-hover);
    color: var(--custom-navbar-navlink);
    transition: background-color .15s ease-in-out;
    box-shadow: 0 3px 3px 0 rgba(0,0,0,.1);
}

footer.footer .social-link:hover {    
    text-decoration: none;
	opacity:0.8
}

.footer-copyright a { color:#c5c5c5; }
.footer-copyright a:hover { color:#FFF; }
.footer-policy a { color:#c5c5c5; }

.content-section {
    padding-top: 7.5rem;
    padding-bottom: 7.5rem;
}

.content-section-heading h3 {
    font-size: 1rem;
    text-transform: uppercase;
}

.portfolio-item {
    display: block;
    position: relative;
    overflow: hidden;
    max-width: 530px;
    margin: auto auto 1rem;
}

.portfolio-item .caption {
    display: flex;
    height: 100%;
    width: 100%;
    background-color: rgba(33,37,41,.2);
    position: absolute;
    top: 0;
    bottom: 0;
    z-index: 1;
}
.portfolio-item .caption .caption-content {
    color: #fff;
    margin: auto 2rem 2rem;
}
.portfolio-item .caption .caption-content p {
    font-weight: 300;
    font-size: 1.2rem;
}

.scroll-to-top {
    position: fixed;
    right: 15px;
    bottom: 15px;
    display: none;
    width: 50px;
    height: 50px;
    text-align: center;
    color: var(--custom-scroll-to-top-text);
    background: rgb(33 68 88 / 90%);
    line-height: 45px;
}

.service-icon {
    background-color: #fff;
    color: #000;
    height: 7rem;
    width: 7rem;
    display: block;
    line-height: 6.8rem;
    font-size: 2.25rem;
    box-shadow: 0 3px 3px 0 rgba(0,0,0,.1);
}
.showcase .showcase-img {
    min-height: 30rem;
    background-size: cover;
}
.showcase .showcase-text {
    padding: 3rem;
}

#mySearchModal .modal-header {
  border-bottom: none;
}

#mySearchModal .modal-dialog {
  width: 100%; max-width:100%;
  height: 100%;
  margin: 0;
  padding: 0;
}

#mySearchModal {
background-color:var(--custom-search-modal);
  opacity:0.9
}

.custom-slider .image-background, .single-slider .image-background {
  width: 100%; 
  background-position: 50% 50% !important;
  background-size: cover; 
  background-color: var(--custom-slider-bg) !important;
  text-align:center;
  
}

.slick-dotted.slick-slider {
    margin-bottom: 0px;
}
.slick-dots {
    bottom: 20px;
}

.slick-prev, .slick-next { z-index:100 }
.slick-prev {
    left: 25px;
}
.slick-next {
    right: 25px;
}
.slick-next:before, .slick-prev:before {
    font-size: 30px;
}

#mySearchModal .modal-content {
  height: auto;
  min-height: 100%;
  border-radius: 0;
  background: none;
  box-shadow: none;
}

#mySearchModal .modal-body {
  text-align: center;
}

#mySearchModal .modal-body form {
  margin: 0 auto;
  float: none;
  width: 300px;
}

#mySearchModal .modal-content .close {
  opacity: 1;
  font-size: 30px;
}

.preloader {
   position: absolute;
   top: 0;
   left: 0;
   width: 100%;
   height: 100%;
   z-index: 9999;
   background-image: url('../images/preloader.gif');
   background-repeat: no-repeat; 
   background-color: var(--custom-body-bg);
   background-position: center;
}

.custom-contact a { font-weight: 600; }

@media (min-width: 768px) {
.showcase .showcase-text { padding: 7rem; }
}
@media (min-width: 992px) {
	.portfolio-item {
		max-width: none;
		margin: 0;
	}
	.portfolio-item .caption {
		transition: background-color .7s,-webkit-clip-path .25s ease-out;
		transition: clip-path .25s ease-out,background-color .7s;
		transition: clip-path .25s ease-out,background-color .7s,-webkit-clip-path .25s ease-out;
		-webkit-clip-path: inset(0);
		clip-path: inset(0);
	}	

	.portfolio-item img {
		transition: -webkit-clip-path .25s ease-out;
		transition: clip-path .25s ease-out;
		transition: clip-path .25s ease-out,-webkit-clip-path .25s ease-out;
		-webkit-clip-path: inset(-1px);
		clip-path: inset(-1px);	
	}
	.portfolio-item .caption .caption-content {
		transition: opacity .25s;
		margin-left: 5rem;
		margin-right: 5rem;
		margin-bottom: 5rem;
	}	
	.portfolio-item img{transition:-webkit-clip-path .25s ease-out;transition:clip-path .25s ease-out;transition:clip-path .25s ease-out,-webkit-clip-path .25s ease-out;-webkit-clip-path:inset(-1px);clip-path:inset(-1px)}
	.portfolio-item:hover img{-webkit-clip-path:inset(2rem);clip-path:inset(2rem)}
	.portfolio-item:hover .caption{background-color:rgba(29,128,159,.9);-webkit-clip-path:inset(2rem);clip-path:inset(2rem)}
}
@media (max-width: 767px) {
.slick-prev { left: 10px; }
.slick-next { right: 10px; }
.slick-next:before, .slick-prev:before { font-size: 20px; } 
.btn-xl { padding: 0.7rem 1.6rem; }
.lead { font-size: 16px !important;}
}

.icon-with-bg { background-repeat: no-repeat; background-size: cover; background-position:center center;}
.custom-light { background-color:var(--custom-light); color:var(--custom-light-color); }
.custom-light.feedback-obj { background-color:var(--custom-light-f) }
.custom-dark { background-color:var(--custom-dark); color:var(--custom-dark-text); }
.custom-primary { background-color:var(--custom-primary); color: var(--custom-primary-text); }

.custom-dark .service-icon { color: var(--custom-dark); }
.custom-light .btn { background-color:var(--custom-light-btn-bg); color: var(--custom-light-btn); }
.custom-dark .btn { background-color:var(--custom-dark-btn-bg); color:var(--custom-dark-btn); }
.custom-primary .btn { background-color:var(--custom-primary-btn-bg); color:var(--custom-primary-btn) }
.custom-light a { color: #16355B; }
.custom-dark a { color: var(--custom-dark-a); }
.custom-primary a { color: var(--custom-primary-a); }

.custom-article-list-element p { font-size: 14px; }
.custom-light .custom-article-list-element p { color: var(--custom-light-text); }

.custom-dark .custom-article-list-element p { color: var(--custom-dark); }
.custom-dark .custom-article-list-element, .custom-primary .custom-article-list-element { border: 0; }

.custom-dark .custom-article-list-element.mode1 p { color: var(--custom-dark-text); }

.custom-primary .custom-article-list-element h4 { color: var(--custom-primary); }
.custom-primary .custom-article-list-element p { color: var(--custom-primary-btn-bg); }

.custom-primary .custom-article-list-element.mode1 p { color: var(--custom-primary-text); }

.custom-dark .custom-article-list-element .btn { background-color: var(--custom-dark-btn); border-color: var(--custom-dark-btn); color: var(--custom-dark-btn-bg); }
.custom-dark .custom-article-list-element.mode1 .btn { background-color: var(--custom-dark-a); border-color: var(--custom-dark-a); color: var(--custom-dark-text); }

.custom-primary a:not(.btn) { text-decoration: underline; }
.custom-primary a.custom-last-articles:not(.btn) { text-decoration: none; }
.custom-light .btn:hover, .custom-light a:hover, .custom-dark .btn:hover, .custom-dark a:hover, .custom-primary .btn:hover, .custom-primary a:hover { opacity: 0.8; }

.custom-light .btn:hover, .custom-light .btn:active { background-color: var(--custom-light-btn-bg) !important; border-color: var(--custom-light-btn-bg) !important; }
.custom-dark .btn:hover, .custom-dark .btn:active { background-color: var(--custom-dark-btn-bg) !important; border-color: var(--custom-dark-btn-bg) !important; }
.custom-primary .btn:hover, .custom-primary .btn:active { background-color: var(--custom-primary-btn-bg) !important; border-color: var(--custom-primary-btn-bg) !important; }

.custom-dark .custom-article-list-element .btn:hover, .custom-dark .custom-article-list-element .btn:active { background-color: var(--custom-dark-btn) !important; border-color: var(--custom-dark-btn) !important; color: var(--custom-dark-btn-bg) !important;}
.custom-dark .custom-article-list-element.mode1 .btn:hover, .custom-dark .custom-article-list-element.mode1 .btn:active { background-color: var(--custom-dark-a) !important; border-color: var(--custom-dark-a) !important; color: var(--custom-dark-text) !important;}

.custom-article-image { width: 100%; height: 100%; background-repeat: no-repeat; background-size: cover; background-position: center center; min-height: 250px; }

.services-left span { font-size: 35px; }
.col-grid { display: inline-flex; }
.col-left { margin: 2px; margin-right: 20px; }
.col-left span { font-size: 35px; }
.section-obj { background-size: cover; background-position:center center; background-repeat:no-repeat; position:relative }
.section-overlay { position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: linear-gradient(
360deg
, black -100%, transparent 100%);
  /*background-color: rgba(57, 140, 203, 0.4);*/
}
.section-overlay1 { position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: linear-gradient(90deg, #101c23 0%, transparent 85%);  
}

.banner-obj .custom-light { background-color:var(--custom-light-banner); color:var(--custom-light-color); }

.block-column { 
  min-height: 200px;
}

.block-square {
  position: relative;
  display: flex;
  overflow: hidden;
  min-height: 350px;
  margin-bottom: 45px;
  justify-content: center;
  align-items: center;
  border-radius: 5px;
  background-color: var(--custom-block-square);
}

.block-square-number {
  position: absolute;
  left: 10%;
  top: 10%;
  right: auto;
  bottom: auto;
  color: var(--custom-block-square-color);
  font-size: 40px;
  font-weight: 700;
}

.block-square-text {
  color: var(--custom-block-square-color);
  font-size: 40px;
  line-height: 1.2;
  font-weight: 700;
  text-align: center;
  text-transform: uppercase;
}

.block-square-image {
  position: absolute;
  right: 0;
  bottom: 0;
  width: 25%;
  height: auto;
}

.block-square-icon {
  position: absolute;
  right: 10px;
  bottom: 5px;
  font-size: 45px; 
}

@media (max-width:420px) {
  .col-grid { display: block; text-align: center; }
}

.slick-prev:before { /*content: ""; font-size: 30px;*/ }
.slick-next:before { /*content: ""; font-size: 30px;*/ }

.partners-logo { padding: 15px; }
.partners-slider { padding-left:40px; padding-right: 40px; }
.partners-slider .slick-next:before, .partners-slider .slick-prev:before { color: var(--custom-slick); }
.partners-slider .slick-prev { left:10px }
.map { width:100%; text-align:center }

ul.maps-ul { padding: 0; margin: 0; list-style: none; }
.maps-ul li {
  width: calc(50% - 40px);
  margin: 20px;
  padding: 20px;  
  float: left;
  line-height: 19px;
}
.maps-ul li .address { margin-bottom: 12px; }
.maps-ul li span { float: left; position: relative; top: 0px; margin-right: 10px; font-size: 38px; }

.custom-light .maps-ul li { background-color: rgba(0,0,0,0.05); color: var(--custom-light-color) }
/*.custom-dark .maps-ul li { background-color: #000;  color: #FFF; }
.custom-primary .maps-ul li { background-color: #ed3128; color: #FFF; }*/

.showcase-img { background-size: cover; background-repeat: no-repeat; background-position: center center; }

.team-member-image {
  width: 9rem;
  height: 9rem;
  border-radius: 50%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
}

.feedback-text { color:var(--custom-feedback) }
.custom-primary .feedback-text { color: var(--custom-primary-feedback);} 
.custom-primary .section-subheading { color: --custom-primary-subheading !important;}
.custom-primary.team-obj .text-muted { color: --custom-primary-team !important } 
.portfolio-image { width:100%; height:200px; background-size: cover; background-repeat:no-repeat; background-position:center center;  }
/*.custom-light.form-obj { background-color:var(--custom-light-f) }*/
.custom-light .wpcf7-not-valid-tip { color: var(--custom-cf7); font-size: 0.8em; padding-top: 3px;}
.custom-dark .wpcf7-not-valid-tip { color: var(--custom-cf7); font-size: 0.8em; padding-top: 3px;}
.custom-primary .wpcf7-not-valid-tip { color: var(--custom-primary-text); font-size: 0.8em; padding-top: 3px;}

.feedback-box { background-color: var(--custom-light-f); border-radius: 10px; padding: 20px; margin-bottom: 25px; }
.archivio-obj .team-member-image {
  width: 5rem;
  height: 5rem;
  float: left;
  margin-right: 20px !important;
}
.archivio-obj .feedback-text { font-size: 14px; }

.navbar-light .navbar-toggler { border: 0; }
.navbar-light .navbar-toggler:focus { outline: 0;}

.custom-light .custom-contact {
  padding: 20px;
  background-color: #f5f5f5;
  width: 100%;
  border-radius: 6px;  
  color: #16355B
}

.custom-light .custom-contact span { display:block; color: #398CCB; }

.custom-single-course { 
  background-color: var(--custom-light-btn-bg); 
  padding: 12px; 
  color: var(--custom-light-btn-hover) !important; 
  font-weight: bold; 
  font-size:16px; 
  width: 100%; 
  display: block;
  border-radius: 5px;
  min-height: 60px;
  display: flex;
  align-items: center;
  padding-right: 20px;
  position: relative;
}
.custom-single-course svg {
  position: absolute;
  right: 10px;
  font-size: 22px;
}
.custom-single-course:hover { text-decoration: none; }

#accordion .card { margin-bottom: 10px;}
#accordion .card h5 button { width: 100%; text-align: left; font-weight:bold }
#accordion .btn-link { color: var(--custom-dark-a); }
#accordion .btn-link:hover { text-decoration: none; color: var(--custom-primary-btn-bg);}

@media (max-width: 992px) {
 .maps-ul li {
    width: 100%;
    float: none;
    margin: 0;
    margin-bottom: 20px;
    margin-top: 20px;
 }
 #mainNav .navbar-nav .nav-item .nav-link {
  padding-top: 4px;
  padding-bottom: 4px;
 }
 .custom-light .custom-contact {
  margin: 0px;
} 
}

@media (max-width:768px) {
  footer ul { margin-bottom: 0 !important; }
  footer .my-md-0:nth-child(3) h5 { display: none; }
  footer .my-md-0 { margin-bottom: 0 !important; }
  footer .my-md-0:first-child { margin-bottom: 1rem !important; }  
}

@media (max-width:480px) {
  .navbar-brand img { width: 200px; }
  .back-menu { height: 105px; }
}
