/*
Theme Name: Flatsome Child
Description: This is a child theme for Flatsome Theme
Author: UX Themes
Template: flatsome
Version: 3.0.1
*/

/*************** ADD CUSTOM CSS HERE.   ***************/


@media only screen and (max-width: 48em) {
/*************** ADD MOBILE ONLY CSS HERE  ***************/


}
html.js.has-off-canvas.has-off-canvas-center {
    overflow: hidden;
}

* {
  touch-action: manipulation;
}
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}
.container {
  width: 100%;
}
.container,
.container-width,
.row 
{
    max-width: 100% !important;          
  padding-left: 1.04vw;
  padding-right: 1.04vw;
}
.row
{
  margin: 0 auto !important;
}
.header-inner.flex-row.container.logo-left {
    padding-left: 2.04vw;
    padding-right: 2.04vw;
}
.page-id-180 .header-inner.flex-row.container.logo-left, .page-id-17 .header-inner.flex-row.container.logo-left
{
  margin-top: 0.5vw;
}
.expand, .full-width {
    max-width: 100% !important;
    width: 100% !important;
}
.section-bg, .section-content {
    width: 100% !important; 
}
.header, .header-wrapper, .section
{
    width: 100% !important;
}
section
{
  padding-top:0 !important;
  padding-bottom:0 !important;
}
.col, .columns, .gallery-item
{
  padding: 0 1.0417vw 2.0833vw;
}
.header-inner.flex-row.container.logo-left.medium-logo-left {
    padding-left: 2.04vw;
    padding-right: 2.04vw;
}
.pb-0
{
  padding-bottom: 0px !important;
}
.mb-10
{
  margin-bottom: 10px !important;
}
#logo {
    width: 15vw !important;
    margin-right: 0;
}
header#header.transparent .header-main {
    height: 6vw !important;
}
header#header .header.show-on-scroll, header#header .stuck .header-main {
    height: 5vw !important;
}
.transparent #logo img, .stuck #logo img {
    max-height: 14vw !important;
    height: 3vw;
}
.font-84-s-d h1
{
  font-size: 5.833vw;
 line-height: 6.250vw;
  font-family: "DM Sans";
  font-weight:600;
}
.font-80-r-d h3
{
  font-size: 5.5556vw;
  line-height: 5.5556vw;
  font-family: "DM Sans";
  font-weight:400;
}
.home-banner-title h1
{
  font-size: 5.5556vw;
  line-height: 5.5556vw;
  font-family: "DM Sans";
  font-weight:700;
}
.font-76-r-d h1
{
  font-size: 5.278vw;
line-height: 5.556vw;
  font-family: "DM Sans";
  font-weight:400;
}
.font-76-b-d h1
{
  font-size: 5.278vw;
line-height: 5.556vw;
  font-family: "DM Sans";
  font-weight:700;
}
.font-74-r-d h5,.font-74-r-d h1
{
  font-size: 5.139vw;
 line-height: 5.556vw;
  font-family: "DM Sans";
  font-weight:400;
}
.font-72-r-d h2
{
  font-size: 5vw;
line-height: 4.861vw;
  font-family: "DM Sans";
  font-weight:400;
}
.font-64-r-d h2
{
  font-size: 4.444vw;
 line-height: 4.167vw;
  font-family: "DM Sans";
  font-weight:400;
}
.font-60-r-d h4
{
  font-size: 4.1667vw;
  line-height: 5.5556vw;
  font-family: 'Monoblock Demo';
  font-weight:400;
}
.font-55-r-p p
{
  font-size: 3.819vw;
  line-height: 5.556vw;
  font-family: "PP Mori";
  font-weight:400;
}
.font-54-r-d h3
{
  font-size: 3.750vw;
  line-height: 4.167vw;
  font-family: "DM Sans";
  font-weight:400;
}
.font-48-r-d h3
{
  font-size: 3.3333vw;
  line-height: 4.1667vw;
  font-family: "DM Sans";
  font-weight:400;
}
.font-44-r-d h3
{
  font-size: 3.0556vw;
  line-height: 3.0556vw;
  font-family: "DM Sans";
  font-weight:400;
}
.font-32-r-p p
{
  font-size: 1.8vw;
  line-height: 3.4722vw;
  font-family: "PP Mori";
  font-weight:400;
}
.font-34-r-d p
{
  font-size: 2.361vw;
  line-height: 3.889vw;
  font-family: "DM Sans";
  font-weight:400;
}
.font-36-b-m p, .font-36-b-m h3
{
  font-size: 2.500vw;
  line-height: 3.056vw;
  font-family: "Monoblock Demo";
  font-weight:700;
}
.font-30-r-p p
{
  font-size: 2.083vw;
  line-height: 2.500vw;
  font-family: "PP Mori";
  font-weight:400;
}
.font-28-r-p p
{
  font-size: 1.944vw;
 line-height: 2.639vw;
  font-family: "PP Mori";
  font-weight:400;
}
.font-26-r-p p
{
  font-size: 1.806vw;
  line-height: 2.431vw;
  font-family: "PP Mori";
  font-weight:400;
}
.font-24-r-p p
{
  font-size: 1.6667vw;
  line-height: 2.4306vw;
  font-family: "PP Mori";
  font-weight:400;
}
.font-22-r-p p
{
  font-size: 1.5278vw;
  line-height: 2.4306vw;
  font-family: "PP Mori";
  font-weight:400;
}
.font-20-r-p p
{
  font-size: 1.389vw;
  line-height: 2.431vw;
  font-family: "PP Mori";
  font-weight:400;
}
.font-20-b-p p
{
  font-size: 1.389vw;
  line-height: 2.431vw;
  font-family: "PP Mori";
  font-weight: 600;
}

