:root {
  --sbs-public-house-paper: #f6f4ef;
  --sbs-warm-linen: #e8e5df;
  --sbs-stone: #d9dbd2;
  --sbs-sorenson-sage: #8fa18e;
  --sbs-deep-sage: #6f7f70;
  --sbs-graphite: #2f3437;
  --sbs-cellar-charcoal: #1f2933;
  --sbs-workshop-slate: #2f3941;
  --sbs-tool-steel: #3f4a46;
  --sbs-pine-shadow: #617067;
  --sbs-fog-blue: #a7b1b8;
  --sbs-workshop-warm-paper: #dbd8d0;
  --sbs-aged-brass: #b89b5e;
  --sbs-clay: #c97f5a;
  --sbs-oat: #e8dcc8;
  --sbs-paper-texture: url("../img/brand/paper-texture.webp");
  color-scheme: light dark;
}

:root[data-sbs-theme="light"] {
  --sbs-page-bg: var(--sbs-public-house-paper);
  --sbs-section-bg: var(--sbs-public-house-paper);
  --sbs-section-alt-bg: var(--sbs-warm-linen);
  --sbs-elevated-paper: rgba(255, 255, 255, 0.56);
  --sbs-elevated-paper-strong: rgba(246, 244, 239, 0.92);
  --sbs-text: var(--sbs-graphite);
  --sbs-muted-text: rgba(47, 52, 55, 0.74);
  --sbs-border-rule: rgba(47, 52, 55, 0.14);
  --sbs-border-rule-strong: rgba(47, 52, 55, 0.22);
  --sbs-sage-accent: var(--sbs-sorenson-sage);
  --sbs-deep-sage-accent: var(--sbs-deep-sage);
  --sbs-brass-accent: var(--sbs-aged-brass);
  --sbs-clay-accent: var(--sbs-clay);
  --sbs-dark-workshop-bg: var(--sbs-cellar-charcoal);
  --sbs-dark-workshop-surface: var(--sbs-workshop-slate);
  --sbs-dark-workshop-surface-2: var(--sbs-tool-steel);
  --sbs-workshop-text: var(--sbs-workshop-warm-paper);
  --sbs-workshop-muted: var(--sbs-fog-blue);
  --sbs-workshop-border: rgba(219, 216, 208, 0.14);
  --sbs-shadow-soft: 0 1rem 2.4rem rgba(47, 52, 55, 0.08);
  --sbs-shadow-lift: 0 1.3rem 2.8rem rgba(47, 52, 55, 0.13);
  color-scheme: light;
}

:root[data-sbs-theme="dark"] {
  --sbs-page-bg: var(--sbs-cellar-charcoal);
  --sbs-section-bg: var(--sbs-cellar-charcoal);
  --sbs-section-alt-bg: var(--sbs-workshop-slate);
  --sbs-elevated-paper: rgba(47, 57, 65, 0.72);
  --sbs-elevated-paper-strong: rgba(63, 74, 70, 0.78);
  --sbs-text: var(--sbs-workshop-warm-paper);
  --sbs-muted-text: var(--sbs-fog-blue);
  --sbs-border-rule: rgba(219, 216, 208, 0.14);
  --sbs-border-rule-strong: rgba(219, 216, 208, 0.24);
  --sbs-sage-accent: var(--sbs-pine-shadow);
  --sbs-deep-sage-accent: var(--sbs-sorenson-sage);
  --sbs-brass-accent: var(--sbs-aged-brass);
  --sbs-clay-accent: var(--sbs-clay);
  --sbs-dark-workshop-bg: var(--sbs-cellar-charcoal);
  --sbs-dark-workshop-surface: var(--sbs-workshop-slate);
  --sbs-dark-workshop-surface-2: var(--sbs-tool-steel);
  --sbs-workshop-text: var(--sbs-workshop-warm-paper);
  --sbs-workshop-muted: var(--sbs-fog-blue);
  --sbs-workshop-border: rgba(219, 216, 208, 0.15);
  --sbs-shadow-soft: 0 1rem 2.4rem rgba(0, 0, 0, 0.22);
  --sbs-shadow-lift: 0 1.3rem 2.8rem rgba(0, 0, 0, 0.28);
  color-scheme: dark;
}

.sbs-home-hero {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  overflow-x: clip;
  border-bottom: 1px solid rgba(222, 226, 230, 0.1);
  background:
    radial-gradient(circle at 82% 18%, rgba(148, 217, 206, 0.16), transparent 20rem),
    linear-gradient(135deg, rgba(12, 18, 28, 0.98), rgba(16, 29, 36, 0.96) 48%, rgba(24, 29, 43, 0.98));
}

.navbar .navbar-brand,
.sbs-brand-link {
  min-width: 0;
}

.sbs-brand-link > span:not(.sbs-brand-logo-mark) {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.page-frame {
  width: 100%;
  max-width: none;
  margin: 0 !important;
  padding: 0 !important;
  border-radius: 0 !important;
  background: #111824 !important;
}

.page-frame > .content-wrapper,
.page-frame .content-wrapper > .wrapper,
.page-frame > footer {
  margin: 0 !important;
  border-radius: 0 !important;
}

.page-frame .sbs-home-hero,
.page-frame .sbs-home-section {
  border-radius: 0 !important;
}

.sbs-home-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -2;
  background-image:
    linear-gradient(rgba(255, 255, 255, 0.055) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.055) 1px, transparent 1px);
  background-size: 4rem 4rem;
  mask-image: linear-gradient(135deg, rgba(0, 0, 0, 0.1), #000 24%, #000 72%, rgba(0, 0, 0, 0.18));
  opacity: 0.45;
}

.sbs-home-hero::after {
  content: "";
  position: absolute;
  inset: auto 0 0;
  z-index: -1;
  height: 28%;
  background: linear-gradient(0deg, rgba(148, 217, 206, 0.09), transparent);
  pointer-events: none;
}

.sbs-home-hero > .container {
  padding-top: 3rem !important;
  padding-bottom: 2.75rem !important;
}

.sbs-intake-grid {
  display: grid;
  grid-template-columns: minmax(18rem, 0.82fr) minmax(0, 1.18fr);
  gap: 2rem;
  align-items: start;
}

.sbs-intake-copy {
  max-width: 36rem;
}

.sbs-eyebrow {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 0.55rem;
  margin: 0;
  color: #9adbd1;
  font-size: 0.72rem;
  font-weight: 800;
  text-transform: uppercase;
}

.sbs-eyebrow::before {
  content: "";
  width: 0.55rem;
  height: 0.55rem;
  border-radius: 50%;
  background: #9adbd1;
  box-shadow: 0 0 0 0.25rem rgba(154, 219, 209, 0.12);
}

.sbs-hero-title {
  max-width: 10.5ch;
  font-size: 4.1rem;
  line-height: 1;
}

.sbs-hero-lead {
  max-width: 35rem;
  color: #d5deea !important;
  font-size: 1.05rem;
  line-height: 1.55;
}

.sbs-cta-row {
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem;
  align-items: center;
}

.sbs-service-entry-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.85rem;
}

.sbs-hero-side {
  display: grid;
  gap: 0.85rem;
  min-width: 0;
}

.sbs-public-house-hero-photo {
  display: none;
  margin: 0;
  overflow: hidden;
  border-radius: 0.5rem;
}

.sbs-public-house-hero-photo img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center right;
}

.sbs-service-entry,
.sbs-service-overview-card,
.sbs-process-card {
  border: 1px solid rgba(222, 226, 230, 0.14);
  border-radius: 0.5rem;
  background: rgba(17, 24, 36, 0.78);
  box-shadow: 0 1rem 2.6rem rgba(0, 0, 0, 0.16);
}

.sbs-service-entry,
.sbs-service-overview-card {
  display: flex;
  height: 100%;
  flex-direction: column;
  color: #f5f1e8;
  text-decoration: none;
  transition: border-color 160ms ease, transform 160ms ease, background-color 160ms ease;
}

.sbs-service-entry {
  min-height: 9.5rem;
  padding: 1rem;
}

.sbs-service-entry:hover,
.sbs-service-entry:focus,
.sbs-service-overview-card:hover,
.sbs-service-overview-card:focus {
  border-color: rgba(154, 219, 209, 0.52);
  background: rgba(24, 34, 48, 0.94);
  color: #fff;
  transform: translateY(-2px);
}

.sbs-card-kicker {
  display: block;
  color: #9adbd1;
  font-size: 0.62rem;
  font-weight: 800;
  text-transform: uppercase;
}

.sbs-service-entry strong {
  display: block;
  margin: 0.65rem 0 0.45rem;
  color: #fff;
  font-size: 1.2rem;
  line-height: 1.2;
}

.sbs-service-entry span:last-child {
  display: block;
  color: #c7d1df;
  font-size: 0.86rem;
  line-height: 1.45;
}

.sbs-proof-strip {
  display: grid;
  grid-template-columns: minmax(7rem, 0.56fr) repeat(4, minmax(0, 1fr));
  gap: 0.7rem;
  align-items: stretch;
  margin-top: 1.25rem;
  padding: 0.72rem;
  border: 1px solid rgba(222, 226, 230, 0.13);
  border-radius: 0.55rem;
  background: rgba(9, 14, 22, 0.54);
}

.sbs-proof-label,
.sbs-proof-strip a {
  min-width: 0;
  border-radius: 0.45rem;
}

.sbs-proof-label {
  display: flex;
  align-items: center;
  padding: 0.8rem;
  color: #9adbd1;
  font-size: 0.68rem;
  font-weight: 800;
  text-transform: uppercase;
}

.sbs-proof-strip a {
  display: block;
  padding: 0.8rem;
  border: 1px solid rgba(222, 226, 230, 0.1);
  color: #f5f1e8;
  text-decoration: none;
  transition: border-color 160ms ease, background-color 160ms ease;
}

.sbs-proof-strip a:hover,
.sbs-proof-strip a:focus {
  border-color: rgba(191, 197, 255, 0.42);
  background: rgba(255, 255, 255, 0.045);
}

.sbs-proof-strip strong,
.sbs-proof-strip span {
  display: block;
  overflow-wrap: anywhere;
}

.sbs-proof-strip strong {
  color: #fff;
  font-size: 0.98rem;
  line-height: 1.2;
}

.sbs-proof-strip span {
  margin-top: 0.25rem;
  color: #aebaca;
  font-size: 0.74rem;
  line-height: 1.35;
}

.sbs-home-section {
  border-top: 1px solid rgba(222, 226, 230, 0.08);
}

.sbs-home-section > .container {
  padding-top: 4.25rem;
  padding-bottom: 4.25rem;
}

.sbs-example-section > .container {
  padding-top: 3.35rem;
}

.sbs-section-heading {
  max-width: 48rem;
  margin-bottom: 2rem;
}

.sbs-section-heading h2,
.sbs-final-cta h2 {
  margin-bottom: 0.75rem;
  color: #f5f1e8;
  font-size: 2.35rem;
  line-height: 1.12;
}

.sbs-section-heading p:last-child,
.sbs-final-cta p:last-child {
  margin-bottom: 0;
  color: #c7d1df;
}

.sbs-section-heading-row {
  display: flex;
  max-width: none;
  align-items: end;
  justify-content: space-between;
  gap: 1.5rem;
}

.sbs-section-heading-row > div {
  max-width: 44rem;
}

.sbs-service-overview-card {
  padding: 1.2rem;
}

.sbs-service-overview-card h3,
.sbs-process-card h3 {
  margin: 0.6rem 0 0.55rem;
  color: #f5f1e8;
  font-size: 1.16rem;
}

.sbs-service-overview-card p,
.sbs-process-card p {
  margin-bottom: 0;
  color: #c7d1df;
  font-size: 0.92rem;
  line-height: 1.5;
}

.sbs-process-card {
  height: 100%;
  padding: 1.25rem;
}

.sbs-process-card .icon-svg {
  width: 2.1rem;
  height: 2.1rem;
}

.sbs-final-section > .container {
  padding-top: 2rem;
}

.sbs-final-cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  padding: 1.5rem;
  border: 1px solid rgba(222, 226, 230, 0.13);
  border-radius: 0.55rem;
  background:
    radial-gradient(circle at 88% 10%, rgba(154, 219, 209, 0.12), transparent 18rem),
    rgba(24, 34, 48, 0.78);
}

