/* ========================= */
/* GLOBAL */
/* ========================= */

*{
margin:0;
padding:0;
box-sizing:border-box;
}

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

body{
font-family:Arial, Helvetica, sans-serif;
background:#fff;
color:#333;
}

/* ========================= */
/* BRAND COLORS */
/* ========================= */

:root{
--primary:#e31b23;
--primary-dark:#b31218;
--light:#f8f8f8;
}


/* ========================= */
/* VIDEO HERO */
/* ========================= */

.video-container{
position:relative;
height:100vh;
overflow:hidden;
}

.background-video{
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
object-fit:cover;
z-index:-1;
}


/* HERO CONTENT */

.hero-content{
position:absolute;
top:50%;
right:8%;
transform:translateY(-50%);
color:white;
max-width:520px;
}

.hero-text-box{
opacity:0;
animation:slideFromLeft 1.5s ease forwards;
}

.hero-title{
font-size:48px;
font-weight:700;
}

.hero-title span{
color:var(--primary);
}

.hero-desc{
font-size:18px;
margin-top:10px;
margin-bottom:20px;
}

.hero-btn{
background:var(--primary);
border:none;
padding:12px 24px;
color:white;
border-radius:6px;
transition:.3s;
}

.hero-btn:hover{
background:var(--primary-dark);
transform:translateY(-3px);
}

@keyframes slideFromLeft{
0%{
transform:translateX(-300px);
opacity:0;
}
100%{
transform:translateX(0);
opacity:1;
}
}


/* ========================= */
/* MILESTONE SECTION */
/* ========================= */

