
    :root{
      --ink:#272e59;
      --muted:#5b6577;
      --radius:18px;
      --max:1500px;
      --accent:#272e59;
    }
    
    
    .navbar{--bs-navbar-padding-y:.75rem;
      background:rgba(255,255,255,.86);
      backdrop-filter:saturate(160%) blur(10px);
      border-bottom:2px solid var(--ink);
      position:relative;
    }
    .navbar.scrolled{background:rgba(255,255,255,.98);box-shadow:0 4px 18px rgba(15,42,87,0.1)}
    .navbar-brand img{
      height:clamp(34px,4vw,48px)
    }
    .nav-link{font-weight:700;color:var(--ink);position:relative;display:inline-block;transition:color .25s ease, transform .25s ease}
    .nav-link::after{content:"";position:absolute;left:0;bottom:-6px;height:2px;width:0;background:var(--accent);transition:width .25s ease}
    .nav-link:hover{transform:translateY(-2px)}
    .nav-link:hover::after{width:100%}

    .navbar .btn-cta {  position: static;  
      font-weight: 900;  
      border: none;  
      border-radius: 50px;  
      padding: 14px 36px;  
      font-size: 1.1rem;  
      background: linear-gradient(90deg, #272e59, #272e59);  
      color: #fff;  
      box-shadow: 0 0 25px #5b6577;  
      transition: transform .25s ease, box-shadow .25s ease;  
      display: inline-flex;  
      align-items: center;  
      justify-content: center;  
      z-index: 2;}
    
    .navbar .btn-cta:hover { transform: scale(1.04); box-shadow: 0 0 45px #5b6577; }


    .cta-row{display:flex;gap:.8rem;flex-wrap:wrap;justify-content:center}
    .btn-line{display:inline-block;border:2px solid var(--ink);border-radius:10px;padding:.6rem 1.2rem;font-weight:700;text-decoration:none;color:var(--ink);transition:.3s;background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(240,245,255,.8));box-shadow:0 4px 10px rgba(15,42,87,.05)}
    .btn-line:hover{background:var(--accent);color:#fff;transform:translateY(-2px);box-shadow:0 6px 14px rgba(15,42,87,.15)}


    footer{border-top:2px solid var(--ink);padding:40px 0;background:rgba(255,255,255,0.9);backdrop-filter:blur(4px)}

    @media (max-width: 576px){
      .hero-caption{margin-bottom:2rem;padding:1rem 1.2rem}
      .hero-caption h1{font-size:1.25rem}
      .media-wide{aspect-ratio:4/3;max-height:none}
    }

    #loader {
      position: fixed;
      inset: 0;
      background: #f2f2f2;
      display: flex;
      align-items: center;
      justify-content: center;
      z-index: 9999;
      transition: opacity 0.6s ease, visibility 0.6s ease;
    }
    #loader img {
      width: 350px;
      height: auto;
    }
    #loader.hidden {
      opacity: 0;
      visibility: hidden;
    }

    .fixed-top {
      position: fixed;
      top: 0;
      right: 0;
      left: 0;
      z-index: 1030;
    }

    .header-grid{
      display:grid;
      grid-template-columns: 1fr auto 1fr; 
      align-items:center;
      gap:12px;
      width:100%;
    }
    .navbar-toggler{ z-index: 3; }
    .header-grid .navbar-brand{justify-self:start}
    .header-grid .header-cta{justify-self:center}
    .header-grid .navbar-toggler{justify-self:end}
    
    @media (min-width: 1192px){
      .navbar .navbar-collapse{
        grid-column: 3; 
        justify-content: end !important;
      }
      .header-cta{
        padding-left: 3%;
      }
    }

    @media (min-width: 1260px){
      .header-cta{
        padding-left: 5%;
      }
    }

    @media (min-width: 1430px){
      .header-cta{
        padding-left: 10%;
      }
    }

    @media (min-width: 1520px){
      .header-cta{
        padding-left: 18%;
      }
    }

    @media (min-width: 1740px){
      .header-cta{
        padding-left: 28%;
      }
    }

@media (max-width: 992px){
  .second-img-bus{
    display: none;
  }
}
@media (max-width: 576px){
  .navbar > .container, .navbar > .container-fluid{
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:8px;
    flex-wrap:nowrap !important;
  }
  .navbar-brand{ flex:0 0 auto; min-width:0; }
  .navbar-toggler{ order:1; flex:0 0 auto; z-index:3; }
  .navbar .btn-cta{
    order:2;
    flex:0 0 auto;
    max-width:44vw;
    height:42px;
    padding:10px 14px;
    line-height:1;
    font-size:clamp(12px,3.6vw,14px);
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
    transform:none !important; 
    -webkit-tap-highlight-color: transparent;
  }
  .navbar .btn-cta:hover{ transform:none !important; }
}
.navbar .btn-cta{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  margin-left: -60px;
}

@media (max-width: 1190px){
  .navbar .btn-cta{
    margin-left: 0px;
  }
}


.navbar .btn-cta .cta-label{ 
  display:block; 
  letter-spacing: .2px; 
}

@media (max-width: 576px){
  .navbar .btn-cta .cta-label{
    letter-spacing: 0;
  }
}

@media (max-width: 768px){
  .navbar{ position: fixed !important; top:0; left:0; right:0; z-index:1030; background:#fff; }
  .navbar > .container, .navbar > .container-fluid{
    position: relative;
    z-index: 4; 
  }
  .navbar-collapse{
    position: absolute !important;
    top: 100% !important;  
    left: 0; right: 0;
    width: 100%;
    background: #fff;
    border-top: 1px solid rgba(0,0,0,.06);
    box-shadow: 0 8px 20px rgba(0,0,0,.08);
    padding: 8px 12px;
    max-height: min(70vh, 540px);
    overflow-y: auto;
  }
  .navbar-nav .nav-link{
    padding: 12px 6px;
  }
  .navbar-nav .nav-link, .navbar .btn{
    transform: none !important;
  }
  .navbar-toggler{ z-index: 5; }
}


@media (max-width: 768px){
  :root{ --nav-h: 60px; }
  body{ padding-top: var(--nav-h); }
}
@media (max-width: 576px){
  :root{ --nav-h: 60px; }
}
@media (min-width: 577px) and (max-width: 768px){
  :root{ --nav-h: 64px; }
}


.navbar-toggler {
  -webkit-tap-highlight-color: transparent; 
  outline: none !important; 
  box-shadow: none !important;  
  background-color: transparent !important; 
}

.navbar-toggler:focus,
.navbar-toggler:active {
  outline: none !important;
  box-shadow: none !important;
  background-color: transparent !important;
}


footer{
    border-top:2px solid var(--ink);
    padding:40px 0;
    background:#272e59;
    color:#fff;
}
footer a{color:#fff;}
footer a:hover{text-decoration:underline;}


