body { font-family: 'Hind Siliguri', sans-serif; color: #333; scroll-behavior: smooth; }
.navbar-brand { font-weight: 700; color: #0d6efd !important; font-size: 1.5rem; }
.nav-link { font-weight: 500; }
.section-title { font-weight: 700; margin-bottom: 50px; text-align: center; font-size: 2.2rem; }

/* Hero Section */
.hero-section { padding: 80px 0; background-color: #ffffff; }
.hero-title { font-weight: 700; font-size: 2.8rem; color: #1a1a1a; margin-bottom: 20px; }
.hero-title span { color: #0d6efd; }
.hero-subtitle { font-size: 1.2rem; color: #6c757d; margin-bottom: 30px; }
.hero-tags { font-weight: 600; color: #0d6efd; margin-bottom: 30px; }
.hero-tagline { border-left: 4px solid #0d6efd; padding-left: 15px; font-style: italic; color: #495057; background-color: #f8f9fa; padding: 15px; border-radius: 0 5px 5px 0; margin-top: 30px; font-weight: 500; }
.img-placeholder { background-color: #e9ecef; border-radius: 15px; height: 100%; min-height: 350px; display: flex; align-items: center; justify-content: center; color: #0d6efd; font-weight: bold; font-size: 1.5rem; border: 2px dashed #ced4da; }

/* Needs / Services Section */
.needs-section { padding: 80px 0; background-color: #f8f9fa; }
.service-card { background: #fff; border-radius: 12px; padding: 30px; height: 100%; border: none; box-shadow: 0 5px 15px rgba(0,0,0,0.05); transition: transform 0.3s ease, box-shadow 0.3s ease; }
.service-card:hover { transform: translateY(-8px); box-shadow: 0 15px 30px rgba(0,0,0,0.1); }
.icon-circle { width: 70px; height: 70px; border-radius: 50%; background-color: #e7f1ff; color: #0d6efd; display: flex; align-items: center; justify-content: center; font-size: 30px; margin-bottom: 20px; }
.service-card h4 { font-weight: 700; margin-bottom: 15px; font-size: 1.4rem; }

/* Main Services */
.main-services { padding: 80px 0; background-color: #ffffff; }
.feature-list li { margin-bottom: 10px; color: #555; font-size: 1.1rem; }
.feature-list i { color: #198754; margin-right: 10px; }
.combo-box { background: linear-gradient(135deg, #f0f7ff 0%, #ffffff 100%); border: 1px solid #cce3ff; border-radius: 15px; padding: 40px; margin-top: 50px; }

/* Solutions Section */
.solutions-section { padding: 80px 0; background-color: #f8f9fa; }
.solution-block { background: #fff; border-radius: 15px; padding: 40px; margin-bottom: 30px; box-shadow: 0 5px 15px rgba(0,0,0,0.03); border-left: 5px solid #0d6efd; }
.solution-title { font-weight: 700; color: #1a1a1a; margin-bottom: 15px; }
.solution-box-icon { font-size: 2.5rem; color: #0d6efd; margin-bottom: 15px; }
.solution-tag { background-color: #e9ecef; color: #495057; padding: 5px 15px; border-radius: 20px; font-size: 0.9rem; margin-right: 10px; margin-bottom: 10px; display: inline-block; font-weight: 500; }

/* Pricing Section */
.pricing-section { padding: 80px 0; background-color: #ffffff; }
.nav-pills .nav-link { font-size: 1.2rem; font-weight: 600; padding: 12px 30px; color: #495057; border-radius: 30px; margin: 0 5px; }
.nav-pills .nav-link.active { background-color: #0d6efd; color: #fff; }
.pricing-card { border: 1px solid #e9ecef; border-radius: 15px; padding: 40px 30px; text-align: center; height: 100%; transition: all 0.3s ease; position: relative; overflow: hidden; }
.pricing-card:hover { border-color: #0d6efd; box-shadow: 0 10px 30px rgba(13, 110, 253, 0.1); }
.pricing-card.popular { border-color: #0d6efd; box-shadow: 0 5px 20px rgba(13, 110, 253, 0.05); }
.popular-badge { background-color: #0d6efd; color: #fff; padding: 5px 30px; position: absolute; top: 15px; right: -30px; transform: rotate(45deg); font-size: 0.8rem; font-weight: bold; }
.price { font-size: 2.5rem; font-weight: 700; color: #1a1a1a; margin: 20px 0; }
.price span { font-size: 1rem; color: #6c757d; font-weight: 400; }
.pricing-features { list-style: none; padding: 0; margin-bottom: 30px; text-align: left; }
.pricing-features li { margin-bottom: 15px; color: #555; }
.pricing-features li i { color: #198754; margin-right: 10px; }

/* Support Section */
.info-box { background-color: #fff; border-left: 4px solid #ffc107; padding: 25px; border-radius: 10px; box-shadow: 0 5px 15px rgba(0,0,0,0.05); margin-bottom: 20px; }

/* Why Us & Process Section */
.why-us-section { padding: 80px 0; background-color: #f8f9fa; }
.why-card { text-align: center; padding: 30px; }
.why-icon { font-size: 3rem; color: #0d6efd; margin-bottom: 20px; }
.process-step { display: flex; align-items: flex-start; margin-bottom: 30px; }
.step-number { width: 50px; height: 50px; background-color: #0d6efd; color: #fff; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-size: 1.5rem; font-weight: bold; margin-right: 20px; flex-shrink: 0; }

/* FAQ Section */
.faq-section { padding: 80px 0; background-color: #ffffff; }
.accordion-button:not(.collapsed) { background-color: #f0f7ff; color: #0d6efd; font-weight: bold; }
.accordion-button:focus { box-shadow: none; border-color: rgba(0,0,0,.125); }

/* Contact Section */
.contact-section { padding: 80px 0; background-color: #f8f9fa; }

/* Footer */
footer { background-color: #1a1a1a; color: #fff; padding: 60px 0 20px; }
footer a { color: #a9a9a9; text-decoration: none; transition: color 0.3s; }
footer a:hover { color: #fff; }
.footer-title { font-weight: bold; margin-bottom: 20px; color: #fff; }