/*Banner*/
h1 {
	font-size: 4rem;
	line-height: 0.9;
	margin-bottom: 16px;
	font-family: 'Proxima Nova Bl';
}
h1 span {
	color: #d60a18;
}
h2, .fz-48 {
	letter-spacing: -0.9px;
}
.subhead-content{
	font-size:1.8rem;
	line-height: 1.3;
	letter-spacing: -0.3px;
	margin-bottom: 30px;
}
.tooltip-box{
	display: none;
	color: #e01321;
   font-size: 1.4rem;
   line-height: 0;
}
.banner-wrapper {
	margin-top: 85px;
	padding: 40px 0;
	background: linear-gradient(0deg, rgba(0, 0, 0, 0.15) 0%, rgba(0, 0, 0, 0) 24.33%), #ffffff;
}
.banner-wrap {

}
.banner-lft {
	margin-bottom:35px;
}
.banner-lft p {
	font-size: 1.8rem;
	line-height: 1.26;
	margin-bottom: 28px;
}
.generative-pointer{ 
	padding-left: 14px;
	margin-bottom: 24px;
}
.generative-pointer li{
	font-size: 14px;
	margin-bottom: 10px;
	font-weight: 600;
	list-style: disc;
}
.btn-connect {
	background-color: #02789e;
	color: #fff;
	font-size: 1.8rem;
	font-family: 'Proxima Nova Rg';
	font-weight: bold;
	text-transform: capitalize;
	padding: 16px 38px;
	cursor: pointer;
	border-radius: 4px;
	transition: all 0.5s;
	border: 2px solid transparent;
}
.btn-connect:hover {
	border: 2px solid #02789e;
	color: #14151b;
	background: transparent;
}
.banner-rht {
	text-align: center;
}
.banner-img {

}

