.visible {
    visibility: visible
}
.absolute {
    position: absolute
}
.relative {
    position: relative
}
.sticky {
    position: sticky
}
.inset-0 {
    inset: 0px
}
.bottom-4 {
    bottom: 1rem
}
.right-4 {
    right: 1rem
}
.top-0 {
    top: 0px
}
.z-10 {
    z-index: 10
}
.z-50 {
    z-index: 50
}
.mx-auto {
    margin-left: auto;
    margin-right: auto
}
.my-10 {
    margin-top: 2.5rem;
    margin-bottom: 2.5rem
}
.mb-3 {
    margin-bottom: 0.75rem
}
.mb-5 {
    margin-bottom: 1.25rem
}
.mb-7 {
    margin-bottom: 1.75rem
}
.mt-1 {
    margin-top: 0.25rem
}
.mt-1\.5 {
    margin-top: 0.375rem
}
.mt-10 {
    margin-top: 2.5rem
}
.mt-3 {
    margin-top: 0.75rem
}
.mt-4 {
    margin-top: 1rem
}
.mt-5 {
    margin-top: 1.25rem
}
.mt-6 {
    margin-top: 1.5rem
}
.mt-7 {
    margin-top: 1.75rem
}
.mt-8 {
    margin-top: 2rem
}
.block {
    display: block
}
.inline-block {
    display: inline-block
}
.flex {
    display: flex
}
.inline-flex {
    display: inline-flex
}
.grid {
    display: grid
}
.hidden {
    display: none
}
.h-0\.5 {
    height: 0.125rem
}
.h-auto {
    height: auto
}
.h-full {
    height: 100%
}
.h-px {
    height: 1px
}
.max-h-\[66px\] {
    max-height: 66px
}
.min-h-\[46px\] {
    min-height: 46px
}
.min-h-\[660px\] {
    min-height: 660px
}
.min-h-\[88px\] {
    min-height: 88px
}
.w-32 {
    width: 8rem
}
.w-40 {
    width: 10rem
}
.w-6 {
    width: 1.5rem
}
.w-auto {
    width: auto
}
.w-full {
    width: 100%
}
.min-w-0 {
    min-width: 0px
}
.max-w-2xl {
    max-width: 42rem
}
.max-w-3xl {
    max-width: 48rem
}
.max-w-4xl {
    max-width: 56rem
}
.max-w-6xl {
    max-width: 72rem
}
.max-w-7xl {
    max-width: 80rem
}
.shrink-0 {
    flex-shrink: 0
}
.transform {
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}
.cursor-pointer {
    cursor: pointer
}
.grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr))
}
.flex-col {
    flex-direction: column
}
.flex-wrap {
    flex-wrap: wrap
}
.items-start {
    align-items: flex-start
}
.items-end {
    align-items: flex-end
}
.items-center {
    align-items: center
}
.justify-center {
    justify-content: center
}
.justify-between {
    justify-content: space-between
}
.gap-10 {
    gap: 2.5rem
}
.gap-2 {
    gap: 0.5rem
}
.gap-3 {
    gap: 0.75rem
}
.gap-4 {
    gap: 1rem
}
.gap-5 {
    gap: 1.25rem
}
.gap-7 {
    gap: 1.75rem
}
.gap-x-6 {
    column-gap: 1.5rem
}
.gap-y-2 {
    row-gap: 0.5rem
}
.space-y-4 > :not([hidden]) ~ :not([hidden]) {
    --tw-space-y-reverse: 0;
    margin-top: calc(1rem * calc(1 - var(--tw-space-y-reverse)));
    margin-bottom: calc(1rem * var(--tw-space-y-reverse))
}
.divide-y > :not([hidden]) ~ :not([hidden]) {
    --tw-divide-y-reverse: 0;
    border-top-width: calc(1px * calc(1 - var(--tw-divide-y-reverse)));
    border-bottom-width: calc(1px * var(--tw-divide-y-reverse))
}
.divide-gold\/25 > :not([hidden]) ~ :not([hidden]) {
    border-color: rgb(185 151 85 / 0.25)
}
.divide-gold\/30 > :not([hidden]) ~ :not([hidden]) {
    border-color: rgb(185 151 85 / 0.3)
}
.self-start {
    align-self: flex-start
}
.overflow-hidden {
    overflow: hidden
}
.overflow-x-hidden {
    overflow-x: hidden
}
.rounded {
    border-radius: 0.25rem
}
.rounded-full {
    border-radius: 9999px
}
.rounded-sm {
    border-radius: 0.125rem
}
.border {
    border-width: 1px
}
.border-2 {
    border-width: 2px
}
.border-y {
    border-top-width: 1px;
    border-bottom-width: 1px
}
.border-b {
    border-bottom-width: 1px
}
.border-b-2 {
    border-bottom-width: 2px
}
.border-l-4 {
    border-left-width: 4px
}
.border-t {
    border-top-width: 1px
}
.border-\[\#D9A93B\] {
    --tw-border-opacity: 1;
    border-color: rgb(217 169 59 / var(--tw-border-opacity, 1))
}
.border-\[rgba\(23\2c 25\2c 26\2c \.10\)\] {
    border-color: rgba(23,25,26,.10)
}
.border-\[rgba\(23\2c 25\2c 26\2c \.18\)\] {
    border-color: rgba(23,25,26,.18)
}
.border-gold {
    --tw-border-opacity: 1;
    border-color: rgb(185 151 85 / var(--tw-border-opacity, 1))
}
.border-gold\/25 {
    border-color: rgb(185 151 85 / 0.25)
}
.border-gold\/30 {
    border-color: rgb(185 151 85 / 0.3)
}
.border-gold\/35 {
    border-color: rgb(185 151 85 / 0.35)
}
.border-gold\/40 {
    border-color: rgb(185 151 85 / 0.4)
}
.border-navy {
    --tw-border-opacity: 1;
    border-color: rgb(7 28 44 / var(--tw-border-opacity, 1))
}
.border-white\/15 {
    border-color: rgb(255 255 255 / 0.15)
}
.border-white\/30 {
    border-color: rgb(255 255 255 / 0.3)
}
.bg-\[\#17191A\] {
    --tw-bg-opacity: 1;
    background-color: rgb(23 25 26 / var(--tw-bg-opacity, 1))
}
.bg-\[\#D9A93B\] {
    --tw-bg-opacity: 1;
    background-color: rgb(217 169 59 / var(--tw-bg-opacity, 1))
}
.bg-\[\#EDE6D6\] {
    --tw-bg-opacity: 1;
    background-color: rgb(237 230 214 / var(--tw-bg-opacity, 1))
}
.bg-\[\#F7F4ED\] {
    --tw-bg-opacity: 1;
    background-color: rgb(247 244 237 / var(--tw-bg-opacity, 1))
}
.bg-black\/35 {
    background-color: rgb(0 0 0 / 0.35)
}
.bg-gold {
    --tw-bg-opacity: 1;
    background-color: rgb(185 151 85 / var(--tw-bg-opacity, 1))
}
.bg-ivory {
    --tw-bg-opacity: 1;
    background-color: rgb(247 243 233 / var(--tw-bg-opacity, 1))
}
.bg-navy {
    --tw-bg-opacity: 1;
    background-color: rgb(7 28 44 / var(--tw-bg-opacity, 1))
}
.bg-white {
    --tw-bg-opacity: 1;
    background-color: rgb(255 255 255 / var(--tw-bg-opacity, 1))
}
.bg-white\/5 {
    background-color: rgb(255 255 255 / 0.05)
}
.object-cover {
    object-fit: cover
}
.p-3 {
    padding: 0.75rem
}
.p-6 {
    padding: 1.5rem
}
.p-7 {
    padding: 1.75rem
}
.px-3 {
    padding-left: 0.75rem;
    padding-right: 0.75rem
}
.px-4 {
    padding-left: 1rem;
    padding-right: 1rem
}
.px-5 {
    padding-left: 1.25rem;
    padding-right: 1.25rem
}
.px-6 {
    padding-left: 1.5rem;
    padding-right: 1.5rem
}
.px-\[4vw\] {
    padding-left: 4vw;
    padding-right: 4vw
}
.py-1 {
    padding-top: 0.25rem;
    padding-bottom: 0.25rem
}
.py-10 {
    padding-top: 2.5rem;
    padding-bottom: 2.5rem
}
.py-12 {
    padding-top: 3rem;
    padding-bottom: 3rem
}
.py-14 {
    padding-top: 3.5rem;
    padding-bottom: 3.5rem
}
.py-3 {
    padding-top: 0.75rem;
    padding-bottom: 0.75rem
}
.py-4 {
    padding-top: 1rem;
    padding-bottom: 1rem
}
.py-5 {
    padding-top: 1.25rem;
    padding-bottom: 1.25rem
}
.py-8 {
    padding-top: 2rem;
    padding-bottom: 2rem
}
.pb-1 {
    padding-bottom: 0.25rem
}
.pl-5 {
    padding-left: 1.25rem
}
.pt-1 {
    padding-top: 0.25rem
}
.text-center {
    text-align: center
}
.text-right {
    text-align: right
}
.font-body {
    font-family: Arial, Helvetica, sans-serif
}
.font-display {
    font-family: Georgia, Times New Roman, serif
}
.text-2xl {
    font-size: 1.5rem;
    line-height: 2rem
}
.text-3xl {
    font-size: 1.875rem;
    line-height: 2.25rem
}
.text-\[11px\] {
    font-size: 11px
}
.text-\[7rem\] {
    font-size: 7rem
}
.text-\[clamp\(2\.35rem\2c 7vw\2c 4\.75rem\)\] {
    font-size: clamp(2.35rem,7vw,4.75rem)
}
.text-lg {
    font-size: 1.125rem;
    line-height: 1.75rem
}
.text-sm {
    font-size: 0.875rem;
    line-height: 1.25rem
}
.text-xl {
    font-size: 1.25rem;
    line-height: 1.75rem
}
.text-xs {
    font-size: 0.75rem;
    line-height: 1rem
}
.font-bold {
    font-weight: 700
}
.font-extrabold {
    font-weight: 800
}
.uppercase {
    text-transform: uppercase
}
.not-italic {
    font-style: normal
}
.leading-5 {
    line-height: 1.25rem
}
.leading-7 {
    line-height: 1.75rem
}
.leading-8 {
    line-height: 2rem
}
.leading-\[1\.04\] {
    line-height: 1.04
}
.leading-none {
    line-height: 1
}
.leading-relaxed {
    line-height: 1.625
}
.leading-snug {
    line-height: 1.375
}
.leading-tight {
    line-height: 1.25
}
.tracking-\[-0\.02em\] {
    letter-spacing: -0.02em
}
.tracking-\[0\.12em\] {
    letter-spacing: 0.12em
}
.tracking-\[0\.15em\] {
    letter-spacing: 0.15em
}
.tracking-wider {
    letter-spacing: 0.05em
}
.text-\[\#17191A\] {
    --tw-text-opacity: 1;
    color: rgb(23 25 26 / var(--tw-text-opacity, 1))
}
.text-\[\#765a28\] {
    --tw-text-opacity: 1;
    color: rgb(118 90 40 / var(--tw-text-opacity, 1))
}
.text-\[\#D9A93B\] {
    --tw-text-opacity: 1;
    color: rgb(217 169 59 / var(--tw-text-opacity, 1))
}
.text-gold {
    --tw-text-opacity: 1;
    color: rgb(185 151 85 / var(--tw-text-opacity, 1))
}
.text-goldlight {
    --tw-text-opacity: 1;
    color: rgb(213 191 138 / var(--tw-text-opacity, 1))
}
.text-ink {
    --tw-text-opacity: 1;
    color: rgb(27 41 46 / var(--tw-text-opacity, 1))
}
.text-navy {
    --tw-text-opacity: 1;
    color: rgb(7 28 44 / var(--tw-text-opacity, 1))
}
.text-navy\/70 {
    color: rgb(7 28 44 / 0.7)
}
.text-slate-600 {
    --tw-text-opacity: 1;
    color: rgb(71 85 105 / var(--tw-text-opacity, 1))
}
.text-slate-700 {
    --tw-text-opacity: 1;
    color: rgb(51 65 85 / var(--tw-text-opacity, 1))
}
.text-white {
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1))
}
.text-white\/55 {
    color: rgb(255 255 255 / 0.55)
}
.text-white\/70 {
    color: rgb(255 255 255 / 0.7)
}
.text-white\/75 {
    color: rgb(255 255 255 / 0.75)
}
.text-white\/80 {
    color: rgb(255 255 255 / 0.8)
}
.underline {
    text-decoration-line: underline
}
.decoration-gold\/50 {
    text-decoration-color: rgb(185 151 85 / 0.5)
}
.decoration-white\/25 {
    text-decoration-color: rgb(255 255 255 / 0.25)
}
.underline-offset-4 {
    text-underline-offset: 4px
}
.antialiased {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}
.shadow-\[0_10px_24px_rgba\(217\2c 169\2c 59\2c \.18\)\] {
    --tw-shadow: 0 10px 24px rgba(217,169,59,.18);
    --tw-shadow-colored: 0 10px 24px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)
}
.shadow-editorial {
    --tw-shadow: 0 24px 70px rgba(7,28,44,.16);
    --tw-shadow-colored: 0 24px 70px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)
}
.backdrop-blur-sm {
    --tw-backdrop-blur: blur(4px);
    -webkit-backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);
    backdrop-filter: var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)
}
.transition {
    transition-property: color, background-color, border-color, text-decoration-color, fill, stroke, opacity, box-shadow, transform, filter, backdrop-filter;
    transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
    transition-duration: 150ms
}
.hover\:-translate-y-1:hover {
    --tw-translate-y: -0.25rem;
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}
.hover\:border-\[\#E5B94F\]:hover {
    --tw-border-opacity: 1;
    border-color: rgb(229 185 79 / var(--tw-border-opacity, 1))
}
.hover\:border-\[rgba\(23\2c 25\2c 26\2c \.28\)\]:hover {
    border-color: rgba(23,25,26,.28)
}
.hover\:border-gold:hover {
    --tw-border-opacity: 1;
    border-color: rgb(185 151 85 / var(--tw-border-opacity, 1))
}
.hover\:bg-\[\#E5B94F\]:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(229 185 79 / var(--tw-bg-opacity, 1))
}
.hover\:bg-\[rgba\(23\2c 25\2c 26\2c \.03\)\]:hover {
    background-color: rgba(23,25,26,.03)
}
.hover\:bg-goldlight:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(213 191 138 / var(--tw-bg-opacity, 1))
}
.hover\:bg-navy:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(7 28 44 / var(--tw-bg-opacity, 1))
}
.hover\:bg-navysoft:hover {
    --tw-bg-opacity: 1;
    background-color: rgb(16 45 64 / var(--tw-bg-opacity, 1))
}
.hover\:text-\[\#D9A93B\]:hover {
    --tw-text-opacity: 1;
    color: rgb(217 169 59 / var(--tw-text-opacity, 1))
}
.hover\:text-goldlight:hover {
    --tw-text-opacity: 1;
    color: rgb(213 191 138 / var(--tw-text-opacity, 1))
}
.hover\:text-white:hover {
    --tw-text-opacity: 1;
    color: rgb(255 255 255 / var(--tw-text-opacity, 1))
}
.hover\:shadow-lg:hover {
    --tw-shadow: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
    --tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);
    box-shadow: var(--tw-ring-offset-shadow, 0 0 #0000), var(--tw-ring-shadow, 0 0 #0000), var(--tw-shadow)
}
.group[open] .group-open\:rotate-45 {
    --tw-rotate: 45deg;
    transform: translate(var(--tw-translate-x), var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))
}
@media (min-width: 640px) {
    .sm\:w-auto {
        width: auto
    }
    .sm\:grid-cols-2 {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }
    .sm\:flex-row {
        flex-direction: row
    }
    .sm\:p-8 {
        padding: 2rem
    }
    .sm\:p-9 {
        padding: 2.25rem
    }
    .sm\:px-6 {
        padding-left: 1.5rem;
        padding-right: 1.5rem
    }
    .sm\:pl-8 {
        padding-left: 2rem
    }
    .sm\:text-3xl {
        font-size: 1.875rem;
        line-height: 2.25rem
    }
    .sm\:text-4xl {
        font-size: 2.25rem;
        line-height: 2.5rem
    }
    .sm\:text-\[10rem\] {
        font-size: 10rem
    }
}
@media (min-width: 768px) {
    .md\:min-h-\[720px\] {
        min-height: 720px
    }
    .md\:grid-cols-2 {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }
    .md\:grid-cols-\[\.7fr_1fr\] {
        grid-template-columns: .7fr 1fr
    }
    .md\:flex-row {
        flex-direction: row
    }
    .md\:items-center {
        align-items: center
    }
    .md\:py-14 {
        padding-top: 3.5rem;
        padding-bottom: 3.5rem
    }
    .md\:py-16 {
        padding-top: 4rem;
        padding-bottom: 4rem
    }
    .md\:py-20 {
        padding-top: 5rem;
        padding-bottom: 5rem
    }
}
@media (min-width: 1024px) {
    .lg\:grid-cols-3 {
        grid-template-columns: repeat(3, minmax(0, 1fr))
    }
    .lg\:grid-cols-4 {
        grid-template-columns: repeat(4, minmax(0, 1fr))
    }
    .lg\:grid-cols-\[1fr_\.62fr\] {
        grid-template-columns: 1fr .62fr
    }
    .lg\:grid-cols-\[1fr_\.72fr\] {
        grid-template-columns: 1fr .72fr
    }
    .lg\:gap-16 {
        gap: 4rem
    }
    .lg\:px-8 {
        padding-left: 2rem;
        padding-right: 2rem
    }
}

