 @import url('https://fonts.googleapis.com/css2?family=Inter:ital,opsz,wght@0,14..32,100..900;1,14..32,100..900&display=swap');

 * {
     margin: 0;
     padding: 0;
     box-sizing: border-box;
     font-family: "Inter", sans-serif;
     /* border: 1px solid red; */
 }

 html {
     scroll-behavior: smooth;
 }

 .main {
     height: 240px;
     position: relative;
     /* top: 160px; */
     width: 100%;
 }

 .main-heading {
     font-size: 80px ;
     margin: 0 auto;
     text-align: center;
     font-weight: 600;
     display: flex;
     justify-content: center;
     padding-bottom: 80px;
     padding-top: 160px;
     animation: fadeUp 1.8s;
     color: #b57600;
     background-color: rgba(51, 51, 51, 0.08);
 }

 .img-content {
     display: grid;
     grid-template-columns: 1fr 1fr;
     align-items: center;
     gap: 80px;
     padding: 70px 8%;
     overflow: hidden;
     /* background-color: rgba(175, 123, 26, 0.1); */
     background-color: white;
     animation: fadeUp 2s ease;
 }

 .img-box {
     position: relative;
     display: flex;
     justify-content: center;
     align-items: center;
 }

 /* background design elements */

 .bg-circle {
     position: absolute;
     width: 350px;
     height: 350px;
     background: linear-gradient(135deg,
             rgba(181, 118, 0, .25),
             rgba(181, 118, 0, .05));
     border-radius: 50%;
     top: -50px;
     left: -60px;
     z-index: 0;
 }

 .bg-square {
     position: absolute;
     width: 180px;
     height: 180px;
     border: 3px dashed rgba(181, 118, 0, .25);
     border-radius: 25px;
     right: -20px;
     bottom: -30px;
     transform: rotate(20deg);
 }

 /* image */

 .img-box img {
     position: relative;
     width: 105%;
     /* max-width: 500px; */
     border-radius: 30px;
     z-index: 2;
     box-shadow: 0 20px 40px rgba(0, 0, 0, .15);
     transition: .5s;
 }

 .img-box img:hover {
     transform: translateY(-10px);
 }

 /* content */

 .content h2 {
     margin-bottom: 20px;
     font-size: 40px;
 }

 .why-choose-us h3,
 .tools h2,
 .content1 h2,
 .expertise-left h2 {
     font-size: 48px;
 }

 .content p {
     text-align: justify;
     font-size: 17px;
     line-height: 1.8;
     color: #555;
 }

 .content1 h2 {
     margin-bottom: 20px;
 }

 .content1 p {
     text-align: justify;
     font-size: 17px;
     line-height: 1.8;
     color: #555;
 }


 .why-choose-us {
     max-width: 1100px;
     margin: 0 auto 70px;
     padding: 50px 15px;
     background: linear-gradient(135deg,
             rgba(181, 118, 0, .3),
             #fff);
     border-radius: 30px;
     position: relative;
     box-shadow: 0 10px 35px rgba(0, 0, 0, .08);
     overflow: hidden;
 }

 /* Decorative element */

 .why-choose-us::before {
     content: "";
     position: absolute;
     width: 250px;
     height: 250px;
     border-radius: 50%;
     background: rgba(181, 118, 0, .08);
     top: -100px;
     right: -80px;
 }

 .why-choose-us h3 {
     margin-bottom: 25px;
     color: #111;
     position: relative;
 }

 .why-choose-us h3::after {
     content: "";
     width: 80px;
     height: 4px;
     background: #b57600;
     position: absolute;
     bottom: -12px;
     left: 0;
     border-radius: 10px;
 }

 .why-choose-us p {
     font-size: 17px;
     line-height: 1.9;
     color: #555;
     text-align: justify;
     margin-top: 25px;
     position: relative;
 }

 /* hover effect */

 .why-choose-us:hover {
     transform: translateY(-8px);
     transition: .5s ease;
 }

 /* expertise */
 .our-expertise {
     background:
         linear-gradient(180deg,
             #fff,
             rgba(181, 118, 0, .05));
     padding: 0px 8% 70px;
     text-align: center;
     /* background: #fff; */
 }

 .expertise-left h2 {
     margin-bottom: 20px;
 }

 .expertise-left h4 {
     max-width: 800px;
     margin: auto;
     line-height: 1.8;
     color: #666;
     font-size: 18px;
     font-weight: 400;
     margin-bottom: 60px;
 }

 /* 3 × 3 grid */

 .expertise-grid {
     display: grid;
     grid-template-columns: repeat(3, 1fr);
     gap: 25px;
 }

 /* cards */

 .expertise-grid div {
     padding: 25px;
     border-radius: 20px;
     background: white;
     box-shadow: 0 8px 25px rgba(0, 0, 0, .08);
     transition: .4s ease;
     font-size: 17px;
     font-weight: 500;
 }

 .expertise-grid div i {
     display: block;
     font-size: 30px;
     color: #b57600;
     margin-bottom: 15px;
 }

 .expertise-grid div:hover {
     transform: translateY(-8px);
     box-shadow: 0 15px 30px rgba(181, 118, 0, .18);
 }

 .tools {
     padding: 0 8% 70px;
     text-align: center;
     display: flex;
     flex-wrap: wrap;
     justify-content: center;
 }

 .tools p,
 .tools h2 {
     width: 100%;
 }

 .tools p {
     color: #b57600;
     text-align: center;
     margin-bottom: 80px;
     line-height: 1.5;
     font-size: 18px;
 }

 .tools h2 {
     max-width: 850px;
     margin: 0 auto 70px;
     line-height: 1.5;
     /* font-weight: 600; */
     margin-bottom: 15px;
 }

 /* tools row */

 .tools img {
     width: 15%;
     height: 110px;
     object-fit: contain;
     padding: 20px;
     margin: 0 15px;
     background: white;
     border-radius: 25px;
     box-shadow: 0 10px 25px rgba(0, 0, 0, .08);
     transition: .4s ease;
 }

 .tools img:hover {
     transform: translateY(-10px) scale(1);
     box-shadow: 0 15px 30px rgba(181, 118, 0, .2);
 }

/* Tablet and mobile layout */
@media (max-width: 1024px) {
    .main-heading {
        font-size: clamp(42px, 7vw, 64px);
        padding: 136px 24px 72px;
    }

    .img-content {
        gap: 48px;
        padding: 70px 6%;
    }

    .bg-circle {
        width: 260px;
        height: 260px;
        top: -50px;
        left: -40px;
    }    

    .content h2,
    .content1 h2,
    .why-choose-us h3,
    .expertise-left h2,
    .tools h2 {
        font-size: clamp(32px, 4.5vw, 48px);
    }

    .why-choose-us {
        margin: 0 15px 70px;
    }

    .tools {
        padding: 0 6% 70px;
    }

    .tools p {
        margin-bottom: 48px;
    }

    .tools img {
        width: 120px;
        margin: 0 10px;
    }

    .our-expertise {
        padding: 0px 8% 70px;
    }

    .footer1 {
        grid-template-columns: repeat(1, minmax(0, 1fr));
        margin: 0;
        padding: 52px 6%;
        column-gap: 48px;
        row-gap: 36px;
    }

    .services,
    .company {
        margin-left: 0;
    }
}

@media (max-width: 991px) {
    .img-content {
        padding: 48px 15px 40px;
    }

    .why-choose-us {
        margin: 0 15px 40px;
    }

    .tools {
        padding: 0 15px 40px;
    }

    .our-expertise {
         padding: 0px 15px 40px;
    }
}

@media (max-width: 768px) {
    body.nav-open {
        overflow: hidden;
    }

    .navbar {
        padding: 8px 18px;
    }

    .navbar .nav2 {
        display: none;
    }

    .hamburger {
        display: flex;
    }

    .logo {
        padding-left: 0;
    }

    .logo img {
        width: 48px;
    }

    .logo p {
        font-size: 23px;
    }

    .logo span {
        font-size: 15px;
    }

    .main-heading {
        padding: 100px 20px 54px;
        font-size: clamp(38px, 9vw, 56px);
    }

    .img-content {
        grid-template-columns: 1fr;
        gap: 44px;
    }

    .img-content.img-flex{
      display: flex;
      gap: 44px;
      flex-direction: column-reverse;
    }


    .img-content:nth-of-type(4) .content1 {
        order: 2;
    }

    .img-content:nth-of-type(4) .img-box {
        order: 1;
    }

    .img-box {
        width: min(100%, 600px);
        margin: 0 auto;
    }

    .img-box img {
        width: 100%;
    }

    .bg-circle {
        width: 260px;
        height: 260px;
        top: -35px;
        left: -35px;
    }

    .bg-square {
        width: 135px;
        height: 135px;
        right: -10px;
        bottom: -20px;
    }

    .content h2,
    .content1 h2,
    .why-choose-us h3,
    .expertise-left h2,
    .tools h2 {
        font-size: clamp(30px, 7vw, 42px);
    }

    .content p,
    .content1 p,
    .why-choose-us p {
        font-size: 16px;
        text-align: left;
    }

    .why-choose-us {
        padding: 34px 28px;
        border-radius: 22px;
    }

    .tools {
        gap: 10px;
    }

    .tools img {
        width: 90px;
        height: 90px;
        margin: 0;
        padding: 10px;
        border-radius: 20px;
    }

    .expertise-left h4 {
        font-size: 16px;
        margin-bottom: 38px;
    }

    .expertise-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 15px;
    }

    .expertise-grid div {
        width: 100%;
        font-size: 14px;
    }

    /* Odd number of cards → last card center */
    .expertise-grid div:nth-child(odd):last-child {
        grid-column: 1 / -1;
        justify-self: center;
        width: calc(50% - 7.5px);
    }

    .footer1 {
        grid-template-columns: 1fr;
        padding: 44px 15px;
    }

    .ishi-techno div:nth-child(2),
    .ishi-techno div:nth-child(3) {
        margin-left: 0;
    }
    .tools p{
        margin-bottom: 15px;
    }
}

