/* Custom Styles for Titan Land Management */

body {
    font-family: 'Montserrat', sans-serif;
    background-color: #f8f9fa;
    color: #333;
}

.fw-extrabold {
    font-weight: 800;
}


/* Navbar */
.navbar {
    background-color: #121212 !important;
}


/* Hero Section */
.hero-section {
    background: linear-gradient(rgba(0, 0, 0, 0.35), rgba(0, 0, 0, 0.35)), url('/images/intro-bg.jpg') center/cover no-repeat;
    min-height: 80vh;
    display: flex;
    align-items: center;
}


/* Service Cards Hover Effect */
.service-card {
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.service-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 .5rem 1rem rgba(0,0,0,.15)!important;
}


/* Feature Icon Circles in About */
.feature-icon-circle {
    width: 36px;
    height: 36px;
    font-size: 0.85rem;
    flex-shrink: 0;
}


/* Contact Section Background */
.contact-section {
    background: linear-gradient(rgba(18, 18, 18, 0.9), rgba(18, 18, 18, 0.9)), url('/images/contact-bg.jpg') center/cover no-repeat;
}


/* Display validation messages when triggered by the validator script */
.form-control.is-invalid ~ .invalid-feedback,
.form-control.is-invalid ~ .help-block.with-errors {
    display: block;
}


/* Maintain red text color for error lists generated by the script */
.invalid-feedback ul,
.help-block.with-errors ul {
    margin-bottom: 0;
    padding-left: 0;
    list-style: none;
    color: #dc3545; /* Bootstrap 5 danger color */
    font-size: 0.875rem;
}


/* Ensure the hidden reCAPTCHA validation input remains invisible */
input.hidden[data-recaptcha="true"],
input.d-none[data-recaptcha="true"] {
    display: none !important;
}


/* Fix spacing for the reCAPTCHA container */
.g-recaptcha {
    margin-bottom: 0.5rem;
}


/* Mobile phone + small tablet views */
@media (max-width: 767.98px) {
  .hero-section {
      background: linear-gradient(rgba(0, 0, 0, 0.35), rgba(0, 0, 0, 0.35)), url('/images/intro-bg.jpg') 90%/cover no-repeat;
  }
}