.font-18-r-p p
{
  font-size: 1.250vw;
line-height: 2.083vw;
  font-family: "PP Mori";
  font-weight:400;
}
.font-16-r-p p
{
  font-size: 1.111vw;
  line-height: 1.806vw;
  font-family: "PP Mori";
  font-weight:400;
}
.font-12-r-p p
{
   font-size: 0.833vw;
  line-height: 1.389vw;
  font-family: "PP Mori";
  font-weight:400;
}
.gradient-color
{
  background: linear-gradient(90deg, #2E6299 0%, #FD8973 44.23%, #D23D2A 100%);
  color: transparent;
  background-clip: text;
}
.partner .box {
    background: #EEF6FF14;
    border: 1px solid #FFFFFF47;
    backdrop-filter: blur(25.609289169311523px);
    border-radius: 100%;
    height: 20.5vw;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 3vw;
}
.partner .box-text {
    opacity: 0;
    transform: translateY(6vw);
    transition: 0.7s ease;
  padding-top:1vw;
}
.partner .box:hover .box-text
{
   opacity: 1;
   transform: translateY(0);
}
.partner .box-image {
    transform: translateY(4vw);
    transition: 0.7s ease;
}
.partner .box:hover .box-image {
    transform: translateY(0vw);
}
.partner .box:after {
    content: '';
    background-image: url(/wp-content/uploads/2026/06/arrow-down.svg);
    width: 1vw;
    height: 1vw;
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    bottom: 4.2vw;
    left: 0vw;
    right: 0vw;
    margin: 0 auto;
    transform: rotate(
181deg);
  transition: 0.7s ease;
}
.partner .box:hover:after
{
    opacity:0;
}

a.button.primary.default-btn i:before
{
    content:unset;
}
a.button.primary.default-btn i {
    background-image: url(/wp-content/uploads/2026/07/white-right-arrow.svg);
    width: 0.8vw;
    height: 0.8vw;
    background-repeat: no-repeat;
    margin-top: 0.2vw;
    background-size:cover;
}
a.button.primary.default-btn {
  position: relative;
  z-index: 0;
  background: #D23D2A;
  border: unset;
  color: #fff;
  font-size: 1.1111vw;
  font-weight: 400;
  font-family: "Monoblock Demo";
  border-radius: 4px;
  box-shadow: 0px 1px 2px 0px #0000000D;
  min-height: auto;
  padding: 0.2vw 1.5vw 0.2vw 1.5vw;
  overflow: hidden;
}
a.button.primary.default-btn:hover
{
  background: #2E6299;
}
/*a.button.primary.default-btn::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  border-radius: inherit;
  background: linear-gradient(86.56deg, #D23D2A -9.32%, #FD8973 33.26%, #2E6299 86.95%);
  opacity: 0;
  transition: opacity 0.4s ease;
}
a.button.primary.default-btn:hover::before {
  opacity: 1;
}*/
.default-btn i.icon-angle-right{
    display: inline-block;
    transition: transform 0.5s ease;
}
.default-btn:hover i.icon-angle-right {
    transform: rotate(45deg);
}
.appliaction-inner a.default-btn {
    margin-bottom: 2vw;
}
.map-title .col {
    position: absolute;
    top: 9vw;
    z-index: 1;
}
.map-counter .col {
    position: absolute;
    top: 22vw;
}
.map-counter .col:after {
    content: '';
    background-color: #D23D2A;
    opacity: 0.2;
    height: 1px;
    width: 100vw;
    position: absolute;
    top: 12vw;
    left: 0.6vw;
}
.map-sec:before {
    content: '';
    background-image: url(/wp-content/uploads/2026/06/wave-img.svg);
    width: 100vw;
    height: 45vw;
    position: absolute;
    top: -29.5vw;
    background-repeat: no-repeat;
    background-size: contain;
}
.absolute-footer {
    display: none;
}
footer#footer .ux-menu span.ux-menu-link__text {
    font-size: 1.111vw;
    line-height: 1.806vw;
    font-family: "PP Mori";
    font-weight:400;
    color: #000;
} 
.black-color a, .black-color span
{
  color: rgb(0 0 0 / 80%);
}
footer#footer .menu-link {
    border-left: 1px solid #000;
}
footer#footer:after {
    content: '';
    background-color: #000;
    height: 1px;
    width: 100vw;
    position: absolute;
    bottom: 5.7vw;
}
.footer-info:after {
    content: '';
    background-color: #000;
    height: 1px;
    width: 42.4vw;
    position: absolute;
    left: -2vw;
    top: 9vw;
}
.resource-list {
    display: flex;
  height:44vw;
}
.resource-box h5 {
    font-size: 1.944vw;
    line-height: 2.083vw;
    font-family: 'PP Mori';
    font-weight: 400;
    color: #000;
}
.resource-img img {
  position: absolute;
    height: 34.4vw;
    object-fit: cover;
    width: 21vw;
    margin: 0 auto;
    left: 0vw;
    right: 0vw;
  top: 1.3vw;
    border-radius: 6px;
  opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease;
}
.resource-img {
    position: relative;
}
.resource-img img.active {
    opacity: 1;
    visibility: visible;
}
.resource-box {
    cursor: pointer;
}
p.post-desc {
    font-size: 1.111vw;
    line-height: 1.806vw;
    font-family: 'PP Mori';
    font-weight: 400;
    color: #000000;
}
p.post-date
{
  font-size: 0.972vw;
  line-height: 1.667vw;
    font-family: 'PP Mori';
    font-weight: 400;
    color: hsl(0deg 0% 0% / 90%);
}
.resource-box {
    width: 25vw;
    border-right: 1px solid hsl(0deg 0% 0% / 40%);
    padding: 3vw 1vw 9vw 1vw;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
}
.resource-img {
    width: 25vw;
    padding: 1vw 1vw 9vw 1vw;
    border-right: 1px solid hsl(0deg 0% 0% / 40%);
    border-left: 1px solid hsl(0deg 0% 0% / 40%);
    text-align: center;
}
.resource-sec:before 
{
    content:'';
    height: 1px;
    width: 100vw;
    position: absolute;
    top: 0vw;
    background-color: hsl(0deg 0% 0% / 40%);
  left: 0px;
}
.resource-sec {
    position: relative;
}
.resource-sec:after {
    content: '';
    height: 1px;
    width: 100vw;
    position: absolute;
    bottom: 8.9vw;
    background-color: hsl(0deg 0% 0% / 40%);
    left: 0px;
}
.resource-box div {
    margin-bottom: 2vw;
}
.resource-box div {
    margin-bottom: 2vw;
}
.resource-box
{
    position:relative;
}
.resource-box:after {
    content: '';
    background-image: url(/wp-content/uploads/2026/07/orange-arrow.svg);
    width: 4vw;
    height: 4vw;
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    bottom: 6.7vw;
    right: 0.6vw;
  opacity:0;
  transition: 0.5s ease;
}
.resource-box:hover:after
{
  opacity:1;
}
li.html.header-button-1 a, header#header ul.header-nav.header-nav-main > li:last-child > a {
    background: #D23D2A !important;
    border: unset;
    color: #fff !important;
    font-size: 1.1111vw;
    font-weight: 400;
    font-family: "Monoblock Demo";
    border-radius: 4px;
    box-shadow: 0px 1px 2px 0px #0000000D;
    min-height: auto;
    padding: 1.2vw 2vw 1.0vw 2vw;
    text-transform: uppercase;
}
li.html.header-button-1 a:hover
{
  background: #2E6299;
}
header#header ul.header-nav li.menu-item a {
    backdrop-filter: blur(25.609289169311523px);
    background: #EEF6FF0A;
    font-size: 0.903vw;
    line-height: 0.047vw;
    font-weight: 400;
    font-family: 'PP Mori';
    color: #fff;
    text-transform: capitalize;
    padding: 1.2vw 3.7vw 1.1vw 3.7vw;
    border-radius: 4px;
}
header#header ul.header-nav.header-nav-main li {
    margin: 0 0.4vw;
}
header#header .flex-col.hide-for-medium.flex-right {
    width: 100%;
}
header#header ul.header-nav.header-nav-main.nav.nav-right.nav-uppercase {
    width: 100%;
    gap: 1.2vw;
}
header#header ul.header-nav li.menu-item a:hover, header#header ul.header-nav li.current-menu-parent > a,
header#header ul.header-nav li.current-menu-item.current_page_item.active > a {
    background: #2E6299 !important;
    backdrop-filter: blur(25.609289169311523px) !important;
  color:#fff !important;
}
header#header ul.header-nav li.menu-item a i:before {
    content: '';
    background-image: url(/wp-content/uploads/2026/06/arrow-down.svg);
    width: 0.6vw;
    height: 0.6vw;
    position: absolute;
    background-repeat: no-repeat;
    background-size: contain;
    right: -2.5vw;
    top: -0.3vw;
}
.page-id-249 header#header ul.header-nav li.menu-item a i:before, 
.page-id-19 header#header ul.header-nav li.menu-item a i:before,
.page-id-500 header#header ul.header-nav li.menu-item a i:before,
.page-id-21 header#header ul.header-nav li.menu-item a i:before,
.page-id-3 header#header ul.header-nav li.menu-item a i:before,
.page-id-677 header#header ul.header-nav li.menu-item a i:before
{
  background-image: url(/wp-content/uploads/2026/07/blck-arrow.svg);
}

