:root{--navy:#172c3a;--navy-2:#1d3749;--navy-dark:#102538;--gold:#b79b69;--ivory:#f5f2ec;--paper:#fbfaf7;--charcoal:#2b2e34;--muted:#74777d;--line:rgba(183,155,105,.35);--serif:'Cormorant Garamond',Georgia,serif;--sans:'Inter',Arial,sans-serif;--max:1180px}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--charcoal);font-family:var(--sans);font-size:17px;line-height:1.72}a{color:inherit;text-decoration:none}img{max-width:100%;height:auto}.container{width:min(var(--max),calc(100% - 44px));margin:0 auto}.site-header{position:fixed;top:0;left:0;right:0;z-index:50;padding:22px 0;border-bottom:1px solid rgba(183,155,105,.18);transition:.25s ease;background:#102538;background:rgba(23,44,58,.98);backdrop-filter:blur(10px)}.header-inner{display:flex;align-items:center;justify-content:space-between;gap:38px}.bkc-brand{display:inline-flex;align-items:center}.bkc-brand img{width:322px;max-height:64px;object-fit:contain;filter:brightness(1.03)}.primary-nav ul,.footer-nav ul{display:flex;gap:42px;list-style:none;margin:0;padding:0}.primary-nav a{position:relative;font-size:13px;letter-spacing:.13em;text-transform:uppercase;color:#fff;opacity:.92}.primary-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-7px;height:1px;background:var(--gold);transition:.22s ease}.primary-nav a:hover{color:var(--gold)}.primary-nav a:hover:after{right:0}.nav-toggle{display:none;background:transparent;border:0;width:38px;height:32px}.nav-toggle span{display:block;height:1px;background:#fff;margin:9px 0}.hero{min-height:92vh;display:flex;align-items:center;background:radial-gradient(circle at 75% 30%,rgba(183,155,105,.12),transparent 34%),linear-gradient(135deg,var(--navy),var(--navy-dark));color:#fff;padding:150px 0 90px}.eyebrow{display:block;color:var(--gold);font-size:12px;letter-spacing:.22em;text-transform:uppercase;margin-bottom:26px}.hero h1,.page-hero h1{font-family:var(--serif);font-weight:300;font-size:clamp(66px,9vw,136px);line-height:.9;letter-spacing:-.045em;margin:0 0 34px;max-width:1020px}.hero p,.page-hero p{max-width:700px;color:rgba(255,255,255,.78);font-size:19px}.bkc-button,.bkc-button-outline{display:inline-flex;align-items:center;justify-content:center;margin-top:26px;padding:16px 24px;border:1px solid var(--gold);background:var(--gold);color:var(--navy);font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;transition:.2s ease}.bkc-button:hover{background:transparent;color:var(--gold)}.bkc-button-outline{background:transparent;color:var(--gold)}.bkc-button-outline:hover{background:var(--gold);color:var(--navy)}section{padding:118px 0}.section-dark{background:var(--navy);color:#fff}.section-ivory{background:var(--ivory)}.split{display:grid;grid-template-columns:1fr 1fr;gap:86px;align-items:start}.section-title{font-family:var(--serif);font-weight:300;font-size:clamp(46px,5vw,82px);line-height:.96;letter-spacing:-.035em;margin:0 0 28px}.lead{font-size:21px;color:var(--muted);max-width:740px}.section-dark .lead,.section-dark p{color:rgba(255,255,255,.74)}.gold-rule{width:62px;height:1px;background:var(--gold);margin:0 0 28px}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.card{padding:38px;background:#fff;border-top:2px solid var(--gold);min-height:250px;transition:.2s ease}.section-dark .card{background:rgba(255,255,255,.045);border:1px solid rgba(183,155,105,.26);border-top:2px solid var(--gold)}.card:hover{transform:translateY(-3px)}.card h3{font-family:var(--serif);font-weight:400;font-size:34px;line-height:1;margin:0 0 22px}.card p{color:var(--muted);margin:0}.quote-band{text-align:center}.quote-band .section-title{margin:auto;max-width:900px}.page-hero{background:radial-gradient(circle at 74% 24%,rgba(183,155,105,.1),transparent 32%),linear-gradient(135deg,var(--navy),var(--navy-dark));color:#fff;padding:190px 0 120px}.flow{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.flow div{padding:34px 24px;border-right:1px solid var(--line);font-family:var(--serif);font-size:34px}.flow div:last-child{border-right:0}.article-feature{display:grid;grid-template-columns:.8fr 1.2fr;gap:48px;padding:46px;border:1px solid var(--line);background:rgba(183,155,105,.06)}.article-feature h2{font-family:var(--serif);font-weight:300;font-size:52px;line-height:1;margin:0 0 18px}.meta{color:var(--gold);font-size:12px;letter-spacing:.16em;text-transform:uppercase}.post-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.post-card{padding:32px;border:1px solid rgba(23,44,58,.12);background:#fff;transition:.2s ease}.post-card:hover{transform:translateY(-2px);border-color:var(--line)}.post-card h3{font-family:var(--serif);font-size:32px;line-height:1.05;font-weight:400;margin:14px 0}.tags{display:flex;flex-wrap:wrap;gap:12px}.tag{border:1px solid var(--line);padding:11px 15px;color:var(--navy);font-size:13px;letter-spacing:.08em;text-transform:uppercase}.section-dark .tag{color:#fff}.service-row{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;padding:64px 0;border-top:1px solid var(--line)}.service-row h2{font-family:var(--serif);font-size:58px;line-height:.98;font-weight:300;margin:0}.contact-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}.contact-card{background:#fff;border-top:2px solid var(--gold);padding:42px}.contact-form input,.contact-form textarea{width:100%;padding:16px 0;margin-bottom:22px;border:0;border-bottom:1px solid rgba(23,44,58,.25);background:transparent;font:inherit}.contact-form textarea{min-height:145px}.site-footer{background:var(--navy-dark);color:#fff;padding:78px 0 30px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px}.footer-strap{font-family:var(--serif);font-size:34px;line-height:1.05;color:var(--gold)}.footer-nav ul{display:block}.footer-nav li{margin-bottom:12px}.footer-contact p{margin:0 0 12px;color:rgba(255,255,255,.72)}.footer-bottom{border-top:1px solid rgba(183,155,105,.25);margin-top:54px;padding-top:26px;color:rgba(255,255,255,.52);font-size:13px}.screen-reader-response,.wpcf7-not-valid-tip{color:#8b1d1d}.bkc-notice{padding:14px 18px;background:var(--ivory);border-left:2px solid var(--gold);margin:22px 0}@media(max-width:860px){body{font-size:16px}.site-header{padding:14px 0}.bkc-brand img{width:228px}.nav-toggle{display:block}.primary-nav{position:absolute;top:100%;left:0;right:0;background:var(--navy);padding:0 22px;max-height:0;overflow:hidden;transition:.25s}.primary-nav.is-open{max-height:340px;padding:22px}.primary-nav ul{display:block}.primary-nav li{margin:0 0 18px}.hero{min-height:auto;padding:138px 0 80px}.hero h1,.page-hero h1{font-size:64px}.page-hero{padding:140px 0 78px}section{padding:78px 0}.split,.cards,.post-grid,.footer-grid,.contact-grid,.article-feature,.service-row{grid-template-columns:1fr;gap:28px}.flow{grid-template-columns:1fr}.flow div{border-right:0;border-bottom:1px solid var(--line)}.flow div:last-child{border-bottom:0}.section-title{font-size:52px}.service-row h2{font-size:46px}}

/* Gutenberg/block editor compatibility */
.wp-block-group{margin-top:0;margin-bottom:0}.wp-block-group.container,.editor-styles-wrapper .wp-block-group.container{width:min(var(--max),calc(100% - 44px));margin-left:auto;margin-right:auto}.wp-block-heading{margin-top:0}.wp-block-button.is-style-bkc-primary .wp-block-button__link,.wp-block-button .wp-block-button__link.bkc-button{display:inline-flex;align-items:center;justify-content:center;margin-top:26px;padding:16px 24px;border:1px solid var(--gold);border-radius:0;background:var(--gold);color:var(--navy);font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;transition:.2s ease}.wp-block-button.is-style-bkc-primary .wp-block-button__link:hover{background:transparent;color:var(--gold)}.wp-block-button.is-style-bkc-outline .wp-block-button__link,.wp-block-button .wp-block-button__link.bkc-button-outline{display:inline-flex;align-items:center;justify-content:center;margin-top:26px;padding:16px 24px;border:1px solid var(--gold);border-radius:0;background:transparent;color:var(--gold);font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;transition:.2s ease}.wp-block-button.is-style-bkc-outline .wp-block-button__link:hover{background:var(--gold);color:var(--navy)}.hero .wp-block-buttons,.page-hero .wp-block-buttons{margin-top:0}.site-header .custom-logo-link,.site-footer .custom-logo-link,.bkc-brand{display:inline-flex;align-items:center;justify-content:center;width:82px;height:52px;background:rgba(255,255,255,.055);overflow:hidden}.site-header .custom-logo-link img,.site-footer .custom-logo-link img,.bkc-brand img{display:block;width:58px;max-width:58px;max-height:32px;height:auto;object-fit:contain;filter:brightness(1.03)}.site-footer .custom-logo-link,.site-footer .bkc-brand{margin-bottom:46px}.site-footer .bkc-brand img{width:58px;max-width:58px}.editor-styles-wrapper{font-family:var(--sans);color:var(--charcoal);background:var(--paper);font-size:17px;line-height:1.72}.editor-styles-wrapper .hero,.editor-styles-wrapper .page-hero{margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw)}
.site-main>.wp-block-group{padding:118px 0}.site-main>.wp-block-group.hero{padding:150px 0 90px}.site-main>.wp-block-group.page-hero{padding:190px 0 120px}.site-main>.wp-block-group.section-ivory,.site-main>.wp-block-group.quote-band.section-ivory{background:var(--ivory)}.site-main>.wp-block-group.section-dark,.site-main>.wp-block-group.quote-band.section-dark{background:var(--navy);color:#fff}@media(max-width:860px){.site-main>.wp-block-group{padding:78px 0}.site-main>.wp-block-group.hero{padding:138px 0 80px}.site-main>.wp-block-group.page-hero{padding:140px 0 78px}}

/* v1.0.6 Gutenberg layout repair: keep pages fully block-editable while preserving approved BKC layout. */
.site-main{overflow:hidden}.site-main>.wp-block-group{clear:both}.site-main .wp-block-group.container{width:min(var(--max),calc(100% - 44px))!important;max-width:none!important;margin-left:auto!important;margin-right:auto!important}.site-main .wp-block-group.container>*{max-width:none!important}.site-main .split,.site-main .cards,.site-main .flow,.site-main .post-grid,.site-main .contact-grid,.site-main .article-feature,.site-main .service-row{width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important}.site-main .split{display:grid!important;grid-template-columns:1fr 1fr!important;gap:86px!important;align-items:start}.site-main .cards{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:24px!important}.site-main .service-row{display:grid!important;grid-template-columns:.8fr 1.2fr!important;gap:70px!important;align-items:start}.site-main .flow{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important}.site-main .contact-grid{display:grid!important;grid-template-columns:.8fr 1.2fr!important;gap:70px!important}.site-main .post-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:24px!important}.site-main .article-feature{display:grid!important;grid-template-columns:.8fr 1.2fr!important;gap:48px!important}.site-main .quote-band .container>*{margin-left:auto!important;margin-right:auto!important}.site-main .flow p{font-family:var(--serif);font-size:34px;line-height:1.2;margin:0}.site-main .flow p::first-line{font-family:var(--sans);font-size:15px;letter-spacing:.08em}.site-header .custom-logo-link,.site-footer .custom-logo-link,.bkc-brand{flex:0 0 auto;transform:none!important}.site-header .custom-logo-link img,.site-footer .custom-logo-link img,.bkc-brand img{object-position:center center!important;transform:none!important}@media(max-width:860px){.site-main .split,.site-main .cards,.site-main .flow,.site-main .post-grid,.site-main .contact-grid,.site-main .article-feature,.site-main .service-row{grid-template-columns:1fr!important;gap:28px!important}.site-main .flow div{border-right:0;border-bottom:1px solid var(--line)}}

