:root { --cb-ink: #192628; --cb-muted: #556367; --cb-paper: #fcfbf8; --cb-dark: #10282e; --cb-cyan: #67e6f1; --cb-line: #d9e0de; }
html { scroll-behavior: smooth; }
body { background: var(--cb-paper); color: var(--cb-ink); }
.navbar { background: #100e0c !important; }
.bnma-common-menu .nav-link, .bnma-common-menu .dropdown-toggle { color: #fff !important; }
.bnma-common-menu .nav-cta { color: #fff !important; border-color: var(--cb-cyan) !important; }
.bnma-common-menu .nav-cta:hover { background: var(--cb-cyan) !important; color: #100e0c !important; }
.navbar .dropdown-list { background: #1b1815; border: 1px solid #ffffff24; border-radius: 4px; }
.menu-button .line-menu { background: var(--cb-cyan) !important; }
.menu-button.w--open .line-menu { background: #100e0c !important; }
.construction-post *, .construction-footer * { box-sizing: border-box; }
.construction-post { font-size: 18px; line-height: 1.75; }
.construction-post a:focus-visible, .construction-post summary:focus-visible, .construction-footer a:focus-visible { outline: 2px solid #147181; outline-offset: 5px; }
.construction-shell { width: min(1200px, calc(100% - 64px)); margin: 0 auto; }
.construction-hero { position: relative; overflow: hidden; padding: 44px 0 76px; background: var(--cb-dark); color: #f5f8f6; }
.construction-hero::after { content: ""; position: absolute; right: -110px; bottom: -210px; width: 600px; height: 600px; border: 1px solid #67e6f118; border-radius: 50%; box-shadow: 0 0 0 60px #67e6f105, 0 0 0 120px #67e6f105; pointer-events: none; }
.construction-hero .construction-shell { position: relative; z-index: 1; }
.construction-back { display: inline-flex; gap: 12px; align-items: center; color: #c6d3d3; text-decoration: none; font-size: 14px; }
.construction-back:hover { color: var(--cb-cyan); }
.construction-eyebrow { margin: 44px 0 22px; color: var(--cb-cyan); font-size: 12px; line-height: 1.6; letter-spacing: .13em; text-transform: uppercase; font-weight: 700; }
.construction-hero h1 { max-width: 1100px; margin: 0; color: #f5f8f6; font-size: clamp(40px, 5vw, 68px); font-weight: 500; line-height: 1.1; letter-spacing: -.045em; }
.construction-hero h1 span { color: var(--cb-cyan); }
.construction-deck { max-width: 760px; margin: 28px 0 32px; font-size: 21px; line-height: 1.6; color: #c6d3d3; }
.construction-meta { display: flex; gap: 15px; flex-wrap: wrap; color: #c6d3d3; font-size: 13px; line-height: 1.6; }
.construction-meta > span:first-child { font-weight: 700; color: #fff; }
.construction-layout { display: grid; grid-template-columns: 220px minmax(0, 790px); gap: 80px; justify-content: space-between; align-items: start; padding-top: 72px; padding-bottom: 88px; }
.construction-sidebar { position: sticky; top: 32px; font-size: 13px; line-height: 1.6; }
.construction-sidebar nav { display: flex; flex-direction: column; gap: 15px; padding-bottom: 26px; border-bottom: 1px solid var(--cb-line); }
.construction-sidebar nav p { margin: 0 0 6px; color: var(--cb-muted); font-size: 11px; text-transform: uppercase; letter-spacing: .1em; font-weight: 700; }
.construction-sidebar a { color: var(--cb-ink); text-decoration: none; }
.construction-sidebar a:hover { color: #147181; text-decoration: underline; text-underline-offset: 4px; }
.construction-sidebar-link { display: block; margin-top: 24px; font-weight: 500; }
.construction-sidebar-link span { color: #147181; }
.construction-article { min-width: 0; color: var(--cb-ink); }
.construction-article p { margin: 0 0 22px; font-size: inherit; line-height: inherit; }
.construction-article .construction-intro { font-size: 21px; line-height: 1.65; font-weight: 500; }
.construction-article h2 { margin: 56px 0 22px; color: var(--cb-ink); font-size: 34px; line-height: 1.2; letter-spacing: -.035em; font-weight: 700; scroll-margin-top: 32px; }
.construction-article h3 { margin: 30px 0 12px; color: var(--cb-ink); font-size: 23px; line-height: 1.3; letter-spacing: -.02em; }
.construction-article a { color: #176977; text-decoration: underline; text-underline-offset: 3px; text-decoration-thickness: 1px; }
.construction-article a:hover { color: #0d4b55; }
.construction-article ul, .construction-article ol { margin: 24px 0; padding-left: 26px; }
.construction-article li { padding-left: 6px; margin-bottom: 11px; }
.construction-article li::marker { color: #176977; font-weight: 700; }
.construction-takeaway { margin: 32px 0 44px; padding: 26px 30px; background: #eaf2ef; border-left: 3px solid #23808b; }
.construction-article .construction-label { margin: 0 0 14px; color: #35666c; font-size: 11px; text-transform: uppercase; letter-spacing: .12em; font-weight: 700; line-height: 1.5; }
.construction-takeaway p:last-child { margin-bottom: 0; font-size: 22px; line-height: 1.5; font-weight: 500; }
.construction-article .construction-numbered { padding: 26px 26px 18px 48px; background: #f0f1eb; border: 1px solid #e4e7de; border-radius: 4px; font-size: 16px; }
.construction-figure { margin: 34px 0; }
.construction-figure img { display: block; width: 100%; height: auto; border-radius: 5px; }
.construction-figure figcaption { margin-top: 12px; color: var(--cb-muted); font-size: 13px; line-height: 1.6; }
.construction-article .construction-checklist { list-style: none; padding: 0; margin: 26px 0; }
.construction-checklist li { position: relative; margin: 0; padding: 15px 0 15px 26px; border-top: 1px solid var(--cb-line); }
.construction-checklist li:last-child { border-bottom: 1px solid var(--cb-line); }
.construction-checklist li::before { content: "+"; position: absolute; left: 0; color: #176977; font-weight: 700; }
.construction-article .construction-examples { list-style: none; padding: 0; }
.construction-examples li { padding: 0 0 18px; margin-bottom: 18px; border-bottom: 1px solid var(--cb-line); }
.construction-examples strong { display: block; margin-bottom: 3px; }
.construction-method li { margin-bottom: 18px; }
.construction-faq { margin-top: 64px; padding-top: 38px; border-top: 1px solid var(--cb-line); scroll-margin-top: 32px; }
.construction-faq h2 { margin-top: 0; margin-bottom: 28px; }
.construction-faq details { border-bottom: 1px solid var(--cb-line); }
.construction-faq summary { display: flex; justify-content: space-between; align-items: center; gap: 22px; padding: 22px 0; list-style: none; cursor: pointer; font-size: 18px; font-weight: 700; line-height: 1.5; }
.construction-faq summary::-webkit-details-marker { display: none; }
.construction-faq summary::after { content: "+"; flex-shrink: 0; font-size: 24px; color: #176977; font-weight: 400; }
.construction-faq details[open] summary::after { content: "−"; }
.construction-faq details > div { padding: 0 30px 6px 0; color: var(--cb-muted); font-size: 16px; }
.construction-conclusion { margin-top: 58px; padding: 34px; background: #eaf2ef; border: 1px solid #dce7e0; border-radius: 4px; }
.construction-conclusion h2 { margin-top: 0; font-size: 31px; }
.construction-article .construction-button { display: inline-flex; gap: 24px; align-items: center; justify-content: center; min-height: 54px; padding: 14px 23px; border-radius: 3px; color: #fff; background: var(--cb-dark); font-size: 15px; font-weight: 700; text-decoration: none; }
.construction-article .construction-button:hover { background: #1b4952; color: #fff; }
.construction-related { background: #eaf0ec; border-top: 1px solid #dce4de; padding: 60px 0 70px; }
.construction-related .construction-eyebrow { margin: 0 0 16px; color: #35666c; }
.construction-related h2 { margin: 0 0 32px; color: var(--cb-ink); font-size: 34px; line-height: 1.2; letter-spacing: -.035em; }
.construction-related-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.construction-related-grid > a { position: relative; display: block; padding: 30px; border: 1px solid #d6e0d8; border-radius: 4px; background: var(--cb-paper); color: var(--cb-ink); text-decoration: none; }
.construction-related-grid > a:hover { border-color: #23808b; }
.construction-related-grid a > span:first-child { color: #35666c; font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .1em; }
.construction-related-grid h3 { max-width: 440px; margin: 16px 0 10px; color: var(--cb-ink); font-size: 25px; line-height: 1.3; }
.construction-related-grid p { max-width: 420px; margin: 0; padding-right: 18px; color: var(--cb-muted); font-size: 15px; }
.construction-related-grid a > span:last-child { position: absolute; bottom: 28px; right: 28px; color: #176977; font-size: 25px; }
.construction-footer { padding: 34px 0; background: #100e0c; color: #bcb7af; font-size: 13px; line-height: 1.6; }
.construction-footer .construction-shell { display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 26px; }
.construction-footer img { display: block; width: 120px; height: auto; }
.construction-footer nav { display: flex; flex-wrap: wrap; gap: 24px; }
.construction-footer a { color: #bcb7af; text-decoration: none; }
.construction-footer a:hover { color: var(--cb-cyan); }
@media (max-width: 1100px) { .construction-layout { grid-template-columns: 190px minmax(0, 1fr); gap: 44px; } }
@media (max-width: 991px) {
  .navbar .bnma-common-menu { max-height: calc(100dvh - 100px); overflow-y: auto; background: #1b1815; padding: 22px; }
  .navbar .bnma-common-menu .dropdown { width: 100%; }
  .navbar .bnma-common-menu .dropdown-toggle { justify-content: center; }
  .navbar .bnma-common-menu .dropdown-list { position: static; min-width: 0; width: 100%; }
  .navbar .bnma-common-menu .w--nav-dropdown-list-open:not(.w--open) { display: none !important; }
  .navbar .bnma-common-menu .link-dropdown { white-space: normal; padding: 14px; font-size: 15px; }
  .construction-layout { grid-template-columns: 1fr; gap: 38px; padding-top: 40px; }
  .construction-sidebar { position: static; }
  .construction-sidebar nav { display: grid; grid-template-columns: 1fr 1fr; gap: 12px 28px; }
  .construction-sidebar nav p { grid-column: 1 / -1; }
  .construction-sidebar-link { display: none; }
  .construction-article { max-width: 790px; }
}
@media (max-width: 767px) {
  .construction-shell { width: calc(100% - 40px); }
  .construction-hero { padding: 28px 0 46px; }
  .construction-eyebrow { margin-top: 34px; font-size: 10px; }
  .construction-hero h1 { font-size: clamp(36px, 7.5vw, 50px); line-height: 1.13; }
  .construction-deck { font-size: 18px; }
  .construction-meta { gap: 10px; font-size: 12px; }
  .construction-post { font-size: 17px; line-height: 1.75; }
  .construction-article .construction-intro { font-size: 19px; }
  .construction-article h2 { margin-top: 42px; font-size: 28px; }
  .construction-article h3 { font-size: 22px; }
  .construction-article .construction-numbered { padding-left: 38px; padding-right: 18px; }
  .construction-takeaway { padding: 23px; }
  .construction-takeaway p:last-child { font-size: 20px; }
  .construction-faq summary { font-size: 17px; }
  .construction-faq h2, .construction-conclusion h2 { margin-top: 0; }
  .construction-conclusion { padding: 26px 22px; }
  .construction-related-grid { grid-template-columns: 1fr; }
  .construction-related h2 { font-size: 29px; }
  .construction-related-grid > a { padding: 26px; }
  .construction-footer .construction-shell { align-items: start; flex-direction: column; }
}
@media (max-width: 380px) { .construction-sidebar nav { grid-template-columns: 1fr; } .construction-meta { font-size: 11px; gap: 8px; } }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
