/* BrandzCore 2.8.8: adaptive editorial scrolling; never clip content to a viewport.
   Desktop mouse-wheel paging lives in main.js, not in CSS scroll snap.
   Tablet, touch and trackpad retain the native browser experience. */
html.bzc-home-doc {
  height:auto!important;
  min-height:100%!important;
  overflow-y:auto!important;
  scroll-snap-type:none!important;
  scroll-padding-top:0!important;
  scroll-behavior:auto!important;
}
html.bzc-home-doc body.home {
  height:auto!important;
  min-height:100%!important;
  overflow:visible!important;
  scroll-snap-type:none!important;
  overscroll-behavior-y:auto!important;
}
html.bzc-home-doc body.home .site-header {
  position:relative!important;
  top:auto!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow:visible!important;
  scroll-snap-align:none!important;
  scroll-snap-stop:normal!important;
}
html.bzc-home-doc body.home #main.bzc-home-snap {
  display:block!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  margin:0!important;
  padding:0!important;
  overflow:visible!important;
  scroll-snap-type:none!important;
  scroll-behavior:auto!important;
  overscroll-behavior-y:auto!important;
  position:relative;
}
html.bzc-home-doc body.home #main.bzc-home-snap > section.bzc-home-panel {
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow:visible!important;
  scroll-snap-align:none!important;
  scroll-snap-stop:normal!important;
  scroll-margin-top:0!important;
}
html.bzc-home-doc body.home #main.bzc-home-snap > section.bzc-home-panel > .wrap {
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
}
html.bzc-home-doc body.home #main.bzc-home-snap > section.bzc-home-panel:not(#home-hero) {
  padding:clamp(48px,5.5vw,82px) 0!important;
}
html.bzc-home-doc body.home #main.bzc-home-snap > #home-hero.bzc-home-panel {
  height:auto!important;
  min-height:max(560px,calc(100svh - var(--bzc-home-nav-h,96px)))!important;
  overflow:hidden!important;
  padding:0!important;
}
html.bzc-home-doc body.home #home-hero .bzc-home-hero {
  height:auto!important;
  min-height:max(560px,calc(100svh - var(--bzc-home-nav-h,96px)))!important;
  margin:0!important;
}
/* The closing Contact scene already contains the site's contact tools.
   On Home, use its compact inline footer rather than a second footer. */
html.bzc-home-doc body.home > .site-footer {display:none!important;}
html.bzc-home-doc body.home #contact .bzc-home-footer-inline {
  display:flex!important;
  width:100%;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  padding-top:12px;
  margin-top:16px;
  border-top:1px solid rgba(21,83,72,.20);
  font-size:11px;
  color:#60716a;
}
/* More substantive expression copy, with two meaningful service paths. */
html.bzc-home-doc body.home #expression .bzc-expression-detail {
  margin:16px 0 0;
  max-width:64ch;
  font-size:clamp(15px,1.1vw,17px);
  line-height:1.65;
}
html.bzc-home-doc body.home #expression .bzc-expression-links {
  display:flex;
  flex-wrap:wrap;
  gap:12px 24px;
  justify-content:flex-start;
  margin:18px 0 0;
  padding:0;
  border:0;
  font-size:14px;
}
html.bzc-home-doc body.home #expression .bzc-expression-links a {
  text-decoration:none;
  border-bottom:1px solid currentColor;
  padding:0 0 4px;
  font-weight:600;
}
html.bzc-home-doc body.home #expression .bzc-expression-links a:hover {color:var(--green,#155348);}
/* Contact is one concluding scene, including its QR and compact footer. */
html.bzc-home-doc body.home #contact .wrap {
  width:100%;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  gap:0!important;
}
html.bzc-home-doc body.home #contact .actions {
  margin:12px 0 10px!important;
}
html.bzc-home-doc body.home #contact h2 {
  margin:8px 0 10px!important;
  line-height:1.07!important;
}
html.bzc-home-doc body.home #contact .lead {
  margin:8px 0 0!important;
  font-size:clamp(16px,1.4vw,19px)!important;
  line-height:1.48!important;
}
html.bzc-home-doc body.home #contact .bzc-contact-grid {
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,320px)!important;
  gap:clamp(34px,6vw,105px)!important;
  width:100%;
  justify-content:space-between!important;
  align-items:start!important;
  margin:14px 0 0!important;
}
html.bzc-home-doc body.home #contact .bzc-contact-card {
  gap:8px!important;
}
html.bzc-home-doc body.home #contact .contact-details {
  gap:clamp(18px,3vw,38px)!important;
}
html.bzc-home-doc body.home #contact .social-actions {
  margin:2px 0 0!important;
  padding:0!important;
}
html.bzc-home-doc body.home #contact .bzc-qr-card-home {
  position:relative;
  top:auto;
  left:0;
  margin-top:-68px!important;
  justify-self:end;
  align-self:start;
  gap:0!important;
}
html.bzc-home-doc body.home #contact .bzc-qr-card-home .bzc-qr-image {
  display:block;
  width:296px!important;
  max-width:100%!important;
  height:auto!important;
  padding:8px!important;
}
html.bzc-home-doc body.home #contact .bzc-qr-card-home .bzc-qr-copy {
  max-width:168px;
  gap:3px!important;
}
@media(max-width:1099px) {
  html.bzc-home-doc body.home #contact .bzc-contact-grid {
    width:100%;
    grid-template-columns:minmax(0,1fr) minmax(0,235px)!important;
    gap:20px!important;
  }
  html.bzc-home-doc body.home #contact .bzc-qr-card-home {top:auto;left:0;margin-top:0!important;justify-self:end;}
  html.bzc-home-doc body.home #contact .bzc-qr-card-home .bzc-qr-image {width:min(100%,220px)!important;}
  html.bzc-home-doc body.home #contact .bzc-home-footer-inline {flex-wrap:wrap;}
}
@media(max-width:680px) {
  html.bzc-home-doc body.home #contact .bzc-contact-grid {
    grid-template-columns:1fr!important;
    gap:20px!important;
  }
  html.bzc-home-doc body.home #contact .bzc-qr-card-home {top:auto;left:0;margin-top:0!important;justify-self:start;}
  html.bzc-home-doc body.home #contact .bzc-qr-card-home .bzc-qr-image {width:190px!important;}
  html.bzc-home-doc body.home #contact .bzc-home-footer-inline {
    flex-direction:column;
    align-items:flex-start;
    gap:6px;
  }
}
/* Thinking previews are an image-led editorial gallery at every viewport.
   The article title stays linked; excerpts remain available in the archive. */