/* Make the backend editor usable without pretending to be pixel-perfect frontend preview. */
.editor-styles-wrapper .wp-block-group.container{width:min(var(--max),calc(100% - 44px))!important;max-width:none!important;margin-left:auto!important;margin-right:auto!important}.editor-styles-wrapper .wp-block-group.container>*{max-width:none!important}.editor-styles-wrapper .split,.editor-styles-wrapper .cards,.editor-styles-wrapper .flow,.editor-styles-wrapper .post-grid,.editor-styles-wrapper .contact-grid,.editor-styles-wrapper .article-feature,.editor-styles-wrapper .service-row{width:100%!important;max-width:none!important}.editor-styles-wrapper .service-row{display:grid!important;grid-template-columns:.8fr 1.2fr!important;gap:70px!important}.editor-styles-wrapper .flow{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important}.editor-styles-wrapper .split{display:grid!important;grid-template-columns:1fr 1fr!important;gap:86px!important}.editor-styles-wrapper .cards{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:24px!important}

/* v1.1.0 front-end Gutenberg layout repair: these selectors target the actual block markup generated by BKC Core, while remaining compatible with the older raw HTML imports. */
.site-main > .wp-block-group,
.entry-content > .wp-block-group,
.site-main > section,
.entry-content > section {
  clear: both;
}