.page-id-249 img.header-logo-dark, .page-id-19 img.header-logo-dark, 
.page-id-500 img.header-logo-dark, .page-id-21 img.header-logo-dark, 
.page-id-3 img.header-logo-dark, .page-id-677 img.header-logo-dark  {
    display: block !important;
}
.page-id-249 img.header_logo.header-logo, .page-id-19 img.header_logo.header-logo, 
.page-id-500 img.header_logo.header-logo, .page-id-21 img.header_logo.header-logo, 
.page-id-3 img.header_logo.header-logo, .page-id-677 img.header_logo.header-logo 
{
    display:none !important;
}
.page-id-249 header#header ul.header-nav li.menu-item a, 
.page-id-19 header#header ul.header-nav li.menu-item a, 
.page-id-500 header#header ul.header-nav li.menu-item a, 
.page-id-21 header#header ul.header-nav li.menu-item a,
.page-id-3 header#header ul.header-nav li.menu-item a,
.page-id-677 header#header ul.header-nav li.menu-item a
{
  backdrop-filter: blur(25.609289169311523px);
    background: #0000000A;
    color: #000;
}
.page-id-249 header#header ul.header-nav li.menu-item a:hover, 
.page-id-19 header#header ul.header-nav li.menu-item a:hover,
.page-id-500 header#header ul.header-nav li.menu-item a:hover,
.page-id-21 header#header ul.header-nav li.menu-item a:hover,
.page-id-3 header#header ul.header-nav li.menu-item a:hover,
.page-id-677 header#header ul.header-nav li.menu-item a:hover
{
  color: #fff !important;
}
.page-id-500 footer#footer
{
  display: none;
}
.partner:after 
{
    content: '';
    background-image: url(/wp-content/uploads/2026/07/partner-ring.png);
    width: 90%;
    height: 90%;
    position: absolute;
    background-repeat: no-repeat;
    right: 0vw;
    top: 3.8vw;
    z-index: -1;
    background-size: contain;
}
.partner
{
    position:relative;
}
.header-wrapper.stuck div#masthead{
    background-color: #101619;
}
header#header ul.sub-menu.nav-dropdown {
    padding: 0;
    min-width: 9.6vw;
    background-color: transparent;
    border: unset;
    left: 0px;
    box-shadow: unset;
}
header#header ul.sub-menu.nav-dropdown{
    overflow: hidden;
}
header#header ul.sub-menu.nav-dropdown li, header#header ul.sub-menu.nav-dropdown li a
{
  margin: 0.3vw 0px;
    border-radius: 4px;
}
.nav-dropdown.nav-dropdown-default>li>a {
    border-bottom: unset;}
