@charset "UTF-8";
:root {
    --body-color: #001233;
    --heading-text-color: #001233;
    --blue-01: #196BFF;
    --top-banner-bg: var(--blue-01);
    --gray-01: #D1E1FF;
    --black-color: #001233;
    --text-white: #fff;
    --white-bg: #fff;
    --blue-color: #196BFF;
    --blue-dark-color: #002261;
    --menu-hover-border-color: #196BFF;
    --submenu-border: #D9D9D9;
    --btn-blue-color: #196BFF;
    --btn-blue-hover-color: #002261;
    --btn-blue-text-color: #fff;
    --blog-details-head-bg: #002261;
    --list-dot-color-bg: #001233;
    --list-number-color-bg: #001233;
    --border-color: rgba(217, 217, 217, 0.74);
    --input-border-color: #D9D9D9;
    --input-bg-color: #fff;
    --input-color: #001233;
    --input-focus-border-color: rgba(25, 107, 255, .5);
    --input-placehoder-color: rgba(0, 0, 0, 0.4);
    --input-error-border-color: #DF4116;
    --input-error-message-color: #DF4116;
    --checkbox-bg: #fff;
    --checkbox-active-bg: #fff;
    --checkbox-border: #D9D9D9;
    --checkbox-active-border: #196BFF;
    --footer-bg: #002261;
    --footer-text-color: #fff;
    --footer-border-color: rgba(255, 255, 255, 0.3);
    --banner-heading-color: #fff;
    --banner-text-color: #fff;
    --banner-btn-bg: #fff;
    --banner-btn-color: #196BFF;
    --banner-btn-hover-bg: #fff;
    --banner-btn-hover-color: #001233;
    --pagination-bg: #fff;
    --pagination-border: #196BFF;
    --pagination-color: #196BFF;
    --pagination-bg-hover: #196BFF;
    --pagination-border-hover: #196BFF;
    --pagination-color-hover: #fff;
    --tab-bg-color: transparent;
    --tab-bg-active-color: #fff;
    --tab-text-color: #001233;
    --tab-text-active-color: #196BFF;
    --tab-border-color: rgba(103, 104, 106, .25);
    --tab-body-bg-color: #196BFF;
    --tab-body-text-color: #fff;
    --tab-button-bg: transparent;
    --tab-button-hover-bg: #fff;
    --tab-button-text-color: #fff;
    --tab-button-hover-text-color: #196BFF;
    --tab-button-border-color: #fff;
    --tab-button-hover-border-color: #fff;
    --tab-v1-bg: #fff;
    --tab-v1-border: #D9D9D9;
    --tab-v1-active-border: #196BFF;
    --tab-v1-color: #001233;
    --tab-v1-active-color: #196BFF;
    --light-blue: #8CB5FF;
    --very-light-blue: #D1E1FF;
    --red: #DF4116;
    --orange: #E6A130;
    --yellow: #EEDB41;
    --green: #448932;
    --dark-green: #2A6217;
}
* {
    padding: 0;
    margin: 0;
    border: 0;
    border-radius: 0.2rem;
}
*,
*::after,
*::before {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}
*::after,
*::before {
    display: inline-block;
}
body,
html {
    height: 100%;
}
body {
    color: var(--body-color);
    line-height: 1.5;
    font-family: Arial;
    font-size: 1.6rem;
    -ms-text-size-adjust: 100%;
    -moz-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-tap-highlight-color: transparent;
}
button,
input,
textarea {
    font-size: inherit;
    line-height: inherit;
    font-family: inherit;
}
button {
    cursor: pointer;
    color: inherit;
    background-color: transparent;
}
a{
    display: inline-block;
    color: inherit;
    text-decoration: none;
    outline: none !important;
    color: var(--blue-color);
}
ul li {
    list-style: none;
}
img {
    vertical-align: top;
}
p{
    margin-bottom: 2.4rem;
}
p:last-child{
    margin-bottom: 0;
}
h1,h2,h3,h4,h5,h6 {
    font-weight: inherit;
    font-size: inherit;
    margin: 0;
    font-family: Arial;
    color: var(--heading-text-color);
}
html {
    font-size: 62.5%;
    scrollbar-gutter: stable;
}
body{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    min-height: 100vh;
    position: relative;
}
.container{
    padding: 0 1.5rem;
    margin: auto;
}
@media (min-width: 576px) {
    .container {
        max-width: 540px;
    }
}
@media (min-width: 768px) {
    .container {
        max-width: 720px;
    }
}
@media (min-width: 992px) {
    .container {
        max-width: 960px;
    }
}
@media (min-width: 1200px) {
    .container {
        max-width: 1170px;
    }
}
@media (min-width: 1340px) {
    .container {
        max-width: 1310px;
    }
}
.text-start {
    text-align: left !important;
}
.text-end {
    text-align: right !important;
}
.text-left {
    text-align: left !important;
}
.text-center {
    text-align: center !important;
}
.text-right {
    text-align: right !important;
}
.text-decoration-none {
    text-decoration: none !important;
}
.text-decoration-underline {
    text-decoration: underline !important;
}
.text-decoration-line-through {
    text-decoration: line-through !important;
}
.text-lowercase {
    text-transform: lowercase !important;
}
.text-uppercase {
    text-transform: uppercase !important;
}
.text-capitalize {
    text-transform: capitalize !important;
}
.text-wrap {
    white-space: normal !important;
}
.text-nowrap {
    white-space: nowrap !important;
}
.btn {
    outline: none;
    display: inline-block;
    text-align: center;
    text-decoration: none;
    vertical-align: middle;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
.text-truncate {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
.link {
  outline: none;
  padding: 0;
  margin: 0;
  background: transparent;
  border: 0;
  font-weight: bold;
  display: inline-flex;
  align-items: center;
}
.link-black{
  color: var(--black-color);
}
.link:hover{
  text-decoration: underline !important;
}
.link img {
  margin-left: 1rem;
  width: 2rem;
}
.d-inline {
    display: inline !important;
}
.d-inline-block {
    display: inline-block !important;
}
.d-block {
    display: block !important;
}
.d-flex {
    display: flex !important;
}
.d-inline-flex {
    display: inline-flex !important;
}
.d-none {
    display: none !important;
}
.d-flex-w{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
}
.d-new{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    flex-wrap: wrap;
}
.d-align{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    flex-wrap: wrap;
}
.d-new-a{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    flex-wrap: wrap;
}
.d-center{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    justify-content: center!important;
    flex-wrap: wrap;   
}
.d-center img{
    max-width: 100%;
    max-height: 100%;
}
.d-flex-1{
    -webkit-box-flex: 1;
    -ms-flex: 1;
    flex: 1;
}
h1,.h1,.h1 *{
    font-size: 4.5rem;
    font-weight: bold;
    line-height: 5.6rem
}
h2,.h2,.h2 *{
    font-size: 3.5rem;
    font-weight: bold;
    line-height: 4.8rem
}
h3,.h3,.h3 *{
    font-size: 3.2rem;
    font-weight: bold;
    line-height: 4.4rem;
}
h4,.h4,.h4 *{
    font-size: 2.8rem;
    font-weight: bold;
    line-height: 3.6rem
}
h5,.h5,.h5 *{
    font-size: 2.2rem;
    font-weight: bold;
    line-height: 3.2rem
}
h6,.h6,.h6 *{
    font-size: 1.9rem;
    font-weight: bold;
    line-height: 3.2rem
}
.sub-title,.sub-title *{
    font-size: 1.5rem;
    font-weight: 400;
    line-height: l.5
}
.small-text{
    font-size: 1.4rem;
    line-height: 1.8rem;
    font-weight: bold;
    margin: 0;
}
.small-title{
  font-size: 12px;
  line-height: 20px;
  font-weight: bold;
  text-transform: uppercase;
  letter-spacing: 1px;
  margin: 0 0 4px;
  display: block;
}
p{
    margin-bottom: 2rem;
}
.fw-normal,.fw-normal * {
    font-weight: 400 !important;
}
.fw-medium,.fw-medium * {
    font-weight: bold !important;
}
.fw-semibold,.fw-semibold * {
    font-weight: bold !important;
}
.fw-bold,.fw-bold *{
    font-weight: 700 !important;
}
.text-white,.text-white *{
    color: var(--text-white);
}
.text-blue,.text-blue *{
    color: var(--blue-color);
}
.text-black,.text-black *{
    color: var(--black-color);
}
.text-dark-blue,.text-dark-blue *{
    color: var(--blue-dark-color);
}
.bg-gray-01{
  background: var(--gray-01);
}
.pt-96{
    padding-top: 9.6rem;
}
.pb-96{
    padding-bottom: 9.6rem;
}
.mt-96{
    margin-top: 9.6rem;
}
.mb-96{
    margin-bottom: 9.6rem;
}
.pt-80{
    padding-top: 8rem;
}
.pb-80{
    padding-bottom: 8rem;
}
.mt-80{
    margin-top: 8rem;
}
.mb-80{
    margin-bottom: 8rem;
}
.pt-64{
    padding-top: 6.4rem;
}
.pb-64{
    padding-bottom: 6.4rem;
}
.pt-36{
    padding-top: 3.6rem;
}
.pb-36{
    padding-bottom: 3.6rem;
}
.mt-64{
    margin-top: 6.4rem;
}
.mb-64{
    margin-bottom: 6.4rem;
}
.pt-56{
    padding-top: 5.6rem;
}
.pb-56{
    padding-bottom: 5.6rem;
}
.mt-56{
    margin-top: 5.6rem;
}
.mb-56{
    margin-bottom: 5.6rem;
}
.pt-48{
    padding-top: 4.8rem;
}
.pb-48{
    padding-bottom: 4.8rem;
}
.mt-48{
    margin-top: 4.8rem;
}
.mb-48{
    margin-bottom: 4.8rem;
}
.pt-40{
    padding-top: 4rem;
}
.pb-40{
    padding-bottom: 4rem;
}
.mt-40{
    margin-top: 4rem;
}
.mb-40{
    margin-bottom: 4rem;
}
.pt-32{
    padding-top: 3.2rem;
}
.pb-32{
    padding-bottom: 3.2rem;
}
.mt-32{
    margin-top: 3.2rem;
}
.mb-32{
    margin-bottom: 3.2rem;
}
.pt-24{
    padding-top: 2.4rem;
}
.pb-24{
    padding-bottom: 2.4rem;
}
.mt-24{
    margin-top: 2.4rem;
}
.mb-24{
    margin-bottom: 2.4rem;
}
.pt-16{
    padding-top: 1.6rem;
}
.pb-16{
    padding-bottom: 1.6rem;
}
.mt-16{
    margin-top: 1.6rem;
}
.mb-16{
    margin-bottom: 1.6rem;
}
.mb-12{
  margin-bottom: 1.2rem;
}
.pt-8{
    padding-top: 0.8rem;
}
.pb-8{
    padding-bottom: 0.8rem;
}
.mt-8{
    margin-top: 0.8rem;
}
.mb-8{
    margin-bottom: 0.8rem;
}
header {
    background: #fff;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 999;
    border-bottom: 1px solid #D9D9D9;
}
.header-top{
    background: var(--top-banner-bg);
    padding: 0.8rem 0;
}
/* Banner background color classes — use on .header-top */
.header-top.bg-blue        { --top-banner-bg: #196BFF; }
.header-top.bg-navy        { --top-banner-bg: #001233; }
.header-top.bg-dark-blue   { --top-banner-bg: #002261; }
.header-top.bg-white       { --top-banner-bg: #ffffff; }
.header-top.bg-light-gray  { --top-banner-bg: #f5f7fa; }
.header-top.bg-soft-blue   { --top-banner-bg: #D1E1FF; }
.header-top.bg-black       { --top-banner-bg: #000000; }
.header-top.bg-red         { --top-banner-bg: #E53E3E; }
.header-top.bg-green       { --top-banner-bg: #38A169; }
.header-top.bg-orange      { --top-banner-bg: #DD6B20; }
.header-top-close img{
    display: block;
    cursor: pointer;
    transition: all .2s cubic-bezier(.455,.03,.515,.955);
}
.header-top-close img:hover{
    -webkit-transform: rotate(90deg);
    -moz-transform: rotate(90deg);
    transform: rotate(90deg);
}
.header-top-name{
    border: 1px solid var(--black-color);
    padding: 0.2rem 0.6rem 0;
    font-size: 1.2rem;
    text-transform: uppercase;
    font-weight: 700;
    letter-spacing : 0.9px;
    margin-right: 1.4rem;
}
.header-top-name:last-child{
    margin-right: 0;
}
.header-top-info p{
    margin: 0 2rem 0 0;
    color: var(--text-white);
}
.header-top-close {
    margin-left: auto;
}
.header-top-link a{
    color: var(--text-white);
    text-decoration: underline;
    font-weight: bold;
}
.header-bottom{
    position: relative;
}
.header-block {
    position: relative;
}
.logo a{
    display: block;
}
.logo img{
    max-width: 16rem;
    max-height: 6.5rem;
    width: auto;
    height: auto;
}
.menu-outer{
    margin-left: auto;
}
.menu > ul{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}
.menu > ul > li{
    position: initial;
}
.menu > ul > li > a {
    font-weight: bold;
    color: var(--body-color) !important;
    padding: 0 0.8rem;
    height: 7.8rem;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    position: relative;
}
.menu > ul > li.hasChild > a::after{
    position: relative;
    content: "";
    height: 2rem;
    width: 2rem;
    display: flex;
    align-items: center;
    justify-content: center;
    background: url(../icons/icon-down.png);
    background-size: 1.6rem;
    background-repeat: no-repeat;
    background-position: center;
    margin-left: 0.4rem;
    filter: invert(38%) sepia(100%) saturate(1876%) hue-rotate(207deg) brightness(104%) contrast(101%);
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
}
.menu > ul > li.hasChild:hover > a::after{
    -webkit-transform: rotate(-180deg);
    -moz-transform: rotate(-180deg);
    transform: rotate(-180deg);
}
.menu > ul > li > a::before{
    position: absolute;
    content: "";
    left: 0;
    bottom: 0;
    height: 0.6rem;
    width: 100%;
}
.menu > ul > li:hover > a::before,
.menu > ul > li.active > a::before{
    background: var(--menu-hover-border-color);
}
.menu .menu-btn{
    display: none;
}
.submenu{
    position: absolute;
    top: 7.8rem;
    left: 0;
    width: 100%;
    opacity: 0;
    visibility: hidden;
    -webkit-transform: translateY(1rem);
    -moz-transform: translateY(1rem);
    transform: translateY(1rem);
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
}
.menu > ul > li.hasChild:hover .submenu{
    opacity: 1;
    visibility: visible;
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    transform: translateY(0);
}
.submenu-mobile-head{
    display: none;
}
.submenu-mobile-head{
    display: none;
}
.submenu-list-outer{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
}
.submenu-list{
    -ms-flex-direction: row;
    -webkit-box-direction: normal;
    -webkit-box-orient: horizontal;
    -webkit-box-shadow: 0 2px 4px #D9D9D9;
    background-color: var(--white-bg);
    box-shadow: 0 2px 4px #D9D9D9;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-direction: row;
    margin-left: auto;
    max-width: 100%;
    margin-top: 1px;
}
.submenu-item{
    padding: 1.2rem 0;
    width: 32rem;
    border-right: 1px solid var(--submenu-border)
}
.submenu-item:last-child{
    border-right: 0;
}
.submenu-title{
    padding: 1.2rem 3.2rem 0.8rem;
    font-size: 2rem;
    line-height: 2.8rem;
    color: var(--blue-color);
    font-weight: bold;
}
.submenu-list-nav{
    padding: 0 3.2rem;
}
.submenu-list-nav li{
    display: block;
    margin-top: 1.4rem;
}
.submenu-list-nav li:last-child{
    margin-bottom: 1.4rem;
}
.submenu-list-nav li a {
    font-size: 1.2rem;
    line-height: 1.6rem;
    color: var(--body-color);
    width: 100%;
    display: block;
}
.submenu-list-nav li span{
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    font-weight: bold;
    font-size: 1.6rem;
    line-height: 2.6rem;
    color: var(--body-color);
    width: 100%;
}
.submenu-list-nav li:hover span{
    text-decoration: underline;
}
.menu-language {
    outline: none;
    border: 0;
    margin-left: 1.4rem;
    position: relative;
}
.language-icon {
    height: 7.8rem;
    display: flex;
    align-items: center;
    cursor: pointer;
}
.language-icon img{
    width: 2.4rem;
}
.language-dropdown{
    position: absolute;
    right: 0;
    top: 100%;
    -webkit-box-shadow: 0 2px 4px #D9D9D9;
    background-color: var(--white-bg);
    box-shadow: 0 2px 4px #D9D9D9;
    margin-top: 1px;
    min-width: 20rem;
    opacity: 0;
    visibility: hidden;
    -webkit-transform: translateY(1rem);
    -moz-transform: translateY(1rem);
    transform: translateY(1rem);
    -webkit-transition: all 0.3s;
    -moz-transition: all 0.3s;
    transition: all 0.3s;
}
.menu-language:hover .language-dropdown{
    opacity: 1;
    visibility: visible;
    -webkit-transform: translateY(0);
    -moz-transform: translateY(0);
    transform: translateY(0);
}
.lang-item {
    outline: none;
    display: flex;
    align-items: center;
    padding: 0 2rem;
    margin: 1.4rem 0 0;
    font-weight: bold;
    font-size: 1.6rem;
    line-height: 2.6rem;
    color: var(--body-color);
    white-space: nowrap;
}
.lang-item:last-child{
    margin-bottom: 1.5rem;
}
.lang-item:hover{
    text-decoration: underline !important;
}
.flag-icon {
    margin-right: 1.5rem;
    display: flex;
    align-items: center;
}
.flag-icon img{
    width: 3rem;
    height: 1.8rem;
}
.resource-icon {
    width: 2.4rem;
    height: 2.4rem;
    margin-right: 1.4rem;
    flex-shrink: 0;
}
.resource-icon svg {
    display: block;
    width: 2.2rem;
    height: 2.2rem;
}
.resource-dropdown {
    min-width: 23rem;
    right: auto;
    left: 50%;
    transform: translateX(-50%) translateY(1rem);
    padding: 0;
}
.menu-language:hover .resource-dropdown {
    transform: translateX(-50%) translateY(0);
}
.resource-dropdown .lang-item {
    font-size: 1.6rem;
    font-weight: bold;
    line-height: 2.6rem;
    color: var(--body-color);
    padding: 0 3.2rem;
    margin-top: 1.4rem;
}
.resource-dropdown .lang-item:last-child {
    margin-bottom: 1.4rem;
}
.menu-btn{
    margin-left: 2.4rem;
}
.btn{
    height: 4rem;
    border-radius: 0.2rem;
    padding: 0 2rem;
    text-transform: uppercase;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    letter-spacing: 0.5px;
    font-size: 1.5rem;
    font-weight: bold;
}
.btn-blue{
    background: var(--btn-blue-color);
    color: var(--btn-blue-text-color);
}
.btn-blue:hover{
    background: var(--btn-blue-hover-color); 
}
.btn-white{
    background: var(--white-bg);
    color: var(--blue-color);
}
.btn-white:hover{
    color: var(--black-color);
}
.btn-blue-outline{
    border: 1px solid var(--btn-blue-color);
    background: var(--white-bg);
    color: var(--btn-blue-color);
}
.btn-blue-outline:hover{
    color: var(--btn-blue-text-color);
    background: var(--btn-blue-color);
}
.toggleMenu{
    height: 3rem;
    width: 2.5rem;
    display: none;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    position: relative;
}
.toggleMenu span{
    position: absolute;
    width: 100%;
    height: 2px;
    background: var(--black-color);
}
.toggleMenu span.bar1 {
    top: 0.6rem;
    transform: rotate(0);
    transition: top .15s ease .15s, transform .15s ease-out .05s;
}
body.openMenu .toggleMenu span.bar1 {
    top: 1.5rem;
    transform: rotate(45deg);
    transition: top .15s ease .05s,transform .15s ease-out .25s;
}
.toggleMenu span.bar2 {
    top: 1.5rem;
    opacity: 1;
    transition: .15s ease .15s;
}
body.openMenu .toggleMenu span.bar2 {
    opacity: 0;
}
.toggleMenu span.bar3 {
    top: 2.4rem;
    transform: rotate(0);
    transition: top .15s ease .15s, transform .15s ease-out .05s;
}
body.openMenu .toggleMenu span.bar3 {
    top: 1.5rem;
    transform: rotate(-45deg);
    transition: top .15s ease .05s,transform .15s ease-out .25s;
}
main{
    margin-top: 11.9rem;
}
.no-header-top main{
    margin-top: 7.8rem;
}
.sec-blog-head{
    position: relative;
    background: var(--blog-details-head-bg);
}
.blog-head-top-text{
    font-size: 1.2rem;
    line-height: 1;
    font-weight: bold;
}
.blog-head-top-text span{
    margin: 0 0.5rem;
}
.blog-head-top-text a:hover{
    color: var(--text-white);
}
.breadcrumb ul{
    flex-wrap: nowrap !important;
}
.breadcrumb li{
    margin: 0 1.2rem;
    font-size: 1.2rem;
    line-height: 1;
    position: relative;
    opacity: 0.8;
    white-space: nowrap !important;
}
.breadcrumb li:hover{
    opacity: 1;
}
.breadcrumb li::after {
    position: absolute;
    content: "";
    height: 0.4rem;
    width: 0.4rem;
    border-radius: 50%;
    left: -1.5rem;
    top: 0;
    bottom: 0;
    margin: auto;
    background: var(--white-bg);
    opacity: 0.8;
}
.breadcrumb li:first-child{
    margin-left: 0;
}
.breadcrumb li:last-child{
    margin-right: 0;
}
.breadcrumb li:first-child::after{
    content: none;
}
.blog-contnet{
    max-width: 87rem;
    margin: auto;
}
.blog-contnet.full-width{
    max-width: none;
}
/* Privacy policy sidebar layout */
.pp-layout{
    display: flex;
    gap: 4.8rem;
}
.pp-sidebar{
    width: 30rem;
    flex-shrink: 0;
}
.pp-sidebar-nav{
    position: sticky;
    top: 13.6rem;
    max-height: calc(100vh - 15rem);
    overflow-y: auto;
}
.pp-sidebar-nav::-webkit-scrollbar{
    width: 3px;
}
.pp-sidebar-nav::-webkit-scrollbar-thumb{
    background: #D1E1FF;
    border-radius: 2px;
}
.pp-sidebar-nav ul{
    padding: 0;
    margin: 0;
}
.pp-sidebar-nav li{
    list-style: none;
}
.pp-sidebar-nav a{
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    overflow: hidden;
    font-size: 1.3rem;
    line-height: 1.8rem;
    color: var(--body-color);
    padding: 0.8rem 1.6rem;
    border-left: 2px solid var(--border-color);
    text-decoration: none;
    opacity: 0.7;
}
.pp-sidebar-nav a:hover{
    opacity: 1;
    color: var(--blue-color);
}
.pp-sidebar-nav a.active{
    border-left-color: var(--blue-color);
    color: var(--blue-color);
    -webkit-text-stroke: 0.4px currentColor;
    text-shadow: 0 0 0.4px currentColor;
    opacity: 1;
}
.pp-layout .blog-contnet{
    flex: 1;
    min-width: 0;
}
@media(max-width:991.98px){
    .pp-sidebar{ display: none; }
    .pp-layout{ gap: 0; }
}
.contnet-img{
    margin-bottom: 3.2rem;
}
.contnet-img:last-child{
    margin-bottom: 0;
}
.contnet-img img{
    width: 100%;
    height: auto;
}
.contnet a:hover{
    text-decoration: underline;
}
.contnet h1{
    margin-bottom: 3.2rem;
}
.contnet h2{
    margin-bottom: 2.8rem;
}
.contnet h3{
    margin-bottom: 2.4rem;
}
.contnet h4{
    margin-bottom: 2rem;
}
.contnet h5{
    margin-bottom: 1.6rem;
}
.contnet h6{
    margin-bottom: 1.2rem;
}
.contnet h1:last-child,
.contnet h2:last-child,
.contnet h3:last-child,
.contnet h4:last-child,
.contnet h5:last-child,
.contnet h6:last-child{
    margin-bottom: 0;
}
.contnet ul,
.contnet ol{
    margin: 2rem 0;
    padding: 0;
    list-style: none;
}
.contnet ol{
    counter-reset: list-number;
}
.contnet ul:first-child,
.contnet ol:first-child{
    margin-top: 0;
}
.contnet ul:last-child,
.contnet ol:last-child{
    margin-bottom: 0;
}
.contnet li{
    padding-left: 2.6rem;
    margin-bottom: 1.2rem;
    position: relative;
}
.contnet ol li{
    counter-increment: list-number;
}
.contnet ul > li:last-child{
    margin-bottom: 0;
}
.contnet ul > li::after{
    position: absolute;
    content: "";
    height: 0.6rem;
    width: 0.6rem;
    border-radius: 50%;
    left: 0.6rem;
    top: 0.9rem;
    background: var(--list-dot-color-bg);
}
.contnet ol > li:after{
    position: absolute;
    left: 0.6rem;
    top: 0;
    font-weight: bold;
    content: counter(list-number)".";
}
/* Tables inside blog content */
.contnet table{
    width: 100%;
    border-collapse: collapse;
    margin: 2rem 0 3rem;
    font-size: 1.5rem;
    line-height: 2.2rem;
}
.contnet table thead{
    background: var(--body-color);
    color: var(--text-white);
}
.contnet table th{
    padding: 1.2rem 1.6rem;
    text-align: left;
    font-weight: bold;
    font-size: 1.4rem;
    letter-spacing: 0.02em;
}
.contnet table td{
    padding: 1.2rem 1.6rem;
    border-bottom: 1px solid var(--border-color);
}
.contnet table tbody tr:hover{
    background: rgba(25, 107, 255, 0.04);
}
.contnet table tbody tr:nth-child(even){
    background: #D1E1FF;
}
.contnet table tbody tr:nth-child(even):hover{
    background: rgba(25, 107, 255, 0.06);
}
/* Blockquote inside blog content */
.contnet blockquote{
    margin: 2.5rem 0;
    padding: 2rem 2.5rem;
    border-left: 4px solid var(--blue-01);
    background: #D1E1FF;
    font-size: 1.8rem;
    line-height: 2.8rem;
    font-style: italic;
    color: var(--body-color);
}
.contnet blockquote p{
    margin: 0;
}
.contnet blockquote cite,
.contnet blockquote footer{
    display: block;
    margin-top: 1rem;
    font-size: 1.4rem;
    font-style: normal;
    font-weight: bold;
    color: var(--body-color);
}
/* Code blocks inside blog content */
.contnet pre{
    margin: 2rem 0;
    padding: 2rem;
    background: #1e293b;
    color: #e2e8f0;
    border-radius: 0.2rem;
    overflow-x: auto;
    font-size: 1.4rem;
    line-height: 2.2rem;
}
.contnet pre code{
    background: none;
    padding: 0;
    color: inherit;
    font-size: inherit;
}
.contnet code{
    background: #D1E1FF;
    padding: 0.2rem 0.6rem;
    border-radius: 0.2rem;
    font-size: 1.4rem;
    color: #DF4116;
}
/* Horizontal rule */
.contnet hr{
    border: none;
    border-top: 1px solid var(--border-color);
    margin: 3rem 0;
}
/* Mark/highlight */
.contnet mark{
    background: #EEDB41;
    padding: 0.1rem 0.3rem;
    border-radius: 0.2rem;
}
.border-top{
    border-top: 1px solid var(--border-color);
}
.border-bottom{
    border-bottom: 1px solid var(--border-color);
}
.card-list{
    margin: 0 -2rem;
    display: flex;
    flex-wrap: wrap;
}
.card-item{
    width: 25%;
    padding: 0 2rem;
    border-left: 1px solid var(--border-color);
    display: flex;
    flex-direction: column;
    position: relative;
}
.card-item::after{
    position: absolute;
    content: "";
    left: 2rem;
    top: -2.8rem;
    width: 100%;
    height: 1px;
    background: var(--border-color);
}
.card-item:nth-child(4n)::after{
    width: calc(100% - 4rem);
}
.card-item:nth-child(-n+4):after{
    content: none;
}
.card-item:nth-child(4n + 1){
    border-left: 0;
}
.card-item:nth-child(n + 5){
    margin-top: 5.6rem;
}
/* White separator lines for blue background sections */
.bg-gray-01 .card-item{
    border-left-color: #fff;
}
.bg-gray-01 .card-item::after{
    background: #fff;
}
/* Dark blue theme card overrides */
.bg-dark-blue{
    background: var(--blue-dark-color);
}
.bg-dark-blue .card-item{
    border-left-color: rgba(255,255,255,0.2);
}
.bg-dark-blue .card-item::after{
    background: rgba(255,255,255,0.2);
}
.bg-dark-blue .card-item h1,
.bg-dark-blue .card-item h2,
.bg-dark-blue .card-item h3,
.bg-dark-blue .card-item h4,
.bg-dark-blue .card-item h5,
.bg-dark-blue .card-item h6{
    color: #fff;
}
.bg-dark-blue .card-item:hover h1,
.bg-dark-blue .card-item:hover h2,
.bg-dark-blue .card-item:hover h3,
.bg-dark-blue .card-item:hover h4,
.bg-dark-blue .card-item:hover h5,
.bg-dark-blue .card-item:hover h6{
    color: var(--gray-01);
}
.bg-dark-blue .card-info p{
    color: rgba(255,255,255,0.8);
}
.bg-dark-blue .card-footer span{
    color: rgba(255,255,255,0.8);
}
.bg-dark-blue .card-footer span::after{
    background: rgba(255,255,255,0.6);
}
.bg-dark-blue .card-tag{
    color: #93bbff !important;
}
/* ─── Card image filters: CSS ─── */
.card-img.img-grayscale img{ filter: grayscale(100%); }
.card-img.img-grayscale-50 img{ filter: grayscale(50%); }
.card-img.img-sepia img{ filter: sepia(100%); }
.card-img.img-sepia-50 img{ filter: sepia(50%); }
.card-img.img-blur img{ filter: blur(2px); }
.card-img.img-brightness img{ filter: brightness(1.2); }
.card-img.img-dim img{ filter: brightness(0.7); }
.card-img.img-contrast img{ filter: contrast(1.3); }
.card-img.img-saturate img{ filter: saturate(1.5); }
.card-img.img-desaturate img{ filter: saturate(0.3); }
.card-img.img-hue-rotate img{ filter: hue-rotate(90deg); }
.card-img.img-invert img{ filter: invert(1); }
.card-img.img-warm img{ filter: sepia(30%) saturate(1.4) brightness(1.05); }
.card-img.img-cool img{ filter: saturate(0.8) brightness(1.1) hue-rotate(10deg); }
.card-img.img-vintage img{ filter: sepia(40%) contrast(0.85) brightness(0.95); }
.card-img.img-dramatic img{ filter: contrast(1.4) brightness(0.9) saturate(1.2); }
/* ─── Card image filters: Overlays ─── */
.card-img[class*="img-ovl"]{ position: relative; }
.card-img[class*="img-ovl"]::after{
    content: ''; position: absolute; inset: 0; pointer-events: none; z-index: 1;
}
.card-img.img-ovl-noise::after{
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.75' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.25'/%3E%3C/svg%3E");
    background-size: 200px 200px;
}
.card-img.img-ovl-grain::after{
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1.2' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.35'/%3E%3C/svg%3E");
    background-size: 200px 200px;
}
.card-img.img-ovl-dots::after{
    background-image: radial-gradient(circle, rgba(0,0,0,0.15) 1px, transparent 1px);
    background-size: 4px 4px;
}
.card-img.img-ovl-lines::after{
    background-image: repeating-linear-gradient(45deg, rgba(0,0,0,0.06), rgba(0,0,0,0.06) 1px, transparent 1px, transparent 4px);
}
.card-img.img-ovl-dark::after{ background: rgba(0,0,0,0.3); }
.card-img.img-ovl-dark-heavy::after{ background: rgba(0,0,0,0.55); }
.card-img.img-ovl-blue::after{ background: rgba(0,59,166,0.25); }
.card-img.img-ovl-warm::after{ background: rgba(180,100,30,0.2); }
.card-img.img-ovl-cool::after{ background: rgba(30,60,180,0.15); }
.card-img.img-ovl-gradient::after{
    background: linear-gradient(to top, rgba(0,0,0,0.5) 0%, transparent 60%);
}
.card-img.img-ovl-gradient-blue::after{
    background: linear-gradient(to top, rgba(0,18,51,0.6) 0%, transparent 60%);
}
.card-img.img-ovl-vignette::after{
    background: radial-gradient(ellipse at center, transparent 50%, rgba(0,0,0,0.45) 100%);
}
/* ─── Card image filters: Hero (grain + gradient) ─── */
.card-img[class*="img-hero"]{ position: relative; overflow: hidden; }
.card-img[class*="img-hero"]::before{
    content: ""; position: absolute; inset: 0; z-index: 1;
    mix-blend-mode: multiply; pointer-events: none;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 512 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1.1' numOctaves='4' stitchTiles='stitch'/%3E%3CfeComponentTransfer%3E%3CfeFuncR type='discrete' tableValues='0 1'/%3E%3CfeFuncG type='discrete' tableValues='0 1'/%3E%3CfeFuncB type='discrete' tableValues='0 1'/%3E%3C/feComponentTransfer%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
    background-size: 256px 256px;
}
.card-img[class*="img-hero"]::after{
    content: ""; position: absolute; inset: 0; pointer-events: none; z-index: 1;
}
.card-img.img-hero-dark::before{ opacity: 0.38; }
.card-img.img-hero-dark::after{
    background: linear-gradient(135deg, rgba(0,18,51,0.72) 0%, rgba(0,18,51,0.55) 50%, rgba(0,18,51,0.40) 100%);
}
.card-img.img-hero-medium::before{ opacity: 0.22; }
.card-img.img-hero-medium::after{
    background: linear-gradient(135deg, rgba(0,18,51,0.40) 0%, rgba(0,18,51,0.28) 50%, rgba(0,18,51,0.18) 100%);
}
.card-img.img-hero-light::before{ opacity: 0.12; }
.card-img.img-hero-light::after{
    background: linear-gradient(135deg, rgba(0,18,51,0.18) 0%, rgba(0,18,51,0.10) 50%, rgba(0,18,51,0.05) 100%);
}
.card-img.img-hero-blue::before{ opacity: 0.30; }
.card-img.img-hero-blue::after{
    background: linear-gradient(135deg, rgba(0,59,166,0.55) 0%, rgba(0,59,166,0.35) 50%, rgba(0,59,166,0.20) 100%);
}
.card-img.img-hero-bright::before{ opacity: 0.08; }
.card-img.img-hero-bright::after{
    background: linear-gradient(135deg, rgba(255,255,255,0.35) 0%, rgba(255,255,255,0.20) 50%, rgba(255,255,255,0.10) 100%);
}
.card-img.img-hero-bright img{ filter: brightness(1.15); }
.card-img.img-hero-bright-warm::before{ opacity: 0.08; }
.card-img.img-hero-bright-warm::after{
    background: linear-gradient(135deg, rgba(255,220,170,0.35) 0%, rgba(255,220,170,0.18) 50%, rgba(255,255,255,0.08) 100%);
}
.card-img.img-hero-bright-warm img{ filter: brightness(1.1) saturate(1.15); }
.card-img.img-hero-bright-cool::before{ opacity: 0.08; }
.card-img.img-hero-bright-cool::after{
    background: linear-gradient(135deg, rgba(200,220,255,0.35) 0%, rgba(200,220,255,0.18) 50%, rgba(255,255,255,0.08) 100%);
}
.card-img.img-hero-bright-cool img{ filter: brightness(1.1) saturate(0.9); }
.card-img {
    width: 100%;
}
.card-img img{
    width: 100%;
    height: 16.3rem;
    object-fit: cover;
}
.card-info{
    height: calc(100% - 16.3rem);
    display: flex;
    flex-direction: column;
    width: 100%;
}
.card-item h1, 
.card-item h2, 
.card-item h3, 
.card-item h4, 
.card-item h5, 
.card-item h6 {
    font-size: 2rem;
    line-height: 2.7rem;
    margin: 0 0 1.6rem;
    height: 5.4rem;
    max-height: 5.4rem;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
}
.card-item:hover h1, 
.card-item:hover h2, 
.card-item:hover h3, 
.card-item:hover h4, 
.card-item:hover h5, 
.card-item:hover h6{
    color: var(--blue-color);
}
.card-info p{
    color: var(--black-color);
    max-height: 7.2rem;
    overflow: hidden;
    text-overflow: ellipsis;
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;
}
.card-footer{
    margin-top: auto;
}
.card-footer a{
    font-size: 1.4rem;
    color: var(--black-color);
    opacity: 0.8;
    font-weight: bold;
}
.card-footer span{
    margin-left: 2rem;
    position: relative;
    font-size: 1.4rem;
    color: var(--black-color);
    opacity: 0.8;
    font-weight: bold;
}
.card-footer span:first-child{
    margin-left: 0;
}
.card-footer span::after {
    position: absolute;
    content: "";
    left: -1.4rem;
    top: 0;
    bottom: 0;
    margin: auto;
    height: 5px;
    width: 5px;
    background: var(--black-color);
    opacity: 0.8;
    border-radius: 50%;
}
.card-footer span:first-child::after{
    content: none;
}
.card-link{
    outline: none;
    margin-left: auto;
}
.card-footer .card-link::after{
    content: none;
}
.card-link img{
    width: 2.8rem;
    opacity: 1;
}
.card-link:hover img{
    opacity: 1;
}
.card-link.flagged img{
    opacity: 1;
    filter: invert(24%) sepia(98%) saturate(2053%) hue-rotate(11deg) brightness(92%) contrast(91%);
}
.card-link.flagged-fill img{
    content: url(../icons/icon-bookmark-fill.svg);
    opacity: 1;
    filter: invert(24%) sepia(98%) saturate(2053%) hue-rotate(11deg) brightness(92%) contrast(91%);
}
.sec-newslatter{
    background: var(--blue-01);
}
.socail-list li{
    margin-left: 1.6rem;
}
.socail-list li:first-child{
    margin-left: 0;
}
.socail-list li a{
    height: 2.6rem;
    width: 2.6rem;
    display: flex;
    align-items: center;
    justify-content: center;
}
.socail-list li a:hover{
    opacity: 0.8;
}
.socail-list li a img{
    max-width: 100%;
    max-height: 100%;
}
.form-group{
    margin-bottom: 2rem;
}
.label{
    display: inline-flex;
    align-items: center;
    margin-bottom: 0.6rem;
    line-height: 1;
}
.input-columns.half{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 2rem;
}
.input-columns.half .form-group{
    -webkit-box-flex: 0;
    -ms-flex: 0 1 50%;
    flex: 0 1 50%;
}
.form-control{
    outline: none;
    margin: 0;
    height: 4.1rem;
    padding: 0 1.5rem;
    font-size: 1.6rem;
    border-radius: 0.2rem;
    width: 100%;
    font-weight: normal;
    color: var(--input-color);
    background: var(--input-bg-color);
    border: 1px solid var(--input-border-color);
    --input-bg-color: #fff;
    --input-color: #001233;
}
.form-control:focus{
    border-color: var(--input-focus-border-color);
}
.form-control-white{
    background: transparent;
    border-color: var(--white-bg) !important;
    color: var(--text-white);
}
.form-control-white:-ms-input-placeholder{
    color: var(--text-white);
}
.form-control-white::placeholder{
    opacity: 1;
    color: var(--text-white);
}
.chk {
    display: block;
    position: relative;
    padding-left: 3rem;
    margin-bottom: 0;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}
.chk input {
    position: absolute;
    opacity: 0;
    cursor: pointer;
    height: 0;
    width: 0;
}
.chk .checkmark {
    position: absolute;
    top: 0;
    left: 0;
    height: 2rem;
    width: 2rem;
    background-color: var(--checkbox-bg);
    border: 1px solid var(--checkbox-border);
}
.chk input:checked ~ .checkmark {
    background-color: var(--checkbox-active-bg);
    border-color: var(--checkbox-active-border);
}
.chk .checkmark:after {
    content: "";
    position: absolute;
    display: none;
}
.chk input:checked ~ .checkmark:after {
    display: block;
}
.chk .checkmark:after {
    left: 0.6rem;
    top: 0.3rem;
    width: 0.6rem;
    height: 1rem;
    border: solid var(--checkbox-active-border);
    border-width: 0 0.2rem 0.2rem 0;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}
.sec-newslatter form,
.newslatter-form .form-control-white{
    -ms-flex: 1;
    -webkit-box-flex: 1;
    flex: 1;
}
.newslatter-form {
    width: 65%;
    margin: auto;
}
.newslatter-form .form-control-white,
.newslatter-form .btn{
    height: 5.1rem;
}
.newslatter-form .form-control-white{
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}
.newslatter-form .btn{
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}
footer{
    background: var(--footer-bg);
}
.footer-block{
    display: -ms-grid;
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    -ms-grid-column: 2.5rem;
    grid-column-gap: 2.5rem;
    -ms-grid-row: 1rem;
    grid-row-gap: 1rem;
}
.footer-logo img{
    max-width: 15rem;
    position: relative;
    top: -3.6rem;
}
.footer-head *{
    line-height: 1;
}
.footer-link li{
    margin-bottom: 0.7rem;
    line-height: 2rem;
}
footer a,
footer p{
    color: var(--footer-text-color);
    font-size: 1.4rem;
    line-height: 2rem;
}
footer a:hover{
    text-decoration: underline !important;
}
.footer-center{
    border-top: 1px solid var(--footer-border-color);
    border-bottom: 1px solid var(--footer-border-color);
}
.footer-center:last-child{
    border-bottom: 0;
}
.footer-brand-list p{
    color: var(--footer-text-color);
    text-transform: uppercase;
    margin: 0;
}
.footer-brand{
    margin-left: 3.2rem;
}
.footer-brand-item {
    margin: 0 0.8rem;
}
.footer-brand-item:first-child{
    margin-left: 0;
}
.footer-brand-item:last-child{
    margin-right: 0;
}
.footer-brand-item img{
    margin: 0.8rem 0;
    max-width: 11rem;
    max-height: 4.5rem;
}
.footer-bottom-link li{
    margin: 0 1.6rem;
}
.footer-bottom-link li:first-child{
    margin-left: 0;
}
.footer-bottom-link li:last-child{
    margin-right: 0;
}
footer p{
    margin: 0;
}
.sec-blog-banner{
    position: relative;
    background: var(--banner-bg);
    background-position: center;
    background-size: cover;
    overflow: hidden;
}
.sec-blog-banner::after{
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: var(--banner-gradient);
}
/* ---- hero stipple grain overlay ---- */
.hero-stipple::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    opacity: 0.38;
    mix-blend-mode: multiply;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 512 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1.1' numOctaves='4' stitchTiles='stitch'/%3E%3CfeComponentTransfer%3E%3CfeFuncR type='discrete' tableValues='0 1'/%3E%3CfeFuncG type='discrete' tableValues='0 1'/%3E%3CfeFuncB type='discrete' tableValues='0 1'/%3E%3C/feComponentTransfer%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
    background-size: 256px 256px;
    pointer-events: none;
}
.banner-text-outer{
    position: relative;
    min-height: 36rem;
    max-width: 50%;
    display: flex;
    justify-content: center;
    flex-direction: column;
    z-index: 3;
}
/* Banner alignment modifiers: add class to .banner-text-outer */
.banner-text-outer.banner-left .banner-text{ text-align: left !important }
.banner-text-outer.banner-left .d-center,
.banner-text-outer.banner-left .d-align{ justify-content: flex-start !important }
.banner-text-outer.banner-center{ max-width: 100% }
.banner-text-outer.banner-center .banner-text{ text-align: center !important }
.banner-text-outer.banner-center .d-center,
.banner-text-outer.banner-center .d-align{ justify-content: center !important }
.banner-text-outer.banner-right{ margin-left: auto }
.banner-text-outer.banner-right .banner-text{ text-align: right !important }
.banner-text-outer.banner-right .d-center,
.banner-text-outer.banner-right .d-align{ justify-content: flex-end !important }
.banner-text h1{
    color: var(--banner-heading-color);
    margin-bottom: 2rem;
    white-space: nowrap;
}
.banner-text h1:last-child{
    margin-bottom: 0;
}
.banner-text p{
    color: var(--banner-text-color);
}
.banner-btn{
    margin-top: 4rem;
}
.banner-btn .btn{
    background: var(--banner-btn-bg);
    color: var(--banner-btn-color);
}
.banner-btn .btn:hover{
    background: var(--banner-btn-hover-bg);
    color: var(--banner-btn-hover-color);
}

/* ---- Landing Hero Enhancement ---- */
.hero-landing::after {
    background: var(--banner-gradient);
    mix-blend-mode: normal;
}
.hero-subtitle {
    max-width: 68rem;
}
.hero-landing .banner-btn {
    display: flex;
    gap: 1.6rem;
}
@media (max-width: 575px) {
    .hero-landing .banner-btn {
        flex-direction: column;
        align-items: flex-start;
    }
    .hero-landing .breadcrumb ul {
        flex-wrap: wrap;
    }
}

.pagination ul{
    justify-content: center;
}
.pagination li{
    margin: 0 0.5rem;
    color: var(--pagination-color);
}
.pagination a{
    height: 3.6rem;
    width: 3.6rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 0.2rem;
    background: var(--pagination-bg);
    border: 1px solid var(--pagination-border);
    color: var(--pagination-color);
    font-weight: bold;
}
.pagination li.active a,
.pagination li:hover a{
    background: var(--pagination-bg-hover);
    border-color: var(--pagination-border-hover);
    color: var(--pagination-color-hover);
}
.pagination span{
    height: 1rem;
    width: 1rem;
    border: 2px solid var(--pagination-border);
    border-top: 0;
    border-right: 0;
    -webkit-transform: rotate(45deg);
    -moz-transform: rotate(45deg);
    transform: rotate(45deg);
    margin-left: 0.6rem;
}
.pagination li:last-child span {
    -webkit-transform: rotate(-135deg);
    -moz-transform: rotate(-135deg);
    transform: rotate(-135deg);
    margin-left: 0;
    margin-right: 0.6rem;
}
.pagination li:hover span{
    border-color: var(--pagination-color-hover);
}
.pagination li.disabled a{
    opacity: 0.35;
    pointer-events: none;
    cursor: default;
}
.pagination li.disabled:hover a{
    background: var(--pagination-bg);
    border-color: var(--pagination-border);
    color: var(--pagination-color);
}
.pagination li.ellipsis{
    display: flex;
    align-items: center;
    justify-content: center;
    width: 3.6rem;
    height: 3.6rem;
    font-weight: bold;
    letter-spacing: 1px;
}
/* Blog listing — title & filter bar */
.sec-blog-title .title{
    border-bottom: 1px solid var(--border-color);
}
.blog-filter-bar{
    display: flex;
    align-items: center;
    gap: 1.2rem;
    flex-wrap: wrap;
}
.blog-filter-bar .filter-pills{
    display: flex;
    gap: 0.8rem;
    flex-wrap: wrap;
    flex: 1;
}
.filter-pill{
    font-size: 1.3rem;
    font-weight: 700;
    line-height: 1;
    height: 4rem;
    display: inline-flex;
    align-items: center;
    padding: 0 1.6rem;
    border-radius: 0.2rem;
    border: 1px solid var(--border-color);
    background: #fff;
    color: var(--body-color);
    cursor: pointer;
    transition: background 0.15s, color 0.15s, border-color 0.15s;
    text-decoration: none;
}
.filter-pill:hover{
    border-color: var(--blue-color);
    color: var(--blue-color);
}
.filter-pill.active{
    background: var(--blue-color);
    border-color: var(--blue-color);
    color: #fff;
}
.blog-search{
    position: relative;
    width: 26rem;
    flex-shrink: 0;
}
.blog-search input{
    width: 100%;
    height: 4rem;
    padding: 0 4rem 0 1.2rem;
    border: 1px solid var(--border-color);
    border-radius: 0.2rem;
    font-size: 1.6rem;
    color: var(--body-color);
    background: #fff;
    outline: none;
}
.blog-search input:focus{
    border-color: var(--blue-color);
    box-shadow: 0 0 0 1px var(--blue-color);
}
.blog-search button{
    position: absolute;
    right: 0;
    top: 0;
    height: 3.6rem;
    width: 3.6rem;
    display: flex;
    align-items: center;
    justify-content: center;
    background: none;
    border: none;
    cursor: pointer;
}
.blog-search svg{
    width: 1.6rem;
    height: 1.6rem;
    stroke: var(--body-color);
    opacity: 0.6;
}
.blog-results-info{
    font-size: 1.4rem;
    color: var(--body-color);
    opacity: 0.7;
}
@media(max-width:767.98px){
    .blog-filter-bar{
        flex-direction: column;
        align-items: stretch;
    }
    .blog-search{
        width: 100%;
    }
}
/* ---- Card image hero filter — 3 rows, dark → bright → brightest ---- */
.sec-blog .card-item:nth-child(-n+12) .card-img{
    position: relative;
    overflow: hidden;
}
/* Shared grain overlay for all 3 rows */
.sec-blog .card-item:nth-child(-n+12) .card-img::before{
    content: "";
    position: absolute;
    inset: 0;
    z-index: 1;
    opacity: 0.38;
    mix-blend-mode: multiply;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 512 512' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='1.1' numOctaves='4' stitchTiles='stitch'/%3E%3CfeComponentTransfer%3E%3CfeFuncR type='discrete' tableValues='0 1'/%3E%3CfeFuncG type='discrete' tableValues='0 1'/%3E%3CfeFuncB type='discrete' tableValues='0 1'/%3E%3C/feComponentTransfer%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
    background-size: 256px 256px;
    pointer-events: none;
}
/* Shared gradient overlay for all 3 rows */
.sec-blog .card-item:nth-child(-n+12) .card-img::after{
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
}
/* Row 1 (cards 1-4): dark — same as hero */
.sec-blog .card-item:nth-child(-n+4) .card-img::after{
    background: linear-gradient(135deg, rgba(0,18,51,0.72) 0%, rgba(0,18,51,0.55) 50%, rgba(0,18,51,0.40) 100%);
}
.sec-blog .card-item:nth-child(-n+4) .card-img::before{
    opacity: 0.38;
}
/* Row 2 (cards 5-8): bright — lighter overlay */
.sec-blog .card-item:nth-child(n+5):nth-child(-n+8) .card-img::after{
    background: linear-gradient(135deg, rgba(0,18,51,0.40) 0%, rgba(0,18,51,0.28) 50%, rgba(0,18,51,0.18) 100%);
}
.sec-blog .card-item:nth-child(n+5):nth-child(-n+8) .card-img::before{
    opacity: 0.22;
}
/* Row 3 (cards 9-12): brightest — very light overlay */
.sec-blog .card-item:nth-child(n+9):nth-child(-n+12) .card-img::after{
    background: linear-gradient(135deg, rgba(0,18,51,0.18) 0%, rgba(0,18,51,0.10) 50%, rgba(0,18,51,0.05) 100%);
}
.sec-blog .card-item:nth-child(n+9):nth-child(-n+12) .card-img::before{
    opacity: 0.12;
}
.modal-outer{
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0,0,0,0.3);
    z-index: 9999;
    overflow: hidden;
    overflow-y: auto;
    padding: 1rem;
    display: none;
}
.modal-outer.show{
    display: block;
}
.modal-wrapper{
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    min-height: 100%;
    -webkit-box-flex: 1;
    -ms-flex: 1 1 auto;
    flex: 1 1 auto;
    width: 100%;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    align-items: center;
}
.modal{
    position: relative;
    background: var(--white-bg);
    width: 100%;
    max-width: 95rem;
    margin: 2rem 1.5rem;
}
.modal-sm{
  max-width: 45rem !important;
}
.modal-block{
    display: flex;
    flex-wrap: wrap;
}
.modal-left{
    background: #fafafa;
    border-right: 1px solid var(--border-color);
    padding: 2rem;
    width: 33.33%;
}
.modal-right{
    width: 66.66%;
    position: relative;
}
.modal-head{
    padding: 2rem;
    border-bottom: 1px solid var(--border-color);
}
.modal-body{
    padding: 3.2rem 2rem;
}
.modal-sm .modal-body{
  padding: 2.4rem;
}
.modal-btn{
    display: flex;
    align-items: center;
    justify-content: flex-end;
    gap: 1.5rem;
    margin-top: 2rem;
}
.modal-close-cross{
    position: absolute;
    top: 2rem;
    right: 1.5rem;
    height: 3.2rem;
    width: 3.2rem;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    z-index: 2;
}
.modal-close-cross::after,
.modal-close-cross::before{
    position: absolute;
    content: "";
    height: 2rem;
    width: 0.2rem;
    background: var(--black-color);
    transform: rotate(45deg);
    opacity: 0.7;
}
.modal-close-cross::after{
    transform: rotate(-45deg);
}
.modal-message p {
  font-size: 2rem;
  font-weight: bold;
  margin-top: -3px;
}
.message-success{
  color: var(--green);
}
.message-error{
  color: var(--red);
}
.grid{
    display: grid;
    grid-gap: 3.2rem;
    grid-template-columns: repeat(3, 1fr);
}
.grid-4{
  grid-gap: 2.4rem;
  grid-template-columns: repeat(4, 1fr);
}
.grid-icon-80{
  height: 8rem;
  width: 8rem;
  margin: auto;
}
.block-grid{
    grid-column-gap: 10.4rem;
    grid-row-gap: 10.4rem;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
}
.block-grid-item{
  display: flex;
  flex-wrap: wrap;
  position: relative;
}
.block-grid-item::after{
  position: absolute;
  content: "";
  height: 1px;
  width: 100%;
  background: var(--border-color);
  top: -5.2rem;
  left: 0;
}
.block-grid-item::before{
  position: absolute;
  content: "";
  height: 100%;
  width: 1px;
  background: var(--border-color);
  top: 0;
  left: -5.2rem;
}
.block-grid-item:nth-child(-n + 2){
  padding-top: 0;
}
.block-grid-item:nth-child(-n + 2)::after{
  content: none;
}
.block-grid-item:nth-child(2n + 1)::before{
  content: none;
}
.block-grid-icon{
  width: 6.2rem;
  margin-right: 3.2rem;
}
.block-grid-icon img{
  width: 100%;
}
.tab-outer{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.tab-list{
  width: 47.2rem;
  margin-right: 3.4rem;
  margin-bottom: 4rem;
}
.tab-item-list > li{
  background: var(--tab-bg-color);
  border-bottom: 1px solid var(--tab-border-color);
  position: relative;
}
.tab-item-list > li.active{
  background: var(--tab-bg-active-color);
  margin-left: -1.2rem;
  width: calc(100% + 4.6rem);
  -webkit-box-shadow: 0px 0px 5px rgba(0,0,0,.3);
  box-shadow: 0px 0px 5px rgba(0,0,0,.3);
}
.tab-item-list > li.active:after {
  content: "";
  position: absolute;
  z-index: 50;
  top: 50%;
  right: -30px;
  width: 0;
  height: 100%;
  border-style: solid;
  border-width: 25px 0 25px 30px;
  border-color: transparent transparent transparent var(--tab-bg-active-color);
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
.tab-link{
  display: block;
  padding: 1.3rem 1.5rem;
  color: var(--tab-text-color);
}
.tab-item-list > li.active .tab-link,
.tab-item-list > li:hover .tab-link{
  color: var(--tab-text-active-color);
  font-weight: bold;
}
.tab-body {
  background: var(--tab-body-bg-color);
  border-radius: 2px;
  display: flex;
}
.tab-info{
  width: 100%;
  padding: 6rem 8rem;
  display: none;
  flex-direction: column;
}
.tab-info.active{
  display: flex;
}
.tab-info-top{
  margin-bottom: 2.4rem;
}
.tab-info-top:last-child{
  margin-bottom: 0;
}
.tab-info-top *{
  color: var(--tab-body-text-color);
}
.tab-info-top h1,
.tab-info-top h2,
.tab-info-top h3,
.tab-info-top h4,
.tab-info-top h5,
.tab-info-top h6{
  margin-bottom: 1.4rem;
}
.tab-info-top ul{
  margin: 1.4rem 0 2rem;
}
.tab-info-top ul:first-child{
  margin-top: 0;
}
.tab-info-top ul:last-child{
  margin-bottom: 0;
}
.tab-info-top li{
  padding-left: 1.8rem;
  margin-bottom: 1rem;
  position: relative;
}
.tab-info-top li:last-child{
  margin-bottom: 0;
}
.tab-info-top li::after{
  position: absolute;
  content: "";
  left: 0;
  top: 0.8rem;
  width:0.7rem;
  height: 0.7rem;
  background: var(--tab-body-text-color);
  border-radius: 50%;
}
.tab-info-top a{
  text-decoration: underline !important;
}
.tab-btn{
  margin-top: auto;
}
.tab-btn .btn{
  color: var(--tab-button-text-color);
  background: var(--tab-button-bg);
  border: 1px solid var(--tab-button-border-color);
}
.tab-btn .btn:hover{
  color: var(--tab-button-hover-text-color);
  background: var(--tab-button-hover-bg);
  border: 1px solid var(--tab-button-hover-border-color);
}
.tab-mobile-content{
  display: none;
}
.tab-v1-list{
  width: 30rem;
  padding-right: 3.2rem;
}
.tab-v1-list li:first-child {
  border-top: 1px solid var(--tab-v1-border);
}
.tab-v1-list a{
  background: var(--tab-v1-bg);
  border-bottom: 1px solid var(--tab-v1-border);
  border-left: 3px solid transparent;
  border-right: 1px solid var( --tab-v1-border);
  display: flex;
  align-items: center;
  padding: 1.6rem 2.1rem 1.6rem 3.2rem;
  position: relative;
  color: var(--tab-v1-color);
}
.tab-v1-list li.active a{
  border-bottom: 1px solid var(--tab-v1-border);
  border-left-color: var(--tab-v1-active-border);
  border-right-width: 0;
  color: var(--tab-v1-active-color);
  font-weight: bold;
}
.tab-v1-list a::after {
  content: "";
  position: absolute;
  background: url(../icons/icon-down.png);
  width: 1.6rem;
  height: 1.6rem;
  right: 0.8rem;
  transform: rotate(-90deg);
  -webkit-transition: transform .1s;
  -moz-transition: transform .1s;
  transition: transform .1s;
}
.tab-v1-list li.active a::after{
  content: none;
}
.tab-v1-list li:hover a::after{
  -ms-transform: rotate(-90deg) translateY(4px);
  -webkit-transform: rotate(-90deg) translateY(4px);
  transform: rotate(-90deg) translateY(4px);
}
.tab-v1-info{
  display: none;
}
.tab-v1-info.active{
  display: flex;
}
.box-list {
  display: grid;
  grid-gap: 32px;
  grid-template-columns: repeat(3, 1fr);
  width: 100%;
}
.box-item{
  border: 1px solid var(--tab-v1-border);
  padding: 3.2rem;
  color: var(--body-color);
}
.box-item:hover{
  -webkit-box-shadow: 0 2px 8px #D9D9D9;
  box-shadow: 0 2px 8px #D9D9D9;
}
.box-item-img {
  width: 4.8rem;
  height: 4.8rem;
  margin-bottom: 1.6rem;
}
.block-outer{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
.block-text{
  position: relative;
  z-index: 1;
}
.block-text-66{
  width: 66.66%
}
.block-image-outer .block-text-66{
  width: 58%;
}
.block-text .h2{
  margin-bottom: 2.4rem;
}
.block-text p{
  margin-bottom: 2.4rem;
}
.block-text li{
  margin-bottom: 1.2rem;
  position: relative;
  padding-left: 2.4rem;
}
.block-text li:last-child{
  margin-bottom: 0;
}
.block-text li::before {
  position: absolute;
  content: "";
  width: 0.6rem;
  height: 0.6rem;
  border-radius: 50%;
  background: var(--body-color);
  top: 0.9rem;
  left: 0;
}
.block-img{
  width: 42%;
  padding-left: 3rem;
  text-align: center;
}
.block-img img{
  height: auto;
  max-width: 100%;
}
.sec-block-banner{
  background: var(--block-banner-bg);
  background-size: cover;
  background-position: center;
  position: relative;
}
.sec-block-banner:after{
  position: absolute;
  content: "";
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: var(--block-banner-overlay);
}
.block-banner-text{
  position: relative;
  z-index: 1;
  width: 50%;
}
.block-banner-text .h2{
  margin-bottom: 1.2rem;
}
.block-banner-text p{
  font-size: 2rem;
  margin-bottom: 3.2rem;
}
.grid-box-item{
  background: #fff;
  border: 1px solid #ccc;
  padding: 3.2rem;
  display: flex;
  flex-direction: column;
  color: var(--body-color);
}
a.grid-box-item:hover{
  -webkit-box-shadow: 0 2px 8px #D9D9D9;
  box-shadow: 0 2px 8px #D9D9D9;
}
.grid-box-top{
  margin-bottom: 3.2rem;
}
.grid-box-top .h5{
  margin-bottom: 1.2rem;
}
.gird-box-link{
  margin-top: auto;
}
.grid-box-img{
  width: 5.6rem;
  height: 5.6rem;
  margin-bottom: 1.2rem;
}
.document-block{
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
}
.document-img{
  width: 30rem;
  border: 1px solid var(--border-color);
}
.document-img img{
  width: 100%;
  height: auto;
}
.document-info{
  width: calc(100% - 30rem);
  padding-left: 4rem;
}
.document-info p{
  max-width: 80%;
}
.attr-list{
  max-width: 40%;
}
.attr-item{
  padding: 1.2rem 0;
  border-bottom: 1px solid var(--border-color);
}
.attr-item label {
  font-weight: bold;
  width: 11rem;
}
@media(min-width:1200px) and (max-width:1339.98px){
    body{
        font-size: 1.5rem;
    }
    main {
        margin-top: 11.75rem;
    }
    h1, .h1, .h1 * {
        font-size: 4.3rem;
        line-height: 5.4rem;
    }
    h2,.h2,.h2 *{
        font-size: 3.3rem;
        line-height: 4.6rem
    }
    h3,.h3,.h3 *{
        font-size: 3rem;
        line-height: 4.6rem
    }
    h4,.h4,.h4 *{
        font-size: 2.6rem;
        line-height: 3.4rem
    }
    h5,.h5,.h5 *{
        font-size: 2rem;
        line-height: 3rem
    }
    h6, .h6, .h6 * {
        font-size: 1.8rem;
        line-height: 3.1rem;
    }
    .pb-96 {
      padding-bottom: 8rem;
    }
    .pt-96 {
        padding-top: 8rem;
    }
    .pt-80 {
        padding-top: 6.4rem;
    }
    .mt-64 {
        margin-top: 5.6rem;
    }
    .mb-64 {
        margin-bottom: 5.6rem;
    }
    .pt-64 {
        padding-top: 5.6rem;
    }
    .pb-64 {
        padding-bottom: 5.6rem;
    }
    .mt-56 {
        margin-top: 4.8rem;
    }
    .mb-56 {
        margin-bottom: 4.8rem;
    }
    .btn {
        font-size: 1.4rem;
    }
    .submenu-item {
        width: 28.5rem;
    }
    .submenu-title {
        padding: 1.2rem 2.4rem 0.8rem;
        font-size: 1.8rem;
        line-height: 2.6rem;
    }
    .submenu-list-nav {
        padding: 0 2.4rem;
    }
    .submenu-list-nav li {
        margin-top: 1.1rem;
    }
    .submenu-list-nav li span {
        font-size: 1.5rem;
        line-height: 2.5rem;
    }
    .lang-item {
        font-weight: bold;
        font-size: 1.5rem;
        line-height: 2.5rem;
    }
    .card-img img {
        height: 14.4rem;
    }
    .card-info {
        height: calc(100% - 14.4rem);
    }
    .newslatter-form {
        width: 75%;
    }
    .banner-text-outer {
        min-height: 33rem;
    }
    .banner-text h1 {
        margin-bottom: 1.6rem;
    }
    .banner-btn {
        margin-top: 3.2rem;
    }
    .modal-close-cross {
        top: 1.9rem;
    }
    .grid,
    .grid-4{
      grid-gap: 3.2rem 2rem;
    }
    .block-grid {
      grid-column-gap: 9.6rem;
      grid-row-gap: 9.6rem;
    }  
    .block-grid-item::before {
     left: -4.8rem;
    }
    .block-grid-item::after {
      top: -4.8rem;
    }
  .tab-list {
    width: 42.2rem;
  }
  .tab-info {
    padding: 5rem 6rem;
  }
  .tab-v1-list {
    width: 28rem;
    padding-right: 2.4rem;
  }
  .box-list {
    grid-gap: 2.4rem;
  }
  .block-img {
    padding-left: 1rem;
  }
  .block-text li {
    margin-bottom: 1rem;
    padding-left: 2rem;
  }
  .block-text li::before {
    top: 0.8rem;
  }
  .grid-box-item {
    padding: 2.4rem;
  }
  .attr-list {
    max-width: 45%;
  }
  .document-info p{
    max-width: 80%;
  }
}
@media(min-width:992px) and (max-width:1199.98px){
    body{
        font-size: 1.5rem;
    }
    h1, .h1, .h1 * {
        font-size: 4.1rem;
        line-height: 5.2rem;
    }
    h2,.h2,.h2 *{
        font-size: 3.1rem;
        line-height: 4.4rem
    }
    h3,.h3,.h3 *{
        font-size: 2.8rem;
        line-height: 4.4rem
    }
    h4,.h4,.h4 *{
        font-size: 2.4rem;
        line-height: 3.2rem
    }
    h5,.h5,.h5 *{
        font-size: 2rem;
        line-height: 2.8rem
    }
    h6, .h6, .h6 * {
        font-size: 1.7rem;
        line-height: 3rem;
    }
    .pb-96 {
      padding-bottom: 7.2rem;
    }
    .pt-96 {
      padding-top: 7.2rem;
    }
    .pt-80 {
        padding-top: 6.4rem;
    }
    .pb-64 {
        padding-bottom: 5.6rem;
    }
    .pt-64 {
        padding-top: 5.6rem;
    }
    .mt-64 {
        margin-top: 5.6rem;
    }
    .mb-64 {
        margin-bottom: 5.6rem;
    }
    .mt-56 {
        margin-top: 4.8rem;
    }
    .mb-56 {
        margin-bottom: 4.8rem;
    }
    .mb-48 {
        margin-bottom: 4rem;
    }
    .mt-48 {
        margin-top: 4rem;
    }
    .pb-48 {
        padding-bottom: 4rem;
    }
    .pt-48 {
        padding-top: 4rem;
    }
    .btn {
        font-size: 1.4rem;
    }
    .logo img {
        max-width: 9.7rem;
        max-height: 3.1rem;
    }
    .menu > ul > li > a {
        padding: 0 0.6rem;
        font-size: 1.4rem;
    }
    .menu > ul > li.hasChild > a::after {
        height: 1.4rem;
        width: 1.4rem;
    }
    .menu-btn .btn{
        font-size: 1.3rem;
        padding: 0 1.5rem;
        height: 3.5rem;
    }
    .menu-btn {
        margin-left: 1.5rem;
    }
    .menu-language {
        margin-left: 1rem;
    }
    .lang-item {
        font-size: 1.5rem;
        line-height: 2.5rem;
    }
    .submenu-item {
        padding: 0.4rem 0;
        width: 232.5px;
    }
    .submenu-title {
        padding: 1.2rem 1.5rem 0.8rem;
        font-size: 1.7rem;
        line-height: 2.5rem;
    }
    .submenu-list-nav {
        padding: 0 1.5rem;
    }
    .submenu-list-nav li {
        margin-top: 1rem;
    }
    .submenu-list-nav li span {
        font-size: 1.4rem;
        line-height: 2.4rem;
    }
    main {
        margin-top: 11.75rem;
    }
    .footer-block {
        -ms-grid-column: 1.5rem;
        grid-column-gap: 1.5rem;
    }
    footer a, footer p {
        font-size: 1.3rem;
        line-height: 2rem;
    }
    .footer-center-logo {
        margin-left: 2.2rem;
    }
    .footer-brand-item img {
        max-width: 9rem;
        max-height: 2.5rem;
    }
    .footer-bottom-link li {
        margin: 0 1.2rem;
    }
    .newslatter-form {
        width: 85%;
    }
    .card-list {
        margin: 0 -1.5rem;
    }
    .card-item {
        padding: 0 1.5rem;
    }
    .card-img img {
        height: 11.8rem;
    }
    .card-info {
        height: calc(100% - 11.8rem);
    }
    .card-item h1, 
    .card-item h2, 
    .card-item h3, 
    .card-item h4, 
    .card-item h5, 
    .card-item h6 {
        font-size: 1.8rem;
        line-height: 2.5rem;
        height: 5rem;
        max-height: 5rem;
    }
    .banner-text-outer {
        min-height: 31rem;
        max-width: 58%;
    }
    .banner-text h1 {
        margin-bottom: 1.6rem;
    }
    .banner-btn {
        margin-top: 3.2rem;
    }
    .card-item::after {
        left: 1.5rem;
    }
    .card-item:nth-child(4n)::after {
        width: calc(100% - 3rem);
    }
    .modal-close-cross {
        top: 1.8rem;
    }
    .grid,
    .grid-4{
      grid-gap: 3.2rem 1.6rem;
    }
    .block-grid {
      grid-column-gap: 8.8rem;
      grid-row-gap: 8.8rem;
    }  
    .block-grid-item::before {
     left: -4.4rem;
    }
    .block-grid-item::after {
      top: -4.4rem;
    }
    .tab-list {
      width: 33.2rem;
      margin-right: 2.4rem;
    }
    .tab-info {
      padding: 5rem 6rem;
    }
    .tab-item-list > li.active {
      width: calc(100% + 3.6rem);
    }
    .tab-item-list > li.active:after {
      margin-top: 1px;
    }
    .tab-v1-list {
      width: 25rem;
      padding-right: 1.6rem;
    }
    .tab-v1-list a {
      padding: 1.6rem 2.1rem 1.6rem 2rem;
    }
    .tab-v1-body {
      width: calc(100% - 25rem);
    }
    .box-list {
      grid-gap: 1.6rem;
    }
    .box-item {
      padding: 2rem;
    }
    .block-banner-text p {
      font-size: 1.8rem;
      margin-bottom: 3rem;
    }
    .block-img {
      padding-left: 1rem;
    }
    .block-text li {
      margin-bottom: 1rem;
      padding-left: 2rem;
    }
    .block-text li::before {
      top: 0.8rem;
    }
    .grid-box-item {
      padding: 2.4rem;
    }
    .grid-box-top {
      margin-bottom: 2.4rem;
    }
    .document-img {
      width: 27rem;
    }
    .document-info {
      width: calc(100% - 27rem);
    }
    .document-info p{
      max-width: 100%;
    }
    .attr-list {
      max-width: 55%;
    }
}
@media(min-width:768px) and (max-width:991.98px){
    main {
        margin-top: 11.15rem;
    }
    h1, .h1, .h1 * {
        font-size: 3.8rem;
        line-height: 4.8rem;
    }
    h2,.h2,.h2 *{
        font-size: 3rem;
        line-height: 3.5rem
    }
    h3,.h3,.h3 *{
        font-size: 2.6rem;
        line-height: 3.6rem
    }
    h4,.h4,.h4 *{
        font-size: 2.3rem;
        line-height: 3.3rem
    }
    h5,.h5,.h5 *{
        font-size: 2rem;
        line-height: 2.6rem
    }
    h6, .h6, .h6 * {
        font-size: 1.7rem;
        line-height: 3rem;
    }
    p {
        margin-bottom: 1.6rem;
    }
    .pb-96 {
      padding-bottom: 6.4rem;
    }
    .pt-96 {
      padding-top: 6.4rem;
    }
    .pt-80 {
        padding-top: 5.6rem;
    }
    .pb-64 {
        padding-bottom: 4.8rem;
    }
    .pt-64 {
        padding-top: 4.8rem;
    }
    .mt-64 {
        margin-top: 4.8rem;
    }
    .mb-64 {
        margin-bottom: 4.8rem;
    }
    .mt-56 {
        margin-top: 4rem;
    }
    .mb-56 {
        margin-bottom: 4rem;
    }
    .pb-48 {
        padding-bottom: 3.2rem;
    }
    .pt-48 {
        padding-top: 3.2rem;
    }
    .mt-48 {
        margin-top: 3.2rem;
    }
    .mb-48 {
        margin-bottom: 3.2rem;
    }
    .mb-40 {
      margin-bottom: 3.2rem;
    }
    .mt-32 {
        margin-top: 2.4rem;
    }
    .mb-24 {
        margin-bottom: 1.6rem;
    }
    .mt-24 {
        margin-top: 1.6rem;
    }
    main {
        margin-top: 7.3rem;
    }
    .footer-block {
        grid-template-columns: repeat(4, 1fr);
        -ms-grid-column: 1.5rem;
        grid-column-gap: 1.5rem;
        -ms-grid-row: 2.4rem;
        grid-row-gap: 2.4rem;
    }
    .footer-item:first-child {
        grid-column: 1 / -1;
    }
    footer a, footer p {
        font-size: 1.3rem;
        line-height: 2rem;
    }
    .footer-brand-list {
        align-items: flex-start;
    }
    .footer-brand-list p{
        margin-top: 1.2rem;
    }
    .footer-brand {
        margin-left: 2.2rem;
        justify-content: flex-start;
    }
    .footer-brand-item{
        margin: 0 3.2rem 0 0;
    }
    .footer-brand-item img {
        max-width: 9rem;
        max-height: 3rem;
    }
    .footer-bottom-link li {
        margin: 0 1rem;
    }
    .contnet ul, .contnet ol {
        margin: 1.6rem 0;
    }
    .contnet li {
        margin-bottom: 1rem;
    }
    .contnet-img {
        margin-bottom: 2.4rem;
    }
    .card-item {
        width: 50%;
    }
    .card-item:nth-child(2n + 1){
        border-left: 0;
    }
    .card-item:nth-child(n + 3){
        margin-top: 5.6rem;
    }
    .card-item:after{
        content: "" !important;
    }
    .card-item:nth-child(-n+2):after {
        content: none !important;
    }
    .card-item:nth-child(2n)::after{
        width: calc(100% - 4rem);
    }
    .card-img img {
        height: 18.3rem;
    }
    .card-info {
        height: calc(100% - 18.3rem);
    }
    .newslatter-block .title{
        width: 100%;
    }
    .socail-list{
        width: 100%;
    }
    .newslatter-form {
        width: 100%;
        margin: 2rem 0;
    }
    .newslatter-form .form-control-white, .newslatter-form .btn {
        height: 4.8rem;
    }
    .banner-text-outer {
        position: relative;
        min-height: 29rem;
        max-width: 70%;
    }
    .banner-text h1 {
        margin-bottom: 1.6rem;
    }
    .banner-btn {
        margin-top: 2.8rem;
    }
    .modal {
        max-width: 74rem;
    }
    .modal-close-cross {
        top: 1.7rem;
    }
    .grid,
    .grid-4{
      grid-gap: 3.2rem 2rem;
      grid-template-columns: repeat(2,1fr);
    }
  .block-grid-icon {
    width: 5.2rem;
    margin-right: 2rem;
  }
  .block-grid {
    grid-column-gap: 6.4rem;
    grid-row-gap: 6.4rem;
  }  
  .block-grid-item::before {
   left: -3.2rem;
  }
  .block-grid-item::after {
    top: -3.2rem;
  }
  .tab-list {
    width: 100%;
    margin-right: 0;
    margin-bottom: 0;
  }
  .tab-body{
    display: none;
  }
  .tab-item-list > li.active {
    margin-left: 0;
    width: 100%;
    -webkit-box-shadow: none;
    box-shadow: none;
  }
  .tab-item-list > li.active:after{
    content: none;
  }
  .tab-item-list > li > a{
    padding-right: 3rem;
    position: relative;
    display: flex;
    align-items: center;
  }
  .tab-item-list > li > a::after{
    position: absolute;
    right: 1rem;
    content: "";
    background: url(../icons/icon-down.png);
    background-size: cover;
    width: 1.6rem;
    height: 1.6rem;
  }
  .tab-item-list > li.active .tab-mobile-content{
    display: block;
    background: var(--tab-body-bg-color);
    padding: 4rem;
  }
  .tab-item-list > li.active a:after{
    -webkit-transform: rotate(-180deg);
    -moz-transform: rotate(-180deg);
    transform: rotate(-180deg);
  }
  .tab-info {
    padding: 0;
    display: block;
  }
  .tab-v1-list {
    width: 25rem;
    padding-right: 1.2rem;
  }
  .tab-v1-list a {
    padding: 1.6rem 2.1rem 1.6rem 2rem;
  }
  .tab-v1-body {
    width: calc(100% - 25rem);
  }
  .box-list {
    grid-gap: 1.6rem;
    grid-template-columns: repeat(2, 1fr);
  }
  .box-item {
    padding: 2rem;
  }
  .block-text-66 {
    width: 100% !important;
  }
  .block-text .h2 {
    margin-bottom: 2rem;
  }
  .block-text p {
    margin-bottom: 2rem;
  }
  .block-banner-text {
    width: 100%;
  }
  .block-banner-text p {
    font-size: 1.8rem;
    margin-bottom: 3rem;
  }
  .block-img {
    width: 100%;
    padding-left: 0;
    text-align: center;
    margin-top: 3.2rem;
  }
  .block-text li {
    margin-bottom: 1rem;
    padding-left: 2rem;
  }
  .block-text li::before {
    top: 0.8rem;
  }
  .grid-box-item {
    padding: 2.4rem;
  }
  .grid-box-top {
    margin-bottom: 2.4rem;
  }
  .document-img {
    width: 23rem;
  }
  .document-info {
    width: calc(100% - 23rem);
    padding-left: 3rem;
  }
  .document-info p{
    max-width: 100%;
  }
  .attr-list {
    max-width: 100%;
  }
}
@media(max-width:991.98px){
    body{
        font-size: 1.5rem;
    }
    body.openMenu{
        overflow: hidden;
    }
    .logo img {
        max-width: 9.7rem;
        max-height: 3.1rem;
    }
    .language-icon {
        height: 7.2rem;
    }
    .menu {
        position: fixed;
        top: 7.3rem;
        width: 100%;
        right: -100%;
        background: #fff;
        z-index: 1;
        overflow: hidden;
        overflow-y: auto;
        height: calc(100vh - 7.3rem);
        -webkit-transition: all 0.3s;
        -moz-transition: all 0.3s;
        transition: all 0.3s;
    }
    body.openMenu .menu{
        right: 0;
    }
    body:has(.header-top) .menu{
        top: 11.3rem;
        height: calc(100vh - 11.3rem);
    }
    .menu > ul {
        display: block;
    }
    .menu > ul > li {
        border-bottom: 1px solid var(--submenu-border);
    }
    .menu > ul > li > a {
        padding: 1.2rem 1.5rem;
        margin: auto;
        height: initial;
        justify-content: flex-start;
        max-width: 72rem;
    }
    .menu > ul > li > a::before {
        bottom: -1px;
        height: 0.1rem;
    }
    .menu > ul > li.hasChild > a::after {
        position: absolute;
        right: 1.5rem;
        -webkit-transition: all 0.3s;
        -moz-transition: all 0.3s;
        transition: all 0.3s;
        -webkit-transform: rotate(0) !important;
        -moz-transform: rotate(0) !important;
        transform: rotate(0) !important;
    }
    .menu > ul > li.hasChild.open > a::after{
        -webkit-transform: rotate(-180deg) !important;
        -moz-transform: rotate(-180deg) !important;
        transform: rotate(-180deg) !important;
    }
    .submenu {
        position: relative;
        top: 0;
        opacity: 1;
        visibility: visible;
        -webkit-transform: translateY(0);
        -moz-transform: translateY(0);
        transform: translateY(0);
        -webkit-transition: none;
        transition: none;
        display: none;
    }
    .menu > ul > li.hasChild.open .submenu{
        display: block;
    }
    .submenu-list {
        flex-wrap: wrap;
        margin-left: 0 !important;
        margin-top: 0;
        width: 100%;
        -webkit-box-shadow: none;
        box-shadow: none;
    }
    .submenu-item {
        width: 100%;
        border-right: 0;
        border-top: 1px solid var(--submenu-border);
        padding: 0.4rem 0;
    }
    .submenu-title {
        padding: 1.2rem 1.5rem 0.8rem;
        font-size: 1.7rem;
        line-height: 2.5rem;
        max-width: 72rem;
        margin: auto;
    }
    .submenu-list-nav {
        padding: 0 1.5rem;
        padding: 0 1.5rem;
        margin: auto;
        max-width: 72rem;
    }
    .submenu-list-nav li:first-child{
        margin-top: 0.5rem;
    }
    .submenu-list-nav li {
        margin-top: 1rem;
    }
    .submenu-list-nav li span {
        font-size: 1.5rem;
        line-height: 2.5rem;
    }
    .toggleMenu {
        display: flex;
        margin-left: 2.5rem;
    }
    .menu-btn .btn{
        height: 3.5rem;
        font-size: 1.4rem;
    }
}
@media(max-width:767.98px){
    h1, .h1, .h1 * {
        font-size: 3rem;
        line-height: 3.6rem;
    }
    h2,.h2,.h2 *{
        font-size: 2.7rem;
        line-height: 3.5rem
    }
    h3,.h3,.h3 *{
        font-size: 2.4rem;
        line-height: 3rem
    }
    h4,.h4,.h4 *{
        font-size: 2.1rem;
        line-height: 3rem
    }
    h5,.h5,.h5 *{
        font-size: 1.9rem;
        line-height: 2.6rem
    }
    h6,.h6,.h6 *{
        font-size: 1.7rem;
        line-height: 2.2rem
    }
    p {
        margin-bottom: 1.5rem;
    }
    .pb-96 {
      padding-bottom: 5.6rem;
    }
    .pt-96 {
        padding-top: 5.6rem;
    }
    .pt-80 {
        padding-top: 4.8rem;
    }
    .pt-64 {
        padding-top: 4rem;
    }
    .pb-64 {
        padding-bottom: 4rem;
    }
    .pt-64 {
        padding-top: 4rem;
    }
    .mb-64 {
        margin-bottom: 4rem;
    }
    .mb-56 {
        margin-bottom: 3.2rem;
    }
    .mt-56 {
        margin-top: 3.2rem;
    }
    .pb-48 {
        padding-bottom: 3.2rem;
    }
    .pt-48 {
        padding-top: 3.2rem;
    }
    .mt-48 {
        margin-top: 3.2rem;
    }
    .mb-48 {
        margin-bottom: 3.2rem;
    }
    .mb-40 {
      margin-bottom: 3.2rem;
    }
    .mt-32 {
        margin-top: 2.4rem;
    }
    .pb-32 {
        padding-bottom: 2.4rem;
    }
    .pt-32 {
        padding-top: 2.4rem;
    }
    .mb-32 {
        margin-bottom: 2.4rem;
    }
    .mt-24 {
        margin-top: 1.6rem;
    }
    .mb-24 {
        margin-bottom: 1.6rem;
    }
    .d-flex-1 {
        -webkit-box-flex: initial;
        -ms-flex: initial;
        flex: initial;
    }
    .header-top{
        height: 9.4rem;
    }
    .header-top-info{
        display: block;
        width: calc(100% - 2rem);
    }
    .header-top-name {
        width: 7.7rem;
        margin-bottom: 8px;
    }
	.header-top-info p {
        display: inline;
        margin: 0px 1rem 0 0;
    }
    .header-top-link {
        display: inline;
    }
    .header-top-close {
        margin-top: 1rem;
    }
    .menu-btn .btn{
        height: 3.2rem;
        font-size: 1.2rem;
        padding: 0 1.5rem;
    }
    .menu-btn {
        margin-left: 1.4rem;
    }
    .toggleMenu {
        margin-left: 1.5rem;
    }
    body:has(.header-top) .menu{
        top: 16.7rem;
        height: calc(100vh - 16.7rem);
    }
    .menu > ul > li > a,
    .submenu-list-nav,
    .submenu-title{
        max-width: 54rem;
    }
    .language-dropdown {
        right: auto;
        min-width: 16rem;
        left: -4rem;
    }
    .lang-item {
        padding: 0 1.5rem;
        font-size: 1.5rem;
        line-height: 2.5rem;
    }
    main {
        margin-top: 16.7rem;
    }
    .footer-top {
        padding: 4rem 0;
    }
    .footer-block {
        grid-template-columns: repeat(2, 1fr);
        -ms-grid-column: 1.5rem;
        grid-column-gap: 1.5rem;
        -ms-grid-row: 2.4rem;
        grid-row-gap: 2.4rem;
    }
    .footer-item:first-child {
        grid-column: 1 / -1;
    }
    footer a, footer p {
        font-size: 1.3rem;
        line-height: 1.9rem;
    }
    .footer-brand-list p {
        text-align: center;
    }
    .footer-brand {
        margin-left: 0;
    }
    .footer-brand-item {
        margin: 0 0.8rem;
        margin: 2.4rem 0 0;
        width: 33.33%;
        text-align: center;
        padding: 0 0.4rem;
    }
    .footer-brand-item img {
        margin: 0;
        max-width: 10rem;
        max-height: 3.5rem;
    }
    footer p{
        width: 100%;
        text-align: center;
    }
    .footer-bottom-link,
    .footer-bottom-link ul{
        width: 100%;
        justify-content: center;
    }
    .footer-bottom-link li {
        margin: 0.4rem 0.6rem 0;
    }
    .breadcrumb{
        margin-bottom: -0.8rem;
    }
    .breadcrumb li {
        margin: 0 1rem 0.8rem;
    }
    .breadcrumb li::after {
        left: -1.2rem;
    }
    .contnet-img {
        margin-bottom: 2.4rem;
    }
    .contnet h5 {
        margin-bottom: 1.3rem;
    }
    .contnet ul, .contnet ol {
        margin: 1.5rem 0;
    }
    .contnet li {
        margin-bottom: 0.8rem;
    }
    .contnet table{
        font-size: 1.3rem;
        display: block;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
    .contnet table thead,
    .contnet table tbody,
    .contnet table tr{
        display: table;
        width: 100%;
        table-layout: fixed;
    }
    .contnet table th,
    .contnet table td{
        padding: 1rem 1.2rem;
    }
    .card-list {
        margin: 0;
    }
    .card-item {
        width: 100%;
        padding: 0;
        border-top: 1px solid var(--border-color);
        border-left: 0;
        padding-top: 2.4rem;
        margin-top: 2.4rem !important;
    }
    .card-item::after{
        content: none;
    }
    .card-item:first-child{
        border-top: 0;
        padding-top: 0;
        margin-top: 0 !important;
    }
    .card-img img {
        height: 28.6rem;
    }
    .card-info {
        height: calc(100% - 28.6rem);
    }
    .card-item h1, 
    .card-item h2, 
    .card-item h3, 
    .card-item h4, 
    .card-item h5, 
    .card-item h6 {
        font-size: 1.8rem;
        line-height: 2.6rem;
        height: initial;
        max-height: initial;
    }
    .newslatter-block .title{
        width: 100%;
        text-align: center;
    }
    .newslatter-form {
        width: 100%;
        margin: 2rem 0;
    }
    .socail-list {
        width: 100%;
    }
    .socail-list ul{
        justify-content: center;
    }
    .newslatter-form .form-control-white, .newslatter-form .btn {
        height: 4.8rem;
    }
    .banner-text-outer {
        min-height: 30rem;
        max-width: 100%;
    }
    .banner-text h1 {
        margin-bottom: 1.6rem;
    }
    .banner-btn {
        margin-top: 2.4rem;
    }
    .pagination a {
        height: 3.2rem;
        width: 3.2rem;
    }
    .modal-block {
        position: relative;
    }
    .modal-left {
        background: #fafafa;
        border-right: 0;
        padding: 2rem;
        width: 100%;
        border-bottom: 1px solid var(--border-color);
    }
    .modal-right {
        width: 100%;
        position: initial;
    }
    .modal-close-cross {
        top: 1.7rem;
        right: 1rem;
    }
    .input-columns.half {
        gap: 0;
        flex-wrap: wrap;
    }
    .modal-body {
        padding: 2.4rem 2rem;
    }
    .input-columns.half .form-group {
        -webkit-box-flex: 0;
        -ms-flex: 0 0 100%;
        flex: 0 0 100%;
    }
    .grid{
      grid-gap: 2.4rem;
      grid-template-columns: repeat(1, 1fr);
    }
    .grid-4{
      grid-template-columns: repeat(1, 1fr);
    }
    .grid-icon-80 {
      height: 7rem;
      width: 7rem;
    }
    .block-grid {
      grid-column-gap: 0;
      grid-row-gap: 6.4rem;
      grid-template-columns: repeat(1, 1fr);
    }
    .block-grid-item::before{
      content: none;
    }
    .block-grid-item::after {
      top: -3.2rem;
      content: "" !important;
    }
    .block-grid-item:nth-child(-n + 1):after{
      content: none !important;
    }
    .block-grid-icon {
      margin: 0 auto 1.6rem;
    }
    .block-grid-text {
      width: 100%;
      text-align: center;
  }
  .tab-list {
    width: 100%;
    margin-right: 0;
    margin-bottom: 0;
  }
  .tab-body{
    display: none;
  }
  .tab-item-list > li.active {
    margin-left: 0;
    width: 100%;
    -webkit-box-shadow: none;
    box-shadow: none;
  }
  .tab-item-list > li.active:after{
    content: none;
  }
  .tab-item-list > li > a{
    padding-right: 3rem;
    position: relative;
    display: flex;
    align-items: center;
  }
  .tab-item-list > li > a::after{
    position: absolute;
    right: 1rem;
    content: "";
    background: url(../icons/icon-down.png);
    background-size: cover;
    width: 1.6rem;
    height: 1.6rem;
  }
  .tab-item-list > li.active .tab-mobile-content{
    display: block;
    background: var(--tab-body-bg-color);
    padding: 2.4rem;
  }
  .tab-item-list > li.active a:after{
    -webkit-transform: rotate(-180deg);
    -moz-transform: rotate(-180deg);
    transform: rotate(-180deg);
  }
  .tab-info {
    padding: 0;
    display: block;
  }
  .tab-v1-list {
    width: 100%;
    padding-right: 0;
    margin-bottom: 2.4rem;
  }
  .tab-v1-list a {
    padding: 1.2rem 2.1rem 1.2rem 2.4rem;
  }
  .box-list {
    grid-gap: 1.6rem;
    grid-template-columns: repeat(1, 1fr);
  }
  .block-text-66 {
    width: 100% !important;
  }
  .block-text .h2 {
    margin-bottom: 1.6rem;
  }
  .block-text p {
    margin-bottom: 1.6rem;
  }
  .block-banner-text {
    width: 100%;
  }
  .block-banner-text p {
    font-size: 1.8rem;
    margin-bottom: 3rem;
  }
  .block-img {
    width: 100%;
    padding-left: 0;
    text-align: center;
    margin-top: 2.4rem;
  }
  .block-text li {
    margin-bottom: 1rem;
    padding-left: 2rem;
  }
  .block-text li::before {
    top: 0.8rem;
  }
  .grid-box-item {
    padding: 2.4rem;
  }
  .grid-box-top {
    margin-bottom: 2.4rem;
  }
  .document-info {
    width: 100%;
    padding-left: 0;
    margin-top: 2.4rem;
  }
  .document-info p{
    max-width: 100%;
  }
  .attr-list {
    max-width: 100%;
  }
  .document-img {
    width: 21rem;
    margin: auto;
  }
  .modal-message p {
    font-size: 1.8rem;
  }
}
@media(max-width:575.98px){
    .card-img img {
        height: 52vw;
    }
    .card-info {
        height: calc(100% - 52vw);
    }
}
/* ============================================================
   Landing Page Custom Styles (extracted from custom.css)
   ============================================================ */

/* ---- section: insight-cards start ---- */
.custom-insight-card {
  background: #E8EFF6;
  border-radius: 0.2rem;
  overflow: hidden;
  margin: 1.2rem 1.6rem 1.2rem 0;
  display: flex;
  flex-direction: column;
}
.custom-insight-card img {
  width: 100%;
  height: 14rem;
  object-fit: cover;
}
.custom-insight-card-body {
  padding: 1.6rem;
  display: flex;
  flex-direction: column;
  flex: 1;
}
.custom-insight-tag {
  font-size: 1.2rem;
  font-weight: 700;
  color: #196BFF;
  text-transform: uppercase;
  letter-spacing: 0.05rem;
  margin-bottom: 0.6rem;
}
.custom-insight-card h4 {
  font-size: 1.5rem;
  font-weight: 700;
  color: #001233;
  line-height: 1.4;
  margin-bottom: 0.8rem;
}
.custom-insight-card p {
  font-size: 1.3rem;
  line-height: 1.5;
  color: var(--body-color);
  margin-bottom: 1.2rem;
  flex: 1;
}
.custom-insight-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 1.2rem;
  color: #666;
  padding-top: 1rem;
  border-top: 1px solid #D9D9D9;
}
.custom-insight-footer span {
  font-weight: 600;
}
.custom-insight-bookmark {
  width: 1.6rem;
  height: 1.6rem;
  color: #C08B5C;
  flex-shrink: 0;
}
/* ---- section: insight-cards end ---- */

/* ---- section: industry-banner start ---- */
@keyframes indGradientShift {
  0%   { background-position: 0% 50%; }
  50%  { background-position: 100% 50%; }
  100% { background-position: 0% 50%; }
}
.custom-ind-banner {
  margin: 2rem 2rem 0;
  padding: 2.8rem 3.2rem;
  font-size: 1.4rem;
  line-height: 1.8;
  width: 0;
  min-width: calc(100% - 4rem);
  background: linear-gradient(135deg, #001233, #001845, #0A2472, #001845, #001233);
  background-size: 300% 300%;
  animation: indGradientShift 15s ease infinite;
  border-radius: 0.2rem;
  position: relative;
  overflow: hidden;
}
.custom-ind-banner strong {
  display: block;
  font-size: 1.7rem;
  font-weight: 700;
  color: #fff;
  margin-bottom: 0.8rem;
  letter-spacing: 0.04rem;
  line-height: 1.3;
}
.custom-ind-banner span {
  color: rgba(255,255,255,0.75);
  font-size: 1.3rem;
  line-height: 1.65;
}
/* ---- section: industry-banner end ---- */

/* ---- section: industry-grid start ---- */
.custom-ind-grid {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 0.4rem 0;
  padding: 2rem 2rem 2.4rem;
}
.custom-ind-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-decoration: none;
  padding: 1.6rem 1rem;
  border-radius: 0.2rem;
  transition: background 0.3s ease, transform 0.25s ease, box-shadow 0.3s ease;
  cursor: pointer;
}
.custom-ind-item:hover {
  background: #F0F5FF;
}
.custom-ind-icon {
  width: 6.4rem;
  height: 6.4rem;
  border-radius: 0.2rem;
  background: #fff;
  border: 1px solid #E2E8F0;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1rem;
  transition: transform 0.3s ease, box-shadow 0.3s ease, background 0.3s ease;
}
.custom-ind-item:hover .custom-ind-icon {
  border-color: #196BFF;
}
.custom-ind-icon img {
  width: 4rem;
  height: 4rem;
}
.custom-ind-item span {
  font-size: 1.15rem;
  font-weight: 600;
  color: #001233;
  text-align: center;
  line-height: 1.3;
  transition: color 0.3s ease;
}
.custom-ind-item:hover span {
  color: #196BFF;
}
/* ---- section: industry-grid end ---- */

/* ---- section: about-menu start ---- */
.custom-about-col {
  width: 68rem;
}
.custom-about-links {
  width: 24rem;
}
.custom-about-info {
  padding: 2.4rem 3.2rem;
  background: #E8EFF6;
  border-radius: 0.2rem;
  margin: 1.2rem 0 0 3.2rem;
}
.custom-about-info p {
  font-size: 1.3rem;
  line-height: 1.65;
  color: #001233;
  margin-bottom: 1.8rem;
  padding-bottom: 1.6rem;
  border-bottom: 1px solid #D6E4F5;
}
.custom-about-info ul {
  list-style: none;
  padding: 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0.6rem 2.4rem;
}
.custom-about-info ul li {
  font-size: 1.3rem;
  line-height: 1.65;
  color: #001233;
  padding: 0.3rem 0 0.3rem 1.6rem;
  position: relative;
}
.custom-about-info ul li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0.85rem;
  width: 0.5rem;
  height: 0.5rem;
  border-radius: 50%;
  background: #196BFF;
}
/* ---- section: about-menu end ---- */

/* ---- section: solutions-menu start ---- */
.custom-sol-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0;
  padding: 1.2rem 2.4rem 2rem;
  max-width: 90rem;
}
.custom-sol-item {
  display: flex;
  gap: 1.4rem;
  padding: 1.8rem 2rem;
  border-radius: 0.2rem;
  text-decoration: none;
  transition: background 0.25s ease;
  cursor: pointer;
}
.custom-sol-item:hover {
  background: #F0F5FF;
}
.custom-sol-icon {
  width: 3.2rem;
  height: 3.2rem;
  min-width: 3.2rem;
  margin-top: 0.4rem;
  display: flex;
  align-items: center;
  justify-content: center;
}
.custom-sol-icon img {
  width: 3.2rem;
  height: 3.2rem;
}
.custom-sol-text h4 {
  font-size: 1.6rem;
  font-weight: 700;
  color: var(--body-color);
  line-height: 2.6rem;
  margin-bottom: 0.2rem;
}
.custom-sol-item:hover .custom-sol-text h4 {
  text-decoration: underline;
}
.custom-sol-text p {
  font-size: 1.25rem;
  line-height: 1.5;
  color: var(--body-color);
  margin: 0;
}
/* ---- section: solutions-menu end ---- */

/* ---- section: ai-assist-banner start ---- */
.custom-ai-banner {
  margin: 2.4rem 3.2rem 1.6rem;
  padding: 2.4rem 2.8rem;
  width: 0;
  min-width: calc(100% - 6.4rem);
  background: linear-gradient(135deg, #001233 0%, #002566 60%, #003080 100%);
  border-radius: 0.2rem;
  display: flex;
  align-items: center;
  gap: 2.4rem;
}
.custom-ai-banner-text {
  flex: 1;
}
.custom-ai-banner-title {
  display: block;
  font-size: 1.7rem;
  font-weight: 700;
  color: #fff;
  margin-bottom: 0.8rem;
  letter-spacing: 0.04rem;
  line-height: 1.3;
}
.custom-ai-banner-desc {
  font-size: 1.3rem;
  line-height: 1.65;
  color: rgba(255, 255, 255, 0.75);
  display: block;
}
.custom-ai-banner-img {
  width: 8rem;
  height: 8rem;
  border-radius: 50%;
  object-fit: cover;
  flex-shrink: 0;
  box-shadow: 0 0 24px rgba(25, 107, 255, 0.35);
}
/* ---- section: ai-assist-banner end ---- */

/* ---- about: approach icons ---- */
.sec-icon-block .grid-icon-80 {
  height: 6rem;
  width: 6rem;
}
.sec-icon-block .grid-icon-80 img {
  max-width: 4.8rem;
  max-height: 4.8rem;
}

/* ---- footer: trusted-by brand logos ---- */
.footer-brand.d-new-a {
  justify-content: flex-start !important;
  gap: 4.8rem;
  margin-left: 6.4rem;
}
.footer-brand-item {
  margin: 0 !important;
}
.footer-brand-item:nth-child(1) img {
  position: relative;
  top: -4px;
}
.footer-brand-item:nth-child(2) img {
  position: relative;
  top: 5px;
}
.footer-brand-item:nth-child(3) img {
  position: relative;
  top: -4px;
}
.footer-brand-item:nth-child(4) img {
  position: relative;
  top: 2px;
  transform: scale(1.15);
}
.footer-brand-item:nth-child(6) img {
  position: relative;
  top: 2px;
  transform: scale(1.25);
}
.footer-logo {
  position: relative;
  left: -20px;
}
/* ---- footer: trusted-by brand logos end ---- */

/* ---- Summary section ---- */
/* ---- FAQ section ---- */
.sec-faq {
  background: #f5f7fa;
}
.faq-header h2 {
  font-size: 3.5rem;
  font-weight: bold;
  line-height: 4.8rem;
  color: var(--heading-text-color);
  margin-bottom: 1.2rem;
}
.faq-subtitle {
  font-size: 1.6rem;
  line-height: 2.4rem;
  color: #64748b;
  max-width: 50rem;
  margin: 0 auto;
}
.faq-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 0 3.2rem;
  align-items: start;
}
.faq-item {
  background: #fff;
  border: 1px solid #E2E8F0;
  border-radius: 0.2rem;
  margin-bottom: 1.6rem;
  transition: box-shadow 0.2s ease, border-color 0.2s ease;
}
.faq-item:hover {
  border-color: #cbd5e1;
  box-shadow: 0 2px 12px rgba(0, 18, 51, 0.06);
}
.faq-item.is-open {
  border-color: #E2E8F0;
  box-shadow: 0 2px 12px rgba(0, 18, 51, 0.06);
}
.faq-trigger {
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1.6rem;
  padding: 2rem 2.8rem;
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 2.4rem;
  color: var(--heading-text-color);
  text-align: left;
  background: none;
  cursor: pointer;
}
.faq-chevron {
  flex-shrink: 0;
  color: #94a3b8;
  transition: transform 0.3s ease, color 0.3s ease;
}
.faq-item.is-open .faq-chevron {
  transform: rotate(180deg);
  color: var(--blue-color);
}
.faq-answer {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.35s ease;
}
/* First open state rendered before JS kicks in */
.faq-item.is-open .faq-answer {
  max-height: 40rem;
}
.faq-answer > div {
  padding: 0 2.8rem 2rem;
}
.faq-answer p {
  font-size: 1.5rem;
  line-height: 2.6rem;
  color: var(--body-color);
  margin: 0;
}
@media (max-width: 992px) {
  .faq-grid {
    grid-template-columns: 1fr;
    gap: 0;
  }
  .faq-header h2 {
    font-size: 2.8rem;
    line-height: 3.8rem;
  }
}
@media (max-width: 576px) {
  .faq-trigger {
    padding: 1.6rem 1.8rem;
    font-size: 1.5rem;
    line-height: 2.2rem;
  }
  .faq-answer > div {
    padding: 0 1.8rem 1.6rem;
  }
  .faq-answer p {
    font-size: 1.4rem;
    line-height: 2.4rem;
  }
}

.sec-summary {
  position: relative;
  overflow: hidden;
  padding: 8rem 0 6.4rem;
  background: #001233;
}
.summary-inner {
  max-width: 76rem;
  margin: 0 auto;
}
.summary-eyebrow {
  font-size: 1.2rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 2px;
  color: rgba(255, 255, 255, 0.5);
  margin-bottom: 1.2rem;
}
.summary-inner h2 {
  font-size: 3.8rem;
  font-weight: bold;
  line-height: 5rem;
  color: #fff;
  margin-bottom: 0;
}
.summary-inner h2 + .summary-text {
  margin-top: 2.4rem;
}
.summary-text {
  font-size: 1.8rem;
  line-height: 3.2rem;
  color: rgba(255, 255, 255, 0.78);
  margin-bottom: 0;
}
.summary-stats {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  margin-top: 5.6rem;
  border-top: 1px solid rgba(255, 255, 255, 0.12);
  padding-top: 4rem;
}
.summary-stat {
  text-align: center;
  position: relative;
}
.summary-stat:not(:last-child)::after {
  content: "";
  position: absolute;
  right: 0;
  top: 0;
  height: 100%;
  width: 1px;
  background: rgba(255, 255, 255, 0.12);
}
.summary-stat-num {
  display: block;
  font-size: 4.2rem;
  font-weight: 700;
  line-height: 1;
  color: #fff;
  margin-bottom: 0.8rem;
}
.summary-stat-label {
  display: block;
  font-size: 1.3rem;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 1px;
  color: rgba(255, 255, 255, 0.5);
}

@media (max-width: 992px) {
  .sec-summary {
    padding: 6.4rem 0 4.8rem;
  }
  .summary-inner h2 {
    font-size: 3.2rem;
    line-height: 4.2rem;
  }
  .summary-stats {
    grid-template-columns: repeat(2, 1fr);
    gap: 3.2rem 0;
    margin-top: 4rem;
    padding-top: 3.2rem;
  }
  .summary-stat:nth-child(2)::after {
    display: none;
  }
}
@media (max-width: 576px) {
  .sec-summary {
    padding: 4.8rem 0 4rem;
  }
  .summary-inner h2 {
    font-size: 2.6rem;
    line-height: 3.6rem;
  }
  .summary-text {
    font-size: 1.6rem;
    line-height: 2.8rem;
  }
  .summary-stats {
    grid-template-columns: 1fr 1fr;
    gap: 2.4rem 0;
  }
  .summary-stat-num {
    font-size: 3.2rem;
  }
}

/* ---- modal scroll-lock (all modals) ---- */
html.modal-open {
  overflow: hidden;
}

/* ---- modal design refinements ---- */
.modal-wrapper {
  justify-content: flex-start;
  padding-top: 15vh;
}
.modal-head {
  border-bottom: none;
  padding-bottom: 0;
}
.modal-body {
  padding-top: 1.6rem;
}
.modal-body textarea.form-control {
  min-height: 120px;
}
.label[data-invalid]::after {
  content: '';
  display: inline-block;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #DF4116;
  margin-left: 6px;
  vertical-align: middle;
}

/* ════════════════════════════════════════════════════
   DESIGN SYSTEM — Forms
   Reference: /sandbox/forms
   ════════════════════════════════════════════════════ */

/* ── Form Label & Hint ── */
.form-label { display:block; font-size:1.6rem; font-weight:500; color:#001233; margin-bottom:0.6rem; }
.form-hint { font-size:1.2rem; color:#003BA6; margin-top:0.4rem; }

/* ── Form Input — Default h-10 (40px) ── */
/* Element-qualified to avoid conflict with legacy div.form-input wrappers */
input.form-input, select.form-input {
  width:100%; height:4rem; padding:0.8rem 1.2rem; font-size:1.6rem; font-family:inherit;
  border:1px solid #d1d5db; border-radius:0.2rem; outline:none;
  transition:border-color .15s; box-sizing:border-box; background:#fff;
}
/* ── Form Input — Compact h-8 (32px) ── */
input.form-input-sm, select.form-input-sm {
  width:100%; height:3.2rem; padding:0.6rem 1.2rem; font-size:1.6rem; font-family:inherit;
  border:1px solid #d1d5db; border-radius:0.2rem; outline:none;
  transition:border-color .15s; box-sizing:border-box; background:#fff;
}
input.form-input:focus, select.form-input:focus,
input.form-input-sm:focus, select.form-input-sm:focus { border-color:#003BA6; }
input.form-input::placeholder, input.form-input-sm::placeholder { color:#9ca3af; }

/* Textarea overrides */
textarea.form-input { height:auto; min-height:9.6rem; resize:none; overflow:hidden; }
textarea.form-input-sm { height:auto; min-height:8rem; resize:none; overflow:hidden; }

/* ── Toggle — Default 20×36px ── */
.toggle-track {
  width:3.6rem; height:2rem; border-radius:1rem; background:#D9D9D9;
  position:relative; cursor:pointer; transition:background .2s;
  display:inline-block; vertical-align:middle; flex-shrink:0;
}
.toggle-track.on { background:#003BA6; }
.toggle-knob {
  width:1.6rem; height:1.6rem; border-radius:50%; background:#fff;
  position:absolute; top:0.2rem; left:0.2rem; transition:left .2s;
  box-shadow:0 1px 3px rgba(0,0,0,.15);
}
.toggle-track.on .toggle-knob { left:1.8rem; }

/* ── Toggle — Compact 16×28px ── */
.toggle-track-sm {
  width:2.8rem; height:1.6rem; border-radius:0.8rem; background:#D9D9D9;
  position:relative; cursor:pointer; transition:background .2s;
  display:inline-block; vertical-align:middle; flex-shrink:0;
}
.toggle-track-sm.on { background:#003BA6; }
.toggle-knob-sm {
  width:1.2rem; height:1.2rem; border-radius:50%; background:#fff;
  position:absolute; top:0.2rem; left:0.2rem; transition:left .2s;
  box-shadow:0 1px 3px rgba(0,0,0,.15);
}
.toggle-track-sm.on .toggle-knob-sm { left:1.4rem; }

/* ── Checkbox / Radio Row ── */
.check-row { display:flex; align-items:center; gap:1.2rem; cursor:pointer; font-size:1.6rem; line-height:2rem; color:#001233; }
.check-row input { flex-shrink:0; }
.check-row-sm { display:flex; align-items:center; gap:1.2rem; cursor:pointer; font-size:1.3rem; line-height:2rem; color:#001233; }
.check-row-sm input { flex-shrink:0; }
.check-row.disabled, .check-row-sm.disabled { cursor:not-allowed; color:#9ca3af; }
.check-row.disabled input, .check-row-sm.disabled input { cursor:not-allowed; }

/* ── Custom Select ── */
.custom-select { position:relative; width:100%; }
.custom-select-trigger {
  width:100%; height:4rem; padding:0.8rem 4rem 0.8rem 1.2rem; font-size:1.6rem; font-family:inherit;
  border:1px solid #d1d5db; border-radius:0.2rem; outline:none; background:#fff;
  cursor:pointer; text-align:left; transition:border-color .15s; box-sizing:border-box;
  display:flex; align-items:center; color:#001233;
}
.custom-select-trigger:focus { border-color:#003BA6; }
.custom-select-trigger-sm {
  width:100%; height:3.2rem; padding:0.6rem 3.6rem 0.6rem 1.2rem; font-size:1.6rem; font-family:inherit;
  border:1px solid #d1d5db; border-radius:0.2rem; outline:none; background:#fff;
  cursor:pointer; text-align:left; transition:border-color .15s; box-sizing:border-box;
  display:flex; align-items:center; color:#001233;
}
.custom-select-trigger-sm:focus { border-color:#003BA6; }
.trigger-placeholder { color:#9ca3af; }
.trigger-chevron {
  position:absolute; right:1.2rem; top:50%; transform:translateY(-50%) rotate(0deg);
  pointer-events:none; width:1.6rem; height:1.6rem; color:#6b7280;
  transition:transform .2s ease-out;
}
.custom-select.open .trigger-chevron { transform:translateY(-50%) rotate(180deg); }
.custom-select-menu {
  position:absolute; top:calc(100% + 4px); left:0; right:0; z-index:50;
  background:#fff; border:1px solid #e5e7eb; border-radius:0.2rem;
  box-shadow:0 4px 6px -1px rgba(0,0,0,.1), 0 2px 4px -2px rgba(0,0,0,.1);
  max-height:22rem; overflow-y:auto; overflow-x:hidden;
  opacity:0; transform:scaleY(.95); transform-origin:top;
  pointer-events:none; transition:opacity .15s ease-out, transform .15s ease-out;
}
.custom-select.open .custom-select-menu { opacity:1; transform:scaleY(1); pointer-events:auto; }
.custom-select-option {
  display:flex; align-items:center; min-height:4rem;
  padding:0.8rem 1.2rem; font-size:1.6rem; line-height:2rem; cursor:pointer;
  color:#111827; background:#fff; transition:background .1s;
}
.custom-select-option:hover { background:#f9fafb; }
.custom-select-option.selected { background:#003BA6; color:#fff; }
.custom-select-option-sm {
  display:flex; align-items:center; min-height:3.2rem;
  padding:0.6rem 1.2rem; font-size:1.6rem; line-height:2rem; cursor:pointer;
  color:#111827; background:#fff; transition:background .1s;
}
.custom-select-option-sm:hover { background:#f9fafb; }
.custom-select-option-sm.selected { background:#003BA6; color:#fff; }

/* ── Searchable Select ── */
.search-select { position:relative; width:100%; }
.search-select-menu {
  position:absolute; top:calc(100% + 4px); left:0; right:0; z-index:50;
  background:#fff; border:1px solid #e5e7eb; border-radius:0.2rem;
  box-shadow:0 4px 6px -1px rgba(0,0,0,.1), 0 2px 4px -2px rgba(0,0,0,.1);
  max-height:26rem; overflow:hidden; display:flex; flex-direction:column;
  opacity:0; transform:scaleY(.95); transform-origin:top;
  pointer-events:none; transition:opacity .15s ease-out, transform .15s ease-out;
}
.search-select.open .search-select-menu { opacity:1; transform:scaleY(1); pointer-events:auto; }
.search-select.open .trigger-chevron { transform:translateY(-50%) rotate(180deg); }
.search-select-search-wrap { position:relative; flex-shrink:0; }
.search-select-options { overflow-y:auto; flex:1; }
.search-select-empty { padding:1.2rem; text-align:center; font-size:1.3rem; color:#9ca3af; }

/* ── Tag Input ── */
.tag-input { position:relative; }
.tag-input-wrap {
  display:flex; flex-wrap:wrap; align-items:center; gap:0.6rem;
  min-height:4rem; padding:0.6rem 1.2rem; font-size:1.6rem; font-family:inherit;
  border:1px solid #d1d5db; border-radius:0.2rem; background:#fff;
  box-sizing:border-box; cursor:text; transition:border-color .15s;
}
.tag-input-wrap:focus-within { border-color:#003BA6; }
.tag-input-wrap-sm {
  display:flex; flex-wrap:wrap; align-items:center; gap:0.4rem;
  min-height:3.2rem; padding:0.4rem 1.2rem; font-size:1.6rem; font-family:inherit;
  border:1px solid #d1d5db; border-radius:0.2rem; background:#fff;
  box-sizing:border-box; cursor:text; transition:border-color .15s;
}
.tag-input-wrap-sm:focus-within { border-color:#003BA6; }
.tag-pill {
  display:inline-flex; align-items:center; gap:0.4rem;
  padding:0.2rem 0.8rem; background:#D1E1FF; color:#003BA6;
  font-size:1.6rem; font-weight:500; border-radius:0.2rem; white-space:nowrap;
}
.tag-pill-sm {
  display:inline-flex; align-items:center; gap:0.4rem;
  padding:0.1rem 0.6rem; background:#D1E1FF; color:#003BA6;
  font-size:1.6rem; font-weight:500; border-radius:0.2rem; white-space:nowrap;
}
.tag-remove {
  display:inline-flex; align-items:center; justify-content:center;
  width:1.6rem; height:1.6rem; border:none; background:none; cursor:pointer;
  color:#003BA6; font-size:1.4rem; line-height:1; padding:0; border-radius:0.2rem;
  transition:background .1s;
}
.tag-remove:hover { background:rgba(0,59,166,.15); }
.tag-text {
  flex:1; min-width:8rem; border:none; outline:none; background:none;
  font-size:1.6rem; font-family:inherit; color:#001233; padding:0; height:2.6rem;
}
.tag-text::placeholder { color:#9ca3af; }
.tag-text-sm {
  flex:1; min-width:8rem; border:none; outline:none; background:none;
  font-size:1.6rem; font-family:inherit; color:#001233; padding:0; height:2.2rem;
}
.tag-text-sm::placeholder { color:#9ca3af; }
.tag-suggestions {
  position:absolute; top:calc(100% + 4px); left:0; right:0; z-index:50;
  background:#fff; border:1px solid #e5e7eb; border-radius:0.2rem;
  box-shadow:0 4px 6px -1px rgba(0,0,0,.1), 0 2px 4px -2px rgba(0,0,0,.1);
  max-height:26rem; overflow:hidden; display:flex; flex-direction:column;
  opacity:0; transform:scaleY(.95); transform-origin:top;
  pointer-events:none; transition:opacity .15s ease-out, transform .15s ease-out;
}
.tag-search-wrap { position:relative; flex-shrink:0; }
.tag-suggestions-list { overflow-y:auto; flex:1; }
.tag-input.open .tag-suggestions { opacity:1; transform:scaleY(1); pointer-events:auto; }
.tag-suggestion-item {
  display:flex; align-items:center; min-height:4rem;
  padding:0.8rem 1.2rem; font-size:1.6rem; cursor:pointer;
  color:#111827; background:#fff; transition:background .1s;
}
.tag-suggestion-item:hover { background:#f9fafb; }
.tag-suggestion-item-sm {
  display:flex; align-items:center; min-height:3.2rem;
  padding:0.6rem 1.2rem; font-size:1.6rem; cursor:pointer;
  color:#111827; background:#fff; transition:background .1s;
}
.tag-suggestion-item-sm:hover { background:#f9fafb; }
.tag-empty { padding:1.2rem; text-align:center; font-size:1.6rem; color:#9ca3af; }

/* ── File Attachment ── */
.file-trigger {
  display:flex; align-items:center; gap:0.8rem;
  width:100%; height:4rem; padding:0.8rem 1.2rem; font-size:1.6rem; font-family:inherit;
  border:1px solid #d1d5db; border-radius:0.2rem; outline:none; background:#fff;
  cursor:pointer; box-sizing:border-box; transition:border-color .15s; color:#001233;
}
.file-trigger:focus-within { border-color:#003BA6; }
.file-trigger-sm {
  display:flex; align-items:center; gap:0.8rem;
  width:100%; height:3.2rem; padding:0.6rem 1.2rem; font-size:1.6rem; font-family:inherit;
  border:1px solid #d1d5db; border-radius:0.2rem; outline:none; background:#fff;
  cursor:pointer; box-sizing:border-box; transition:border-color .15s; color:#001233;
}
.file-trigger-sm:focus-within { border-color:#003BA6; }
.file-trigger-icon { flex-shrink:0; width:1.6rem; height:1.6rem; color:#6b7280; }
.file-trigger-text {
  flex:1; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;
  font-size:1.6rem; color:#001233;
}
.file-trigger-placeholder {
  flex:1; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap;
  font-size:1.6rem; color:#9ca3af;
}
.file-trigger-meta { flex-shrink:0; font-size:1.2rem; color:#6b7280; }
.file-trigger-clear {
  display:inline-flex; align-items:center; justify-content:center;
  width:2rem; height:2rem; border:none; background:none; cursor:pointer;
  color:#6b7280; padding:0; border-radius:0.2rem; flex-shrink:0;
  transition:background .1s, color .1s;
}
.file-trigger-clear:hover { background:#fef2f2; color:#DF4116; }
.file-trigger-clear-sm {
  display:inline-flex; align-items:center; justify-content:center;
  width:1.6rem; height:1.6rem; border:none; background:none; cursor:pointer;
  color:#6b7280; padding:0; border-radius:0.2rem; flex-shrink:0;
  transition:background .1s, color .1s;
}
.file-trigger-clear-sm:hover { background:#fef2f2; color:#DF4116; }
.file-disabled { background:#f3f4f6; color:#9ca3af; cursor:not-allowed; pointer-events:none; }
.file-disabled .file-trigger-icon { color:#9ca3af; }
.file-list { display:flex; flex-direction:column; gap:0.6rem; margin-top:0.8rem; }
.file-list-item {
  display:flex; align-items:center; gap:0.8rem;
  padding:0.6rem 1rem; font-size:1.6rem; background:#f9fafb;
  border:1px solid #e5e7eb; border-radius:0.2rem;
}
.file-list-item-sm {
  display:flex; align-items:center; gap:0.6rem;
  padding:0.4rem 0.8rem; font-size:1.6rem; background:#f9fafb;
  border:1px solid #e5e7eb; border-radius:0.2rem;
}
.file-list-icon { flex-shrink:0; width:1.6rem; height:1.6rem; color:#003BA6; }
.file-list-name { flex:1; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:#001233; }
.file-list-size { flex-shrink:0; font-size:1.2rem; color:#6b7280; }
.file-list-remove {
  display:inline-flex; align-items:center; justify-content:center;
  width:2rem; height:2rem; border:none; background:none; cursor:pointer;
  color:#6b7280; padding:0; border-radius:0.2rem; flex-shrink:0;
  transition:background .1s, color .1s;
}
.file-list-remove:hover { background:#fef2f2; color:#DF4116; }
.file-list-remove-sm {
  display:inline-flex; align-items:center; justify-content:center;
  width:1.6rem; height:1.6rem; border:none; background:none; cursor:pointer;
  color:#6b7280; padding:0; border-radius:0.2rem; flex-shrink:0;
  transition:background .1s, color .1s;
}
.file-list-remove-sm:hover { background:#fef2f2; color:#DF4116; }

/* ── Dropzone ── */
.dropzone-area {
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  gap:0.8rem; padding:3.2rem 2.4rem;
  border:2px dashed #d1d5db; border-radius:0.2rem; background:#fff;
  cursor:pointer; transition:border-color .15s, background .15s; text-align:center;
}
.dropzone-area:hover { border-color:#003BA6; background:#fafbff; }
.dropzone-area.dragover { border-color:#003BA6; background:#D1E1FF; }
.dropzone-area-sm {
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  gap:0.6rem; padding:2rem 1.6rem;
  border:2px dashed #d1d5db; border-radius:0.2rem; background:#fff;
  cursor:pointer; transition:border-color .15s, background .15s; text-align:center;
}
.dropzone-area-sm:hover { border-color:#003BA6; background:#fafbff; }
.dropzone-area-sm.dragover { border-color:#003BA6; background:#D1E1FF; }
.dropzone-icon { color:#6b7280; }
.dropzone-text { font-size:1.6rem; color:#001233; }
.dropzone-text span { color:#003BA6; font-weight:500; text-decoration:underline; }
.dropzone-hint { font-size:1.2rem; color:#6b7280; }
.dropzone-disabled { background:#f3f4f6; border-color:#e5e7eb; cursor:not-allowed; pointer-events:none; }
.dropzone-disabled .dropzone-icon { color:#9ca3af; }
.dropzone-disabled .dropzone-text { color:#9ca3af; }
.dropzone-disabled .dropzone-text span { color:#9ca3af; text-decoration:none; }
.dropzone-disabled .dropzone-hint { color:#9ca3af; }

/* ════════════════════════════════════════════════════
   DESIGN SYSTEM — Buttons
   Reference: /sandbox/buttons
   ════════════════════════════════════════════════════ */

/* Compact button size — h-8 (32px) */
.btn-sm {
  height:3.2rem;
  padding:0 1.2rem;
  font-size:1.4rem;
}
/* Additional button variants */
.btn-dark {
  background:var(--black-color);
  color:var(--text-white);
}
.btn-dark:hover {
  background:var(--blue-dark-color);
}
.btn-danger {
  background:var(--red);
  color:var(--text-white);
}
.btn-success {
  background:var(--green);
  color:var(--text-white);
}
.btn-neutral {
  background:#D9D9D9;
  color:var(--black-color);
}

/* ════════════════════════════════════════════════════
   DESIGN SYSTEM — Badges
   Reference: /sandbox/badges
   ════════════════════════════════════════════════════ */

.badge {
  display:inline-flex; align-items:center; gap:0.4rem;
  padding:0.2rem 1rem; font-size:1.2rem; font-weight:500;
  border-radius:0.2rem; line-height:1.6; white-space:nowrap;
}
/* Solid */
.badge-primary { background:#003BA6; color:#fff; }
.badge-dark { background:#001233; color:#fff; }
.badge-success { background:#16a34a; color:#fff; }
.badge-danger { background:#dc2626; color:#fff; }
.badge-warning { background:#ea580c; color:#fff; }
.badge-neutral { background:#6b7280; color:#fff; }
/* Soft */
.badge-soft-primary { background:#D1E1FF; color:#003BA6; }
.badge-soft-dark { background:#e0e7ff; color:#001233; }
.badge-soft-success { background:#dcfce7; color:#166534; }
.badge-soft-danger { background:#fef2f2; color:#991b1b; }
.badge-soft-warning { background:#fff7ed; color:#9a3412; }
.badge-soft-neutral { background:#f3f4f6; color:#374151; }
/* Outline */
.badge-outline-primary { border:1px solid #003BA6; color:#003BA6; padding:0.1rem 0.9rem; }
.badge-outline-dark { border:1px solid #001233; color:#001233; padding:0.1rem 0.9rem; }
.badge-outline-success { border:1px solid #16a34a; color:#16a34a; padding:0.1rem 0.9rem; }
.badge-outline-danger { border:1px solid #dc2626; color:#dc2626; padding:0.1rem 0.9rem; }
.badge-outline-warning { border:1px solid #ea580c; color:#ea580c; padding:0.1rem 0.9rem; }
.badge-outline-neutral { border:1px solid #6b7280; color:#6b7280; padding:0.1rem 0.9rem; }
/* Dot indicator */
.badge-dot {
  display:inline-flex; align-items:center; gap:0.6rem;
  font-size:1.2rem; font-weight:500; color:#374151;
}
.badge-dot::before {
  content:""; width:0.8rem; height:0.8rem; border-radius:50%; flex-shrink:0;
}
.badge-dot-primary::before { background:#003BA6; }
.badge-dot-success::before { background:#16a34a; }
.badge-dot-danger::before { background:#dc2626; }
.badge-dot-warning::before { background:#ea580c; }
.badge-dot-neutral::before { background:#6b7280; }
/* Count pill */
.badge-count {
  display:inline-flex; align-items:center; justify-content:center;
  min-width:2rem; height:2rem; padding:0 0.6rem;
  font-size:1.2rem; font-weight:700; border-radius:9999px;
  color:#fff; line-height:1;
}
.badge-count-primary { background:#003BA6; }
.badge-count-danger { background:#dc2626; }
.badge-count-success { background:#16a34a; }
.badge-count-neutral { background:#6b7280; }

/* ═══════════ Blog Listing ═══════════ */
.sec-blog-listing { background:#fff; }
.blog-filter-tab {
  display:inline-flex; align-items:center; padding:0.6rem 1.6rem;
  font-size:1.6rem; font-weight:500; color:#6b7280;
  border:1px solid #d1d5db; border-radius:0.2rem;
  text-decoration:none; transition:all .15s; cursor:pointer;
  white-space:nowrap;
}
.blog-filter-tab:hover { border-color:var(--blue-color); color:var(--blue-color); }
.blog-filter-tab-active {
  background:var(--blue-color); border-color:var(--blue-color); color:#fff;
}
.blog-filter-tab-active:hover { background:#1259d4; color:#fff; }
.blog-listing-pagination {
  display:flex; justify-content:center; align-items:center;
  gap:0.4rem; margin-top:8rem; margin-bottom:3.2rem; flex-wrap:wrap;
}
.page-btn {
  display:inline-flex; align-items:center; justify-content:center;
  min-width:3.6rem; height:3.6rem; padding:0.4rem 1rem;
  font-size:1.6rem; font-weight:500; color:var(--blue-color);
  border:1px solid #d1d5db; border-radius:0.2rem;
  text-decoration:none; cursor:pointer; transition:all .15s;
  background:#fff; white-space:nowrap; user-select:none;
}
.page-btn:hover { background:#f3f4f6; }
.page-btn.active { background:var(--blue-color); border-color:var(--blue-color); color:#fff; }
.page-btn.active:hover { background:#1259d4; }
.page-btn-nav { gap:0.6rem; padding:0.4rem 1.4rem; }
.page-btn-disabled { opacity:.4; cursor:default; pointer-events:none; }
.page-ellipsis { display:inline-flex; align-items:center; justify-content:center; height:3.6rem; padding:0 0.4rem; font-size:1.6rem; color:#9ca3af; }

/* ====== CTA Blue Section ====== */
.custom-cta-blue {
  background: #E8EFF6;
}
.custom-cta-inner {
  align-items: center;
  gap: 6.4rem;
}
.custom-cta-content {
  flex: 1;
}
.custom-cta-content p {
  line-height: 1.8;
  color: var(--body-color);
  margin-bottom: 3.2rem;
}
.custom-cta-btns {
  display: flex;
  gap: 1.6rem;
}
.custom-cta-image {
  width: 28rem;
  flex-shrink: 0;
}
.custom-cta-image img {
  width: 100%;
  height: auto;
}
@media (max-width: 768px) {
  .custom-cta-inner {
    flex-direction: column;
    gap: 3.2rem;
  }
  .custom-cta-image {
    width: 20rem;
  }
}

/* ====== CTA Hero Section ====== */
.custom-cta-hero {
  position: relative;
  overflow: hidden;
}
.custom-cta-hero-bg {
  position: absolute;
  inset: 0;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
.custom-cta-hero-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(0,18,51,0.88) 0%, rgba(0,18,51,0.72) 50%, rgba(0,18,51,0.60) 100%);
}
.custom-cta-hero-content {
  max-width: 72rem;
  margin: 0 auto;
}
.custom-cta-hero-content > p {
  color: rgba(255,255,255,0.85);
  line-height: 1.8;
  margin-bottom: 2rem;
}
.custom-cta-hero-content > p:last-of-type {
  margin-bottom: 3.2rem;
}
.custom-cta-hero-btns {
  display: flex;
  justify-content: center;
  gap: 1.6rem;
  flex-wrap: wrap;
}
.btn-outline-white {
  border: 2px solid rgba(255,255,255,0.6);
  color: #fff;
  background: transparent;
}
.btn-outline-white:hover {
  border-color: #fff;
  background: rgba(255,255,255,0.1);
}
@media (max-width: 576px) {
  .custom-cta-hero-btns {
    flex-direction: column;
    align-items: center;
  }
}

/* ====== Core Capabilities / ThinkFirm Delivers ====== */
.custom-delivers-visual {
  position: relative;
  width: 100%;
  min-height: 40rem;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
  border-radius: 1.2rem;
}
.custom-delivers-visual canvas {
  display: block;
  width: 100%;
  height: 100%;
}
.custom-delivers-list {
  list-style: none;
  padding: 0;
}
.custom-delivers-list li {
  list-style: none;
  padding: 1.4rem 0 1.4rem 3.6rem;
  position: relative;
}
.custom-delivers-list li::before {
  content: '';
  position: absolute;
  left: 0.8rem;
  top: 1.9rem;
  width: 1.2rem;
  height: 1.2rem;
  border-radius: 50%;
  box-shadow: 0 0 8px rgba(25, 107, 255, 0.45);
}
.custom-delivers-list li:nth-child(1)::before { background: #196BFF; }
.custom-delivers-list li:nth-child(2)::before { background: #0A2472; }
.custom-delivers-list li:nth-child(3)::before { background: #5DADE2; }
.custom-delivers-list li:nth-child(4)::before { background: #2E86C1; }
.custom-delivers-list li:nth-child(5)::before { background: #4A90D9; }
.custom-delivers-list li:nth-child(6)::before { background: #001845; }

/* ====== Business Benefits V2 (Circle Icons + Panels) ====== */
.custom-bb2-dark {
  background: #001233;
}
.custom-bb2-dark .small-title,
.custom-bb2-dark h2 {
  color: #fff;
}
.custom-bb2-white {
  background: #fff;
}
.custom-bb2-grid {
  display: flex;
  justify-content: center;
  gap: 4.8rem;
}
.custom-bb2-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  cursor: pointer;
  position: relative;
}
.custom-bb2-circle {
  width: 12rem;
  height: 12rem;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 1.6rem;
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}
.custom-bb2-item:hover .custom-bb2-circle {
  transform: scale(1.08);
}
.custom-bb2-item.active .custom-bb2-circle {
  transform: scale(1.1);
  box-shadow: 0 0 0 3px #196BFF;
}
.custom-bb2-dark .custom-bb2-circle {
  background: rgba(255, 255, 255, 0.1);
}
.custom-bb2-white .custom-bb2-circle {
  background: #E8EFF6;
}
.custom-bb2-circle img {
  width: 5.6rem;
  height: 5.6rem;
}
.custom-bb2-dark .custom-bb2-circle img {
  filter: brightness(0) invert(1) opacity(0.85);
}
.custom-bb2-item h4 {
  font-size: 1.6rem;
  font-weight: 700;
  transition: color 0.3s ease;
}
.custom-bb2-dark .custom-bb2-item h4 {
  color: rgba(255, 255, 255, 0.7);
}
.custom-bb2-dark .custom-bb2-item.active h4 {
  color: #fff;
}
.custom-bb2-white .custom-bb2-item h4 {
  color: var(--body-color);
}
.custom-bb2-white .custom-bb2-item.active h4 {
  color: #196BFF;
}
.custom-bb2-panels {
  margin-top: 4.8rem;
  position: relative;
  height: 10rem;
}
.custom-bb2-panel {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  opacity: 0;
  visibility: hidden;
  transition: opacity 0.4s ease;
  text-align: center;
  padding: 0 8rem;
}
.custom-bb2-panel.active {
  opacity: 1;
  visibility: visible;
}
.custom-bb2-dark .custom-bb2-panel p {
  color: rgba(255, 255, 255, 0.8);
  line-height: 1.8;
}
.custom-bb2-white .custom-bb2-panel p {
  color: var(--body-color);
  line-height: 1.8;
}
@media (max-width: 768px) {
  .custom-bb2-grid {
    flex-wrap: wrap;
    gap: 2.4rem;
  }
  .custom-bb2-circle {
    width: 8rem;
    height: 8rem;
  }
  .custom-bb2-circle img {
    width: 4rem;
    height: 4rem;
  }
  .custom-bb2-panels {
    height: auto;
  }
  .custom-bb2-panel {
    position: relative;
    padding: 0 1.6rem;
  }
}

/* ====== Client Success Stats Section ====== */
.custom-stats-light {
  background: #F5F7FA;
}
.custom-stats-dark {
  background: #001233;
}
.custom-stats-dark .small-title {
  color: #fff;
}
.custom-stats-dark h2 {
  color: #fff;
}
.custom-stats-subtitle {
  max-width: 64rem;
  margin-left: auto;
  margin-right: auto;
  line-height: 1.7;
}
.custom-stats-light .custom-stats-subtitle {
  color: var(--body-color);
}
.custom-stats-dark .custom-stats-subtitle {
  color: rgba(255, 255, 255, 0.7);
}
.custom-stats-grid {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  border-top: 1px solid;
}
.custom-stats-light .custom-stats-grid {
  border-color: #D9D9D9;
}
.custom-stats-dark .custom-stats-grid {
  border-color: rgba(255, 255, 255, 0.15);
}
.custom-stats-item {
  padding: 3.2rem 2.4rem;
  border-right: 1px solid;
}
.custom-stats-item:first-child {
  padding-left: 0;
}
.custom-stats-item:last-child {
  border-right: none;
  padding-right: 0;
}
.custom-stats-light .custom-stats-item {
  border-color: #D9D9D9;
}
.custom-stats-dark .custom-stats-item {
  border-color: rgba(255, 255, 255, 0.15);
}
.custom-stats-number {
  font-size: 3.6rem;
  font-weight: 700;
  line-height: 1.2;
  margin-bottom: 0.4rem;
}
.custom-stats-light .custom-stats-number {
  color: #001233;
}
.custom-stats-dark .custom-stats-number {
  color: #fff;
}
.custom-stats-label {
  font-size: 1.6rem;
  font-weight: 700;
  margin-bottom: 1.2rem;
}
.custom-stats-light .custom-stats-label {
  color: #001233;
}
.custom-stats-dark .custom-stats-label {
  color: #fff;
}
.custom-stats-item p {
  font-size: 1.4rem;
  line-height: 1.6;
}
.custom-stats-light .custom-stats-item p {
  color: var(--body-color);
}
.custom-stats-dark .custom-stats-item p {
  color: rgba(255, 255, 255, 0.65);
}
@media (max-width: 991px) {
  .custom-stats-grid {
    grid-template-columns: repeat(2, 1fr);
  }
  .custom-stats-item:nth-child(even) {
    border-right: none;
  }
  .custom-stats-item {
    border-bottom: 1px solid;
  }
  .custom-stats-item:first-child {
    padding-left: 2.4rem;
  }
  .custom-stats-light .custom-stats-item {
    border-color: #D9D9D9;
  }
  .custom-stats-dark .custom-stats-item {
    border-color: rgba(255, 255, 255, 0.15);
  }
}
@media (max-width: 575px) {
  .custom-stats-grid {
    grid-template-columns: 1fr;
  }
  .custom-stats-item {
    border-right: none;
  }
  .custom-stats-number {
    font-size: 3.2rem;
  }
}

/* ======================================
   Services Grid (4x2)
   ====================================== */
.custom-services {
  background: #F7F9FC;
}
.custom-services-subtitle {
  max-width: 64rem;
  margin: 1.2rem auto 0;
  color: var(--body-color);
  line-height: 1.8;
  font-size: 1.6rem;
}
.custom-services-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 2.4rem;
}
.custom-services-card {
  background: #fff;
  border: 1px solid #E8EFF6;
  border-radius: 1.2rem;
  padding: 3.2rem 2.4rem;
  color: var(--body-color);
  box-shadow: 0 2px 8px rgba(0, 18, 51, .04);
}
/* Category tag */
.custom-services-tag {
  display: inline-block;
  font-size: 1rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .8px;
  padding: .3rem .8rem;
  border-radius: .4rem;
  margin-bottom: 1.6rem;
  line-height: 1.6rem;
}
.custom-services-tag--trust {
  background: #E8EFF6;
  color: #196BFF;
}
.custom-services-tag--risk {
  background: #FFF3E0;
  color: #E6830F;
}
.custom-services-tag--ai {
  background: #E8F5E9;
  color: #2E7D32;
}
/* Icon container */
.custom-services-icon {
  width: 7.2rem;
  height: 7.2rem;
  border-radius: 50%;
  background: linear-gradient(135deg, #E8EFF6 0%, #D1E1FF 100%);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 2rem;
}
.custom-services-icon img {
  width: 3.6rem;
  height: 3.6rem;
}
/* Title */
.custom-services-card h4 {
  font-size: 1.7rem;
  font-weight: 700;
  line-height: 2.4rem;
  color: var(--heading-text-color);
  margin-bottom: .8rem;
}
/* Description */
.custom-services-card p {
  font-size: 1.4rem;
  line-height: 2.2rem;
  color: var(--body-color);
  opacity: .7;
  margin: 0;
}
/* Responsive */
@media (max-width: 1199px) {
  .custom-services-card {
    padding: 2.4rem 2rem;
  }
}
@media (max-width: 991px) {
  .custom-services-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 575px) {
  .custom-services-grid {
    grid-template-columns: 1fr;
    gap: 1.6rem;
  }
}