.site-main .container,
.entry-content .container,
.wp-block-group.container {
  width: min(var(--max), calc(100% - 44px)) !important;
  max-width: none !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

.site-main .container > *,
.entry-content .container > *,
.wp-block-group.container > * {
  max-width: none;
}

.site-main .split,
.entry-content .split,
.wp-block-columns.split {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  gap: 86px !important;
  align-items: start !important;
}

.site-main .cards,
.entry-content .cards,
.wp-block-columns.cards {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 24px !important;
  align-items: stretch !important;
}

.site-main .cards > .wp-block-column,
.site-main .cards > .wp-block-group,
.entry-content .cards > .wp-block-column,
.entry-content .cards > .wp-block-group {
  min-width: 0 !important;
}

.site-main .contact-grid,
.entry-content .contact-grid,
.wp-block-columns.contact-grid {
  display: grid !important;
  grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr) !important;
  gap: 70px !important;
  align-items: start !important;
}

.site-main .service-row,
.entry-content .service-row,
.wp-block-columns.service-row {
  display: grid !important;
  grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr) !important;
  gap: 70px !important;
  align-items: start !important;
  padding: 64px 0;
  border-top: 1px solid var(--line);
}

.site-main .flow,
.entry-content .flow,
.wp-block-columns.flow {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 0 !important;
  border-top: 1px solid var(--line);
  border-bottom: 1px solid var(--line);
}

.site-main .flow > .wp-block-column,
.entry-content .flow > .wp-block-column,
.site-main .flow > div,
.entry-content .flow > div {
  padding: 34px 24px;
  border-right: 1px solid var(--line);
}
.site-main .flow > :last-child,
.entry-content .flow > :last-child { border-right: 0; }
.site-main .flow p,
.entry-content .flow p { margin: 0; }

.site-main .article-feature,
.entry-content .article-feature,
.wp-block-columns.article-feature {
  display: grid !important;
  grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr) !important;
  gap: 48px !important;
}

.site-main .post-grid,
.entry-content .post-grid {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 24px !important;
}

/* Logo should render at its natural image dimensions, not inside a forced cropped box. */
.site-header .custom-logo-link,
.site-footer .custom-logo-link,
.bkc-brand {
  width: auto !important;
  height: auto !important;
  background: transparent !important;
  overflow: visible !important;
}
.site-header .custom-logo-link img,
.site-footer .custom-logo-link img,
.bkc-brand img {
  width: auto !important;
  max-width: none !important;
  max-height: none !important;
  height: auto !important;
  display: block !important;
}
.site-header .custom-logo-link img,
.site-header .bkc-brand img { height: 46px !important; }
.site-footer .custom-logo-link img,
.site-footer .bkc-brand img { height: 46px !important; }

