/* BASIC RESET */
* { box-sizing: border-box; }
body { margin:0; font-family: Arial, Helvetica, sans-serif; color:#222; line-height:1.6; }
img { max-width:100%; height:auto; }

/* CONTAINERS */
.container { width:90%; max-width:1200px; margin:auto; }

/* HEADER */
.main-header { background:#0e2b4c; color:#fff; position:sticky; top:0; z-index:1000; }
.header-flex { display:flex; justify-content:space-between; align-items:center; padding:10px 0; }

.logo img { height:70px; }

/* NAVIGATION */
.nav ul { list-style:none; margin:0; padding:0; display:flex; gap:20px; }
.nav li { position:relative; }
.nav a { color:#fff; text-decoration:none; font-size:15px; font-weight:600; }
.nav a:hover, .nav a.active { color:#ffd34d; }

/* DROPDOWNS */
/* SUBMENU — HIDDEN BY DEFAULT */
.submenu {
    display: none;
    position: absolute;
    background: #143d70;
    top: 30px;
    left: 0;
    padding: 10px 0;
    min-width: 260px;
    border-radius: 6px;
    z-index: 9999;
}

/* SHOW ONLY WHEN HOVERING ON DESKTOP */
.dropdown:hover > .submenu {
    display: block;
}

/* SUBMENU LINKS */
.submenu li {
    padding: 8px 15px;
}

.submenu li a {
    color: #fff;
    display: block;
}

.submenu li a:hover {
    background: rgba(255,255,255,0.1);
}

.submenu li { padding:5px 0; }

/* MOBILE MENU */
.menu-toggle { display:none; cursor:pointer; font-size:30px; color:#fff; }

@media(max-width:768px){
    .nav { display:none; width:100%; background:#0e2b4c; padding:10px 0; }
    .nav ul { flex-direction:column; text-align:center; }
    .menu-toggle { display:block; }
}

/* HERO SLIDER */
.hero-slider {
    width: 100%;
    overflow: hidden;
    position: relative;
}

.hero-slider .slide {
    width: 100%;
    display: none;
}

.hero-slider .slide.active {
    display: block;
}

.hero-slider img {
    width: 100%;
    height: 450px;
    object-fit: cover;
}


@keyframes fade { from{opacity:0;} to{opacity:1;} }

/* PAGE BANNER */
.page-banner { position:relative; }
.page-banner img { width:100%; }
.page-banner .overlay {
    position:absolute; top:0; left:0; width:100%; height:100%;
    background:rgba(0,0,0,.3);
    display:flex; justify-content:center; align-items:center;
}
.page-banner h1,h7 { color:#fff; font-size:32px; }

/* CONTENT LAYOUT */
.content { padding:40px 0; }
h1,h2,h7 { color:#0e2b4c; }
ul { margin-left:18px; }

/* PRODUCT GRID */
.product-grid {
    display:grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap:20px;
}
.product-card {
    border:1px solid #ddd;
    border-radius:10px;
    padding:15px;
    text-align:center;
    background:#fff;
    transition:.3s;
}
.product-card:hover { box-shadow:0 4px 10px rgba(0,0,0,.15); }

.btn {
    background:#0e2b4c;
    color:#fff;
    padding:10px 15px;
    text-decoration:none;
    border-radius:6px;
    display:inline-block;
    margin-top:10px;
}
.btn:hover { background:#15467e; }

/* GALLERY */
.gallery {
    display:grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap:10px;
    margin-top:15px;
}
.gallery img {
    border-radius:8px;
    border:1px solid #ddd;
}

/* TESTIMONIALS */
.testimonial {
    border-left:5px solid #0e2b4c;
    padding:10px 15px;
    margin-bottom:15px;
    background:#f8f8f8;
}

/* FORMS */
form input, form textarea {
    width:100%;
    padding:10px;
    margin:8px 0;
    border-radius:6px;
    border:1px solid #ccc;
}
button { background:#0e2b4c; color:#fff; padding:10px 20px; border:none; border-radius:6px; }
button:hover { background:#15467e; cursor:pointer; }

/* FOOTER */
footer { background:#0e2b4c; color:#fff; margin-top:40px; }
.footer-grid {
    display:grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap:20px;
    padding:25px 0;
}
.footer-logo { width:140px; }

.copyright {
    text-align:center;
    padding:8px 0;
    background:#0a1d35;
    font-size:14px;
}
/* FORCE FIX — KEEP SUBMENU HIDDEN */
.nav .submenu {
    display: none !important;
}

/* SHOW ONLY ON HOVER (DESKTOP) */
.nav li.dropdown:hover > .submenu {
    display: block !important;
}

.home-cta {
    text-align:center;
    padding:30px 0 10px;
}

.home-cta h1,h7 { margin-bottom:10px; }

.contact-strip {
    background:#f2f6fb;
    border-top:1px solid #e0e6ef;
    border-bottom:1px solid #e0e6ef;
    padding:12px 0;
}

.contact-grid {
    display:grid;
    grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
    gap:10px;
    font-size:14px;
}

.lead { font-size:18px; color:#555; max-width:800px; margin:0 auto 15px; }

.btn.large { padding:14px 24px; font-size:16px; }

.block-light { background:#f7f9fc; border-top:1px solid #e4e8f0; border-bottom:1px solid #e4e8f0; }

.section-title { margin-bottom:10px; }
.section-title.white { color:#fff; }

/* USP */
.usp-section {
    background:#0e2b4c;
    color:#fff;
    padding:40px 0;
    text-align:center;
}
.usp-text { max-width:800px; margin:auto; }

/* GRID SECTIONS */
.info-grid, .highlight-grid {
    display:grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap:18px;
    margin-top:15px;
}

.info-card, .highlight {
    background:#fff;
    border:1px solid #e1e5ec;
    border-radius:10px;
    padding:15px;
    transition:.3s;
}
.info-card:hover, .highlight:hover { box-shadow:0 4px 14px rgba(0,0,0,.12); }

/* Industries */
.industry-list { columns:2; max-width:600px; }
@media(max-width:600px){ .industry-list { columns:1; } }

.about p { margin-bottom:10px; }
.about h3 { color:#0e2b4c; margin-top:12px; }

.page-heading { margin-bottom:15px; }

/* TIMELINE */
/* TIMELINE (corrected spacing) */
.timeline {
    border-left:2px solid #d7dfec;
    padding-left:32px;   /* more space between bullet + text */
    margin-top:10px;
}

.timeline-item {
    position:relative;
    margin-bottom:18px;
}

.timeline-item .dot {
    position:absolute;
    left:-16px;          /* push bullet slightly outward */
    top:6px;
    width:14px;
    height:14px;
    background:#0e2b4c;
    border-radius:50%;
}

.timeline-content {
    padding-left:4px;    /* gentle buffer to avoid overlap */
}

.timeline-content h4 {
    margin:0 0 4px;
    color:#0e2b4c;
}


/* CARDS */
.card-grid {
    display:grid;
    grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
    gap:16px;
}
.card {
    background:#fff;
    border:1px solid #e3e8f2;
    border-radius:10px;
    padding:15px;
    transition:.3s;
}
.card:hover { box-shadow:0 4px 14px rgba(0,0,0,.12); }

/* USP GRID */
.usp-grid {
    display:grid;
    grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
    gap:18px;
    margin-top:15px;
}
.usp-item { color:#fff; border:1px solid rgba(255,255,255,0.25); border-radius:12px; padding:14px; }
.usp-item h4 { margin:6px 0; }
.icon {
    display:inline-block;
    width:28px; height:28px;
    border:1px solid #fff;
    border-radius:50%;
    text-align:center;
    line-height:26px;
    font-size:13px;
}

/* VALUES */
.values .card h3 { color:#0e2b4c; }

/* Scroll fade-in effect (optional, matches homepage style) */
.about .timeline-item, .about .card, .about .usp-item {
    opacity:0;
    transform:translateY(10px);
    transition:.5s;
}
.about .scrolled-in {
    opacity:1;
    transform:translateY(0);
}
.content h1,h7 { margin-bottom:8px; }
.content h2 { margin-top:18px; }
.content ul li { margin-bottom:6px; }

/* DROPDOWN PARENT MUST BE POSITIONED */
.nav li.dropdown {
    position: relative;
}

/* SUBMENU — PROPER POSITION */
.nav .submenu {
    display: none;
    position: absolute;
    top: 100%;        /* attaches menu directly under Products */
    left: 0;
    background: #143d70;
    min-width: 260px;
    padding: 8px 0;
    border-radius: 6px;
    z-index: 9999;
}

/* KEEP VISIBLE while hovering Products OR submenu itself */
.nav li.dropdown:hover > .submenu,
.nav .submenu:hover {
    display: block !important;
}

/* LINKS INSIDE SUBMENU */
.nav .submenu li a {
    color: #fff;
    display: block;
    padding: 8px 14px;
}

.nav .submenu li a:hover {
    background: rgba(255,255,255,.15);
}

.intro-text { font-size:17px; max-width:850px; }

.highlight-box {
    background:#eaf2ff;
    border-left:4px solid #0e2b4c;
    padding:10px 12px;
    border-radius:6px;
    margin:8px 0 14px;
}

.feature-grid {
    display:grid;
    grid-template-columns:repeat(auto-fit, minmax(240px, 1fr));
    gap:14px;
    margin:10px 0 6px;
}

.feature-card {
    background:#fff;
    border:1px solid #e3e8f2;
    border-radius:10px;
    padding:12px;
    transition:.3s;
}
.feature-card:hover { box-shadow:0 4px 14px rgba(0,0,0,.12); }

.spec-table {
    width:100%;
    border-collapse:collapse;
    margin:10px 0 18px;
}
.spec-table td {
    padding:8px 10px;
    border:1px solid #e1e5ef;
}

.gallery.grid {
    display:grid;
    grid-template-columns:repeat(auto-fit, minmax(230px,1fr));
    gap:10px;
}

.cta-box {
    background:#0e2b4c;
    color:#fff;
    text-align:center;
    padding:18px 16px;
    border-radius:10px;
    margin-top:18px;
}
.cta-box .btn { background:#fff; color:#0e2b4c; }


.contact-page { padding-top:30px; }

.contact-grid {
    display:grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap:25px;
}

.contact-info p { margin-bottom:10px; }

.contact-form {
    background:#f7f9fc;
    border:1px solid #e3e8f2;
    padding:20px;
    border-radius:12px;
}

.contact-form h2 { margin-bottom:10px; }

.contact-form input,
.contact-form textarea {
    width:100%;
    padding:10px;
    margin-bottom:10px;
    border-radius:6px;
    border:1px solid #ccc;
}

.contact-form textarea { min-height:120px; }

.contact-form button {
    background:#0e2b4c;
    color:#fff;
    border:none;
    padding:12px;
    width:100%;
    border-radius:6px;
    font-size:16px;
}

.contact-form button:hover { background:#15467e; }

.form-success {
    background:#e6ffef;
    border:1px solid #2ecc71;
    color:#1e824c;
    padding:10px;
    margin-bottom:10px;
    border-radius:6px;
}

.form-error {
    background:#ffecec;
    border:1px solid #e74c3c;
    color:#c0392b;
    padding:10px;
    margin-bottom:10px;
    border-radius:6px;
}

.map-container {
    border-radius:12px;
    overflow:hidden;
    border:1px solid #e3e8f2;
}

.faq-section {
    margin-top:30px;
}

.faq-item {
    background:#f7f9fc;
    border:1px solid #dfe6f0;
    padding:14px;
    margin-bottom:12px;
    border-radius:8px;
}

.faq-item h3 {
    margin-bottom:6px;
    color:#0e2b4c;
}