@media(max-width:767px){

        .expertise-left h4{
            margin-bottom: 20px;
        }

        .tools p{
            margin-bottom: 15px;
        }

        .img-box, .img-box2 {
            width: min(90%, 460px);
            margin: 0 auto;
        }

        .why-choose-us{
            margin: 0 15px !important;
            padding: 30px 15px;
        }
        .tools {
            padding: 40px 15px;
        }
}

@media (max-width: 543px) {
    .fixed-icon {
        width: 48px;
        height: 48px;
        left: 14px;
        bottom: 14px;
    }
    .tools p{
        margin-bottom: 0;
    }
    .main-heading {
        padding-top: 100px;
        padding-bottom: 42px;
        font-size: 32px;
    }

    .img-box img {
        border-radius: 20px;
    }
     .img-box {
    width: min(90%, 460px);
    margin: 0 auto;
  }

    .bg-circle {
        width: 160px;
        height: 160px;
        left: -24px;
    }

    .bg-square {
        width: 105px;
        height: 105px;
    }

    .why-choose-us {
        padding: 28px 22px;
    }

    .tools p br {
        display: none;
    }


    .expertise-grid div {
        padding: 15px;
    }

    .footer-logo {
        padding-left: 0;
    }

    .info-card {
        align-items: flex-start;
        padding: 16px;
    }

    .icon-box {
        width: 44px;
        height: 44px;
        min-width: 44px;
        cursor: pointer;
    }

    .icon-box i {
        font-size: 20px;
    }

    .info-card p {
        font-size: 14px;
    }
}
