/* Readable supporting text on phones; retain the desktop type scale. */
@media (max-width: 760px) {
  body > header.has-mobile-language .brand { flex: 1; min-width: 0; }
  body > header.has-mobile-language .brand small {
    font: 500 11px/1.55 'Noto Sans Georgian', Arial, sans-serif;
    letter-spacing: .2px;
    white-space: normal;
    margin-top: 6px;
  }
  .hero .eyebrow, .hero-bottom, .ps-eyebrow, .project-eyebrow,
  .site-contact .eyebrow, .gc-booking-eyebrow {
    font-size: 12px;
    font-weight: 500;
    line-height: 1.65;
    letter-spacing: .8px;
  }
  .hero .eyebrow { color: #e3d3af; }
  .hero p { font-size: 16px; line-height: 1.85; color: #f0f3ea; }
  .hero .primary { font-size: 14px; font-weight: 500; min-height: 48px; }
  .hero-bottom { right: 7%; letter-spacing: .5px; }
  .ps-heading p, .ps-summary, .ps-view button { font-size: 14px; line-height: 1.65; }
  .ps-heading p { color: #5c705e; }
  .ps-filters label, .ps-filters legend, .ps-clear { font-size: 13px; line-height: 1.6; }
  .ps-filters label > input, .ps-filters label > select {
    font-size: 16px;
    height: 44px;
  }
  .ps-view button { padding: 12px 10px; }
  .ps-tour-switch { max-width: 100%; }
  .ps-tour-mode { min-width: 0; min-height: 44px; padding: 10px 12px; font-size: 14px; line-height: 1.5; white-space: normal; }
  .ps-tour-sectors .ps-tour-section-title, .ps-tour-panoramas > .ps-tour-section-title,
  .ps-tour-viewpoint, .ps-tour-viewpoint-label { font-size: 12px; line-height: 1.65; }
  .ps-tour-sector { font-size: 13px; }
  .map-topbar-actions .site-home-link { font-size: 13px; }
  .language-trigger { font-size: 13px !important; }
  .ps-legend, .ps-infrastructure-key { font-size: 12px; line-height: 1.65; }
  .ps-legend { color: #52674f; gap: 10px 14px; }
  .ps-infrastructure-key { gap: 9px 14px; }
  .ps-data-stamp span { font-size: 13px; }
  .ps-seasons { width: 190px; height: 40px; border-radius: 22px; }
  .ps-seasons button { font-size: 12px; line-height: 1.3; }
  .ps-seasons svg { width: 14px; height: 14px; }
  .ps-detail > p, .ps-full-info > p { font-size: 14px; line-height: 1.85; color: #5c705e; }
  .ps-detail > small, .ps-cottage-preview span, .ps-source,
  .ps-detail .ps-entry-note { font-size: 12px; line-height: 1.75; }
  .ps-zone { font-size: 13px !important; }
  .ps-tour-note, .ps-disclaimer { font-size: 12px !important; line-height: 1.75 !important; }
  .ps-detail dl div, .ps-full-status, .ps-badge { font-size: 13px; line-height: 1.7; }
  .ps-property-areas small, .ps-cottage-options > span { font-size: 13px; line-height: 1.65; }
  .ps-property-areas strong span { font-size: 13px; }
  .ps-cottage-choice { font-size: 13px; min-height: 40px; }
  .ps-more summary, .ps-detail .ps-tour, .ps-plot-enter, .ps-project-open,
  .project-more, .project-back { font-size: 14px; line-height: 1.6; }
  .project-bar > span { font-size: 12px; letter-spacing: .7px; }
  .project-card p, .project-card .project-description, .project-features li {
    font-size: 14px; line-height: 1.8;
  }
  .project-specs dt, .project-details h4 { font-size: 13px; line-height: 1.7; }
  .project-specs dd { font-size: 14px; flex-shrink: 1; text-align: right; }
  .project-plans figcaption { font-size: 12px; line-height: 1.7; }
  .gc-booking-intro, .gc-booking-status, .gc-booking-contact { font-size: 14px; line-height: 1.7; }
  .gc-booking-field > span:first-child, .gc-booking-selected label > span { font-size: 13px; }
  .gc-booking-error, .gc-booking-note, .gc-booking-copy { font-size: 12px; line-height: 1.75; }
  .gc-booking-copy { min-height: 44px; }
  .site-contact-label { font-size: 13px; }
  .site-contact p { font-size: 15px; line-height: 1.85; }
  .site-contact-email .site-contact-value { font-size: 17px; }
  .site-footer .footer-links { font-size: 14px; }
  .site-footer .footer-meta { font-size: 12px; line-height: 1.7; }
  .map-topbar h1 > small { font-size: 12px; line-height: 1.6; }
  .tp-heading > span { font-size: 11px; line-height: 1.6; letter-spacing: .7px; }
  .tp-heading h2 { font-size: 16px; line-height: 1.5; }
  .tp-scene-heading, .tp-scene-heading small, .tp-scene > span { font-size: 12px; line-height: 1.5; }
  .tp-visualization { font-size: 11px; }
  .tp-scene { flex-basis: 138px; height: 76px; }
}
@media (max-width: 360px) {
  body > header.has-mobile-language { gap: 8px; }
  .header-actions { gap: 6px; }
  .project-specs > div { flex-direction: column; gap: 3px; }
  .project-specs dd { text-align: left; }
  .ps-detail .ps-land-prices div { flex-direction: column; align-items: flex-start; gap: 4px; }
}
