/* Small functional refinements to the original ITSolution theme. */
.lang-en { display: none !important; }
html[lang="en"] .lang-fr { display: none !important; }
html[lang="en"] .lang-en { display: inline !important; }
/* Translation wrappers must not inherit accent-span styling. */
.heading-section h2 > .lang-fr, .heading-section h2 > .lang-en,
.project .text .lang-fr, .project .text .lang-en { color: inherit; font: inherit; }
.language-nav { margin: 8px 14px; }
.language-nav label { display: block; margin: 0 0 3px; font-size: 10px; font-weight: 600; color: #444; }
.language-nav select { font: inherit; font-size: 13px; color: #323edd; background: #fff; border: 1px solid #323edd; border-radius: 3px; padding: 5px 22px 5px 8px; width: 100%; }
.service-card-link { display: block; height: 100%; color: inherit; }
.project.service-project img { width: 100%; height: 235px; object-fit: cover; }
.project.service-project .text h3 { color: #323edd; }
.project.service-project .text p { color: #666; font-size: 15px; margin-bottom: 12px; }
.project .text .service-more { color: #323edd; font-size: 13px; font-weight: 600; }
.project .text .service-symbol { color: #323edd; font-size: 24px; display: block; margin-bottom: 12px; }
.service-detail-photo { width: 100%; height: 460px; object-fit: cover; border-radius: 4px; }
.service-offering { padding: 20px 25px 35px; }
.benefit-list { list-style: none; padding: 0; margin: 25px 0 35px; }
.benefit-list li { margin: 12px 0; }
.benefit-list .fa { color: #323edd; margin-right: 10px; }
.counter-plus { font-size: 40px; color: #fff; }
.carousel-testimony .testimony-wrap { min-height: 380px; height: auto; }
.carousel-testimony .testimony-wrap .text { width: 100%; }
.testimony-section .owl-carousel .owl-stage-outer .owl-item.active.center .testimony-wrap .text,
.carousel-testimony .testimony-wrap .text { background: rgba(6, 10, 36, .72); }
.ftco-footer .block-23 .text { overflow-wrap: anywhere; }
.ftco-counter .block-18 .text .number { display: inline; }
.ftco-counter .block-18 .text > span { display: block; }
.services-1 .heading { font-size: 20px; color: #fff; }
.service-area-map { min-height: 480px; width: 100%; }
.service-area-map iframe { width: 100%; height: 480px; display: block; border: 0; }
.form-note { font-size: 13px; line-height: 1.6; }
.form-honeypot { position: absolute; left: -10000px; width: 1px; height: 1px; }
#contactForm, #expertises { scroll-margin-top: 110px; }
.skip-link { position: absolute; left: -10000px; top: 10px; z-index: 10001; padding: 12px; background: #fff; color: #323edd; }
.skip-link:focus { left: 10px; }
a:focus-visible, button:focus-visible, select:focus-visible { outline: 3px solid #ffa41b; outline-offset: 4px; }
/* Content stays readable if animation scripts cannot initialise. */
html:not(.animations-ready) .ftco-animate { opacity: 1; visibility: visible; }
@media (min-width: 992px) and (max-width: 1199.98px) {
  .ftco-navbar-light .navbar-nav > .nav-item > .nav-link { padding-left: 10px; padding-right: 10px; }
  .language-nav { margin-left: 8px; margin-right: 8px; }
}
@media (max-width: 991.98px) {
  .language-nav { margin: 12px 0; max-width: 210px; }
  .language-nav label { color: #fff; }
}
@media (max-width: 767.98px) {
  .hero-wrap.js-fullheight, .slider-text.js-fullheight { min-height: 700px; }
  .hero-wrap .btn { margin: 5px 0; }
  .service-detail-photo { height: 300px; margin-bottom: 30px; }
  .service-area-map, .service-area-map iframe { min-height: 330px; height: 330px; }
  .service-offering { padding-left: 0; padding-right: 0; }
}
@media (prefers-reduced-motion: reduce) {
  .ftco-animate { opacity: 1 !important; visibility: visible !important; animation: none !important; }
  .project img, .project .text { transition: none; }
}
