*{
    margin:0;
    padding:0;
    box-sizing:border-box;
}

body{
    font-family:Arial, sans-serif;
    overflow-x:hidden;
}

 
  
/* --------------------Hero ----------------------------*/
 
.hero1{
    position:relative;
    width:100%;
    min-height:100vh;
    overflow:hidden;
    display:flex;
    align-items:center;
}

/* VIDEO */
.hero-video1{
    position:absolute;
    top:0;
    left:0;
    width:100%;
    height:100%;
    object-fit:cover;
}

.overlay{
    position:absolute;
    inset:0;
    background:rgba(0,0,0,0.3);
}

/* CONTENT */
.hero-content1{
    position:relative;
    z-index:2;
    width:100%;
    max-width:1200px;
    margin:auto;
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:0 60px;
    color:#fff;
}

 
/* BUTTON */
.btn{
    display:inline-block;
    padding:12px 30px;
    background:#ff6b00;
    color:#fff;
    text-decoration:none;
    border-radius:5px;
    transition:0.3s;
}

.btn:hover{
    transform:translateY(-3px);
}

/* RIGHT SIDE */
.hero-content1{
    position:relative;
    z-index:2;
    width:100%;
    max-width:1200px;
    margin:auto;
    padding:0 60px;
    display:flex;
    justify-content:space-between;
    align-items:center;
    color:#fff;
}

.hero-left{
    flex:1;
}

.hero-left h1{
    font-size:3.7rem;
    margin-bottom:20px;
}

.hero-left p{
    font-size:1.3rem;
    margin-bottom:25px;
}

/* Right Side Stats */
.hero-right{
    flex:1;
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:20px;
    max-width:450px;
}

.stat-box{
    background:rgba(255,255,255,0.15);
    backdrop-filter:blur(10px);
    padding:25px;
    text-align:center;
    border-radius:15px;
    border:1px solid rgba(255,255,255,0.2);
}

.stat-box h2{
    font-size:2rem;
    color:#ff6b00;
    margin-bottom:10px;
}

.stat-box span{
    font-size:1rem;
    color:#fff;
}

@media (max-width:1024px){

    .hero-content1{
        padding:0 40px;
    }

    .hero-left h1{
        font-size:3rem;
    }

    .hero-left p{
        font-size:1.1rem;
    }

    .hero-right{
        max-width:380px;
        gap:15px;
    }

    .stat-box{
        padding:20px;
    }
}

@media (max-width:900px){

    .hero-content1{
        flex-direction:column;
        text-align:center;
        padding:0 20px;
        gap:30px;
    }

    .hero-left h1{
        font-size:2.5rem;
    }

    .hero-left p{
        font-size:1rem;
    }

    .hero-right{
        grid-template-columns:repeat(2,1fr);
        width:100%;
        max-width:100%;
    }

    .stat-box{
        padding:18px;
    }
}

@media (max-width:480px){
    
	.hero1{min-height:93vh;}
	
    .hero-content1{
        padding:0 10px;
		 
    }

    .hero-left h1{
        font-size:2rem;
    }

    .hero-left p{
        font-size:0.95rem;
    }

    .btn{
        padding:10px 22px;
        font-size:14px;
    }

    .hero-right{
        grid-template-columns:repeat(2,1fr);
        width:100%;
        max-width:100%;
    }

    .stat-box{
        padding:15px;
    }

    .stat-box h2{
        font-size:1.6rem;
    }
	
	
	 
}

 