@media (max-width: 860px) {
  .site-main .split,
  .entry-content .split,
  .wp-block-columns.split,
  .site-main .cards,
  .entry-content .cards,
  .wp-block-columns.cards,
  .site-main .contact-grid,
  .entry-content .contact-grid,
  .wp-block-columns.contact-grid,
  .site-main .service-row,
  .entry-content .service-row,
  .wp-block-columns.service-row,
  .site-main .flow,
  .entry-content .flow,
  .wp-block-columns.flow,
  .site-main .article-feature,
  .entry-content .article-feature,
  .wp-block-columns.article-feature,
  .site-main .post-grid,
  .entry-content .post-grid {
    grid-template-columns: 1fr !important;
    gap: 28px !important;
  }
  .site-main .flow > .wp-block-column,
  .entry-content .flow > .wp-block-column,
  .site-main .flow > div,
  .entry-content .flow > div {
    border-right: 0;
    border-bottom: 1px solid var(--line);
  }
  .site-main .flow > :last-child,
  .entry-content .flow > :last-child { border-bottom: 0; }
}


/* v1.1.1 final layout polish for block-editable pages. */
.site-main .quote-band .wp-block-buttons,
.entry-content .quote-band .wp-block-buttons {
  display: flex !important;
  justify-content: center !important;
}
.site-main .quote-band .wp-block-button,
.entry-content .quote-band .wp-block-button {
  margin-left: auto !important;
  margin-right: auto !important;
}
.site-main .quote-band .wp-block-button__link,
.entry-content .quote-band .wp-block-button__link {
  margin-left: auto !important;
  margin-right: auto !important;
}
/* Keep CTA buttons visually centred under centred editorial headings, but preserve hero buttons left-aligned. */
.site-main .quote-band .container {
  text-align: center !important;
}
/* Insights page hero imported by BKC Core now uses normal page-hero typography. */
body.page-template-page-insights .page-hero h1,
body.page-id-insights .page-hero h1 {
  max-width: 1020px;
}


/* v1.1.2 homepage block layout repair. These are deliberately scoped to the Home page and the BKC importer classes so editable Gutenberg blocks keep the approved desktop layout. */
body.home .site-main .home-strategy .home-strategy-grid,
body.home .site-main .home-strategy .wp-block-columns.split,
body.front-page .site-main .home-strategy .home-strategy-grid,
body.front-page .site-main .home-strategy .wp-block-columns.split {
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
  gap: 86px !important;
  align-items: start !important;
}
body.home .site-main .home-services .home-service-cards,
body.home .site-main .home-services .wp-block-columns.cards,
body.front-page .site-main .home-services .home-service-cards,
body.front-page .site-main .home-services .wp-block-columns.cards {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 24px !important;
  align-items: stretch !important;
}
body.home .site-main .home-services .wp-block-column.card,
body.front-page .site-main .home-services .wp-block-column.card {
  width: auto !important;
  max-width: none !important;
}
body.home .site-main .home-services .wp-block-column.card + .wp-block-column.card,
body.front-page .site-main .home-services .wp-block-column.card + .wp-block-column.card {
  margin-left: 0 !important;
}
body.home .site-main .wp-block-buttons,
body.front-page .site-main .wp-block-buttons {
  display: flex;
}
body.home .site-main .hero .wp-block-buttons,
body.front-page .site-main .hero .wp-block-buttons {
  justify-content: flex-start !important;
}
@media (max-width: 700px) {
  body.home .site-main .home-strategy .home-strategy-grid,
  body.home .site-main .home-strategy .wp-block-columns.split,
  body.front-page .site-main .home-strategy .home-strategy-grid,
  body.front-page .site-main .home-strategy .wp-block-columns.split,
  body.home .site-main .home-services .home-service-cards,
  body.home .site-main .home-services .wp-block-columns.cards,
  body.front-page .site-main .home-services .home-service-cards,
  body.front-page .site-main .home-services .wp-block-columns.cards {
    grid-template-columns: 1fr !important;
    gap: 28px !important;
  }
}


/* v1.1.3 homepage editorial balance restore.
   Keeps the block-editable Gutenberg structure, but restores the original
   approved composition for the first ivory strategy section. */
body.home .site-main .home-strategy .home-strategy-grid,
body.front-page .site-main .home-strategy .home-strategy-grid,
body.home .site-main .home-strategy .wp-block-columns.split,
body.front-page .site-main .home-strategy .wp-block-columns.split {
  grid-template-columns: minmax(0, 1.18fr) minmax(0, .92fr) !important;
  gap: 78px !important;
  align-items: center !important;
}
body.home .site-main .home-strategy .section-title,
body.front-page .site-main .home-strategy .section-title {
  max-width: 600px !important;
  font-size: clamp(52px, 5.2vw, 78px) !important;
  line-height: .98 !important;
}
body.home .site-main .home-strategy .wp-block-column:last-child,
body.front-page .site-main .home-strategy .wp-block-column:last-child {
  max-width: 475px !important;
  justify-self: end !important;
}
body.home .site-main .home-strategy .wp-block-column:last-child p,
body.front-page .site-main .home-strategy .wp-block-column:last-child p {
  max-width: 100% !important;
}
body.home .site-main .home-strategy .lead,
body.front-page .site-main .home-strategy .lead {
  font-size: 20px !important;
  line-height: 1.58 !important;
}
@media (max-width: 860px) {
  body.home .site-main .home-strategy .home-strategy-grid,
  body.front-page .site-main .home-strategy .home-strategy-grid,
  body.home .site-main .home-strategy .wp-block-columns.split,
  body.front-page .site-main .home-strategy .wp-block-columns.split {
    grid-template-columns: 1fr !important;
    gap: 32px !important;
    align-items: start !important;
  }
  body.home .site-main .home-strategy .wp-block-column:last-child,
  body.front-page .site-main .home-strategy .wp-block-column:last-child {
    max-width: none !important;
    justify-self: stretch !important;
  }
}


