    :root{
      --accent: #ffcc00;
      --primary: #0b3468;
      --glass: rgba(255,255,255,0.08);
      --card-shadow: 0 10px 30px rgba(10,20,40,0.08);
    }
    *{box-sizing:border-box}
    body{
      font-family: 'Poppins', sans-serif;
      color:#222;
      margin:0;
      -webkit-font-smoothing:antialiased;
      scroll-behavior:smooth;
      background: linear-gradient(180deg,#fbfbff 0%, #f7f9fc 100%);
    }

    /* ---------- NAVBAR ---------- */
    .navbar {
      transition: all .35s ease;
      padding: 18px 0;
      background: transparent;
      z-index: 1050;
    }
    .navbar .brand-logo{
      height:44px;
      width:44px;
      border-radius:10px;
      object-fit:cover;
      border:2px solid rgba(255,255,255,0.06);
      box-shadow:0 6px 18px rgba(10,20,40,0.12);
    }
    .navbar .navbar-brand { font-weight:700; color:#fff; letter-spacing:.4px; }
    .nav-link { color: rgba(255,255,255,0.95) !important; font-weight:500; margin-left:12px; }
    .nav-link:hover{ color:var(--accent) !important; transform:translateY(-2px); }
    .navbar.scrolled {
      background: linear-gradient(90deg, rgba(11,52,104,0.95), rgba(42,82,152,0.95));
      padding: 10px 0;
      box-shadow: 0 8px 30px rgba(4,10,25,0.25);
    }
    .btn-ghost {
      background: transparent;
      border: 1px solid rgba(255,255,255,0.15);
      color:#fff;
      padding:8px 14px;
      border-radius:10px;
      transition: all .25s;
    }
    .btn-ghost:hover { background: rgba(255,255,255,0.06); color:var(--accent); transform:translateY(-3px); }

    /* Make the navbar overlay the carousel (no gap) */
    header { position:relative; }
    main { margin-top:0; }

    /* ---------- HERO / BANNER (full height carousel) ---------- */
    .hero-carousel .carousel-item {
  height: 100vh;
  background-size: cover;
  background-position: center;
  position: relative;
}
.hero-overlay {
  position: absolute;
  top: 0; left: 0;
  width: 100%; height: 100%;
  background: rgba(0,0,0,0.6);
  z-index: 1;
}
.hero-caption {
  z-index: 2;
  max-width: 900px;
}
.hero-caption h1 {
  font-size: clamp(2rem, 5vw, 3.5rem);
}
.hero-caption p {
  font-size: clamp(1rem, 2vw, 1.25rem);
}
.hero-cta .btn {
  font-size: 1rem;
}
    /* ---------- SECTION TITLES ---------- */
    .section {
      padding: 80px 0;
    }
    .section .title {
      text-align:center;
      font-weight:700;
      color:#0b3468;
      margin-bottom:16px;
      font-size:1.6rem;
      position:relative;
    }
    .section .subtitle { text-align:center; color:#666; margin-bottom:34px; max-width:900px; margin-left:auto; margin-right:auto; }

    /* ---------- SERVICES (classy) ---------- */
    .services-grid .card {
      border-radius:14px;
      overflow:hidden;
      border:none;
      background: linear-gradient(180deg,#ffffff,#fbfbff);
      box-shadow: var(--card-shadow);
      transition:transform .35s ease, box-shadow .35s ease;
      min-height:220px;
    }
    .services-grid .card:hover{
      transform: translateY(-12px);
      box-shadow: 0 24px 50px rgba(10,20,40,0.12);
    }
    .services-grid .card .icon-wrap{
      width:68px; height:68px; border-radius:12px;
      display:flex; align-items:center; justify-content:center;
      background: linear-gradient(135deg, rgba(11,52,104,0.12), rgba(42,82,152,0.08));
      font-size:28px; color:var(--primary);
      margin-bottom:12px;
    }
    .services-grid .card h5{ font-weight:600; color:#0b3468; }
    .services-grid .card p{ color:#555; }

    /* ---------- GALLERY ---------- */
    .gallery-grid img {
      border-radius:12px;
      width:100%;
      height:220px; object-fit:cover;
      transition:transform .35s ease, box-shadow .35s ease;
      box-shadow: 0 8px 26px rgba(10,20,40,0.06);
      cursor:pointer;
    }
    .gallery-grid img:hover{ transform:scale(1.04); box-shadow: 0 30px 60px rgba(10,20,40,0.12); }

    /* ---------- TESTIMONIALS ---------- */
    .testimonial-card{
      background:linear-gradient(180deg,#fff,#fcfcff);
      padding:24px;
      border-radius:14px;
      box-shadow: var(--card-shadow);
      border:none;
    }
    .testimonial-card .avatar{
      width:64px; height:64px; border-radius:12px; object-fit:cover; margin-right:14px;
      box-shadow: 0 8px 20px rgba(10,20,40,0.08);
    }
    .testimonial-meta { display:flex; align-items:center; margin-bottom:10px; }

    /* ---------- ITR FORM (classy) ---------- */
    .itr-card{
      border-radius:14px;
      background: linear-gradient(180deg,#fff,#fbfbff);
      box-shadow: var(--card-shadow);
      padding:24px;
      border:none;
    }
    .form-floating .form-control{ border-radius:10px; padding:22px 14px; }
    .form-floating label { padding-left:8px; color:#666; }

    /* ---------- CONTACT & MAP ---------- */
    .map-card { border-radius:12px; overflow:hidden; box-shadow: var(--card-shadow); border:none; }

    /* ---------- FOOTER ---------- */
    footer{ background:#061229; color:#cbd5e1; padding:56px 0 30px; }
    footer a{ color:#cbd5e1; text-decoration:none; }
    footer a:hover{ color:var(--accent); }

    /* ---------- BACK TO TOP ---------- */
    #backToTop {
      position: fixed;
      right: 18px;
      bottom: 20px;
      width:48px; height:48px;
      background: linear-gradient(135deg,var(--primary), #1b64b7);
      color:#fff; display:flex; align-items:center; justify-content:center;
      border-radius:12px; box-shadow: 0 12px 30px rgba(11,52,104,0.25); z-index: 1200;
      border:none;
    }
    #backToTop:hover{ transform:translateY(-4px); }

    /* Responsive tweaks */
    @media (max-width: 767px){
      .hero-caption { margin-left: 6%; margin-right:6%; }
      .hero-caption h1{ font-size:2.2rem; }
      .carousel-caption { bottom: 30% !important; }
      .gallery-grid img { height:160px; }
    }