html.bzc-home-doc body.home #thinking .thinking-card-image img {
  display:block;
  width:100%;
  height:auto!important;
  max-height:none!important;
  aspect-ratio:1 / 1!important;
  object-fit:cover!important;
}
html.bzc-home-doc body.home #thinking .thinking-card-body > p,
html.bzc-home-doc body.home #thinking .thinking-card-body > a {
  display:none!important;
}
@media(max-width:1099px) {
  html.bzc-home-doc body.home #thinking .thinking-card {max-width:none;}
  html.bzc-home-doc body.home #thinking .thinking-grid {
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:22px;
  }
}
@media(max-width:620px) {
  html.bzc-home-doc body.home #thinking .thinking-grid {grid-template-columns:1fr;}
  html.bzc-home-doc body.home #contact .bzc-qr-card-home {left:0;}
}
/* Keep the first editorial photograph in proportion to available screen
   height so the following text and links are not excessively far apart. */
@media(min-width:1100px) {
  html.bzc-home-doc body.home .growth-story figure img {
    display:block;
    width:100%;
    height:auto!important;
    max-height:58svh!important;
    object-fit:cover!important;
    object-position:center 47%;
  }
}
/* Touch/short-screen content may grow freely. */
@media (max-width:1099px), (max-height:620px), (prefers-reduced-motion:reduce) {
  html.bzc-home-doc {scroll-snap-type:none!important;scroll-behavior:auto!important;}
  html.bzc-home-doc body.home #main.bzc-home-snap > section.bzc-home-panel:not(#home-hero) {
    padding:clamp(44px,7vw,74px) 0!important;
  }
  html.bzc-home-doc body.home #main.bzc-home-snap > #home-hero.bzc-home-panel {
    min-height:calc(100svh - 74px)!important;
  }
  html.bzc-home-doc body.home #home-hero .bzc-home-hero {
    min-height:calc(100svh - 74px)!important;
    height:auto!important;
  }
}


/* Viewport-aware editorial section sizing (desktop only).
   Keep every paragraph visible; resize media and grid spacing instead of
   using hard 100vh panels or hidden overflow. */