/*Services*/
.service-section {
	padding: 50px 0 40px;
}
.service-section h2 {
	margin-bottom:12px;
}
.service-wrap {
	overflow-x: scroll;
	padding-bottom: 10px;
}
.service-box {
	padding: 20px 15px 0 0;
	flex: 0 0 85%;
	transition: all .5s;
	margin-right: 15px;
	border-top: 8px solid #14151b;
}
.service-box:hover {
	border-color: #e01321;
}
.service-box h3 {
	font-size: 24px;
	letter-spacing: -0.9px;
	margin-bottom: 18px;
}
.service-box p {
	font-size: 18px;
	line-height: 1.3;
}
/*CTA*/
.cta-section {
	background-color: #d9f6ff;
	border: 8px solid #02789e;
	padding: 50px 0;
}
.cta-section h3 {
	max-width: 920px;
	margin: 0 auto 30px;
}
/*AI Models*/
.model-section {
	padding: 50px 0 40px;
}
.model-section h2 {
	margin-bottom:18px;
}
.model-wrap {
	overflow-x: scroll;
	padding-bottom: 10px;
}
.model-sec {
	padding: 20px 15px 0 0;
	flex: 0 0 85%;
	transition: all .5s;
	margin-right: 15px;
	margin-bottom: 30px;
	position: relative;
}
.model-sec:before {
	content: "";
	width: 50px;
	height:2px;
	position: absolute;
	left: 0;
	top: 0;
	background-color: #14151b;
}
.model-sec h3 {
	font-size: 26px;
	margin-bottom: 16px;
	font-weight: 400;
	font-family: "Proxima Nova Rg";
}
.model-sec p {
	font-size: 1.8rem;
	line-height: 1.3;
}
/*Technology Stack*/
.technology-section {
	background-color: #c0dfeb;
	padding: 50px 0;
}
.technology-section h2 {
	margin-bottom:14px;
}
.tab-controls {
	border-bottom: 2px solid #14151b;
	display: none;
}
.tab-controls .tab-item {
	display: inline-block;
	width: auto;
}
.tab-section {
	display: block;
	margin: 0;
	padding: 0;
	position: relative;
	width: 100%;
}
.tab-item {
	display: block;
	width: 100%;
}
.tab-item p {
  font-size:1.8rem;
  line-height: 1.25;
  margin-bottom:22px;
}
.tab-item .tab-title {
	font-size: 2rem;
	font-weight: 600;
	padding: 15px 0;
	display: block;
	width: 100%;
	text-align: left;
	transition: 0.4s ease;
	color: #14151b;
	border-bottom: 2px solid #14151b;
	opacity: 0.5;
	position: relative;
	font-family: "Proxima Nova Rg";
}
.tab-item .tab-title:after {
	content: "";
	background: url("../images/down-arrow.png") no-repeat;
	width: 16px;
	height: 16px;
	position: absolute;
	right: 2px;
	top: 50%;
	transform: translateY(-50%);
}
.tab-item .tab-title:hover, .tab-item .tab-title.is-active {
	opacity: 1;
}
.tab-item:last-child .tab-title {
	border-bottom: none;
	padding-bottom: 0;
}
.tab-item .tab-content {
	box-sizing: border-box;
	display: none;
	height: 0;
	left: 0;
	opacity: 0;
	padding: 16px 0;
	position: relative;
	transition: 0.4s ease;
	visibility: hidden;
	width: 100%;
}
.tab-item .tab-content.is-active {
	display: block;
	height: auto;
	opacity: 1;
	visibility: visible;
}
.tech-logo {
	display: flex;
	flex-wrap: wrap;
}
.tech-logo svg .st0 {
	display: block;
}
.tech-logo svg .st2 {
	display: block;
}
.tech-logo svg .st1 {
	fill: #ffffff;
}
.tech-logo li {
	background: #14151b;
	color: #fff;
	line-height: normal;
	font-size: 14px;
	border-radius: 2px;
	padding: 4px;
	margin: 5px;
}
.tech-logo li svg {
	width: 100px;
}
/*Choose Us*/
.csr-section {
	padding-bottom: 25px;
}
.csr-bg {
	background: url(../images/generative-ai.jpg) no-repeat;
	background-size: cover;
	background-position: bottom;
	background-attachment: fixed
}
.csr-content {
	padding: 80px 0px;
	max-width: 795px
}
.csr-content h2 {
	color: #fff;
	padding-right: 20px;
	margin-bottom: 26px
}
.csr-content p {
	color: #fff;
	font-size: 2rem;
	line-height: 1.3;
}
.csr-wrapper {
	margin-top: -57px
}
.csr-box {
	background-color: #fff;
	margin-bottom: 30px;
	padding: 32px 15px 40px;
	box-shadow: 4px 6px 17.8px 2.2px rgba(0,0,0,.18)
}
.csr-subhead {
	display: flex;
	align-items: center;
	margin-bottom: 22px;
	flex-direction: column;
	text-align: center;
}
.csr_icon{
	margin-bottom:18px;
}
.csr-subhead h3 {
	width: calc(100% - 78px);
	font-size: 26px;
	margin-bottom: 0;
}
.csr-logo {
	width: 78px
}
.csr-box p {
	font-size:1.6rem;
	margin-bottom: 16px
}
.csr-box p:last-child {
	margin-bottom: 0
}
.industry-section {
	padding: 45px 0;
	background-color: #f5f5f5
}
.industry-section h2 {
	padding: 20px 15px 0 0;
	margin-bottom: 18px
}
.industry-section h2:before {
	content: "";
	position: absolute;
	left: 0;
	top: 0;
	width: 40px;
	height: 8px;
	background-color: #e42c38
}
.industry-list {
	display: flex;
	overflow: scroll;
	padding-bottom: 10px
}
.industry-list li {
	flex: 0 0 85%;
	padding: 15px;
	margin-right: 20px;
	border: 1px solid #14151b;
	transition: .3s ease-in-out
}
.industry-detail {
	padding-top: 14px;
}
.industry-detail h4 {
	font-size: 1.8rem;
	font-weight: 700;
	margin-bottom: 16px
}
.industry-detail h4 a {
	color: #14151b;
}
.industry-detail h4 a:hover {
	text-decoration: none
}
.industry-detail p {
	font-size: 1.6rem;
	line-height: 19px
}
/*Faq*/
.frequently-section {
	padding: 45px 0 40px
}
.faq-space {
	padding-top: 10px
}
.accordion {
	margin-bottom: 24px;
	position: relative;
}
.ans-point {
	display: none;
}
.que {
	cursor: pointer;
	font-size: 2rem;
	display: block;
	padding: 0 28px 16px 0;
	border-radius: .15em
}
.ans, .input-name, .list-head {
	font-size: 1.8rem
}
.bottom-line {
	background-color: #e6e6e6;
	height: 2px;
	border: none
}
.acc-question.active .que, .other-link li a:hover {
	color: #e42c38
}
.acc-question.active .faq-question, .acc-question:hover .faq-question {
	background-color: #dd1220;
	color: #fff
}
.acc-question.active::before {
	content: "";
	position: absolute;
	left: -10px;
	top: 1px;
	width: 2px;
	height: calc(100% - 20px);
	background-color: #14151b
}
.acc-question:after {
	content: "";
	cursor: pointer;
	position: absolute;
	top: 4px;
	right: 5px;
	border: solid #1f212c;
	border-width: 0 2px 2px 0;
	display: inline-block;
	padding: 4px;
	-webkit-transform-origin: center center;
	transform-origin: center center;
	-webkit-transition: -webkit-transform .25s;
	transition: transform .25s;
	transition: transform .25s, -webkit-transform .25s;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	pointer-events: none
}
.acc-question.active:after {
	top: 9px;
	-webkit-transform: rotate(225deg);
	transform: rotate(225deg)
}
.ans {
	line-height: normal;
	letter-spacing: -.7px;
	word-spacing: 1.5px;
	padding: 0 10% 20px 0
}
.list-head {
	font-weight: 600
}
.accordion-content ul {
	padding-bottom: 10px
}
.accordion-content li {
	font-size: 1.6rem;
	margin-bottom: 10px;
	padding-left: 20px;
	position: relative
}
.accordion-content li:after {
	content: "";
	position: absolute;
	left: 0;
	top: 6px;
	width: 5px;
	height: 5px;
	background-color: #dad4d6
}
.faq-question {
	background-color: #e9e7e7;
	position: absolute;
	justify-content: center;
	align-items: center;
	width: 30px;
	height: 30px;
	font-family: "Proxima Nova Th";
	font-weight: 700;
	font-size: 2rem;
	color: #14151b;
	top: 1px;
	left: 0;
	display: none
}
.small-content{
	display: block;
	font-size:1.6rem;
	margin-bottom: 20px;
}
/*Process*/
.process-section {
  padding-top: 45px;
}
.process-section h2{
	max-width:770px;
	margin-bottom: 14px;
}
.process-wrapper{
	border-bottom: 2px dotted #ccc;
   padding-bottom: 39px;
}
.process-blog {
  margin-bottom: 26px;
}
.process-gallery {
  
}
.process-wrap{
	position: relative;
	padding-left:42px;
	margin-bottom: 35px;
	overflow: hidden;
}
.process-wrap:last-child{
	margin-bottom: 0;
}
.process-wrap:after {
  content: "";
  position: absolute;
  top:28px;
  left: 12px;
  width: 0;
  height:100%;
  border: 1px solid #e6e6e6;
}
.process-wrap:last-child:after{
	display: none;
}
.process-list{
	
}
.process-decimal {
  position: absolute;
  left: 0;
  top: 0;
  width: 28px;
  height: 28px;
  font-size: 1.5rem;
  color: #14151b;
  z-index: 1;
  border-radius: 50%;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  background-color: #e9e7e7;
}
.process-list h3 {
  font-size: 22px;
  letter-spacing: -0.5px;
  margin-bottom: 12px;
}
.process-wrap p{
	font-size:1.7rem;
	line-height:1.27;
}