.milestone-section{
padding:90px 0;
background:linear-gradient(135deg,#fff5f5,#ffe9ea);
position:relative;
}

.milestone-heading{
font-size:42px;
font-weight:700;
color:var(--primary);
}

.milestone-number{
font-size:60px;
font-weight:700;
}

.milestone-text{
font-size:18px;
color:#555;
}


/* ========================= */
/* EXPERTISE SECTION */
/* ========================= */

.expertise-section{
padding:80px 0;
background:#fff;
text-align:center;
}

.expertise-heading{
font-size:36px;
font-weight:700;
margin-bottom:10px;
color:var(--primary);
}

.expertise-subtext{
max-width:700px;
margin:auto;
color:#666;
margin-bottom:50px;
}

.expertise-grid{
display:grid;
grid-template-columns:repeat(4,1fr);
gap:25px;
}

.expertise-card{
background:white;
padding:30px;
border-radius:12px;
box-shadow:0 8px 20px rgba(0,0,0,0.08);
transition:.3s;
cursor:pointer;
}

.expertise-card h3{
font-size:20px;
margin-bottom:10px;
}

.expertise-card p{
font-size:14px;
color:#666;
}

.expertise-card:hover{
transform:translateY(-8px);
box-shadow:0 15px 30px rgba(0,0,0,0.15);
border-bottom:4px solid var(--primary);
}


/* ========================= */
/* COMPANY HIGHLIGHTS */
/* ========================= */

.company-highlights{
padding:80px 0;
background:#fafafa;
}

.highlight-title{
text-align:center;
font-size:36px;
font-weight:700;
color:var(--primary);
margin-bottom:10px;
}

.highlight-subtitle{
text-align:center;
max-width:700px;
margin:auto;
margin-bottom:60px;
color:#666;
}

.highlight-wrapper{
display:flex;
align-items:stretch;
gap:40px;
}

.highlight-image,
.highlight-content{
flex:1;
height:420px;
}

.highlight-image img{
width:100%;
height:100%;
object-fit:cover;
border-radius:12px;
box-shadow:0 15px 35px rgba(0,0,0,0.15);
transition:.4s;
}

.highlight-image:hover img{
transform:scale(1.05);
}

.highlight-content{
background:white;
padding:40px;
border-radius:12px;
box-shadow:0 10px 30px rgba(0,0,0,0.08);
display:flex;
flex-direction:column;
justify-content:center;
}

.highlight-content h3{
font-size:26px;
margin-bottom:10px;
color:var(--primary);
}

.highlight-content p{
line-height:1.7;
color:#666;
}


/* SCROLL ANIMATION */

.reveal{
opacity:0;
transform:translateY(60px);
transition:.8s;
}

.reveal.active{
opacity:1;
transform:translateY(0);
}


/* ========================= */
/* CONTACT FORM */
/* ========================= */

.contact-container{
width:600px;
margin:60px auto;
background:#fff;
padding:30px;
border-radius:10px;
box-shadow:0 5px 20px rgba(0,0,0,0.1);
}

.form-row{
display:flex;
gap:20px;
margin-bottom:20px;
}

.form-group{
flex:1;
display:flex;
flex-direction:column;
}

label{
font-size:14px;
margin-bottom:6px;
font-weight:600;
}

input,select,textarea{
padding:10px;
border:1px solid #ddd;
border-radius:6px;
font-size:14px;
}

textarea{
height:120px;
resize:none;
}

button{
margin-top:15px;
background:var(--primary);
color:white;
border:none;
padding:12px 25px;
border-radius:6px;
font-size:15px;
cursor:pointer;
transition:.3s;
}

button:hover{
background:var(--primary-dark);
}


/* ========================= */
/* TABLET RESPONSIVE */
/* ========================= */

@media(max-width:992px){

.hero-content{
right:5%;
max-width:420px;
}

.hero-title{
font-size:36px;
}

.expertise-grid{
grid-template-columns:repeat(2,1fr);
}

.highlight-wrapper{
flex-direction:column;
}

.highlight-image,
.highlight-content{
height:auto;
}

.contact-container{
width:80%;
}

}


/* ========================= */
/* MOBILE RESPONSIVE */
/* ========================= */

@media(max-width:768px){

.video-container{
height:80vh;
}

.hero-content{
left:50%;
right:auto;
transform:translate(-50%,-50%);
text-align:center;
max-width:90%;
}

.hero-title{
font-size:30px;
}

.hero-desc{
font-size:15px;
}

.milestone-number{
font-size:40px;
}

.expertise-grid{
grid-template-columns:1fr;
}

.contact-container{
width:90%;
}

.form-row{
flex-direction:column;
}

}


/* ========================= */
/* SMALL MOBILE */
/* ========================= */

@media(max-width:480px){

.hero-title{
font-size:24px;
}

.hero-desc{
font-size:14px;
}

.highlight-image img{
height:260px;
}

.contact-container{
width:95%;
padding:20px;
}

button{
width:100%;
}

}

.contact-section{
padding:80px 0;
background:#fafafa;
}

.contact-title{
text-align:center;
font-size:36px;
font-weight:700;
color:#e31b23;
margin-bottom:10px;
}

.contact-subtitle{
text-align:center;
max-width:700px;
margin:auto;
margin-bottom:40px;
color:#666;
}

.contact-container{
max-width:700px;
margin:auto;
background:white;
padding:40px;
border-radius:12px;
box-shadow:0 10px 30px rgba(0,0,0,0.08);
}

.form-row{
display:flex;
gap:20px;
margin-bottom:20px;
}

.form-group{
flex:1;
display:flex;
flex-direction:column;
}

.form-group label{
font-weight:600;
margin-bottom:6px;
}

.form-group input,
.form-group select,
.form-group textarea{
padding:12px;
border:1px solid #ddd;
border-radius:6px;
font-size:14px;
transition:0.3s;
}

.form-group input:focus,
.form-group select:focus,
.form-group textarea:focus{
border-color:#e31b23;
outline:none;
box-shadow:0 0 5px rgba(227,27,35,0.3);
}

textarea{
min-height:120px;
resize:none;
}

.contact-btn{
margin-top:20px;
background:#e31b23;
color:white;
border:none;
padding:12px 25px;
border-radius:6px;
font-size:15px;
cursor:pointer;
transition:0.3s;
}

.contact-btn:hover{
background:#b31218;
transform:translateY(-2px);
}

@media(max-width:768px){

.form-row{
flex-direction:column;
}

}

.tieup-wrapper{
display:flex;
align-items:center;
justify-content:space-between;
gap:60px;
padding:80px 50px;
}

.tieup-left{
flex:1;
max-width:500px;
}

.tieup-right{
flex:1;
display:flex;
justify-content:center;
}

/* mobile responsive */

@media(max-width:992px){

.tieup-wrapper{
flex-direction:column;
text-align:center;
}

.tieup-left{
max-width:100%;
}

.tieup-right{
width:100%;
}

}

html{
scroll-behavior:smooth;
}

/* ================= FOOTER ================= */

.site-footer{

background:#111;

color:#ddd;

padding:70px 0 20px;

margin-top:80px;

position:relative;

overflow:hidden;

}

/* container */

.footer-container{

max-width:1200px;

margin:auto;

display:grid;

grid-template-columns:repeat(auto-fit,minmax(250px,1fr));

gap:40px;

padding:0 20px;

}

/* logo */

.footer-logo{

height:60px;

margin-bottom:15px;

}

/* text */

.footer-desc{

font-size:14px;

line-height:1.7;

color:#bbb;

}

/* headings */

.footer-col h3{

color:white;

margin-bottom:20px;

font-size:20px;

position:relative;

}

/* underline animation */

.footer-col h3::after{

content:"";

width:40px;

height:3px;

background:#e31b23;

position:absolute;

left:0;

bottom:-8px;

}

/* list */

.footer-col ul{

list-style:none;

padding:0;

}

.footer-col ul li{

margin-bottom:10px;

font-size:14px;

}

/* links */

.footer-col ul li a{

color:#bbb;

text-decoration:none;

transition:.3s;

}

.footer-col ul li a:hover{

color:#e31b23;

padding-left:5px;

}

/* social icons */

.social-icons{

margin-top:20px;

}

.social-icons a{

display:inline-block;

width:40px;

height:40px;

line-height:40px;

text-align:center;

border-radius:50%;

background:#222;

color:white;

margin-right:10px;

transition:.3s;

}

.social-icons a:hover{

background:#e31b23;

transform:translateY(-4px);

}

/* bottom */

.footer-bottom{

text-align:center;

border-top:1px solid #333;

margin-top:40px;

padding-top:15px;

font-size:14px;

color:#aaa;

}

/* responsive */

@media(max-width:768px){

.site-footer{

text-align:center;

}

.footer-col h3::after{

left:50%;

transform:translateX(-50%);

}

}
.testimonial-section{

padding:100px 0;

background:#f5f7fa;

}

.testimonial-title{

font-size:42px;

font-weight:700;

margin-bottom:60px;

color:#e63946;

}

.testimonial-section{
padding:80px 0;
background:#f8f9fc;
overflow:hidden;
}

.testimonial-title{
font-size:40px;
font-weight:700;
margin-bottom:40px;
}

.testimonial-slider{
overflow:hidden;
}
.testimonial-track::-webkit-scrollbar{
display:none;
}

.testimonial-track{
display:flex;
gap:25px;
animation:scrollTestimonials 30s linear infinite;
}

/* testimonial arrows */

.testimonial-slider{
position:relative;
}

.slider-btn{
position:absolute;
top:50%;
transform:translateY(-50%);
background: #e31b23;
border:none;
width:45px;
height:45px;
border-radius:50%;
font-size:22px;
cursor:pointer;
box-shadow:0 5px 15px rgba(0,0,0,0.2);
transition:.3s;
z-index:10;
}

.slider-btn:hover{
background:#e31b23;
color:white;
}

.prev{
left:10px;
}

.next{
right:10px;
}

/* pause testimonial scroll on hover */

.testimonial-slider:hover .testimonial-track{
animation-play-state: paused;
}

.testimonial-card{
min-width:320px;
background:white;
padding:25px;
border-radius:12px;
box-shadow:0 10px 25px rgba(0,0,0,0.1);
}



.testimonial-text{
font-size:15px;
line-height:1.7;
color:#555;
margin-bottom:15px;
}

.testimonial-name{
font-weight:700;
margin-bottom:3px;
}

.testimonial-role{
font-size:14px;
color:#777;
}

@keyframes scrollTestimonials{

0%{
transform:translateX(0);
}

100%{
transform:translateX(-50%);
}

}