@media(min-width:1100px) and (min-height:620px) and (max-height:900px) {
  html.bzc-home-doc body.home #main.bzc-home-snap > section.bzc-home-panel:not(#home-hero) {
    padding:clamp(30px,4svh,44px) 0!important;
  }
  html.bzc-home-doc body.home #main.bzc-home-snap > #contact.bzc-home-panel {
    padding:clamp(24px,3svh,38px) 0!important;
  }
  html.bzc-home-doc body.home #main.bzc-home-snap > section.bzc-home-panel h2 {
    font-size:clamp(34px,3.5vw,49px)!important;
    line-height:1.1!important;
    margin:8px 0 16px!important;
  }
  html.bzc-home-doc body.home .growth-story>.wrap {
    display:grid;
    grid-template-rows:auto auto auto auto;
    gap:clamp(8px,1.4svh,15px);
  }
  html.bzc-home-doc body.home .growth-story figure {margin:0!important;}
  html.bzc-home-doc body.home .growth-story figure img {
    width:100%;
    height:min(37svh,340px)!important;
    max-height:none!important;
    object-fit:cover!important;
    object-position:center 42%;
  }
  html.bzc-home-doc body.home .growth-story .split h2 {font-size:clamp(34px,3.4vw,49px)!important;}
  html.bzc-home-doc body.home .growth-story .split p {font-size:clamp(14px,1.1vw,17px)!important;line-height:1.5;}
  html.bzc-home-doc body.home #approach .bzc-card-grid,
  html.bzc-home-doc body.home #practice .bzc-card-grid {
    margin-top:10px!important;
    gap:clamp(12px,1.4vw,20px)!important;
  }
  html.bzc-home-doc body.home #approach .bzc-card-image,
  html.bzc-home-doc body.home #practice .bzc-card-image {
    width:100%;
    height:clamp(105px,20svh,175px)!important;
    max-height:none!important;
    aspect-ratio:16/9!important;
    object-fit:cover!important;
    margin-bottom:9px!important;
  }
  html.bzc-home-doc body.home #approach .bzc-home-card h3,
  html.bzc-home-doc body.home #practice .bzc-home-card h3 {font-size:clamp(17px,1.45vw,21px)!important;margin:5px 0!important;}
  html.bzc-home-doc body.home #approach .bzc-home-card p,
  html.bzc-home-doc body.home #practice .bzc-home-card p {font-size:clamp(12px,.98vw,14px)!important;line-height:1.48!important;}
  html.bzc-home-doc body.home #practice .service-icon {height:25px!important;width:25px!important;margin-bottom:0!important;}
  html.bzc-home-doc body.home #practice .bzc-practice-closing {margin-top:10px!important;font-size:13px!important;}
  html.bzc-home-doc body.home #expression>.wrap {align-items:center!important;}
  html.bzc-home-doc body.home #expression figure {height:auto!important;max-height:none!important;}
  html.bzc-home-doc body.home #expression figure img {height:min(41svh,360px)!important;max-height:none!important;object-fit:cover!important;}
  html.bzc-home-doc body.home #situations .bzc-direction-grid {
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:clamp(11px,1.3vw,18px)!important;
    margin-top:12px!important;
  }
  html.bzc-home-doc body.home #situations .bzc-direction-card .bzc-card-image {
    width:100%;
    height:clamp(105px,18svh,155px)!important;
    aspect-ratio:16/9!important;
    object-fit:cover!important;
  }
  html.bzc-home-doc body.home #situations .bzc-direction-card-body {padding:12px 13px!important;}
  html.bzc-home-doc body.home #situations .bzc-direction-card h3 {font-size:17px!important;line-height:1.18!important;margin:0 0 5px!important;}
  html.bzc-home-doc body.home #situations .bzc-direction-card p {font-size:12.5px!important;line-height:1.42!important;margin:0 0 6px!important;}
  html.bzc-home-doc body.home #situations .actions {margin-top:12px!important;}
  html.bzc-home-doc body.home #brands-in-context .context-heading {margin-bottom:12px!important;gap:30px;}
  html.bzc-home-doc body.home #brands-in-context .context-figure {margin:0!important;}
  html.bzc-home-doc body.home #brands-in-context .context-figure img {
    height:min(39svh,360px)!important;
    max-height:none!important;
    width:100%!important;
    object-fit:cover!important;
    object-position:center 51%;
  }
  html.bzc-home-doc body.home #brands-in-context .context-bottom {margin:9px auto 0!important;}
  html.bzc-home-doc body.home #thinking .thinking-grid {
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:clamp(18px,2vw,32px)!important;
    margin-top:15px!important;
    align-items:start;
  }
  html.bzc-home-doc body.home #thinking .thinking-card {max-width:330px;}
  html.bzc-home-doc body.home #thinking .thinking-card-image img {
    display:block;
    width:100%;
    height:clamp(135px,22svh,188px)!important;
    max-height:188px!important;
    aspect-ratio:16 / 10!important;
    object-fit:cover!important;
  }
  html.bzc-home-doc body.home #thinking .thinking-card-body {padding:10px 0 0!important;}
  html.bzc-home-doc body.home #thinking .thinking-card h3 {
    font-size:clamp(16px,1.32vw,19px)!important;
    line-height:1.28!important;
    margin:4px 0!important;
  }
  html.bzc-home-doc body.home #thinking .all-thinking {margin-top:8px!important;}
}


