/* Custom small visual improvements for ANCT-TL */

/* Header */
.header {
  box-shadow: 0 6px 18px rgba(0,0,0,0.08);
  z-index: 1030;
}
.header .branding {
  padding: 10px 0;
}
.logo img {
  width: 48px;
  height: 48px;
  object-fit: cover;
  border-radius: 6px;
  margin-right: 10px;
}
.sitename {
  margin: 0;
  font-weight: 700;
  color: #0b486b;
}

/* CTA buttons */
.btn-primary {
  background: linear-gradient(90deg,#0d6efd 0%, #0069d9 100%);
  border: none;
  box-shadow: 0 6px 18px rgba(13,110,253,0.18);
}
.btn-outline-dark {
  border-color: rgba(11,72,107,0.12);
  color: #0b486b;
}

/* Hero */
.hero {
  position: relative;
  color: #fff;
}
.hero::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(11,72,107,0.35), rgba(0,0,0,0.2));
  pointer-events: none;
}
.hero .welcome {
  position: relative; /* keep above overlay */
  z-index: 2;
  padding: 40px 0;
}

/* Cards and boxes */
.icon-box, .why-box, .service-item, .card {
  transition: transform .25s ease, box-shadow .25s ease;
}
.icon-box:hover, .why-box:hover, .service-item:hover, .card:hover {
  transform: translateY(-6px);
  box-shadow: 0 18px 40px rgba(8,40,63,0.12);
}

/* Footer tweaks */
footer {
  background: #0b486b;
  color: #fff;
}

/* Responsive nav spacing */
.navmenu ul li a { padding: 10px 14px; }

/* Small accessibility tweak for focus states */
a:focus, button:focus { outline: 3px solid rgba(13,110,253,0.15); outline-offset: 2px; }