.nav-dropdown-has-arrow li.current-dropdown.has-dropdown:after, .nav-dropdown-has-arrow li.current-dropdown.has-dropdown:before {
  opacity: 0;}
.milestones-sec {
    z-index: 0;
}
.badge:after {
    content: '';
    background-color: hsl(0deg 0% 100% / 20%);
    height: 1px;
    width: 3vw;
    position: absolute;
    right: -3vw;
}
.badge:before {
    content: '';
    background-color: hsl(0deg 0% 100% / 20%);
    height: 1px;
    width: 3vw;
    position: absolute;
    left: -3vw;
}
.down-arrow img
{
  animation: jumpInfinite 1.5s infinite;
}
.down-arrow {position: absolute;left: 0;right: 0;}
@keyframes jumpInfinite {
  0% {
    margin-top: 0;
  }
  50% {
    margin-top: 20px;
  }
  100% {
    margin-top: 0;
  }
}

.ssv-video-frame {
    border: 2px solid #2E6299;
    padding: 1.2vw 0vw;
}

.wrap_svl_center_box, .wrap_svl, .images_wrap 
{
    height: 100%;
    width: 100%;
}

.lane-box .box-text {
    height: 95vh;
}
.lane-box .box-text .box-text-inner
{
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    height: 95vh;
}
.lane-box h4 {
    font-size: 2.639vw;
    line-height: 3.056vw;
    font-family: 'DM Sans';
    font-weight: 400;
}
.lane-box p {
    font-size: 1.389vw;
    line-height: 1.944vw;
    font-family: 'PP Mori';
    font-weight: 400;
    transform: translateY(-6vw);
    transition: 0.7s ease;
    opacity: 1;
}
.lane-box .box:hover p
{
  transform: translateY(0vw);
  opacity: 0;
  color: #fff !important;
}
.lane-box h4 {
    transform: translateY(4vw);
    transition: 0.7s ease;
}
.lane-box .box:hover h4
{
    transform: translateY(1vw);
     color: #fff !important;
}
.box-overlay.dark .box-text, .box-shade.dark .box-text {
    text-shadow: unset;
}
.lane-box
{
    padding:0px;
    border-width: 1px 0px;
    border-style: solid;
    border-color: rgb(0 0 0 / 40%);
  height: 95vh;
}
.lane-box>.col+.col:not(.large-12) 
{
    border-left: 1px solid rgb(0 0 0 / 40%);
}
.lane-box .box-image 
{
    inset:0;
    z-index:0;
    clip-path:inset(0% 50% 0% 50%);  
    transform:scaleX(1.08);
    transition:
      clip-path .4s cubic-bezier(.16,1,.3,1),
      transform .4s cubic-bezier(.16,1,.3,1);
    will-change:clip-path, transform;
  height: 95vh;
}
.lane-box .box:hover .box-image 
{
  clip-path:inset(0% 0% 0% 0%);      
    transform:scaleX(1);
}
.lane-box .box:after {
    content: '';
    background-image: url(/wp-content/uploads/2026/07/top-arrow.svg);
    width: 1vw;
    height: 1vw;
    position: absolute;
    background-size: contain;
    background-repeat: no-repeat;
    bottom: 2vw;
    left: 2vw;
}
 .video-wrapper {
    position: relative;
    max-width: 100vw;
    margin: 0 auto;
    border: 1px solid #2E6299;
    border-radius: 6px;
    overflow: hidden;
}
.video-wrapper video { display: block; width: 100%; height: auto; cursor: pointer; }
.play-btn {
  position: absolute; inset: 0;
  display: flex; align-items: center; justify-content: center;
  background: rgba(0,0,0,.25); border: 0; cursor: pointer;
  transition: opacity .3s ease; padding: 0;margin: 0;
}
.play-btn img { transition: transform .2s ease; width: 4vw;}
.play-btn:hover img { transform: scale(1.1); }
.play-btn.is-hidden { opacity: 0; pointer-events: none; }