/*media*/
@media screen and (min-width: 576px) {
	h1 {
		font-size: 4.8rem;
		line-height: 0.9;
	}
	/*Services*/ /*AI Models */ /*Industry*/
	.service-box, .model-sec, .industry-list li {
		flex: 0 0 60%;
	}
}
@media screen and (min-width: 768px) {
	/*Banner*/
	.banner-lft {
		width: 50%;
		margin-bottom: 0;
	}
	.banner-rht {
		width: 40%;
		height: 100%;
	}
	.generative-pointer{
		margin-bottom: 24px;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}
	.generative-pointer li {
	  width: 44%;
}
	/*Services*/
	.service-wrap {
		flex-wrap: wrap;
		overflow: visible;
	}
	.service-box {
		flex: 0 0 auto;
		width: 47%;
		margin-right: 0;
		margin-bottom: 30px;
	}
	/*AI Models*/
	.model-wrap {
		flex-wrap: wrap;
		overflow: visible;
	}
	.model-sec {
		flex: 0 0 auto;
		width:32%;
		margin: 0 0 28px 0;
	}
	/*Choose Us*/
	.csr-box {
		width:32%;
		margin-bottom: 35px;
	}

	/*Industy*/
	.industry-list {
		flex-wrap: wrap;
		padding-bottom: 0;
		overflow: visible;
		border-top: 1px solid #14151b;
		border-left: 1px solid #14151b
	}
	.industry-list li {
		flex: auto;
		width: 33.333%;
		margin-right: 0;
		border: none;
		border-right: 1px solid #14151b;
		border-bottom: 1px solid #14151b
	}
	/*faq*/
	.frequently-section {
		padding: 50px 0 40px
	}
	.faq-space {
		padding-top: 0
	}
	.accordion {
		margin-bottom: 36px
	}
	.accordion-content {
		position: relative;
	}
	.que {
		padding: 0 70px 23px 0;
		letter-spacing: -.9px
	}
	.ans-point {
		position: absolute;
		top: 0;
		left: 0;
		width: 30px;
		height: 30px;
		justify-content: center;
		align-items: center;
		color: #fff;
		font-size: 2rem;
		letter-spacing: -.6px;
		font-family: "Proxima Nova Th";
		font-weight: 700;
		background-color: #14151b
	}
	.ans-point, .faq-question {
		display: inline-flex;
	}
	.bottom-line {
		margin-left: 40px
	}
	.acc-question, .accordion-content {
		padding-left: 40px
	}

}
@media screen and (min-width: 991px) {
	/*Technology Stack*/
	.tab-controls {
		display: flex;
		justify-content: space-between;
	}
	.tab-section .tab-item .tab-title {
		display: none;
	}
	.tab-item .tab-title {
		width: auto;
		font-size:1.6rem;
		border-bottom: none;
		font-weight: 400;
		letter-spacing: -0.3px;
		padding: 0 0 10px 0;
	}
	.tab-item .tab-content {
		padding: 25px 0 0;
	}
	.tech-logo li {
		font-size:1.5rem;
		margin:10px;
		padding: 4px 10px;
	}
	.tech-logo li:first-child{
		margin-left: 0;
	}
	.tab-item .tab-title::after{
		display: none;
	}
	.tab-item p{
		margin-bottom: 15px;
	}

}
@media screen and (min-width: 992px) {
	h1 {
		font-size: 5.2rem;
	}
	.subhead-content{
		font-size:2.2rem;
		max-width:720px;
	}
	/*Banner*/
	.banner-wrapper {
		padding: 70px 0 60px;
	}
	/*Industy*/
	.industry-list li {
		padding: 20px
	}
	/*Process*/
	.process-section {
  padding-top: 60px;
}
	.process-wrapper{
		padding-bottom: 55px;
		display:flex;
		align-items: flex-start;
		justify-content: space-between;
	}
	.process-blog{
		width:50%;
	}
	.process-gallery{
		width:45%;
		position: sticky;
        top:90px;
	}
	/*faq*/
	.frequently-section {
		position: relative
	}
	.faq-space {
		padding-top: 20px
	}
	.frequently-section h2 {
		margin-bottom: 44px
	}
}
@media screen and (min-width: 1200px) {
	.content .container {
		padding: 0 3%;
	}
	.subhead-content{
		max-width:820px;
		margin-bottom: 42px;
		line-height: 1.2;
	}
	/*Banner*/
	.banner-wrapper {
		margin-top: 99px;
	}
	.banner-lft p {
		font-size: 2rem;
	}
	.banner-rht{
		width:44%;
	}
	/*Services*/
	.service-section {
		padding: 65px 0 35px;
	}
	.service-box {
		width: 30.5%;
		margin-bottom: 36px;
	}
	.service-box h3 {
		font-size: 26px;
	}
	/*CTA*/
	.cta-section {
		padding: 60px 0;
	}
	/*AI Models*/
	.model-section {
		padding: 65px 0 40px;
	}
	.model-sec {
		width: 30.5%;
		padding: 20px 0 0 15px;
		margin-bottom: 36px;
	}
	/*Technology Stack*/
	.technology-section {
		padding: 65px 0;
	}
	.technology-section h2{
		max-width:720px;
	}
	.tab-item .tab-title{
		font-size:1.8rem;
	}
	.tab-item p{
		font-size:2rem;
		width:80%;
	}
	/*Choose Us*/
	.csr-section {
		padding-bottom: 40px;
	}
	.csr-box {
		width:32%;
		padding: 35px 20px;
	}
	.csr-box p{
		font-size:1.8rem;
		line-height: 1.3;
	}

	/*Industry*/
	.industry-section {
		padding: 65px 0
	}
	.industry-list li {
		display: flex;
		padding: 25px
	}
	.industry-list li:hover {
		border: 1px solid #14151b;
		border-radius: 6px;
		background-color: #f8e3a6
	}
	.industry-list li:hover {
		transform: scale(1.05);
		box-shadow: 0 4px 8px rgba(0,0,0,.12);
	}
	.industry-list li:hover .industry-logo {
		transform: scale(1.1);
		transition: .3s
	}
	.industry-detail {
		margin-left: 30px
	}
	.industry-detail p{
		line-height:1.33;
	}
	/*faq*/
	.frequently-section h2 {
		margin-bottom: 46px
	}
	.frequently-section:after {
		content: "";
		bottom: -37px;
		z-index: -1;
		left: 0;
		width: 0;
		height: 0;
		border-top: 175px solid transparent;
		border-left: 175px solid #e42c38;
		border-bottom: 175px solid transparent;
		display: none
	}
	.que {
		padding: 0 170px 23px 0;
		font-size: 2.6rem
	}
	.ans {
		font-size: 2rem;
		line-height: normal;
		word-spacing: normal;
		letter-spacing: normal
	}
	.accordion {
		margin-bottom: 38px
	}
	/* csr section styling */
	.csr-subhead{
		flex-direction:row;
		text-align: left;
	}
	.csr-subhead h3 {
		margin-left: 20px;
	}

	.csr_icon {
		margin-bottom: 0;
	}
	/* csr section styling close */
}
@media screen and (min-width: 1280px) {
	.banner-wrapper .container {
		padding: 0 3%;
	}
	h1 {
		font-size: 6.2rem;
	}
	.subhead-content{
		margin-bottom:48px;
	}
	/*banner*/
	.banner-lft p {
		font-size: 2.2rem;
		line-height: 1.3;
		letter-spacing: -0.3px;
	}
	.generative-pointer li{
		font-size:1.6rem;
	}
	/*Services*/
	.service-box h3 {
		font-size: 30px;
	}
	/*Technology Stack*/
	.tech-logo li {
		font-size:1.6rem;
	}
	/*Choose Us*/
	.csr-subhead h3{
		font-size:3rem;
	}
	/*Process*/
	.process-section{
		padding-top: 70px;
	}
	.process-list h3{
		font-size: 26px;
	}
	.process-wrapper{
		padding-bottom: 75px;
	}
	.process-wrap p{
		font-size:1.8rem;
	}
	/*faq*/
	.que {
		padding: 0 200px 35px 0
	}
	.ans-point {
		top: 0
	}
	.ans {
		padding: 3px 18% 20px 0
	}
	.acc-question, .accordion-content {
		padding-left: 55px
	}
	.acc-question::after {
		padding: 6px;
		right: 23px
	}
	.bottom-line {
		margin-left: 55px
	}
}
@media screen and (min-width: 1366px) {
	.industry-section h2 {
		padding: 23px 23px 0 0;
		margin-bottom:12px
	}
	.industry-section h2::before {
		top: -11px
	}
	.industry-list li {
		padding: 40px 20px 50px 28px;
	}
	.benefits-box h3 {
		padding-top: 24px;
		margin-bottom: 30px
	}
	.benefits-box h3::after {
		top: 0
	}
}

