/*
 * Theme Name: Paralel Theme
 * Template: twentytwentyone
 * Text Domain: paralel-theme
 */
:root {
    --dynamic-padding: max(70px, calc((100vw - 1400px)/2));
    --font-h2: 60pt; 
    --font-h3: 30pt;
    --p-desc: 22px;
    --vertical-padding: 80px;
    --dots-square-units: 500px;
}
html, body {
  margin: 0;
  font-family: 'DM Sans', sans-serif;
}
* {
  box-sizing: border-box;
 }
main {
  max-width: 100%;
  overflow-x: hidden;
  margin: 0;
  padding: 35px var(--dynamic-padding) 110px var(--dynamic-padding);
}

h1 {
    font-family: 'Poppins', sans-serif;
    font-weight: 380;
    margin: 0; 
}

h2 {
    font-family: 'Poppins', sans-serif;
    font-size: var(--font-h2);
    font-weight: 500;
    line-height: 100%;
}

h3 {
   font-family: 'Poppins', sans-serif;
   font-size: var(--font-h3); 
   font-weight: normal;
   margin: 20px 0;
}

.our-section {
    margin: 0 0 20px 0;
    font-size: 24px;
    font-weight: 550;
    color: white;
}

.section-subhead {
    /* font-family: 'DM Sans', sans-serif; */ 
    margin: 0; padding-bottom: 1px;
}
.section-description {
    font-size: 24px;
    width:100%;
    padding-top: 1px;
}
.mission-wrapper .section-description {
    width:100%;
    padding-top: 10px;
}

.mission-wrapper .section-desecription {
    width: 50%;
}
.mission-wrapper .culture-upper-section{
    display:flex;
    flex-direction: column;
    justify-content: space-between;
}

.mission-h3 {
    margin: var(--vertical-padding) 0 0 0;
}
.mission-grid1 {
    display: flex; 
    justify-content: space-between;
    margin: 50px 0 0 0;
}
.mission-grid1 h3 {
    color: #e16d34;
    text-align: center;
    font-size: 25pt; 
}
#hero-section {
    width: 100%;
    height: 35vh;
}
.logo-wrapper {
    background: white;
    width: calc(100vw - 2*var(--dynamic-padding));
    position: fixed;
    height: 35%;
    z-index: 100;
}
.service-wrapper {
    /* padding: var(--vertical-padding) 0 0 0;; */
}
.service-desc {
}
.service-items {
    width: 100%; 
    display: flex;
    flex-wrap: wrap; 
    gap: 30px;
    margin-top: 55px;
    justify-content: space-between; 
    justify-content: flex-start; 
    align-items: flex-start; 
}

.service-box {
    position: relative;
    background: #e6e7e2;
    padding: 45px;
    overflow: hidden;
    max-height: 140px;
    transition: all 0.5s cubic-bezier(1, 1, 1, 1);
    /* Set width for two columns, accounting for the gap */
    width: calc(50% - 15px); /* (Total width - gap) / 2. Since gap is 30px, 15px is half of it for each side. */
    box-sizing: border-box; /* Ensures padding is included in the width calculation */
}

/* Your existing styles for content, plus/minus icons, and text can remain the same */
.service-content {
    transition: all 0.5s cubic-bezier(1, 1, 1, 1);
    opacity: 0;
}

.service-box .coll-minus {
    content: ' ';
    display: inline-block;
    width: 58px;
    height: 1px;
    border-bottom: 2px solid black;
    position: absolute;
    top: 70px;
    right: 50px;
    pointer-events: none;
}

.service-box .coll-plus {
    content: ' ';
    display: inline-block;
    width: 58px;
    height: 1px;
    border-bottom: 2px solid black;
    transform: rotate(-90deg);
    position: absolute;
    top: 70px;
    right: 50px;
    pointer-events: none;
}

.service-box h3 {
    margin: 0;
    padding-bottom: 27px;
    width: fit-content;
    pointer-events: none;
}

.service-box p, .service-box li {
    max-width: 85%;
    font-size: 1.12em;
}

.service-box ul {
    padding-inline-start: 25px;
}