.sbs-final-cta > div:first-child {
  max-width: 44rem;
}

.sbs-final-cta .sbs-cta-row {
  flex: 0 0 auto;
}

.sbs-services-page {
  position: relative;
  overflow: hidden;
  overflow-x: clip;
  border-bottom: 1px solid rgba(222, 226, 230, 0.08);
  background:
    linear-gradient(135deg, rgba(12, 18, 28, 0.98), rgba(16, 29, 36, 0.96) 56%, rgba(24, 29, 43, 0.98)) !important;
}

.sbs-services-page::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(255, 255, 255, 0.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.045) 1px, transparent 1px);
  background-size: 4rem 4rem;
  mask-image: linear-gradient(125deg, rgba(0, 0, 0, 0.1), #000 18%, #000 78%, rgba(0, 0, 0, 0.08));
  opacity: 0.36;
  pointer-events: none;
}

.sbs-services-page > .container {
  position: relative;
  z-index: 1;
  padding-top: 3.25rem;
  padding-bottom: 2.65rem;
}

.sbs-services-header {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 2rem;
}

.sbs-services-header > div:first-child {
  max-width: 43rem;
}

.sbs-services-header h1 {
  margin: 0.75rem 0 0.65rem;
  color: #f5f1e8;
  font-size: 3.15rem;
  line-height: 1.02;
  letter-spacing: 0;
}

.sbs-services-header p:last-child {
  max-width: 40rem;
  margin-bottom: 0;
  color: #c7d1df;
  font-size: 1.05rem;
  line-height: 1.5;
}

.sbs-decision-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.85rem;
  margin-top: 1.65rem;
}

.sbs-decision-card,
.sbs-fit-card,
.sbs-services-final-cta {
  border: 1px solid rgba(222, 226, 230, 0.13);
  border-radius: 0.5rem;
  background: rgba(17, 24, 36, 0.8);
  box-shadow: 0 1rem 2.6rem rgba(0, 0, 0, 0.16);
}

.sbs-decision-card {
  display: flex;
  min-height: 20.5rem;
  flex-direction: column;
  padding: 1rem;
  transition: border-color 160ms ease, transform 160ms ease, background-color 160ms ease;
}

.sbs-decision-card:hover,
.sbs-decision-card:focus-within {
  border-color: rgba(154, 219, 209, 0.48);
  background: rgba(24, 34, 48, 0.94);
  transform: translateY(-2px);
}

.sbs-decision-card h2 {
  margin: 0.55rem 0 0.45rem;
  color: #fff;
  font-size: 1.23rem;
  line-height: 1.16;
  letter-spacing: 0;
}

.sbs-decision-card p {
  margin-bottom: 0.7rem;
  color: #c7d1df;
  font-size: 0.88rem;
  line-height: 1.42;
}

.sbs-decision-card ul,
.sbs-fit-card ul {
  display: grid;
  gap: 0.45rem;
  margin: 0;
  padding: 0;
  list-style: none;
}

.sbs-decision-card li,
.sbs-fit-card li {
  position: relative;
  padding-left: 1rem;
  color: #d8e1ee;
  font-size: 0.82rem;
  line-height: 1.35;
}

.sbs-decision-card li::before,
.sbs-fit-card li::before {
  content: "";
  position: absolute;
  top: 0.48rem;
  left: 0;
  width: 0.34rem;
  height: 0.34rem;
  border-radius: 999px;
  background: #9adbd1;
}

.sbs-good-for {
  display: block;
  margin-top: auto;
  padding-top: 0.9rem;
  color: #f2d28f;
  font-size: 0.72rem;
  font-weight: 800;
  text-transform: uppercase;
}

.sbs-card-cta {
  display: inline-flex;
  width: fit-content;
  align-items: center;
  gap: 0.35rem;
  margin-top: 0.65rem;
  color: #dfe3ff;
  font-size: 0.82rem;
  font-weight: 800;
  text-decoration: none;
}

.sbs-card-cta:hover,
.sbs-card-cta:focus {
  color: #fff;
}

.sbs-card-cta::after {
  content: "->";
  color: #9adbd1;
}

.sbs-services-section {
  border-top: 1px solid rgba(222, 226, 230, 0.08);
}

.sbs-services-section > .container {
  padding-top: 3.55rem;
  padding-bottom: 3.55rem;
}

.sbs-situations-section > .container {
  padding-top: 3rem;
}

.sbs-services-section .sbs-section-heading-row {
  margin-bottom: 1.45rem;
}

.sbs-services-section .sbs-section-heading-row p {
  max-width: 24rem;
  margin-bottom: 0.1rem;
  color: #aebaca;
  font-size: 0.92rem;
  line-height: 1.5;
}

.sbs-services-section .sbs-section-heading h2,
.sbs-services-section .sbs-section-heading-row h2,
.sbs-fit-card h2,
.sbs-services-final-cta h2 {
  letter-spacing: 0;
}

.sbs-situation-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.75rem;
}

.sbs-situation-grid span {
  display: flex;
  min-height: 4.4rem;
  align-items: center;
  padding: 0.85rem 0.95rem;
  border: 1px solid rgba(222, 226, 230, 0.11);
  border-radius: 0.5rem;
  background: rgba(255, 255, 255, 0.035);
  color: #f5f1e8;
  font-size: 0.9rem;
  font-weight: 700;
  line-height: 1.28;
}

.sbs-service-detail-list {
  display: grid;
  gap: 0.95rem;
}

.sbs-service-detail {
  display: grid;
  grid-template-columns: minmax(15rem, 0.72fr) minmax(0, 1.28fr);
  gap: 1.2rem;
  padding: 1.25rem;
  border: 1px solid rgba(222, 226, 230, 0.12);
  border-radius: 0.5rem;
  background: rgba(17, 24, 36, 0.58);
}

.sbs-service-detail-title h3 {
  margin: 0.6rem 0 0;
  color: #f5f1e8;
  font-size: 1.34rem;
  line-height: 1.22;
  letter-spacing: 0;
}

.sbs-service-detail-body {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.95rem 1rem;
}

.sbs-service-detail-body div {
  padding-top: 0.75rem;
  border-top: 1px solid rgba(154, 219, 209, 0.2);
}

.sbs-service-detail-body strong {
  display: block;
  margin-bottom: 0.35rem;
  color: #9adbd1;
  font-size: 0.73rem;
  letter-spacing: 0;
  text-transform: uppercase;
}

.sbs-service-detail-body p {
  margin-bottom: 0;
  color: #c7d1df;
  font-size: 0.88rem;
  line-height: 1.48;
}

.sbs-fit-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}

.sbs-fit-card {
  padding: 1.25rem;
}

.sbs-fit-card h2 {
  margin: 0.6rem 0 1rem;
  color: #f5f1e8;
  font-size: 1.55rem;
  line-height: 1.2;
}

.sbs-fit-card li {
  font-size: 0.92rem;
}

.sbs-fit-not li::before {
  background: #f2d28f;
}

.sbs-services-final-section > .container {
  padding-top: 2rem;
}

.sbs-services-final-cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  padding: 1.4rem;
  background: linear-gradient(135deg, rgba(24, 34, 48, 0.92), rgba(18, 27, 39, 0.98));
}

.sbs-services-final-cta > div {
  max-width: 55rem;
}

.sbs-services-final-cta h2 {
  margin: 0.55rem 0 0.6rem;
  color: #f5f1e8;
  font-size: 1.75rem;
  line-height: 1.18;
}

.sbs-services-final-cta p {
  margin-bottom: 0;
  color: #c7d1df;
  line-height: 1.5;
}

.sbs-services-final-cta .btn {
  flex: 0 0 auto;
}

@media (max-width: 575.98px) {
  .navbar .container {
    gap: 0.75rem;
  }

  .navbar .navbar-brand {
    flex: 1 1 auto;
    width: auto !important;
  }

  .navbar .navbar-other {
    flex: 0 0 auto;
    margin-left: auto !important;
  }

  .sbs-brand-link {
    max-width: 100%;
    font-size: 1rem !important;
  }

  .sbs-brand-logo-mark {
    width: 2.15rem;
    height: 2.15rem;
    flex-basis: 2.15rem;
  }

  .sbs-eyebrow {
    align-items: flex-start;
    font-size: 0.66rem;
    line-height: 1.35;
  }

  .sbs-eyebrow::before {
    margin-top: 0.22rem;
  }
}

@media (max-width: 1199.98px) {
  .sbs-hero-title {
    font-size: 3.45rem;
  }

  .sbs-decision-grid,
  .sbs-situation-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .sbs-decision-card {
    min-height: 18.4rem;
  }

  .sbs-proof-strip {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }

  .sbs-proof-label {
    grid-column: 1 / -1;
    padding: 0.2rem 0.35rem;
  }
}

@media (max-width: 991.98px) {
  .sbs-home-hero > .container {
    padding-top: 2.75rem !important;
    padding-bottom: 3rem !important;
  }

  .sbs-services-page > .container {
    padding-top: 3rem;
    padding-bottom: 2.5rem;
  }

  .sbs-services-header,
  .sbs-services-section .sbs-section-heading-row,
  .sbs-services-final-cta {
    align-items: start;
    flex-direction: column;
  }

  .sbs-service-detail {
    grid-template-columns: 1fr;
  }

  .sbs-fit-grid {
    grid-template-columns: 1fr;
  }

  .sbs-services-final-cta .btn {
    width: 100%;
  }

  .sbs-intake-grid {
    grid-template-columns: 1fr;
    gap: 1.5rem;
  }

  .sbs-intake-copy {
    max-width: 44rem;
  }

  .sbs-hero-title {
    max-width: 12ch;
  }

  .sbs-proof-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .sbs-section-heading-row,
  .sbs-final-cta {
    align-items: start;
    flex-direction: column;
  }

  .sbs-final-cta .sbs-cta-row {
    width: 100%;
  }
}

@media (max-width: 575.98px) {
  .sbs-home-hero > .container {
    padding-top: 2.25rem !important;
    padding-bottom: 2.75rem !important;
  }

  .sbs-hero-title {
    max-width: 100%;
    font-size: 2.55rem;
  }

  .sbs-hero-lead {
    max-width: 100%;
    overflow-wrap: anywhere;
  }

  .sbs-home-hero .btn,
  .sbs-final-cta .btn {
    width: 100%;
  }

  .sbs-service-entry-grid,
  .sbs-proof-strip,
  .sbs-decision-grid,
  .sbs-situation-grid,
  .sbs-service-detail-body {
    grid-template-columns: 1fr;
  }

  .sbs-services-header h1 {
    font-size: 2.45rem;
  }

  .sbs-services-header .sbs-cta-row,
  .sbs-services-header .btn {
    width: 100%;
  }

  .sbs-decision-card {
    min-height: 0;
  }

  .sbs-services-section > .container {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }

  .sbs-service-detail,
  .sbs-fit-card,
  .sbs-services-final-cta {
    padding: 1.05rem;
  }

  .sbs-situation-grid span {
    min-height: 0;
  }

  .sbs-service-entry {
    min-height: 0;
  }

  .sbs-home-section > .container {
    padding-top: 3.2rem;
    padding-bottom: 3.2rem;
  }

  .sbs-section-heading h2,
  .sbs-final-cta h2 {
    font-size: 2rem;
  }

  .sbs-final-cta {
    padding: 1.1rem;
  }
}

.sbs-work-page {
  position: relative;
  overflow: hidden;
  overflow-x: clip;
  border-bottom: 1px solid rgba(222, 226, 230, 0.08);
  background:
    linear-gradient(135deg, rgba(12, 18, 28, 0.98), rgba(16, 29, 36, 0.96) 55%, rgba(24, 29, 43, 0.98)) !important;
}

.sbs-work-page::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image:
    linear-gradient(rgba(255, 255, 255, 0.045) 1px, transparent 1px),
    linear-gradient(90deg, rgba(255, 255, 255, 0.045) 1px, transparent 1px);
  background-size: 4rem 4rem;
  mask-image: linear-gradient(125deg, rgba(0, 0, 0, 0.1), #000 18%, #000 78%, rgba(0, 0, 0, 0.08));
  opacity: 0.34;
  pointer-events: none;
}