/* ===== EDITORIAL FOUNDATION ===== */
    html { scroll-behavior: smooth; }
    body { text-rendering: optimizeLegibility; }
    .article-copy p { margin-top: 1.25rem; color: #34444a; line-height: 1.85; }
    .article-copy h2 { scroll-margin-top: 7rem; }
    .eyebrow { letter-spacing: .18em; text-transform: uppercase; }
    .hero-shade { background: linear-gradient(90deg, rgba(7,28,44,.94) 0%, rgba(7,28,44,.73) 48%, rgba(7,28,44,.18) 100%); }
    .gold-rule { background: linear-gradient(90deg, #B99755, rgba(185,151,85,0)); }
    .drop-cap:first-letter {
      float: left;
      margin: .1rem .55rem 0 0;
      color: #8b6a2f;
      font-family: Georgia, serif;
      font-size: 4rem;
      line-height: .78;
    }
    summary::-webkit-details-marker { display: none; }
    summary { list-style: none; }

    @media (prefers-reduced-motion: reduce) {
      [data-aos] {
        opacity: 1 !important;
        transform: none !important;
        transition: none !important;
      }
      [data-aos].aos-animate {
        opacity: 1 !important;
        transform: none !important;
      }
    }

    html:not(.has-aos) [data-aos] {
      opacity: 1 !important;
      transform: none !important;
      transition: none !important;
    }

    /* ===== NAVBAR NORMALIZATION ===== */
    header[data-section="navbar"] .desktop-nav,
    header[data-section="navbar"] .desktop-actions {
      display: none;
    }
    header[data-section="navbar"] .mobile-actions {
      display: inline-flex;
    }
    header[data-section="navbar"] .mobile-menu-panel {
      display: block;
    }

    @media (min-width: 1025px) {
      header[data-section="navbar"] .navbar-inner {
        display: grid;
        grid-template-columns: auto 1fr auto;
        gap: 18px;
        min-height: 88px;
      }
      header[data-section="navbar"] .desktop-nav,
      header[data-section="navbar"] .desktop-actions {
        display: flex;
      }
      header[data-section="navbar"] .mobile-actions,
      header[data-section="navbar"] .mobile-toggle,
      header[data-section="navbar"] .mobile-menu-panel {
        display: none !important;
      }
    }

    @media (max-width: 1024px) {
      header[data-section="navbar"] .navbar-inner {
        min-height: 76px;
      }
      header[data-section="navbar"] .desktop-nav,
      header[data-section="navbar"] .desktop-actions {
        display: none !important;
      }
      header[data-section="navbar"] .mobile-actions,
      header[data-section="navbar"] .mobile-toggle {
        display: inline-flex;
      }
      header[data-section="navbar"] .mobile-menu-panel {
        display: block;
      }
    }

    #mobile-menu[hidden] { display: none; }

    .bgc-site-footer {
      background: #17191A;
      color: #F5F1E8;
      padding: 56px 0 32px;
    }
    .bgc-site-footer a { color: #F5F1E8; }
    .bgc-site-footer a:hover { color: #fff; }
    .bgc-site-footer__wrap {
      width: min(1240px, 92vw);
      margin: 0 auto;
    }
    .bgc-site-footer__grid {
      display: grid;
      grid-template-columns: 1.15fr .95fr .9fr;
      gap: 34px;
      align-items: start;
    }
    .bgc-site-footer__brand {
      display: grid;
      gap: 22px;
    }
    .bgc-site-footer__logo-tile {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      width: 190px;
      height: 145px;
      padding: 14px;
      border-radius: 12px;
      background: #F3EEE4;
      box-shadow: none;
    }
    .bgc-site-footer__logo {
      max-width: 155px;
      max-height: 110px;
      width: auto;
      height: auto;
    }
    .bgc-site-footer__tagline {
      max-width: 12ch;
      font-family: "Cormorant Garamond", Georgia, "Times New Roman", serif;
      font-size: clamp(2rem, 2.6vw, 2.1rem);
      line-height: .98;
      letter-spacing: -.04em;
      color: #F5F1E8;
    }
    .bgc-site-footer__contact {
      font-size: 15px;
      line-height: 1.65;
      color: #B8B1A6;
    }
    .bgc-site-footer__contact a {
      color: #F5F1E8;
      font-weight: 700;
      text-decoration: underline;
      text-decoration-color: rgba(245,241,232,.2);
      text-underline-offset: 4px;
    }
    .bgc-site-footer__heading {
      font-size: 10px;
      font-weight: 700;
      letter-spacing: .18em;
      text-transform: uppercase;
      color: #B8B1A6;
    }
    .bgc-site-footer__links {
      display: grid;
      grid-template-columns: repeat(2, minmax(0, 1fr));
      gap: 10px 18px;
      margin-top: 16px;
      font-size: 14px;
      line-height: 1.6;
      color: #B8B1A6;
    }
    .bgc-site-footer__link {
      color: #B8B1A6;
      transition: color .2s ease, opacity .2s ease;
      position: relative;
    }
    .bgc-site-footer__link:hover { color: #fff; }
    .bgc-site-footer__link::before,
    .bgc-site-footer__link::after {
      content: none !important;
      display: none !important;
    }
    .bgc-site-footer__actions {
      display: grid;
      gap: 12px;
      align-content: start;
    }
    .bgc-site-footer__cta {
      min-height: 52px;
      border-radius: 999px;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      padding: 0 20px;
      font-size: 14px;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: .08em;
      transition: background-color .2s ease, border-color .2s ease, color .2s ease;
    }
    .bgc-site-footer__cta--gold {
      background: #D9A93B;
      color: #17191A;
      box-shadow: 0 10px 24px rgba(217, 169, 59, .18);
    }
    .bgc-site-footer__cta--gold:hover { background: #E5B94F; color: #17191A; }
    .bgc-site-footer__cta--ghost {
      background: transparent;
      border: 1px solid rgba(245,241,232,.22);
      color: #F5F1E8;
    }
    .bgc-site-footer__cta--ghost:hover {
      border-color: rgba(245,241,232,.34);
      background: rgba(255,255,255,.05);
      color: #F5F1E8;
    }
    .bgc-site-footer__rail {
      margin-top: 32px;
      padding-top: 18px;
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 18px;
      border-top: 1px solid rgba(245, 241, 232, 0.12);
      color: #B8B1A6;
      font-size: 13px;
      line-height: 1.6;
    }

    @media (max-width: 1024px) {
      .bgc-site-footer__grid {
        grid-template-columns: 1fr 1fr;
      }
      .bgc-site-footer__actions {
        grid-column: 1 / -1;
        grid-template-columns: repeat(2, minmax(0, 1fr));
      }
    }

    @media (max-width: 767px) {
      .hero-shade { background: linear-gradient(0deg, rgba(7,28,44,.96) 0%, rgba(7,28,44,.70) 70%, rgba(7,28,44,.30) 100%); }
      .bgc-site-footer {
        padding: 56px 0 32px;
      }
      .bgc-site-footer__grid {
        grid-template-columns: 1fr;
      }
      .bgc-site-footer__logo-tile {
        width: 165px;
        height: 125px;
      }
      .bgc-site-footer__logo {
        max-width: 136px;
        max-height: 96px;
      }
      .bgc-site-footer__links {
        grid-template-columns: 1fr;
      }
      .bgc-site-footer__actions {
        grid-template-columns: 1fr;
      }
      .bgc-site-footer__cta {
        width: 100%;
      }
      .bgc-site-footer__rail {
        flex-direction: column;
        align-items: flex-start;
      }
    }

.bgc-site-footer {
      padding: 56px 0 32px !important;
      background: #17191A !important;
      color: #F5F1E8 !important;
      border-top: 1px solid rgba(245,241,232,.12) !important;
    }
    .bgc-site-footer > .container,
    .bgc-site-footer > .bgc-site-footer__wrap {
      width: 100% !important;
      max-width: none !important;
      margin: 0 !important;
      padding: 0 !important;
    }
    .bgc-site-footer__wrap {
      width: min(1240px, 92vw) !important;
      margin: 0 auto !important;
    }
    .bgc-site-footer__grid {
      width: min(1240px, 92vw) !important;
      margin: 0 auto !important;
      display: grid !important;
      grid-template-columns: 1.15fr .95fr .9fr !important;
      gap: 34px !important;
      align-items: start !important;
    }
    .bgc-site-footer__brand {
      display: flex !important;
      flex-direction: column !important;
      gap: 16px !important;
    }
    .bgc-site-footer__logo-tile {
      width: 190px !important;
      height: 145px !important;
      padding: 14px !important;
      border-radius: 12px !important;
      background: #F3EEE4 !important;
      border: 1px solid rgba(0,0,0,.04) !important;
      box-shadow: none !important;
    }
    .bgc-site-footer__logo {
      max-width: 155px !important;
      max-height: 110px !important;
      width: auto !important;
      height: auto !important;
      object-fit: contain !important;
    }
    .bgc-site-footer__tagline {
      max-width: 12ch !important;
      font-family: "Cormorant Garamond", Georgia, "Times New Roman", serif !important;
      font-size: clamp(2rem, 2.6vw, 2.1rem) !important;
      font-weight: 600 !important;
      line-height: .98 !important;
      letter-spacing: -.04em !important;
      color: #F5F1E8 !important;
    }
    .bgc-site-footer__contact {
      display: grid !important;
      gap: 8px !important;
      font-size: 15px !important;
      line-height: 1.65 !important;
      color: #B8B1A6 !important;
    }
    .bgc-site-footer__contact a {
      color: #F5F1E8 !important;
    }
    .bgc-site-footer__heading {
      margin: 0 0 16px !important;
      font-size: 10px !important;
      font-weight: 800 !important;
      letter-spacing: .18em !important;
      text-transform: uppercase !important;
      color: #F5F1E8 !important;
    }
    .bgc-site-footer__links {
      display: grid !important;
      grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
      gap: 10px 18px !important;
      margin-top: 0 !important;
      font-size: 14px !important;
      line-height: 1.6 !important;
      color: #B8B1A6 !important;
    }
    .bgc-site-footer__links > h2,
    .bgc-site-footer__links > .bgc-site-footer__heading {
      grid-column: 1 / -1 !important;
    }
    .bgc-site-footer__link {
      color: #B8B1A6 !important;
      border: 0 !important;
      transform: none !important;
      transition: color .2s ease, opacity .2s ease !important;
    }
    .bgc-site-footer__link:hover {
      color: #F5F1E8 !important;
    }
    .bgc-site-footer__actions {
      display: flex !important;
      flex-direction: column !important;
      gap: 12px !important;
      align-content: start !important;
      justify-content: flex-start !important;
      align-items: stretch !important;
    }
    .bgc-site-footer__actions > h2,
    .bgc-site-footer__actions > .bgc-site-footer__heading {
      width: 100% !important;
    }
    .bgc-site-footer__cta {
      display: inline-flex !important;
      align-items: center !important;
      justify-content: center !important;
      min-height: 52px !important;
      padding: 0 18px !important;
      border-radius: 999px !important;
      background: #D9A93B !important;
      color: #17191A !important;
      border: 1px solid #D9A93B !important;
      text-decoration: none !important;
      font-size: 12px !important;
      font-weight: 800 !important;
      letter-spacing: .13em !important;
      text-transform: uppercase !important;
      box-shadow: 0 10px 28px rgba(217,169,59,.20) !important;
    }
    .bgc-site-footer__cta:hover,
    .bgc-site-footer__cta:focus-visible {
      background: #E5B94F !important;
      color: #17191A !important;
      border-color: #E5B94F !important;
      box-shadow: 0 12px 30px rgba(217,169,59,.26) !important;
      transform: translateY(-1px) !important;
    }
    .bgc-site-footer__cta--ghost {
      background: transparent !important;
      color: #F5F1E8 !important;
      border: 1px solid rgba(245,241,232,.22) !important;
      box-shadow: none !important;
    }
    .bgc-site-footer__cta--ghost:hover,
    .bgc-site-footer__cta--ghost:focus-visible {
      background: rgba(245,241,232,.06) !important;
      color: #F5F1E8 !important;
      border-color: rgba(245,241,232,.34) !important;
      box-shadow: none !important;
    }
    .bgc-site-footer__rail {
      width: min(1240px, 92vw) !important;
      margin: 32px auto 0 !important;
      padding: 18px 0 0 !important;
      display: flex !important;
      align-items: center !important;
      justify-content: space-between !important;
      flex-wrap: wrap !important;
      gap: 14px !important;
      border-top: 1px solid rgba(245,241,232,.12) !important;
      color: #B8B1A6 !important;
      font-size: 13px !important;
      line-height: 1.6 !important;
    }
    @media (max-width: 1024px) {
      .bgc-site-footer__grid {
        grid-template-columns: 1fr 1fr !important;
      }
      .bgc-site-footer__actions {
        grid-column: 1 / -1 !important;
        flex-direction: row !important;
        flex-wrap: wrap !important;
      }
      .bgc-site-footer__cta {
        flex: 1 1 220px !important;
      }
    }
    @media (max-width: 767px) {
      .bgc-site-footer {
        padding: 52px 0 32px !important;
      }
      .bgc-site-footer__grid {
        grid-template-columns: 1fr !important;
        gap: 28px !important;
      }
      .bgc-site-footer__logo-tile {
        width: 165px !important;
        height: 125px !important;
      }
      .bgc-site-footer__logo {
        max-width: 136px !important;
        max-height: 96px !important;
      }
      .bgc-site-footer__tagline {
        max-width: none !important;
        font-size: clamp(1.95rem, 8vw, 2.2rem) !important;
      }
      .bgc-site-footer__links {
        grid-template-columns: 1fr !important;
      }
      .bgc-site-footer__rail {
        margin-top: 30px !important;
      }
      .bgc-site-footer__actions {
        flex-direction: column !important;
      }
      .bgc-site-footer__cta {
        width: 100% !important;
      }
    }