.service-box li {
    margin: 10px;
    font-weight: 300;
}
.technology-wrapper {
    margin: 0 0 1px 0;
    padding: var(--vertical-padding) 0 0 0;
}
.technology-video {
    display:block; width: 100%; margin-top: 60px;    
}
.mission-wrapper {
    padding: var(--vertical-padding) 0 0 0;
}
.mission-flex1 {
    display: flex; gap: 60px;
    flex-wrap: wrap;
}
.mission-flex1>* {
    width: calc(50% - 30px);
}
.member-wrapper {
    padding: var(--vertical-padding) 0;
}
.member-desc {
    display: flex;
    gap: 60px;
    flex-wrap: wrap;
    margin-top:80px;
}
.member-desc>* {
    width: calc(50% - 30px);
}
.img-frame {
    background: white;
    /* width: fit-content; */
    height: fit-content;
    cursor: pointer;
}
.img-crop {
    overflow: hidden;
}
.img-crop figure {
    margin: 0;
}
.img-crop img {
    width: 100%;
    aspect-ratio: 1.5;
    /* height: 80%; */
    object-fit: cover;
}
.member-items {
    display: grid;
    width: 100%;
    /* reference: https://stackoverflow.com/questions/47601564/equal-width-columns-in-css-grid */
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 35px ;
    flex-wrap: wrap;
    align-items: flex-start;
    padding-top: var(--vertical-padding);
}
.member-items a {
    text-decoration: none;
    color: inherit;
}
.member-name {
    font-size: var(--p-desc);
    font-weight: 500;
    margin: 20px 0 -2px 0;
}
.member-desig {
    font-size: 16px; 
    margin: 0;
    color: #8b8e8e; 
}
.team-desc p {
    font-size: var(--p-desc);
}
#footer {
    font-family: 'DM Sans', sans-serif;
    justify-content: space-between;
    align-items: center;
    border: 1px solid #456867;
    position: relative;
    background: #171e1e;
    font-size: 18px;
    color: #e6e7e2;
    padding: 40px var(--dynamic-padding);
}

#footer h2 {
    color: white;
    font-size: 36px;
    font-weight: 450; 
    text-align: center;
    margin-top: 35px;
}
.footer-dot1 {
    position: absolute;
    top: 17px;
    left: 4px;
    content: ' ';
    width: 5px;
    height: 5px;
    background: #cf571a; 
}
.footer-dot2 {
    position: absolute;
    top: 17px;
    left: 18px;
    content: ' ';
    width: 5px;
    height: 5px;
    background: #cf571a; 
}
.footer-dot3 {
    position: absolute;
    top: 17px;
    left: 32px;
    content: ' ';
    width: 5px;
    height: 5px;
    background: #cf571a; 
}
.footer-brand {
    position: relative;
    min-width: 170px;
    max-width: 400px;
}
.footer-logo-text {
    font-size: 65px;
    margin: 0;
    font-weight: 300;
    font-family: 'Poppins', sans-serif;
}
.contact-button {
    width: 350px;
}
.contact-button button{
    padding: 7px 18px; background: transparent;border-radius: 4px;
    color: #456867;
    border: 1px solid #456867;
    display: block;
    font-size: 16px;
}
#team-page-wrapper {
    display: flex;
    justify-content: center;
    align-items: center;
    margin: 140px 0 200px 0;
}
.team-page-img img{
    height: 340px;
}
.team-page-desc {
    display: flex;
    flex-direction: column;
    margin-left: 100px;
}
.back-button {
    position: absolute;
    padding: 7px 18px; background: transparent;border-radius: 4px;
    color: #456867;
    border: 1px solid #456867;
    display: block;
    font-size: 16px;
    cursor: pointer;
    top: 30px;
    left: 50px;
}
.back-button:hover {
    background: #456867;
    color: white;
}

#career-root {
    margin-bottom: 100px;
}
.career-logo {
    text-decoration: none; color: black;
}
.career-logo>div {
    position: relative;left: 80px;
}
.career-mobile {
    display: none;
}
.career-row {
    display: grid;
    grid-template-columns: 2fr 3fr;
    width: 100%;
    margin: 15px 0;
    padding: 25px;
    background: #e6e7e2;
}
.career-opening {
    display: grid;
    grid-template-columns: 2fr 1fr;
}
.btn-wrapper {
    justify-self: end;
    align-self: start;
}
.career-category {
    /* width: 350px; */
    /* align-self: flex-start; */
    font-size: var(--p-desc);
    font-weight: 500;
    margin: 0;
}
.career-title {
    font-size: var(--p-desc);
    font-weight: 500;
    margin-bottom: 30px;
}
.job-title {
    text-decoration: underline;
    cursor: pointer;
}
.career-title p {
    margin: 0;
}
.career-title .location {
    font-size: 16px;
    color: #8b8e8e; 
    font-weight: 500;
}
.career-title p {
    margin-bottom: 2px;
}
.career-title span {
    font-size: 13px;
}

