/* MOBILE FIRST */

body {
    background-color: #fff;
}
.card {
    border: 2px solid #000; /* Thicker outline */
    border-radius: 10px; /* Slightly rounded corners */
    background-color: #fff; /* White background for cards */
    display: flex; /* Enable flexbox */
    flex-direction: column; /* Stack children vertically */
    height: 100%; /* Allow the card to take full height */
    padding: 0;
}
.card-body {
    flex-grow: 1; /* Allow the card body to grow and fill the space */
    padding: 0;
    border-top: 5px;
    border-color: black;
}
.btn-custom {
    background-color: #D9D9D9; /* 5% grey background */
    color: #000; /* Black text */
    border: 2px solid #000; /* Same outline as cards */
    border-radius: 10px; /* Same rounded corners as cards */
    font-size: clamp(12px, 2vw, 18px);
    padding: clamp(2px, 1.5vw, 6px) clamp(2px, 4vw,16px);
}
.card-title {
    height: clamp(20px,2.5vw,50px); /* Fixed height for title */
    overflow: hidden; /* Hide overflow text */
}
.card-text {
  word-wrap: break-word;     /* Breaks long words */
  overflow-wrap: break-word; /* Modern equivalent */
}
.image-container {
    height: 220px; /* Fixed height for image */
    display: flex; /* Center image or text */
    align-items: center;
    overflow: hidden;
    justify-content: center;
    background-color: #f8f9fa; /* Light background for no image */
}        
.form-control-custom {
    border: 2px solid #000; /* Same border thickness as cards and buttons */
    border-radius: 10px; /* Same rounded corners as cards and buttons */
}
.support-data {
    background-color: #e9ecef;
    padding: 10px;
    border-left: 5px solid #007bff; /* Bootstrap primary color */
    margin: 20px 0;
}

.header {
    padding: 10px;
    text-align: left;
    border-bottom: 1px solid black; /* bottom-only border */
    margin-bottom: 20px;
    position: relative; /* allows positioning child elements relative to header */
}

.header-title {
    position: absolute;
    right: 10px; /* anchor to right with some padding */
    bottom: 5px;
    font-size: clamp(10px, 2vw, 24px); /* mobile-first scaling: min 14px, max 24px */
    font-family: 'Open Sans', sans-serif;
    color: black;
    white-space: nowrap; /* prevents breaking into multiple lines */
}

.logo {
    height: 40px; /* Adjust logo size */
}
.hero {
  width: 100%;
  display: block;
  border-radius: 8px;
}
.inner {
  width: 95%;
  min-width: 280px;
  max-width: 100%;
  margin: -40px auto 0;
  background: white;
  border-radius: 12px;
  padding: 20px;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
  position: relative;
  z-index: 1;
}
.results-text {
    font-size: clamp(15px, 3vw, 32px);
    font-family: 'Open Sans', sans-serif;
}
.results-text-small {
    font-size: clamp(8px, 2vw, 16px);
    font-family: 'Open Sans', sans-serif;
}
.results-sub {
    display: block; /* forces new line */
    font-size: 75%; /* 75% of parent font-size */
}
.pagination .page-link {
    color: black;               /* text color */
    background-color: white;    /* background */
    border: 1px solid black;    /* keep consistent border */
}

.pagination .page-link:hover {
    color: white;
    background-color: black;
}

.pagination .active .page-link {
    color: white;               /* white text */
    background-color: black;    /* black background */
    border-color: black;
}
.custom-title {
    display: inline-block;       /* shrink to fit text */
    padding: 0.4rem 0.8rem;      /* button-like spacing */
    font-size: 0.9rem;           /* slightly smaller text */
    font-weight: bold;           /* bold black text */
    color: black;
    text-align: center;          /* center text inside box */
    background-color: #f0f0f0;   /* light gray background */
    border: 1px solid #ccc;      /* subtle border */
    border-radius: 0.375rem;     /* rounded edges like a button */
}

@media (min-width: 768px) {
    .logo {
        height: 90px;
    }

    .header {
        padding: 10px 20px;
    }


}
