/*
Theme Name: Divi Child
Author: 
Description: Your description goes here
Version: 1.0
Template: Divi

This is the child theme for Divi theme, generated with Generate Child Theme plugin by catchthemes.

(optional values you can add: Theme URI, Author URI, License, License URI, Tags, Text Domain)
*/


/* Google Fonts loaded via wp_enqueue_style in functions.php for better performance */

body{
background:#F8F8F8;
}
.et_pb_row {
max-width: 1280px !important;
width:100% !important;
}
.header-main .apply-now-btn a {
    padding: 0px 30px !important;
    border-radius: 50px;
    background-color: #0F00F0 !important;
    transition: all 0.3s ease-in-out !important;
    height:53px;
}
.header-main .apply-now-btn {
    align-items: center !important;
}
.header-main .login-btn {
    align-items: center !important;
    padding: 0px !important;
}
.header-main .login-link{
 padding: 0px 30px !important;
 border-radius: 50px;
 background-color: #fff;
color:#0F00F0 !important;
 height:53px;
   }
.header-main .apply-now-btn a:hover{
background-color: #DAB04E !important;
transition: all 0.3s ease-in-out !important;
 color: #121235 !important;  
}
.header-main .et_pb_menu .et-menu > li:not(.apply-now-btn) > a {
    position: relative;
}
.header-main .et_pb_menu .et-menu > li:not(.apply-now-btn, .login-btn) > a::before {
    content: "";
    position: absolute;
    left: 50%;
    bottom: 10px;
    height: 2px;
    background-color: #fff;
    width: 0%;
    transform: translateX(-50%);
    transition: all 0.3s ease;
}
.header-main .et_pb_menu .et-menu > li:not(.apply-now-btn) > a:hover::before {
    width: calc(100% - 0px);
}
.header-main .et_pb_menu .et-menu > li > a {
    padding-bottom: 0px;
    padding-top:0px;
}
/* header css end */

/* footer css start */
.footer_main .et_pb_menu .et_pb_menu__menu>nav>ul{
display:block;
}
.footer_main .login-btn {
    margin-top: 0px !important;
}
.footer_main li a {
    position: relative;
    transition: .2s linear;
}
.footer_main li a::before {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    height: 2px;
    background-color: #121235;
    width: 0%;
    transition: .2s linear;
}

.footer_main li a:hover::before {
    width: 100%;
}
.enquiry-grid{
  display: grid;
    grid-template-columns: repeat(2, 1fr);
    row-gap: 0;
    column-gap: 32px;
 }

.enquiry-fotter input, .enquiry-fotter select, .enquiry-fotter textarea {
 width: 100%;
 padding: 15px 12px !important;
 border: none;
 background-color: #DADADA !important;
 border-radius: 5px;
 font-family: "Source Sans 3", sans-serif !important;
}
.enquiry-fotter input::placeholder, .enquiry-fotter select::placeholder{
 color:#000;
}
.enquiry-fotter textarea {
    width: 100%;
}
.enquiry-fotter .wpcf7-submit{
  font-family: "Share Tech", sans-serif !important;
  width: auto;
  margin: auto;
  display: block;
  padding: 16px 50px !important;
  border-radius: 50px;
  background-color: #DAB04E !important;
  color: #121235 !important;
  transition: all 0.3s ease-in-out !important;
  border: none;
  font-size: 20px;
cursor:pointer;
}
.enquiry-fotter .wpcf7-submit:hover{
  background-color: #160CF4 !important;
  color: #fff !important;
  transform: translateY(-4px);
  transition: all 0.3s ease-in-out !important;
}
.enquiry-fotter label {
    font-size: 16px;
    color: #DAB04E;
    padding-left: 15px;
    text-transform: uppercase !important;
}
.enquiry-fotter .wpcf7 input[type="file"] {
    cursor: pointer;
    color: #000;
    border: none !important;
    padding: 12px 15px !important;
}
.enquiry-fotter input[type="file"] {
    cursor: pointer;
    color: #000;
    border: none !important;
    padding: 12px 15px !important;
}
div#footer-sec {
    background-image: url(/wp-content/uploads/2026/04/courses-bg-1.webp);
    background-color: transparent;
    background-position: top left !important;
    background-size: cover !important;
    border-radius: 0 50px 0 0 !important;
    position: relative;
}
#footer-sec::before {
    content: "";
    position: absolute;
    left: -210px;
    top: 200px;
    z-index: 1;
    width: 420px;
    height: 420px;
    background-image: url(/wp-content/uploads/2025/04/golden-shape1.png);
    background-repeat: no-repeat;
    background-size: cover;
}
#footer-sec::after {
    content: "";
    position: absolute;
    right: -200px;
    top: 200px;
    z-index: 2;
    width: 420px;
    height: 420px;
    background-image: url(/wp-content/uploads/2025/04/golden-shape2.png);
    background-repeat: no-repeat;
    background-size: cover;
  
}
#footer-sec{
  overflow-x:hidden;    
}
#pw_footer .et_pb_row {
    max-width: 1400px !important;
}
.form-textarea {
    margin-top: 25px;
    margin-bottom: 25px;
}
.video_banner .plyr__controls {
    display: none;
}
/* .video_banner:before {
    content: "";
    position: absolute;
    right: -100px;
    bottom: -35px;
    z-index: 2;
    width: 500px;
    height: 500px;
    background-image: url(/wp-content/uploads/2025/04/golden-shape1.png);
    background-repeat: no-repeat;
    background-size: cover;
    z-index:999;
} */
.video_banner{
overflow-x:hidden !important;
}
.burd-icon img {
    transform: rotate(150deg) translateY(-13%);
    width: 18px;
    height: 17px;
}
.burd-icon .et_pb_blurb_container {
    padding: 0px !important;
}
.burd-icon .et_pb_blurb_content {
    margin-left: 0px;
}
.center-icon .et_pb_blurb_content.et_flex_module{
    display: flex;
    justify-content: center;
}
.et_pb_button:hover {
    transform: translateY(-4px);
    transition: all 0.3s linear !important;
}
.we-do-section::before {
    content: "";
    position: absolute;
    left: -100px;
    bottom:-200px;
    z-index: 999999;
    width: 360px;
    height: 360px;
    background-image: url(/wp-content/uploads/2025/04/golden-shape1.png);
    background-repeat: no-repeat;
    background-size: cover;
}
.testimonial_slider .et_pb_group_carousel_arrow_prev,
.testimonial_slider .et_pb_group_carousel_arrow_next {
    width: 26px;
    height: 26px;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
	cursor: pointer;
}