.sbs-work-page > .container {
  position: relative;
  z-index: 1;
  padding-top: 3.25rem;
  padding-bottom: 2.65rem;
}

.sbs-work-header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(18rem, 0.42fr);
  gap: 1.5rem;
  align-items: end;
}

.sbs-work-header-copy {
  max-width: 52rem;
}

.sbs-work-header h1 {
  margin: 0.75rem 0 0.45rem;
  color: #f5f1e8;
  font-size: 3.15rem;
  line-height: 1.02;
  letter-spacing: 0;
}

.sbs-work-mainline {
  margin-bottom: 0.35rem;
  color: #fff !important;
  font-size: 1.35rem;
  font-weight: 800;
  line-height: 1.25;
}

.sbs-work-header-copy p:last-child,
.sbs-work-note p {
  margin-bottom: 0;
  color: #c7d1df;
  line-height: 1.5;
}

.sbs-work-note {
  padding: 1rem;
  border: 1px solid rgba(222, 226, 230, 0.13);
  border-radius: 0.5rem;
  background: rgba(9, 14, 22, 0.56);
}

.sbs-work-note span {
  display: block;
  margin-bottom: 0.45rem;
  color: #f2d28f;
  font-size: 0.68rem;
  font-weight: 800;
  text-transform: uppercase;
}

.sbs-work-feature-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.85rem;
  margin-top: 1.5rem;
}

.sbs-work-card,
.sbs-work-detail,
.sbs-work-clarification,
.sbs-work-final-cta {
  border: 1px solid rgba(222, 226, 230, 0.13);
  border-radius: 0.5rem;
  background: rgba(17, 24, 36, 0.8);
  box-shadow: 0 1rem 2.6rem rgba(0, 0, 0, 0.16);
}

.sbs-work-card {
  display: flex;
  min-height: 31.2rem;
  flex-direction: column;
  padding: 0.75rem;
  transition: border-color 160ms ease, transform 160ms ease, background-color 160ms ease;
}

.sbs-work-card:hover,
.sbs-work-card:focus-within {
  border-color: rgba(154, 219, 209, 0.48);
  background: rgba(24, 34, 48, 0.94);
  transform: translateY(-2px);
}

.sbs-work-image-link {
  display: block;
  color: inherit;
}

.sbs-work-figure {
  aspect-ratio: 16 / 9;
  overflow: hidden;
  margin: 0;
  border: 1px solid rgba(222, 226, 230, 0.12);
  border-radius: 0.45rem;
  background: #0f1520;
}

.sbs-work-figure img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.sbs-work-figure-contain {
  display: flex;
  align-items: center;
  justify-content: center;
  background: radial-gradient(circle at 20% 10%, rgba(148, 217, 206, 0.24), transparent 18rem), #101720;
}

.sbs-work-figure-contain img {
  object-fit: contain;
  padding: 0.55rem;
}

.sbs-work-card-body {
  display: flex;
  flex: 1;
  flex-direction: column;
  padding: 0.95rem 0.2rem 0.1rem;
}

.sbs-work-card-head {
  display: grid;
  gap: 0.5rem;
  margin-bottom: 0.6rem;
}

.sbs-work-card h2,
.sbs-work-detail h3,
.sbs-work-final-cta h2 {
  letter-spacing: 0;
}

.sbs-work-card h2 {
  margin: 0;
  color: #fff;
  font-size: 1.18rem;
  line-height: 1.16;
}

.sbs-status-badge {
  display: inline-flex;
  width: fit-content;
  align-items: center;
  min-height: 1.55rem;
  padding: 0.25rem 0.48rem;
  border: 1px solid rgba(154, 219, 209, 0.28);
  border-radius: 999px;
  background: rgba(154, 219, 209, 0.1);
  color: #9adbd1;
  font-size: 0.62rem;
  font-weight: 800;
  line-height: 1.1;
  text-transform: uppercase;
}

.sbs-status-internal {
  border-color: rgba(191, 197, 255, 0.32);
  background: rgba(116, 126, 209, 0.14);
  color: #dfe3ff;
}

.sbs-status-research {
  border-color: rgba(242, 210, 143, 0.32);
  background: rgba(242, 210, 143, 0.1);
  color: #f2d28f;
}

.sbs-work-card p {
  margin-bottom: 0.8rem;
  color: #c7d1df;
  font-size: 0.84rem;
  line-height: 1.45;
}

.sbs-work-chip-row {
  display: flex;
  flex-wrap: wrap;
  gap: 0.42rem;
  margin-top: auto;
}

.sbs-work-chip-row span,
.sbs-work-proof-grid span {
  border: 1px solid rgba(222, 226, 230, 0.12);
  border-radius: 0.45rem;
  background: rgba(255, 255, 255, 0.04);
  color: #f5f1e8;
  font-size: 0.72rem;
  font-weight: 800;
  line-height: 1.25;
}

.sbs-work-chip-row span {
  padding: 0.38rem 0.48rem;
}

.sbs-work-action {
  display: inline-flex;
  width: fit-content;
  align-items: center;
  gap: 0.35rem;
  margin-top: 0.85rem;
  color: #dfe3ff;
  font-size: 0.82rem;
  font-weight: 800;
  text-decoration: none;
}

.sbs-work-action[href]:hover,
.sbs-work-action[href]:focus {
  color: #fff;
}

.sbs-work-action[href]::after {
  content: "->";
  color: #9adbd1;
}

.sbs-work-action-disabled {
  color: #8f9aae;
}

.sbs-work-section {
  border-top: 1px solid rgba(222, 226, 230, 0.08);
}

.sbs-work-section > .container {
  padding-top: 3.45rem;
  padding-bottom: 3.45rem;
}

.sbs-work-section .sbs-section-heading-row {
  margin-bottom: 1.35rem;
}

.sbs-work-section .sbs-section-heading-row p {
  max-width: 25rem;
  margin-bottom: 0.1rem;
  color: #aebaca;
  font-size: 0.92rem;
  line-height: 1.5;
}

.sbs-work-section .sbs-section-heading h2,
.sbs-work-section .sbs-section-heading-row h2 {
  letter-spacing: 0;
}

.sbs-work-proof-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.75rem;
}

.sbs-work-proof-grid span {
  display: flex;
  min-height: 4.35rem;
  align-items: center;
  padding: 0.85rem 0.95rem;
  font-size: 0.9rem;
}

.sbs-work-detail-list {
  display: grid;
  gap: 0.95rem;
}

.sbs-work-detail {
  display: grid;
  grid-template-columns: minmax(12rem, 0.35fr) minmax(0, 1fr);
  gap: 1.1rem;
  padding: 1.1rem;
  background: rgba(17, 24, 36, 0.58);
}

.sbs-work-detail-title h3 {
  margin: 0.65rem 0 0;
  color: #f5f1e8;
  font-size: 1.3rem;
  line-height: 1.18;
}

.sbs-work-detail-body {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 0.9rem;
}

.sbs-work-detail-body div {
  padding-top: 0.7rem;
  border-top: 1px solid rgba(154, 219, 209, 0.2);
}

.sbs-work-detail-body strong {
  display: block;
  margin-bottom: 0.32rem;
  color: #9adbd1;
  font-size: 0.68rem;
  letter-spacing: 0;
  text-transform: uppercase;
}

.sbs-work-detail-body p {
  margin-bottom: 0;
  color: #c7d1df;
  font-size: 0.78rem;
  line-height: 1.42;
}

.sbs-work-clarification {
  padding: 1.25rem;
}

.sbs-work-clarification p {
  max-width: 68rem;
  margin: 0.55rem 0 0;
  color: #d8e1ee;
  font-size: 1rem;
  line-height: 1.5;
}

.sbs-work-final-section > .container {
  padding-top: 2rem;
}

.sbs-work-final-cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2rem;
  padding: 1.35rem;
  background: linear-gradient(135deg, rgba(24, 34, 48, 0.92), rgba(18, 27, 39, 0.98));
}

.sbs-work-final-cta > div:first-child {
  max-width: 54rem;
}

.sbs-work-final-cta h2 {
  margin: 0.55rem 0 0;
  color: #f5f1e8;
  font-size: 1.7rem;
  line-height: 1.18;
}

.sbs-work-final-cta .sbs-cta-row {
  flex: 0 0 auto;
}