/* v1.1.4 homepage strategy section final targeting.
   The homepage is now editable Gutenberg content, so target the imported section
   class directly rather than relying on WordPress body classes. */
.site-main .home-strategy {
  padding: 92px 0 96px !important;
}
.site-main .home-strategy > .wp-block-group__inner-container,
.site-main .home-strategy .container {
  width: min(var(--max), calc(100% - 44px)) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
.site-main .home-strategy .home-strategy-grid,
.site-main .home-strategy .wp-block-columns.split,
.site-main .home-strategy .wp-block-columns {
  display: grid !important;
  grid-template-columns: minmax(0, 0.95fr) minmax(0, 1fr) !important;
  column-gap: 96px !important;
  row-gap: 32px !important;
  align-items: center !important;
}
.site-main .home-strategy .wp-block-column:first-child {
  max-width: 460px !important;
}
.site-main .home-strategy .section-title {
  max-width: 460px !important;
  font-size: clamp(54px, 5vw, 76px) !important;
  line-height: .97 !important;
  letter-spacing: -.04em !important;
}
.site-main .home-strategy .wp-block-column:last-child {
  max-width: 520px !important;
  justify-self: start !important;
}
.site-main .home-strategy .wp-block-column:last-child p {
  max-width: 100% !important;
}
.site-main .home-strategy .lead {
  font-size: 19px !important;
  line-height: 1.62 !important;
}
@media (max-width: 860px) {
  .site-main .home-strategy {
    padding: 76px 0 !important;
  }
  .site-main .home-strategy .home-strategy-grid,
  .site-main .home-strategy .wp-block-columns.split,
  .site-main .home-strategy .wp-block-columns {
    grid-template-columns: 1fr !important;
    column-gap: 0 !important;
  }
  .site-main .home-strategy .wp-block-column:first-child,
  .site-main .home-strategy .wp-block-column:last-child {
    max-width: none !important;
    justify-self: stretch !important;
  }
}


/* v1.1.6 homepage hero composition restore.
   The editable Gutenberg hero was being constrained by block layout defaults on
   the homepage, which caused the approved two-line hero to wrap into three
   lines and sit too close to the left edge. Target the actual imported hero
   group and its inner container directly. */
.site-main .hero {
  padding-top: 150px !important;
  padding-bottom: 90px !important;
}
.site-main .hero > .wp-block-group.container,
.site-main .hero > .container,
.site-main .hero .wp-block-group.container,
.site-main .hero .container {
  width: min(var(--max), calc(100% - 96px)) !important;
  max-width: var(--max) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
.site-main .hero > .wp-block-group.container > *,
.site-main .hero > .container > *,
.site-main .hero .wp-block-group.container > *,
.site-main .hero .container > * {
  margin-left: 0 !important;
  margin-right: 0 !important;
}
.site-main .hero h1,
.site-main .hero .wp-block-heading {
  max-width: 860px !important;
  width: 860px !important;
  font-size: clamp(78px, 8.4vw, 136px) !important;
  line-height: .9 !important;
  letter-spacing: -.045em !important;
}
.site-main .hero p:not(.eyebrow) {
  max-width: 650px !important;
}
@media (max-width: 860px) {
  .site-main .hero > .wp-block-group.container,
  .site-main .hero > .container,
  .site-main .hero .wp-block-group.container,
  .site-main .hero .container {
    width: min(var(--max), calc(100% - 44px)) !important;
  }
  .site-main .hero h1,
  .site-main .hero .wp-block-heading {
    width: auto !important;
    max-width: 100% !important;
    font-size: 64px !important;
  }
}


/* v1.1.7 header/footer simplification requested by client. */
.site-header{
  position:fixed !important;
  top:0 !important;
  left:0 !important;
  right:0 !important;
  z-index:1000 !important;
}
.admin-bar .site-header{top:32px !important;}
.header-inner{align-items:center !important;}
.primary-nav-contact-only ul{display:flex !important;gap:0 !important;}
.primary-nav-contact-only li:not(:last-child){display:none !important;}
.site-header .custom-logo-link,
.site-header .bkc-brand{
  width:246px !important;
  height:156px !important;
  background:transparent !important;
  overflow:visible !important;
  justify-content:flex-start !important;
}
.site-header .custom-logo-link img,
.site-header .bkc-brand img{
  height:138px !important;
  width:auto !important;
  max-width:none !important;
  max-height:none !important;
  object-fit:contain !important;
}
.site-header{padding:22px 0 !important;}
.site-header.is-scrolled{padding:14px 0 !important;}
.site-header.is-scrolled .custom-logo-link,
.site-header.is-scrolled .bkc-brand{width:180px !important;height:96px !important;}
.site-header.is-scrolled .custom-logo-link img,
.site-header.is-scrolled .bkc-brand img{height:86px !important;}
.site-footer-simple{
  background:var(--navy-dark) !important;
  color:#fff !important;
  padding:96px 0 80px !important;
  text-align:left !important;
}
.footer-simple-inner{display:block !important;}
.site-footer-simple .custom-logo-link,
.site-footer-simple .bkc-brand{
  display:inline-flex !important;
  width:auto !important;
  height:auto !important;
  background:transparent !important;
  overflow:visible !important;
  margin:0 0 34px 0 !important;
  justify-content:flex-start !important;
}
.site-footer-simple .custom-logo-link img,
.site-footer-simple .bkc-brand img{
  height:220px !important;
  width:auto !important;
  max-width:none !important;
  max-height:none !important;
  object-fit:contain !important;
}
.footer-simple-copyright{
  margin:0 !important;
  color:rgba(255,255,255,.62) !important;
  font-size:14px !important;
  letter-spacing:.02em !important;
}
@media(max-width:860px){
  .admin-bar .site-header{top:46px !important;}
  .site-header .custom-logo-link,
  .site-header .bkc-brand{width:150px !important;height:88px !important;}
  .site-header .custom-logo-link img,
  .site-header .bkc-brand img{height:78px !important;}
  .site-header.is-scrolled .custom-logo-link,
  .site-header.is-scrolled .bkc-brand{width:128px !important;height:72px !important;}
  .site-header.is-scrolled .custom-logo-link img,
  .site-header.is-scrolled .bkc-brand img{height:62px !important;}
  .primary-nav-contact-only a{font-size:12px !important;}
  .site-footer-simple .custom-logo-link img,
  .site-footer-simple .bkc-brand img{height:150px !important;}
}


/* v1.1.8 footer alignment update */
.site-footer-simple,
.site-footer.site-footer-simple{
  background:var(--navy) !important;
  color:#fff !important;
  padding:76px 0 64px !important;
  text-align:center !important;
}
.site-footer-simple .footer-simple-inner{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
}
.site-footer-simple .custom-logo-link,
.site-footer-simple .bkc-brand{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:auto !important;
  height:auto !important;
  background:transparent !important;
  overflow:visible !important;
  margin:0 auto 24px auto !important;
}
.site-footer-simple .custom-logo-link img,
.site-footer-simple .bkc-brand img{
  height:110px !important;
  width:auto !important;
  max-width:none !important;
  max-height:none !important;
  object-fit:contain !important;
}
.site-footer-simple .footer-simple-copyright{
  margin:0 auto !important;
  color:rgba(255,255,255,.68) !important;
  text-align:center !important;
  font-size:14px !important;
  letter-spacing:.02em !important;
}
@media(max-width:860px){
  .site-footer-simple .custom-logo-link img,
  .site-footer-simple .bkc-brand img{height:82px !important;}
}

/* v1.1.9 contact popups */
.bkc-modal{
  position:fixed;
  inset:0;
  z-index:9999;
  display:none;
  align-items:center;
  justify-content:center;
  padding:28px;
}
.bkc-modal.is-open{display:flex;}
.bkc-modal-overlay{
  position:absolute;
  inset:0;
  background:rgba(7,20,31,.78);
  backdrop-filter:blur(3px);
}
.bkc-modal-panel{
  position:relative;
  width:min(680px,100%);
  max-height:calc(100vh - 56px);
  overflow:auto;
  background:var(--paper);
  color:var(--charcoal);
  padding:54px;
  box-shadow:0 28px 90px rgba(0,0,0,.38);
  border-top:4px solid var(--gold);
}
.bkc-modal-panel h2{
  margin:0 0 16px;
  font-family:var(--serif);
  font-weight:300;
  font-size:clamp(42px,5vw,72px);
  line-height:.95;
  color:var(--navy);
}
.bkc-modal-panel p{margin:0 0 26px;}
.bkc-modal-close{
  position:absolute;
  top:18px;
  right:22px;
  border:0;
  background:transparent;
  color:var(--navy);
  font-size:38px;
  line-height:1;
  cursor:pointer;
}
.bkc-contact-form{display:grid;gap:16px;}
.bkc-contact-form label{
  display:grid;
  gap:7px;
  font-size:12px;
  font-weight:600;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:var(--muted);
}
.bkc-contact-form input,
.bkc-contact-form textarea{
  width:100%;
  border:1px solid rgba(16,37,56,.18);
  background:#fff;
  color:var(--charcoal);
  padding:14px 15px;
  font:inherit;
  letter-spacing:normal;
  text-transform:none;
}
.bkc-contact-form input:focus,
.bkc-contact-form textarea:focus{
  outline:1px solid var(--gold);
  border-color:var(--gold);
}
.bkc-contact-form .bkc-button{margin-top:8px;cursor:pointer;}
.bkc-hidden-field{display:none!important;}
.bkc-form-note{
  margin:0 0 24px;
  padding:14px 16px;
  border-left:3px solid var(--gold);
  background:#fff;
  color:var(--navy);
}
body.bkc-modal-open{overflow:hidden;}
@media(max-width:640px){
  .bkc-modal{padding:16px;align-items:flex-start;}
  .bkc-modal-panel{padding:38px 24px 28px;max-height:calc(100vh - 32px);}
}


/* v1.2.0 header/hero viewport repair.
   Keep the large logo header sticky without overlaying the first hero eyebrow.
   The header is now in normal document flow, so the hero begins underneath it
   and the first screen no longer has the extra empty gap caused by fixed overlay positioning. */
.site-header{
  position:sticky !important;
  top:0 !important;
  left:auto !important;
  right:auto !important;
  width:100% !important;
}
.admin-bar .site-header{top:32px !important;}
.site-main>.wp-block-group.hero,
.site-main .hero{
  min-height:calc(100vh - 184px) !important;
  padding-top:72px !important;
  padding-bottom:72px !important;
  align-items:center !important;
}
.site-main .hero .eyebrow{
  margin-top:0 !important;
}
@media(max-width:860px){
  .admin-bar .site-header{top:46px !important;}
  .site-main>.wp-block-group.hero,
  .site-main .hero{
    min-height:calc(100vh - 120px) !important;
    padding-top:54px !important;
    padding-bottom:58px !important;
  }
}


/* v1.2.5 header colour/mobile contact fix */
.site-header,
.site-header.is-scrolled,
body .site-header,
body .site-header.is-scrolled{
  background:#172c3a !important;
  background-image:none !important;
  backdrop-filter:none !important;
  -webkit-backdrop-filter:none !important;
}
.site-header::before,
.site-header::after{
  background:none !important;
  background-image:none !important;
}
@media(max-width:860px){
  .site-header .primary-nav-contact-only{
    display:block !important;
    position:static !important;
    left:auto !important;
    right:auto !important;
    top:auto !important;
    max-height:none !important;
    overflow:visible !important;
    padding:0 !important;
    background:transparent !important;
    transition:none !important;
  }
  .site-header .primary-nav-contact-only ul{
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:0 !important;
    margin:0 !important;
    padding:0 !important;
  }
  .site-header .primary-nav-contact-only li{
    display:block !important;
    margin:0 !important;
  }
  .site-header .primary-nav-contact-only a{
    display:inline-flex !important;
    align-items:center !important;
    color:#fff !important;
    opacity:.95 !important;
    white-space:nowrap !important;
  }
}

@media (min-width:861px) and (max-width:1100px){
  .site-main .cards,.entry-content .cards,.wp-block-columns.cards,.editor-styles-wrapper .cards{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}


/* v1.2.7: homepage four-service row. Keep all four service cards inline on tablet/desktop, while allowing a true mobile stack. */
.site-main .home-services .wp-block-columns.cards,
.site-main .home-services .cards {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 18px !important;
  align-items: stretch !important;
}
.site-main .home-services .wp-block-columns.cards > .wp-block-column,
.site-main .home-services .cards > .wp-block-column {
  min-width: 0 !important;
  width: auto !important;
  margin-left: 0 !important;
}
@media (max-width: 599px) {
  .site-main .home-services .wp-block-columns.cards,
  .site-main .home-services .cards {
    grid-template-columns: 1fr !important;
    gap: 18px !important;
  }
}


/* v1.2.8: repair the actual homepage services DOM currently rendered by WordPress.
   The saved page has four .wp-block-column.card elements directly inside the
   inner container (the core/columns wrapper is absent), so lay out those exact
   siblings as a four-column grid while keeping the eyebrow/title full width. */
.site-main .home-services > .wp-block-group__inner-container > .wp-block-group.container > .wp-block-group__inner-container {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  column-gap: 18px !important;
  row-gap: 0 !important;
  align-items: stretch !important;
}
.site-main .home-services > .wp-block-group__inner-container > .wp-block-group.container > .wp-block-group__inner-container > .eyebrow,
.site-main .home-services > .wp-block-group__inner-container > .wp-block-group.container > .wp-block-group__inner-container > .section-title {
  grid-column: 1 / -1 !important;
}
.site-main .home-services > .wp-block-group__inner-container > .wp-block-group.container > .wp-block-group__inner-container > .section-title {
  margin-bottom: 28px !important;
}
.site-main .home-services > .wp-block-group__inner-container > .wp-block-group.container > .wp-block-group__inner-container > .wp-block-column.card {
  display: block !important;
  grid-column: auto !important;
  min-width: 0 !important;
  width: auto !important;
  max-width: none !important;
  margin: 0 !important;
}
@media (max-width: 599px) {
  .site-main .home-services > .wp-block-group__inner-container > .wp-block-group.container > .wp-block-group__inner-container {
    grid-template-columns: 1fr !important;
    row-gap: 18px !important;
  }
  .site-main .home-services > .wp-block-group__inner-container > .wp-block-group.container > .wp-block-group__inner-container > .eyebrow,
  .site-main .home-services > .wp-block-group__inner-container > .wp-block-group.container > .wp-block-group__inner-container > .section-title {
    grid-column: 1 !important;
  }
}


/* v1.2.9: lock the four homepage service cards into one desktop row.
   The saved Gutenberg markup contains four direct .wp-block-column.card siblings. */
@media (min-width: 600px) {
  .site-main .home-services > .wp-block-group__inner-container > .wp-block-group.container > .wp-block-group__inner-container {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 12px !important;
    align-items: stretch !important;
  }
  .site-main .home-services > .wp-block-group__inner-container > .wp-block-group.container > .wp-block-group__inner-container > .eyebrow,
  .site-main .home-services > .wp-block-group__inner-container > .wp-block-group.container > .wp-block-group__inner-container > .section-title {
    grid-column: 1 / -1 !important;
  }
  .site-main .home-services > .wp-block-group__inner-container > .wp-block-group.container > .wp-block-group__inner-container > .wp-block-column.card {
    min-width: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 26px 22px !important;
    box-sizing: border-box !important;
  }
  .site-main .home-services > .wp-block-group__inner-container > .wp-block-group.container > .wp-block-group__inner-container > .wp-block-column.card:nth-of-type(1) { grid-column: 1 !important; grid-row: 3 !important; }
  .site-main .home-services > .wp-block-group__inner-container > .wp-block-group.container > .wp-block-group__inner-container > .wp-block-column.card:nth-of-type(2) { grid-column: 2 !important; grid-row: 3 !important; }
  .site-main .home-services > .wp-block-group__inner-container > .wp-block-group.container > .wp-block-group__inner-container > .wp-block-column.card:nth-of-type(3) { grid-column: 3 !important; grid-row: 3 !important; }
  .site-main .home-services > .wp-block-group__inner-container > .wp-block-group.container > .wp-block-group__inner-container > .wp-block-column.card:nth-of-type(4) { grid-column: 4 !important; grid-row: 3 !important; }
  .site-main .home-services .wp-block-column.card h3 {
    font-size: clamp(24px, 2vw, 30px) !important;
  }
}

/* v1.3.0: robust homepage services layout for the current saved Gutenberg DOM.
   The four service cards are direct siblings of the eyebrow/title, so use flex
   rather than grid placement rules. This avoids each card being squeezed into
   a quarter-width track on narrower desktop/tablet viewports. */
.site-main .home-services > .wp-block-group__inner-container > .wp-block-group.container > .wp-block-group__inner-container {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: stretch !important;
  gap: 14px !important;
}
.site-main .home-services > .wp-block-group__inner-container > .wp-block-group.container > .wp-block-group__inner-container > .eyebrow,
.site-main .home-services > .wp-block-group__inner-container > .wp-block-group.container > .wp-block-group__inner-container > .section-title {
  flex: 0 0 100% !important;
  width: 100% !important;
  max-width: none !important;
}
.site-main .home-services > .wp-block-group__inner-container > .wp-block-group.container > .wp-block-group__inner-container > .section-title {
  margin-bottom: 14px !important;
}
.site-main .home-services > .wp-block-group__inner-container > .wp-block-group.container > .wp-block-group__inner-container > .wp-block-column.card {
  display: block !important;
  flex: 1 1 calc((100% - 42px) / 4) !important;
  width: auto !important;
  min-width: 0 !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 24px 20px !important;
  box-sizing: border-box !important;
}
.site-main .home-services .wp-block-column.card h3 {
  font-size: clamp(22px, 1.7vw, 28px) !important;
}
@media (max-width: 680px) {
  .site-main .home-services > .wp-block-group__inner-container > .wp-block-group.container > .wp-block-group__inner-container > .wp-block-column.card {
    flex: 0 0 100% !important;
    width: 100% !important;
  }
}

/* v1.3.1 keep header logo large and identical before/after sticky scroll */
.site-header .custom-logo-link,
.site-header .bkc-brand,
.site-header.is-scrolled .custom-logo-link,
.site-header.is-scrolled .bkc-brand{
  width:285px !important;
  height:170px !important;
}
.site-header .custom-logo-link img,
.site-header .bkc-brand img,
.site-header.is-scrolled .custom-logo-link img,
.site-header.is-scrolled .bkc-brand img{
  height:155px !important;
  width:auto !important;
  max-width:none !important;
  max-height:none !important;
}
.site-header,
.site-header.is-scrolled{
  padding:18px 0 !important;
}
@media(max-width:860px){
  .site-header .custom-logo-link,
  .site-header .bkc-brand,
  .site-header.is-scrolled .custom-logo-link,
  .site-header.is-scrolled .bkc-brand{
    width:170px !important;
    height:100px !important;
  }
  .site-header .custom-logo-link img,
  .site-header .bkc-brand img,
  .site-header.is-scrolled .custom-logo-link img,
  .site-header.is-scrolled .bkc-brand img{
    height:90px !important;
  }
  .site-header,
  .site-header.is-scrolled{
    padding:12px 0 !important;
  }
}


/* v1.3.2: client-requested service card colour only */
.site-main .home-services .wp-block-column.card,
.entry-content .home-services .wp-block-column.card {
  background:#172c3a !important;
}

/* v1.3.3: restore service card detailing while retaining requested card colour */
.site-main .home-services .wp-block-column.card,
.entry-content .home-services .wp-block-column.card {
  background:#172c3a !important;
  border-top:2px solid var(--gold) !important;
  border-radius:6px !important;
}


/* v1.3.4: restore the homepage pre-footer meeting CTA, button only */
.bkc-footer-meeting-cta{
  background:var(--ivory);
  padding:96px 0;
  text-align:center;
}
.bkc-footer-meeting-cta .bkc-button-outline{
  margin-top:0;
  color:var(--gold);
}
.bkc-footer-meeting-cta .bkc-button-outline:hover{
  background:var(--gold);
  color:var(--navy);
}
@media(max-width:860px){
  .bkc-footer-meeting-cta{padding:72px 0;}
}


/* v1.3.5: final homepage card detail + pre-footer CTA assurance */
.site-main .home-services .wp-block-column.card,
.entry-content .home-services .wp-block-column.card {
  background:#172c3a !important;
  border-top:2px solid #b79b69 !important;
  border-radius:8px !important;
  overflow:hidden !important;
}
.bkc-footer-meeting-cta{
  display:block !important;
  background:#f5f2ec !important;
  padding:72px 0 !important;
  text-align:center !important;
}
.bkc-footer-meeting-cta .container{
  display:flex !important;
  justify-content:center !important;
}
.bkc-footer-meeting-cta .bkc-button-outline{
  margin:0 !important;
}