.career-link {
    position: absolute;
    top: 45px;
    right: 90px; 
}
.career-link a {
    text-decoration: none;
    color: black;
    font-size: 20px;
}
.career-link button {
    background: transparent;
    border:none;
    font-size: 20px;
    cursor: pointer;
}
@keyframes culture-highlight {
    0% {
       left: 0; 
    }
    25% {
       left: calc(283.75px + 30px); 
    }
    50% {
        left: calc(283.75px + 60px + 283.75px + 60px);
    }
    75% {
        left: calc(283.75px + 90px + 283.75px + 90px + 283.75px + 90px); 
    }
    100% {
        left: 0;
    }

}
@keyframes culture-border {
    0% {
        grid-column: 1;
    }
    25% {
        grid-column: 2;
    }
    50% {
        grid-column: 3;
    }
    75% {
        grid-column: 4;
    }
    100% {
        grid-column: 1;
    }
}
@keyframes section3-highlight-move {
    0% {left: 0; bottom: 0;}
    33% {left: 300px; bottom:0;}
    66% {left: 600px; bottom:0;}
    100% {left: 900px; bottom:0;}
}

@keyframes doc-move-1 {
    0% {left: 14.5%; top: -19%;}
    100% {left: 14.5%; top: 13%;}
}

@keyframes doc-move-2 {
    0% {left: -21%; top: -20%;}
    100% {left: 21%; top: 54%;}
}

@keyframes doc-move-3 {
    0% {right: -21%; top: 34%;}
    100% {right: 15%; top: 34%;}
}

@keyframes doc-move-4 {
    0% {right: -21%; bottom: -21%;}
    100% {right: 68%; bottom: 25%;}
}

@keyframes fadeIn {
    0% {opacity: 0;}
    100% {opacity: 1;} 
}

@keyframes move1 {
    0%,100% {left: 12px;}
    50% {left: 260px;}
}
@keyframes move2 {
    0%, 100% {left: 42px;}
    50% {left: 300px;}
}
@keyframes move3 {
    0%, 100% {left: 72px;}
    50% {left: 345px;}
}

