html, body {
    margin: 0;
    padding: 0;
    background: #1F1F1F;
    color: #ffffff;
}

/* HEADER */
.header-bar {
    background: #ffffff;            /* pure white for logo clarity */
    padding: 20px 0;
    border-bottom: 2px solid #D7A560;
}

.site-logo {
    max-height: 85px;               /* slightly larger */
    width: auto;
}

/* NAVIGATION */
.nav-bar {
    background: #1F1F1F;
    border-bottom: 1px solid #9D703E;
}

.navbar-nav .nav-link {
    color: #EAC87F;
    padding: 12px 20px;
    font-size: 0.95rem;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.navbar-nav .nav-link:hover {
    color: #D7A560;
}

/* HERO */
.hero-section {
    position: relative;
    height: 100vh;
    overflow: hidden;
}

.carousel,
.carousel-inner,
.carousel-item,
.carousel-item img {
    height: 100vh;
}

.carousel-item img {
    object-fit: cover;
}

/* OVERLAY */
.hero-text {
    position: absolute;
    inset: 0;
    background: rgba(31, 31, 31, 0.65);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    z-index: 2;
    text-align: center;
}

/* COMING SOON */
.coming-soon {
    font-size: clamp(3rem, 5vw, 4.5rem);
    font-weight: 800;
    letter-spacing: 3px;
    color: #EAC87F;
    margin-bottom: 12px;
}

/* TAGLINE */
.hero-tagline {
    max-width: 900px;
    font-size: 1.05rem;
    color: #f1e7d0;
    margin-bottom: 20px;
}

/* CONTACT */
.hero-contact {
    font-size: 0.95rem;
}

.hero-contact h5 {
    color: #D7A560;
    text-transform: uppercase;
    letter-spacing: 1px;
}

.hero-contact i {
    color: #EAC87F;
    margin-right: 6px;
}

.hero-contact p {
    margin-bottom: 4px;
}

/* ADDRESS */
.address {
    margin-top: 20px;
    font-size: 0.95rem;
    color: #f1e7d0;
}

/* MAP */
.map-section iframe {
    width: 100%;
    height: 350px;
    border: 0;
    filter: grayscale(20%);
}
