 :root {
     --navy-950: #0A1130;
     --navy-900: #101B4D;
     --navy-800: #16215F;
     --navy-700: #212C74;
     --navy-100: #E7E9F5;
     --red-600: #E31E2A;
     --red-700: #C4141F;
     --gray-50: #F6F7FB;
     --text-dark: #141833;
     --text-muted: #6B7086;
     --white: #FFFFFF;
 }

 * {
     box-sizing: border-box;
 }

 body {
     font-family: 'Inter', sans-serif;
     color: var(--text-dark);
     background: var(--white);
 }

 h1,
 h2,
 h3,
 h4,
 .brand-word {
     font-family: 'Poppins', sans-serif;
 }

 a {
     text-decoration: none;
 }

 .btn-brand-red {
     background: var(--red-600);
     border: 2px solid var(--red-600);
     color: var(--white);
     font-weight: 600;
     font-size: .9rem;
     white-space: nowrap;
     padding: .7rem 1.6rem;
     border-radius: 8px;
     transition: background .2s ease, border-color .2s ease, transform .15s ease;
 }

 .btn-brand-red:hover {
     background: var(--red-700);
     border-color: var(--red-700);
     color: var(--white);
     transform: translateY(-1px);
 }

 .btn-outline-brand {
     background: transparent;
     border: 2px solid var(--white);
     color: var(--white);
     font-weight: 600;
     padding: .65rem 1.5rem;
     border-radius: 8px;
 }

 .btn-outline-brand:hover {
     background: var(--white);
     color: var(--navy-900);
 }

 .btn-outline-light {
     background: transparent;
     border: 2px solid rgba(255, 255, 255, 0.35);
     color: var(--white);
     font-weight: 600;
     padding: .7rem 1.5rem;
     border-radius: 8px;
 }

 .btn-outline-light:hover {
     background: var(--white);
     color: var(--navy-900);
 }

 /* ---------- Navbar ---------- */
 .navbar-vkc {
     background: var(--navy-900);
     padding: .75rem 0;
 }

 .logo-plate img {
     height: 70px;
     width: auto;
     display: block;
 }

 .navbar-vkc .nav-link {
     color: #D7DAEE;
     font-weight: 400;
     font-size: .85rem;
     letter-spacing: .08em;
     padding: .5rem 1rem !important;
 }

 .navbar-vkc .nav-link.active,
 .navbar-vkc .nav-link:hover {
     color: var(--white);
 }

 .navbar-vkc .nav-link.active {
     position: relative;
 }

 .navbar-vkc .nav-link.active::after {
     content: "";
     position: absolute;
     left: 1rem;
     right: 1rem;
     bottom: .15rem;
     height: 2px;
     background: var(--red-600);
     border-radius: 2px;
 }

 /* ---------- Hero ---------- */
 .hero {
     background: url(../images/hero_bg.webp) no-repeat center center/cover;
     padding: 5.5rem 0 6rem;
     position: relative;
     overflow: hidden;
     min-height: 70vh;
 }

 .hero::before {
     content: "";
     position: absolute;
     inset: 0;
     background:
         radial-gradient(circle at 85% 20%, rgba(227, 30, 42, 0.16), transparent 45%),
         radial-gradient(circle at 10% 90%, rgba(255, 255, 255, 0.06), transparent 40%);
     pointer-events: none;
 }

 .hero h1 {
     color: var(--navy-800);
     font-weight: 800;
     font-size: clamp(2.1rem, 4vw, 2.5rem);
     line-height: 1.15;
 }

 .hero h1 span {
     color: var(--red-600);
 }

 .hero p.lead {
     color: #000;
     font-size: 0.90rem;
     max-width: 34rem;
 }

 .hero-stats {
     display: flex;
     gap: 2rem;
     margin-top: 2.5rem;
 }

 .hero-stats .stat-num {
     color: var(--navy-900);
     font-family: 'Poppins', sans-serif;
     font-weight: 700;
     font-size: 1.5rem;
 }

 .hero-stats .stat-label {
     color: #000;
     font-size: .85rem;
 }

 /* Hero illustration */
 .hero-art {
     position: relative;
     z-index: 1;
 }

 .hero-art img {
     width: 390px;
     position: absolute;
     top: -72px;
     left: 50%;
     transform: translateX(-50%);
 }

 /* ---------- Section headings ---------- */
 .eyebrow-bar {
     width: 46px;
     height: 4px;
     background: var(--red-600);
     border-radius: 2px;
 }

 .eyebrow-bar.light {
     background: var(--white);
 }

 .section-title {
     font-weight: 700;
     color: var(--navy-900);
     font-size: clamp(1.8rem, 3vw, 1.6rem);
     margin-bottom: 1rem;
 }

 .section-sub {
     color: var(--text-muted);
     max-width: 38rem;
     line-height: 1.7;
 }

 /* ---------- About ---------- */
 .about-section {
     background: linear-gradient(180deg, #ffffff 0%, #f5f7ff 100%);
 }

 .about-visual {
     position: relative;
     min-height: 430px;
     display: flex;
     align-items: center;
     justify-content: center;
 }

 .about-visual::before {
     content: "";
     position: absolute;
     inset: 24px 10% 12px 12%;
     background: linear-gradient(135deg, rgba(16, 27, 77, .12), rgba(227, 30, 42, .08));
     border-radius: 24px;
     box-shadow: 0 30px 60px -35px rgba(16, 27, 77, .6);
 }

 .about-badge {
     position: absolute;
     top: 18px;
     left: 16px;
     background: var(--white);
     color: var(--navy-900);
     border-radius: 999px;
     padding: .6rem 1rem;
     font-size: .8rem;
     font-weight: 700;
     box-shadow: 0 20px 35px -25px rgba(16, 27, 77, .6);
     z-index: 2;
 }

 .about-panel {
     position: relative;
     z-index: 2;
     width: min(100%, 430px);
     padding: 1.4rem;
 }

 .mini-card {
     background: var(--navy-900);
     color: var(--white);
     border-radius: 18px;
     padding: 1.2rem 1.25rem;
     display: flex;
     justify-content: space-between;
     align-items: end;
     margin-bottom: 1rem;
     box-shadow: 0 26px 55px -30px rgba(16, 27, 77, .75);
 }

 .mini-card .mini-label {
     font-size: .76rem;
     opacity: .75;
     letter-spacing: .08em;
     text-transform: uppercase;
 }

 .mini-card strong {
     font-size: 2rem;
     font-family: 'Poppins', sans-serif;
 }

 .about-visual-card {
     background: rgba(255, 255, 255, .88);
     border: 1px solid rgba(16, 27, 77, .08);
     border-radius: 20px;
     min-height: 250px;
     padding: 1.25rem;
     position: relative;
     overflow: hidden;
     box-shadow: 0 20px 50px -30px rgba(16, 27, 77, .75);
 }

 .map-pill {
     display: inline-flex;
     padding: .5rem .8rem;
     border-radius: 999px;
     font-weight: 700;
     color: var(--navy-900);
     background: #edf1ff;
     font-size: .72rem;
     letter-spacing: .04em;
     text-transform: uppercase;
 }

 .route-lines {
     position: absolute;
     inset: 0;
     background:
         radial-gradient(circle at 30% 35%, rgba(227, 30, 42, .12), transparent 12%),
         radial-gradient(circle at 70% 62%, rgba(16, 27, 77, .12), transparent 14%),
         linear-gradient(180deg, rgba(16, 27, 77, 0.02), rgba(16, 27, 77, 0.08));
 }

 .route-lines span {
     position: absolute;
     display: block;
     border: 2px solid rgba(16, 27, 77, .28);
     border-color: rgba(16, 27, 77, .28) transparent transparent transparent;
     border-radius: 50%;
 }

 .route-lines span:nth-child(1) {
     width: 180px;
     height: 180px;
     left: 40px;
     top: 50px;
     transform: rotate(20deg);
 }

 .route-lines span:nth-child(2) {
     width: 210px;
     height: 210px;
     right: 30px;
     bottom: 18px;
     transform: rotate(-18deg);
 }

 .route-lines span:nth-child(3) {
     width: 260px;
     height: 260px;
     left: 50%;
     top: 50%;
     transform: translate(-50%, -50%) rotate(12deg);
 }

 .about-points {
     display: grid;
     gap: 1rem;
     margin-top: 1.5rem;
 }

 .about-point-card {
     display: flex;
     gap: 1rem;
     align-items: flex-start;
     background: rgba(255, 255, 255, .8);
     border: 1px solid rgba(16, 27, 77, .08);
     border-radius: 16px;
     padding: 1rem 1.1rem;
 }

 .about-point-card h5 {
     color: var(--navy-900);
     font-weight: 700;
     margin-bottom: .3rem;
 }

 .about-point-card p {
     color: var(--text-muted);
     margin: 0;
     line-height: 1.6;
 }

 /* ---------- Why choose us ---------- */
 .why-us-section {
     background: var(--white);
 }

 .why-feature {
     background: var(--white);
     border: 1px solid #E7E9F5;
     border-radius: 18px;
     padding: 1.5rem 1.2rem;
     height: 100%;
     transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
     box-shadow: 0 18px 35px -30px rgba(16, 27, 77, .4);
 }

 .why-feature:hover {
     transform: translateY(-3px);
     border-color: rgba(227, 30, 42, .4);
     box-shadow: 0 18px 38px -28px rgba(227, 30, 42, .3);
 }

 .feature-icon {
     width: 52px;
     height: 52px;
     border-radius: 14px;
     display: inline-flex;
     align-items: center;
     justify-content: center;
     background: linear-gradient(135deg, rgba(16, 27, 77, .08), rgba(227, 30, 42, .1));
     color: var(--navy-900);
     margin-bottom: 1rem;
 }

 .feature-icon svg {
     width: 24px;
     height: 24px;
 }

 .feature-icon-large {
     width: 58px;
     height: 58px;
 }

 .why-feature h5 {
     color: var(--navy-900);
     font-family: 'Poppins', sans-serif;
     font-weight: 700;
     margin-bottom: .6rem;
 }

 .why-feature p {
     color: var(--text-muted);
     margin: 0;
     line-height: 1.7;
 }

 /* ---------- CTA ---------- */
 .cta-box {
     background: linear-gradient(135deg, var(--navy-900), var(--navy-800));
     border: 1px solid rgba(255, 255, 255, .08);
     border-radius: 24px;
     padding: 2rem 2rem;
     display: flex;
     align-items: center;
     justify-content: space-between;
     gap: 1.5rem;
     box-shadow: 0 25px 60px -35px rgba(16, 27, 77, .7);
 }

 .cta-box h2 {
     font-weight: 700;
     color: var(--white);
     font-size: clamp(1.7rem, 3vw, 2.4rem);
     margin-bottom: .75rem;
 }

 .cta-box p {
     color: #D5D9F4;
     max-width: 40rem;
     margin: 0;
     line-height: 1.7;
 }

 .cta-actions {
     display: flex;
     align-items: center;
     flex-wrap: wrap;
     gap: .75rem;
 }

 /* ---------- Services ---------- */
 .services-wrap {
     background: var(--white);
     border-radius: 16px;
     padding: 1.5rem;
     box-shadow: 0 20px 45px -20px rgba(16, 27, 77, .25);
     margin-top: -4.5rem;
     position: relative;
     z-index: 2;
 }

 .service-card {
     border: 1px solid #E7E9F5;
     border-radius: 12px;
     padding: 1.2rem 1.4rem;
     height: 100%;
     transition: border-color .2s ease, transform .2s ease;
     display: flex;
     gap: 1rem;
     align-items: flex-start;
 }

 .service-card:hover {
     border-color: var(--red-600);
     transform: translateY(-3px);
 }

 .service-icon {
     min-width: 52px;
     height: 52px;
     border-radius: 10px;
     background: var(--navy-100);
     display: inline-flex;
     align-items: center;
     justify-content: center;
     margin-bottom: 1rem;
 }

 .service-icon svg {
     width: 26px;
     height: 26px;
 }

 .service-card h5 {
     font-family: 'Poppins', sans-serif;
     font-weight: 700;
     font-size: 1.02rem;
     color: var(--navy-900);
     margin-bottom: .4rem;
 }

 .service-card p {
     color: var(--text-muted);
     font-size: .9rem;
     margin-bottom: 0;
 }

 /* ---------- Tracking ---------- */
 .tracking-card {
     background: var(--navy-900);
     border-radius: 16px;
     padding: 1.5rem;
     color: var(--white);
     position: relative;
     overflow: hidden;
 }

 .tracking-card input.form-control {
     border: none;
     border-radius: 8px 0 0 8px;
     padding: .85rem 1rem;
 }

 .tracking-card .btn-brand-red {
     border-radius: 0 8px 8px 0;
 }

 .tracking-meta {
     display: flex;
     gap: 1.75rem;
     margin-top: 1.5rem;
     flex-wrap: wrap;
 }

 .tracking-meta .item {
     display: flex;
     align-items: center;
     gap: .5rem;
     font-size: .88rem;
     color: #C7CBE4;
 }

 .tracking-meta svg {
     width: 18px;
     height: 18px;
     flex: none;
 }

 .map-art {
     opacity: .9;
 }

 /* ---------- Quote form ---------- */
 .quote-card {
     background: var(--navy-800);
     border-radius: 16px;
     padding: 2rem;
     color: var(--white);
     margin-top: -4.5rem;
     position: relative;
     z-index: 2;
 }

 .quote-card h3 {
     font-weight: 700;
     margin-bottom: 1.3rem;
 }

 .quote-card .form-control,
 .quote-card .form-select {
     background: rgba(255, 255, 255, .06);
     border: 1px solid rgba(255, 255, 255, .18);
     color: var(--white);
     border-radius: 8px;
     padding: .75rem 1rem;
     margin-bottom: .85rem;
 }

 .quote-card .form-control::placeholder {
     color: #A9AEC9;
 }

 .quote-card .form-control:focus,
 .quote-card .form-select:focus {
     background: rgba(255, 255, 255, .09);
     border-color: var(--red-600);
     box-shadow: none;
     color: var(--white);
 }

 .quote-card .btn-brand-red {
     width: 100%;
 }

 .quote-contact {
     margin-top: 1.5rem;
     padding-top: 1.3rem;
     border-top: 1px solid rgba(255, 255, 255, .14);
     font-size: .9rem;
     color: #C7CBE4;
 }

 .quote-contact div {
     display: flex;
     gap: .6rem;
     align-items: center;
     margin-bottom: .5rem;
 }

 .quote-contact svg {
     width: 17px;
     height: 17px;
     color: var(--red-600);
     flex: none;
 }

 /* ---------- Coverage strip ---------- */
 .coverage-strip {
     background: var(--gray-50);
     border-top: 1px solid #ECEEF6;
     border-bottom: 1px solid #ECEEF6;
 }

 .coverage-strip .num {
     font-family: 'Poppins', sans-serif;
     font-weight: 800;
     color: var(--navy-900);
     font-size: 2rem;
 }

 .coverage-strip .label {
     color: var(--text-muted);
     font-size: .88rem;
 }

 /* ---------- Footer ---------- */
 footer {
     background: var(--navy-950);
     color: #B7BBD6;
     padding-top: 3.5rem;
 }

 footer h6 {
     color: var(--white);
     font-family: 'Poppins', sans-serif;
     font-weight: 700;
     margin-bottom: 1rem;
 }

 footer a {
     color: #B7BBD6;
 }

 footer a:hover {
     color: var(--white);
 }

 footer ul {
     list-style: none;
     padding: 0;
     margin: 0;
 }

 footer li {
     margin-bottom: .6rem;
     font-size: .92rem;
 }

 .footer-bottom {
     border-top: 1px solid rgba(255, 255, 255, .1);
     margin-top: 2.5rem;
     padding: 1.2rem 0;
     font-size: .85rem;
     color: #8B8FB0;
 }

 .social-dot {
     width: 36px;
     height: 36px;
     border-radius: 50%;
     background: rgba(255, 255, 255, .08);
     display: inline-flex;
     align-items: center;
     justify-content: center;
     margin-right: .5rem;
 }

 .social-dot:hover {
     background: var(--red-600);
 }

 .social-dot svg {
     width: 16px;
     height: 16px;
 }

 /* ---------- Partner carousel ---------- */
 .partners-section {
     background: linear-gradient(180deg, #ffffff 0%, #f7f8fd 100%);
     border-top: 1px solid #eef0f8;
 }

 .partners-carousel {
     overflow: hidden;
     position: relative;
     background: rgba(16, 27, 77, 0.02);
     border: 1px solid rgba(16, 27, 77, 0.06);
     border-radius: 20px;
     padding: 1rem 0;
 }

 .partners-carousel::before,
 .partners-carousel::after {
     content: "";
     position: absolute;
     top: 0;
     width: 90px;
     height: 100%;
     z-index: 2;
 }

 .partners-carousel::before {
     left: 0;
     background: linear-gradient(to right, #f7f8fd, rgba(247, 248, 253, 0));
 }

 .partners-carousel::after {
     right: 0;
     background: linear-gradient(to left, #f7f8fd, rgba(247, 248, 253, 0));
 }

 .partner-track {
     display: flex;
     align-items: center;
     gap: 1rem;
     width: max-content;
     animation: partnerScroll 24s linear infinite;
 }

 .partner-item {
     min-width: 170px;
     height: 90px;
     padding: 1.05rem 1.2rem;
     border-radius: 14px;
     background: var(--white);
     border: 1px solid rgba(16, 27, 77, 0.08);
     display: flex;
     align-items: center;
     justify-content: center;
     box-shadow: 0 15px 30px -28px rgba(16, 27, 77, .8);
 }

 .partner-item img {
     display: block;
     width: 100%;
     max-width: 130px;
     height: 56px;
     object-fit: contain;
     filter: grayscale(1);
     opacity: .8;
     transition: transform .2s ease, opacity .2s ease, filter .2s ease;
 }

 .partner-item:hover img {
     transform: scale(1.03);
     opacity: 1;
     filter: grayscale(0);
 }

 @keyframes partnerScroll {
     from {
         transform: translateX(0);
     }

     to {
         transform: translateX(-50%);
     }
 }

 .lp-float {
     position: fixed;
     right: 20px;
     bottom: 20px;
     display: flex;
     flex-direction: column;
     gap: 9px;
     z-index: 1100;
 }

 .lp-float a {
     width: 48px;
     height: 48px;
     display: grid;
     place-items: center;
     border-radius: 50%;
     color: #fff;
     font-size: 21px;
     box-shadow: 0 5px 18px rgba(0, 0, 0, .2);
 }

 .lp-phone {
     background: var(--lp-orange);
 }

 .lp-whatsapp {
     background: #1aae5b;
 }

 @media (max-width: 991px) {
     .services-wrap {
         margin-top: 2rem;
     }

     .hero {
         padding-bottom: 3rem;
         text-align: center;
     }

     .hero p.lead {
         margin-left: auto;
         margin-right: auto;
     }

     .hero-stats {
         justify-content: center;
     }
 }
 @media screen and (max-width: 767px) {
     .hero {
        background: linear-gradient(#fff,#0000) ,url(../images/hero_bg.webp) no-repeat center center / cover;
        min-height: 90vh;
    }
    .hero-art img {
        width: 220px;
        left: 65%;
    }
 }