.video-wrap { position: relative; display: inline-block; cursor: pointer; }
.video-wrap video { display: block; width: 100%; }
.play-btn {
  position: absolute; top: 50%; left: 50%;
  transform: translate(-50%, -50%);
  font-size: 2rem; padding: 0.6em 0.9em; border: none;
  border-radius: 50%; background: rgba(0,0,0,0.6); color: #fff;
  cursor: pointer;
}
.play-btn.hidden { display: none; }


.about-banner .section-bg.fill img{
    padding: 0.7vw;
}

.form-row {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    gap: 2vw;
}
.contact-form input.wpcf7-form-control {
    border-bottom: 1px solid hsl(0deg 0% 100% / 20%) !important;
    border: unset;
    background-color: transparent;
    padding: 0;
    font-size: 1.1111vw;
    font-weight: 400;
    font-family: 'PP Mori';
    color: #fff;
    margin-bottom: 2vw;
    box-shadow: unset;
    opacity: 0.9;
}
.contact-form ::placeholder
{
    font-size: 1.1111vw;
    font-weight: 400;
    font-family: 'PP Mori';
    color: #fff;
    opacity: 0.9;
}
input[type=email]:focus, input[type=text]:focus, select:focus, textarea:focus
{
  box-shadow: unset;
}
.custom-submit {
    border-radius: 6px;
    color: #FFFFFF;
    font-size: 1.1111vw;
    text-transform: uppercase;
    font-weight: 400;
    font-family: 'Monoblock Demo';
    padding: 0.1vw 1.5vw 0.1vw 1.5vw;
    background-color: #D23D2A;
    box-shadow: 0px 1px 2px 0px #0000000D;
    line-height: 1.4em;
}
button.custom-submit img {
    margin-left: 2vw;
}
.wpcf7 .wpcf7-not-valid-tip
{
  position: absolute !important;
  font-size: 1vw;
  bottom: 0vw;
}
.wpcf7-response-output {
    color: hsl(0deg 0% 100% / 50%);
}
.contact-form .col-inner {
    background: #EEF6FF14;
    border: 1px solid #FFFFFF47;
    backdrop-filter: blur(25.609289169311523px);
    padding: 5vw 3vw;
    border-radius: 6px;
}
.contact-form .col-inner form {
    margin-bottom: 0px;
}
.form-col {
    width: 50%;
}
.sbt-btn {
    text-align: center;
    margin-top: 1vw;
}
.contact-form button.custom-submit:hover img {
    transform: rotate(45deg);
}
.contact-form button.custom-submit img
{
    transition: transform 0.5s ease;
}
.contact-form .wpcf7 .wpcf7-not-valid-tip:after
{
  display: none;
}
.contact-info .col-inner .col-inner 
{
    background: #EEF6FF14;
    border: 1px solid #FFFFFF47;
    backdrop-filter: blur(25.609289169311523px);
    border-radius:6px;
    padding: 2vw;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    gap: 2.5vw;
}
.contact-info .col-inner .col-inner p
{
    margin-bottom:0px;
}
.contact-info .col-inner .col-inner .text:after {
    content: '';
    background-color: #fff;
    opacity: 0.2;
    width: 100%;
    height: 1px;
    position: absolute;
    top: 3.5vw;
}
.contact-info .col-inner .col-inner .text
{
    position:relative;
}
.contact-info .col-inner .col-inner .text:last-child:after
{
    content:unset;
}
.contact-info a
{
    color:#fff;
}
.wpcf7 form.invalid .wpcf7-response-output, .wpcf7 form.unaccepted .wpcf7-response-output, .wpcf7 form.payment-required .wpcf7-response-output {
    border-color: #fff;
    color: #fff;
}
a.button.primary.default-btn.white-btn {
    background: #fff;
    color: #D23D2A;
}
a.button.primary.default-btn.white-btn i {
    background-image: url(/wp-content/uploads/2026/07/orangearrow.svg);
}



