/* ============================================================
   TYPOGRAPHY & DESIGN SYSTEM — AMALFI INFRASTRUCTURE
   Professional real-estate grade polish
   ============================================================ */

/* ── Colour tokens ───────────────────────────────────────── */
:root {
  --rose:       #b48e79;
  --rose-light: #d8a175;
  --rose-dark:  #9a6954;
  --brown:      #3a2a22;
  --cream:      #f4ede6;
  --cream-mid:  #ede0d5;
  --text-dark:  #2b1f18;
  --text-mid:   #6b5044;
  --text-light: rgba(244, 237, 230, 0.85);
  --white:      #ffffff;
}

/* ── Base body ───────────────────────────────────────────── */
body {
  font-family: 'Inter', 'Gotham-Light', Arial, sans-serif;
  color: var(--text-dark);
  background: #fff;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  letter-spacing: 0.01em;
}

/* ── Capstext / label pills ──────────────────────────────── */
.capstext {
  display: inline-block;
  font-family: 'Inter', sans-serif !important;
  font-size: 10px !important;
  font-weight: 700 !important;
  letter-spacing: 4px !important;
  text-transform: uppercase !important;
  color: var(--rose) !important;
  margin-bottom: 10px !important;
  position: relative;
  padding-left: 28px;
}

.capstext::before {
  content: '';
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 18px;
  height: 1px;
  background: var(--rose);
}

/* ── Section headings ────────────────────────────────────── */
h2.heading {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-weight: 700 !important;
  font-size: clamp(1.6rem, 3.5vw, 2.4rem) !important;
  line-height: 1.25 !important;
  letter-spacing: -0.01em !important;
  color: var(--brown) !important;
  margin-top: 0 !important;
  margin-bottom: 24px !important;
  text-transform: none !important;
}

/* Headings inside dark sections */
.price-section h2.heading,
.loc-section h2.heading,
.loc-heading {
  color: var(--cream) !important;
  font-family: 'Playfair Display', Georgia, serif !important;
}

/* ── Body copy ───────────────────────────────────────────── */
p {
  font-family: 'Inter', 'Gotham-Light', Arial, sans-serif;
  font-size: 0.9rem;
  line-height: 1.8;
  color: var(--text-mid);
}

.desktexttopview {
  font-size: 0.95rem !important;
  line-height: 1.85 !important;
  color: #4a3530 !important;
  font-family: 'Inter', sans-serif !important;
}

/* ── Navbar ──────────────────────────────────────────────── */
nav .navbar-brand img {
  height: 48px;
  width: auto;
}

nav .bottom_line ul.navbar-nav .nav-link,
nav .bottom_line ul.navbar-nav li a {
  font-family: 'Inter', sans-serif !important;
  font-size: 0.72rem !important;
  font-weight: 600 !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
}

/* ── Banner caption ──────────────────────────────────────── */
.banner .caption h4 {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: clamp(2rem, 5vw, 3.8rem) !important;
  font-weight: 700 !important;
  letter-spacing: -0.01em !important;
  line-height: 1.15 !important;
  color: #fff !important;
  text-shadow: 0 2px 24px rgba(0,0,0,0.35);
  text-transform: none !important;
}

.banner .caption p {
  font-family: 'Inter', sans-serif !important;
  font-size: 0.85rem !important;
  letter-spacing: 3px !important;
  text-transform: uppercase !important;
  color: rgba(255,255,255,0.82) !important;
  font-weight: 500 !important;
  margin-bottom: 8px !important;
}

.banner .caption h5 {
  font-family: 'Inter', sans-serif !important;
  font-size: 1.05rem !important;
  font-weight: 500 !important;
  letter-spacing: 1.5px !important;
  color: rgba(255,255,255,0.9) !important;
  text-transform: uppercase !important;
}

.banner .caption span {
  font-family: 'Inter', sans-serif !important;
  font-size: 0.95rem !important;
  font-weight: 600 !important;
  color: #f4ede6 !important;
  background: rgba(58, 42, 34, 0.5);
  padding: 6px 14px;
  border-left: 3px solid var(--rose-light);
  display: inline-block;
  letter-spacing: 0.5px;
}

/* RERA banner text */
.rera-detail-banner p {
  font-family: 'Inter', sans-serif !important;
  font-size: 0.72rem !important;
  letter-spacing: 0.5px !important;
  color: rgba(255,255,255,0.78) !important;
  line-height: 1.6 !important;
}

.rera-detail-banner a {
  color: var(--rose-light) !important;
}

/* ── Overview section ────────────────────────────────────── */
.ecosystem {
  background: #fff;
}

.ecosystem .line span {
  background: linear-gradient(to bottom, var(--rose), transparent) !important;
}

/* ── Highlights section ──────────────────────────────────── */
.welcome-sec .icon-part ul li {
  font-family: 'Inter', sans-serif;
  font-size: 0.88rem;
  color: var(--text-mid);
  font-weight: 500;
  letter-spacing: 0.3px;
}

/* ── Enquire button (floating) ───────────────────────────── */
a.enqu-btn {
  font-family: 'Inter', sans-serif !important;
  font-size: 0.7rem !important;
  font-weight: 700 !important;
  letter-spacing: 2.5px !important;
  text-transform: uppercase !important;
}

/* ── Enquiry form (modal + contact) ─────────────────────── */
.popup-box h6 {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 1.3rem !important;
  font-weight: 700 !important;
  color: var(--brown) !important;
  letter-spacing: -0.01em !important;
  text-transform: none !important;
  margin-bottom: 18px !important;
}

.form-control {
  font-family: 'Inter', sans-serif !important;
  font-size: 0.85rem !important;
  color: var(--text-dark) !important;
  border-radius: 2px !important;
  border: 1px solid rgba(58, 42, 34, 0.15) !important;
}