/* Minimum screen-sized editorial panels, WITHOUT height clipping.
   Short sections occupy the whole usable viewport so the next section
   never peeks into the bottom of the current page. Tall sections grow
   naturally and keep their complete content. */
@media (min-width:1100px) and (min-height:620px) and (prefers-reduced-motion:no-preference) {
  html.bzc-home-doc body.home #main.bzc-home-snap > section.bzc-home-panel:not(#home-hero) {
    height:auto!important;
    min-height:calc(100dvh - var(--bzc-adminbar,0px))!important;
    max-height:none!important;
    overflow:visible!important;
  }
  /* Centre shorter editorial compositions without altering their inner grids. */
  html.bzc-home-doc body.home #main.bzc-home-snap > #approach.bzc-home-panel,
  html.bzc-home-doc body.home #main.bzc-home-snap > #practice.bzc-home-panel,
  html.bzc-home-doc body.home #main.bzc-home-snap > #expression.bzc-home-panel,
  html.bzc-home-doc body.home #main.bzc-home-snap > #situations.bzc-home-panel,
  html.bzc-home-doc body.home #main.bzc-home-snap > #thinking.bzc-home-panel,
  html.bzc-home-doc body.home #main.bzc-home-snap > #contact.bzc-home-panel {
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
  }
  html.bzc-home-doc body.home #main.bzc-home-snap > section.bzc-home-panel > .wrap {
    width:100%;
    flex-shrink:0;
  }
}
/* Image-first Your Challenges: a concise headline beneath a square
   clickable photograph; no duplicated card summaries or extra CTA links.
   Desktop panels remain content-sized rather than clipping. */
html.bzc-home-doc body.home #situations .bzc-direction-card {
  border:0!important;
  background:transparent!important;
  min-width:0;
}
html.bzc-home-doc body.home #situations .bzc-direction-photo {
  display:block;
  width:100%;
  aspect-ratio:1/1;
  overflow:hidden;
  background:var(--green,#155348);
  line-height:0;
}
html.bzc-home-doc body.home #situations .bzc-direction-photo .bzc-card-image {
  display:block;
  width:100%!important;
  height:100%!important;
  max-height:none!important;
  margin:0!important;
  aspect-ratio:1/1!important;
  object-fit:cover!important;
  object-position:center!important;
}
html.bzc-home-doc body.home #situations .bzc-direction-card-body {
  display:block!important;
  padding:clamp(9px,1.3vw,16px) 0 0!important;
  background:transparent!important;
}
html.bzc-home-doc body.home #situations .bzc-direction-card h3 {
  font-family:Georgia,serif;
  font-size:clamp(18px,1.6vw,24px)!important;
  line-height:1.24!important;
  font-weight:normal;
  margin:0!important;
  max-width:19ch;
}
html.bzc-home-doc body.home #situations .bzc-direction-card h3 a {
  color:inherit;
  text-decoration:none;
}
html.bzc-home-doc body.home #situations .bzc-direction-photo:focus-visible,
html.bzc-home-doc body.home #situations .bzc-direction-card h3 a:focus-visible {
  outline:3px solid var(--gold,#B49A60);
  outline-offset:4px;
}
@media (min-width:1100px) {
  html.bzc-home-doc body.home #situations .bzc-direction-grid {
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    gap:clamp(15px,1.8vw,26px)!important;
    max-width:1100px;
    margin:clamp(12px,2svh,22px) auto 0!important;
  }
  html.bzc-home-doc body.home #situations .actions {
    margin-top:clamp(12px,2svh,22px)!important;
  }
}
@media (min-width:680px) and (max-width:1099px) {
  html.bzc-home-doc body.home #situations .bzc-direction-grid {
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:22px!important;
  }
}
@media (max-width:679px) {
  html.bzc-home-doc body.home #situations .bzc-direction-grid {
    grid-template-columns:1fr!important;
    gap:26px!important;
  }
}

/* Edition 2.8.11 / Inquire, Define, Express, Sustain gallery.
   Each large square photo and its title open the dedicated approach page.
   No repeated excerpts or secondary Learn-more anchors. */
