/* === Reset & Base === */
*, *::before, *::after { margin: 0; padding: 0; box-sizing: border-box; }

html { scroll-behavior: smooth; }

body {
    background: #06100a;
    color: #f5f1e8;
    font-family: 'DM Sans', -apple-system, BlinkMacSystemFont, sans-serif;
    -webkit-font-smoothing: antialiased;
}

/* === Nav === */
.nav-link {
    font-family: 'DM Sans', sans-serif;
    font-size: 11px;
    letter-spacing: 0.18em;
    text-transform: uppercase;
    color: #9ab5a5;
    text-decoration: none;
    transition: color 0.3s;
}
.nav-link:hover { color: #c8a86b; }

.btn-book {
    font-family: 'DM Sans', sans-serif;
    font-size: 10px;
    letter-spacing: 0.24em;
    text-transform: uppercase;
    color: #c8a86b;
    border: 1px solid rgba(200,168,107,0.55);
    background: transparent;
    padding: 12px 28px;
    cursor: pointer;
    transition: all 0.3s;
}
.btn-book:hover { background: rgba(200,168,107,0.1); }

/* === Buttons === */
.btn-primary {
    font-family: 'DM Sans', sans-serif;
    font-size: 10px;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    background: #c8a86b;
    color: #06100a;
    border: none;
    padding: 16px 36px;
    cursor: pointer;
    font-weight: 500;
    transition: all 0.3s;
}
.btn-primary:hover { background: #dfc087; }

.btn-outline {
    font-family: 'DM Sans', sans-serif;
    font-size: 10px;
    letter-spacing: 0.22em;
    text-transform: uppercase;
    background: transparent;
    color: #9ab5a5;
    border: 1px solid rgba(200,168,107,0.3);
    padding: 16px 36px;
    cursor: pointer;
    transition: all 0.3s;
}
.btn-outline:hover { border-color: rgba(200,168,107,0.7); }

/* === Breadcrumb === */
.breadcrumb-link {
    font-family: 'DM Sans', sans-serif;
    font-size: 11px;
    letter-spacing: 0.15em;
    text-transform: uppercase;
    color: #3a5a48;
    text-decoration: none;
    transition: color 0.3s;
}
.breadcrumb-link:hover { color: #c8a86b; }

/* === Amenity tabs === */
.amenity-tab { outline: none; }
.amenity-tab:hover span { color: #9ab5a5 !important; }
.amenity-tab-active span { color: #c8a86b !important; }

.amenity-card {
    background: #0d1c11;
    padding: 36px 28px;
    border-top: 2px solid rgba(200,168,107,0.12);
    transition: border-top-color 0.3s;
}
.amenity-card:hover { border-top-color: rgba(200,168,107,0.55); }

/* === Plot table rows === */
.plot-row {
    display: grid;
    grid-template-columns: 1.6fr 1fr 1.2fr 0.8fr;
    gap: 0;
    background: #0d1c11;
    padding: 22px 24px;
    border-bottom: 1px solid rgba(255,255,255,0.04);
    margin-bottom: 2px;
    transition: background 0.3s;
}
.plot-row:hover { background: #101f14; }

/* === Process steps === */
.process-step { transition: all 0.3s; }
.process-step:hover .step-title { color: #9ab5a5 !important; }

/* === Form fields === */
.form-field {
    width: 100%;
    background: #06100a;
    border: 1px solid rgba(200,168,107,0.14);
    color: #f5f1e8;
    padding: 16px;
    font-size: 14px;
    font-family: 'DM Sans', sans-serif;
    outline: none;
    transition: border-color 0.3s;
}
.form-field:focus { border-color: rgba(200,168,107,0.45); }
.form-field option { background: #06100a; }

.form-label {
    display: block;
    font-family: 'DM Sans', sans-serif;
    font-size: 9px;
    letter-spacing: 0.24em;
    text-transform: uppercase;
    color: #2e5040;
    margin-bottom: 10px;
}

/* === Footer === */
.footer-link {
    font-family: 'DM Sans', sans-serif;
    font-size: 13px;
    color: #3a5a48;
    text-decoration: none;
    font-weight: 300;
    transition: color 0.3s;
}
.footer-link:hover { color: #8aaa98; }
.footer-link-active { color: #c8a86b !important; }
.footer-link-active:hover { color: #c8a86b !important; }

.footer-legal-link {
    font-family: 'DM Sans', sans-serif;
    font-size: 11px;
    color: #1e3a28;
    text-decoration: none;
    font-weight: 300;
    transition: color 0.3s;
}
.footer-legal-link:hover { color: #3a5a48; }

.social-icon {
    width: 36px;
    height: 36px;
    border: 1px solid rgba(200,168,107,0.16);
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: border-color 0.3s;
}
.social-icon:hover { border-color: rgba(200,168,107,0.5); }