.testimonial_slider .et_pb_group_carousel_arrow_prev {
    background-image: url("/wp-content/uploads/2025/04/left-team.png");
}
.testimonial_slider .et_pb_group_carousel_arrow_next {
    background-image: url("/wp-content/uploads/2025/04/left-team.png");
    transform: rotate(180deg);
}
.testimonial_slider span.et-pb-icon {
    display: none;
}
.about-banner .et_pb_image {
    overflow-x: hidden;
}
.about-banner .et_pb_image img{
left:35px;
}
.before-banner .et_pb_image {
    overflow-x: hidden;
}
.before-banner .et_pb_image img{
left:-150px;
width:350px;
}
.program-banner::before {
    content: "";
    position: absolute;
    left: 0px;
    top: 0px;
    width: 100%;
    height: 100%;
    background: #000;
    opacity: .4;
}
.accordian_icon .et_pb_toggle_open::before {
    content: "";
    position: absolute;
    left: -21px;
    top: 26px;
    width: 15px;
    height: 15px;
    background-image: url(/wp-content/uploads/2025/04/gold-arrow-h2.png);
    background-repeat: no-repeat;
    background-size: cover;
    transform: rotate(90deg);
}
.testmonial_quate .et_pb_testimonial_portrait:before {
    box-shadow: none;
}
.test_hide p {
    column-count: 2;
}
.testmonial_quate .et_pb_testimonial_description {
    display: flex !important;
}

.testmonial_quate .et_pb_testimonial_author::before {
  content: "";
  position: absolute;
  left: 0px;
  top: 0;
 width: 40px;
  height: 40px;
 background-image: url(/wp-content/uploads/2025/04/quote.png);
  background-size: contain;
  background-repeat: no-repeat;
}
.test_click{
cursor:pointer;
}
 .page-id-187 div#footer-sec {
    background: #fff !important;
  padding-top:10px !important;
}
 .page-id-507 div#footer-sec {
    background-color: #99474700 !important;
}
.page-id-913 div#footer-sec {
    background-color: #99474700 !important;
}
.faq_sec .et_pb_toggle_title::after {
  content: "";
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  font-size: 40px;
  color:#0e00ef;
}

.faq_sec .et_pb_toggle_open .et_pb_toggle_title::after {
  content: "-";
}
.video_banner{
overflow:hidden;
}
.video_banner .plyr video {
    height: 1000px !important;
    object-fit: cover;
}
@media (max-width: 1300px) {
.header-main .et_pb_menu .et-menu > li {
    padding-left: 4px;
    padding-right: 4px;
  }

  .header-main .et_pb_menu .et-menu > li > a {
    font-size: 15px;
  }
.footer_main #mobile_menu2 {
    display: block !important;
     padding: 0;
    border: none;

}
.footer_main span.mobile_menu_bar {
    display: none;
}

.footer_main .et_mobile_menu {
    position: unset;
    box-shadow: unset;
    background: none;
}
.footer_main .et_mobile_menu li a{
    border:none;
    padding:0px 0px 10px;
}
.accordian_icon .et_pb_toggle_open::before{
		left:-5px;
	}
}

@media (max-width:767px){
	.footer_main #mobile_menu2 {
    display: block !important;
     padding: 0;
    border: none;

}
.footer_main span.mobile_menu_bar {
    display: none;
}

.footer_main .et_mobile_menu {
    position: unset;
    box-shadow: unset;
    background: none;
}
.footer_main .et_mobile_menu li a{
    border:none;
    padding:0px 0px 10px;
}
.enquiry-grid{
grid-template-columns: repeat(1, 1fr);
    row-gap: 0px;
}
.form-textarea {
    margin-top: 15px;
}
   #footer-sec::before {
        top: 80px;
        width: 320px;
        height: 320px;
        left: unset !important;
        right: -210px;
    }
   #footer-sec::after {
        right: -120px;
        top: unset;
        bottom: 0px;
        z-index: 2;
        width: 320px;
        height: 220px;
    }
.test_hide p {
    column-count: 1;
}	

}