/* ── SECTION ── */
.what-we-do {
  padding: 110px 8%;
  background-color: #f5f5f5;
  background-image: radial-gradient(circle, #d8d8d8 1px, transparent 1px);
  background-size: 26px 26px;
  position: relative;
  overflow: hidden;
}
.what-we-do::before {
  content: '';
  position: absolute;
  width: 600px; height: 600px;
  background: radial-gradient(circle, rgba(247,118,26,0.10), transparent 70%);
  top: -150px; right: -150px;
  border-radius: 50%;
  pointer-events: none;
}
.what-we-do::after {
  content: '';
  position: absolute;
  width: 400px; height: 400px;
  background: radial-gradient(circle, rgba(247,118,26,0.07), transparent 70%);
  bottom: -100px; left: -100px;
  border-radius: 50%;
  pointer-events: none;
}

/* ── CONTAINER ── */
.what-we-do-container {
  max-width: 1200px;
  margin: auto;
  position: relative;
  z-index: 1;
}

/* ── TITLE ── */
.what-section-title {
  text-align: center;
  margin-bottom: 70px;
}
.what-section-title .label {
  display: inline-block;
  font-size: 12px; font-weight: 600;
  letter-spacing: 3px;
  text-transform: uppercase;
  color: #fefefe;
  background: rgba(250, 125, 36);
  padding: 6px 18px;
  border-radius: 30px;
  margin-bottom: 18px;
}
.what-section-title h2 {
  font-family: 'Playfair Display', serif;
  font-size: 48px; font-weight: 800;
  color: #1b1a1a;
  margin-bottom: 18px;
  position: relative;
  display: inline-block;
  line-height: 1.2;
}
.what-section-title h2 .highlight { color: #f7761a; }
.what-section-title h2::after {
  content: '';
  width: 0; height: 4px;
  background: linear-gradient(90deg, #f7761a, #342105);
  position: absolute;
  bottom: -12px; left: 50%;
  transform: translateX(-50%);
  border-radius: 5px;
  animation: expandLine 1s 0.3s ease forwards;
}
@keyframes expandLine { to { width: 90px; } }
.what-section-title p {
  color: #777; font-size: 17px;
  max-width: 520px;
  margin: 25px auto 0;
  line-height: 1.8;
}

/* ── GRID ── */
.services {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px;
  counter-reset: card;
}

/* ── CARD ── */
.service-card {
  counter-increment: card;
  position: relative;
  overflow: hidden;
  background: #fff;
  padding: 45px 30px 35px;
  border-radius: 5px 60px 5px 60px;
  text-align: center;
  box-shadow: 0 8px 30px rgba(0,0,0,0.07);
  transition: all 0.45s cubic-bezier(0.23, 1, 0.32, 1);
  border: 2px solid transparent;
  /* SAFE DEFAULT — always visible */
  opacity: 1;
  transform: translateY(0);
}

/* JS adds this — safe animation */
.service-card.animate-ready {
  opacity: 0;
  transform: translateY(40px);
  transition: opacity 0.5s ease, transform 0.5s ease,
              box-shadow 0.45s cubic-bezier(0.23,1,0.32,1),
              border-color 0.45s;
}
.service-card.animate-ready.visible {
  opacity: 1;
  transform: translateY(0);
}

/* faded number */
.service-card::after {
  content: "0" counter(card);
  position: absolute;
  top: 10px; left: 18px;
  font-family: 'Playfair Display', serif;
  font-size: 54px; font-weight: 800;
  color: rgba(247,118,26,0.07);
  z-index: 0; line-height: 1;
  transition: color 0.4s ease;
}

/* hover fill */
.service-card::before {
  content: "";
  position: absolute;
  top: 0; left: 0;
  width: 100%; height: 0%;
  background: linear-gradient(145deg, #f7761a, #f3a85a);
  z-index: 0;
  transition: height 0.45s cubic-bezier(0.23, 1, 0.32, 1);
}
.service-card:hover::before { height: 100%; }
.service-card:hover::after  { color: rgba(255,255,255,0.12); }
.service-card * { position: relative; z-index: 1; }
.service-card:hover {
  transform: translateY(-12px);
  box-shadow: 0 25px 60px rgba(247,118,26,0.32);
  border-color: transparent;
}

/* ── ICON BOX ── */
.icon-box {
  width: 82px; height: 82px;
  margin: 0 auto 22px;
  background: linear-gradient(135deg, #fff3e6, #ffe0c0);
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.35s ease;
  box-shadow: 0 4px 18px rgba(247,118,26,0.15);
}
.service-card:hover .icon-box {
  background: rgba(255,255,255,0.22);
  box-shadow: 0 4px 18px rgba(0,0,0,0.10);
}
.icon-box svg {
  width: 36px; height: 36px;
  stroke: #f7761a; fill: none;
  transition: all 0.35s ease;
}
.service-card:hover .icon-box svg {
  stroke: #fff; fill: none;
  transform: scale(1.12) rotate(-5deg);
}

/* ── TEXT ── */
.service-card h3 {
  font-family: 'Playfair Display', serif;
  font-size: 22px; font-weight: 700;
  margin-bottom: 12px;
  color: #1b1a1a;
  transition: color 0.35s ease;
}
.service-card p {
  color: #666; font-size: 15px;
  line-height: 1.75;
  transition: color 0.35s ease;
}
.service-card:hover h3,
.service-card:hover p { color: #fff; }

/* ── LEARN MORE ── */
.learn-more {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-top: 18px;
  font-size: 13px; font-weight: 600;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: #f7761a;
  text-decoration: none;
  transition: all 0.3s ease;
}
.learn-more svg {
  width: 14px; height: 14px;
  stroke: #f7761a; fill: none;
  transition: transform 0.3s ease, stroke 0.3s ease;
}
.service-card:hover .learn-more { color: #fff; }
.service-card:hover .learn-more svg {
  stroke: #fff; fill: none;
  transform: translateX(5px);
}

/* ── CORNER TAG ── */
.card-tag {
  position: absolute;
  top: 20px; right: -30px;
  background: #f7761a;
  color: #fff;
  font-size: 10px; font-weight: 700;
  padding: 4px 34px;
  transform: rotate(45deg);
  letter-spacing: 1.5px;
  text-transform: uppercase;
  transition: background 0.3s ease;
  z-index: 2;
}
.service-card:hover .card-tag {
  background: rgba(255,255,255,0.3);
}

/* ============================================================
   RESPONSIVE
   ============================================================ */

/* 1024px */
@media (max-width: 1100px) {
  .what-we-do { padding: 90px 6%; }
  .what-section-title { margin-bottom: 55px; }
  .what-section-title h2 { font-size: 40px; }
  .what-section-title p { font-size: 16px; }
  .services { grid-template-columns: repeat(2, 1fr); gap: 24px; }
  .service-card { padding: 38px 24px 30px; }
  .service-card::after { font-size: 46px; }
  .icon-box { width: 74px; height: 74px; }
  .icon-box svg { width: 32px; height: 32px; }
  .service-card h3 { font-size: 20px; }
  .what-we-do::before { width: 400px; height: 400px; }
  .what-we-do::after  { width: 280px; height: 280px; }
}

/* 768px */
@media (max-width: 800px) {
  .what-we-do { padding: 75px 5%; }
  .what-section-title { margin-bottom: 45px; }
  .what-section-title .label { font-size: 11px; letter-spacing: 2.5px; }
  .what-section-title h2 { font-size: 34px; }
  .what-section-title p { font-size: 15px; max-width: 100%; }
  .services { grid-template-columns: repeat(2, 1fr); gap: 20px; }
  .service-card { padding: 32px 20px 26px; border-radius: 5px 45px 5px 45px; }
  .service-card::after { font-size: 40px; }
  .icon-box { width: 68px; height: 68px; margin-bottom: 16px; }
  .icon-box svg { width: 28px; height: 28px; }
  .service-card h3 { font-size: 18px; margin-bottom: 10px; }
  .service-card p { font-size: 14px; line-height: 1.65; }
  .learn-more { font-size: 12px; margin-top: 14px; }
  .card-tag { font-size: 9px; padding: 3px 28px; right: -26px; }
  .what-we-do::before,
  .what-we-do::after { display: none; }
}

/* 480px */
@media (max-width: 480px) {
  .what-we-do { padding: 60px 4%; }
  .what-section-title { margin-bottom: 35px; }
  .what-section-title .label { font-size: 13px; letter-spacing: 2px; padding: 5px 14px; }
  .what-section-title h2 { font-size: 28px; line-height: 1.3; }
  .what-section-title p { font-size: 14px; margin-top: 20px; }
  .services { grid-template-columns: 1fr; gap: 18px; }
  .service-card { padding: 30px 22px 25px; border-radius: 5px 40px 5px 40px; }
  .service-card::after { font-size: 38px; top: 8px; left: 14px; }
  .icon-box { width: 64px; height: 64px; margin-bottom: 16px; }
  .icon-box svg { width: 26px; height: 26px; }
  .service-card h3 { font-size: 20px; }
  .service-card p { font-size: 16px; }
  .learn-more { font-size: 11px; margin-top: 12px; }
  .card-tag { font-size: 8px; padding: 3px 26px; top: 16px; right: -28px; }
}
/* ------------------------why choose us ------------------------- */

.section-title{
    text-align:center;
    margin-bottom:60px;
}

.section-title h2{
    font-size:42px;
    font-weight:700;
    color:#fdfafa;
    margin-bottom:15px;
    position:relative;
    display:inline-block;
}

.section-title h2::after{
    content:'';
    width:90px;
    height:4px;
    background:linear-gradient(85deg, #f7761a, #342105);
    position:absolute;
    bottom:-10px;
    left:50%;
    transform:translateX(-50%);
    border-radius:5px;
}

.section-title p{
    color:#f0efef;
    font-size:18px;
    max-width:700px;
    margin:25px auto 0;
}


.why-mspl{
    padding:100px 8%;
    background:linear-gradient(to bottom, #0f0242, #12028a);
}

.container{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:60px;
    align-items:center;
}

.tag{
    background:#fd750d;
    color:#fff;
    padding:8px 18px;
    border-radius:30px;
    font-size:14px;
    letter-spacing:1px;
}

.left-content h2{
    font-size:48px;
    margin:20px 0;
    line-height:1.2;
    color:#faf9f9;
}

.left-content p{
    color:#fefcfc;
    line-height:1.8;
    margin-bottom:30px;
}

.read-btn{
    display:inline-block;
    padding:12px 20px;
    background:#fc5e1a;
    color:#fff;
    text-decoration:none;
    border-radius:10px;
    -webkit-border-radius:10px;
    -moz-border-radius:10px;
    -ms-border-radius:10px;
    -o-border-radius:10px;
}
.read-btn:hover{
    color:#0e0e0e;
     
}
.right-content{
    display:flex;
    flex-direction:column;
    gap:25px;
}

.feature-card{
    background:#fff;
    padding:30px;
    border-radius:15px;
    box-shadow:0 10px 30px rgba(0,0,0,.08);
    transition:.4s;
    position:relative;
}

.feature-card:hover{
    transform:translateX(10px);
}

.number{
    position:absolute;
    top:20px;
    right:25px;
    font-size:40px;
    font-weight:700;
    color:#e9eefb;
}

.feature-card h3{
    margin-bottom:10px;
    color:#222;
}

.feature-card p{
    color:#666;
    line-height:1.6;
}

 @media (max-width:800px){

    .why-mspl{
        padding:70px 5%;
    }

    .container{
        grid-template-columns:1fr;
        gap:40px;
    }

    .left-content{
        text-align:center;
    }

    .left-content h2{
        font-size:32px;
    }

    .left-content p{
        font-size:16px;
    }

    .right-content{
        gap:20px;
    }

    .feature-card{
        padding:22px;
    }
}



@media (max-width:480px){

    .why-mspl{
        padding:60px 15px;
    }

    .section-title h2{
        font-size:29px;
    }

    .section-title p{
        font-size:16px;
    }

    .tag{
        font-size:14px;
        padding:6px 14px;
    }

    .left-content h2{
        font-size:26px;
        margin:15px 0;
    }

    .left-content p{
        font-size:16px;
        line-height:1.6;
    }

    .read-btn{
        padding:10px 16px;
        font-size:16px;
    }

    .feature-card{
        padding:20px;
    }

    .feature-card h3{
        font-size:21px;
    }

    .feature-card p{
        font-size:16px;
    }

    .number{
        font-size:26px;
        top:10px;
        right:15px;
    }
}

/* -------------------------carousel image---------------------------- */
/* Content + Image Layout */
.hero-section{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:60px;
}

/* Left Content */
.hero-content{
    flex:1;
}

.hero-content h1{
    font-size:55px;
    line-height:1.2;
    padding-left:20px;
    margin-bottom:20px;
    color:#101010;
}

.hero-content p{
    font-size:18px;
    padding-left:22px;
    line-height:1.8;
    color:#555;
}

/* Right Image */
.hero-image{
    flex:1;
}

.hero-image .carousel{
    width:100%;
}

.hero-image img{
    width:100%;
    height:500px;
    object-fit:cover;
    clip-path: polygon(
        15% 0,
        100% 0,
        100% 100%,
        15% 100%,
        0 50%
    );
    box-shadow:0 15px 40px rgba(0,0,0,0.15);
}

@media (max-width:1024px){

    .hero-section{
        gap:40px;
        padding:0 20px;
    }

    .hero-content h1{
        font-size:42px;
    }

    .hero-content p{
        font-size:16px;
    }

    .hero-image img{
        height:420px;
    }
}

@media (max-width:800px){

    .hero-section{
        flex-direction:column;
        text-align:center;
        gap:30px;padding:20px;
    }

    .hero-content h1{
        font-size:34px;
        padding-left:0;
    }

    .hero-content p{
        padding-left:0;
        font-size:15px;
    }

    .hero-image{
        width:100%;
    }

    .hero-image img{
        height:350px;

         clip-path: polygon(
        15% 0,
        100% 0,
        100% 100%,
        15% 100%,
        0 50%
    );
    }
}
 

@media (max-width:480px){
     .hero-section{
        flex-direction:column;
        text-align:center;
        gap:30px;padding:20px;
    }
    .hero-content h1{
        font-size:29px;
        line-height:1.3;
    }

    .hero-content p{
        font-size:16px;
    }

    .hero-image img{
        height:265px;
        box-shadow:0 10px 25px rgba(0,0,0,0.15);
    }
}
/* --------------------------footer code------------------------------ */
 

.footer{
    position:relative;
    overflow:hidden;
    background:#132041;
    color:#fff;
    padding-top:70px;
}

/* Animated Background Shapes */
.footer-shapes{
    position:absolute;
    inset:0;
    overflow:hidden;
    z-index:0;
}

.footer-shapes span{
    position:absolute;
    display:block;
    background:rgba(248, 245, 245, 0.09);
    border-radius:8px;
    transform:rotate(45deg);
    animation:floatShape 15s linear infinite;
    -webkit-animation:floatShape 15s linear infinite;
}

.footer-shapes span:nth-child(1){
    width:120px;
    height:120px;
    left:10%;
    bottom:-120px;
}

.footer-shapes span:nth-child(2){
    width:80px;
    height:80px;
    left:35%;
    bottom:-100px;
    animation-duration:15s;
}

.footer-shapes span:nth-child(3){
    width:150px;
    height:150px;
    right:20%;
    bottom:-150px;
    animation-duration:20s;
}

.footer-shapes span:nth-child(4){
    width:100px;
    height:100px;
    right:5%;
    bottom:-120px;
    animation-duration:17s;
}

@keyframes floatShape{
    0%{
        transform:translateY(0) rotate(0deg);
        opacity:0;
    }
    20%{
        opacity:1;
    }
    100%{
        transform:translateY(-800px) rotate(360deg);
        opacity:0;
    }
}

/* Footer Content */
.footer-container{
    position:relative;
    z-index:2;

    max-width:1400px;
    margin:auto;
    display:grid;
    grid-template-columns:repeat(auto-fit,minmax(250px,1fr));
    gap:30px;
    padding:0 8% 50px;
}

/* Logo */
.footer-logo{
    width:180px;
    margin-bottom:20px;
    object-fit:contain;
}

/* Headings */
.footer-col h3{
    margin-bottom:20px;
    font-size:22px;
    position:relative;
}

.footer-col h3::after{
    content:'';
    width:50px;
    height:3px;
    background:#ff6b00;
    position:absolute;
    left:0;
    bottom:-8px;
}

/* Text */
.footer-col p{
    color:#cbd5e1;
    line-height:1.8;
}

/* Links */
.footer-col ul{
    list-style:none;
    padding:0;
}

.footer-col ul li{
    margin-bottom:12px;
}

.footer-col ul li a{
    text-decoration:none;
    color:#cbd5e1;
    transition:.3s;
}

.footer-col ul li a:hover{
    color:#ff6b00;
    padding-left:8px;
}

/* Social Icons */
.social-icons{
    margin-top:20px;
}

.social-icons a{
    width:42px;
    height:42px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    background:rgba(255,255,255,.08);
    color:#fff;
    border-radius:50%;
    margin-right:10px;
    text-decoration:none;
    transition:.3s;
}

.social-icons a:hover{
    background:#ff6b00;
    transform:translateY(-5px);
}

/* Footer Bottom */
.footer-bottom{
    position:relative;
    z-index:2;

    border-top:1px solid rgba(255,255,255,.1);
    text-align:center;
    padding:20px;
    color:#cbd5e1;
}

@media (max-width:1024px){

    .footer-container{
        padding:0 5% 40px;
        gap:25px;
    }

    .footer-logo{
        width:160px;
    }

    .footer-col h3{
        font-size:20px;
    }

    .footer-col p{
        font-size:15px;
    }
}

@media (max-width:768px){

    .footer{
        padding-top:60px;
    }

    .footer-container{
        grid-template-columns:repeat(2,1fr);
        gap:25px;
        padding:0 5% 40px;
    }

    .footer-logo{
        width:150px;
    }

    .footer-col h3{
        font-size:18px;
    }

    .footer-col p{
        font-size:14px;
        line-height:1.6;
    }

    .social-icons a{
        width:38px;
        height:38px;
    }
}

@media (max-width:480px){

    .footer{
        padding-top:50px;
    }

    .footer-container{
        grid-template-columns:1fr;
        text-align:center;
        gap:20px;
        padding:0 15px 30px;
    }

    .footer-logo{
        width:130px;
        margin:0 auto 15px;
    }

    .footer-col h3::after{
        left:50%;
        transform:translateX(-50%);
    }

    .footer-col h3{
        font-size:19px;
    }

    .footer-col p{
        font-size:15px;
    }

    .social-icons{
        justify-content:center;
    }

    .social-icons a{
        width:60px;
        height:60px;
    }

    .footer-bottom{
        font-size:15px;
        padding:15px;
    }
}
/* ---------------------------top btn--------------------------------- */
#topBtn{
    position:fixed;
    bottom:30px;
    right:30px;

    width:55px;
    height:55px;

    border:none;
    border-radius:50%;

    background:#fd790d;
    color:#fff;

    font-size:22px;
    cursor:pointer;

    display:none;
    z-index:9999;

    box-shadow:0 5px 15px rgba(0,0,0,0.3);
    transition:all 0.3s ease;
}

#topBtn:hover{
    background:#ff8f2d;
    transform:translateY(-5px);
}

#topBtn i{
    line-height:55px;
}

@media (max-width:1024px){

    #topBtn{
        width:50px;
        height:50px;
        font-size:20px;
        bottom:25px;
        right:25px;
    }

    #topBtn i{
        line-height:50px;
    }
}

@media (max-width:768px){

    #topBtn{
        width:45px;
        height:45px;
        font-size:18px;
        bottom:20px;
        right:20px;
    }

    #topBtn i{
        line-height:45px;
    }
}

@media (max-width:480px){

    #topBtn{
        width:60px;
        height:60px;
        font-size:18px;
        bottom:15px;
        right:15px;
        box-shadow:0 3px 10px rgba(0,0,0,0.25);
    }

    #topBtn i{
        line-height:40px;
    }
}