/* Local brand headings with readable supporting typography. */
@font-face {
  font-family: 'HBH Brand'; font-style: normal; font-weight: 700;
  font-display: swap; src: url('./fonts/eras-itc-bold.ttf') format('truetype');
}
@font-face {
  font-family: 'HBH Lora'; font-style: normal; font-weight: 400 600;
  font-display: swap; src: url('./fonts/lora-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF,U+FEFF,U+FFFD;
}
@font-face {
  font-family: 'HBH Manrope'; font-style: normal; font-weight: 400 600;
  font-display: swap; src: url('./fonts/manrope-latin.woff2') format('woff2');
  unicode-range: U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF,U+FEFF,U+FFFD;
}
:is(.homepage-design,.public-design,#navbar.hbh-site-header,footer.hbh-site-footer) {
  --home-serif: 'HBH Brand', 'HBH Manrope', 'Segoe UI', sans-serif;
  --home-sans: 'HBH Manrope', 'Segoe UI', system-ui, sans-serif;
  --chrome-serif: var(--home-serif); --chrome-sans: var(--home-sans);
  font-family: var(--home-sans);
}
:is(.homepage-design,.public-design) :is(h1,h2,h3,h4,h5,h6) { font-family: var(--home-serif) !important; font-weight: 700 !important; letter-spacing: -.015em !important; overflow-wrap: anywhere; }
:is(.homepage-design,.public-design) :is(h3,h4,h5,h6,p,li,label,input,select,textarea,button,.btn) { font-family: var(--home-sans); }
:is(.homepage-design,.public-design) :is(p,li) { font-weight: 400; }
.public-design :is(input,select,textarea) { font-family: var(--home-sans) !important; }
.public-design .map-link-action { max-width: 100%; white-space: normal; overflow-wrap: anywhere; }
#navbar .nav-menu > li > a,#navbar .dropdown > span > a { font-family: var(--home-serif) !important; font-weight: 700 !important; font-size: 14px !important; }
footer.hbh-site-footer .footer-col :is(h3,h4) { font-family: var(--home-serif); font-weight: 700; }
@media (max-width: 1024px) {
  #navbar .nav-menu > li > a,#navbar .dropdown > span > a { font-size: 17px !important; }
}
@media (max-width: 360px) {
  .public-design .g-recaptcha { max-width: 100%; height: 66px; overflow: hidden; }
  .public-design .g-recaptcha > div { transform: scale(.8); transform-origin: top left; }
}
/* The standalone document-upload page keeps the same public form typography. */
/* Compact type scale: sizes only; existing faces, weights and spacing stay intact. */
/* Soft pastel surfaces replace white cards and controls throughout public pages. */
:is(.homepage-design,.public-design,#navbar.hbh-site-header,footer.hbh-site-footer) {
  --bg-white: #f4ecd8; --bg-white-color: #f4ecd8;
}
:is(.homepage-design,.public-design,#navbar.hbh-site-header,footer.hbh-site-footer) h1 { font-size: clamp(24px,2.6vw,32px) !important; }
:is(.homepage-design,.public-design,#navbar.hbh-site-header,footer.hbh-site-footer) h2 { font-size: clamp(21px,2.2vw,28px) !important; }
:is(.homepage-design,.public-design,#navbar.hbh-site-header,footer.hbh-site-footer) h3 { font-size: 16px !important; }
:is(.homepage-design,.public-design,#navbar.hbh-site-header,footer.hbh-site-footer) :is(h4,h5,h6) { font-size: 14px !important; }
:is(.homepage-design,.public-design,#navbar.hbh-site-header,footer.hbh-site-footer) :is(.hero-title,.service-hero h1) { font-size: clamp(28px,3.2vw,42px) !important; }
:is(.homepage-design,.public-design,#navbar.hbh-site-header,footer.hbh-site-footer) :is(.cta-content h2,.service-final-cta h2) { font-size: clamp(23px,2.6vw,32px) !important; }
:is(.homepage-design,.public-design) :is(p,li) { font-size: 13px; }
#navbar .nav-menu > li > a,#navbar .dropdown > span > a { font-size: 13px !important; }
footer.hbh-site-footer .footer-col h3 { font-size: 20px !important; }
footer.hbh-site-footer .footer-col h4 { font-size: 11px !important; }
@media (max-width: 1024px) {
  #navbar .nav-menu > li > a,#navbar .dropdown > span > a { font-size: 15px !important; }
}
@media (max-width: 600px) {
  :is(.homepage-design,.public-design,#navbar.hbh-site-header,footer.hbh-site-footer) :is(.hero-title,.service-hero h1) { font-size: 28px !important; }
}
