@font-face {
  font-family: "Be Vietnam Pro";
  src: url("/assets/fonts/be-vietnam-pro-400.ttf") format("truetype");
  font-weight: 400;
  font-display: swap;
}
@font-face {
  font-family: "Be Vietnam Pro";
  src: url("/assets/fonts/be-vietnam-pro-500.ttf") format("truetype");
  font-weight: 500;
  font-display: swap;
}
@font-face {
  font-family: "Be Vietnam Pro";
  src: url("/assets/fonts/be-vietnam-pro-600.ttf") format("truetype");
  font-weight: 600;
  font-display: swap;
}
@font-face {
  font-family: "Be Vietnam Pro";
  src: url("/assets/fonts/be-vietnam-pro-700.ttf") format("truetype");
  font-weight: 700;
  font-display: swap;
}
body { font-family: "Be Vietnam Pro", Arial, sans-serif; font-size: 15px; line-height: 1.55; }
body :is(input, select, textarea, button) { font-family: inherit; }
body :is(h1, h2, h3) { font-weight: 600; }
body :is(p, li) { line-height: 1.55; }
body .site-header nav { font-weight: 500; }
body .site-footer { font-size: 14px; line-height: 1.55; }
body .site-footer h2 { font-weight: 600; }
body .site-header .site-text-size {
  flex: 0 0 auto;
  min-height: 40px;
  padding: 6px 10px;
  border: 1px solid #c6c6c6;
  border-radius: 6px;
  background: white;
  color: #292929;
  font: inherit;
  cursor: pointer;
}
body .site-header .site-text-size[aria-pressed="true"] { background: #fff0ee; border-color: #a52a24; color: #a52a24; }
body .site-header .site-text-size:focus-visible { outline: 2px solid #a52a24; outline-offset: 2px; }
body .site-text-size[hidden] { display: none; }

.large-text body { font-size: 18px; line-height: 1.6; }
.large-text body :is(main, dialog, .site-footer) :is(p, li, label, input, select, textarea) {
  font-size: 18px !important;
  line-height: 1.55 !important;
}
.large-text body :is(main, dialog) :is(h1, h2, h3) { line-height: 1.35; }
.large-text body main h2 { font-size: clamp(22px, 4vw, 28px); }
.large-text body .site-footer { font-size: 17px; }
.large-text body .site-footer h2 { font-size: 17px; }
.large-text body .site-header nav { font-size: 16px; }
.large-text body :is(.card-location, .specs, .card-bottom, .guide-date, .home-service-links span) {
  font-size: 16px;
  line-height: 1.5;
}
.large-text body :is(.project-card-copy, .home-property, .site-footer nav) { overflow-wrap: anywhere; }
.large-text body .home-content .section-heading > a { white-space: normal; }
.large-text body .site-footer :is(a, button, summary) { min-height: 36px; }
@media (max-width: 760px) {
  body .site-header .site-text-size { min-height: 36px; }
  .large-text body main .section-heading { flex-wrap: wrap; }
  .large-text body .hero #searchForm input { min-width: 0; }
}