@media (max-width:1092px) and (min-width:767px){
.how_we_hire .et_pb_row.et_pb_row_nested{
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
}
.candidate_grid{
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.candidate_grid .et_pb_column{
    width: 100%;
}
.how_we_hire .et_pb_column{
    width: 100%;
	
}

}






/* ================================================================
   VENDOR CONNECT — POPUP CSS
   Matches vendorconnect.me (main/live site) exactly
   ================================================================ */

/* Body scroll lock */
body.vc-modal-open { overflow: hidden !important; }

/* ── SHARED MODAL BASE ────────────────────────────────────── */
.modal {
    position: fixed;
    top: 0; left: 0; right: 0; bottom: 0;
    z-index: 99999;
    display: flex;
    align-items: flex-start;
    justify-content: center;
    background: linear-gradient(180deg, #160CF4 0%, #121235 100%);
    overflow-y: auto;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease;
    padding: 60px 20px 40px;
}
.modal.home-open-popup {
    opacity: 1;
    visibility: visible;
}
.modal .modal-content {
    position: relative;
    width: 100%;
    max-width: 900px;
    margin: auto;
    color: #fff;
}
.modal .modal-content span.close {
    position: absolute;
    right: 0;
    font-size: 50px;
    line-height: 0;
    filter: invert(1);
    height: 0;
    top: 0;
    cursor: pointer;
    z-index: 10;
}

/* ── APPLY NOW MODAL ─────────────────────────────────────── */

/* Course header section (shows when .show-course-details active) */
#apply-for-course #course-header-details {
    display: none;
    flex-direction: column;
    margin-bottom: 25px;
    padding: 0 20px 20px;
    max-width: 800px;
    margin-left: auto;
    margin-right: auto;
}
#apply-for-course.show-course-details #course-header-details {
    display: flex;
}
#apply-for-course.show-course-details {
    background: linear-gradient(180deg, #0F00F0 0%, #0F0E28 100%) !important;
}
#apply-for-course.show-course-details .modal-content > h2 { display: none; }
#apply-for-course.show-course-details .wpcf7 {
    background: linear-gradient(180deg, #160CF4 0%, #121235 100%) !important;
    padding: 17px;
}
#course-client-logo-wrapper {
    text-align: center;
    padding: 25px;
    background: #fff;
    width: 100%;
}
#course-client-logo { height: auto; width: 281px; max-width: 100%; }
#course-display-title {
    text-align: center;
    font-size: clamp(28px, 4vw, 48px);
    color: #fff !important;
    margin: 30px 0 !important;
    line-height: 1.2;
    display: block;
}
#course-more-details-wrapper {
    font-size: 18px;
    color: #fff;
    font-family: "Share Tech", sans-serif;
}
#course-more-details-wrapper p { color: #fff; }

/* Modal title — Apply Now heading */
#apply-for-course .modal-content > h2,
#apply-for-course .modal-content h2 {
    font-size: 36px;
    text-align: center;
    margin-bottom: 34px !important;
    color: #fff !important;
    font-family: "Share Tech", sans-serif;
    line-height: 1.2;
}

/* CF7 form — 2 column grid matching screenshot */
/* Apply Now form — 2 column grid
   Layout: First Name | Last Name
           State      | City
           Applying to| Email
           Phone      | Upload Resume
           Please choose one (full width)
           Submit (full width, centered)
*/
#apply-for-course .wpcf7-form {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    row-gap: 25px;
    column-gap: 32px;
}
#apply-for-course .wpcf7-form p { margin: 0; }

/* Classes added by JS for reliable full-width targeting */
#apply-for-course .wpcf7-form p.vc-full  { grid-column: span 2; }
#apply-for-course .wpcf7-form p.vc-submit { grid-column: span 2; text-align: center; }

/* Response output — always full width */
#apply-for-course .wpcf7-form .wpcf7-response-output,
#apply-for-course .wpcf7 .wpcf7-response-output { grid-column: span 2; }
/* Inputs, selects, textareas — exact match to TwentyTwentyOne child */
#apply-for-course .wpcf7-form input:not([type=submit]),
#apply-for-course .wpcf7-form select,
#apply-for-course .wpcf7-form textarea {
    width: 100%;
    padding: 15px 12px;
    border: none;
    background-color: #DADADA;
    border-radius: 5px;
    font-family: "Source Sans 3", sans-serif;
    font-size: 14px;
    color: #121235;
    box-sizing: border-box;
    outline: none;
}
#apply-for-course .wpcf7-form textarea { height: 102px; resize: auto; }
#apply-for-course .wpcf7-form input::placeholder,
#apply-for-course .wpcf7-form textarea::placeholder {
    font-family: "Source Sans 3", sans-serif;
    font-size: 14px;
    color: #121235;
}
#apply-for-course .wpcf7-form input[type=file]::file-selector-button {
    border: none;
    background-color: #DADADA;
    border-right: 1px solid #000;
}
#apply-for-course .wpcf7-form input:focus,
#apply-for-course .wpcf7-form textarea:focus { outline: none !important; }

/* Labels */
#apply-for-course .wpcf7-form label {
    font-size: 16px;
    color: #DAB04E;
    padding-left: 15px;
    text-transform: uppercase;
    display: block;
    margin-bottom: 4px;
    font-family: "Share Tech", sans-serif;
}
#apply-for-course .wpcf7-form label span { display: inline-block; width: 100%; }

/* Submit button */
#apply-for-course .wpcf7-form p:nth-last-of-type(1) input[type=submit] {
    font-family: "Share Tech", sans-serif;
    width: auto;
    margin: auto;
    display: block;
    padding: 16px 50px;
    border-radius: 50px;
    font-size: 16px;
    background-color: #DAB04E !important;
    color: #121235 !important;
    cursor: pointer;
    border: none;
    text-transform: uppercase;
    transition: all 0.3s ease-in-out;
}
#apply-for-course .wpcf7-form p:nth-last-of-type(1) input[type=submit]:hover {
    background-color: #160CF4 !important;
    color: #fff !important;
    transform: translateY(-4px);
}