.nav-wrapper {
    box-sizing: border-box;
    /* background: white; */
    width: 100%;
    padding: 20px var(--dynamic-padding);
    position: fixed;
    z-index: 102;
    top: 0;
    right: 0;
    left: 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.nav-list {
    padding: 0;
    margin: 0;
}
.nav-left {
    padding: 0;
    margin: 0;
}
.login-btn {
    justify-self: start;
    background-color: #171e1e;
    color: white;
    padding: 5px 22px;
}
.nav-list a, .nav-left a {
    color: black;
    text-decoration: none;
    display: inline-block;
    cursor: pointer;
}
.nav-list li, .nav-left li {
    font-size: 18px;
    list-style-type: none;
    padding: 5px 12px;
    cursor: pointer;
}

.white-dot-1, .white-dot-2, .white-dot-3, .white-dot-4, .white-dot-5, .white-dot-6, .white-dot-7, .white-dot-8, .white-dot-9 {
    background: white;
    color: white;
    /* height: 60px; */
    /* width: 60px; */
    width: 100%;
    aspect-ratio: 1;
    place-self: center;
}
.changing-wrapper {
    display: flex; 
    /* justify-content: stretch; */ 
    /* gap: 60px; */ 
    padding: 0; 
    /* grid-template-columns: repeat(auto-fit, 785px); */
    /* flex-wrap: wrap; */
}
.changing-statement {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    background: #e6e7e2; padding: 0 40px;
    width: 50%;
    /* min-height: 600px; */
    /* justify-self: stretch; */
}
.changing-dot-wrapper {
    display: grid;
    background: #799999; 
    width: 50%;
    /* min-height: 500px; */
    /* min-width: 300px; */
    /* justify-self: stretch; */
    /* padding:30px; */
}
.ems-dots {
    background-color: #799999;width: calc(50% - 30px);display:flex;align-items:flex-end;
    overflow: hidden;
}
.changing-dots {
    position: relative;
    place-self: center;
    height: fit-content;
    width: min(100%, var(--dots-square-units));
    aspect-ratio: 1;
}
.changing-grid-1 {
    position: absolute;
    top: 8%; 
    left: 8%;
    width: 100%;
    display: grid;
    grid-template-columns: 12% 12% 12%;
    gap: 24%;
}
.changing-grid-2 {
    position: absolute;
    top: 44%; 
    left: 8%;
    width: 100%;
    display: grid;
    grid-template-columns: 12% 12% 12%;
    gap: 24%;
}
.changing-grid-3 {
    position: absolute;
    top: 80%; 
    left: 8%;
    width: 100%;
    display: grid;
    grid-template-columns: 12% 12% 12%;
    gap: 24%;
}
.value-desc {
    min-height: 52px;
    font-size: 24px;
    font-weight: normal;
    color: #3b3e3e;
    text-align: center;
    font-style: italic;
}
.value-wrapper {
    width:100%;
}

#modal-bio {
    /* display: none; */
    position: fixed;
    top: 0;
    left: -40vw;
    background: #171e1e;
    width: 40vw;
    height: 100vh;
    z-index: 1001;
    box-shadow: 0 0 200vw 200vw rgba(0, 0, 0, 0.0); 
    transition: all 0.4s ease-out;
    color: #e6e7e2;
    padding: 50px 80px;
    font-size: 18px;
    overflow-y: auto;

    box-sizing: border-box;
    width: 40vw;
    max-width: 700px;
    min-width: 300px;
}
#modal-bio .member-name {
    font-size: 34px;
    margin: 20px 0 5px 0;
}
#modal-bio .member-desig {
    font-size: var(--p-desc);
    font-weight: 700;
    /* margin: -10px 0 20px 0; */
}
.bio-controls {
    display: flex;
    justify-content: space-between;
    width: 100%;
}
.click-back {
   -webkit-user-select: none; /* Safari */
   -ms-user-select: none; /* IE 10 and IE 11 */
   user-select: none; /* Standard syntax */
   display: inline-block; 
   width: fit-content;
   padding-left: 20px;
   cursor: pointer;
}
.click-back::before {
   content: '<';
   position: relative;
   right: 20px;
   top: -3px;
   vertical-align: middle;
   font-size: 24px;
}
.click-next {
   -webkit-user-select: none; /* Safari */
   -ms-user-select: none; /* IE 10 and IE 11 */
   user-select: none; /* Standard syntax */
   display: inline-block; 
   width: fit-content;
   text-align: right;
   padding-right: 20px;
   cursor: pointer;
}
.click-next::after {
   content: '>';
   position: relative;
   left: 20px;
   top: -3px;
   vertical-align: middle;
   font-size: 24px;
}
.modal-close {
    position: absolute;
    top: 0;
    right: 0;
    height: 80px;
    width: 80px;
    background: #e16d34;
    cursor: pointer;
}
.modal-close::before {
    content: ' ';
    position: absolute;
    top: 40px;
    right: 5px;
    width: 70px;
    height: 2px;
    background: #171e1e;
    transform: rotate(-45deg);
}
.modal-close::after {
    content: ' ';
    position: absolute;
    top: 40px;
    right: 5px;
    width: 70px;
    height: 2px;
    background: #171e1e;
    transform: rotate(45deg);
}
.member-frame {
    width: 100%;
    height: fit-content;
}
.join-the-team {
    background-color: #e16d34;padding: 5px 0 60px 0;text-align:center;
}
.join-btn {
    border: none;
    background: #171e1e;
    color: white;
    padding: 18px 30px;
    font-size: 12px;
    cursor: pointer;
    text-decoration: none;
    font-family: 'DM Sans', sans-serif;
}
.join-btn:active {
    border: none;
}
.join-btn:visited {
    border: none;
}
.career-wrapper {
    padding: 120px var(--dynamic-padding);
}
.career-banner {
    padding: 60px;
    display: flex;
    gap: 60px;
    flex-wrap: wrap;
    justify-content: space-between;
    background: #6e7a5f;
}
.career-banner h2 {
    margin: 0;
}
.career-banner p {
    font-size: var(--p-desc); width: 50%;
    margin-top: 0;
}
.apply-btn {
    display: block;
    border: none;
    background: #171e1e;
    color: white;
    padding: 12px 30px;
    font-size: 16px;
    cursor: pointer;
    text-decoration: none;
}
.career-dot1 {
    position: absolute;
    top: 16px;
    left: 3px;
    content: ' ';
    width: 3px;
    height: 3px;
    background: #cf571a; 
}
.career-dot2 {
    position: absolute;
    top: 16px;
    left: 13px;
    content: ' ';
    width: 3px;
    height: 3px;
    background: #cf571a; 
}
.career-dot3 {
    position: absolute;
    top: 16px;
    left: 23px;
    content: ' ';
    width: 3px;
    height: 3px;
    background: #cf571a; 
}
.responsive-menu {
    display: none;
}
#contact-modal {
    position: fixed;
    top: 0;
    left: -40vw;
    background: #171e1e;
    width: 40vw;
    height: 100vh;
    z-index: 1001;
    box-shadow: 0 0 200vw 200vw rgba(0, 0, 0, 0.0); 
    transition: all 0.4s ease-out;
    color: #e6e7e2;
    padding: 50px;
    font-size: 18px;
    overflow-y: auto;
    padding-top: 70px;

    width: 40vw;
    max-width: 700px;
    min-width: 300px;
}
#contact-modal form {
    /* position: absolute; */
    /* top: 50%; */
    /* left: 50%; */
    /* transform: translate(-50%, -50%); */
    /* width: 80%; */
}
#contact-modal label {
    display: block;
    font-size: 18px;
    margin: 10px 0 5px 0;
}
#contact-modal input,textarea {
    width: 100%;
    max-width: 100%;
    padding: 10px 15px; 
    font-size: var(--p-desc);
    background-color: #e6e7e2;
    border: none;
    font-family: 'DM Sans', sans-serif;
}
#contact-modal input[type='submit'] {
    cursor: pointer;
    background-color: #171e1e;
    color: #e6e7e2;
    border: 1px solid #e6e7e2;
    width: 30%;
    margin-top: 20px;
}
#contact-modal .section-subhead {
    padding-bottom: 30px;
    font-size: 40px;
}
.job-modal {
    display: none;
    position: fixed; top: 50%; left: 50%; transform: translate(-50%, -50%); 
    box-shadow: 0 0 0 50vmax rgba(0,0,0,.5);z-index: 300; background: #e6e7e2;
    max-height: 90vh; width: 90vw; overflow: auto;
    padding: 20px 40px;
}
.job-modal h4 {
    font-size: 13pt;
    font-weight: 600;
}
.job-modal p {
    font-size: 13pt;
}
.job-modal .modal-close {
    background: transparent;
}
.job-modal .modal-close::before {
        top: 20px;
        right: 5px;
        width: 30px;
        height: 2px;
    background: #171d1f;
}