.searchcase, .searchinsights, .searchpresen, .searchproject{
      display:flex;
      align-items:center;
      gap:0.556vw; /* 8px */
  }
  .searchcase input, .searchpresen input, .searchinsights input, .searchproject input{
    width:0;
    opacity:0;
    padding:0;
    border:none;
    border-bottom:0.104vw solid transparent; /* 1.5px */
    background:transparent;
    font-size:1.042vw; /* 15px */
    color:#000;
    transition:width .28s ease, opacity .2s ease, padding .28s ease, border-color .2s ease;
    outline:none;
    margin-bottom:0;
    box-shadow: unset;
  }
  .searchcase.open input, .searchpresen.open input, .searchinsights.open input, .searchproject.open input{
    width:15.278vw; /* 220px */
    opacity:1;
    padding:0.417vw 0.278vw; /* 6px 4px */
    border-bottom-color:var(--accent);
  }
  .searchcase input::placeholder, .searchpresen input::placeholder, 
  .searchinsights input::placeholder, .searchproject input::placeholder
  {color:var(--meta);}
  .searchcase button, .searchpresen button, .searchinsights button, .searchproject button{
    background:transparent;
    border:none;
    cursor:pointer;
    color:var(--accent);
    display:flex;
    padding:0.417vw; /* 6px */
    border-radius:0.417vw; /* 6px */
    margin-bottom:0;
    min-height:0;
  }
  .searchcase button circle, .searchcase button line, 
  .searchpresen button circle, .searchpresen button line,
  .searchinsights button circle, .searchinsights button line,
  .searchproject button circle, .searchproject button line {
    stroke: #D23D2A;
}
input[type=text]:focus
{
  background-color: unset;
}

  /* ---------- Grid ---------- */
  .grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
  }
  .case-grid
  {
    border-right: 1px solid rgb(0 0 0 / 40%);
  }
  .gridpresen, .gridproject {
      grid-template-columns: repeat(1, 1fr) !important;
      gap: 1.4vw;
      margin-top: 3vw;
  }
  .cardpresen {
    padding: 1vw;
    border: 1px solid rgb(0 0 0 / 30%);
    position: relative;
    display: flex;
    flex-wrap: nowrap;
    flex-direction: row;
    gap: 2vw;
    align-items: center;
    border-radius: 6px;
}
.cardproject {
      padding: 1.4vw 0vw;
      border-top: 1px solid rgb(0 0 0 / 30%);
      border-bottom: 1px solid rgb(0 0 0 / 30%);
      position: relative;
      display: flex;
      flex-wrap: nowrap;
      flex-direction: row;
      gap: 2vw;
      align-items: center;
      justify-content: space-between;
  }
  .cardcase{
    padding: 1vw 2vw 6vw 2vw;
    border-left: 1px solid rgb(0 0 0 / 40%);
    position: relative;
    border-bottom: 1px solid rgb(0 0 0 / 40%);
  }
  .cardinsights{
    position: relative;
  }
  .thumbcase{
    aspect-ratio:4/3;
    width:100%;
    background:transparent;
    border-radius:2px;
    margin:16px 0 22px;
    overflow:hidden;
  }
  .thumbpresen, .thumbproject{
    width:20vw;
    background:transparent;
    border-radius:2px;
    overflow:hidden;
  }
  .presen_desc {
    width: 50vw;
}
  .thumbcase img{width:100%;height:100%;object-fit:cover;display:block;border-radius: 6px;opacity: 0;}
  .thumbpresen img, .thumbproject img{width:100%;height:100%;object-fit:cover;display:block;border-radius: 6px;}
