/* ==========================================================================
   BBS website scale refinement — 2026-10-18 (task: scale-refine-20261018)
   --------------------------------------------------------------------------
   ONE control point for this task's presentation changes. Loaded LAST in
   <head> (after every legacy/theme stylesheet), so equal-specificity rules
   win by cascade order. No `zoom`, no `scale()` transform: browser zoom
   behaviour is unchanged.
   `!important` appears ONLY where the overridden source rule uses it
   (bbs-service-header.css, bb-v22 about padding). Everything else relies on
   source-order + equal specificity.
   Sections: A header/nav/logo · B base type · C headings · D section rhythm ·
   E header offsets/anchors · F contact panel · G new contact sections.
   Visual identity, URLs, form backend, SMTP/CRM wiring, consent and
   measurement behaviour are intentionally untouched.
   ========================================================================== */

/* A. Shared header: 100px -> 80px desktop; logo image 270px -> 228px.
   The logo file carries ~17.7% transparent side padding, so 228px rendered
   shows ~188px of visible artwork (target visible band 180-195px). */
@media (min-width: 992px) {
  .classy-nav-container .classy-navbar {
    height: 80px;
  }
  .classy-nav-container .classy-navbar .nav-brand {
    flex-basis: 228px;
    width: 228px;
    max-width: 228px;
  }
  .classy-nav-container .classy-navbar .nav-brand img {
    width: 228px;
  }
  .classy-nav-container .classy-navbar .classynav ul li a {
    font-size: 17px;
  }
}
@media (min-width: 992px) and (max-width: 1199px) {
  .classy-nav-container .classy-navbar .classynav ul li a {
    font-size: 16px;
    padding: 0 8px;
  }
}

/* B. Base type: 14px -> 16px. (p/a already declare 16px; this lifts small
   inherited copy and form-adjacent text onto the same baseline.) */
body {
  font-size: 16px;
}

/* C. Heading ceilings keep a clear hierarchy at desktop widths.
   Home hero 60.5px -> max 50px; breadcrumb titles 60px -> 46px;
   bb-v22 breadcrumb clamp (max 80px; measured 72px on About) -> max 48px;
   service title band clamp (max 64px) -> max 48px; welcome slide 50px -> 42px;
   section h2 48px -> 38px. Mobile bands below are left as published. */
body.bb-v22-home .bb-hero--integrated .bb-display {
  font-size: clamp(2.5rem, 3.4vw, 3.125rem);
}
/* Exception, same scope + !important: the brand layer pins the home hero
   with `html[data-comparison-project="B"] body .bb-hero__copy .bb-display`
   at clamp(44px,4.2vw,64px) !important, which outranks any unscoped rule.
   Matched here so the single sheet stays the control point; mobile bands
   (44px/36px !important) are intentionally left as published. */
html[data-comparison-project="B"] body .bb-hero__copy .bb-display,
html[data-bbs-brand="1.4.1"] body .bb-hero__copy .bb-display {
  font-size: clamp(40px, 3.4vw, 50px) !important;
}
.breadcrumb-area .title {
  font-size: 46px;
}
body.bb-v22 .breadcrumb-area .breadcumb--con .title {
  font-size: clamp(2rem, 3.4vw, 3rem);
}
.bbs-service-header .bbs-service-title {
  font-size: clamp(34px, 3.8vw, 48px) !important;
}
.single-welcome-slide .welcome-text h2 {
  font-size: 42px;
}
.section-heading h2 {
  font-size: 38px;
}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
  .section-heading h2 {
    font-size: 34px;
  }
}

/* D. Section rhythm: cap the tallest shared bands (were ~96-101px).
   Mobile rhythm is preserved. */
.bb-partner {
  padding-block: clamp(3rem, 5vw, 4rem);
}
.bb-cta-band {
  padding-block: clamp(3rem, 5vw, 4rem);
}
.bb-v2 .bb-hero--signal {
  padding-block-end: clamp(2.5rem, 4vw, 3.5rem);
}
.uza-why-choose-us-area {
  padding-block: clamp(2.5rem, 4vw, 3.5rem);
}
body.bb-v22-about .uza-about-us-area {
  padding-block: clamp(3rem, 5vw, 4rem) !important;
}

/* E. Header offsets track the 80px desktop bar (were tuned for 100px).
   Breadcrumb top pad, enquiry top pad and anchor scroll margin move together
   so fixed-header overlap and breadcrumb clipping cannot regress. */
@media (min-width: 992px) {
  .breadcrumb-area {
    padding-block-start: calc(80px + clamp(2rem, 4vw, 3.5rem));
  }
}
.bbs-enquiry-page main {
  padding-top: 81px;
}
.bbs-enquiry-page #ContactForm {
  scroll-margin-top: 105px;
}
@media (max-width: 991px) {
  .bbs-enquiry-page main {
    padding-top: 71px;
  }
}

/* F. Contact panel: field geometry is frozen (inputs ~46px, 15px type).
   Only panel padding (36/40/32 -> 28/28/24), heading 25px -> 22px,
   field gaps 16px -> 12px, panel capped at 440px, message box 72px -> 64px. */
.bbs-enquiry-page .enquiry-panel {
  width: 100%;
  max-width: 440px;
  padding: 28px 28px 24px;
}
/* Contact hero 54px -> 44px desktop so the page hero sits below the home
   hero (49px) in the hierarchy; mobile bands (40/38/34px) untouched. */
@media (min-width: 641px) {
  .bbs-enquiry-page .enquiry-intro h1 {
    font-size: 44px;
  }
}
body.bbs-enquiry-page .enquiry-panel h2 {
  font-size: 22px;
}
.bbs-enquiry-page .enquiry-panel .enquiry-panel-note {
  margin: 0 0 16px;
}
.bbs-enquiry-page .enquiry-field {
  margin-bottom: 12px;
}
.bbs-enquiry-page .enquiry-field textarea {
  height: 64px;
  min-height: 64px;
}
.bbs-enquiry-page .enquiry-privacy {
  margin: 0 0 12px;
}
.bbs-enquiry-page .enquiry-security {
  margin: 0 0 12px;
}
.bbs-enquiry-page .enquiry-section {
  padding: 64px 0;
}
.bbs-enquiry-page .enquiry-section h2 {
  font-size: 34px;
}

/* G. New contact sections reuse the enquiry section shell; list rhythm
   matches the services/next-step blocks. Straightforward copy only. */
.bbs-enquiry-page .enquiry-signals-list,
.bbs-enquiry-page .enquiry-agenda-list {
  list-style: none;
  margin: 40px 0 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 48px;
}
.bbs-enquiry-page .enquiry-signals-list h3,
.bbs-enquiry-page .enquiry-agenda-list h3 {
  font-size: 20px;
  line-height: 1.4;
  margin: 0 0 12px;
}
.bbs-enquiry-page .enquiry-signals-list p,
.bbs-enquiry-page .enquiry-agenda-list p {
  font-size: 16px;
  line-height: 1.7;
  color: var(--enq-slate);
  margin: 0;
}
@media (max-width: 1023px) {
  .bbs-enquiry-page .enquiry-signals-list,
  .bbs-enquiry-page .enquiry-agenda-list {
    grid-template-columns: 1fr;
    gap: 28px;
    margin-top: 32px;
  }
}
@media (max-width: 640px) {
  .bbs-enquiry-page .enquiry-section {
    padding: 48px 0;
  }
  .bbs-enquiry-page .enquiry-section h2 {
    font-size: 29px;
  }
}
