/* Homepage sections only. Accepted hero, copy, fonts and interactions are retained. */
.page-home .home-main .homepage-trust { padding: 16px 0 0; }
.page-home .home-main .vamos-trust-bar { background: #fff; border-color: #eadfd1; }
.page-home .home-main .vamos-trust-item { color: #626a70; }
.page-home .home-main .vamos-trust-dot { background: var(--red); }
.page-home .home-main .homepage-listings { padding: 32px 0 68px; background: #fff; }
.page-home .home-main .homepage-listings :is(.vamos-section-heading,.vamos-section-heading-exp) { max-width: 1200px; width: calc(100% - 128px); margin: auto; padding: 24px 0 0; align-items: end; }
.page-home .home-main .vamos-sh-spacer { display: none; }
.page-home .home-main .vamos-sh-center { text-align: left; }
.page-home .home-main .vamos-section-heading-exp { text-align: left; }
.page-home .home-main :is(.vamos-sh-label,.vamos-sh-label-exp,.vamos-story-label,.vamos-t-label) { color: var(--red); font-size: 10px; letter-spacing: .12em; }
.page-home .home-main :is(.vamos-sh-title,.vamos-sh-title-exp,.vamos-story-title,.vamos-t-title) { color: var(--ink); font-family: 'Plus Jakarta Sans',sans-serif; font-size: clamp(30px,3.2vw,46px); line-height: 1.15; font-weight: 900; letter-spacing: -.05em; text-wrap: balance; }
.page-home .home-main .vamos-sh-link { padding: 12px 0 0 24px; flex-basis: auto; color: var(--red); font-size: 13px; }
.page-home .home-main .homepage-listings .site-shell { width: min(calc(100% - 128px),1200px); }
.page-home .home-main .homepage-listings .home-card-grid { margin-top: 32px; gap: 24px; padding-bottom: 8px; }
.page-home .home-main .home-card-grid .property-card { flex-basis: calc((100% - 48px)/3); border: 0; border-radius: 20px; background: #fff; box-shadow: none; }
.page-home .home-main .home-card-grid .property-image { border-radius: 20px; }
.page-home .home-main .home-card-grid .property-photo-controls { aspect-ratio: 1.5; }
.page-home .home-main .home-card-grid .property-body { min-height: 154px; padding: 18px 4px 12px; }
.page-home .home-main .home-card-grid .property-title { font-size: 17px; line-height: 1.45; letter-spacing: -.025em; }
.page-home .home-main .home-card-grid .property-location { color: #626a70; }
.page-home .home-main .home-card-grid .property-rating { color: var(--ink); }
.page-home .home-main .home-card-grid .property-facts { border-color: #eadfd1; color: #626a70; }
.page-home .home-main .home-carousel-dots { margin-top: 20px; gap: 10px; }
.page-home .home-main .homepage-story { padding: 0 24px; }
.page-home .home-main .homepage-story .vamos-story { max-width: 1640px; margin: auto; padding: 72px 5.5%; background: #fcf6ec; border-radius: 30px; }
.page-home .home-main .homepage-story .vamos-story-inner { max-width: 1200px; grid-template-columns: 1fr 1.1fr; gap: 72px; }
.page-home .home-main .homepage-story .vamos-story-title { margin-bottom: 24px; }
.page-home .home-main .homepage-story .vamos-story-body { max-width: 490px; color: #626a70; font-size: 15px; line-height: 1.85; }
.page-home .home-main .homepage-story .vamos-story-cta { padding: 14px 26px; border-radius: 28px; color: #fff; background: var(--red); box-shadow: none; }
.page-home .home-main .homepage-story .vamos-story-visual { padding: 0; background: none; border: 0; border-radius: 0; box-shadow: none; }
.page-home .home-main .homepage-story .vamos-story-visual::before,
.page-home .home-main .homepage-story .vamos-story-visual::after { display: none; }
.page-home .home-main .homepage-story .vamos-dest-row { display: grid; width: calc(88% + 2.16px); margin-inline: auto; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 18px; }
.page-home .home-main .homepage-story .vamos-dest-chip { display: flex; flex-direction: column; align-items: stretch; min-width: 0; padding: 0; gap: 0; border: 0; border-radius: 14px; overflow: hidden; background: #fff; box-shadow: none; }
.page-home .home-main .homepage-story .vamos-dest-chip:hover { transform: translateY(-2px); box-shadow: none; }
.page-home .home-main .homepage-story .vamos-dest-icon { display: block; width: 100%; min-width: 0; height: auto; aspect-ratio: 1.7; border-radius: 0; flex: none; }
.page-home .home-main .homepage-story .vamos-dest-chip > div { padding: 11px 14px 13px; }
.page-home .home-main .homepage-story .vamos-dest-name { color: var(--ink); font-size: 14px; }
.page-home .home-main .homepage-story .vamos-dest-type { color: #626a70; font-size: 11px; }
.page-home .home-main .homepage-story .vamos-decade-badge { margin-top: 24px; padding: 18px 0 0; background: transparent; border-top: 1px solid #e6d9c8; border-radius: 0; color: var(--ink); }
.page-home .home-main .homepage-story .vamos-decade-num { color: var(--red); font-size: 48px; }
.page-home .home-main .homepage-story .vamos-decade-text { color: #626a70; }
.page-home .home-main .homepage-story .vamos-decade-text strong { color: var(--ink); }
.page-home .home-main .homepage-stats .vamos-stats { width: min(calc(100% - 128px),1200px); margin: auto; padding: 52px 0; background: #fff; border: 0; }
.page-home .home-main .homepage-stats .vamos-stat-num { color: var(--red); font-size: clamp(42px,4.5vw,60px); font-weight: 900; letter-spacing: -.055em; }
.page-home .home-main .homepage-stats .vamos-stat-label { color: #626a70; font-size: 12px; }
.page-home .home-main .homepage-stats .vamos-stat-divider { background: #eadfd1; }
.page-home .home-main .homepage-group { padding-top: 12px; }
.page-home .home-main .homepage-testimonials { padding: 0 24px 48px; }
.page-home .home-main .homepage-testimonials .vamos-testimonials { max-width: 1640px; margin: auto; padding: 64px 5.5% 0; background: #fcf6ec; border-radius: 30px; }
.page-home .home-main .homepage-testimonials .vamos-testimonials-inner { max-width: 1200px; }
.page-home .home-main .homepage-testimonials .vamos-testimonials-header { text-align: left; margin-bottom: 32px; }
.page-home .home-main .homepage-testimonials .vamos-t-subtitle { color: #626a70; }
.page-home .home-main .homepage-testimonials .vamos-t-grid { gap: 24px; }
.page-home .home-main .homepage-testimonials .vamos-t-card { padding: 30px 26px; border: 0; border-radius: 18px; box-shadow: none; background: #fff; }
.page-home .home-main .homepage-testimonials .vamos-t-card:hover { transform: translateY(-2px); box-shadow: none; }
.page-home .home-main .homepage-testimonials .vamos-t-card::before { display: none; }
.page-home .home-main .homepage-testimonials .vamos-t-quote-mark { font-family: 'Plus Jakarta Sans',sans-serif; color: var(--red); opacity: .3; }
.page-home .home-main .homepage-testimonials .vamos-t-text { font-size: 14px; color: #4f5559; line-height: 1.85; }
.page-home .home-main .homepage-testimonials .vamos-t-avatar { color: var(--red); background: #f3e4d7; }
.page-home .home-main .homepage-testimonials .vamos-t-cta-row { margin-top: 48px; }
.page-home .home-main .homepage-testimonials .vamos-t-cta-card { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; padding: 52px 44px; min-height: 330px; border-radius: 26px; background: #fae8c8 url('/assets/hero/kenya-bush-1536.webp') right center/cover no-repeat; }
.page-home .home-main .homepage-testimonials .vamos-t-cta-card::before { inset: 0; width: 100%; height: 100%; background: linear-gradient(90deg,#fcf6ec 5%,rgba(252,246,236,.93) 48%,rgba(252,246,236,.15)); }
.page-home .home-main .homepage-testimonials .vamos-t-cta-left,
.page-home .home-main .homepage-testimonials .vamos-t-cta-buttons { grid-column: 1; }
.page-home .home-main .homepage-testimonials .vamos-t-cta-eyebrow { color: var(--red); font-size: 10px; }
.page-home .home-main .homepage-testimonials .vamos-t-cta-heading { color: var(--ink); font-size: clamp(28px,3vw,42px); letter-spacing: -.05em; line-height: 1.2; }
.page-home .home-main .homepage-testimonials .vamos-t-cta-heading span { color: var(--red); }
.page-home .home-main .homepage-testimonials .vamos-t-cta-buttons { gap: 12px; flex-wrap: wrap; }
.page-home .home-main .homepage-testimonials .vamos-t-btn { min-height: 46px; border-radius: 28px; font-size: 13px; padding: 13px 22px; }
.page-home .home-main .homepage-testimonials .vamos-t-btn.whatsapp { color: #fff; background: var(--red); }
.page-home .home-main .homepage-testimonials .vamos-t-btn.listings { color: var(--red); background: #fff; border-color: #dbcbbc; }
.page-home .site-footer { background: #fcf6ec; color: #4f5559; border-top: 1px solid #eadfd1; padding-top: 52px; }
.page-home .site-footer .footer-grid { width: min(calc(100% - 128px),1200px); grid-template-columns: 1.25fr 1.1fr 1fr; gap: 64px; }
.page-home .site-footer .footer-brand { max-width: 360px; }
.page-home .site-footer .footer-brand p,
.page-home .site-footer .footer-contact { color: #4f5559; }
.page-home .site-footer .footer-logo { width: 140px; height: auto; }
.page-home .site-footer .footer-heading { color: var(--ink); }
.page-home .site-footer a { color: #4f5559; }
.page-home .site-footer a:hover { color: var(--red); }
.page-home .site-footer .footer-links { display: grid; grid-template-columns: 1fr 1fr; gap: 10px 24px; }
.page-home .site-footer .footer-bottom { color: #626a70; border-color: #eadfd1; }
.page-home :is(.homepage-listings,.homepage-story,.homepage-testimonials,.site-footer) :is(a,button):focus-visible { outline: 3px solid var(--red); outline-offset: 4px; }
@media (max-width: 1099px) {
  .page-home .home-main .homepage-listings :is(.vamos-section-heading,.vamos-section-heading-exp),
  .page-home .home-main .homepage-listings .site-shell,
  .page-home .home-main .homepage-stats .vamos-stats,
  .page-home .site-footer .footer-grid { width: calc(100% - 64px); }
  .page-home .home-main .home-card-grid .property-card { flex-basis: calc((100% - 24px)/2); }
  .page-home .home-main .homepage-story .vamos-story-inner { grid-template-columns: 1fr; gap: 36px; }
  .page-home .home-main .homepage-story .vamos-story-body { max-width: 620px; }
  .page-home .home-main .homepage-story .vamos-dest-row { width: calc(58.6667% - 1.56px); }
  .page-home .home-main .homepage-testimonials .vamos-t-cta-card { grid-template-columns: 1.5fr 1fr; padding: 38px 28px; }
  .page-home .site-footer .footer-grid { gap: 32px; }
}
@media (max-width: 600px) {
  .page-home .home-main .homepage-listings { padding: 26px 0 42px; }
  .page-home .home-main .homepage-listings :is(.vamos-section-heading,.vamos-section-heading-exp),
  .page-home .home-main .homepage-listings .site-shell,
  .page-home .home-main .homepage-stats .vamos-stats,
  .page-home .site-footer .footer-grid { width: calc(100% - 40px); }
  .page-home .home-main .homepage-listings :is(.vamos-section-heading,.vamos-section-heading-exp) { align-items: start; gap: 16px; padding-top: 16px; }
  .page-home .home-main :is(.vamos-sh-title,.vamos-sh-title-exp,.vamos-story-title,.vamos-t-title) { font-size: 30px; text-align: left; }
  .page-home .home-main .vamos-sh-link { padding: 0; }
  .page-home .home-main .homepage-listings .home-card-grid { gap: 16px; margin-top: 24px; }
  .page-home .home-main .home-card-grid .property-card { flex-basis: calc(100% - 24px); }
  .page-home .home-main .home-card-grid .property-body { min-height: 0; padding: 15px 3px 12px; }
  .page-home .home-main .home-card-grid .property-title { font-size: 16px; }
  .page-home .home-main .homepage-story { padding-inline: 12px; }
  .page-home .home-main .homepage-story .vamos-story { padding: 36px 22px; border-radius: 24px; }
  .page-home .home-main .homepage-story .vamos-dest-row { width: calc(88% + 1.44px); gap: 12px; }
  .page-home .home-main .homepage-story .vamos-dest-chip > div { padding: 10px; }
  .page-home .home-main .homepage-story .vamos-dest-name { font-size: 12px; }
  .page-home .home-main .homepage-story .vamos-dest-type { font-size: 10px; }
  .page-home .home-main .homepage-story .vamos-dest-icon { aspect-ratio: 1.2; }
  .page-home .home-main .homepage-story .vamos-decade-text { font-size: 11px; }
  .page-home .home-main .homepage-stats .vamos-stats { padding-block: 38px; }
  .page-home .home-main .homepage-stats .vamos-stats-grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 0; }
  .page-home .home-main .homepage-stats .vamos-stat { padding: 0 5px; min-width: 0; }
  .page-home .home-main .homepage-stats .vamos-stat-num { font-size: clamp(26px,7.8vw,38px); }
  .page-home .home-main .homepage-stats .vamos-stat-label { font-size: 10px; line-height: 1.6; }
  .page-home .home-main .homepage-testimonials { padding: 0 12px 32px; }
  .page-home .home-main .homepage-testimonials .vamos-testimonials { padding: 38px 22px 0; border-radius: 24px; }
  .page-home .home-main .homepage-testimonials .vamos-t-card { padding: 26px 22px; flex: 0 0 calc(100% - 16px); min-width: 0; }
  .page-home .home-main .homepage-testimonials .vamos-t-cta-card { grid-template-columns: 1fr; padding: 32px 22px 160px; background-position: right bottom; min-height: 0; }
  .page-home .home-main .homepage-testimonials .vamos-t-cta-card::before { background: linear-gradient(#fcf6ec 10%,rgba(252,246,236,.96) 58%,rgba(252,246,236,.12)); }
  .page-home .home-main .homepage-testimonials .vamos-t-cta-heading { font-size: 29px; }
  .page-home .home-main .homepage-testimonials .vamos-t-cta-buttons { width: 100%; flex-direction: column; align-items: stretch; }
  .page-home .site-footer { padding-top: 38px; }
  .page-home .site-footer .footer-grid { grid-template-columns: 1fr; gap: 30px; }
  .page-home .site-footer .footer-bottom { padding-bottom: 88px; }
}