/* Response output */
#apply-for-course .wpcf7-response-output {
    margin: 0 !important;
    text-align: center;
    grid-column: span 2;
    color: #fff !important;
    border: none !important;
}
#apply-for-course .wpcf7-not-valid-tip { color: #ff6b6b; font-size: 12px; }

/* ── COURSE DETAIL — shown inside Apply Now modal (.show-course-details) ── */
/* Plugin handles this via cp_get_course_details AJAX */
/* Logo, title, moredetails shown above the form */

/* Detail content */
.vc-cd-wrap { color: #fff; }

.vc-cd-logo-row {
    display: inline-block;
    background: #fff;
    padding: 12px 24px;
    border-radius: 8px;
    margin-bottom: 24px;
    min-width: 1px; /* collapse if hidden by onerror */
}
.vc-cd-logo {
    max-height: 60px;
    max-width: 220px;
    width: auto;
    object-fit: contain;
    display: block;
}
/* Hide logo row if image fails to load (onerror sets display:none on parent) */
.vc-cd-logo-row[style*="display:none"],
.vc-cd-logo-row[style*="display: none"] { margin: 0; padding: 0; }
.vc-cd-title {
    font-size: clamp(22px, 3vw, 36px);
    color: #fff !important;
    margin: 0 0 14px !important;
    line-height: 1.2;
    font-family: "Share Tech", sans-serif;
}
.vc-cd-full-tag {
    display: inline-block;
    background: #DAB04E;
    color: #121235;
    font-size: 11px;
    font-weight: 700;
    padding: 3px 10px;
    border-radius: 20px;
    vertical-align: middle;
    margin-left: 10px;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    position: relative;
    top: -3px;
}
.vc-cd-subtitle {
    color: rgba(255,255,255,0.75);
    font-size: 16px;
    margin: 0 0 20px !important;
}
.vc-cd-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 24px;
}
.vc-cd-pill {
    background: rgba(255,255,255,0.08);
    border: 1px solid rgba(218,176,78,0.45);
    color: #DAB04E;
    padding: 6px 18px;
    border-radius: 30px;
    font-size: 13px;
    font-family: "Share Tech", sans-serif;
}
.vc-cd-image {
    width: 100%;
    border-radius: 14px;
    overflow: hidden;
    margin-bottom: 28px;
}
.vc-cd-image img {
    width: 100%;
    max-height: 380px;
    object-fit: cover;
    display: block;
    /* prevent blank white box if image fails */
    min-height: 0;
    background: transparent;
}
/* onerror hides the whole image block */
.vc-cd-image[style*="display:none"],
.vc-cd-image[style*="display: none"] { margin: 0; }
.vc-cd-body {
    color: rgba(255,255,255,0.85);
    font-size: 16px;
    line-height: 1.75;
    margin-bottom: 28px;
}
.vc-cd-body p,
.vc-cd-body li { color: rgba(255,255,255,0.85) !important; }
.vc-cd-body ul,
.vc-cd-body ol { padding-left: 20px; margin-bottom: 12px; }

.vc-cd-keys { margin-bottom: 28px; }
.vc-cd-keys-title {
    font-size: 19px;
    color: #DAB04E !important;
    margin-bottom: 14px !important;
    font-family: "Share Tech", sans-serif;
}
.vc-cd-keys-list {
    list-style: none;
    padding: 0; margin: 0;
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    gap: 10px;
}
.vc-cd-keys-list li {
    padding: 10px 14px 10px 34px;
    background: rgba(255,255,255,0.07);
    border-radius: 8px;
    color: #fff;
    font-size: 14px;
    position: relative;
    line-height: 1.45;
}
.vc-cd-keys-list li::before {
    content: "✓";
    position: absolute;
    left: 12px; top: 10px;
    color: #DAB04E;
    font-weight: 700;
}
.vc-cd-video { border-radius: 12px; overflow: hidden; margin-bottom: 28px; }
.vc-cd-cta { text-align: center; padding: 8px 0 24px; }
.vc-cd-apply-btn {
    display: inline-block;
    padding: 16px 56px;
    background: #DAB04E;
    color: #121235;
    border: none;
    border-radius: 50px;
    font-family: "Share Tech", sans-serif;
    font-size: 16px;
    font-weight: 700;
    letter-spacing: 0.5px;
    cursor: pointer;
    text-transform: uppercase;
    transition: all 0.3s ease;
}
.vc-cd-apply-btn:hover {
    background: #fff;
    color: #160CF4;
    transform: translateY(-3px);
}
.vc-cd-full-msg { color: rgba(255,255,255,0.65); font-size: 15px; font-style: italic; }

/* ── RESPONSIVE ─────────────────────────────────────────── */
@media (max-width: 768px) {
    .modal { padding: 50px 16px 30px; }
    #apply-for-course .wpcf7-form { grid-template-columns: 1fr; }
    #apply-for-course .wpcf7-form p:nth-last-of-type(1),
    #apply-for-course .wpcf7-form p:nth-last-of-type(2),
    #apply-for-course .wpcf7-form p:nth-last-of-type(3) { grid-column: span 1; }
    .vc-cd-keys-list { grid-template-columns: 1fr; }
    .vc-cd-apply-btn { padding: 14px 36px; }
}


