/*   
Theme Name: Apportronics Theme
Theme URI: Apportronics Theme
Description: This is an exclusive, fully SEO optimized Wordpress theme developed by Apportronics Theme for Apportronics Theme website.
Author: Apportronics Theme
Author URI: Apportronics Theme
*/

@font-face {
    font-family: 'sofia_problack';
    src: url('assets/fonts/sofia_pro_black_az-webfont.woff2') format('woff2'),
        url('assets/fonts/sofia_pro_black_az-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'sofia_probold';
    src: url('assets/fonts/sofia_pro_bold_az-webfont.woff2') format('woff2'),
        url('assets/fonts/sofia_pro_bold_az-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'sofia_proextralight';
    src: url('assets/fonts/sofia_pro_extralight_az-webfont.woff2') format('woff2'),
        url('assets/fonts/sofia_pro_extralight_az-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'sofia_prolight';
    src: url('assets/fonts/sofia_pro_light_az-webfont.woff2') format('woff2'),
        url('assets/fonts/sofia_pro_light_az-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'sofia_promedium';
    src: url('assets/fonts/sofia_pro_medium_az-webfont.woff2') format('woff2'),
        url('assets/fonts/sofia_pro_medium_az-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'sofia_proregular';
    src: url('assets/fonts/sofia_pro_regular_az-webfont.woff2') format('woff2'),
        url('assets/fonts/sofia_pro_regular_az-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'sofia_prosemibold';
    src: url('assets/fonts/sofia_pro_semi_bold_az-webfont.woff2') format('woff2'),
        url('assets/fonts/sofia_pro_semi_bold_az-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

@font-face {
    font-family: 'sofia_proultralight';
    src: url('assets/fonts/sofia_pro_ultralight_az-webfont.woff2') format('woff2'),
        url('assets/fonts/sofia_pro_ultralight_az-webfont.woff') format('woff');
    font-weight: normal;
    font-style: normal;
}

/*------------------------*/

body *,
body *:active,
body *:focus {
    outline: none !important;
    /*line-height: 1.3em;*/
}

html {
    margin: 0;
}

html body {
    font-size: 18px;
    line-height: 1.2;
    color: #505050;
    background: #ffffff;
    /*    ont-family:Sofia Pro;*/
    font-family: 'sofia_proregular';
}

body a {
    color: inherit;
    outline: none !important;
    box-shadow: none !important;
}

body a:hover,
body a:active,
body a:focus {
    opacity: 1;
    text-decoration: none;
    color: inherit;
}

a[href^="tel:"] {
    text-decoration: none !important;
}

a[href^="mailto:"]:hover {
    text-decoration: underline !important;
}


ul {
    padding: 0;
    margin: 0;
    width: 100%;
    float: left;
}

ul li {
    list-style: none;
}

.container {
    max-width: 1320px;
}

a.back {
    /*position: relative;    padding-left: 60px;*/
}

a.back:before {
    /*content: "";    position: absolute;    width: 50px;    height: 2px;    background: linear-gradient(85.33deg, #0062BA 0.49%, #7BC0FE 100.02%);    left: 0;    top: 10px;*/
}

.single-banner a.back {
    margin: 0 0 60px;
    display: block;
    color: #fff;
}

/**********************Headers**********************/
.title-outline {
    color: #000 !important;
    text-shadow: none !important;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    margin: 0 0 20px;
}

h1 {
    font-size: 125px;
    letter-spacing: -1px;
    line-height: 1.0em;
    font-family: 'sofia_probold';
}

h2 {
    font-size: 64px;
    letter-spacing: -3px;
    line-height: 1.3em;
    font-family: 'sofia_proultralight';
}

h3 {
    font-size: 32px;
    line-height: 1.3em;
    font-family: 'sofia_promedium';
}

h4 {
    font-size: 21px;
    line-height: 1.3em;
    font-family: 'sofia_promedium';
}

h5 {}

h6 {}

p {
    font-size: 18px;
    margin: 0 0 20px;
    font-family: 'sofia_prolight';
    line-height: 1.3em;
}

.sub-head {
    font-size: 64px;
    letter-spacing: -3%;
}

.sofiaR p {
    font-family: 'sofia_proultralight';
}

/***************Backgrounds and Colors***************/
.primery-bg {
    background: #005BAC;
}

.primery-color {
    color: #005BAC;
}

.primery-gredient p,
.primery-gredient {
    background: linear-gradient(85.33deg, #0062BA 0.49%, #7BC0FE 100.02%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.font64 p {
    font-size: 64px;
}

.centerLine {
    position: relative;
    padding-bottom: 20px;
}

.centerLine:before {
    content: "";
    position: absolute;
    background-image: url('../../uploads/2022/05/blue_line.svg') !important;
    background-repeat: no-repeat !important;
    background-position: center bottom !important;
    bottom: 0;
    left: 0;
    width: 40px;
    height: 2px;
    right: 0;
    margin: auto;
}

.textWhite,
.colorWhite p {
    color: #fff;
}

.bgCover {
    -webkit-background-size: cover !important;
    -moz-background-size: cover !important;
    -o-background-size: cover !important;
    background-size: cover !important;
}

img {
    max-width: 100%;
    height: auto;
}

.btn {
    background: url('../../uploads/2022/05/btn-border2.png')no-repeat center center !important;
    background-size: 100% 100% !important;
    padding: 16px 34px;
    display: inline-flex;
    align-items: center;
    text-transform: uppercase;
    font-family: 'sofia_prosemibold';
    font-size: 16px;
    letter-spacing: 1px !important;
    transition: all 0.4s ease;
    color: #fff !important;
}

.btn img {
    width: 31px !important;
    height: 10px !important;
    object-fit: cover;
    object-position: center left;
    padding-right: 8px;
    transition: all 0.4s ease;
}

.btn:hover img {
    width: 40px !important;
}

/**********Margins******************/
.mb-10 {
    margin-bottom: 10px !important;
}

.mb-20 {
    margin-bottom: 20px !important;
}

.mb-30 {
    margin-bottom: 30px !important;
}

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

.mb-50 {
    margin-bottom: 50px !important;
}

.mb-60 {
    margin-bottom: 60px !important;
}

.mt-10 {
    margin-top: 10px !important;
}

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

.mt-30 {
    margin-top: 30px !important;
}

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

.mt-50 {
    margin-top: 50px !important;
}

.mt-60 {
    margin-top: 60px !important;
}

/**********Paddings******************/
.pb-10 {
    padding-bottom: 10px !important;
}

.pb-20 {
    padding-bottom: 20px !important;
}

.pb-30 {
    padding-bottom: 30px !important;
}

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

.pb-50 {
    padding-bottom: 50px !important;
}

.pb-60 {
    padding-bottom: 60px !important;
}


.pt-10 {
    padding-top: 10px !important;
}

.pt-20 {
    padding-top: 20px !important;
}

.pt-30 {
    padding-top: 30px !important;
}

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

.pt-50 {
    padding-top: 50px !important;
}

.pt-60 {
    padding-top: 60px !important;
}

.bgCover {
    -webkit-background-size: cover !important;
    -moz-background-size: cover !important;
    -o-background-size: cover !important;
    background-size: cover !important;
}

.single-banner {
    padding: 100px 0;
}

.single-banner .row {
    align-items: center;
}

a.back {
    margin: 0 0 60px;
    padding-left: 0;
    /* display: block; */
    color: #fff;
    display: inline-flex !important;
    align-items: center;
}

a.back img {
    transform: rotate(180deg) translate(0px, -1.5px) !important;
    width: 31px !important;
    height: 10px !important;
    object-fit: cover;
    object-position: center left;
    padding-left: 8px;
    transition: all 0.4s ease;
}

a.back:hover img {
    width: 40px !important;
}

a.back:before {
    display: none;
}

/*------------- Header css here ---------------*/

header.headerUp {
    top: -240px;
}

header.headerDown {
    top: 0px;
}

header.headerUp {
    padding: 15px 0 5px;
    /*background: rgba(0,0,0,0.7) !important;*/
}

.headerUp #toggleMenu img {
    /*width: 55px;*/
    position: relative;
    /*bottom: 5px;*/
}

.header-nav-sec .row {
    justify-content: space-between;
    align-items: center;
}

.site-header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 70;
    background: #000;
    padding: 41.5px 0 10px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    transition: all 0.4s ease;
    box-shadow: 0 0 10px rgb(255 255 255 / 0%);
}

/*.site-header {
    padding: 41.5px 0 10px;
    position: absolute;
    top: 0; 
    width: 100%;
    left: 0;
    right: 0;
    z-index: 70;
}*/
.site-header .row {
    justify-content: space-between;
}

.logo-col {
    text-align: center;
}

.logo-col a {
    display: inline-block;
}

.menu-toggle-col {
    text-align: right;
}

.site-header .socials ul {
    display: flex;
}

.site-header .socials ul li {
    margin-right: 15px;
}

.site-header .container-fluid {
    padding: 0 40px;
}

.site-header .socials a,
.menu-toggle-col span {
    color: #fff;
    cursor: pointer;
}

.menuPage {
    display: block;
    position: fixed;
    opacity: 0;
    visibility: hidden;
    top: 0;
    right: 0;
    height: 100%;
    width: 100%;
    background: rgb(26, 26, 26);
    z-index: 50;
    transform: translate(0, 0);
    transition: all 0.5s ease;
}

.menuPage.open {
    right: 0;
    opacity: 1;
    visibility: visible;
}

.menuPage.slideToLeft {
    transform: translate(-100%, 0px);
}

.menuPage span.closeButton {
    position: absolute;
    z-index: 50;
    top: 42px;
    right: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

.menuRow {
    height: 100%;
    align-items: flex-start !important;
}

.menuRow>div {
    height: 100%;
}

.menuImageCol {
    padding: 60px;
    background-color: rgba(0, 0, 0, 0.5) !important;
    background-size: cover !important;
    background-position: center center !important;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    position: relative;
    opacity: 0;
    transition: all 0.5s ease;
    position: absolute;
    top: 0;
    /*right: 0;*/
    left: 0;
    z-index: 10;
    width: 100%;
    min-width: 100%;
    max-width: 100%;
}

.menuPage.open .menuImageCol {
    width: 50%;
    min-width: 50%;
    max-width: 50%;
}

.menuImageCol.activeImage {
    opacity: 1;
    z-index: 20;
}

.menuImageCol:before {
    position: absolute;
    z-index: 10;
    content: "";
    height: 100%;
    width: 100%;
    left: 0;
    top: 0;
    background: rgba(0, 0, 0, 0.6);
}

.menuImageCol .menuSocial {
    position: absolute;
    z-index: 20;
    display: flex;
    flex-direction: row;
    gap: 7px;
    top: 38px;
    left: 36px;
}

.menuImageCol .menuSocial li a {
    color: #fff;
    padding: 4px;
    display: inline-block;
}

.menuLogo {
    position: relative;
    z-index: 20;
}

div.menuCol {
    padding: 40px 100px;
    overflow-y: auto;
    display: flex;
    align-items: center;
    margin-left: auto;
}

.menuAddress {
    margin-top: auto;
    padding-top: 30px;
}

.mainMenu {}

.mainMenu ul {
    width: 100%;
    float: left;
}

.mainMenu ul li {
    width: 100%;
    float: left;
}

.mainMenu ul li a {
    /*font-family: 'sofia_prolight';*/
    font-family: 'sofia_proextralight';
    line-height: 1.35em;
    font-size: 36px;
    display: inline-block;
    font-weight: 400;
    color: #0062BA;
    background: linear-gradient(85.33deg, #0062BA 0.49%, #7BC0FE 100.02%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.mainMenu>ul>li {
    padding: 0;
}

.mainMenu>ul>li>a {
    position: relative;
}

/*.mainMenu > ul > li.current-menu-item > a:after,
.mainMenu > ul > li.current-menu-ancestor > a:after,*/
.mainMenu>ul>li>a:after {
    content: "";
    position: absolute;
    /* z-index: -1; */
    right: 0;
    width: 0;
    bottom: -1px;
    background: #0062BA;
    height: 1px;
    transition-property: width;
    transition-duration: 0.3s;
    transition-timing-function: ease-out;
}

.mainMenu>ul>li.current-menu-item>a:after,
.mainMenu>ul>li.current-menu-ancestor>a:after,
.mainMenu>ul>li>a:hover:after,
.mainMenu>ul>li>a:focus:after,
.mainMenu>ul>li>a:active:after {
    left: 0;
    right: auto;
    width: 100%;
}

.mainMenu ul.sub-menu {
    padding: 10px 0 0;
}

.mainMenu ul.sub-menu li {
    padding: 5px 0;
}

.mainMenu ul.sub-menu li a {
    font-size: 24px;
}

.menuAddress .copy {
    color: rgba(49, 51, 63, 0.5);
    margin: 10px 0 0;
}

.contactMail {
    margin: 8px 0 0;
}

.contactMail a {
    font-size: 14px;
    line-height: 1.4em;
}

/*--------- Ends Header css ------------*/

.single-product h2+figure {
    line-height: 2px;
    margin-bottom: 50px;
}

.single-product h3 {
    color: #fff;
}

.single-product h4 {
    color: #7BC0FE;
    padding: 30px 0 0;
}

.single-product .p1,
.single-product p {
    color: #fff;
    font-size: 18px;
    /*margin-bottom: 40px;*/
}

.single-product img+figcaption {
    color: #808080;
    font-size: 14px;
}

.single-product .p3 {
    color: #808080;
    font-size: 14px;
}

.single-product hr {
    margin: 0 0 60px;
}

.single-product main>.container>.wp-block-columns>.wp-block-column>.wp-block-columns {
    padding-top: 20px;
}

.mainContent table {
    width: 100% !important;
    max-width: 100%;
    margin: 30px 0 20px;
    color: #fff;
}

.mainContent table td {
    padding: 12px 10px 12px 0 !important;
    vertical-align: top !important;
    text-align: left !important;
    border-bottom: 1px solid #404040;
    font-size: 14px;
}

.mainContent .table_border_top table,
.mainContent .head_top table tr:first-of-type td {
    border-top: 1px solid #404040;
}

.mainContent .head_top table tr:first-of-type td,
.mainContent .head_left table tr td:first-of-type {
    color: #808080;
}

.single-product main ul,
.single-product main ol {
    padding-left: 20px;
    text-align: left;
}

.single-product main ol li {
    color: #808080;
}

.single-product main ul li {
    color: #fff;
    list-style: disc;
}

.productDetailBottom {
    padding: 160px 0;
    background: #000;
}


.single-product .wp-block-media-text figure {
    width: 40px;
    flex-grow: 1;
    margin: 20px 0 0;
}

.single-product .wp-block-media-text figure+div {
    width: 100%;
    padding-right: 0;
    padding-left: 0;
}

/*--------------------*/
.product-leftSide {
    position: sticky;
    top: 70px;
    width: 100%;
    display: inline-block;
}

.product-leftSide li {

    position: relative;
    list-style: none;

}

.product-leftSide li:before {
    /*    content:"";
        position:absolute;
        left:0;
        top:0;
        height:100%;
        width:2px;
        background:#404040;*/
}

.product-leftSide li:after {
    position: absolute;
    content: "";
    left: -2px;
    top: 0;
    height: 100%;
    width: 5px;
    border-radius: 2px;
    background: transparent;
    transition: all 0.4s ease;
}

.product-leftSide li:hover:after {
    background: #005BAC;
}

.product-leftSide a {
    display: inline-block;
}

.product-leftSide>ul {
    position: relative;
    padding-left: 0 !important;
}

.product-leftSide>ul:before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    height: 100%;
    width: 2px;
    background: #404040;
}

.product-leftSide>ul>li {
    margin: 0 0 20px;
    padding: 5px 5px 5px 20px;
    list-style: none !important;
}

.product-leftSide>ul>li:last-of-type {
    margin-bottom: 0;
}

.product-leftSide>ul>li>a {
    font-size: 21px;
    /* color: #0062BA; */
    background: linear-gradient(85.33deg, #0062BA 0.49%, #7BC0FE 100.02%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    font-family: 'sofia_probold';
}

.product-leftSide>ul>li>ul>li a {
    font-size: 16px;
    color: #808080;
}

/*----------------------------*/

/*------------------ Foote CSS ---------------------*/

.footerTop {
    background: #404040;
    padding: 150px 0;
}

.newsNotification {}

.newsNotification span {
    color: #808080;
    font-size: 128px;
    -webkit-text-stroke-color: #808080;
}

.footerNewsletter {
    padding-top: 50px;
}

.footerNewsletter .gform_title {
    display: none;
}

.footerNewsletter .gform_heading {
    padding-bottom: 30px;
}

.footerNewsletter .gform_description {
    font-size: 18px !important;
    color: #fff !important;
    text-align: center !important;
    width: 100%;
    display: inline-block;
}

.footerNewsletter form {
    position: relative;
}

.footerNewsletter .gform_footer {
    position: static;
}

.footerNewsletter .gform_wrapper input[type='submit'] {
    position: absolute;
    right: 10px;
    top: 6px;
    background: url(../../uploads/2022/05/send-icon.svg)no-repeat;
    background-position: center center;
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
    color: transparent !important;
    padding: 0;
    height: 40px;
    width: 40px;
}

.footerMenu>ul>li>a:hover,
.footerMenu>ul>li>ul>li>a:hover {
    background: linear-gradient(85.33deg, #0062BA 0.49%, #7BC0FE 100.02%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

/*-----------------------*/
footer {
    padding: 150px 0;
}

.footerCol1 {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.footerLogo a {
    display: inline-block;
}

svg path {
    transition: all 0.4s ease;
}

.footerLogo a:hover svg path {
    fill: #fff;
}

.footerSocial {
    display: none !important;
}.footerSocial span {
    text-transform: uppercase;
    color: #808080;
}

.footerSocial a {
    margin-left: 20px;
    padding: 5px 12px;
}

.footerSocial a:hover svg path {
    fill: #fff;
}

.footerSocial a img {}

.footerMenu {
    display: inline-block;
    width: 100%;
    padding-top: 150px;
}

.footerMenu ul {}

.footerMenu ul li {}

.footerMenu>ul {
    margin: 0 -15px;
    display: flex;
    flex-direction: row;
}

.footerMenu>ul>li {
    padding: 0 15px;
    width: calc(100% / 6);
    position: relative;
}

.footerMenu>ul>li:before {
    content: "";
    position: absolute;
    background: #404040;
    height: 1px;
    width: calc(100% - 30px);
    left: 0;
    right: 0;
    top: -5px;
    margin: auto;
}

.footerMenu>ul>li>a {
    color: #808080;
    text-transform: uppercase;
    font-weight: 700;
    font-size: 16px;
    display: inline-block;
}

.footerMenu ul.sub-menu {
    display: flex;
    flex-direction: column;
}

.footerMenu ul.sub-menu li {
    padding: 4px 0;
}

.footerMenu ul.sub-menu li a {
    font-size: 16px;
    display: inline-block
}

footer .addressCol {
    margin: -57px 0 0 -25px;
}

footer .addressCol p {
    font-size: 14px;
    font-weight: 400;
    color: #4F4F4F;
}

/*----------*/

.less-more {
    background-color: transparent;
    position: relative;
    overflow: hidden;
}

.less-more h2 {
    font-size: 128px;
    font-style: normal;
    color: #808080;
    -webkit-animation: marquee 30s linear infinite;
    animation: marquee 30s linear infinite;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    will-change: transform;
    padding-right: 40px;
    animation-direction: normal;
    font-family: 'sofia_proregular';
    letter-spacing: 2px;
    -webkit-text-stroke-color: #808080;
}

.marquee__wrapper,
h2.marquee__list {
    /*display: inline-block;*/
    /*display: inline-flex;*/
}

.marquee__list+.marquee__list {
    -webkit-animation: marquee-duplicate 30s -15s linear infinite;
    animation: marquee-duplicate 30s -15s linear infinite;
    animation-direction: normal;
}

.marquee__wrapper {
    white-space: nowrap;
    width: 100vw;
}

@-webkit-keyframes marquee {
    0% {
        -webkit-transform: translate3d(100%, 0, 0);
        transform: translate3d(100%, 0, 0);
    }

    to {
        -webkit-transform: translate3d(-100%, 0, 0);
        transform: translate3d(-100%, 0, 0);
    }
}

@keyframes marquee {
    0% {
        -webkit-transform: translate3d(100%, 0, 0);
        transform: translate3d(100%, 0, 0);
    }

    to {
        -webkit-transform: translate3d(-100%, 0, 0);
        transform: translate3d(-100%, 0, 0);
    }
}

@-webkit-keyframes marquee-duplicate {
    0% {
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }

    to {
        -webkit-transform: translate3d(-200%, 0, 0);
        transform: translate3d(-200%, 0, 0);
    }
}

@keyframes marquee-duplicate {
    0% {
        -webkit-transform: translateZ(0);
        transform: translateZ(0);
    }

    to {
        -webkit-transform: translate3d(-200%, 0, 0);
        transform: translate3d(-200%, 0, 0);
    }
}

/*==================*/
.mainProductType {
    /*overflow: hidden;*/
}

.productTypeOuter {
    padding: 100px 0;
    position: relative;
}

.productTypeOuter:first-of-type {
    padding-top: 0;
}

.productTypeOuter:nth-of-type(even):before {
    content: "";
    position: absolute;
    background: #222222;
    width: 300vw;
    top: 0;
    height: 100%;
    left: -100%;
    z-index: -1;
}

.productBanner {
    min-height: 600px;
}

.productBox {
    padding: 70px 0;
}

/*--------------------*/
.pageBanner {
    min-height: 100vh;
}

.afterPageBanner {
    padding: 100px 0;
    background: #0f0f0f;
}

.page-template-template-ALPD_Technology .afterPageBanner {
    background: #000;
}

.homeTechnology {
    display: inline-block;
    width: 100%;
    background: #0f0f0f;
}


.NumberSection .row>div {
    text-align: center;
}

.NumberSection .row h2 {
    font-family: inherit;
    font-size: 104px;
    font-family: 'sofia_probold';
}

.NumberSection h3,
.NumberSection p {
    color: #fff;
}

.technologyInner {
    padding: 100px 0;
    margin: 100px 0;
    min-height: 500px;
    width: 100%;
    display: inline-block;
}

.homeProducts h3 {
    font-family: 'sofia_proregular';
}

.aboutTextDiv {}

.aboutTextIcon {
    padding-bottom: 30px;
}

.aboutTextIcon img {
    max-height: 105px;
}

.yearHead {
    position: relative;
    margin-bottom: 20px;
    z-index: 10;
}

.yearHead h3 {
    font-family: 'sofia_proregular';
    position: relative;
    padding: 0px 30px 5px !important;
    z-index: 40;
    margin: 0;
}

.yearHead h3:after,
.yearHead h3:before {
    content: "";
    position: absolute;
    background: #7BC0FE;
    width: 1000px;
    height: 2px;
    bottom: 0;
    top: 0;
    margin: auto;
}

.yearHead h3:after {
    left: 100%;
}

.yearHead h3:before {
    right: 100%;
}

.aboutBottom {
    padding-bottom: 100px;
}

.aboutBottom h2 {
    font-family: 'sofia_proextralight';
}

/*-------------------*/

.benefitSection {}

.benefitBlockRow {
    padding: 30px 0 80px;
}

.benefitBlock {
    display: flex;
    flex-direction: row;
    padding-bottom: 40px;
}

.benefitBlock .benIcon {
    min-width: 180px;
    max-width: 180px;
    width: 180px;
    padding-right: 30px;
}

.benefitBlock .benIcon img {}

.benefitSection h4 {
    color: #7BC0FE;
}

.benefitSection p {
    color: #fff;
}

.greyBG {
    background: #222222;
}

.darkGrayBG {
    background: #0f0f0f;
}

.improvementSection {
    padding: 100px 0;
}

/*------------------------*/
.formSection {
    padding: 100px 0;
}

.contactForm form input[type='submit'] {
    background: #000 !important;
    border-radius: 30px !important;
    padding: 16px 34px;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    text-transform: uppercase;
    font-family: 'Montserrat', sans-serif !important;
    font-size: 16px;
    font-weight: 600;
    letter-spacing: 1px !important;
    transition: all 0.4s ease;
    color: #fff !important;
    border: 2px solid #000 !important;
    text-align: center !important;
    min-width: 180px;
    cursor: pointer;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.2) !important;
}

.contactForm form input[type='submit']:hover {
    background: #fff !important;
    color: #000 !important;
    box-shadow: 0 4px 20px rgba(0, 180, 255, 0.4) !important;
    border-color: #00b4ff !important;
}

.contactForm .gform_footer {
    padding-top: 20px;
    text-align: center;
    display: inline-block;
    width: 100%;
    position: relative;
}

.contactForm .gform_footer input[type='submit']+img {
    position: absolute;
    transform: translate(0px, 16px);
}

.contactAddress {
    padding: 50px 0 150px;
}

.addressInner {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}

.addressInner>* {
    padding: 10px 0;
    margin: 0;

}

.addressInner h4 {
    color: #7BC0FE;
}

.addressInner p {
    color: #fff;
}

.newsSection {
    padding: 100px 0;
}

/* Specific styling to align Aprende Más buttons right and shrink their size */
.productBox .text-lg-left {
    text-align: right !important;
}

.productBox .btn {
    padding: 8px 16px !important;
    font-size: 14px !important;
    white-space: nowrap !important;
}

.productBox .btn img {
    width: 14px !important;
    margin-right: 4px !important;
}

.backLink {
    padding: 50px 0 100px;
}

.backLink a {
    transition: all 0.4s ease;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #fff;
}

.backLink a:hover {
    color: #7BC0FE;
}

.backLink a img {
    /*margin-right: 15px;*/
    /*transform: translate(0px, 1px);*/
}

.newsPost {
    padding: 20px 0;
    border-top: 1px solid #404040;
}

.newsPost p {
    transition: all 0.4s ease;
    margin: 0;
}

.newsPost p:hover {
    color: #7BC0FE
}

.postContent {
    padding: 100px 0;
}

.detailPost .wp-block-separator {
    display: inline-block;
    width: 100%;
    margin: 50px 0;
    border-color: #404040 !important;
}

.detailPost a {
    color: #7BC0FE;
}

/*---------------------*/
.downloadCenter {
    padding: 100px 0 50px;
    background: #222222;
    background: #0f0f0f;
}

.downloadCat {
    display: inline-block;
    width: 100%;
    margin: 0 0 100px;
}

.downloadCat .downloadCatName {
    display: inline-block;
    width: 100%;
    padding-bottom: 60px;
}

.downloadCat .downloadCatName h2 {}

.downloadCat .downloadCatName h2:before {
    right: auto;
}

.downloadList {
    display: inline-block;
    width: 100%;
    padding-left: 0 !important;
}

.downloadList li {
    border-top: 1px solid #404040;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    align-items: center;
    padding: 16px 0 18px;
}

.downloadList li:last-of-type {
    border-bottom: 1px solid #404040;
}

.downloadList li h4 {
    color: #fff;
    margin: 0;
    display: inline-block;
    line-height: 1.4em;
    padding-top: 0;
}

.downloadList li .downloadIcon {
    display: inline-block;
    width: 30px;
    min-width: 30px;
    max-width: 30px;
}

.downloadList li .downloadIcon img {}

/*----------------------*/

.advantageSection {
    padding: 120px 0;
}

.marketSection {}

.marketRow {}

.marketRow h4 {
    color: #7BC0FE;
}

.marketRow p {
    color: #fff;
}

/*------------------------------*/

.tabSection {}

.gradientDark {}

.tabNav {
    display: flex;
    justify-content: space-around;
    position: relative;
    padding: 50px 0;
}

.tabNav:before {
    content: "";
    position: absolute;
    /* background: linear-gradient(85.33deg, #0062BA 0.49%, #7BC0FE 100.02%); */
    /* -webkit-background-clip: text; */
    /* -webkit-text-fill-color: transparent; */
    background: #0062BA;
    width: 100%;
    height: 1px;
    top: 70px;
    left: 0;
    /* z-index: -1; */
    /* background: #fff; */
}

.tabNav li {
    /*flex-grow: 1;*/
    text-align: center;
    padding: 0 20px;
    background: #222;
    position: relative;
    z-index: 10;
}

.tabNav li a {
    transition: all 0.3s ease;
    font-size: 32px;
    background: linear-gradient(90deg, #034581 0, #52adff 200.02%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}

.tabNav li a.active {
    /*    background: linear-gradient(85.33deg, #066dc8 0.49%, #329eff 100.02%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;*/
}

.impTab li a {
    opacity: 0.45;
    transition: all 0.3s ease;
}

.impTab li a.active {
    opacity: 1;
}

.tabData {
    display: inline-block;
    width: 100%;
}

.tabData p {
    color: #fff;
}

.tabData ol {
    padding-left: 22px;
}

.tabData li {
    color: #fff;
    line-height: 1.4em;
}

.tabData h4 {
    color: #7BC0FE;
}

/*-------------*/
.advantageTab {
    padding-bottom: 100px;
}

.adNav {
    justify-content: space-between;
}

.adNav li {
    background: #000;
    padding: 0;
}

.adNav li a {
    display: inline-flex;
    flex-direction: column;
    font-size: 14px;
    max-width: 75px;
    color: #7BC0FE !important;
    line-height: 1.4em;
    opacity: 0.5;
    transform: scale(1) translate(0);
    transition: all 0.3s ease;
}

.adNav li span {
    padding-bottom: 10px;
}

.adNav li span svg,
.adNav li span img {
    max-width: 40px;
    max-height: 40px;
}

.adNav li a.active {
    transform: scale(1.4) translate(0px, 7px);
    opacity: 1;
}






/*input:focus::-webkit-input-placeholder { color:transparent; }
input:focus:-moz-placeholder { color:transparent; } 
input:focus::-moz-placeholder { color:transparent; } 
input:focus:-ms-input-placeholder { color:transparent;}*/


input::-webkit-input-placeholder {
    color: #404040;
    opacity: 1 !important;
}

input:-moz-placeholder {
    color: #404040;
    opacity: 1 !important;
}

input::-moz-placeholder {
    color: #404040;
    opacity: 1 !important;
}

input:-ms-input-placeholder {
    color: #404040;
    opacity: 1 !important;
}

textarea::-webkit-input-placeholder {
    color: #404040;
    opacity: 1 !important;
}

textarea:-moz-placeholder {
    color: #404040;
    opacity: 1 !important;
}

textarea::-moz-placeholder {
    color: #404040;
    opacity: 1 !important;
}

textarea:-ms-input-placeholder {
    color: #404040;
    opacity: 1 !important;
}

/*================ Gravity form ===================*/
.gform_wrapper .gform_description {
    font-size: 56px;
    color: #F03223;
    line-height: 1.2em;
}

.gform_wrapper .gform_submission_error {
    font-size: 20px;
    text-align: center;
    color: #fff;
    line-height: 1.4em;
    color: #ffc84c;
    letter-spacing: 0;
}

.gform_wrapper {
    margin: 0;
}

.gform_wrapper .gform_title {
    display: none;
}

.gform_wrapper .gform_fields {
    margin: 0 -15px;
    /*grid-row-gap: 0 !important;*/
}

.gform_wrapper .gfield {
    padding: 0 15px;
    width: 100%;
    float: left;
    margin: 0 0 30px;
}

.gform_wrapper .gfield.gfield--width-half {
    width: 50%;
}

.gform_wrapper .ginput_container {
    width: 100%;
    float: left;

}

.gform_wrapper .ginput_container_consent {
    margin-top: 20px;
}

.gform_wrapper .validation_message {
    font-size: 13px;
    /*color: #ffc84c;*/
    color: #ff0000;
    margin: 0 0 10px;
}

.gform_wrapper label.gfield_label {
    display: none;
}

.gform_wrapper form input[type="text"],
.gform_wrapper form input[type="email"],
.gform_wrapper form select,
.gform_wrapper form textarea {
    outline: none !important;
    box-shadow: inset 0px 2px 5px rgba(0, 0, 0, 0.05) !important;
    background: #ffffff !important;
    border: 1px solid #e0e0e0 !important;
    color: #333333 !important;
    border-radius: 12px;
    width: 100% !important;
    padding: 18px 26px;
    font-style: normal;
    font-family: 'Montserrat', sans-serif !important;
    transition: all 0.3s ease;
}

.gform_wrapper form input[type="text"]:focus,
.gform_wrapper form input[type="email"]:focus,
.gform_wrapper form select:focus,
.gform_wrapper form textarea:focus {
    border-color: #00b4ff !important;
    box-shadow: 0 0 10px rgba(0, 180, 255, 0.1) !important;
}

.gform_wrapper form input[type="text"],
.gform_wrapper form select,
.gform_wrapper form input[type="email"] {
    height: 54px;
}

.gform_wrapper form textarea {
    height: 280px;
    resize: none;
    padding-top: 18px;
}


/*------------------------*/
.gform_wrapper form input[type="password"] {
    outline: none !important;
    box-shadow: inset 0px 2px 5px rgba(0, 0, 0, 0.05) !important;
    background: #ffffff !important;
    border: 1px solid #e0e0e0 !important;
    color: #333333 !important;
    border-radius: 12px;
    width: 100% !important;
    padding: 18px 26px;
    font-style: normal;
    font-family: 'Montserrat', sans-serif !important;
    height: 54px;
}

#gform_fields_login div#field_0_3 {
    display: none;
}

.gf_login_form .gform_body {
    width: 75%;
}

#gform_fields_login div#field_0_1,
#gform_fields_login div#field_0_2 {
    width: 50%;
}

.gf_login_form input#gform_submit_button_0 {
    background: url('assets/images/login-btn.png') no-repeat;
    /* display: block; */
    background-size: contain;
    width: 145px;
    height: 58px;
    font-size: 0;
    margin-left: 25px;
    border: none !important;
}

.gf_login_form {
    width: 80%;
    margin: 40px auto 0;
}

.gf_login_form form#gform_0 {
    display: flex;
    justify-content: center;
}

/*===================*/

.homeBanner {
    position: relative;
}

.homeBanner:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, .5);
    z-index: 20;
}

.homeBanner video {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 10;
}

.homeBanner .container {
    position: relative;
    z-index: 30;
}

/* ===== White theme overrides (applied via adding .white-theme to <html>) ===== */
html.white-theme {
    background: #fff !important;
    color: #000 !important;
}

html.white-theme body,
html.white-theme body * {
    color: #000 !important;
    background-color: transparent !important;
}

/* Force readable color for elements that used white classes */
html.white-theme .textWhite,
html.white-theme .colorWhite,
html.white-theme .has-white-color {
    color: #000 !important;
}

/* Fade images toward white using an inset overlay so they blend smoothly */
html.white-theme img {
    transition: filter 0.6s ease, box-shadow 0.6s ease, opacity 0.6s ease;
    /* apply a soft white wash */
    box-shadow: inset 0 0 0 1000px rgba(255, 255, 255, 0.55);
}

/* For background images in known containers add a white gradient overlay */
html.white-theme .menuImageCol:before,
html.white-theme .productBanner:before,
html.white-theme .homeBanner:before {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.95) 0%, rgba(255, 255, 255, 0.6) 60%);
    pointer-events: none;
}

/* Keep site header readable */
html.white-theme .site-header,
html.white-theme header.site-header {
    background: #ffffff !important;
    box-shadow: 0 0 12px rgba(0, 0, 0, 0.06) !important;
}

/* Toggle control (will be created by main JS) */
#theme-toggle-ctrl {
    position: fixed;
    right: 18px;
    bottom: 18px;
    z-index: 9999;
    background: #000;
    color: #fff;
    padding: 10px 12px;
    border-radius: 6px;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 12px;
    cursor: pointer;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.2);
}

html.white-theme #theme-toggle-ctrl {
    background: #000;
    color: #fff;
}

html:not(.white-theme) #theme-toggle-ctrl {
    background: #fff;
    color: #000;
    border: 1px solid #ddd;
}

/* Mark elements we change so repeated runs skip them */
[data-contrast-fixed="true"] {
    color: #000 !important;
}

/* end white-theme overrides */

/* --- USER REQUESTED WHITE THEME (FORCE ALL) --- */
* {
    color: #000000 !important;
    -webkit-text-fill-color: initial !important;
    text-shadow: none !important;
}

body {
    padding-top: 100px !important;
    /* Fix header overlap */
}

body,
.site-header,
footer,
.footerTop,
.productDetailBottom,
.menuPage,
.mainContent table,
.elementor-section,
.elementor-background-overlay,
.elementor-widget-container,
.elementor-column-wrap,
main,
section,
header,
.elementor-container {
    background-color: #ffffff !important;
}

/* Override previous dark backgrounds specifically */
.site-header,
.footerTop,
.productDetailBottom,
.menuPage,
.elementor-background-overlay,
.menuImageCol,
.afterPageBanner,
.darkGrayBG,
.homeTechnology,
.greyBG,
.improvementSection {
    background-color: #ffffff !important;
    background-image: none !important;
}

/* Glassmorphism for tabs to add life and depth */
.tabNav li {
    background: rgba(255, 255, 255, 0.7) !important;
    backdrop-filter: blur(10px) !important;
    -webkit-backdrop-filter: blur(10px) !important;
    border: 1px solid rgba(255, 255, 255, 0.5) !important;
    box-shadow: 0 8px 32px 0 rgba(0, 180, 255, 0.1) !important;
    border-radius: 15px 15px 0 0 !important;
    margin: 0 5px;
}

/* Inject the new premium background image with a subtle elegant overlay */
.pageBanner,
.bgCover {
    background-image: linear-gradient(135deg, rgba(255, 255, 255, 0.8) 0%, rgba(240, 248, 255, 0.6) 100%), url('../../uploads/2022/formal_tech_bg.png') !important;
    background-size: cover !important;
    background-position: center !important;
    background-attachment: fixed !important;
    box-shadow: 0px 15px 40px rgba(0, 150, 255, 0.15) !important;
    position: relative;
    z-index: 10;
    min-height: 400px;
}

/* Fix buttons which used white text/borders on dark backgrounds */
.btn {
    color: #000000 !important;
    border: 2px solid #000000 !important;
    background-image: none !important;
    background-color: transparent !important;
    border-radius: 30px;
    transition: all 0.3s ease !important;
}

/* Neon blue hover effect for buttons */
.btn:hover {
    border-color: #00b4ff !important;
    color: #00b4ff !important;
    box-shadow: 0 0 15px rgba(0, 180, 255, 0.4) !important;
}

/* Change icon color on hover so it matches the neon text */
.btn:hover img {
    filter: invert(50%) sepia(100%) saturate(300%) hue-rotate(180deg) brightness(100%) contrast(100%) !important;
}

/* Add drop shadow to the header for visual separation (desnivel) */
.site-header {
    box-shadow: 0px 5px 20px rgba(0, 180, 255, 0.12) !important;
}

/* Redefine subtitle accent line */
.centerLine {
    background-image: linear-gradient(90deg, transparent, #00b4ff, transparent) !important;
    background-size: 100% 2px !important;
    background-position: bottom center !important;
    background-repeat: no-repeat !important;
}

/* Invert button and menu icons to black */
.btn img,
.closeButton img,
.toggleMenu img {
    filter: invert(1) !important;
    opacity: 1 !important;
}

/* Make advantage section flat icons pure black */
.adNav li img {
    filter: brightness(0) !important;
}

/* Smart invert for the graphs: white becomes black, blue inverts to orange and hue-rotates back to blue */
.adData img {
    filter: drop-shadow(0px 0px 4px rgba(0, 0, 0, 1)) !important;
}

/* Override inline styles forcing white text on superscripts/subscripts */
p sub,
p sup,
.tab-content sub,
.tab-content sup,
.colorWhite {
    background: none !important;
    -webkit-text-fill-color: initial !important;
    color: #000000 !important;
}

[style*="background-color: #000"],
[style*="background-color: rgb(0, 0, 0)"],
[style*="background: #000"] {
    background-color: #ffffff !important;
}

svg path {
    fill: #000000 !important;
}

/* Formal font override for titles */
@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@400;600;700;800&display=swap');

h1,
h2,
h3,
h4,
h5,
h6,
.sub-head {
    font-family: 'Montserrat', sans-serif !important;
}

/* Solid black titles to remove the blue gradient as per user request */
.title-outline,
.primery-gredient {
    font-family: 'Montserrat', sans-serif !important;
    font-weight: 800 !important;
    background: none !important;
    -webkit-text-fill-color: #000 !important;
    color: #000 !important;
    text-shadow: none !important;
}