/* EFT Buddy Custom Styles */

/* Section headers */
section h1, section h2 {
  font-weight: 700;
  margin-bottom: 1rem;
}

/* Card tweaks */
.card {
  border-radius: 0.75rem;
}

.card-title {
  font-weight: 600;
}

/* Step icons */
.step-icon {
  width: 96px;
  height: 96px;
  line-height: 96px;
  border-radius: 50%;
  background: #e3f2fd;
  display: inline-block;
  font-size: 3rem;
  font-weight: 700;
  color: #0d6efd;
  margin-bottom: 0.5rem;
}

/* Feature card icons */
.feature-icon {
  font-size: 3rem;
  color: #0d6efd;
  display: inline-block;
  margin-bottom: 0.5rem;
}

/* Compatibility table */
.compatibility-table th {
  white-space: nowrap;
}
.compatibility-table td {
  vertical-align: top;
}

/* Subheader (breadcrumb) offset to clear hanging logo on desktop */
@media (min-width: 992px) {
  .subheader-offset {
    padding-left: 200px;
  }
}

/* Navbar brand */
.navbar-brand {
  font-size: 1.4rem;
  letter-spacing: 0.5px;
}

/* Oversized brand logo that can overflow below the navbar */
:root {
  /* 40% larger header logo */
  --brand-logo-height: 264px; /* was 188px */
  /* Push the logo slightly downward so it overhangs more below than above */
  --brand-logo-shift: 30px;
  --brand-logo-gap: 16px; /* space between logo and text */
  /* Navbar visual height (smaller than logo to allow overhang) */
  --navbar-height: 120px;
}
.navbar {
  overflow: visible;
  min-height: var(--navbar-height);
}
.navbar-brand {
  position: relative;
  display: flex;
  align-items: center; /* center text vertically to navbar */
  height: var(--navbar-height);
  /* Leave room for the logo graphic on the left */
  padding-left: calc(var(--brand-logo-height) + var(--brand-logo-gap));
}
.navbar-brand .brand-logo {
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(calc(-50% + var(--brand-logo-shift)));
  height: var(--brand-logo-height);
  width: auto;
  z-index: 2;
}
/* Shift the nav items start to the right to leave room for the overhanging logo */
.navbar .navbar-collapse {
  margin-left: 75px;
}

/* Footer */
footer {
  font-size: 0.95rem;
}

footer a {
  text-decoration: none;
}

footer a:hover {
  text-decoration: underline;
}

/* Responsive tweaks */
@media (max-width: 767px) {
  .navbar-brand span {
    font-size: 1.1rem;
  }
  .card-title {
    font-size: 1.1rem;
  }
  .step-icon {
    width: 72px;
    height: 72px;
    line-height: 72px;
    font-size: 2.2rem;
  }
  :root {
    --brand-logo-height: 56px;
    --brand-logo-shift: 0px;
    --brand-logo-gap: 10px;
    --navbar-height: 56px;
  }
  .navbar .navbar-collapse { margin-left: 0; }
}

/* Button tweaks */
.btn-primary, .btn-outline-primary {
  border-radius: 0.5rem;
}

/* Knowledge base placeholder */
footer small {
  display: block;
  margin-bottom: 0.2rem;
}