.form-control::placeholder {
  color: #b0998e !important;
  font-size: 0.82rem !important;
}

.form-control:focus {
  border-color: var(--rose) !important;
  box-shadow: 0 0 0 2px rgba(180, 142, 121, 0.15) !important;
  outline: none !important;
}

/* Submit button (hero + contact form) */
.enclave-btn {
  font-family: 'Inter', sans-serif !important;
  font-size: 0.72rem !important;
  font-weight: 700 !important;
  letter-spacing: 2px !important;
  text-transform: uppercase !important;
  border-radius: 2px !important;
}

/* ── Contact / Drop Message section ─────────────────────── */
.bg-grey h2.heading {
  color: var(--brown) !important;
}

/* ── Footer ──────────────────────────────────────────────── */
.footer .middle-ft {
  background: var(--brown);
  padding: 48px 0 32px;
}

.footer .add-part h5 {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-size: 1rem !important;
  font-weight: 700 !important;
  color: var(--rose-light) !important;
  letter-spacing: 0.5px !important;
  margin-bottom: 12px !important;
  text-transform: none !important;
}

.footer .add-part p {
  font-family: 'Inter', sans-serif !important;
  font-size: 0.82rem !important;
  color: rgba(244, 237, 230, 0.75) !important;
  line-height: 1.7 !important;
}

.footer .add-part p.harera {
  font-size: 0.75rem !important;
  color: rgba(216, 161, 117, 0.7) !important;
  margin-top: 8px;
  font-style: italic;
}

/* ── Disclaimer ──────────────────────────────────────────── */
.disclaimer {
  background: #2b1f18;
  padding: 20px 0;
  border-top: 1px solid rgba(180, 142, 121, 0.15);
}

.disclaimer-dis p {
  font-family: 'Inter', sans-serif !important;
  font-size: 0.72rem !important;
  color: rgba(244, 237, 230, 0.5) !important;
  line-height: 1.75 !important;
  margin: 0 !important;
}

.disclaimer-dis b {
  color: rgba(216, 161, 117, 0.7) !important;
  font-weight: 700;
}

/* ── Copyright bar ───────────────────────────────────────── */
.copy-right {
  background: #1e1410 !important;
  padding: 12px 20px !important;
  text-align: center;
  font-family: 'Inter', sans-serif;
}

.copy-right a,
.copy-right span {
  font-family: 'Inter', sans-serif !important;
  font-size: 0.72rem !important;
  color: rgba(180, 142, 121, 0.65) !important;
  text-transform: uppercase;
  letter-spacing: 1px;
}

.copy-right a:hover {
  color: var(--rose-light) !important;
  text-decoration: none !important;
}

/* ── Marquee banner text ─────────────────────────────────── */
.marquee-banner-txt .txt {
  font-family: 'Inter', sans-serif !important;
  font-size: 0.7rem !important;
  font-weight: 700 !important;
  letter-spacing: 4px !important;
  text-transform: uppercase !important;
}

/* ── Floor Plan section headings override ────────────────── */
.fp-section .capstext {
  padding-left: 28px;
}

.fp-section .capstext::before {
  background: var(--rose);
}

.fp-section h2.heading {
  color: var(--brown) !important;
  font-family: 'Playfair Display', Georgia, serif !important;
}

.fp-details h3 {
  font-family: 'Playfair Display', Georgia, serif !important;
}

/* ── Price section headings override ────────────────────── */
.price-section .capstext {
  color: var(--rose-light) !important;
  padding-left: 28px;
}

.price-section .capstext::before {
  background: var(--rose-light);
}

/* ── Location section headings override ─────────────────── */
/* loc-label removed — heading now uses shared .capstext */

.loc-heading {
  font-family: 'Playfair Display', Georgia, serif !important;
  font-weight: 700 !important;
  text-transform: none !important;
  letter-spacing: -0.01em !important;
}

.loc-acc-btn {
  font-family: 'Inter', sans-serif !important;
  font-size: 0.85rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.3px !important;
}

.loc-acc-body ul li {
  font-family: 'Inter', sans-serif !important;
}

.loc-name {
  font-size: 0.83rem !important;
}

/* ── Gallery section ─────────────────────────────────────── */
#gallery h2.heading {
  color: var(--brown) !important;
}

/* ── Amenities section ───────────────────────────────────── */
#amenities h2.heading {
  color: var(--brown) !important;
}

#amenities .capstext {
  color: var(--rose) !important;
}

.amenities-box .txt {
  font-family: 'Inter', sans-serif !important;
  font-size: 0.78rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.5px !important;
  text-transform: uppercase;
}

/* ── Highlights section ──────────────────────────────────── */
#highlights h2.heading {
  color: var(--brown) !important;
}

/* ── Contact section heading ─────────────────────────────── */
#contact h2.heading {
  color: var(--brown) !important;
  text-transform: none !important;
}

/* ── Price note ──────────────────────────────────────────── */
.price-note {
  font-family: 'Inter', sans-serif !important;
  font-style: italic;
}

/* ── Read More / Theme buttons ───────────────────────────── */
a.theme_btn {
  font-family: 'Inter', sans-serif !important;
  font-size: 0.75rem !important;
  font-weight: 700 !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
}

/* ── Mobile responsiveness for text ─────────────────────── */
@media (max-width: 767px) {
  h2.heading {
    font-size: clamp(1.4rem, 6vw, 2rem) !important;
    margin-bottom: 16px !important;
  }

  .banner .caption h4 {
    font-size: clamp(1.6rem, 8vw, 2.5rem) !important;
  }

  .desktexttopview {
    font-size: 0.88rem !important;
  }
}