@media screen and (min-width: 1440px) {
	.banner-wrapper .container, .content .container {
		padding: 0 15px;
	}
	h1 {
		font-size: 7.2rem;
	}
	/*Banner*/
	.banner-wrap{
		align-items: center;
	}
	.btn-connect {
		padding: 20px 42px;
	}
	/*Services*/
	.service-section {
		padding: 80px 0 40px;
	}
	/*Cta*/
	.cta-section {
		padding: 70px 0;
		border-width: 12px;
	}
	/*AI Models*/
	.model-section {
		padding: 80px 0 40px;
	}
	.model-section h2{
		margin-bottom:14px;
	}
	.model-sec h3 {
		font-size: 3rem
	}
	/*Choose Us*/
	.csr-content {
		padding: 90px 0;
	}
	.csr-section {
		padding-bottom: 60px;
	}
	.csr-bg{
		background-position:left;
	}
	.csr-box {
	  padding: 35px 30px;
	}
	.csr-content p{
		font-size:2.4rem;
	}
	.csr-box p {
		font-size: 1.8rem;
		line-height: 1.3;
	}
	/*Process*/
	.process-gallery{
		top:125px;
	}
	.process-list h3 {
     font-size: 28px;
    }
	/*Faq*/
	.frequently-section {
		padding: 70px 0 50px;
	}

}

