/* Global Reset & Gap Fix */
html, body {
    width: 100%;
    margin: 0;
    padding: 0;
    overflow-x: hidden; /* Prevents the right-side gap */
    scroll-behavior: smooth; /* Smooth scrolling for nav links */
    font-family: 'Helvetica Neue', Arial, sans-serif;
    background-color: white; /* Matches footer to hide bottom gaps */
    display: flex;
    flex-direction: column;
    min-height: 100vh;
}

* {
    box-sizing: border-box; /* Padding won't push width wider than 100% */
}

/* Sticky Header */
header {
    position: sticky;
    top: 0;
    z-index: 1000;
    background-color: #002147;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.3);
}

/* Section Spacing */
section {
    scroll-margin-top: 80px; /* Prevents header from covering titles */
    width: 100%;
}

/* Footer Pushes to Bottom */
footer {
    margin-top: auto;
    background-color: #002147;
    color: #ffffff;
    padding: 30px 20px;
    text-align: center;
    border-top: 3px solid #c5a059;
}

/* Service Card Images */
.service-card img {
    width: 100%;
    height: 180px;
    object-fit: cover;
    margin-bottom: 15px;
    image-rendering: -webkit-optimize-contrast; /* Sharper rendering */
}
/* Navbar - Navy Blue */
.navbar { display: flex; justify-content: space-between; align-items: center; padding: 20px 8%; background: #002147; border-bottom: 3px solid #c5a059; }
.navbar nav a { color: white; text-decoration: none; margin-left: 20px; font-weight: bold; }
.header-right { display: flex; align-items: center; gap: 20px; }
.phone-number { background: #c5a059; color: white; padding: 10px 20px; font-weight: bold; border-radius: 4px; text-decoration: none; }

/* Hero Slideshow */
.hero-slideshow { position: relative; height: 60vh; overflow: hidden; }
.slide { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-size: cover; background-position: center; opacity: 0; animation: fade 25s infinite; }
.slide:nth-child(1) { animation-delay: 0s; }
.slide:nth-child(2) { animation-delay: 5s; }
.slide:nth-child(3) { animation-delay: 10s; }
.slide:nth-child(4) { animation-delay: 15s; }
.slide:nth-child(5) { animation-delay: 20s; }
@keyframes fade { 0% { opacity: 0; } 10% { opacity: 1; } 20% { opacity: 1; } 30% { opacity: 0; } 100% { opacity: 0; } }

.hero-content { position: relative; z-index: 1; display: flex; flex-direction: column; align-items: center; justify-content: center; height: 100%; color: white; text-align: center; background: rgba(0,0,0,0.3); }
.cta-button { margin-top: 20px; padding: 18px 40px; background: #c5a059; color: white; text-decoration: none; font-weight: bold; text-transform: uppercase; border-radius: 2px; }

/* Services */
.services-overview { padding: 60px 8%; display: flex; align-items: center; gap: 50px; background: #f4f7f9; }
.services-text { flex: 1; }
.services-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; flex: 1; }
.service-item { border-left: 3px solid #002147; padding-left: 15px; }

 

/* Popup Styling */
#appraisalPopup { display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0,0,0,0.5); z-index: 1000; align-items: center; justify-content: center; }
.popup-content { background: #fff; padding: 30px; width: 90%; max-width: 600px; border-radius: 4px; position: relative; }
.close-popup { position: absolute; top: 10px; right: 15px; cursor: pointer; font-size: 24px; color: #333; }
.popup-form { display: grid; grid-template-columns: 1fr 1fr; gap: 15px; }
.popup-form input, .popup-form select, .popup-form textarea { padding: 12px; border: 1px solid #ccc; width: 100%; box-sizing: border-box; }
.span-two { grid-column: span 2; }
@media (max-width: 600px) { .popup-form { grid-template-columns: 1fr; } .span-two { grid-column: span 1; } }

    .why-choose-us {
        margin-bottom: 1em;
		padding: 0px;
		background: #00152cbd;
		color: white;
		text-align:
		center; margin-bottom: 2em;"
    }


@media screen and (max-width: 768px) {
    
    /* REMOVE PADDING FOR PHONE AS REQUESTED */
    .why-choose-us {
        padding: 60px 0px; /* Vertical padding kept small, horizontal removed */
        margin-bottom: 1em;
		background: #00152cbd;
		color: white;
		text-align:
		center; margin-bottom: 2em;"
    }

    /* Ensure images in that section don't overflow */
    .why-choose-us img {
        width: 100%;
        height: auto;
        margin-top: 10px;
    }

    /* Adjust Services Grid for small screens */
    .services-grid {
        grid-template-columns: 1fr; /* Stack cards vertically */
        padding: 0 10px;
    }

    /* Adjust Font Sizes for Phone */
    h1 { font-size: 1.8rem; }
    h2 { font-size: 1.5rem; }
}