@font-face {
  font-family: 'Avenir LT Pro';
  src: url('../font/AvenirLTStd-Book.otf') format('opentype');
  font-weight: 400;
  font-style: normal;
}

body, html{
  font-family: 'Avenir LT Pro', sans-serif !important;
}
.font-us{
  font-family: 'Avenir LT Pro', sans-serif !important;
}
html {
  scroll-padding-top: 70px;
}
body {
  margin: 0;
  padding: 0;
}
.page-container {
  max-width: 1230px;
  margin: 0 auto;
}
#see-all-jobs, #join{
}
#see-all-jobs:hover, #join:hover{
}
#dynamic-jobs{
  background:transparent !important;
  margin-top:0px !important;
  border:none !important;
  border-radius: 0px !important;
}
.job-cards{
  border-radius: 0px !important;
  box-shadow: none !important;
  font-family: 'Avenir LT Pro', sans-serif !important;
}
#see-all-jobs{
  background: linear-gradient(90deg, #D60619 0%, #F82899 100%) !important;
  font-weight: 700 !important;
  text-decoration: none !important;
  align-items: center !important;
  justify-content: center !important;
  font-family: 'Avenir LT Pro', sans-serif !important;
}
.primary-text{
  display: inline-block;
  background: linear-gradient(90deg, #D60619 0%, #F82899 100%) !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  padding-bottom: 1px;
}
.text-gray{
  color:#141415;
}
.primary-bg{
  background: linear-gradient(90deg, #D60619 0%, #F82899 100%);
}
.gray-bg{
  background-color:#141415;
}
.lightgray-bg{
  background-color: #a3a3a3;
}
.title-font{
  font-size:60px !important;
}
.head-font{
  font-size: 25px;
}
/* line height */
.line-h-19{
  line-height:19px;
}
.content-lh{
  line-height: 20px;
}
.line-h31{
  line-height:31px;
}
.line-h-37{
  line-height:37px;
}
.line-h-55{
  line-height:55px;
}
.tech-difference h2{
  line-height:68px;
}
.head-lh{
  line-height: 60px;
}
.title-height{
  line-height: 58px;
}
.fw-400{
  font-weight:400 !important;
}
.fw-700{
  font-weight:700 !important;
}
.mt-0{
  margin-top: 0px !important;
}
.pt-40{
  padding-top:40px;
}
.pl-50{
  padding-left:50px;
}
h2{
  color:#141415 !important;
  font-weight: 700 !important;
  margin-bottom: 15px !important;
  /* font-size:33.3333px !important; */
}
p{
  color:#000;
  font-size: 15px !important;
  font-weight: 400;
}
.pl-0{
  padding-left:0px !important;
}
.pr-0{
  padding-right:0px !important;
}
.px-30{
  padding:0px 30px;
}
.apply-view{
  padding:15px 30px;
}

.primary-btn {
  background: linear-gradient(90deg, #D60619 0%, #F82899 100%);
  padding: 12px 10px;
  color: #fff;
  font-size: 15px;
  font-weight: 700;
  text-decoration: none !important;
  display: inline-flex;
  align-items: center;
  width: 55%;
  justify-content: center;
}
.primary-btn:hover{
  color:#FFF !important;
  text-decoration:none !important;
}
.question-btn{
  background-color: #141415;
  padding: 15px 40px;
  color: #F6F8EF;
  font-size: 15px;
  font-weight: 400;
  text-decoration: none !important;
  display: inline-flex;
  align-items: center;
  gap: 12px;
  border-radius:10px;
  cursor: pointer;
}
.question-btn:hover {
  color: #F6F8EF;
}

/* header */
.us-tech {
  position: relative;
  color: #FFF;
  background-image: url('../images/banner.jpg');
  background-repeat: no-repeat;
  background-position: center 35%;
  background-size: cover;
  min-height: 530px;
  overflow: hidden;
  padding: 40px 50px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  align-items: flex-start;
  z-index: 1;
}

/* dark gradient overlay */
.us-tech-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, rgba(0, 0, 0, 0.15) 0%, rgba(0, 0, 0, 0.35) 40%, rgba(0, 0, 0, 0.6) 75%, rgba(0, 0, 0, 0.75) 100%);
  z-index: 1;
  pointer-events: none;
}

.join {
  position: relative;
  z-index: 2;
  width: 100%;
  max-width: 80%;
}
.join h1{
  font-weight:700 !important;
}

/* Hero accent: gradient text #D60619 → #F82899 (match button), optional 3 underlines */
.join h1 .hero-headline-accent,
.hero-headline-accent {
  display: inline-block;
  background: linear-gradient(90deg, #D60619 0%, #F82899 100%) !important;
  /* background-size: 100% 100%; */
  /* -webkit-background-clip: text !important; */
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  color: transparent !important;
  text-decoration-color: #D60619;
  padding-bottom: 0;
  border-bottom: none !important;
}
.hero-headline-accent:hover {
  background: linear-gradient(90deg, #D60619 0%, #F82899 100%) !important;
  -webkit-background-clip: text !important;
  background-clip: text !important;
  -webkit-text-fill-color: transparent !important;
  color: transparent !important;
}

/* sections */
.content{
  padding:40px 60px;
}
.tech-difference{
  background-color:#141415;
  padding:70px;
}
.team-card{
  height:300px;
}
.leadership{
  border-bottom:10px solid #D60619;
}
.how-we h2, .how-we p{
  color:#FFF !important;
}

.how-we-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1fr) minmax(0, 1.2fr);
}
.how-we-step {
  padding: 20px;
  display: flex;
  flex-direction: column;
}

.how-we-step-1 {
  /* flex-direction: row;
  flex-wrap: wrap; */
  gap: 0.5rem;
}

.how-we-step-1 .head-font {
  flex: 1 1 auto;
}
.how-we-step-1 .how-we-icon-arrow {
  margin-left: auto;
  background-color: transparent;
  font-size: 16px;
  border: 1.4px solid #fff;
  justify-content: center;
  color: #fff;
  text-decoration: none;
}
.how-we-step-1 .how-we-icon-arrow:hover {
  color: #fff;
  opacity: 0.9;
}
.how-we-step:nth-child(3) {
  grid-column: 2;
  grid-row: 1;
  justify-content: center;
}
.how-we-step:nth-child(4) {
  grid-column: 2;
  grid-row: 2;
  justify-content: center;
}
.how-we-step-4 {
  grid-column: 3;
  grid-row: 1 / 3;
}
.how-we-step-5 {
  grid-column: 4;
  grid-row: 1 / 3;
  justify-content: center;
}
.how-we-icon {
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: #fff;
  color: #141415;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 20px;
}
.how-we-icon-plus {
  position: absolute;
  top: 1rem;
  right: 1rem;
  text-decoration: none;
  color: inherit;
}
.how-we-icon-plus:hover {
  color: #141415;
}
.key-job{
  width: 70%;
  margin: 0px auto;
}
.tog-human{
  font-size:25px !important;
  font-size: 25px !important;
  padding-bottom: 6px !important;
  line-height: 28px !important;
}

/* Carousel section: arrows + auto-advance */
.carousel-section-wrapper {
  position: relative;
}
.hero-carousel {
  position: relative;
  width: 100%;
}
.hero-carousel .carousel-slide {
  outline: none;
  height: 500px;
}
.hero-carousel .carousel-slide img {
  width: 100%;
  height: 500px;
  object-fit: cover;
  display: block;
}
/* Circular white arrows – solid white circle, dark red/maroon arrow, subtle shadow (exact match to reference) */
.carousel-arrow {
  position: absolute;
  z-index: 10;
  top: 50%;
  transform: translateY(-50%);
  width: 52px;
  height: 52px;
  border-radius: 50%;
  background: #fff !important;
  border: 1px solid rgba(0, 0, 0, 0.08);
  cursor: pointer;
  display: flex !important;
  align-items: center;
  justify-content: center;
  font-size: 22px;
  font-weight: 600;
  color: #7a0f0f !important;
  box-shadow: 0 2px 10px rgba(0, 0, 0, 0.15);
  transition: box-shadow 0.2s, color 0.2s;
}
.carousel-arrow:hover:not(.slick-disabled) {
  color: #5a0a0a !important;
  box-shadow: 0 3px 14px rgba(0, 0, 0, 0.2);
}
.carousel-arrow:focus {
  outline: none;
}
.carousel-arrow-prev {
  left: 24px;
}
.carousel-arrow-next {
  right: 24px;
}
/* Disabled arrows on first/last slide */
.carousel-arrow.slick-disabled {
  opacity: 0.4;
  cursor: not-allowed;
  pointer-events: none;
}


@media (max-width: 768px) {
  .content{
    padding:15px !important
  }
  .us-career .sm-d-block{
    display: block !important;
  }
  .us-career .px-sm-0{
    padding-left:0px !important;
    padding-right:0px !important;
  }
  .us-career .primary-btn{
    width:100% !important;
  }
  .global-impact{
    width: 85%;
    margin: 0px auto;
  }
  .sm-mt-20{
    margin-top: 20px !important;
  }
  .us-career .leader{
    padding-left: 20px !important;
    padding-right: 20px !important;  
  }
  .us-tech{
    min-height: 380px !important;
    background-position: center 0%;
    background-size: 205% 100%;
  }
  .join{
    max-width:100% !important;
    z-index: 1 !important;
  }
  .join h1{
    font-size: 30px !important;
    line-height: normal !important;
    margin-bottom: 0px !important;
  }
  .team-card {
    height: fit-content !important;
  }
  .sm-view1{
    width: 40% !important;
    padding-left: 0px !important;
  }
  .sm-view2{
    width: 60% !important;
  }
  .sm-br{
    display: none !important;
  }
}
 
@media screen and (max-width: 991px) {
  .navbar-collapse {
    position: absolute;
    top: 100%;
    left: 130px;
    right: 0;
    background-color: white;
    padding: 10px 20px;
    box-shadow: 0 10px 10px rgba(0, 0, 0, 0.1);
    z-index: 99;
  }
  .join{
    z-index: 1;
  }
  .how-we-grid {
    grid-template-columns: 1fr;
    grid-template-rows: auto;
    min-height: 0;
  }
  .how-we-title,
  .how-we-step-1,
  .how-we-step:nth-child(3),
  .how-we-step:nth-child(4),
  .how-we-step-4,
  .how-we-step-5 {
    grid-column: 1;
    grid-row: auto;
  } 
}
/* ipad mini */
@media screen and (min-width: 767px) and (max-width: 1024px){
  .us-tech{
    min-height:580px !important;
  }
  .us-career .primary-btn {
    width: 55% !important;
  }
  .team-card{
    margin-top: 5px !important;
    height: 330px !important;
  }
  .join h1{
    font-size: 60px !important;
  }
  .us-career .ipad-align{
    align-items:normal !important;
    margin-top: 30px !important;
  }
  .us-career .leader-view{
    margin-top:0px !important
  }
}
/* ipad air */
@media screen and (min-width: 820px) and (max-width: 1180px){
  .join{
    z-index: 1;
    max-width: 100%;
  }
  .sm-br{
    display: none !important;
  }
}
/* lap 90% */
@media screen and (min-width: 1400px) and (max-width: 1423px){
  .page-container{
    max-width: 1260px;
  }
  .us-tech{
    height:590px;
  }
}
/* lap 80% */
@media screen and (min-width: 1424px) and (max-width: 1600px){
  .page-container{
    max-width: 1280px;
  }
  .us-tech{
    height:660px;
  }
}
/* lap 75% */
@media screen and (min-width: 1601px) and (max-width: 1710px){
  .us-tech{
    height:710px;
  }
}
/* system 100% */
@media screen and (min-width: 1900px) and (max-width: 1920px) {
  .page-container{
    max-width: 1280px;
  }
  .us-tech{
    height:810px;
  }
  .sm-br{
    display: none !important;
  }
  .primary-btn{
    width:50%
  }
  .hero-carousel .carousel-slide {
    height: 660px;
  }
  .hero-carousel .carousel-slide img {
    height: 660px;
  }
}
/* system 125% */
@media screen and (min-width: 1425px) and (max-width: 1536px) {
  .hero-carousel .carousel-slide {
    height: 550px;
  }
  .hero-carousel .carousel-slide img {
    height: 550px;
  }
}
/* 150% resolution */
@media screen and (min-width: 220px) and (max-width: 855px) {
}