/* Canonical editorial surface: blog index, taxonomies and single posts. */
html body.bu-public-unified .bu-blog,
html body.bu-public-unified .bu-article-pro {
  --blog-ink: #082c43;
  --blog-muted: #547184;
  --blog-line: rgba(139, 190, 213, .48);
  --blog-accent: #ef7652;
  --blog-cyan: #13b8c0;
  width: 100%;
  min-width: 0;
  background:
    radial-gradient(circle at 82% 4%, rgba(60, 204, 221, .16), transparent 28rem),
    linear-gradient(180deg, #f5fbfd 0%, #eef7fa 46%, #f8fbfc 100%);
  color: var(--blog-ink);
}

html body.bu-public-unified .bu-blog .bu-pro-nav,
html body.bu-public-unified .bu-article-pro .bu-pro-nav {
  top: var(--bu-header-h, 0px);
}

/* Blog landing */
html body.bu-public-unified .bu-blog .bu-pro-hero {
  min-height: clamp(390px, 48vw, 610px);
  margin: 0;
}
html body.bu-public-unified .bu-blog .bu-pro-hero-photo {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
html body.bu-public-unified .bu-blog .bu-pro-hero-wash {
  position: absolute;
  inset: 0;
  background: linear-gradient(100deg, rgba(2, 19, 34, .96), rgba(5, 48, 65, .8) 54%, rgba(239, 118, 82, .18));
}
html body.bu-public-unified .bu-blog .bu-pro-hero-inner {
  position: relative;
  z-index: 2;
  display: grid;
  align-content: center;
  width: min(1160px, calc(100% - 48px));
  min-height: inherit;
  margin: 0 auto;
  padding: clamp(42px, 6vw, 88px);
}
html body.bu-public-unified .bu-blog .bu-pro-hero h1 {
  max-width: 12ch;
  margin: 10px 0 18px;
  color: #fff;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(44px, 6.4vw, 86px);
  font-weight: 700;
  line-height: .98;
  letter-spacing: -.055em;
  text-wrap: balance;
}
html body.bu-public-unified .bu-blog .bu-pro-lead {
  max-width: 62ch;
  margin: 0;
  color: #d9edf4;
  font-size: clamp(16px, 1.6vw, 21px);
  line-height: 1.55;
}
html body.bu-public-unified .bu-blog .bu-blog-search {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  width: min(650px, 100%);
  max-width: none;
  margin-top: 26px;
  padding: 7px;
  border: 1px solid rgba(177, 231, 239, .34);
  border-radius: 18px;
  background: rgba(3, 29, 47, .66);
  box-shadow: 0 20px 50px rgba(0, 8, 20, .28), inset 0 1px rgba(255,255,255,.1);
  backdrop-filter: blur(14px);
}
html body.bu-public-unified .bu-blog .bu-blog-search input[type="search"] {
  min-width: 0;
  min-height: 50px;
  padding: 0 16px;
  border: 0;
  border-radius: 12px;
  outline: 0;
  background: rgba(255,255,255,.95);
  color: var(--blog-ink);
  font: inherit;
}
html body.bu-public-unified .bu-blog .bu-blog-search .bu-pro-btn {
  min-height: 50px;
  border-radius: 12px;
}
html body.bu-public-unified .bu-blog .bu-pro-story {
  width: min(1160px, calc(100% - 40px));
  margin: -27px auto 30px;
  padding: 22px 28px;
  border: 1px solid rgba(151, 206, 226, .58);
  border-radius: 22px;
  background: rgba(255,255,255,.92);
  box-shadow: 0 22px 52px rgba(9, 56, 82, .11);
  backdrop-filter: blur(15px);
}
html body.bu-public-unified .bu-blog .bu-pro-story p {
  max-width: 78ch;
  margin: 0;
  color: var(--blog-muted);
  line-height: 1.65;
}
html body.bu-public-unified .bu-blog :is(.bu-blog-hub,.bu-blog-chips,.bu-blog-feature,.bu-blog-grid-pro,.bu-blog-pager,.bu-blog-empty) {
  width: min(1160px, calc(100% - 40px));
  max-width: none;
  margin-left: auto;
  margin-right: auto;
  padding-left: 0;
  padding-right: 0;
}
html body.bu-public-unified .bu-blog .bu-blog-chips {
  gap: 9px;
  margin-top: 0;
  margin-bottom: 18px;
  padding: 4px 0 2px;
  overflow-x: auto;
  flex-wrap: nowrap;
  scrollbar-width: thin;
}
html body.bu-public-unified .bu-blog .bu-blog-chip {
  flex: 0 0 auto;
  min-height: 40px;
  padding: 0 15px;
  border-color: var(--blog-line);
  background: rgba(255,255,255,.78);
  color: #315569;
  box-shadow: 0 8px 18px rgba(8, 56, 82, .06);
}
html body.bu-public-unified .bu-blog .bu-blog-chip:is(.is-on,:hover) {
  border-color: var(--blog-cyan);
  background: linear-gradient(135deg, #0aa68f, #149ed5);
  color: #fff;
}
html body.bu-public-unified .bu-blog .bu-blog-feature {
  display: grid;
  grid-template-columns: minmax(0, 1.12fr) minmax(320px, .88fr);
  gap: 0;
  margin-top: 32px;
  margin-bottom: 28px;
  padding: 0;
  overflow: hidden;
  border: 1px solid var(--blog-line);
  border-radius: 30px;
  background: #fff;
  box-shadow: 0 30px 70px rgba(7, 50, 76, .14);
}
html body.bu-public-unified .bu-blog .bu-blog-feature-media {
  min-height: 390px;
  overflow: hidden;
  background: linear-gradient(145deg, #0b4664, #10263c);
}
html body.bu-public-unified .bu-blog .bu-blog-feature-media img,
html body.bu-public-unified .bu-blog .bu-blog-feature-media .bu-blog-card-media-empty {
  width: 100%;
  height: 100%;
  min-height: 390px;
  object-fit: cover;
  transition: transform .45s ease;
}
html body.bu-public-unified .bu-blog .bu-blog-feature:hover img { transform: scale(1.035); }
html body.bu-public-unified .bu-blog .bu-blog-feature-body {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: clamp(28px, 4vw, 54px);
}
html body.bu-public-unified .bu-blog .bu-blog-feature-body h2 {
  margin: 8px 0 15px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(30px, 3.3vw, 48px);
  line-height: 1.05;
  letter-spacing: -.04em;
}
html body.bu-public-unified .bu-blog .bu-blog-feature-body h2 a { color: var(--blog-ink); text-decoration: none; }
html body.bu-public-unified .bu-blog .bu-blog-feature-body > p:not(.bu-meta) { color: var(--blog-muted); line-height: 1.65; }
html body.bu-public-unified .bu-blog .bu-blog-feature-body .landing-btn-primary { align-self: flex-start; margin-top: 10px; }
html body.bu-public-unified .bu-blog .bu-meta {
  color: #688397;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .02em;
}
html body.bu-public-unified .bu-blog .bu-blog-read { margin-left: 8px; color: var(--blog-accent); }
html body.bu-public-unified .bu-blog .bu-blog-grid-pro {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 22px;
  margin-top: 0;
  margin-bottom: 52px;
}
html body.bu-public-unified .bu-blog .bu-blog-card {
  min-width: 0;
  padding: 0;
  overflow: hidden;
  border: 1px solid var(--blog-line);
  border-radius: 23px;
  background: rgba(255,255,255,.94);
  color: var(--blog-ink);
  box-shadow: 0 18px 44px rgba(7, 50, 76, .09);
  transition: transform .25s ease, box-shadow .25s ease;
}
html body.bu-public-unified .bu-blog .bu-blog-card:hover {
  transform: translateY(-6px);
  box-shadow: 0 26px 58px rgba(7, 50, 76, .15);
}
html body.bu-public-unified .bu-blog .bu-blog-card-media {
  display: block;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: linear-gradient(145deg, #0d5570, #071c30);
}
html body.bu-public-unified .bu-blog .bu-blog-card-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform .4s ease;
}
html body.bu-public-unified .bu-blog .bu-blog-card:hover .bu-blog-card-media img { transform: scale(1.045); }
html body.bu-public-unified .bu-blog .bu-blog-card-body {
  display: flex;
  flex: 1;
  flex-direction: column;
  align-items: flex-start;
  padding: 22px;
}
html body.bu-public-unified .bu-blog .bu-blog-card h2,
html body.bu-public-unified .bu-blog .bu-blog-card h3 {
  margin: 7px 0 10px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(21px, 2vw, 27px);
  line-height: 1.12;
  letter-spacing: -.025em;
}
html body.bu-public-unified .bu-blog .bu-blog-card :is(h2,h3) a { color: var(--blog-ink); text-decoration: none; }
html body.bu-public-unified .bu-blog .bu-blog-card-body > p:not(.bu-meta) { color: var(--blog-muted); line-height: 1.58; }
html body.bu-public-unified .bu-blog .bu-blog-card-body .bu-btn { margin-top: auto; }

/* Taxonomy/date archive */
html body.bu-public-unified .bu-blog-archive-head {
  width: min(1160px, calc(100% - 40px));
  margin: 0 auto 30px;
  padding: clamp(34px, 6vw, 74px);
  border-radius: 0 0 32px 32px;
  background: linear-gradient(135deg, #05243b, #07526a 68%, #0aa68f);
  color: #fff;
  box-shadow: 0 25px 60px rgba(5, 42, 64, .18);
}
html body.bu-public-unified .bu-blog-archive-head h1 {
  max-width: 15ch;
  margin: 8px 0 14px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(38px, 5vw, 68px);
  line-height: 1;
  letter-spacing: -.045em;
}
html body.bu-public-unified .bu-blog-archive-head > p:not(.bu-pro-kicker) { max-width: 60ch; color: #d8edf3; }
html body.bu-public-unified .bu-blog-archive-head .bu-single-back { display: inline-flex; margin-top: 14px; color: #fff; }

/* Single article */
html body.bu-public-unified .bu-article-pro { padding-bottom: 70px; }
html body.bu-public-unified .bu-article-pro .bu-crumbs { margin-top: 18px !important; margin-bottom: 18px !important; }
html body.bu-public-unified .bu-article-hero-full {
  position: relative;
  isolation: isolate;
  width: min(1160px, calc(100% - 40px));
  min-height: clamp(430px, 55vw, 680px);
  margin: 0 auto;
  overflow: hidden;
  border: 1px solid rgba(121, 189, 212, .45);
  border-radius: 32px;
  background: linear-gradient(145deg, #082d47, #071827);
  box-shadow: 0 32px 82px rgba(3, 32, 51, .22);
}
html body.bu-public-unified .bu-article-hero-full > img {
  position: absolute;
  inset: 0;
  z-index: -2;
  width: 100%;
  height: 100%;
  object-fit: cover;
}
html body.bu-public-unified .bu-article-hero-veil {
  position: absolute;
  inset: 0;
  z-index: -1;
  background: linear-gradient(180deg, rgba(1,16,29,.2) 8%, rgba(2,20,35,.92) 100%);
}
html body.bu-public-unified .bu-article-hero-inner {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  padding: clamp(28px, 5vw, 68px);
  color: #fff;
}
html body.bu-public-unified .bu-article-hero-inner h1 {
  max-width: 17ch;
  margin: 10px 0 18px;
  font-family: Georgia, "Times New Roman", serif;
  font-size: clamp(38px, 5.5vw, 72px);
  line-height: 1.02;
  letter-spacing: -.05em;
}
html body.bu-public-unified .bu-article-meta-row { display: flex; flex-wrap: wrap; gap: 8px 18px; margin: 0; color: #d5eaf2; font-size: 13px; font-weight: 700; }
html body.bu-public-unified .bu-article-shell {
  width: min(900px, calc(100% - 40px));
  margin: 34px auto 0;
  padding: clamp(26px, 5vw, 64px);
  border: 1px solid var(--blog-line);
  border-radius: 28px;
  background: #fff;
  box-shadow: 0 24px 65px rgba(7, 50, 76, .1);
}
html body.bu-public-unified .bu-article-shell .bu-prose {
  max-width: 72ch;
  margin: 0 auto;
  color: #233f50;
  font-size: clamp(17px, 1.4vw, 19px);
  line-height: 1.78;
}
html body.bu-public-unified .bu-article-shell .bu-prose > :first-child { margin-top: 0; }
html body.bu-public-unified .bu-article-shell .bu-prose :is(h2,h3) {
  color: var(--blog-ink);
  font-family: Georgia, "Times New Roman", serif;
  line-height: 1.12;
  letter-spacing: -.03em;
}
html body.bu-public-unified .bu-article-shell .bu-prose h2 { margin: 2.2em 0 .65em; font-size: clamp(29px, 3vw, 42px); }
html body.bu-public-unified .bu-article-shell .bu-prose h3 { margin: 1.7em 0 .55em; font-size: clamp(23px, 2.3vw, 31px); }
html body.bu-public-unified .bu-article-shell .bu-prose :is(img,video,iframe) { max-width: 100%; height: auto; border-radius: 18px; }
html body.bu-public-unified .bu-article-shell .bu-prose blockquote {
  margin: 2em 0;
  padding: 20px 24px;
  border: 0;
  border-left: 4px solid var(--blog-cyan);
  border-radius: 0 18px 18px 0;
  background: #edf8fa;
  color: #17465b;
}
html body.bu-public-unified .bu-article-share {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
  max-width: 72ch;
  margin: 38px auto 0;
  padding-top: 24px;
  border-top: 1px solid #dceaf0;
}
html body.bu-public-unified .bu-article-share :is(a,button) {
  min-height: 38px;
  padding: 0 14px;
  border: 1px solid #b9d6e2;
  border-radius: 999px;
  background: #f6fbfc;
  color: #0b6074;
  font: inherit;
  font-size: 12px;
  font-weight: 800;
  text-decoration: none;
  cursor: pointer;
}
html body.bu-public-unified .bu-article-author {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 15px;
  align-items: center;
  max-width: 72ch;
  margin: 24px auto 0;
  padding: 18px;
  border: 1px solid #d5e7ee;
  border-radius: 18px;
  background: linear-gradient(145deg, #f8fcfd, #eaf6f8);
}
html body.bu-public-unified .bu-article-author img { border-radius: 16px; }
html body.bu-public-unified .bu-article-author :is(small,strong,p) { display: block; margin: 0; }
html body.bu-public-unified .bu-article-author small { color: #6a8595; text-transform: uppercase; letter-spacing: .08em; }
html body.bu-public-unified .bu-article-author p { margin-top: 4px; color: var(--blog-muted); }
html body.bu-public-unified .bu-article-shell .bu-help-aside {
  max-width: 72ch;
  margin: 24px auto 0;
  padding: 20px;
  border-radius: 18px;
  background: #082d47;
  color: #d9edf4;
}
html body.bu-public-unified .bu-article-shell .bu-help-aside h2 { margin: 0 0 8px; color: #fff; font-size: 18px; }
html body.bu-public-unified .bu-article-shell .bu-help-aside a { color: #70e6ef; }
html body.bu-public-unified .bu-article-pro > .bu-mkt-section { width: min(1160px, calc(100% - 40px)); margin: 48px auto 0; }
html body.bu-public-unified .bu-article-pro > .bu-mkt-section .bu-mkt-section-inner { width: 100%; padding: 0; }
html body.bu-public-unified .bu-article-pro > .bu-mkt-section h2 { margin: 0 0 20px; color: var(--blog-ink); font-family: Georgia, "Times New Roman", serif; font-size: clamp(28px, 3vw, 40px); }

html body.bu-public-unified .bu-blog-pager .nav-links { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; }
html body.bu-public-unified .bu-blog-pager .page-numbers { display: grid; place-items: center; min-width: 42px; min-height: 42px; padding: 0 12px; border: 1px solid var(--blog-line); border-radius: 12px; background: #fff; color: var(--blog-ink); text-decoration: none; }
html body.bu-public-unified .bu-blog-pager .page-numbers.current { background: var(--blog-cyan); color: #fff; }

@media (max-width: 980px) {
  html body.bu-public-unified .bu-blog .bu-blog-grid-pro { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  html body.bu-public-unified .bu-blog .bu-blog-feature { grid-template-columns: 1fr; }
  html body.bu-public-unified .bu-blog .bu-blog-feature-media,
  html body.bu-public-unified .bu-blog .bu-blog-feature-media img { min-height: 310px; }
}
@media (max-width: 640px) {
  html body.bu-public-unified .bu-blog .bu-pro-hero { min-height: 480px; }
  html body.bu-public-unified .bu-blog .bu-pro-hero-inner { width: 100%; padding: 38px 16px; }
  html body.bu-public-unified .bu-blog .bu-pro-hero h1 { font-size: clamp(39px, 13vw, 58px); }
  html body.bu-public-unified .bu-blog .bu-blog-search { grid-template-columns: 1fr; border-radius: 16px; }
  html body.bu-public-unified .bu-blog .bu-pro-story { width: calc(100% - 24px); margin-top: -18px; padding: 18px; }
  html body.bu-public-unified .bu-blog :is(.bu-blog-hub,.bu-blog-chips,.bu-blog-feature,.bu-blog-grid-pro,.bu-blog-pager,.bu-blog-empty) { width: calc(100% - 24px); }
  html body.bu-public-unified .bu-blog .bu-blog-grid-pro { grid-template-columns: 1fr; gap: 16px; }
  html body.bu-public-unified .bu-blog .bu-blog-feature { border-radius: 22px; }
  html body.bu-public-unified .bu-blog .bu-blog-feature-media,
  html body.bu-public-unified .bu-blog .bu-blog-feature-media img { min-height: 220px; }
  html body.bu-public-unified .bu-blog .bu-blog-feature-body { padding: 23px 20px; }
  html body.bu-public-unified .bu-blog-archive-head { width: calc(100% - 24px); padding: 30px 20px; border-radius: 0 0 24px 24px; }
  html body.bu-public-unified .bu-article-hero-full { width: calc(100% - 24px); min-height: 470px; border-radius: 22px; }
  html body.bu-public-unified .bu-article-hero-inner { padding: 24px 20px; }
  html body.bu-public-unified .bu-article-hero-inner h1 { font-size: clamp(34px, 10.5vw, 50px); }
  html body.bu-public-unified .bu-article-shell { width: calc(100% - 24px); margin-top: 18px; padding: 24px 18px; border-radius: 22px; }
  html body.bu-public-unified .bu-article-author { grid-template-columns: 1fr; }
  html body.bu-public-unified .bu-article-pro > .bu-mkt-section { width: calc(100% - 24px); margin-top: 34px; }
}

@media (prefers-reduced-motion: reduce) {
  html body.bu-public-unified .bu-blog :is(.bu-blog-card,.bu-blog-card img,.bu-blog-feature img) { transition: none; }
}
