/* MBZ V36 — Global typography system
   One hierarchy across legacy Mobirise + custom sections. */
:root{
  --mbz-type-serif: Georgia, 'Times New Roman', serif;
  --mbz-type-sans: Arial, Helvetica, sans-serif;
  --mbz-type-ink: #282521;
  --mbz-type-muted: #6c665f;
}

html body{
  font-family:var(--mbz-type-sans)!important;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

/* Strip legacy font-family / case decisions from Mobirise helpers. */
html body .mbr-fonts-style,
html body .display-1,
html body .display-2,
html body .display-3,
html body .display-4,
html body .display-5,
html body .display-6,
html body .display-7,
html body .card-title,
html body .icon-title,
html body .icon-text,
html body .panel-title-edit,
html body .panel-text{
  font-family:inherit!important;
  text-transform:none!important;
}

/* Editorial heading hierarchy. */
html body h1,
html body h1.display-1,
html body .mbr-section-title:is(h1){
  font-family:var(--mbz-type-serif)!important;
  font-size:clamp(52px,6.2vw,78px)!important;
  line-height:.98!important;
  font-weight:400!important;
  letter-spacing:-.035em!important;
  text-transform:none!important;
}

html body h2,
html body h2.display-1,
html body h2.display-2,
html body h2.display-5,
html body .mbr-section-title:is(h2),
html body .card-title:is(h2){
  font-family:var(--mbz-type-serif)!important;
  font-size:clamp(34px,4vw,50px)!important;
  line-height:1.06!important;
  font-weight:400!important;
  letter-spacing:-.025em!important;
  text-transform:none!important;
}

html body h3,
html body h3.display-5,
html body h3.display-7,
html body .icon-title:is(h3),
html body .panel-title-edit:is(h3),
html body .card-title:is(h3){
  font-family:var(--mbz-type-sans)!important;
  font-size:17px!important;
  line-height:1.42!important;
  font-weight:500!important;
  letter-spacing:0!important;
  text-transform:none!important;
}

html body h4,
html body h5,
html body h6{
  font-family:var(--mbz-type-sans)!important;
  font-weight:500!important;
  letter-spacing:0!important;
  text-transform:none!important;
}

/* One body-copy rhythm across the site. */
html body p,
html body .mbr-text,
html body p.display-7,
html body .panel-text,
html body .icon-text,
html body li{
  font-family:var(--mbz-type-sans)!important;
  font-size:15.5px!important;
  line-height:1.72!important;
  font-weight:400!important;
  letter-spacing:0!important;
  text-transform:none!important;
}

/* UI type: header, links, forms and controls. */
html body a,
html body button,
html body input,
html body select,
html body textarea,
html body label{
  font-family:var(--mbz-type-sans)!important;
}

#menu1-3q .nav-link,
#menu1-3q .dropdown-item,
#menu1-3q .mbzh-lang,
#menu1-3q .mbzh-search-toggle{
  font-size:15px!important;
  line-height:1.2!important;
  font-weight:500!important;
  letter-spacing:0!important;
  text-transform:none!important;
}

/* Kicker / eyebrow language is the only intentionally tracked uppercase tier. */
html body .mbz-v2-section-kicker,
html body .mbz-section-kicker,
html body .mbz-project-kicker,
html body .mbz-contact-kicker,
html body [class*="kicker"]{
  font-family:var(--mbz-type-sans)!important;
  font-size:11.5px!important;
  line-height:1.3!important;
  font-weight:500!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
}

/* Hero: same system, intentionally composed rather than a separate font world. */
#header4-l.mbz-hero-v34 h1,
#header4-l.mbz-hero-v34 h1.display-1{
  font-family:var(--mbz-type-serif)!important;
  font-size:clamp(54px,6.5vw,80px)!important;
  line-height:.96!important;
  font-weight:400!important;
  letter-spacing:-.04em!important;
}
#header4-l.mbz-hero-v34 h2,
#header4-l.mbz-hero-v34 h2.display-2{
  font-family:var(--mbz-type-sans)!important;
  font-size:13px!important;
  line-height:1.3!important;
  font-weight:500!important;
  letter-spacing:.12em!important;
  text-transform:uppercase!important;
}
#header4-l.mbz-hero-v34 .hero-desc{
  font-family:var(--mbz-type-sans)!important;
  font-size:15.5px!important;
  line-height:1.68!important;
  font-weight:400!important;
  letter-spacing:0!important;
}

/* Compact component headings should not inherit editorial H3 scale. */
.mbz-contact-head h3,
.mbz-project-notes h3,
.mbz-field label,
.mbz-subscribe-block label{
  font-family:var(--mbz-type-sans)!important;
  font-size:13px!important;
  line-height:1.35!important;
  font-weight:500!important;
  letter-spacing:0!important;
  text-transform:none!important;
}

/* CTA / resource links: one quiet UI voice. */
.mbz-cta-text,
.mbz-resource-link,
.mbz-project-direct,
.mbz-project-actions button,
.mbz-subscribe-form button{
  font-family:var(--mbz-type-sans)!important;
  font-size:13px!important;
  line-height:1.35!important;
  font-weight:500!important;
  letter-spacing:.01em!important;
  text-transform:none!important;
}

/* FAQ questions stay compact and readable. */
#accordion-3e .panel-title-edit,
[id*="accordion"] .panel-title-edit{
  font-family:var(--mbz-type-sans)!important;
  font-size:16.5px!important;
  line-height:1.45!important;
  font-weight:500!important;
  letter-spacing:0!important;
}

@media (max-width: 767.98px){
  html body h1,
  html body h1.display-1,
  #header4-l.mbz-hero-v34 h1,
  #header4-l.mbz-hero-v34 h1.display-1{
    font-size:clamp(42px,13vw,58px)!important;
    line-height:1!important;
  }
  html body h2,
  html body h2.display-1,
  html body h2.display-2,
  html body h2.display-5{
    font-size:clamp(29px,8.5vw,38px)!important;
    line-height:1.08!important;
  }
  html body p,
  html body .mbr-text,
  html body p.display-7,
  html body .panel-text,
  html body .icon-text,
  html body li{
    font-size:15px!important;
    line-height:1.68!important;
  }
}


/* MBZ header utility refinement — search + language only */
.mbzh-header .mbzh-lang,
.mbzh-lang{
  font-size:13px!important;
  line-height:1!important;
  font-weight:500!important;
  text-transform:none!important;
}
.mbzh-header .mbzh-search-trigger svg,
.mbzh-search-trigger svg{
  width:16.5px!important;
  height:16.5px!important;
}
@media (max-width: 767.98px){
  .mbzh-header .mbzh-lang,
  .mbzh-lang{
    font-size:12.5px!important;
  }
  .mbzh-header .mbzh-search-trigger svg,
  .mbzh-search-trigger svg{
    width:16px!important;
    height:16px!important;
  }
}

