.brand-logo {
  display: block;
  width: 230px;
  height: 58px;
  object-fit: contain;
  background: #fff;
  padding: 5px 10px;
  border-radius: 2px;
}

.topbar .brand { flex: 0 0 auto; }
footer .brand-logo { width: 250px; height: 72px; }

@media (max-width: 900px) {
  .brand-logo { width: 180px; height: 48px; }
  footer .brand-logo { width: 230px; height: 66px; }
}

.rates {
  padding: 20px clamp(24px, 8vw, 140px) 110px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 28px 8vw;
  align-items: end;
}
.rates-heading h2 { margin: 0; font-size: clamp(38px, 5vw, 64px); line-height: 1.15; font-weight: 500; letter-spacing: -.035em; }
.rates-heading > p:last-child { max-width: 620px; color: #687080; font-size: 17px; }
.rate-cards { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.rate-cards article { min-height: 180px; padding: 28px; background: #fff; border: 1px solid #dedbd3; display: flex; flex-direction: column; justify-content: space-between; }
.rate-cards article.featured { background: #07111f; color: #fff; border-color: #07111f; }
.rate-cards small { color: #6c7480; font-size: 14px; }
.rate-cards .featured small { color: #bfc7d1; }
.rate-cards strong { color: #b47720; font: 500 20px Manrope, sans-serif; white-space: nowrap; }
.rate-cards strong span { font-size: clamp(34px, 4vw, 52px); letter-spacing: -.04em; }
.rate-cards strong b { font: 500 14px "Noto Sans Thai", sans-serif; }
.rate-note { grid-column: 2; margin: 0; color: #7a808a; font-size: 13px; }
.direct-contact { padding: 65px clamp(24px, 8vw, 140px); background: #111f32; color: #fff; display: grid; grid-template-columns: .9fr 1.1fr; gap: 8vw; align-items: center; }
.direct-contact h2 { margin: 0; font-size: clamp(30px, 4vw, 48px); font-weight: 500; }
.direct-contact p:last-child { color: #bdc6d2; }
.contact-actions { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; }
.contact-actions a { min-height: 106px; padding: 20px; border: 1px solid rgba(255,255,255,.18); display: flex; flex-direction: column; justify-content: space-between; transition: .2s ease; }
.contact-actions a:hover { border-color: #d8b26e; background: rgba(216,178,110,.08); transform: translateY(-2px); }
.contact-actions span { color: #d8b26e; font: 600 11px Manrope, sans-serif; letter-spacing: .16em; }
.contact-actions strong { font-size: 16px; font-weight: 500; }

@media (max-width: 900px) {
  .rates, .direct-contact { grid-template-columns: 1fr; }
  .rates { padding: 0 24px 80px; }
  .rate-note { grid-column: 1; }
  .direct-contact { padding: 55px 24px; gap: 28px; }
}
@media (max-width: 600px) {
  .rate-cards, .contact-actions { grid-template-columns: 1fr; }
  .rate-cards article { min-height: 145px; }
  .contact-actions a { min-height: 88px; }
}