@media (max-width: 1199.98px) {
  .sbs-work-feature-grid,
  .sbs-work-proof-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .sbs-work-card {
    min-height: 28rem;
  }

  .sbs-work-detail {
    grid-template-columns: 1fr;
  }

  .sbs-work-detail-body {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 991.98px) {
  .sbs-work-page > .container {
    padding-top: 3rem;
    padding-bottom: 2.5rem;
  }

  .sbs-work-header,
  .sbs-work-final-cta {
    grid-template-columns: 1fr;
    align-items: start;
  }

  .sbs-work-final-cta {
    flex-direction: column;
  }

  .sbs-work-final-cta .sbs-cta-row {
    width: 100%;
  }
}

@media (max-width: 575.98px) {
  .sbs-work-header h1 {
    font-size: 2.45rem;
  }

  .sbs-work-mainline {
    font-size: 1.16rem;
  }

  .sbs-work-feature-grid,
  .sbs-work-proof-grid,
  .sbs-work-detail-body {
    grid-template-columns: 1fr;
  }

  .sbs-work-card {
    min-height: 0;
  }

  .sbs-work-section > .container {
    padding-top: 3rem;
    padding-bottom: 3rem;
  }

  .sbs-work-note,
  .sbs-work-detail,
  .sbs-work-clarification,
  .sbs-work-final-cta {
    padding: 1.05rem;
  }

  .sbs-work-final-cta .btn {
    width: 100%;
  }
}

.sbs-project-grid {
  align-items: stretch;
}

.sbs-project-grid .project.item {
  display: flex;
}

.sbs-project-card {
  display: flex;
  width: 100%;
  height: 100%;
  flex-direction: column;
  padding: 0.75rem;
  border: 1px solid rgba(164, 174, 198, 0.22);
  border-radius: 0.5rem;
  background: rgba(255, 255, 255, 0.78);
  box-shadow: 0 0.9rem 2rem rgba(30, 34, 40, 0.06);
  transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

.sbs-project-card:hover,
.sbs-project-card:focus-within {
  border-color: rgba(116, 126, 209, 0.38);
  box-shadow: 0 1.1rem 2.4rem rgba(30, 34, 40, 0.1);
  transform: translateY(-2px);
}

.sbs-project-figure {
  aspect-ratio: 16 / 9;
  overflow: hidden;
  border: 1px solid rgba(164, 174, 198, 0.18);
  border-radius: 0.45rem !important;
  background: #eef1f7;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.06);
}

.sbs-project-image {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.sbs-project-figure-contain {
  display: flex;
  align-items: center;
  justify-content: center;
  background: radial-gradient(circle at 20% 10%, rgba(148, 217, 206, 0.26), transparent 18rem), #101720;
}

.sbs-project-figure-contain .sbs-project-image {
  object-fit: contain;
  padding: 0.55rem;
}

.sbs-project-details {
  flex: 1;
}

.sbs-project-details .post-title {
  margin-bottom: 0.35rem;
}

.sbs-project-details p {
  margin-bottom: 0;
  color: #c7d1df;
  font-size: 0.92rem;
  line-height: 1.5;
}

html[data-sbs-theme="dark"] body {
  background: #0e131b;
  color: #d7deea;
}

html[data-sbs-theme="dark"] .content-wrapper,
html[data-sbs-theme="dark"] .page-frame,
html[data-sbs-theme="dark"] .wrapper,
html[data-sbs-theme="dark"] .bg-light,
html[data-sbs-theme="dark"] .bg-gray,
html[data-sbs-theme="dark"] .bg-soft-primary,
html[data-sbs-theme="dark"] .bg-pale-primary {
  background-color: #111824 !important;
  color: #d7deea;
}

html[data-sbs-theme="dark"] .bg-soft-primary,
html[data-sbs-theme="dark"] .bg-pale-primary {
  background: radial-gradient(circle at 20% 0%, rgba(116, 126, 209, 0.18), transparent 28rem), #101720 !important;
}

html[data-sbs-theme="dark"] .navbar-light,
html[data-sbs-theme="dark"] header.wrapper {
  background: rgba(15, 21, 30, 0.94) !important;
  border-bottom: 1px solid rgba(222, 226, 230, 0.1);
}

html[data-sbs-theme="dark"] .navbar-light .navbar-nav .nav-link,
html[data-sbs-theme="dark"] .navbar-light .navbar-brand,
html[data-sbs-theme="dark"] .link-dark,
html[data-sbs-theme="dark"] a.link-dark {
  color: #f5f1e8 !important;
}

html[data-sbs-theme="dark"] .navbar-light .navbar-nav .nav-link:hover,
html[data-sbs-theme="dark"] .navbar-light .navbar-nav .nav-link:focus {
  color: #bfc5ff !important;
}

html[data-sbs-theme="dark"] h1,
html[data-sbs-theme="dark"] h2,
html[data-sbs-theme="dark"] h3,
html[data-sbs-theme="dark"] h4,
html[data-sbs-theme="dark"] h5,
html[data-sbs-theme="dark"] h6,
html[data-sbs-theme="dark"] .display-1,
html[data-sbs-theme="dark"] .display-2,
html[data-sbs-theme="dark"] .display-3,
html[data-sbs-theme="dark"] .display-4,
html[data-sbs-theme="dark"] .display-5 {
  color: #f5f1e8;
}

html[data-sbs-theme="dark"] p,
html[data-sbs-theme="dark"] li,
html[data-sbs-theme="dark"] .lead {
  color: #c7d1df;
}

html[data-sbs-theme="dark"] .text-white,
html[data-sbs-theme="dark"] .text-white h1,
html[data-sbs-theme="dark"] .text-white h2,
html[data-sbs-theme="dark"] .text-white h3,
html[data-sbs-theme="dark"] .text-white p,
html[data-sbs-theme="dark"] .text-white .lead,
html[data-sbs-theme="dark"] .text-white a:not(.btn) {
  color: #fff !important;
}

html[data-sbs-theme="dark"] .text-muted,
html[data-sbs-theme="dark"] .text-ash {
  color: #9eacc0 !important;
}

html[data-sbs-theme="dark"] .card,
html[data-sbs-theme="dark"] .shadow-lg,
html[data-sbs-theme="dark"] .card.shadow-lg,
html[data-sbs-theme="dark"] .accordion-wrapper .card {
  border-color: rgba(222, 226, 230, 0.1) !important;
  background: #182230 !important;
  color: #d7deea;
  box-shadow: 0 1.2rem 3rem rgba(0, 0, 0, 0.22) !important;
}

html[data-sbs-theme="dark"] .card .post-title a,
html[data-sbs-theme="dark"] .card-title,
html[data-sbs-theme="dark"] .post-title,
html[data-sbs-theme="dark"] .icon-list.bullet-bg li,
html[data-sbs-theme="dark"] .accordion-wrapper .card-header button {
  color: #f5f1e8;
}

html[data-sbs-theme="dark"] figure.rounded,
html[data-sbs-theme="dark"] .rounded {
  border-color: rgba(222, 226, 230, 0.12);
}

html[data-sbs-theme="dark"] .btn-soft-primary {
  background: rgba(116, 126, 209, 0.18);
  color: #dfe3ff;
}

html[data-sbs-theme="dark"] .btn-outline-primary {
  border-color: rgba(191, 197, 255, 0.55);
  color: #dfe3ff;
}

html[data-sbs-theme="dark"] .form-control,
html[data-sbs-theme="dark"] .form-select {
  border-color: rgba(222, 226, 230, 0.14);
  background-color: #101720;
  color: #f5f1e8;
}

html[data-sbs-theme="dark"] .form-control::placeholder {
  color: #8d99ad;
}

html[data-sbs-theme="dark"] .sbs-brand-logo-mark {
  background: #fff;
}

html[data-sbs-theme="dark"] .sbs-project-card {
  border-color: rgba(222, 226, 230, 0.12);
  background: rgba(24, 34, 48, 0.84);
  box-shadow: 0 1.2rem 3rem rgba(0, 0, 0, 0.22);
}

html[data-sbs-theme="dark"] .sbs-project-card:hover,
html[data-sbs-theme="dark"] .sbs-project-card:focus-within {
  border-color: rgba(191, 197, 255, 0.36);
  box-shadow: 0 1.4rem 3.2rem rgba(0, 0, 0, 0.3);
}

html[data-sbs-theme="dark"] .sbs-project-figure {
  border-color: rgba(222, 226, 230, 0.1);
  background: #0f1520;
}

html[data-sbs-theme="dark"] .contact-guide-modal {
  --contact-panel: #151e2b;
  --contact-ink: #f5f1e8;
  --contact-muted: #adb9ca;
  --contact-line: rgba(222, 226, 230, 0.14);
}

html[data-sbs-theme="dark"] .contact-guide-modal .modal-content,
html[data-sbs-theme="dark"] .contact-guide-modal .modal-footer {
  background: #111824;
  color: var(--contact-ink);
}

html[data-sbs-theme="dark"] .contact-guide-modal .modal-header,
html[data-sbs-theme="dark"] .contact-guide-modal .modal-footer {
  border-color: var(--contact-line);
}

html[data-sbs-theme="dark"] .contact-guide-side {
  background: linear-gradient(145deg, rgba(116, 126, 209, 0.16), rgba(148, 217, 206, 0.08));
}

html[data-sbs-theme="dark"] .contact-guide-note,
html[data-sbs-theme="dark"] .contact-choice {
  border-color: var(--contact-line);
  background: rgba(255, 255, 255, 0.04);
}

html[data-sbs-theme="dark"] .contact-choice small,
html[data-sbs-theme="dark"] .contact-guide-modal .form-text {
  color: var(--contact-muted);
}

html[data-sbs-theme="dark"] .choice-input:checked + .contact-choice {
  border-color: #bfc5ff;
  background: rgba(116, 126, 209, 0.2);
}

html[data-sbs-theme="dark"] .btn-close {
  filter: invert(1) grayscale(100%);
}

@media (max-width: 991.98px) {
  html[data-sbs-theme="dark"] .offcanvas-nav {
    background: #111824;
  }
}

body.sbs-public-body {
  --sbs-public-paper: #f6f4ef;
  --sbs-public-linen: #e8e5df;
  --sbs-public-stone: #d9dbd2;
  --sbs-public-sage: #8fa18e;
  --sbs-public-deep-sage: #6f7f70;
  --sbs-public-graphite: #2f3437;
  --sbs-workshop-ink: #1f2933;
  --sbs-workshop-panel: #2f3941;
  background: var(--sbs-public-paper);
  color: var(--sbs-public-graphite);
}

html[data-sbs-theme="light"] body.sbs-public-body,
html[data-sbs-theme="light"] .sbs-public-body .content-wrapper {
  background: var(--sbs-public-paper) !important;
  color: var(--sbs-public-graphite);
}

html[data-sbs-theme="light"] .sbs-public-body header.wrapper,
html[data-sbs-theme="light"] .sbs-public-body .navbar-light {
  border-bottom: 1px solid rgba(47, 52, 55, 0.13);
  background: rgba(246, 244, 239, 0.96) !important;
  box-shadow: 0 0.8rem 2rem rgba(47, 52, 55, 0.06);
}

html[data-sbs-theme="light"] .sbs-public-body .navbar-light .navbar-nav .nav-link,
html[data-sbs-theme="light"] .sbs-public-body .navbar-light .navbar-brand,
html[data-sbs-theme="light"] .sbs-public-body .link-dark,
html[data-sbs-theme="light"] .sbs-public-body a.link-dark {
  color: var(--sbs-public-graphite) !important;
}

html[data-sbs-theme="light"] .sbs-public-body .navbar-light .navbar-nav .nav-link:hover,
html[data-sbs-theme="light"] .sbs-public-body .navbar-light .navbar-nav .nav-link:focus {
  color: var(--sbs-public-deep-sage) !important;
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-brand-logo-mark {
  background: #fff;
  border: 1px solid rgba(47, 52, 55, 0.12);
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-work-page,
html[data-sbs-theme="light"] .sbs-public-body .sbs-work-section {
  background-color: var(--sbs-public-paper) !important;
  color: var(--sbs-public-graphite);
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-work-page {
  border-bottom-color: rgba(47, 52, 55, 0.12);
  background:
    linear-gradient(180deg, rgba(246, 244, 239, 0.98), rgba(232, 229, 223, 0.92)) !important;
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-work-page::before {
  background-image:
    linear-gradient(rgba(111, 127, 112, 0.12) 1px, transparent 1px),
    linear-gradient(90deg, rgba(111, 127, 112, 0.12) 1px, transparent 1px);
  opacity: 0.24;
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-work-section {
  border-top-color: rgba(47, 52, 55, 0.12);
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-work-section:nth-of-type(2n) {
  background-color: var(--sbs-public-linen) !important;
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-eyebrow,
html[data-sbs-theme="light"] .sbs-public-body .sbs-card-kicker,
html[data-sbs-theme="light"] .sbs-public-body .sbs-work-detail-body strong {
  color: var(--sbs-public-deep-sage);
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-eyebrow::before {
  background: var(--sbs-public-sage);
  box-shadow: 0 0 0 0.25rem rgba(143, 161, 142, 0.22);
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-work-header h1,
html[data-sbs-theme="light"] .sbs-public-body .sbs-work-mainline,
html[data-sbs-theme="light"] .sbs-public-body .sbs-work-section .sbs-section-heading h2,
html[data-sbs-theme="light"] .sbs-public-body .sbs-work-section .sbs-section-heading-row h2,
html[data-sbs-theme="light"] .sbs-public-body .sbs-work-clarification p,
html[data-sbs-theme="light"] .sbs-public-body .sbs-work-final-cta h2 {
  color: var(--sbs-public-graphite) !important;
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-work-header-copy p:last-child,
html[data-sbs-theme="light"] .sbs-public-body .sbs-work-section .sbs-section-heading-row p,
html[data-sbs-theme="light"] .sbs-public-body .sbs-work-section .sbs-section-heading p,
html[data-sbs-theme="light"] .sbs-public-body .sbs-work-note p {
  color: rgba(47, 52, 55, 0.78);
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-work-note,
html[data-sbs-theme="light"] .sbs-public-body .sbs-work-card,
html[data-sbs-theme="light"] .sbs-public-body .sbs-work-clarification,
html[data-sbs-theme="light"] .sbs-public-body .sbs-work-final-cta {
  border-color: rgba(47, 52, 55, 0.14);
  background: rgba(255, 255, 255, 0.48);
  box-shadow: 0 1rem 2.6rem rgba(47, 52, 55, 0.08);
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-work-feature-grid {
  align-items: start;
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-work-card {
  min-height: 0;
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-work-note {
  background: rgba(232, 229, 223, 0.7);
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-work-note span {
  color: var(--sbs-public-deep-sage);
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-work-card:hover,
html[data-sbs-theme="light"] .sbs-public-body .sbs-work-card:focus-within {
  border-color: rgba(111, 127, 112, 0.42);
  background: #fff;
  box-shadow: 0 1.15rem 2.8rem rgba(47, 52, 55, 0.12);
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-work-card h2,
html[data-sbs-theme="light"] .sbs-public-body .sbs-work-card p {
  color: var(--sbs-public-graphite);
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-work-figure {
  border-color: rgba(47, 52, 55, 0.16);
  background: var(--sbs-workshop-ink);
  box-shadow: inset 0 0 0 1px rgba(246, 244, 239, 0.08);
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-status-badge {
  border-color: rgba(111, 127, 112, 0.34);
  background: rgba(143, 161, 142, 0.16);
  color: var(--sbs-public-deep-sage);
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-status-internal {
  border-color: rgba(47, 57, 65, 0.28);
  background: rgba(47, 57, 65, 0.08);
  color: var(--sbs-workshop-panel);
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-status-progress {
  border-color: rgba(143, 161, 142, 0.42);
  background: rgba(217, 219, 210, 0.48);
  color: var(--sbs-public-deep-sage);
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-status-research {
  border-color: rgba(111, 127, 112, 0.4);
  background: rgba(232, 229, 223, 0.78);
  color: #5f6f61;
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-work-chip-row span,
html[data-sbs-theme="light"] .sbs-public-body .sbs-work-proof-grid span {
  border-color: rgba(47, 52, 55, 0.14);
  background: rgba(246, 244, 239, 0.72);
  color: var(--sbs-public-graphite);
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-work-chip-row {
  margin-top: 0.55rem;
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-work-action {
  color: var(--sbs-public-deep-sage);
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-work-action[href]:hover,
html[data-sbs-theme="light"] .sbs-public-body .sbs-work-action[href]:focus {
  color: var(--sbs-workshop-ink);
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-work-action[href]::after {
  color: var(--sbs-public-deep-sage);
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-work-action-disabled {
  color: rgba(47, 52, 55, 0.48);
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-work-proof-grid span {
  background: rgba(255, 255, 255, 0.46);
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-work-detail {
  border-color: rgba(246, 244, 239, 0.12);
  background:
    linear-gradient(135deg, rgba(31, 41, 51, 0.98), rgba(47, 57, 65, 0.96)) !important;
  box-shadow: 0 1.3rem 3rem rgba(47, 52, 55, 0.16);
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-work-detail h3 {
  color: var(--sbs-public-paper);
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-work-detail-body div {
  border-top-color: rgba(143, 161, 142, 0.34);
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-work-detail-body p {
  color: rgba(246, 244, 239, 0.78);
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-work-detail .sbs-status-badge {
  border-color: rgba(143, 161, 142, 0.44);
  background: rgba(143, 161, 142, 0.14);
  color: #d9dbd2;
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-work-clarification {
  background: rgba(232, 229, 223, 0.74);
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-work-final-cta {
  background:
    linear-gradient(135deg, rgba(246, 244, 239, 0.92), rgba(232, 229, 223, 0.82));
}

html[data-sbs-theme="light"] .sbs-public-body .btn-primary {
  border-color: var(--sbs-public-deep-sage);
  background: var(--sbs-public-deep-sage);
  color: #fff;
}

html[data-sbs-theme="light"] .sbs-public-body .btn-primary:hover,
html[data-sbs-theme="light"] .sbs-public-body .btn-primary:focus {
  border-color: var(--sbs-public-graphite);
  background: var(--sbs-public-graphite);
  color: #fff;
}

html[data-sbs-theme="light"] .sbs-public-body .btn-outline-primary {
  border-color: rgba(47, 52, 55, 0.34);
  color: var(--sbs-public-graphite);
}

html[data-sbs-theme="light"] .sbs-public-body .btn-outline-primary:hover,
html[data-sbs-theme="light"] .sbs-public-body .btn-outline-primary:focus {
  border-color: var(--sbs-public-deep-sage);
  background: rgba(143, 161, 142, 0.14);
  color: var(--sbs-public-graphite);
}

html[data-sbs-theme="light"] .sbs-public-body footer.bg-dark {
  border-top: 1px solid rgba(47, 52, 55, 0.12);
  background: var(--sbs-public-linen) !important;
  color: var(--sbs-public-graphite);
}

html[data-sbs-theme="light"] .sbs-public-body footer .text-white,
html[data-sbs-theme="light"] .sbs-public-body footer h3,
html[data-sbs-theme="light"] .sbs-public-body footer h4,
html[data-sbs-theme="light"] .sbs-public-body footer p,
html[data-sbs-theme="light"] .sbs-public-body footer address,
html[data-sbs-theme="light"] .sbs-public-body footer a {
  color: var(--sbs-public-graphite) !important;
}

html[data-sbs-theme="light"] .sbs-public-body footer a:hover,
html[data-sbs-theme="light"] .sbs-public-body footer a:focus {
  color: var(--sbs-public-deep-sage) !important;
}

@media (max-width: 991.98px) {
  html[data-sbs-theme="light"] .sbs-public-body .offcanvas-nav {
    background: var(--sbs-public-paper);
  }
}

html[data-sbs-theme="light"] .sbs-public-body .page-frame {
  background: var(--sbs-public-paper) !important;
}

html[data-sbs-theme="light"] .sbs-public-body .wrapper.bg-light,
html[data-sbs-theme="light"] .sbs-public-body .wrapper.bg-gray,
html[data-sbs-theme="light"] .sbs-public-body .wrapper.bg-soft-primary,
html[data-sbs-theme="light"] .sbs-public-body .wrapper.bg-pale-primary,
html[data-sbs-theme="light"] .sbs-public-body .sbs-home-section,
html[data-sbs-theme="light"] .sbs-public-body .sbs-services-section {
  background-color: var(--sbs-public-paper) !important;
  color: var(--sbs-public-graphite);
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-home-section:nth-of-type(2n),
html[data-sbs-theme="light"] .sbs-public-body .sbs-services-section:nth-of-type(2n),
html[data-sbs-theme="light"] .sbs-public-body.sbs-about-body .wrapper.bg-light {
  background-color: var(--sbs-public-linen) !important;
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-home-hero,
html[data-sbs-theme="light"] .sbs-public-body .sbs-services-page,
html[data-sbs-theme="light"] .sbs-public-body.sbs-about-body .wrapper.bg-gray {
  border-bottom: 1px solid rgba(47, 52, 55, 0.12);
  background:
    linear-gradient(180deg, rgba(246, 244, 239, 0.98), rgba(232, 229, 223, 0.92)) !important;
  color: var(--sbs-public-graphite);
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-home-hero::before,
html[data-sbs-theme="light"] .sbs-public-body .sbs-services-page::before {
  background-image:
    linear-gradient(rgba(111, 127, 112, 0.12) 1px, transparent 1px),
    linear-gradient(90deg, rgba(111, 127, 112, 0.12) 1px, transparent 1px);
  opacity: 0.22;
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-home-hero::after {
  background: linear-gradient(0deg, rgba(143, 161, 142, 0.16), transparent);
}

html[data-sbs-theme="light"] .sbs-public-body h1,
html[data-sbs-theme="light"] .sbs-public-body h2,
html[data-sbs-theme="light"] .sbs-public-body h3,
html[data-sbs-theme="light"] .sbs-public-body h4,
html[data-sbs-theme="light"] .sbs-public-body h5,
html[data-sbs-theme="light"] .sbs-public-body h6,
html[data-sbs-theme="light"] .sbs-public-body .display-1,
html[data-sbs-theme="light"] .sbs-public-body .display-2,
html[data-sbs-theme="light"] .sbs-public-body .display-3,
html[data-sbs-theme="light"] .sbs-public-body .display-4,
html[data-sbs-theme="light"] .sbs-public-body .text-white,
html[data-sbs-theme="light"] .sbs-public-body .sbs-home-hero .text-white,
html[data-sbs-theme="light"] .sbs-public-body .sbs-home-hero h1 {
  color: var(--sbs-public-graphite) !important;
}

html[data-sbs-theme="light"] .sbs-public-body p,
html[data-sbs-theme="light"] .sbs-public-body li,
html[data-sbs-theme="light"] .sbs-public-body .lead,
html[data-sbs-theme="light"] .sbs-public-body .sbs-hero-lead,
html[data-sbs-theme="light"] .sbs-public-body .sbs-section-heading p:last-child,
html[data-sbs-theme="light"] .sbs-public-body .sbs-final-cta p:last-child {
  color: rgba(47, 52, 55, 0.78) !important;
}

html[data-sbs-theme="light"] .sbs-public-body .btn-outline-white {
  border-color: rgba(47, 52, 55, 0.34);
  color: var(--sbs-public-graphite);
}

html[data-sbs-theme="light"] .sbs-public-body .btn-outline-white:hover,
html[data-sbs-theme="light"] .sbs-public-body .btn-outline-white:focus {
  border-color: var(--sbs-public-deep-sage);
  background: rgba(143, 161, 142, 0.14);
  color: var(--sbs-public-graphite);
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-service-entry,
html[data-sbs-theme="light"] .sbs-public-body .sbs-service-overview-card,
html[data-sbs-theme="light"] .sbs-public-body .sbs-process-card,
html[data-sbs-theme="light"] .sbs-public-body .sbs-project-card,
html[data-sbs-theme="light"] .sbs-public-body .sbs-decision-card,
html[data-sbs-theme="light"] .sbs-public-body .sbs-fit-card,
html[data-sbs-theme="light"] .sbs-public-body .sbs-proof-strip,
html[data-sbs-theme="light"] .sbs-public-body .sbs-final-cta,
html[data-sbs-theme="light"] .sbs-public-body .sbs-services-final-cta,
html[data-sbs-theme="light"] .sbs-public-body .sbs-situation-grid span {
  border-color: rgba(47, 52, 55, 0.14);
  background: rgba(255, 255, 255, 0.5);
  color: var(--sbs-public-graphite);
  box-shadow: 0 1rem 2.6rem rgba(47, 52, 55, 0.08);
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-service-entry:hover,
html[data-sbs-theme="light"] .sbs-public-body .sbs-service-entry:focus,
html[data-sbs-theme="light"] .sbs-public-body .sbs-service-overview-card:hover,
html[data-sbs-theme="light"] .sbs-public-body .sbs-service-overview-card:focus,
html[data-sbs-theme="light"] .sbs-public-body .sbs-decision-card:hover,
html[data-sbs-theme="light"] .sbs-public-body .sbs-decision-card:focus-within,
html[data-sbs-theme="light"] .sbs-public-body .sbs-project-card:hover,
html[data-sbs-theme="light"] .sbs-public-body .sbs-project-card:focus-within {
  border-color: rgba(111, 127, 112, 0.42);
  background: #fff;
  color: var(--sbs-public-graphite);
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-service-entry strong,
html[data-sbs-theme="light"] .sbs-public-body .sbs-service-overview-card h3,
html[data-sbs-theme="light"] .sbs-public-body .sbs-process-card h3,
html[data-sbs-theme="light"] .sbs-public-body .sbs-decision-card h2,
html[data-sbs-theme="light"] .sbs-public-body .sbs-proof-strip strong,
html[data-sbs-theme="light"] .sbs-public-body .sbs-project-details .post-title a {
  color: var(--sbs-public-graphite) !important;
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-service-entry span:last-child,
html[data-sbs-theme="light"] .sbs-public-body .sbs-service-overview-card p,
html[data-sbs-theme="light"] .sbs-public-body .sbs-process-card p,
html[data-sbs-theme="light"] .sbs-public-body .sbs-decision-card p,
html[data-sbs-theme="light"] .sbs-public-body .sbs-decision-card li,
html[data-sbs-theme="light"] .sbs-public-body .sbs-proof-strip span,
html[data-sbs-theme="light"] .sbs-public-body .sbs-project-details p {
  color: rgba(47, 52, 55, 0.78) !important;
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-proof-label,
html[data-sbs-theme="light"] .sbs-public-body .sbs-good-for,
html[data-sbs-theme="light"] .sbs-public-body .sbs-card-cta {
  color: var(--sbs-public-deep-sage);
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-proof-strip a,
html[data-sbs-theme="light"] .sbs-public-body .sbs-work-proof-grid span {
  border-color: rgba(47, 52, 55, 0.12);
  background: rgba(246, 244, 239, 0.72);
  color: var(--sbs-public-graphite);
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-service-detail,
html[data-sbs-theme="light"] .sbs-public-body.sbs-services-body .sbs-service-detail {
  border-color: rgba(246, 244, 239, 0.12);
  background:
    linear-gradient(135deg, rgba(31, 41, 51, 0.98), rgba(47, 57, 65, 0.96)) !important;
  box-shadow: 0 1.3rem 3rem rgba(47, 52, 55, 0.16);
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-service-detail h3,
html[data-sbs-theme="light"] .sbs-public-body .sbs-service-detail-body strong {
  color: var(--sbs-public-paper);
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-service-detail-body p {
  color: rgba(246, 244, 239, 0.78) !important;
}

html[data-sbs-theme="light"] .sbs-public-body.sbs-about-body figure.rounded {
  border: 1px solid rgba(47, 52, 55, 0.12);
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-work-detail h3,
html[data-sbs-theme="light"] .sbs-public-body .sbs-work-detail-body strong {
  color: var(--sbs-public-paper) !important;
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-work-detail-body p {
  color: rgba(246, 244, 239, 0.78) !important;
}

.sbs-about-page {
  position: relative;
  overflow: hidden;
  overflow-x: clip;
  border-bottom: 1px solid rgba(222, 226, 230, 0.08);
  background:
    radial-gradient(circle at 82% 18%, rgba(148, 217, 206, 0.12), transparent 18rem),
    linear-gradient(135deg, rgba(12, 18, 28, 0.98), rgba(16, 29, 36, 0.96) 58%, rgba(24, 29, 43, 0.98)) !important;
}

.sbs-about-page > .container {
  padding-top: 3.4rem;
  padding-bottom: 2.8rem;
}

.sbs-about-intro {
  display: grid;
  grid-template-columns: minmax(0, 1.04fr) minmax(22rem, 0.72fr);
  gap: 2rem;
  align-items: end;
}

.sbs-about-copy {
  max-width: 49rem;
}

.sbs-about-copy h1 {
  margin: 0.8rem 0 0.75rem;
  color: #f5f1e8;
  font-size: 4rem;
  line-height: 1.03;
  letter-spacing: 0;
}

.sbs-about-copy > p {
  max-width: 42rem;
  margin-bottom: 1.35rem;
  color: #c7d1df;
  font-size: 1.08rem;
  line-height: 1.55;
}

.sbs-about-panel,
.sbs-about-card,
.sbs-about-note {
  border: 1px solid rgba(222, 226, 230, 0.13);
  border-radius: 0.5rem;
  background: rgba(17, 24, 36, 0.78);
  box-shadow: 0 1rem 2.6rem rgba(0, 0, 0, 0.16);
}

.sbs-about-panel {
  display: grid;
  gap: 1rem;
  padding: 1.2rem;
}

.sbs-about-panel div + div {
  padding-top: 1rem;
  border-top: 1px solid rgba(222, 226, 230, 0.12);
}

.sbs-about-panel strong,
.sbs-about-card h2,
.sbs-about-note h3 {
  display: block;
  margin: 0.45rem 0 0.4rem;
  color: #f5f1e8;
  font-size: 1.22rem;
  line-height: 1.18;
}

.sbs-about-panel p,
.sbs-about-card p,
.sbs-about-note p {
  margin-bottom: 0;
  color: #c7d1df;
  font-size: 0.9rem;
  line-height: 1.5;
}

.sbs-about-card-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 0.85rem;
  margin-top: 1.6rem;
}

.sbs-about-card {
  min-height: 10.5rem;
  padding: 1.05rem;
}

.sbs-about-section {
  border-top: 1px solid rgba(222, 226, 230, 0.08);
}

.sbs-about-section > .container {
  padding-top: 3.6rem;
  padding-bottom: 3.6rem;
}

.sbs-about-section h2 {
  margin: 0.55rem 0 0.75rem;
  color: #f5f1e8;
  font-size: 2.35rem;
  line-height: 1.12;
}

.sbs-about-section p {
  color: #c7d1df;
}

.sbs-about-situation-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 0.75rem;
}

.sbs-about-situation-grid span {
  display: flex;
  min-height: 4rem;
  align-items: center;
  padding: 0.85rem 1rem;
  border: 1px solid rgba(222, 226, 230, 0.12);
  border-radius: 0.5rem;
  background: rgba(17, 24, 36, 0.64);
  color: #f5f1e8;
  font-weight: 700;
  line-height: 1.25;
}

.sbs-about-media-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(16rem, 0.72fr) minmax(0, 1fr);
  gap: 0.85rem;
  align-items: stretch;
  margin-top: 2.4rem;
}

.sbs-about-media-row figure {
  min-height: 12rem;
  margin: 0;
  overflow: hidden;
  border: 1px solid rgba(222, 226, 230, 0.12);
  border-radius: 0.5rem;
}

.sbs-about-media-row img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.sbs-about-note {
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 1.15rem;
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-about-page {
  border-bottom: 1px solid rgba(47, 52, 55, 0.12);
  background:
    linear-gradient(180deg, rgba(246, 244, 239, 0.98), rgba(232, 229, 223, 0.92)) !important;
  color: var(--sbs-public-graphite);
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-about-copy h1,
html[data-sbs-theme="light"] .sbs-public-body .sbs-about-panel strong,
html[data-sbs-theme="light"] .sbs-public-body .sbs-about-card h2,
html[data-sbs-theme="light"] .sbs-public-body .sbs-about-note h3,
html[data-sbs-theme="light"] .sbs-public-body .sbs-about-section h2 {
  color: var(--sbs-public-graphite) !important;
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-about-copy > p,
html[data-sbs-theme="light"] .sbs-public-body .sbs-about-panel p,
html[data-sbs-theme="light"] .sbs-public-body .sbs-about-card p,
html[data-sbs-theme="light"] .sbs-public-body .sbs-about-note p,
html[data-sbs-theme="light"] .sbs-public-body .sbs-about-section p {
  color: rgba(47, 52, 55, 0.78) !important;
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-about-panel,
html[data-sbs-theme="light"] .sbs-public-body .sbs-about-card,
html[data-sbs-theme="light"] .sbs-public-body .sbs-about-note,
html[data-sbs-theme="light"] .sbs-public-body .sbs-about-situation-grid span {
  border-color: rgba(47, 52, 55, 0.14);
  background: rgba(255, 255, 255, 0.52);
  color: var(--sbs-public-graphite);
  box-shadow: 0 1rem 2.6rem rgba(47, 52, 55, 0.08);
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-about-panel div + div,
html[data-sbs-theme="light"] .sbs-public-body .sbs-about-media-row figure {
  border-color: rgba(47, 52, 55, 0.12);
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-about-situation-grid span {
  color: var(--sbs-public-graphite);
}

@media (max-width: 1199.98px) {
  .sbs-about-card-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 991.98px) {
  .sbs-about-intro,
  .sbs-about-media-row {
    grid-template-columns: 1fr;
  }

  .sbs-about-copy h1 {
    font-size: 3rem;
  }
}

@media (max-width: 575.98px) {
  .sbs-about-card-grid,
  .sbs-about-situation-grid {
    grid-template-columns: 1fr;
  }
}

/* Sorenson brand system: Public House welcomes, Workshop builds. */
html[data-sbs-theme="light"] body.sbs-public-body {
  --sbs-public-paper: var(--sbs-public-house-paper);
  --sbs-public-linen: var(--sbs-warm-linen);
  --sbs-public-stone: var(--sbs-stone);
  --sbs-public-sage: var(--sbs-sorenson-sage);
  --sbs-public-deep-sage: var(--sbs-deep-sage);
  --sbs-public-graphite: var(--sbs-graphite);
  --sbs-paper-section-bg: var(--sbs-public-house-paper);
  --sbs-linen-section-bg: var(--sbs-warm-linen);
  --sbs-workshop-section-bg: var(--sbs-cellar-charcoal);
  --sbs-card-bg: var(--sbs-elevated-paper);
  --sbs-card-bg-hover: rgba(255, 255, 255, 0.78);
  --sbs-input-bg: rgba(255, 255, 255, 0.66);
  --sbs-header-bg: rgba(246, 244, 239, 0.94);
  --sbs-footer-bg: var(--sbs-warm-linen);
  --sbs-section-gradient: linear-gradient(180deg, rgba(246, 244, 239, 0.98), rgba(246, 244, 239, 0.98));
  --sbs-linen-gradient: linear-gradient(180deg, rgba(232, 229, 223, 0.95), rgba(232, 229, 223, 0.92));
}

html[data-sbs-theme="dark"] body.sbs-public-body {
  --sbs-page-bg: #1d2524;
  --sbs-section-bg: #202927;
  --sbs-section-alt-bg: #28322d;
  --sbs-elevated-paper: rgba(47, 57, 65, 0.72);
  --sbs-elevated-paper-strong: rgba(63, 74, 70, 0.82);
  --sbs-text: #e7e0d2;
  --sbs-muted-text: rgba(219, 216, 208, 0.75);
  --sbs-border-rule: rgba(219, 216, 208, 0.13);
  --sbs-border-rule-strong: rgba(219, 216, 208, 0.24);
  --sbs-sage-accent: var(--sbs-pine-shadow);
  --sbs-deep-sage-accent: var(--sbs-sorenson-sage);
  --sbs-public-paper: #1d2524;
  --sbs-public-linen: #28322d;
  --sbs-public-stone: var(--sbs-tool-steel);
  --sbs-public-sage: var(--sbs-pine-shadow);
  --sbs-public-deep-sage: var(--sbs-sorenson-sage);
  --sbs-public-graphite: #e7e0d2;
  --sbs-paper-section-bg: #1d2524;
  --sbs-linen-section-bg: #28322d;
  --sbs-workshop-section-bg: var(--sbs-cellar-charcoal);
  --sbs-card-bg: rgba(47, 57, 65, 0.72);
  --sbs-card-bg-hover: rgba(63, 74, 70, 0.84);
  --sbs-input-bg: rgba(31, 41, 51, 0.74);
  --sbs-header-bg: rgba(29, 37, 36, 0.94);
  --sbs-footer-bg: #1a211f;
  --sbs-section-gradient: linear-gradient(180deg, rgba(29, 37, 36, 0.98), rgba(32, 41, 39, 0.98));
  --sbs-linen-gradient: linear-gradient(180deg, rgba(40, 50, 45, 0.96), rgba(34, 43, 40, 0.96));
  color-scheme: dark;
}

html[data-sbs-theme] body.sbs-public-body {
  background: var(--sbs-page-bg) !important;
  color: var(--sbs-text) !important;
}

html[data-sbs-theme] .sbs-public-body .content-wrapper,
html[data-sbs-theme] .sbs-public-body .page-frame {
  background: var(--sbs-page-bg) !important;
  color: var(--sbs-text) !important;
}

html[data-sbs-theme] .sbs-public-body .sbs-site-header,
html[data-sbs-theme] .sbs-public-body header.wrapper.sbs-site-header,
html[data-sbs-theme] .sbs-public-body .navbar-light {
  border-bottom: 1px solid var(--sbs-border-rule);
  background: var(--sbs-header-bg) !important;
  box-shadow: 0 0.8rem 2rem rgba(47, 52, 55, 0.06);
}

html[data-sbs-theme="dark"] .sbs-public-body .sbs-site-header,
html[data-sbs-theme="dark"] .sbs-public-body header.wrapper.sbs-site-header,
html[data-sbs-theme="dark"] .sbs-public-body .navbar-light {
  box-shadow: 0 0.8rem 2rem rgba(0, 0, 0, 0.18);
}

html[data-sbs-theme] .sbs-public-body .navbar-light .navbar-nav .nav-link,
html[data-sbs-theme] .sbs-public-body .navbar-light .navbar-brand,
html[data-sbs-theme] .sbs-public-body .link-dark,
html[data-sbs-theme] .sbs-public-body a.link-dark {
  color: var(--sbs-text) !important;
}

html[data-sbs-theme] .sbs-public-body .navbar-light .navbar-nav .nav-link:hover,
html[data-sbs-theme] .sbs-public-body .navbar-light .navbar-nav .nav-link:focus,
html[data-sbs-theme] .sbs-public-body .navbar-light .navbar-nav .nav-link.active {
  color: var(--sbs-deep-sage-accent) !important;
}

html[data-sbs-theme] .sbs-public-body .sbs-brand-logo-mark {
  border: 1px solid var(--sbs-border-rule);
  background: #fff;
  box-shadow: 0 0.35rem 1rem rgba(47, 52, 55, 0.12);
}

html[data-sbs-theme] .sbs-public-body .sbs-public-section {
  border-top: 1px solid var(--sbs-border-rule);
  color: var(--sbs-text);
}

html[data-sbs-theme] .sbs-public-body .sbs-paper-section,
html[data-sbs-theme] .sbs-public-body .wrapper.sbs-paper-section {
  background-color: var(--sbs-paper-section-bg) !important;
  background-image: var(--sbs-paper-texture), var(--sbs-section-gradient) !important;
  background-repeat: repeat, no-repeat;
  background-size: 480px 480px, auto;
  background-blend-mode: multiply, normal;
}

html[data-sbs-theme] .sbs-public-body .sbs-linen-section,
html[data-sbs-theme] .sbs-public-body .wrapper.sbs-linen-section {
  background-color: var(--sbs-linen-section-bg) !important;
  background-image: var(--sbs-paper-texture), var(--sbs-linen-gradient) !important;
  background-repeat: repeat, no-repeat;
  background-size: 520px 520px, auto;
  background-blend-mode: multiply, normal;
}

html[data-sbs-theme="dark"] .sbs-public-body .sbs-paper-section,
html[data-sbs-theme="dark"] .sbs-public-body .sbs-linen-section {
  background-blend-mode: soft-light, normal;
}

html[data-sbs-theme="dark"] .sbs-public-body .sbs-paper-section,
html[data-sbs-theme="dark"] .sbs-public-body .wrapper.sbs-paper-section {
  background-color: var(--sbs-paper-section-bg) !important;
  background-image:
    radial-gradient(circle at 16% 10%, rgba(143, 161, 142, 0.13), transparent 24rem),
    radial-gradient(circle at 88% 4%, rgba(184, 155, 94, 0.08), transparent 22rem),
    var(--sbs-paper-texture),
    var(--sbs-section-gradient) !important;
  background-repeat: no-repeat, no-repeat, repeat, no-repeat;
  background-size: auto, auto, 560px 560px, auto;
  background-blend-mode: screen, screen, soft-light, normal;
}

html[data-sbs-theme="dark"] .sbs-public-body .sbs-linen-section,
html[data-sbs-theme="dark"] .sbs-public-body .wrapper.sbs-linen-section {
  background-color: var(--sbs-linen-section-bg) !important;
  background-image:
    radial-gradient(circle at 82% 8%, rgba(184, 155, 94, 0.08), transparent 24rem),
    var(--sbs-paper-texture),
    var(--sbs-linen-gradient) !important;
  background-repeat: no-repeat, repeat, no-repeat;
  background-size: auto, 580px 580px, auto;
  background-blend-mode: screen, soft-light, normal;
}

html[data-sbs-theme] .sbs-public-body .sbs-workshop-section,
html[data-sbs-theme] .sbs-public-body .wrapper.sbs-workshop-section {
  border-color: var(--sbs-workshop-border);
  background:
    var(--sbs-paper-texture),
    linear-gradient(135deg, var(--sbs-dark-workshop-bg), var(--sbs-dark-workshop-surface)) !important;
  background-repeat: repeat, no-repeat;
  background-size: 560px 560px, auto;
  background-blend-mode: soft-light, normal;
  color: var(--sbs-workshop-text);
}

html[data-sbs-theme] .sbs-public-body .sbs-home-hero,
html[data-sbs-theme] .sbs-public-body .sbs-services-page,
html[data-sbs-theme] .sbs-public-body .sbs-work-page,
html[data-sbs-theme] .sbs-public-body .sbs-about-page,
html[data-sbs-theme] .sbs-public-body .sbs-contact-page {
  border-bottom: 1px solid var(--sbs-border-rule);
  color: var(--sbs-text);
}

html[data-sbs-theme] .sbs-public-body .sbs-home-hero {
  background:
    var(--sbs-paper-texture),
    linear-gradient(180deg, var(--sbs-paper-section-bg), var(--sbs-section-alt-bg)) !important;
  background-size: 480px 480px, auto;
  background-blend-mode: multiply, normal;
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-home-hero {
  background:
    linear-gradient(180deg, rgba(246, 244, 239, 0.98), rgba(232, 229, 223, 0.9)),
    var(--sbs-paper-texture) !important;
  background-position: center, center;
  background-repeat: no-repeat, repeat;
  background-size: auto, 480px 480px;
  background-blend-mode: normal, multiply;
}

html[data-sbs-theme="dark"] .sbs-public-body .sbs-home-hero {
  background:
    radial-gradient(circle at 18% 12%, rgba(143, 161, 142, 0.16), transparent 26rem),
    radial-gradient(circle at 86% 0%, rgba(184, 155, 94, 0.1), transparent 24rem),
    var(--sbs-paper-texture),
    linear-gradient(135deg, #1b2322, #26302c 54%, #202a2d) !important;
  background-repeat: no-repeat, no-repeat, repeat, no-repeat;
  background-size: auto, auto, 560px 560px, auto;
  background-blend-mode: screen, screen, soft-light, normal;
}

html[data-sbs-theme] .sbs-public-body .sbs-home-hero::before,
html[data-sbs-theme] .sbs-public-body .sbs-services-page::before,
html[data-sbs-theme] .sbs-public-body .sbs-work-page::before {
  background-image:
    linear-gradient(var(--sbs-border-rule) 1px, transparent 1px),
    linear-gradient(90deg, var(--sbs-border-rule) 1px, transparent 1px);
  opacity: 0.16;
}

html[data-sbs-theme] .sbs-public-body .sbs-home-hero::after {
  background: linear-gradient(0deg, rgba(143, 161, 142, 0.14), transparent);
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-home-hero::before {
  opacity: 0;
}

html[data-sbs-theme="dark"] .sbs-public-body .sbs-home-hero::before,
html[data-sbs-theme="dark"] .sbs-public-body .sbs-services-page::before,
html[data-sbs-theme="dark"] .sbs-public-body .sbs-work-page::before {
  opacity: 0;
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-home-hero::after {
  inset: auto 0 0;
  height: 0.42rem;
  background: linear-gradient(90deg, var(--sbs-deep-sage-accent), rgba(184, 155, 94, 0.58), transparent);
  opacity: 0.62;
}

html[data-sbs-theme] .sbs-public-body h1,
html[data-sbs-theme] .sbs-public-body h2,
html[data-sbs-theme] .sbs-public-body h3,
html[data-sbs-theme] .sbs-public-body h4,
html[data-sbs-theme] .sbs-public-body h5,
html[data-sbs-theme] .sbs-public-body h6,
html[data-sbs-theme] .sbs-public-body .display-1,
html[data-sbs-theme] .sbs-public-body .display-2,
html[data-sbs-theme] .sbs-public-body .display-3,
html[data-sbs-theme] .sbs-public-body .display-4,
html[data-sbs-theme] .sbs-public-body .display-5,
html[data-sbs-theme] .sbs-public-body .text-white,
html[data-sbs-theme] .sbs-public-body .text-inverse,
html[data-sbs-theme] .sbs-public-body .sbs-home-hero .text-white {
  color: var(--sbs-text) !important;
}

html[data-sbs-theme] .sbs-public-body .sbs-hero-title {
  max-width: 12.8ch;
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-hero-title {
  font-size: clamp(3.2rem, 5.8vw, 4.8rem);
}

html[data-sbs-theme] .sbs-public-body p,
html[data-sbs-theme] .sbs-public-body li,
html[data-sbs-theme] .sbs-public-body .lead,
html[data-sbs-theme] .sbs-public-body .sbs-hero-lead,
html[data-sbs-theme] .sbs-public-body .sbs-section-heading p,
html[data-sbs-theme] .sbs-public-body .sbs-section-heading-row p {
  color: var(--sbs-muted-text) !important;
}

html[data-sbs-theme] .sbs-public-body .sbs-workshop-section h1,
html[data-sbs-theme] .sbs-public-body .sbs-workshop-section h2,
html[data-sbs-theme] .sbs-public-body .sbs-workshop-section h3,
html[data-sbs-theme] .sbs-public-body .sbs-workshop-section strong {
  color: var(--sbs-workshop-text) !important;
}

html[data-sbs-theme] .sbs-public-body .sbs-workshop-section p,
html[data-sbs-theme] .sbs-public-body .sbs-workshop-section li {
  color: rgba(219, 216, 208, 0.78) !important;
}

html[data-sbs-theme] .sbs-public-body .sbs-eyebrow,
html[data-sbs-theme] .sbs-public-body .sbs-card-kicker,
html[data-sbs-theme] .sbs-public-body .contact-eyebrow,
html[data-sbs-theme] .sbs-public-body .contact-progress-pill {
  color: var(--sbs-deep-sage-accent);
  letter-spacing: 0.06em;
}

html[data-sbs-theme] .sbs-public-body .sbs-eyebrow::before {
  background: var(--sbs-sage-accent);
  box-shadow: 0 0 0 0.25rem rgba(143, 161, 142, 0.18);
}

html[data-sbs-theme] .sbs-public-body .sbs-workshop-section .sbs-card-kicker,
html[data-sbs-theme] .sbs-public-body .sbs-workshop-section .sbs-eyebrow {
  color: var(--sbs-oat);
}

html[data-sbs-theme] .sbs-public-body .sbs-paper-card,
html[data-sbs-theme] .sbs-public-body .sbs-service-entry,
html[data-sbs-theme] .sbs-public-body .sbs-service-overview-card,
html[data-sbs-theme] .sbs-public-body .sbs-process-card,
html[data-sbs-theme] .sbs-public-body .sbs-project-card,
html[data-sbs-theme] .sbs-public-body .sbs-decision-card,
html[data-sbs-theme] .sbs-public-body .sbs-service-detail.sbs-paper-card,
html[data-sbs-theme] .sbs-public-body .sbs-about-panel,
html[data-sbs-theme] .sbs-public-body .sbs-about-card,
html[data-sbs-theme] .sbs-public-body .sbs-about-note,
html[data-sbs-theme] .sbs-public-body .sbs-final-cta,
html[data-sbs-theme] .sbs-public-body .sbs-services-final-cta,
html[data-sbs-theme] .sbs-public-body .sbs-work-final-cta {
  border: 1px solid var(--sbs-border-rule);
  background: var(--sbs-card-bg) !important;
  color: var(--sbs-text);
  box-shadow: var(--sbs-shadow-soft);
}

html[data-sbs-theme] .sbs-public-body .sbs-paper-card:hover,
html[data-sbs-theme] .sbs-public-body .sbs-paper-card:focus-within,
html[data-sbs-theme] .sbs-public-body .sbs-service-entry:hover,
html[data-sbs-theme] .sbs-public-body .sbs-service-entry:focus,
html[data-sbs-theme] .sbs-public-body .sbs-service-overview-card:hover,
html[data-sbs-theme] .sbs-public-body .sbs-service-overview-card:focus,
html[data-sbs-theme] .sbs-public-body .sbs-decision-card:hover,
html[data-sbs-theme] .sbs-public-body .sbs-decision-card:focus-within,
html[data-sbs-theme] .sbs-public-body .sbs-project-card:hover,
html[data-sbs-theme] .sbs-public-body .sbs-project-card:focus-within {
  border-color: var(--sbs-border-rule-strong);
  background: var(--sbs-card-bg-hover) !important;
  box-shadow: var(--sbs-shadow-lift);
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-home-hero .sbs-service-entry {
  background: rgba(246, 244, 239, 0.82) !important;
  box-shadow: 0 1rem 2.6rem rgba(47, 52, 55, 0.13);
  backdrop-filter: blur(9px);
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-home-hero .sbs-service-entry:hover,
html[data-sbs-theme="light"] .sbs-public-body .sbs-home-hero .sbs-service-entry:focus {
  background: rgba(255, 255, 255, 0.9) !important;
}

html[data-sbs-theme="light"] .sbs-public-body .sbs-public-house-hero-photo {
  display: block;
  aspect-ratio: 16 / 6.2;
  border: 1px solid rgba(47, 52, 55, 0.14);
  background: var(--sbs-public-house-paper);
  box-shadow: 0 1rem 2.6rem rgba(47, 52, 55, 0.11);
}

html[data-sbs-theme="dark"] .sbs-public-body .sbs-public-house-hero-photo {
  display: none;
}

html[data-sbs-theme] .sbs-public-body .sbs-paper-card h2,
html[data-sbs-theme] .sbs-public-body .sbs-paper-card h3,
html[data-sbs-theme] .sbs-public-body .sbs-service-entry strong,
html[data-sbs-theme] .sbs-public-body .sbs-service-overview-card h3,
html[data-sbs-theme] .sbs-public-body .sbs-process-card h3,
html[data-sbs-theme] .sbs-public-body .sbs-decision-card h2,
html[data-sbs-theme] .sbs-public-body .sbs-service-detail h3,
html[data-sbs-theme] .sbs-public-body .sbs-service-detail-body strong,
html[data-sbs-theme] .sbs-public-body .sbs-project-details .post-title a,
html[data-sbs-theme] .sbs-public-body .sbs-about-panel strong,
html[data-sbs-theme] .sbs-public-body .sbs-about-card h2,
html[data-sbs-theme] .sbs-public-body .sbs-about-note h3 {
  color: var(--sbs-text) !important;
}

html[data-sbs-theme] .sbs-public-body .sbs-paper-card p,
html[data-sbs-theme] .sbs-public-body .sbs-service-entry span:last-child,
html[data-sbs-theme] .sbs-public-body .sbs-service-overview-card p,
html[data-sbs-theme] .sbs-public-body .sbs-process-card p,
html[data-sbs-theme] .sbs-public-body .sbs-decision-card p,
html[data-sbs-theme] .sbs-public-body .sbs-decision-card li,
html[data-sbs-theme] .sbs-public-body .sbs-service-detail-body p,
html[data-sbs-theme] .sbs-public-body .sbs-project-details p,
html[data-sbs-theme] .sbs-public-body .sbs-about-panel p,
html[data-sbs-theme] .sbs-public-body .sbs-about-card p,
html[data-sbs-theme] .sbs-public-body .sbs-about-note p {
  color: var(--sbs-muted-text) !important;
}

html[data-sbs-theme] .sbs-public-body .sbs-service-detail-body div,
html[data-sbs-theme] .sbs-public-body .sbs-work-detail-body div,
html[data-sbs-theme] .sbs-public-body .sbs-about-panel div + div {
  border-color: var(--sbs-border-rule);
}

html[data-sbs-theme] .sbs-public-body .sbs-situation-grid span,
html[data-sbs-theme] .sbs-public-body .sbs-about-situation-grid span,
html[data-sbs-theme] .sbs-public-body .sbs-work-chip-row span {
  border: 1px solid var(--sbs-border-rule);
  background: rgba(246, 244, 239, 0.42);
  color: var(--sbs-text);
}

html[data-sbs-theme="dark"] .sbs-public-body .sbs-situation-grid span,
html[data-sbs-theme="dark"] .sbs-public-body .sbs-about-situation-grid span,
html[data-sbs-theme="dark"] .sbs-public-body .sbs-work-chip-row span {
  background: rgba(219, 216, 208, 0.06);
}

html[data-sbs-theme] .sbs-public-body .sbs-workshop-card,
html[data-sbs-theme] .sbs-public-body .sbs-work-figure,
html[data-sbs-theme] .sbs-public-body .sbs-project-figure {
  border: 1px solid var(--sbs-workshop-border);
  background:
    radial-gradient(circle at 18% 0%, rgba(143, 161, 142, 0.18), transparent 16rem),
    linear-gradient(135deg, var(--sbs-dark-workshop-bg), var(--sbs-dark-workshop-surface)) !important;
  color: var(--sbs-workshop-text);
  box-shadow: inset 0 0 0 1px rgba(246, 244, 239, 0.05);
}

html[data-sbs-theme] .sbs-public-body .sbs-workshop-section .sbs-work-detail,
html[data-sbs-theme] .sbs-public-body .sbs-workshop-section .sbs-work-proof-grid span {
  border: 1px solid var(--sbs-workshop-border);
  background: rgba(47, 57, 65, 0.72) !important;
  color: var(--sbs-workshop-text);
  box-shadow: 0 1rem 2.5rem rgba(0, 0, 0, 0.22);
}

html[data-sbs-theme] .sbs-public-body .sbs-workshop-section .sbs-work-detail-body div {
  border-top-color: rgba(219, 216, 208, 0.13);
}

html[data-sbs-theme] .sbs-public-body .sbs-workshop-section .sbs-work-detail-body p,
html[data-sbs-theme] .sbs-public-body .sbs-workshop-section .sbs-work-proof-grid span {
  color: rgba(219, 216, 208, 0.78) !important;
}

html[data-sbs-theme] .sbs-public-body .sbs-status-badge {
  border: 1px solid rgba(111, 127, 112, 0.34);
  background: rgba(143, 161, 142, 0.16);
  color: var(--sbs-deep-sage-accent);
}

html[data-sbs-theme] .sbs-public-body .sbs-workshop-section .sbs-status-badge {
  border-color: rgba(232, 220, 200, 0.22);
  background: rgba(232, 220, 200, 0.08);
  color: var(--sbs-oat);
}

html[data-sbs-theme] .sbs-public-body .sbs-status-internal {
  border-color: rgba(184, 155, 94, 0.34);
  background: rgba(184, 155, 94, 0.14);
  color: var(--sbs-brass-accent);
}

html[data-sbs-theme] .sbs-public-body .sbs-status-research {
  border-color: rgba(201, 127, 90, 0.34);
  background: rgba(201, 127, 90, 0.12);
  color: var(--sbs-clay-accent);
}

html[data-sbs-theme] .sbs-public-body .sbs-good-for,
html[data-sbs-theme] .sbs-public-body .sbs-card-cta,
html[data-sbs-theme] .sbs-public-body .sbs-work-action,
html[data-sbs-theme] .sbs-public-body .sbs-work-action[href]::after {
  color: var(--sbs-deep-sage-accent);
}

html[data-sbs-theme] .sbs-public-body .btn-primary {
  border-color: var(--sbs-deep-sage-accent);
  background: var(--sbs-deep-sage-accent);
  color: #fff;
}

html[data-sbs-theme] .sbs-public-body .btn-primary:hover,
html[data-sbs-theme] .sbs-public-body .btn-primary:focus {
  border-color: var(--sbs-text);
  background: var(--sbs-text);
  color: var(--sbs-page-bg);
}

html[data-sbs-theme] .sbs-public-body .btn-outline-primary,
html[data-sbs-theme] .sbs-public-body .btn-outline-white {
  border-color: var(--sbs-border-rule-strong);
  color: var(--sbs-text);
}

html[data-sbs-theme] .sbs-public-body .btn-outline-primary:hover,
html[data-sbs-theme] .sbs-public-body .btn-outline-primary:focus,
html[data-sbs-theme] .sbs-public-body .btn-outline-white:hover,
html[data-sbs-theme] .sbs-public-body .btn-outline-white:focus,
html[data-sbs-theme] .sbs-public-body .btn-soft-primary {
  border-color: var(--sbs-deep-sage-accent);
  background: rgba(143, 161, 142, 0.16);
  color: var(--sbs-text);
}

html[data-sbs-theme] .sbs-public-body .btn-link,
html[data-sbs-theme] .sbs-public-body a:not(.btn) {
  color: var(--sbs-deep-sage-accent);
}

html[data-sbs-theme] .sbs-public-body .btn-link:hover,
html[data-sbs-theme] .sbs-public-body .btn-link:focus,
html[data-sbs-theme] .sbs-public-body a:not(.btn):hover,
html[data-sbs-theme] .sbs-public-body a:not(.btn):focus {
  color: var(--sbs-text);
}

html[data-sbs-theme] .sbs-public-body .sbs-brand-rule {
  border-color: var(--sbs-border-rule);
}

html[data-sbs-theme] .sbs-public-body .sbs-photo-light,
html[data-sbs-theme] .sbs-public-body .sbs-about-media-row img,
html[data-sbs-theme] .sbs-public-body figure.rounded img {
  filter: saturate(0.84) contrast(0.96) brightness(1.02);
}

html[data-sbs-theme="dark"] .sbs-public-body .sbs-photo-light,
html[data-sbs-theme="dark"] .sbs-public-body .sbs-about-media-row img,
html[data-sbs-theme="dark"] .sbs-public-body figure.rounded img {
  filter: saturate(0.72) contrast(0.95) brightness(0.72);
}

html[data-sbs-theme] .sbs-public-body .form-control,
html[data-sbs-theme] .sbs-public-body .form-select {
  border-color: var(--sbs-border-rule);
  background-color: var(--sbs-input-bg);
  color: var(--sbs-text);
}

html[data-sbs-theme] .sbs-public-body .form-control::placeholder {
  color: var(--sbs-muted-text);
}

html[data-sbs-theme] .sbs-public-body .contact-guide-modal {
  --contact-panel: var(--sbs-elevated-paper);
  --contact-ink: var(--sbs-text);
  --contact-muted: var(--sbs-muted-text);
  --contact-line: var(--sbs-border-rule);
}

html[data-sbs-theme] .sbs-public-body .contact-guide-modal .modal-content {
  border: 1px solid var(--sbs-border-rule);
  background:
    var(--sbs-paper-texture),
    linear-gradient(180deg, var(--sbs-paper-section-bg), var(--sbs-section-alt-bg)) !important;
  background-size: 480px 480px, auto;
  background-blend-mode: multiply, normal;
  color: var(--sbs-text);
}

html[data-sbs-theme="dark"] .sbs-public-body .contact-guide-modal .modal-content {
  background:
    var(--sbs-paper-texture),
    linear-gradient(135deg, var(--sbs-cellar-charcoal), var(--sbs-workshop-slate)) !important;
  background-blend-mode: soft-light, normal;
}

html[data-sbs-theme] .sbs-public-body .contact-guide-modal .modal-header,
html[data-sbs-theme] .sbs-public-body .contact-guide-modal .modal-footer {
  border-color: var(--sbs-border-rule);
  background: rgba(246, 244, 239, 0.54);
}

html[data-sbs-theme] .sbs-public-body .contact-guide-modal .modal-footer .btn-link {
  min-width: 0;
  max-width: 100%;
  overflow-wrap: anywhere;
  text-align: left;
  white-space: normal;
}

html[data-sbs-theme="dark"] .sbs-public-body .contact-guide-modal .modal-header,
html[data-sbs-theme="dark"] .sbs-public-body .contact-guide-modal .modal-footer {
  background: rgba(31, 41, 51, 0.58);
}

html[data-sbs-theme] .sbs-public-body .contact-guide-side,
html[data-sbs-theme] .sbs-public-body .contact-guide-note,
html[data-sbs-theme] .sbs-public-body .contact-choice {
  border-color: var(--sbs-border-rule);
  background: var(--sbs-card-bg) !important;
  color: var(--sbs-text);
}

html[data-sbs-theme] .sbs-public-body .choice-input:checked + .contact-choice,
html[data-sbs-theme] .sbs-public-body .contact-choice:hover,
html[data-sbs-theme] .sbs-public-body .choice-input:focus-visible + .contact-choice {
  border-color: var(--sbs-deep-sage-accent);
  box-shadow: 0 0 0 0.18rem rgba(143, 161, 142, 0.16);
}

html[data-sbs-theme] .sbs-public-body footer.bg-dark {
  border-top: 1px solid var(--sbs-border-rule);
  background: var(--sbs-footer-bg) !important;
  color: var(--sbs-text);
}

html[data-sbs-theme] .sbs-public-body footer .text-white,
html[data-sbs-theme] .sbs-public-body footer h3,
html[data-sbs-theme] .sbs-public-body footer h4,
html[data-sbs-theme] .sbs-public-body footer p,
html[data-sbs-theme] .sbs-public-body footer address,
html[data-sbs-theme] .sbs-public-body footer a {
  color: var(--sbs-text) !important;
}

html[data-sbs-theme] .sbs-public-body footer a:hover,
html[data-sbs-theme] .sbs-public-body footer a:focus {
  color: var(--sbs-deep-sage-accent) !important;
}

@media (max-width: 991.98px) {
  html[data-sbs-theme] .sbs-public-body .offcanvas-nav {
    background: var(--sbs-page-bg) !important;
    color: var(--sbs-text);
  }
}

@media (max-width: 575.98px) {
  html[data-sbs-theme] .sbs-public-body .contact-guide-modal .modal-footer {
    gap: 0.7rem;
  }

  html[data-sbs-theme] .sbs-public-body .contact-guide-modal .modal-footer .ms-auto {
    width: 100%;
    margin-left: 0 !important;
  }

  html[data-sbs-theme] .sbs-public-body .sbs-hero-title,
  html[data-sbs-theme="light"] .sbs-public-body .sbs-hero-title {
    max-width: 11.8ch;
    font-size: 2.72rem;
    line-height: 1.02;
  }

  html[data-sbs-theme="light"] .sbs-public-body .sbs-public-house-hero-photo {
    aspect-ratio: 16 / 8.4;
  }
}