.cardcase:hover .thumbcase img
{
  opacity: 1;
}
  .cardcase h2, .cardpresen h2, .cardproject h2 {
      font-size:1.944vw; /* 28px */
      font-weight:400;
      line-height:2.361vw; /* 34px */
      margin:0 0 0.972vw; /* 14px */
      color:#000;
  }
.cardinsights h2 {
    font-size: 1.667vw;
    font-weight: 400;
    line-height: 2.361vw;
    color: #000;
    font-family: 'PP Mori';
}
  .cardcase p, .cardpresen p, .cardproject p {
    font-size:1.111vw; /* 16px */
    line-height:1.806vw; /* 26px */
    color:#000;
    margin:0 0 1.944vw; /* 28px */
    font-weight:400;
    font-family:'PP Mori';
}
  .cardcase .date, .cardpresen .date, .cardproject .date{
    font-size:0.972vw; /* 14px */
    line-height:1.667vw; /* 24px */
    font-weight:400;
    color:#000;
    font-family:'PP Mori';
    opacity:.9;
  }
  .arrowcase, .arrowpresen, .arrowproject{
    position:absolute;
    right:1.667vw; /* 24px */
    bottom:1.5vw;
    border:none;
    border-radius:0.208vw; /* 3px */
    cursor:pointer;
    display:flex;
    align-items:center;
    justify-content:center;
    transition:background .15s ease, transform .15s ease;
  }
   .arrowcase
   {
      opacity: 0;
   }
  .arrowinsight{
    position:absolute;
    left:1.2vw;
    bottom:1.5vw;
    border:none;
    border-radius:3px;
    cursor:pointer;
    display:flex;
    align-items:center;
    justify-content:center;
    transition:background .15s ease, transform .15s ease;
  }
  .arrowcase img, .arrowpresen img, .arrowinsight img, .arrowproject img {
      width: 4vw;
      height: 3vw;
  }
  .cardcase:hover .arrowcase{;transform:translateY(-2px); opacity: 1;}
  .arrowcase:focus-visible{outline:2px solid var(--focus);outline-offset:2px;}
  .project_desc {
    width: 50vw;
}

  /* ---------- load more ---------- */
  .casestudy-btn, .presen-btn, .project-btn{
    text-align:center;
    padding:1.806vw 0 2.778vw; /* 26px 0 40px */
    border-top:0.069vw solid var(--cardpresen-line);
    margin-top:0.556vw; /* 8px */
}
  .load-btn{
    text-align:center;
    padding:26px 0 40px;
    border-top:1px solid var(--cardinsights-line);
    margin-top:8px;
  }
  .load-more {
    background: none;
    border: none;
    color: #D23D2A;
    font-size:1.111vw;
    font-weight: 400;
    text-transform: uppercase;
    text-decoration: underline;
    text-underline-offset: 4px;
    cursor: pointer;
    font-family: 'Monoblock Demo';
}
  .load-more:hover{color:#2E6299;}
  .load-more:disabled{color:var(--meta);cursor:default;text-decoration:none;}

  .no-results{
    display:none;
    text-align:center;
    color:var(--muted);
    padding:3.333vw 0; /* 48px */
    font-size:1.042vw; /* 15px */
  }

  .cardcase.hidden{display:none;}

  /* ---------- Responsive ---------- */
  @media (max-width:820px){
    .grid{grid-template-columns:1fr;}
    .cardcase{border-right:none;border-bottom:1px solid var(--cardcase-line);padding:8px 8px 40px;}
    .cardcase:last-child{border-bottom:none;}
    .searchcase.open input{width:150px;}
  }
  @media (prefers-reduced-motion:reduce){
    *{transition:none !important;}
  }
.resource-head {
    display: flex;
    align-items: center;
    background-color: hsl(0deg 0% 63% / 10%);
    padding: 1vw 4vw;
}
.csse-study-list {
    padding: 0vw 4vw;
}
.resource-head h1{
    margin-bottom:0;
    color:#000;
    font-size:2.778vw; /* 40px */
    line-height:3.889vw; /* 56px */
    font-weight:400;
    font-family:"DM Sans";
}
.insight-grid {
    gap: 1vw;
    margin-top: 3vw;
}
.insight-grid article.cardinsights {
    border-radius: 6px;
    height: 36vw;
    display: flex;
    align-items: flex-end;
}
.cardinsights-inner {
    background-color: #EEF6FF;
    border: 1px solid #00000029;
    border-radius: 6px 6px 0px 0px;
    width: 88%;
    height: 48%;
    padding: 1.2vw;
}
.resources-blog ul {
    width: 38vw;
    margin: 0 auto;
    display: flex;
    justify-content: center;
    list-style: none;
    background: #EEF6FF14;
    border: 1px solid #FFFFFF47;
    backdrop-filter: blur(25.609289169311523px);
    border-radius: 6px;
    gap: 1.5vw;
}
.resources-blog ul li {
    margin: 0;
    padding: 1vw 0px;
}
.resources-blog ul li a
{
    color: #000000;
    font-size:14p;
    font-weight:400;
    font-family: "DM Sans";
}
.resources-blog ul li a:hover
{
  color:#D23D2A;
}
.partner-sec:before 
{
    content:'';
    background-image: url(/wp-content/uploads/2026/07/e3partner.png);
    height: 8vw;
    width: 8vw;
    position: absolute;
    background-size: contain;
    left: 0vw;
    right: 0vw;
    margin: 0 auto;
    top: 18vw;
    z-index: 1;
    border-radius: 100%;
    backdrop-filter: blur(25.609289169311523px);
    background-color: #EEF6FF1F;
}
a.partner-link {
    color: #D23D2A;
    font-size: 16px;
    line-height: 26px;
    font-weight: 400;
    font-family: 'Monoblock Demo';
    text-transform: uppercase;
    padding-top:1vw;
}
a.partner-link span
{
  text-decoration: underline;
}
a.partner-link img {
    margin-left: 0.5vw;
}
.lane-box .box-image img {
    height: 100vh;
}

.pw-scope {
  position: relative;
  border-radius: 6px;
  z-index: 0;              /* creates a stacking context so ::before sits correctly */
}

.pw-scope::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: 6px;
  padding: 1px;
  box-sizing: border-box;   /* important: without this the mask math is off */
  background: linear-gradient(0deg, #D23D2A 0%, #2E6299 100%);
  -webkit-mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
          mask:
    linear-gradient(#fff 0 0) content-box,
    linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
          mask-composite: exclude;
  pointer-events: none;
  z-index: 1;              /* sits behind the content but inside the box */
}

.vp-container * { margin: 0; padding: 0; box-sizing: border-box; }
  .vp-container {
    position: relative;
    width: 100%;
    max-width: 100%;
    border-radius: 6px;
    overflow: hidden;
    cursor: pointer;
  }
  .vp-container video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    opacity: 0;                      /* hidden until play */
    transition: opacity 0.3s ease;
  }
  .vp-container.vp-is-playing video {
    opacity: 1;
  }
  .vp-overlay {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: opacity 0.3s ease;
  }
  .vp-container.vp-is-playing .vp-overlay {
    opacity: 0;
    pointer-events: none;
  }
  .vp-poster {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
  }
  .vp-play-btn {
    position: relative;
    width: 76px;
    height: 76px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: transform 0.2s ease, background 0.2s ease;
  }
.terms-sec img {
    object-fit: contain;
}
.header-wrapper.stuck div#masthead
{
    background-color:transparent;
}
.header-bg-color {
    background-color: transparent !important; 
}
.white-color
{
  color: #fff !important;
}
img.vp-poster.mimg {
    display: none;
}
footer#footer .ux-menu span.ux-menu-link__text:hover 
{
  color: #2E6299;
}
.map-sec
{
	overflow:hidden;
}
.history-list
{
	padding-bottom: 5vw;
}

/* BOF iphone 12 pro CSS */
@media (max-width: 390px) 
{
    

}
/* EOF iphone 12 pro CSS */
/* BOF i-phone 14 pro max */
@media only screen and (min-width: 430px) and (max-width: 767px) 
{
    
}
/* EOF i-phone 14 pro max */
/* BOF i-phone 16 pro max */
@media only screen and (min-width: 402px) and (max-width: 767px) 
{
    
}
/* EOF i-phone 16 pro max */
/* BOF iphone 17 pro CSS */
@media (min-width: 400px) and (max-width: 402px) 
{
    
}
/* EOF iphone 17 pro CSS */
/* BOF tablet */

@media only screen and (min-width: 820px) and (max-width: 1180px)
{}