html.bzc-home-doc body.home #approach .bzc-approach-grid {
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:clamp(15px,1.9vw,28px)!important;
  align-items:start!important;
  max-width:1160px;
  margin:clamp(20px,3svh,34px) auto 0!important;
}
html.bzc-home-doc body.home #approach .bzc-approach-card {
  display:flex!important;
  flex-direction:column!important;
  border:0!important;
  background:transparent!important;
  min-width:0;
  padding:0!important;
}
html.bzc-home-doc body.home #approach .bzc-approach-photo {
  display:block;
  width:100%;
  aspect-ratio:1/1;
  overflow:hidden;
  background:var(--green,#155348);
  line-height:0;
}
html.bzc-home-doc body.home #approach .bzc-approach-photo img.bzc-card-image {
  display:block;
  width:100%!important;
  height:100%!important;
  max-height:none!important;
  aspect-ratio:1/1!important;
  margin:0!important;
  object-fit:cover!important;
  object-position:center!important;
}
html.bzc-home-doc body.home #approach .bzc-approach-card .bzc-home-card-body {
  display:block!important;
  flex:0 0 auto!important;
  padding:clamp(12px,1.4vw,19px) 0 0!important;
}
html.bzc-home-doc body.home #approach .bzc-approach-card h3 {
  margin:0!important;
  font-family:Georgia,serif;
  font-size:clamp(21px,1.75vw,27px)!important;
  line-height:1.19!important;
  font-weight:normal;
}
html.bzc-home-doc body.home #approach .bzc-approach-card h3 a {
  color:inherit;
  text-decoration:none;
}
html.bzc-home-doc body.home #approach .bzc-approach-explainer {
  max-width:27ch;
  margin:8px auto 0!important;
  font-family:Arial,Helvetica,sans-serif;
  font-size:clamp(12px,.95vw,14px)!important;
  line-height:1.46!important;
  letter-spacing:0;
  font-weight:400;
  color:rgba(243,241,235,.83);
  text-align:center;
}
html.bzc-home-doc body.home #approach .bzc-approach-photo:focus-visible,
html.bzc-home-doc body.home #approach .bzc-approach-card h3 a:focus-visible {
  outline:3px solid var(--gold,#B49A60);
  outline-offset:5px;
}
@media (min-width:680px) and (max-width:1099px) {
  html.bzc-home-doc body.home #approach .bzc-approach-grid {
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:22px!important;
    max-width:720px;
  }
}
@media (max-width:679px) {
  html.bzc-home-doc body.home #approach .bzc-approach-grid {
    grid-template-columns:1fr!important;
    gap:28px!important;
    max-width:440px;
  }
}
/* 2.8.12 / Practice: four clear service families and directly navigable
   services. Keep full editorial images, without icon/excerpt clutter. */
html.bzc-home-doc body.home #practice .bzc-practice-grid {
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:clamp(16px,1.8vw,28px)!important;
  max-width:1180px;
  align-items:start!important;
  margin:clamp(18px,2.8svh,30px) auto 0!important;
}
html.bzc-home-doc body.home #practice .bzc-practice-card {
  display:flex!important;
  flex-direction:column!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  background:transparent;
  min-width:0;
}
html.bzc-home-doc body.home #practice .bzc-practice-photo {
  width:100%;
  aspect-ratio:1/1;
  display:block;
  overflow:hidden;
  line-height:0;
  background:var(--green,#155348);
}
html.bzc-home-doc body.home #practice .bzc-practice-photo img.bzc-card-image {
  width:100%!important;
  height:100%!important;
  max-height:none!important;
  margin:0!important;
  display:block;
  aspect-ratio:1/1!important;
  object-fit:cover!important;
  object-position:center!important;
}
html.bzc-home-doc body.home #practice .bzc-practice-card .bzc-home-card-body {
  display:block!important;
  flex:0 0 auto!important;
  padding:clamp(12px,1.5vw,18px) 0 0!important;
}
html.bzc-home-doc body.home #practice .bzc-practice-card h3 {
  font-family:Georgia,serif;
  font-size:clamp(20px,1.75vw,27px)!important;
  line-height:1.2!important;
  font-weight:normal;
  margin:0 0 10px!important;
}
html.bzc-home-doc body.home #practice .bzc-practice-card h3 a {
  text-decoration:none;
  color:inherit;
}
html.bzc-home-doc body.home #practice .bzc-practice-services ul {
  list-style:none;
  display:flex;
  flex-direction:column;
  gap:7px;
  margin:0;
  padding:0;
}
html.bzc-home-doc body.home #practice .bzc-practice-services li {
  padding:0;
  margin:0;
}
html.bzc-home-doc body.home #practice .bzc-practice-services a {
  display:inline-block;
  font-size:clamp(12px,.95vw,14px);
  line-height:1.4;
  color:#33544a;
  text-decoration:none;
  border-bottom:1px solid transparent;
}
html.bzc-home-doc body.home #practice .bzc-practice-services a:hover {
  color:var(--green,#155348);
  border-bottom-color:currentColor;
}
html.bzc-home-doc body.home #practice .bzc-practice-photo:focus-visible,
html.bzc-home-doc body.home #practice .bzc-practice-services a:focus-visible,
html.bzc-home-doc body.home #practice .bzc-practice-card h3 a:focus-visible {
  outline:3px solid var(--gold,#B49A60);
  outline-offset:4px;
}
@media(min-width:680px) and (max-width:1099px) {
  html.bzc-home-doc body.home #practice .bzc-practice-grid {
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:30px!important;
  }
}
@media(max-width:679px) {
  html.bzc-home-doc body.home #practice .bzc-practice-grid {
    grid-template-columns:1fr!important;
    gap:28px!important;
    max-width:440px;
  }
  html.bzc-home-doc body.home #practice .bzc-practice-services a {font-size:15px;}
}
/* 2.8.14 / Consolidated square-card captions.
   Mirror the Georgia typography of the "Give your brand..." editorial
   lead, but keep the gallery titles deliberately quieter and centered. */