.job-modal .modal-close::after {
        top: 20px;
        right: 5px;
        width: 30px;
        height: 2px;
    background: #171d1f;
}

#animation-container{
    position: relative;
    padding-top:20px;
    margin-top: 50px;
}

@media only screen and (max-width: 1360px) {
    :root {
        --font-h2: 38pt; 
        --font-h3: 25pt;
        --p-desc: 18px;
        --dots-square-units: 350px;
    }
    @keyframes culture-highlight {
    0% {
       left: 0; 
    }
    25% {
       left: calc(250px + 30px); 
    }
    50% {
        left: calc(250px + 30px + 250px + 30px);
    }
    75% {
        left: calc(250px + 30px + 250px + 30px + 250px + 30px); 
    }
    100% {
        left: 0;
    }

    }
    .ems-dots img {
        max-height: 360px;
        /* aspect-ratio: 1; */
    }
    .service-box {
        /* padding-bottom: 32px; */
        max-height: 125px;
    }
    .nav-wrapper {
        padding: 10px var(--dynamic-padding);
        align-items: flex-start;
    }
    .nav-wrapper li {
        font-size: 14px;
    }
    .login-btn {
        padding: 5px 10px;
    }
    #footer {
        font-size: 16px;
    }
    
}
@media only screen and (max-width: 1230px) and (min-width: 640px) {

    .career-wrapper {
        padding: var(--dynamic-padding);
    }
    main {
        padding: var(--dynamic-padding);
    }
    .nav-wrapper {
        display: none;
    }
    .changing-statement {
        width: 50%;
    }
    .changing-statement h2 {
        font-size: 32px;
    }
    .changing-dot-wrapper {
        width: 50%;
    }
    .ems-dots {
        width: 100%;
    }
    .ems-dots img {
        /* width: 100%; */
    }
    .responsive-menu-open {
        position: fixed; top:0; right:0; z-index:101;
        background: #171e1e;
    }
    .responsive-menu-open span{
        display: block;
        background: #e6e7e2; 
        height: 2px;
        width: 30px;
        content: ' '; 
        margin: 10px;  
    }
    .responsive-menu {
        display: block;
        position: fixed;
        right: 0;
        width: 100vw;
        background: #171e1e;
        color: #e6e7e2;
        z-index: 102;
        padding-top: 80px;
        transition: all 0.4s ease-out;
        top: -800vh;
    }
    .responsive-menu a {
        text-decoration: none;
        color: #e6e7e2;
    /* display: inline-block; */
        cursor: pointer;
    }
    .responsive-menu li {
        list-style-type: none;
        font-size: 28px;
        margin: 10px 0;
    }
    .login-btn li{
        font-size: 16px;
        border: 1px solid #e6e7e2;
        width: fit-content;
        padding: 5px 22px;
    }
    .mission-grid1 {
        flex-direction: column;
        margin: 10px 0px 10px 30px;
    }
    .value-highlighter {
        display: none;
    }
    .value-wrapper:first-child::after {
        height: 0px;
    }
    .service-desc {
        /* width: 100%; */
    }
    .service-items {
        /* width: 100%; */
        gap: 20px;
	margin: 0;
    }
    .service-box {
        padding: 20px;
        max-height: 110px;
    }
    .service-box h3 {
        font-size: 20pt;
        width: 70%;
    }
    .service-box .coll-minus {
        top: 50px;        
        right: 30px;
    }
    .service-box .coll-plus { 
        top: 50px;        
        right: 30px;
    }
    .service-box li {
        /* line-height: 1.7; */
    }
    .service-box p, .service-box li {
        max-width: 100%;
        font-size: 1em;
    }
    .our-section {
        display: none;
    }
    .section-subhead {
        margin-bottom: 10px;
        font-size: 25pt;
    }
    .section-description {
        font-size: 24px;
        /* width:100%; */
        /* margin: 16px 0; */
    }
    .team-desc p{
        font-size: 16px;
    }
    .member-items {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 15px;
    }
    .member-name {
        font-size: 18px;
        font-weight: 500;
        margin: 10px 0 -2px 0;
    }
    .member-desig {
        font-size: 12px; 
        margin: 0;
        color: #8b8e8e; 
    }

    #modal-bio {
        left: -100vw;
        padding: 20px;
        width: 60vw;
    }
    #contact-modal {
        left: -100vw;
        width: 70vw;
    }
    .modal-close {
        top: 10px;
        right: 10px;
        height: 40px;
        width: 40px;
        background: transparent;
    }
    .modal-close::before {
        top: 20px;
        right: 5px;
        width: 30px;
        height: 2px;
        background: #e6e7e2;
    }
    .modal-close::after {
        top: 20px;
        right: 5px;
        width: 30px;
        height: 2px;
        background: #e6e7e2;
    }
    .member-frame {
        margin-top: 40px;
        width: calc(60vw - 40px);
        height: fit-content;
    }
    /* .click-back { */
    /*     width: calc((60vw - 45px) / 2); */
    /* } */
    /* .click-next { */
    /*     width: calc((60vw - 45px) / 2); */
    /* } */
    #modal-bio .member-name {
        font-size: 28px;
        margin: 20px 0 3px 0;
    }
    #modal-bio .member-desig {
        font-size: 16px;
        margin-bottom: 40px;
    }
    #modal-bio .member-detail {
        font-size: 16px;
    }
    .career-banner {
        gap: 10px;
        padding: 25px;
        margin-top: 15px;
    }
    .career-banner p {
        margin-top: 0;
    }
    .career-row {
        grid-template-columns: 1fr;
    }
    .career-title {
        margin-top: 20px;
        font-size: 18px;
        font-weight: 200;
        margin-bottom: 15px;
    }
    .btn-wrapper {
        margin-top: 10px;
    }
    .career-mobile {
        display: block;
    }
    .career-logo {
        padding-bottom: 20px;
    }
    .career-logo>div {
        left: 0;
    }
    .mission-wrapper .culture-upper-section{
        flex-direction: column;
        align-items: flex-start;
    }
    .mission-wrapper .section-description {
        width: 100%;
        padding-top: 0px;
    }

    #line {
        width: 1px !important;  /* Set a small width for vertical line */
        height: 100% !important; /* Set height to 100% for full container height */
        margin-left : 10px !important;
    }
    #animation-container{
        display: flex;
        padding-top: 5px; 
        margin-top: 5px; 
    }
    .mission-grid1 h3 {
        text-align: left;
        margin: 5px 0px;
    }
    .value-desc {
        text-align: left;
        min-height:15px;
    }
    .value-wrapper{
        height:130px;
        margin:30px 0px;
    }
}
@media only screen and (max-width: 1230px) and (min-width: 780px) {
    .changing-statement h2 {
        font-size: 42px;
    }
    .mission-wrapper .culture-upper-section{
        flex-direction: column;
        align-items: flex-start;
    }
    .mission-wrapper .section-description {
        width: 100%;
        padding-top: 0px;
    }

    #line {
        width: 1px !important;  /* Set a small width for vertical line */
        height: 100% !important; /* Set height to 100% for full container height */
        margin-left : 10px !important;
    }
    #animation-container{
        display: flex;
        padding-top: 5px; 
        margin-top: 5px; 
    }
    .mission-grid1 h3 {
        text-align: left;
        margin: 5px 0px;
    }
    .value-desc {
        text-align: left;
        min-height:15px;
    }
    .value-wrapper{
        height:130px;
        margin:30px 0px;
    }
}
@media only screen and (min-width: 220px) and (max-width: 640px) {
    :root {
        --dynamic-padding: 15px;
        --vertical-padding: 45px;
        --font-h2: 35pt;
        --font-h3: 17pt;
    }
    .responsive-menu-open {
        position: fixed; top:0; right:0; z-index:101;
        background: #171e1e;
    }
    .responsive-menu-open span{
        display: block;
        background: #e6e7e2; 
        height: 2px;
        width: 30px;
        content: ' '; 
        margin: 10px;  
    }
    .responsive-menu {
        display: block;
        position: fixed;
        right: 0;
        width: 100vw;
        background: #171e1e;
        color: #e6e7e2;
        z-index: 102;
        padding-top: 80px;
        transition: all 0.4s ease-out;
        top: -800vh;
    }
    .responsive-menu a {
        text-decoration: none;
        color: #e6e7e2;
    /* display: inline-block; */
        cursor: pointer;
    }
    .responsive-menu li {
        list-style-type: none;
        font-size: 28px;
        margin: 10px 0;
    }
    .login-btn li{
        font-size: 16px;
        border: 1px solid #e6e7e2;
        width: fit-content;
        padding: 5px 22px;
    }
    main {
        padding: var(--dynamic-padding);
    }
    .career-wrapper {
        padding: 20px;
    }
    .career-logo {
        padding-bottom: 20px;
    }
    .career-logo>div {
        left: 0;
    }
    .section-subhead {
        margin-bottom: 10px;
        font-size: 25pt;
    }
    .section-description {
        font-size: 24px;
        width:100%;
        margin: 16px 0;
    }
    .our-section {
        margin: 0 0 10px 0;
        font-size: 15pt;
    }
    .nav-wrapper {
        display: none;
    }
    #hero-section {
        height: 33vh;
    }
    .changing-wrapper {
        /* gap: 20px; */
        margin-top: 20px;
    }
    .changing-statement {
        padding: 20px;
        width: 49%;
    }
    .changing-dot-wrapper {
        width: 51%;
    }
    .changing-statement h2 {
        font-size: 22px;
    }
    .ems-dots {
        width: 100%;
    }
    .ems-dots img {
        width: 100%;
    }
    .service-desc {
        width: 100%;
    }
    .service-items {
        width: 100%;
        flex-direction: column;
    }
    .service-box {
        padding: 20px;
        max-height: 110px;
        width: 100%;
    }
    .service-box h3 {
        font-size: 20pt;
        width: 60%;
    }
    .service-box .coll-minus {
        top: 50px;        
        right: 30px;
    }
    .service-box .coll-plus { 
        top: 50px;        
        right: 30px;
    }
    .service-box li {
        /* line-height: 1.7; */
    }
    .service-box p, .service-box li {
        max-width: 100%;
        font-size: 1em;
    }
    .technology-wrapper {
        margin: 0;
        padding:var(--vertical-padding) 0 0 0;
    }
    .technology-video {
        margin: 0;
    }
    .mission-flex1 {
        gap: 0px;
    }
    .mission-grid1 {
        flex-direction: column;
        margin: 10px 0px 10px 30px;
    }
    .value-highlighter {
        display: none;
    }
    .value-wrapper:first-child::after {
        height: 0px;
    }
    .member-desc {
        gap: 0px;
    }
    .member-desc>* {
        font-size: 21px;
        width:100%;
    }
    .member-items {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 15px;
    }
    .member-name {
        font-size: 18px;
        font-weight: 500;
        margin: 10px 0 -2px 0;
    }
    .member-desig {
        font-size: 12px; 
        margin: 0;
        color: #8b8e8e; 
    }
    .team-desc p {
        font-size: 16px;
    }
    .join-the-team h2 {
        font-size: 30pt;
    }
    .join-btn {
        font-size: 12px;
    }
    #modal-bio {
        left: -100vw;
        padding: 20px;
        width: 100vw;
    }
    #contact-modal {
        left: -100vw;
        padding: 20px 20px 60px;
        width: 100vw;
    }
    .g-recaptcha {
        transform: scale(0.88);
        transform-origin: 0 0;
        margin-bottom: -8px;
    }
    #contact-modal .section-subhead {
        padding-bottom: 10px;
    }
    #contact-modal label {
        font-size: 16px;
    }
    #contact-modal input,textarea {
        font-size: 16px;
        padding: 10px;
    }
    #contact-modal input[type='submit'] {
        font-size: 14px;
    }
    .modal-close {
        top: 10px;
        right: 10px;
        height: 40px;
        width: 40px;
        background: transparent;
    }
    .modal-close::before {
        top: 20px;
        right: 5px;
        width: 30px;
        height: 2px;
        background: #e6e7e2;
    }
    .modal-close::after {
        top: 20px;
        right: 5px;
        width: 30px;
        height: 2px;
        background: #e6e7e2;
    }
    .member-frame {
        margin-top: 40px;
        width: calc(100vw - 40px);
        height: fit-content;
    }
    .click-back {
        width: calc((100vw - 45px) / 2);
    }
    .click-next {
        width: calc((100vw - 45px) / 2);
    }
    #modal-bio .member-name {
        font-size: 28px;
        margin: 20px 0 3px 0;
    }
    #modal-bio .member-desig {
        font-size: 16px;
        margin-bottom: 40px;
    }
    #modal-bio .member-detail {
        font-size: 16px;
    }

    .team-page-desc {
        margin-left: 0;
    }
    #team-page-wrapper {
        flex-direction: column;
        margin: 60px 0 80px 0;
    }
    .contact-button {
        width: 100%;
    }
    .career-mobile {
        display: block;
    }
    .career-banner {
        gap: 10px;
        padding: 25px;
        margin-top: 15px;
    }
    .career-banner p {
        width: 100%;
    }
    .career-row {
        grid-template-columns: 1fr;
    }
    .career-title {
        margin-top: 20px;
        font-size: 18px;
        font-weight: 200;
        margin-bottom: 15px;
    }
    .btn-wrapper {
        width: 100%;
        text-align: center;
        justify-self: center;
    }
    .career-opening {
        grid-template-columns: 1fr;
    }

    #footer p {
        font-size: 16px;
    }
    #footer .footer-logo-text {
        font-size: 65px;
    }
    .footer-brand {
        width: 100%;
        max-width: 100%;
    }

    .mission-wrapper .culture-upper-section{
        flex-direction: column;
        align-items: flex-start;
    }
    .mission-wrapper .section-description {
        width: 100%;
        padding-top: 0px;
    }

    #line {
        width: 1px !important;  /* Set a small width for vertical line */
        height: 100% !important; /* Set height to 100% for full container height */
        margin-left : 10px !important;
    }
    #animation-container{
        display: flex;
        padding-top: 5px; 
        margin-top: 5px; 
    }
    .mission-grid1 h3 {
        text-align: left;
        margin: 5px 0px;
    }
    .value-desc {
        text-align: left;
        min-height:15px;
    }
    .value-wrapper{
        height:130px;
        margin:30px 0px;
    }
}
@media only screen and (max-width: 640px) and (min-width: 420px) {
    .changing-statement h2 {
        font-size: 28px;
    }
    .mission-wrapper .culture-upper-section{
        flex-direction: column;
        align-items: flex-start;
    }
    .mission-wrapper .section-description {
        width: 100%;
        padding-top: 0px;
    }

    #line {
        width: 1px !important;  /* Set a small width for vertical line */
        height: 100% !important; /* Set height to 100% for full container height */
        margin-left : 10px !important;
    }
    #animation-container{
        display: flex;
        padding-top: 5px; 
        margin-top: 5px; 
    }
    .mission-grid1 h3 {
        text-align: left;
        margin: 5px 0px;
    }
    .value-desc {
        text-align: left;
        min-height:15px;
    }
    .value-wrapper{
        height:130px;
        margin:30px 0px;
    }
   
}

.footerLink:link, .footerLink:visited {
    color: #e16d34;
    text-decoration: none;
  }

  .footerLink:hover{
    text-decoration: underline;
  }