/* ================================================================
   OUR TEAM — person cards + popup (exact from TwentyTwentyOne)
   ================================================================ */

/* Person card */
.person-box {
    flex: 0 0 auto;
    position: relative;
    max-width: 420px;
    width: 100%;
    display: flex;
    flex-direction: column-reverse;
}
.person-box img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
}
.person-box .person-img {
    height: 480px;
    border-radius: 0 0 60px 60px;
    overflow: hidden;
}
.person-box .person-content {
    position: static;
    background-color: #121235;
    background-image: none !important;
    border-radius: 60px 60px 0 0;
    padding: 20px 32px;
    box-sizing: border-box;
}
.person-box .person-content h3,
.person-box .person-content p {
    color: #fff !important;
}
.person-box .person-content h3 {
    font-size: 22px;
    margin: 0 0 4px !important;
    font-family: "Share Tech", sans-serif;
}
.person-box .person-content p {
    font-size: 14px;
    margin: 0 0 10px !important;
}
a.learn-course {
    display: inline-block;
    position: relative;
    color: #DAB04E !important;
    font-family: "Source Sans 3", sans-serif;
    font-weight: 600;
    font-size: 15px;
    text-transform: uppercase;
    text-decoration: none;
    padding-bottom: 4px;
    cursor: pointer;
}
a.learn-course::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: #DAB04E;
}

/* Team slider nav */
.person-btn {
    display: flex;
    justify-content: center;
    gap: 20px;
    margin-top: 30px;
}
.person-btn .swiper-button-next,
.person-btn .swiper-button-prev {
    position: static;
    width: 26px;
    height: 26px;
    margin: 0;
    background-size: 26px;
    background-repeat: no-repeat;
}
.person-btn .swiper-button-next::after,
.person-btn .swiper-button-prev::after { display: none; }
.person-btn .swiper-button-prev::before,
.person-btn .swiper-button-next::before {
    content: "";
    display: block;
    width: 26px;
    height: 26px;
    background-image: url(/wp-content/uploads/2025/04/person-left.png);
    background-size: 26px;
    background-repeat: no-repeat;
}
.person-btn .swiper-button-prev::before { transform: rotate(180deg); }

/* Wrapper when < 3 slides */
.team-wrapper {
    display: flex;
    gap: 30px;
    flex-wrap: wrap;
    justify-content: center;
}
.team-wrapper .person-slider { max-width: 412px; width: 100%; }

/* ================================================================
   TESTIMONIALS / HOME SLIDER — exact match to live vendorconnect.me
   (TwentyTwentyOne ctc-style.css)
   ================================================================ */

/* Slide box — quote background image + left padding (same as live) */
.team-slide-box {
    padding-left: 110px;
    background-image: url(/wp-content/uploads/2025/04/quote.png);
    background-repeat: no-repeat;
}

/* Relative wrapper so absolutely-positioned buttons anchor here */
.team-slide-sec {
    position: relative;
}

/* Swiper max-width matches live */
.swiper.team-slide-main {
    max-width: 1080px;
    margin: 0 auto;
}

/* ── ARROW BUTTONS — position at far edges, same as live ─────── */
.team-btn .swiper-button-next {
    right: clamp(-1px, calc(0.0625rem + ((1vw - 9.91px) * 10.9131)), -50px);
}
.team-btn .swiper-button-prev {
    left: clamp(-1px, calc(0.0625rem + ((1vw - 9.91px) * 10.9131)), -50px);
}

/* Replace Swiper's default icon with left-team.png (same image as live) */
.team-btn > div::after {
    content: "" !important;
    width: 26px !important;
    height: 26px !important;
    background-image: url(/wp-content/uploads/2025/04/left-team.png) !important;
    background-size: 26px !important;
    background-repeat: no-repeat !important;
    font-size: 0 !important;          /* hide any text fallback */
}

/* First child in HTML = swiper-button-next → rotate 180° to show →  */
/* (HTML order: next first, prev second — same as live TT21)          */
.team-btn > div:first-child::after {
    transform: rotate(180deg) !important;
}

/* Author name below the quote */
.team-slide-box span {
    font-size: 16px !important;
    font-weight: 400 !important;
    color: #121235 !important;
    display: inline-block !important;
    margin-top: 40px !important;
}

/* ── Responsive (mirrors live site breakpoints) ─────────────── */
@media (max-width: 992px) {
    .swiper.team-slide-main { max-width: 80%; }
}

@media (max-width: 768px) {
    .team-slide-box {
        padding-left: 50px !important;
        background-size: 30px !important;
    }
    .team-slide-box h2 {
        font-size: 20px !important;
        line-height: 28px !important;
    }
}

/* Body scroll lock */
body.open-popup-freez,
body.vc-popup-open,
body.vc-locked { overflow: hidden !important; }