html.bzc-home-doc body.home #approach .bzc-approach-card .bzc-home-card-body,
html.bzc-home-doc body.home #practice .bzc-practice-card .bzc-home-card-body,
html.bzc-home-doc body.home #situations .bzc-direction-card-body,
html.bzc-home-doc body.home #thinking .thinking-card-body {
  text-align:center!important;
}
html.bzc-home-doc body.home #approach .bzc-approach-card h3,
html.bzc-home-doc body.home #practice .bzc-practice-card h3,
html.bzc-home-doc body.home #situations .bzc-direction-card h3,
html.bzc-home-doc body.home #thinking .thinking-card h3 {
  font-family:Georgia,serif!important;
  font-size:clamp(17px,1.35vw,20px)!important;
  font-weight:normal!important;
  line-height:1.36!important;
  letter-spacing:-.012em!important;
  text-align:center!important;
  max-width:none!important;
  margin:10px auto 0!important;
}
html.bzc-home-doc body.home #practice .bzc-practice-services {
  display:block;
  width:100%;
  margin:11px 0 0!important;
  text-align:center!important;
}
html.bzc-home-doc body.home #practice .bzc-practice-services ul {
  align-items:center!important;
  gap:7px!important;
}
html.bzc-home-doc body.home #practice .bzc-practice-services li,
html.bzc-home-doc body.home #practice .bzc-practice-services a {
  text-align:center!important;
}
html.bzc-home-doc body.home #practice .bzc-practice-services a {
  font-size:clamp(12px,.95vw,14px)!important;
}
html.bzc-home-doc body.home #approach .bzc-approach-card .bzc-home-card-body,
html.bzc-home-doc body.home #practice .bzc-practice-card .bzc-home-card-body,
html.bzc-home-doc body.home #situations .bzc-direction-card-body,
html.bzc-home-doc body.home #thinking .thinking-card-body {
  padding-top:9px!important;
}
/* Raise the QR by roughly another 4 cm at desktop widths and use the
   right-side whitespace. Negative margin also shortens the last scene. */
@media (min-width:1100px) {
  html.bzc-home-doc body.home #contact .bzc-qr-card-home {
    margin-top:-228px!important;
    margin-right:0!important;
    justify-self:end!important;
  }
  html.bzc-home-doc body.home #contact .bzc-home-footer-inline {
    margin-top:8px!important;
    padding-top:6px!important;
    gap:10px!important;
  }
  html.bzc-home-doc body.home #main.bzc-home-snap > #contact.bzc-home-panel {
    padding-top:clamp(18px,2.6svh,29px)!important;
    padding-bottom:clamp(14px,2.4svh,25px)!important;
  }
}
@media (min-width:1100px) and (max-width:1250px) {
  html.bzc-home-doc body.home #contact .bzc-qr-card-home {
    margin-top:-175px!important;
  }
}
@media (max-width:679px) {
  html.bzc-home-doc body.home #approach .bzc-approach-card h3,
  html.bzc-home-doc body.home #practice .bzc-practice-card h3,
  html.bzc-home-doc body.home #situations .bzc-direction-card h3,
  html.bzc-home-doc body.home #thinking .thinking-card h3 {
    font-size:19px!important;
  }
}
/* Thinking gallery: concise, clearly actionable editorial archive link. */
html.bzc-home-doc body.home #thinking .all-thinking {
  text-align:center!important;
  margin:clamp(8px,1.5svh,16px) 0 0!important;
}
@media (min-width:1100px) and (min-height:620px) {
  html.bzc-home-doc body.home #thinking > .wrap {
    gap:clamp(6px,1.2svh,12px)!important;
    justify-content:center!important;
  }
  html.bzc-home-doc body.home #thinking h2 {
    margin:0!important;
    line-height:1.08!important;
  }
  html.bzc-home-doc body.home #thinking > .wrap > p:not(.all-thinking) {
    margin:0!important;
    line-height:1.45;
  }
  html.bzc-home-doc body.home #thinking .thinking-grid {
    margin-top:clamp(8px,1.4svh,14px)!important;
  }
}
@media (min-width:1100px) and (min-height:620px) and (max-height:800px) {
  html.bzc-home-doc body.home #main.bzc-home-snap > #thinking.bzc-home-panel {
    padding:clamp(23px,3svh,34px) 0!important;
  }
  html.bzc-home-doc body.home #thinking .thinking-card-image img {
    height:clamp(125px,21svh,165px)!important;
    max-height:165px!important;
  }
}
html.bzc-home-doc body.home #thinking .bzc-thinking-more {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:12px 26px;
  min-height:44px;
  background:var(--green,#155348);
  color:#fff;
  border:1px solid var(--green,#155348);
  text-decoration:none!important;
  font-family:Arial,sans-serif;
  font-size:14px;
  line-height:1.35;
  font-weight:600;
  transition:background-color .2s ease, border-color .2s ease;
}
html.bzc-home-doc body.home #thinking .bzc-thinking-more:hover {
  background:#103f36;
  border-color:#103f36;
}
html.bzc-home-doc body.home #thinking .bzc-thinking-more:focus-visible {
  outline:3px solid var(--gold,#B49A60);
  outline-offset:4px;
}
/* Two compact return actions at the close of Home; both lead to the opening hero. */
html.bzc-home-doc body.home #contact .bzc-home-return {
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  margin:clamp(11px,1.8svh,21px) 0 0;
}
html.bzc-home-doc body.home #contact .bzc-home-return a {
  display:inline-flex;
  justify-content:center;
  align-items:center;
  min-height:44px;
  padding:10px 16px;
  text-decoration:none;
  border:1px solid rgba(21,83,72,.45);
  color:#155348;
  background:transparent;
  font-size:12px;
  line-height:1;
  font-weight:600;
  transition:background-color .2s,color .2s,border-color .2s;
}
html.bzc-home-doc body.home #contact .bzc-home-return .bzc-home-return-icon {
  width:48px;
  padding:7px;
  flex-direction:column;
  gap:0;
  font-size:15px;
  line-height:.66;
  letter-spacing:0;
}
html.bzc-home-doc body.home #contact .bzc-home-return a:hover,
html.bzc-home-doc body.home #contact .bzc-home-return a:focus-visible {
  background:#155348;
  color:#fff;
  border-color:#155348;
}
html.bzc-home-doc body.home #contact .bzc-home-return a:focus-visible {
  outline:2px solid #B49A60;
  outline-offset:3px;
}
@media(prefers-reduced-motion:reduce) {
  html.bzc-home-doc body.home #thinking .bzc-thinking-more {transition:none;}
}

/* 2.8.22: Home editorial card alignment, four boxed service paths and
   a discrete final-page navigation row above the inline footer. */