/* ── PERSON POPUP (exact from TwentyTwentyOne ctc-style.css) ── */
.vc-team-popup {
    display: none;
    position: fixed;
    top: 0; left: 0; right: 0; bottom: 0;
    z-index: 2147483647;              /* max 32-bit int — beats Divi header */
    background: linear-gradient(180deg, #160CF4 0%, #121235 100%);
    overflow-y: auto;
    align-items: center;
    justify-content: center;
    padding: 50px 20px;
}
.vc-team-popup.open-popup { display: flex; }
.vc-popup-inner {
    display: flex;
    max-width: 1280px;
    width: 100%;
    margin: auto;
    border-radius: 28px;              /* matches screenshot — not 50px */
    overflow: hidden;
    /* no background here — left/right panels provide their own */
}
.vc-popup-left {
    flex: 0 0 auto;
    width: 35%;
    background: #111133;              /* dark navy — matches screenshot */
    display: flex;
    flex-direction: column;
}
.vc-popup-left-top { padding: 30px 32px 20px; }
.vc-popup-left-top h3 {
    margin: 0 0 6px;
    font-size: 30px;                  /* larger to match screenshot */
    line-height: 1.2;
    color: #fff !important;
    font-family: "Share Tech", sans-serif;
    font-weight: 400;
}
.vc-popup-left-top p.popup-job {
    margin: 0 0 16px;
    font-size: 14px;
    color: rgba(255,255,255,0.7) !important;
    font-family: "Source Sans 3", sans-serif;
    font-weight: 600;
}
.vc-popup-photo {
    width: 100%;
    flex: 1;                          /* fills remaining left-panel height */
    object-fit: cover;
    object-position: center top;
    display: block;
    min-height: 360px;
    /* NO max-height — photo fills full panel like screenshot */
}
.vc-close-btn {
    display: inline-block;
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
    color: #DAB04E !important;
    font-family: "Source Sans 3", sans-serif;
    font-weight: 700;
    font-size: 14px;
    text-transform: uppercase;
    letter-spacing: 1px;
    position: relative;
}
.vc-close-btn::after {
    content: "";
    position: absolute;
    bottom: -3px; left: 0;
    width: 100%; height: 2px;
    background: #DAB04E;
}
.vc-popup-right {
    flex: 1;
    padding: 40px 48px;
    background: linear-gradient(180deg, #160CF4 0%, #121235 100%);
    overflow-y: auto;
    /* no max-height — matches screenshot (right panel is full height) */
}
.vc-popup-social {
    display: flex;
    gap: 14px;
    align-items: center;
    margin-bottom: 20px;
}
.vc-popup-social a {
    color: #fff !important;
    font-size: 24px;
    text-decoration: none !important;
}
.vc-popup-social a:hover { color: #DAB04E !important; }
.vc-popup-role-title {
    font-size: clamp(28px, 3vw, 36px);   /* larger title — matches screenshot */
    font-weight: 400;
    color: #fff !important;
    font-family: "Share Tech", sans-serif;
    margin: 0 0 24px !important;
    line-height: 1.2;
}
.vc-popup-bio-text {
    font-size: 16px;
    line-height: 1.8;
    color: rgba(255,255,255,0.88) !important;
    font-family: "Source Sans 3", sans-serif;
    columns: 2;
    column-gap: 32px;
}
.vc-popup-bio-text * { color: rgba(255,255,255,0.88) !important; }
body.vc-locked { overflow: hidden !important; }

/* Team section wrapper */
.vc-team-wrap {
    position: relative;
    font-family: "Share Tech", sans-serif;
    padding: 0 50px;
}
.vc-team-swiper { overflow: hidden; width: 100%; }
.vc-team-card {
    background: #121235;
    border-radius: 60px;
    overflow: hidden;
    display: flex;
    flex-direction: column-reverse;
    height: 100%;
}
.vc-team-card-top {
    padding: 20px 32px;
    background: #121235;
}
.vc-team-card-top h3 {
    margin: 0 0 4px;
    font-size: 22px;
    font-weight: 400;
    color: #fff !important;
    font-family: "Share Tech", sans-serif;
}
.vc-team-card-top p {
    margin: 0 0 12px;
    font-size: 14px;
    color: rgba(255,255,255,0.75) !important;
}
.vc-learn-btn {
    background: none; border: none; padding: 0; cursor: pointer;
    color: #DAB04E !important;
    font-family: "Source Sans 3", sans-serif;
    font-weight: 700; font-size: 14px; text-transform: uppercase;
    letter-spacing: 1px; position: relative; display: inline-block;
}
.vc-learn-btn::after {
    content: ""; position: absolute;
    bottom: -3px; left: 0; width: 100%; height: 2px; background: #DAB04E;
}
.vc-team-card-img { flex: 1; overflow: hidden; }
.vc-team-card-img img {
    width: 100%; height: 450px;
    object-fit: cover; object-position: center 20%; display: block;
}
.vc-arrow {
    position: absolute; top: 50%; transform: translateY(-50%);
    background: none; border: none; cursor: pointer;
    color: #fff; font-size: 48px; line-height: 1;
    padding: 0 8px; z-index: 10; opacity: 0.8;
}
.vc-arrow:hover { opacity: 1; }
.vc-arrow-prev { left: 0; }
.vc-arrow-next { right: 0; }

/* ================================================================
   TESTIMONIALS — exact CSS from TwentyTwentyOne child (ctc-style.css)
   ================================================================ */

/* Filters */
ul.testimonial-filters {
    padding: 0;
    list-style-type: none;
    display: flex;
    margin-bottom: 70px;
}
ul.testimonial-filters li {
    padding: 0 15px;
    flex: 0 0 auto;
    width: 33.33%;
}
.filters label {
    font-size: 16px;
    color: #DAB04E;
    padding-left: 15px;
    text-transform: uppercase;
    display: block;
    margin-bottom: 0;
}
.filters select.selecbox-testi {
    padding: 20px;
    border-radius: 5px;
    width: 100%;
    background-color: #dadada;
    border: none;
    background-size: 19px;
    background-position: right 20px top 55%;
    font-family: "Source Sans 3", sans-serif;
    font-size: 14px;
}
.filters select.selecbox-testi:focus { outline: none; }

/* Testimonial list */
/* ================================================================
   TESTIMONIALS LIST — card design matching screenshot
   Soft rounded card, image left, gold quote mark, text right
   All !important to override Divi base styles
   ================================================================ */

/* List reset */
ol.testimonail-content {
    padding: 0 !important;
    margin: 0 !important;
    list-style: none !important;
    list-style-type: none !important;
}

/* Hide browser/Divi numbered bullet */
ol.testimonail-content li::marker {
    content: none !important;
    display: none !important;
}

/* ── CARD — exactly matches live site ──────────────────────── */
ol.testimonail-content li {
    list-style: none !important;
    list-style-type: none !important;
    background-color: #F2F2F2 !important;        /* same as live */
    border-radius: 50px !important;              /* same as live */
    padding: 40px !important;                    /* same as live */
    margin-top: 36px !important;                 /* same as live */
    margin-left: 0 !important;
    margin-bottom: 0 !important;
    cursor: pointer !important;
}

/* ── TOP ROW: image + quote side-by-side ────────────────────── */
ol.testimonail-content li .testimonial-cont-boxt {
    display: flex !important;
    align-items: flex-start !important;
}

/* ── IMAGE — same width & natural height as live site ──────── */
ol.testimonail-content li .testi-img {
    flex: 0 0 auto !important;
    width: 45% !important;                       /* same as live */
    text-align: center !important;
    border-radius: 25px !important;              /* same as live */
    overflow: hidden !important;
}
ol.testimonail-content li .testi-img img {
    width: 100% !important;
    display: block !important;
    height: auto !important;                     /* natural height — same as live */
}

/* ── TEXT column — quote background image, same as live ─────── */
ol.testimonail-content li .testi-cont {
    flex: 1 !important;
    padding-left: 110px !important;              /* same as live */
    background-image: url(/wp-content/uploads/2025/04/quote.png) !important;
    background-repeat: no-repeat !important;
    background-size: auto !important;            /* natural size — same as live */
    max-width: 480px !important;                 /* same as live */
}

/* No CSS pseudo-quote — live site uses background-image above */
ol.testimonail-content li .testi-cont::before {
    content: none !important;
    display: none !important;
}

/* Quote / title — matches live site --font-36 / --line-36 */
ol.testimonail-content li .testi-cont h2 {
    color: #121235 !important;
    font-size: clamp(24px, calc(1.5rem + ((1vw - 3.2px) * 1.0714)), 36px) !important;
    line-height: clamp(30px, calc(1.875rem + ((1vw - 3.2px) * 1.0714)), 42px) !important;
    font-family: "Share Tech", sans-serif !important;
    margin-top: 0 !important;
    margin-bottom: 8px !important;
}

/* Author name — matches live site 16px span */
ol.testimonail-content li .testi-cont span {
    color: #121235 !important;
    font-size: 16px !important;                  /* same as live */
    font-family: "Share Tech", sans-serif !important;
    display: block !important;
}

/* ── BODY TEXT — hidden until .is-open ──────────────────────── */
ol.testimonail-content li .testi-descp {
    margin-top: 80px !important;                 /* same as live */
    display: none !important;
}
ol.testimonail-content li.is-open .testi-descp {
    display: block !important;
}
ol.testimonail-content li .testi-descp p {
    column-count: 2 !important;
    column-width: 300px !important;              /* same as live */
    font-size: 16px !important;                  /* --font-16 = 16px */
    line-height: clamp(25px, calc(1.5625rem + ((1vw - 3.2px) * 0.3571)), 29px) !important;  /* --line-16 */
    font-family: "Share Tech", sans-serif !important;
    color: #121235 !important;
    margin: 0 !important;
}

/* AJAX-injected items use same widths */
ol#testimonial_wrapper_list li.item .testi-img { width: 45% !important; }

/* ── Responsive — mirrors live site breakpoints ─────────────── */
@media (max-width: 992px) {
    .vc-team-wrap { padding: 0 15px; }
    .vc-popup-inner { flex-direction: column; }
    .vc-popup-left { width: 100%; }
    .vc-popup-right { padding: 30px 24px; }
    .vc-popup-bio-text { columns: 1; }
    .vc-team-popup { padding: 20px; }
    ul.testimonial-filters { flex-direction: column; }
    ul.testimonial-filters li { width: 100%; padding: 8px 0; }
    /* stack image above text */
    ol.testimonail-content li .testimonial-cont-boxt { flex-direction: column !important; gap: 30px !important; }
    ol.testimonail-content li .testi-img { width: 100% !important; }
    ol.testimonail-content li .testi-cont {
        padding-left: 60px !important;           /* same as live 992px override */
        max-width: 100% !important;
        margin-left: 0 !important;
    }
    ol.testimonail-content li .testi-descp { margin-top: 40px !important; }
    ol.testimonail-content li .testi-descp p { column-count: 1 !important; }
    .vc-team-card-img img { height: 320px; }
    ol#testimonial_wrapper_list li.item .testi-img { width: 100% !important; }
}

@media (max-width: 768px) {
    ol.testimonail-content li { padding: 30px 15px !important; }  /* same as live 768px */
    ol.testimonail-content li .testi-cont {
        padding-left: 36px !important;           /* same as live 768px */
        background-size: 22px !important;        /* shrink quote icon */
    }
    ol.testimonail-content li .testi-descp p { column-count: 1 !important; }
}

@media (max-width: 600px) {
    .vc-popup-social a { font-size: 20px; }
    .vc-popup-role-title { font-size: 22px; }
}

/* ================================================================
   TESTIMONIALS PAGE — [testimonials_page] shortcode
   Exact match to TwentyTwentyOne child design (Image 2)
   ================================================================ */

/* Filters */
.vc-testi-wrap { max-width: 1200px; margin: 0 auto; }
.vc-testi-filters {
    display: flex;
    gap: 20px;
    margin-bottom: 50px;
    flex-wrap: wrap;
}
.vc-testi-filter-group {
    flex: 1;
    min-width: 200px;
}
.vc-testi-filter-group label {
    display: block;
    font-size: 16px;
    color: #DAB04E;
    text-transform: uppercase;
    padding-left: 15px;
    margin-bottom: 6px;
    font-family: "Share Tech", sans-serif;
}
.vc-testi-select {
    width: 100%;
    padding: 18px 20px;
    border: none;
    border-radius: 5px;
    background-color: #DADADA;
    font-size: 14px;
    font-family: "Source Sans 3", sans-serif;
    color: #121235;
    cursor: pointer;
    appearance: auto;
}
.vc-testi-select:focus { outline: none; }

/* Loader */
.vc-testi-loader {
    text-align: center;
    padding: 30px 0;
}
.vc-testi-spinner {
    display: inline-block;
    width: 40px; height: 40px;
    border: 3px solid rgba(18,18,53,0.2);
    border-top-color: #121235;
    border-radius: 50%;
    animation: vc-spin .75s linear infinite;
}

/* List */
.vc-testi-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

/* Card */
.vc-testi-item {
    background: #F2F2F2;
    border-radius: 50px;
    padding: 40px;
    margin-bottom: 36px;
    cursor: pointer;
}
.vc-testi-item:last-child { margin-bottom: 0; }

/* Top row: image + quote/title/author */
.vc-testi-top {
    display: flex;
    align-items: flex-start;
    gap: 0;
}
.vc-testi-img {
    flex: 0 0 auto;
    width: 42%;
    border-radius: 25px;
    overflow: hidden;
    margin-right: 0;
}
.vc-testi-img img {
    width: 100%;
    display: block;
    height: 340px;
    object-fit: cover;
    object-position: center top;
}
.vc-testi-meta {
    flex: 1;
    padding-left: 60px;
    padding-top: 20px;
    position: relative;
}
.vc-testi-quote {
    font-size: 80px;
    line-height: 0.7;
    color: #DAB04E;
    font-family: Georgia, serif;
    margin-bottom: 16px;
    display: block;
}
.vc-testi-title {
    font-size: clamp(16px, 2vw, 22px);
    color: #121235 !important;
    font-family: "Share Tech", sans-serif;
    line-height: 1.4;
    margin: 0 0 14px !important;
    font-weight: 400;
}
.vc-testi-author {
    font-size: 14px;
    color: #666 !important;
    font-family: "Source Sans 3", sans-serif;
    display: block;
}

/* Body — hidden by default, shown on click */
.vc-testi-body {
    display: none;
    margin-top: 36px;
    padding-top: 30px;
    border-top: 1px solid #ddd;
}
.vc-testi-body p {
    font-size: 16px;
    line-height: 1.75;
    color: #121235 !important;
    font-family: "Share Tech", sans-serif;
    column-count: 2;
    column-gap: 40px;
    margin: 0 !important;
}
.vc-testi-item.vc-open .vc-testi-body { display: block; }
.vc-testi-empty {
    text-align: center;
    padding: 40px;
    color: #666;
    font-size: 16px;
}

/* Responsive */
@media (max-width: 768px) {
    .vc-testi-item { padding: 24px; border-radius: 24px; }
    .vc-testi-top { flex-direction: column; gap: 20px; }
    .vc-testi-img { width: 100%; }
    .vc-testi-meta { padding-left: 0; padding-top: 0; }
    .vc-testi-body p { column-count: 1; }
    .vc-testi-filters { flex-direction: column; }
    .vc-testi-filter-group { min-width: unset; }
}

/* ================================================================
   TESTIMONIALS — exact CSS from TwentyTwentyOne ctc-style.css
   ================================================================ */

/* Filters */
ul.testimonial-filters {
    padding: 0;
    list-style-type: none;
    display: flex;
    margin-bottom: 70px;
}
ul.testimonial-filters li {
    padding: 0 15px;
    flex: 0 0 auto;
    width: 33.33%;
}
.filters label {
    font-size: 16px;
    color: #DAB04E;
    padding-left: 15px;
    text-transform: uppercase;
    display: block;
    margin-bottom: 0;
}
.filters select.selecbox-testi {
    padding: 20px;
    border-radius: 5px;
    width: 100%;
    background-color: #DADADA;
    border: none;
    background-size: 19px;
    background-position: right 20px top 55%;
    font-family: "Source Sans 3", sans-serif;
    font-size: 14px;
}
.filters select.selecbox-testi:focus { outline: none; }

/* Testimonial list styles defined above — see "TESTIMONIALS LIST !important overrides" section */


/* Disable vPlayer background click — controlled by OUR HIGHLIGHTS button only */
.vplayer-wrapper,
.vplayer-container,
[id^='vplayer_'] {
  pointer-events: none !important;
}
#our_highlight_videop,
.our_highlight_videop {
  pointer-events: auto !important;
}