html.bzc-home-doc body.home #approach .bzc-approach-card .bzc-home-card-body,
html.bzc-home-doc body.home #practice .bzc-practice-card .bzc-home-card-body,
html.bzc-home-doc body.home #situations .bzc-direction-card-body,
html.bzc-home-doc body.home #thinking .thinking-card-body {
  text-align:left!important;
}
html.bzc-home-doc body.home #approach .bzc-approach-card h3,
html.bzc-home-doc body.home #practice .bzc-practice-card h3,
html.bzc-home-doc body.home #situations .bzc-direction-card h3,
html.bzc-home-doc body.home #thinking .thinking-card h3 {
  text-align:left!important;
  margin:6px 0 0!important;
  max-width:none!important;
}
html.bzc-home-doc body.home #approach .bzc-approach-explainer {
  text-align:left!important;
  margin:7px 0 0!important;
  max-width:29ch!important;
}
html.bzc-home-doc body.home #practice .bzc-practice-services,
html.bzc-home-doc body.home #practice .bzc-practice-services li,
html.bzc-home-doc body.home #practice .bzc-practice-services a {
  text-align:left!important;
}
html.bzc-home-doc body.home #practice .bzc-practice-services ul {
  align-items:flex-start!important;
}
html.bzc-home-doc body.home #thinking .all-thinking {
  text-align:left!important;
  align-self:flex-start!important;
  width:100%;
  margin:clamp(10px,1.8svh,19px) 0 0!important;
}
html.bzc-home-doc body.home #thinking .bzc-thinking-more{
  margin:0!important;
}
html.bzc-home-doc body.home .bzc-home-link-box{
  display:inline-flex!important;
  flex:0 0 auto;
  align-items:center;
  justify-content:center;
  gap:12px;
  width:fit-content;
  min-height:44px;
  padding:12px 18px!important;
  background:transparent;
  border:1px solid #155348!important;
  border-bottom:1px solid #155348!important;
  border-radius:0!important;
  color:#155348!important;
  font-size:clamp(12px,.95vw,14px)!important;
  font-weight:600!important;
  line-height:1.3!important;
  text-decoration:none!important;
  transition:background-color .2s ease,color .2s ease,border-color .2s ease;
}
html.bzc-home-doc body.home .bzc-home-link-box:hover,
html.bzc-home-doc body.home .bzc-home-link-box:focus-visible{
  background:#155348!important;
  color:#fff!important;
  border-color:#155348!important;
}
html.bzc-home-doc body.home .bzc-home-link-box:focus-visible {
  outline:2px solid #B49A60!important;
  outline-offset:4px!important;
}
html.bzc-home-doc body.home #expression .bzc-expression-links{
  display:flex!important;
  align-items:center;
  flex-wrap:wrap;
  gap:10px 12px!important;
  margin-top:18px;
}
html.bzc-home-doc body.home #expression .bzc-expression-links .bzc-home-link-box {
  margin:0!important;
  white-space:normal;
}
html.bzc-home-doc body.home .growth-story .bzc-growth-cta{
  justify-self:start;
  align-self:start;
  margin-top:clamp(8px,1.5svh,16px);
}
html.bzc-home-doc body.home #situations .actions .bzc-challenge-cta{
  margin:0!important;
  background:transparent!important;
}
html.bzc-home-doc body.home #situations .actions .bzc-challenge-cta:hover{
  background:#155348!important;
}
html.bzc-home-doc body.home #contact .bzc-home-return-section{
  width:100%;
  margin-top:clamp(20px,2.8svh,32px);
}
html.bzc-home-doc body.home #contact .bzc-home-return {
  display:flex!important;
  justify-content:space-between!important;
  align-items:center!important;
  width:100%;
  gap:20px;
  margin:0!important;
  padding:20px 0 18px;
  border-top:1px solid rgba(21,83,72,.18);
  border-bottom:1px solid rgba(180,154,96,.58);
}
html.bzc-home-doc body.home #contact .bzc-home-return a{
  display:inline-flex!important;
  align-items:center;
  justify-content:center;
  min-height:48px!important;
  gap:11px;
  padding:11px 23px!important;
  margin:0!important;
  border-radius:0!important;
  text-decoration:none!important;
  font-weight:600;
  font-size:13px;
}
html.bzc-home-doc body.home #contact .bzc-home-return-home{
  background:#155348!important;
  border:1px solid #155348!important;
  color:#fff!important;
}
html.bzc-home-doc body.home #contact .bzc-home-return-back{
  background:transparent!important;
  border:1px solid #155348!important;
  color:#155348!important;
}
html.bzc-home-doc body.home #contact .bzc-home-return a:hover,
html.bzc-home-doc body.home #contact .bzc-home-return a:focus-visible {
  background:#0d3f37!important;
  border-color:#0d3f37!important;
  color:#fff!important;
}
html.bzc-home-doc body.home #contact .bzc-home-footer-inline{
  margin-top:18px!important;
  padding-top:0!important;
  border-top:0!important;
}
@media(max-width:620px) {
  html.bzc-home-doc body.home #contact .bzc-home-return{padding:16px 0;gap:10px}
  html.bzc-home-doc body.home #contact .bzc-home-return a{padding:10px 15px!important;min-height:44px!important}
  html.bzc-home-doc body.home #expression .bzc-expression-links{flex-direction:column;align-items:flex-start}
  html.bzc-home-doc body.home #expression .bzc-expression-links .bzc-home-link-box{width:100%;justify-content:space-between}
}

/* Larger-content sections remain naturally scrollable, even at short heights. */
@media (min-width:1100px) and (max-height:619px) {
  html.bzc-home-doc body.home #main.bzc-home-snap > section.bzc-home-panel {
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:visible!important;
  }
}
