/*!***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[6].rules[0].oneOf[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[6].rules[0].oneOf[0].use[2]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[6].rules[1].use[0]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[6].rules[1].use[1]!./src/styles.scss?ngGlobalStyle ***!
  \***********************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
@import url(https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800;900&display=swap);
/*!***************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************!*\
  !*** css ./node_modules/css-loader/dist/cjs.js??ruleSet[1].rules[6].rules[0].oneOf[0].use[1]!./node_modules/postcss-loader/dist/cjs.js??ruleSet[1].rules[6].rules[0].oneOf[0].use[2]!./node_modules/resolve-url-loader/index.js??ruleSet[1].rules[6].rules[1].use[0]!./node_modules/sass-loader/dist/cjs.js??ruleSet[1].rules[6].rules[1].use[1]!./src/styles.scss?ngGlobalStyle (1) ***!
  \***************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************************/
@charset "UTF-8";
:root {
  --ng-ink: #172d34;
  --ng-muted: #5d7075;
  --ng-green: #1b6a56;
  --ng-teal: #24748c;
  --ng-blue: #2d6cdf;
  --ng-gold: #dca440;
  --ng-coral: #c86f5a;
  --ng-paper: #f7fbfa;
  --ng-sky: #edf7f8;
  --ng-leaf: #e5f3ef;
  --ng-line: #d2e3e1;
  --ng-white: #ffffff;
  --ng-shadow: 0 24px 58px rgba(23, 45, 52, 0.12);
  --ng-radius: 8px;
}

html,
body {
  min-height: 100%;
  overflow-x: hidden;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

body {
  max-width: 100vw;
  margin: 0;
  color: var(--ng-ink);
  background: var(--ng-paper);
  font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

body,
button,
input,
select,
textarea {
  letter-spacing: 0;
}

button,
input,
select,
textarea {
  font: inherit;
}

img {
  display: block;
  max-width: 100%;
}

a {
  color: var(--ng-teal);
}

main {
  overflow-x: clip;
  background: linear-gradient(180deg, #ffffff 0%, var(--ng-paper) 30%, #ffffff 58%, var(--ng-sky) 100%);
}

.site-container {
  width: min(1120px, 100% - 40px);
  margin: 0 auto;
}

.site-header {
  position: sticky;
  top: 0;
  z-index: 30;
  width: 100%;
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  align-items: center;
  gap: 22px;
  padding: 12px clamp(18px, 4vw, 42px);
  border-bottom: 1px solid rgba(20, 92, 75, 0.16);
  background: rgba(248, 251, 247, 0.96);
  -webkit-backdrop-filter: blur(16px);
          backdrop-filter: blur(16px);
  box-shadow: 0 10px 30px rgba(23, 45, 52, 0.06);
}

.site-header::before {
  position: absolute;
  inset: 0 0 auto;
  height: 3px;
  background: linear-gradient(90deg, var(--ng-green), var(--ng-teal), var(--ng-blue));
  content: "";
}

.brand-mark {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  min-width: 0;
  color: var(--ng-ink);
  text-decoration: none;
}

.brand-mark span {
  min-width: 0;
}

.brand-mark img {
  width: 76px;
  height: 54px;
  object-fit: contain;
}

.brand-mark strong,
.brand-mark small {
  display: block;
}

.brand-mark strong {
  font-size: 1rem;
  font-weight: 900;
}

.brand-mark small {
  color: var(--ng-muted);
  font-size: 0.78rem;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.primary-nav {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
}

.primary-nav a {
  display: inline-flex;
  align-items: center;
  min-height: 42px;
  padding: 10px 12px;
  border-radius: var(--ng-radius);
  color: var(--ng-ink);
  font-weight: 800;
  text-decoration: none;
}

.primary-nav a:hover,
.primary-nav a.is-active {
  background: var(--ng-leaf);
  color: var(--ng-green);
}

.header-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}

.phone-link,
.ng-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  border: 0;
  border-radius: var(--ng-radius);
  font-weight: 900;
  text-decoration: none;
  cursor: pointer;
}

.phone-link {
  padding: 9px 14px;
  background: var(--ng-green);
  color: var(--ng-white);
}

.phone-link:hover,
.ng-button-primary:hover {
  background: var(--ng-teal);
  color: var(--ng-white);
}

.ng-button {
  padding: 12px 18px;
}

.ng-button-primary {
  background: var(--ng-green);
  color: var(--ng-white);
}

.ng-button-secondary {
  border: 1px solid rgba(20, 92, 75, 0.28);
  background: var(--ng-white);
  color: var(--ng-green);
}

.ng-button-secondary:hover {
  background: var(--ng-leaf);
  color: var(--ng-green);
}

.ng-button-ghost {
  border: 1px solid var(--ng-line);
  background: rgba(255, 255, 255, 0.82);
  color: var(--ng-green);
}

.ng-button-ghost:hover {
  border-color: rgba(36, 116, 140, 0.42);
  background: var(--ng-sky);
  color: var(--ng-teal);
}

.mobile-menu-button {
  display: none;
  width: 44px;
  height: 44px;
  border: 1px solid var(--ng-line);
  border-radius: var(--ng-radius);
  background: var(--ng-white);
}

.mobile-menu-button span {
  display: block;
  width: 20px;
  height: 2px;
  margin: 4px auto;
  background: var(--ng-green);
}

.ng-hero {
  position: relative;
  min-height: 760px;
  overflow: hidden;
  display: flex;
  align-items: center;
  background: linear-gradient(120deg, #ffffff 0%, var(--ng-paper) 52%, var(--ng-sky) 100%);
  color: var(--ng-ink);
}

.ng-hero-media {
  position: absolute;
  inset: clamp(96px, 10vw, 132px) clamp(24px, 5vw, 72px) clamp(54px, 7vw, 92px) 58%;
  overflow: hidden;
  border: 1px solid var(--ng-line);
  border-radius: var(--ng-radius);
  box-shadow: var(--ng-shadow);
}

.ng-hero-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 60% center;
  filter: saturate(0.96);
}

.ng-hero-media::after {
  position: absolute;
  inset: 0;
  content: "";
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.02), rgba(23, 45, 52, 0.18)), linear-gradient(90deg, rgba(255, 255, 255, 0), rgba(36, 116, 140, 0.12));
}

.ng-hero-grid,
.page-hero-grid {
  position: relative;
  display: grid;
  grid-template-columns: minmax(0, 1.08fr) minmax(320px, 0.92fr);
  align-items: center;
  gap: clamp(28px, 5vw, 70px);
}

.ng-hero-copy,
.ng-hero-grid > *,
.page-hero-grid > * {
  min-width: 0;
}

.eyebrow {
  margin: 0 0 12px;
  color: var(--ng-teal);
  font-size: 0.78rem;
  font-weight: 900;
  text-transform: uppercase;
}

.ng-hero .eyebrow,
.neighborhood-page-hero .eyebrow,
.final-neighbor-cta .eyebrow {
  color: var(--ng-teal);
}

h1,
h2,
h3,
p {
  overflow-wrap: break-word;
}

.ng-hero-copy h1,
.page-hero h1,
.section-heading h2,
.split-intro h2,
.inspection-map-heading h2,
.inspection-mid-cta h3,
.construction-grid h2,
.values-grid h2,
.family-grid h2,
.owner-intro-grid h2,
.owner-community-grid h2,
.contact-prep-grid h2,
.final-cta-panel h2 {
  margin: 0;
  font-weight: 900;
  line-height: 1.04;
}

.ng-hero-copy h1 {
  max-width: 700px;
  color: var(--ng-ink);
  font-size: clamp(2.6rem, 6vw, 5.55rem);
}

.hero-lede,
.page-hero p {
  max-width: 660px;
  margin: 22px 0 0;
  color: var(--ng-muted);
  font-size: clamp(1.05rem, 2vw, 1.22rem);
  line-height: 1.58;
}

.hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 28px;
}

.neighborhood-trust {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 28px;
}

.neighborhood-trust span,
.city-chip-grid span,
.mini-chip-grid span,
.local-marker-grid span,
.credential-list span {
  border-radius: 999px;
  font-size: 0.9rem;
  font-weight: 800;
}

.neighborhood-trust span {
  border: 1px solid var(--ng-line);
  background: var(--ng-white);
  color: var(--ng-green);
  padding: 8px 12px;
}

.guide-panel {
  border: 1px solid var(--ng-line);
  border-top: 5px solid rgba(36, 116, 140, 0.5);
  border-radius: var(--ng-radius);
  background: rgba(255, 255, 255, 0.96);
  color: var(--ng-ink);
  box-shadow: var(--ng-shadow);
  padding: clamp(24px, 4vw, 34px);
}

.guide-panel.light {
  background: var(--ng-white);
}

.guide-panel .eyebrow {
  color: var(--ng-teal);
}

.guide-owner {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 18px;
  padding-bottom: 18px;
  border-bottom: 1px solid var(--ng-line);
}

.guide-owner img {
  width: 64px;
  height: 64px;
  border-radius: 999px;
  object-fit: cover;
  object-position: center 18%;
}

.guide-owner span,
.guide-owner strong {
  display: block;
}

.guide-owner span {
  color: var(--ng-teal);
  font-size: 0.76rem;
  font-weight: 900;
  text-transform: uppercase;
}

.guide-owner strong {
  margin-top: 4px;
  color: var(--ng-ink);
  font-size: 1.08rem;
}

.guide-panel > a,
.inline-cta {
  display: inline-flex;
  margin-top: 18px;
  color: var(--ng-green);
  font-weight: 900;
}

.guide-steps,
.simple-list {
  display: grid;
  gap: 18px;
  padding: 0;
  margin: 18px 0 0;
  list-style: none;
}

.guide-steps {
  counter-reset: guide-step;
}

.guide-steps li {
  counter-increment: guide-step;
  display: grid;
  grid-template-columns: 26px minmax(0, 1fr);
  gap: 12px;
}

.guide-steps li::before {
  width: 26px;
  height: 26px;
  border-radius: 999px;
  background: var(--ng-gold);
  color: var(--ng-ink);
  content: counter(guide-step);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 0.76rem;
  font-weight: 900;
}

.guide-steps strong,
.guide-steps span {
  display: block;
  grid-column: 2;
}

.guide-steps span,
.simple-list li,
.guide-panel p {
  color: var(--ng-muted);
  line-height: 1.55;
}

.simple-list li {
  position: relative;
  padding-left: 22px;
}

.simple-list li::before {
  position: absolute;
  left: 0;
  color: var(--ng-teal);
  content: "✓";
  font-weight: 900;
}

.mini-label {
  display: block;
  color: var(--ng-teal);
  font-size: 0.78rem;
  font-weight: 900;
  text-transform: uppercase;
}

.guide-panel > strong {
  display: block;
  margin-top: 10px;
  font-size: clamp(2rem, 5vw, 3.4rem);
  line-height: 1;
}

.resources-hero-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(300px, 0.42fr);
  gap: clamp(28px, 5vw, 70px);
  align-items: center;
}

.resources-guide-panel strong {
  color: var(--ng-green);
}

.page-hero {
  position: relative;
  overflow: hidden;
  background: var(--ng-paper);
  color: var(--ng-ink);
}

.neighborhood-page-hero {
  padding: clamp(84px, 10vw, 132px) 0;
  background: linear-gradient(115deg, rgba(255, 255, 255, 0.96), rgba(247, 251, 250, 0.92) 56%, rgba(237, 247, 248, 0.78)), var(--ng-paper);
}

.inspection-guide-hero {
  background: linear-gradient(115deg, rgba(255, 255, 255, 0.96), rgba(237, 247, 248, 0.88) 54%, rgba(229, 243, 239, 0.74)), url('inspections-exterior.jpg') center/cover;
}

.contact-guide-hero {
  background: linear-gradient(115deg, rgba(255, 255, 255, 0.96), rgba(247, 251, 250, 0.9) 54%, rgba(229, 243, 239, 0.72)), url('kari_roland_door.jpg') right center/cover;
}

.resources-hero,
.compact-hero {
  padding: clamp(72px, 9vw, 122px) 0;
}

.owner-hero {
  background: linear-gradient(115deg, rgba(255, 255, 255, 0.96), rgba(237, 247, 248, 0.88) 54%, rgba(220, 234, 246, 0.7)), url('home-home.jpg') center/cover;
}

.page-hero h1 {
  max-width: 780px;
  color: var(--ng-ink);
  font-size: clamp(2.3rem, 4.25vw, 4.15rem);
}

.section-panel {
  padding: clamp(64px, 9vw, 112px) 0;
}

.local-band {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.92), rgba(229, 243, 239, 0.76)), var(--ng-sky);
}

.section-heading {
  max-width: 760px;
  margin: 0 auto 34px;
  text-align: center;
}

.section-heading.left-align,
.section-heading.narrow {
  margin-left: 0;
  text-align: left;
}

.section-heading h2,
.split-intro h2,
.construction-grid h2,
.values-grid h2,
.family-grid h2,
.owner-intro-grid h2,
.owner-community-grid h2,
.contact-prep-grid h2,
.final-cta-panel h2 {
  font-size: clamp(2rem, 4vw, 3.6rem);
}

.section-heading p,
.split-intro p,
.readiness-grid p,
.report-preview-grid p,
.inspection-map-heading p,
.local-grid p,
.photo-walk-grid p,
.family-grid p,
.construction-grid p,
.values-grid p,
.owner-dossier-grid p,
.owner-intro-grid p,
.owner-community-grid p,
.contact-prep-grid p,
.final-cta-panel p {
  color: var(--ng-muted);
  font-size: 1.03rem;
  line-height: 1.7;
}

.split-intro,
.readiness-grid,
.inspection-map-heading,
.inspection-mid-cta,
.local-grid,
.photo-walk-grid,
.report-preview-grid,
.family-grid,
.construction-grid,
.values-grid,
.owner-intro-grid,
.owner-community-grid,
.contact-prep-grid,
.contact-grid,
.reassurance-grid,
.final-cta-panel {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(320px, 1.1fr);
  gap: clamp(28px, 5vw, 68px);
  align-items: flex-start;
}

.route-selector,
.readiness-score,
.area-guide,
.report-preview-card,
.values-panel,
.form-shell,
.sidebar-card,
.resource-card,
.feature-card,
.inspection-route-map button,
.system-callouts div,
.walkthrough-grid article,
.owner-story,
.owner-trust-list article,
.contact-method-grid a,
.link-grid a,
.route-card,
.tour-detail,
.focus-photo,
.owner-portrait,
.request-detail-list div,
.form-support-card,
.inspection-mid-cta,
.final-cta-panel {
  border: 1px solid var(--ng-line);
  border-radius: var(--ng-radius);
  background: rgba(255, 255, 255, 0.9);
  box-shadow: var(--ng-shadow);
}

.route-selector,
.area-guide,
.values-panel,
.form-shell,
.sidebar-card,
.route-card,
.readiness-score,
.system-callouts div,
.owner-trust-list article,
.request-detail-list div,
.form-support-card,
.inspection-mid-cta,
.final-cta-panel {
  padding: clamp(22px, 4vw, 34px);
}

.readiness-band {
  background: linear-gradient(90deg, rgba(220, 164, 64, 0.12), transparent 34%), var(--ng-white);
}

.readiness-grid {
  align-items: center;
}

.readiness-score {
  max-width: 360px;
  margin-top: 24px;
  border: 1px solid var(--ng-line);
  border-radius: var(--ng-radius);
  background: var(--ng-paper);
}

.readiness-score strong {
  display: block;
  color: var(--ng-green);
  font-size: clamp(2rem, 4vw, 3.4rem);
  line-height: 1;
}

.readiness-score > span {
  display: block;
  margin-top: 6px;
  color: var(--ng-muted);
  font-weight: 900;
}

.readiness-meter {
  height: 10px;
  margin-top: 18px;
  overflow: hidden;
  border-radius: 999px;
  background: var(--ng-line);
}

.readiness-meter span {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--ng-green), var(--ng-teal));
}

.readiness-next {
  margin: 16px 0 0;
  color: var(--ng-muted);
  font-size: 0.95rem;
  line-height: 1.55;
}

.readiness-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

.readiness-list button {
  min-height: 188px;
  border: 1px solid var(--ng-line);
  border-radius: var(--ng-radius);
  background: var(--ng-paper);
  color: var(--ng-ink);
  cursor: pointer;
  padding: 20px;
  text-align: left;
}

.readiness-list button.is-checked {
  border-color: rgba(20, 92, 75, 0.34);
  background: var(--ng-leaf);
}

.readiness-list span {
  display: inline-flex;
  margin-bottom: 14px;
  border-radius: 999px;
  background: var(--ng-white);
  color: var(--ng-teal);
  padding: 6px 9px;
  font-size: 0.75rem;
  font-weight: 900;
  text-transform: uppercase;
}

.readiness-list strong,
.readiness-list small {
  display: block;
}

.readiness-list strong {
  font-size: 1.2rem;
}

.readiness-list small {
  margin-top: 9px;
  color: var(--ng-muted);
  font-size: 0.93rem;
  line-height: 1.55;
}

.pill-control,
.area-tabs,
.focus-tabs,
.scope-filter,
.owner-profile-tabs,
.request-tabs,
.resource-filter {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.pill-control button,
.area-tabs button,
.focus-tabs button,
.scope-filter button,
.owner-profile-tabs button,
.request-tabs button,
.resource-filter button,
.tour-stops button,
.clear-filter-button {
  border: 1px solid var(--ng-line);
  border-radius: 999px;
  background: var(--ng-white);
  color: var(--ng-ink);
  cursor: pointer;
  font-weight: 900;
}

.pill-control button,
.area-tabs button,
.focus-tabs button,
.scope-filter button,
.request-tabs button,
.resource-filter button {
  padding: 10px 13px;
}

.pill-control button.is-selected,
.area-tabs button.is-selected,
.focus-tabs button.is-selected,
.scope-filter button.is-selected,
.owner-profile-tabs button.is-selected,
.request-tabs button.is-selected,
.resource-filter button.is-selected,
.tour-stops button.is-selected {
  border-color: var(--ng-green);
  background: var(--ng-green);
  color: var(--ng-white);
}

.route-card {
  margin-top: 18px;
  box-shadow: none;
}

.route-card h3,
.area-story h3,
.feature-card h3,
.focus-caption h3,
.tour-copy h3,
.owner-story h2,
.values-panel h3,
.sidebar-card h3,
.resource-card h3 {
  margin: 0;
  color: var(--ng-ink);
}

.route-card p,
.area-story p,
.feature-card p,
.focus-caption p,
.tour-copy p,
.owner-story p,
.values-panel p,
.sidebar-card p,
.resource-card p,
.resource-disclaimer,
.policy-content p {
  color: var(--ng-muted);
  line-height: 1.65;
}

.route-card a {
  color: var(--ng-green);
  font-weight: 900;
}

.report-preview-band {
  background: linear-gradient(180deg, var(--ng-white), var(--ng-paper));
}

.report-preview-grid {
  align-items: center;
}

.report-preview-shell {
  display: grid;
  gap: 16px;
}

.report-tabs {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

.report-tabs button {
  min-height: 48px;
  border: 1px solid var(--ng-line);
  border-radius: var(--ng-radius);
  background: var(--ng-white);
  color: var(--ng-ink);
  cursor: pointer;
  font-weight: 900;
}

.report-tabs button.is-selected {
  border-color: var(--ng-green);
  background: var(--ng-green);
  color: var(--ng-white);
}

.report-preview-card {
  display: grid;
  grid-template-columns: minmax(180px, 0.75fr) minmax(0, 1fr);
  overflow: hidden;
}

.report-preview-image {
  min-height: 360px;
  background: var(--ng-sky);
}

.report-preview-image img {
  width: 100%;
  height: 100%;
  min-height: 360px;
  object-fit: cover;
}

.report-preview-copy {
  padding: clamp(22px, 4vw, 34px);
}

.report-preview-copy span {
  color: var(--ng-teal);
  font-size: 0.78rem;
  font-weight: 900;
  text-transform: uppercase;
}

.report-preview-copy h3 {
  margin: 10px 0 0;
  color: var(--ng-ink);
  font-size: clamp(1.55rem, 3vw, 2.45rem);
  line-height: 1.08;
}

.report-preview-copy p {
  color: var(--ng-muted);
  line-height: 1.65;
}

.report-preview-copy ul {
  display: grid;
  gap: 10px;
  padding: 0;
  margin: 20px 0 0;
  list-style: none;
}

.report-preview-copy li {
  position: relative;
  padding-left: 24px;
  color: var(--ng-muted);
  line-height: 1.5;
}

.report-preview-copy li::before {
  position: absolute;
  left: 0;
  color: var(--ng-green);
  content: "✓";
  font-weight: 900;
}

.inspection-map-band {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(237, 247, 248, 0.76)), var(--ng-white);
}

.inspection-map-heading {
  align-items: end;
  margin-bottom: 26px;
}

.inspection-route-command {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr)) auto;
  gap: 12px;
  align-items: stretch;
  margin-bottom: 18px;
}

.inspection-route-command article {
  border: 1px solid var(--ng-line);
  border-radius: var(--ng-radius);
  background: rgba(255, 255, 255, 0.94);
  box-shadow: var(--ng-shadow);
  padding: 18px;
}

.inspection-route-command span,
.inspection-route-command strong,
.inspection-route-command p {
  display: block;
}

.inspection-route-command span {
  color: var(--ng-teal);
  font-size: 0.75rem;
  font-weight: 900;
  text-transform: uppercase;
}

.inspection-route-command strong {
  margin-top: 8px;
  color: var(--ng-ink);
  font-size: clamp(1.45rem, 3vw, 2rem);
  line-height: 1.08;
}

.inspection-route-command p {
  margin: 8px 0 0;
  color: var(--ng-muted);
  line-height: 1.42;
}

.inspection-route-command .ng-button {
  align-self: stretch;
  min-height: 100%;
}

.scope-stat-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  margin-bottom: 18px;
}

.scope-stat-grid article,
.scope-toolbar,
.inspection-system-rail,
.inspection-system-panel {
  border: 1px solid var(--ng-line);
  border-radius: var(--ng-radius);
  background: rgba(255, 255, 255, 0.94);
  box-shadow: var(--ng-shadow);
}

.scope-stat-grid article {
  min-height: 150px;
  border-top: 5px solid rgba(45, 108, 223, 0.32);
  padding: 22px;
}

.scope-stat-grid strong,
.scope-stat-grid span {
  display: block;
}

.scope-stat-grid strong {
  color: var(--ng-green);
  font-size: clamp(2rem, 4vw, 3.2rem);
  line-height: 1;
}

.scope-stat-grid span {
  margin-top: 8px;
  color: var(--ng-ink);
  font-weight: 900;
}

.scope-stat-grid p {
  margin: 10px 0 0;
  color: var(--ng-muted);
  line-height: 1.55;
}

.scope-toolbar {
  display: grid;
  grid-template-columns: minmax(180px, 0.28fr) minmax(0, 1fr);
  gap: 18px;
  align-items: center;
  margin-bottom: 18px;
  padding: 18px;
}

.scope-toolbar > div:first-child strong {
  display: block;
  margin-top: 6px;
  color: var(--ng-ink);
  font-size: 1.4rem;
}

.scope-filter {
  justify-content: flex-end;
}

.inspection-workbench {
  display: grid;
  grid-template-columns: minmax(250px, 0.33fr) minmax(0, 1fr);
  gap: 18px;
  align-items: start;
}

.inspection-system-rail {
  position: sticky;
  top: 104px;
  display: grid;
  gap: 8px;
  max-height: calc(100vh - 128px);
  overflow: auto;
  padding: 12px;
}

.inspection-system-rail button {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 12px;
  align-items: start;
  width: 100%;
  border: 1px solid transparent;
  border-radius: var(--ng-radius);
  background: transparent;
  color: var(--ng-ink);
  cursor: pointer;
  padding: 13px;
  text-align: left;
}

.inspection-system-rail button:hover,
.inspection-system-rail button.is-selected {
  border-color: rgba(27, 106, 86, 0.28);
  background: var(--ng-leaf);
}

.inspection-system-rail button > span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 999px;
  background: var(--ng-gold);
  color: var(--ng-ink);
  font-weight: 900;
}

.inspection-system-rail strong,
.inspection-system-rail small {
  display: block;
}

.inspection-system-rail strong {
  line-height: 1.28;
}

.inspection-system-rail small {
  margin-top: 6px;
  color: var(--ng-muted);
  font-weight: 800;
  line-height: 1.35;
}

.inspection-system-rail em {
  display: inline-flex;
  width: max-content;
  margin-top: 8px;
  border-radius: 999px;
  background: rgba(45, 108, 223, 0.1);
  color: var(--ng-blue);
  font-size: 0.68rem;
  font-style: normal;
  font-weight: 900;
  padding: 4px 8px;
  text-transform: uppercase;
}

.inspection-system-panel {
  display: grid;
  grid-template-columns: minmax(260px, 0.34fr) minmax(0, 0.66fr);
  align-items: start;
  overflow: hidden;
}

.system-panel-media {
  position: relative;
  align-self: start;
  min-height: 0;
  overflow: hidden;
  background: var(--ng-sky);
}

.system-panel-media img {
  width: 100%;
  height: auto;
  min-height: 0;
  aspect-ratio: 4/5;
  object-fit: cover;
  object-position: center;
}

.system-panel-media > div {
  position: absolute;
  left: 18px;
  right: 18px;
  bottom: 18px;
  border-radius: var(--ng-radius);
  background: rgba(255, 255, 255, 0.94);
  padding: 18px;
}

.system-panel-media span,
.scope-progress span {
  display: block;
  color: var(--ng-teal);
  font-size: 0.78rem;
  font-weight: 900;
  text-transform: uppercase;
}

.system-panel-media strong {
  display: block;
  margin-top: 6px;
  color: var(--ng-ink);
  font-size: 1.35rem;
}

.system-panel-copy {
  padding: clamp(24px, 4vw, 42px);
}

.scope-progress {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px 14px;
  align-items: center;
  margin-bottom: 26px;
}

.scope-progress div {
  grid-column: 1/-1;
  height: 10px;
  overflow: hidden;
  border-radius: 999px;
  background: var(--ng-line);
}

.scope-progress i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--ng-blue), var(--ng-green));
}

.scope-progress strong {
  color: var(--ng-green);
  font-weight: 900;
}

.system-panel-copy h3 {
  margin: 0;
  color: var(--ng-ink);
  font-size: clamp(2rem, 4vw, 3.5rem);
  line-height: 1.04;
}

.system-panel-copy > p {
  color: var(--ng-muted);
  line-height: 1.65;
}

.inspection-concierge-brief {
  display: grid;
  grid-template-columns: minmax(0, 0.96fr) minmax(0, 1.04fr);
  gap: 12px;
  margin-top: 20px;
}

.inspection-concierge-brief article {
  border: 1px solid var(--ng-line);
  border-radius: var(--ng-radius);
  background: linear-gradient(180deg, rgba(255, 253, 248, 0.96), rgba(248, 244, 236, 0.9));
  padding: 16px;
}

.inspection-concierge-brief span {
  display: block;
  margin-bottom: 8px;
  color: var(--ng-blue);
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
}

.inspection-concierge-brief strong {
  display: block;
  color: var(--ng-ink);
  line-height: 1.45;
}

.inspection-concierge-brief ul {
  display: grid;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.inspection-concierge-brief li {
  position: relative;
  color: var(--ng-muted);
  line-height: 1.45;
  padding-left: 22px;
}

.inspection-concierge-brief li::before {
  position: absolute;
  left: 0;
  color: var(--ng-green);
  content: "✓";
  font-weight: 900;
}

.panel-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 24px;
}

.panel-actions .ng-button {
  min-width: min(100%, 190px);
}

.inspection-route-map {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 10px;
  margin-bottom: 22px;
}

.inspection-route-map button {
  min-height: 148px;
  background: rgba(255, 255, 255, 0.86);
  color: var(--ng-ink);
  cursor: pointer;
  padding: 16px;
  text-align: left;
}

.inspection-route-map button.is-selected {
  border-color: rgba(20, 92, 75, 0.44);
  background: var(--ng-green);
  color: var(--ng-white);
}

.inspection-route-map span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 34px;
  height: 34px;
  border-radius: 999px;
  background: var(--ng-gold);
  color: var(--ng-ink);
  font-weight: 900;
}

.inspection-route-map strong,
.inspection-route-map small {
  display: block;
}

.inspection-route-map strong {
  margin-top: 18px;
  font-size: 0.98rem;
  line-height: 1.25;
}

.inspection-route-map small {
  margin-top: 8px;
  color: inherit;
  font-size: 0.78rem;
  font-weight: 800;
  line-height: 1.35;
  opacity: 0.78;
}

.city-chip-grid,
.mini-chip-grid,
.credential-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 20px;
}

.city-chip-grid span,
.mini-chip-grid span,
.credential-list span {
  border: 1px solid rgba(20, 92, 75, 0.18);
  background: var(--ng-white);
  color: var(--ng-green);
  padding: 8px 11px;
}

.area-story {
  margin-top: 20px;
  padding-top: 22px;
  border-top: 1px solid var(--ng-line);
}

.area-story > span {
  display: inline-flex;
  margin-bottom: 10px;
  color: var(--ng-blue);
  font-weight: 900;
  text-transform: uppercase;
}

.feature-grid,
.resource-grid,
.link-grid,
.contact-method-grid,
.proof-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 16px;
}

.feature-card {
  min-height: 250px;
  padding: 24px;
}

.feature-icon {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  margin-bottom: 22px;
  border-radius: 999px;
  background: var(--ng-gold);
  color: var(--ng-ink);
  font-weight: 900;
}

.photo-walk {
  background: linear-gradient(180deg, var(--ng-white), var(--ng-paper));
}

.focus-photo {
  position: relative;
  min-height: 560px;
  overflow: hidden;
}

.focus-photo img {
  width: 100%;
  height: 100%;
  min-height: 560px;
  object-fit: cover;
}

.focus-caption {
  position: absolute;
  left: 20px;
  right: 20px;
  bottom: 20px;
  padding: 22px;
  border-radius: var(--ng-radius);
  background: rgba(255, 255, 255, 0.94);
}

.focus-caption span {
  display: block;
  margin-bottom: 8px;
  color: var(--ng-teal);
  font-size: 0.8rem;
  font-weight: 900;
  text-transform: uppercase;
}

.family-cta {
  border-top: 1px solid var(--ng-line);
  border-bottom: 1px solid var(--ng-line);
  background: linear-gradient(110deg, rgba(229, 243, 239, 0.94), rgba(255, 255, 255, 0.92)), var(--ng-leaf);
  color: var(--ng-ink);
}

.family-grid {
  align-items: center;
}

.family-grid img {
  width: 100%;
  min-height: 420px;
  border-radius: var(--ng-radius);
  object-fit: cover;
}

.family-grid p {
  color: var(--ng-muted);
}

.family-grid .eyebrow {
  color: var(--ng-teal);
}

.family-grid h2 {
  color: var(--ng-ink);
}

.tour-board {
  display: grid;
  grid-template-columns: 290px minmax(0, 1fr);
  gap: 22px;
  align-items: flex-start;
}

.tour-stops {
  position: sticky;
  top: 104px;
  display: grid;
  gap: 8px;
}

.tour-stops button {
  display: grid;
  gap: 4px;
  min-height: 70px;
  padding: 13px;
  border-radius: var(--ng-radius);
  text-align: left;
}

.tour-stops span {
  font-size: 0.72rem;
  text-transform: uppercase;
}

.tour-detail {
  display: grid;
  grid-template-columns: minmax(260px, 0.9fr) minmax(0, 1.1fr);
  overflow: hidden;
}

.tour-detail img {
  width: 100%;
  height: 100%;
  min-height: 520px;
  object-fit: cover;
}

.neighborhood-tour-detail {
  grid-template-columns: minmax(320px, 0.88fr) minmax(0, 1.12fr);
  background: var(--ng-white);
}

.system-image-stack {
  position: relative;
  min-height: 100%;
  overflow: hidden;
}

.system-image-stack img {
  width: 100%;
  height: 100%;
  min-height: 620px;
  object-fit: cover;
}

.system-image-stack > div {
  position: absolute;
  left: 18px;
  right: 18px;
  bottom: 18px;
  border-radius: var(--ng-radius);
  background: rgba(255, 255, 255, 0.94);
  padding: 18px;
}

.system-image-stack span {
  display: block;
  color: var(--ng-teal);
  font-size: 0.78rem;
  font-weight: 900;
  text-transform: uppercase;
}

.system-image-stack strong {
  display: block;
  margin-top: 5px;
  color: var(--ng-ink);
  font-size: 1.35rem;
}

.tour-copy {
  padding: clamp(24px, 4vw, 40px);
}

.tour-copy h3 {
  font-size: clamp(1.8rem, 3vw, 3rem);
}

.system-callouts {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  margin-top: 22px;
}

.system-callouts div {
  box-shadow: none;
}

.system-callouts span {
  display: block;
  margin-bottom: 8px;
  color: var(--ng-teal);
  font-size: 0.75rem;
  font-weight: 900;
  text-transform: uppercase;
}

.system-callouts strong {
  color: var(--ng-ink);
  line-height: 1.45;
}

.system-evidence-ledger {
  display: grid;
  gap: 10px;
  margin-top: 18px;
}

.system-evidence-ledger div {
  display: grid;
  grid-template-columns: minmax(120px, 0.28fr) minmax(0, 1fr);
  gap: 14px;
  align-items: start;
  border: 1px solid var(--ng-line);
  border-radius: var(--ng-radius);
  background: rgba(255, 255, 255, 0.78);
  padding: 14px;
}

.system-evidence-ledger span,
.checkpoint-ledger-header span {
  display: block;
  color: var(--ng-teal);
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
}

.system-evidence-ledger strong {
  display: block;
  color: var(--ng-ink);
  font-size: 0.92rem;
  line-height: 1.4;
}

.checkpoint-ledger {
  margin-top: 22px;
  border: 1px solid var(--ng-line);
  border-radius: var(--ng-radius);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.92), rgba(244, 246, 241, 0.88));
  padding: 16px;
}

.checkpoint-ledger-header {
  display: grid;
  grid-template-columns: minmax(0, 0.42fr) minmax(0, 0.58fr);
  gap: 16px;
  align-items: start;
  padding-bottom: 14px;
  border-bottom: 1px dashed var(--ng-line);
}

.checkpoint-ledger-header strong {
  display: block;
  margin-top: 6px;
  color: var(--ng-ink);
  font-size: 1.15rem;
}

.checkpoint-ledger-header p {
  margin: 0;
  color: var(--ng-muted);
  line-height: 1.5;
}

.inspection-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-top: 22px;
}

.inspection-list span {
  display: flex;
  align-items: center;
  border: 1px solid var(--ng-line);
  border-radius: var(--ng-radius);
  background: var(--ng-paper);
  color: var(--ng-ink);
  padding: 10px 12px;
  font-weight: 700;
}

.inspection-list span small {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 26px;
  height: 26px;
  margin-right: 8px;
  border-radius: 999px;
  background: var(--ng-gold);
  color: var(--ng-ink);
  font-size: 0.72rem;
  font-weight: 900;
}

.field-route-note {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 18px;
  align-items: center;
  margin-top: 18px;
  border: 1px solid var(--ng-line);
  border-radius: var(--ng-radius);
  background: linear-gradient(110deg, rgba(255, 255, 255, 0.95), rgba(237, 247, 248, 0.84));
  box-shadow: var(--ng-shadow);
  padding: clamp(20px, 4vw, 30px);
}

.field-route-note h3 {
  margin: 0;
  color: var(--ng-ink);
  font-size: clamp(1.35rem, 2.5vw, 2rem);
  line-height: 1.18;
}

.inspection-mid-cta {
  align-items: center;
  margin-top: 22px;
  background: linear-gradient(90deg, rgba(229, 243, 239, 0.94), rgba(237, 247, 248, 0.94)), var(--ng-leaf);
}

.inspection-mid-cta .eyebrow {
  color: var(--ng-teal);
}

.walkthrough-band {
  background: linear-gradient(180deg, #ffffff, var(--ng-sky));
  color: var(--ng-ink);
}

.walkthrough-band .eyebrow {
  color: var(--ng-teal);
}

.walkthrough-band h2 {
  color: var(--ng-ink);
}

.walkthrough-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.walkthrough-grid article {
  overflow: hidden;
  background: rgba(255, 255, 255, 0.94);
}

.walkthrough-grid img {
  width: 100%;
  height: 230px;
  object-fit: cover;
}

.walkthrough-grid div {
  padding: 22px;
}

.walkthrough-grid h3 {
  margin: 0;
  color: var(--ng-ink);
}

.walkthrough-grid p {
  color: var(--ng-muted);
  line-height: 1.65;
}

.construction-path {
  background: linear-gradient(180deg, var(--ng-white), var(--ng-paper));
}

.timeline-path {
  display: grid;
  gap: 14px;
}

.timeline-path div,
.values-panel article,
.timeline.compact div {
  position: relative;
  border-left: 4px solid var(--ng-gold);
  padding-left: 18px;
}

.timeline-path span,
.values-panel span {
  display: block;
  color: var(--ng-teal);
  font-weight: 900;
}

.final-neighbor-cta {
  background: linear-gradient(115deg, rgba(255, 255, 255, 0.94), rgba(237, 247, 248, 0.88), rgba(229, 243, 239, 0.76)), url('home-home.jpg') center/cover;
}

.final-cta-panel {
  align-items: center;
}

.final-neighbor-cta .final-cta-panel {
  background: rgba(255, 255, 255, 0.94);
}

.proof-band {
  background: var(--ng-white);
  border-bottom: 1px solid var(--ng-line);
  padding: 24px 0;
}

.proof-grid div {
  border-left: 4px solid var(--ng-gold);
  padding: 10px 14px;
}

.proof-grid strong,
.proof-grid span {
  display: block;
}

.proof-grid strong {
  color: var(--ng-green);
  font-size: 2rem;
}

.proof-grid span {
  color: var(--ng-muted);
  font-weight: 700;
}

.owner-hero-ledger {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 24px;
}

.owner-hero-ledger span {
  border: 1px solid rgba(20, 92, 75, 0.18);
  border-radius: var(--ng-radius);
  background: rgba(255, 255, 255, 0.82);
  color: var(--ng-muted);
  font-weight: 800;
  padding: 9px 12px;
}

.owner-hero-ledger b {
  color: var(--ng-green);
}

.owner-command-band {
  border-bottom: 1px solid var(--ng-line);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(244, 246, 241, 0.86));
  padding: 22px 0;
}

.owner-command-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

.owner-command-grid article {
  border: 1px solid var(--ng-line);
  border-radius: var(--ng-radius);
  background: rgba(255, 255, 255, 0.94);
  box-shadow: var(--ng-shadow);
  padding: 20px;
}

.owner-command-grid span,
.owner-command-grid strong {
  display: block;
}

.owner-command-grid span {
  color: var(--ng-teal);
  font-size: 0.74rem;
  font-weight: 900;
  text-transform: uppercase;
}

.owner-command-grid strong {
  margin-top: 8px;
  color: var(--ng-ink);
  font-size: 1.12rem;
  line-height: 1.24;
}

.owner-command-grid p {
  margin: 10px 0 0;
  color: var(--ng-muted);
  line-height: 1.5;
}

.owner-dossier-band {
  background: linear-gradient(180deg, var(--ng-white), var(--ng-paper));
}

.owner-dossier-grid {
  display: grid;
  grid-template-columns: minmax(0, 0.85fr) minmax(340px, 1.15fr);
  gap: clamp(28px, 5vw, 68px);
  align-items: center;
}

.owner-profile-tabs {
  display: grid;
  margin-top: 24px;
}

.owner-profile-tabs button {
  display: grid;
  gap: 5px;
  width: 100%;
  border-radius: var(--ng-radius);
  padding: 15px 16px;
  text-align: left;
}

.owner-profile-tabs button span {
  color: var(--ng-teal);
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
}

.owner-profile-tabs button.is-selected span {
  color: rgba(255, 255, 255, 0.78);
}

.owner-profile-tabs button strong {
  font-size: 1.2rem;
}

.owner-profile-card {
  display: grid;
  grid-template-columns: minmax(230px, 0.74fr) minmax(0, 1.26fr);
  overflow: hidden;
  border: 1px solid var(--ng-line);
  border-radius: var(--ng-radius);
  background: rgba(255, 255, 255, 0.94);
  box-shadow: var(--ng-shadow);
}

.owner-profile-card img {
  width: 100%;
  height: 100%;
  min-height: 500px;
  object-fit: cover;
  object-position: center 64%;
}

.owner-profile-card > div {
  padding: clamp(24px, 4vw, 42px);
}

.owner-profile-card span {
  color: var(--ng-teal);
  font-size: 0.78rem;
  font-weight: 900;
  text-transform: uppercase;
}

.owner-profile-card h3 {
  overflow-wrap: normal;
  word-break: normal;
  margin: 10px 0 0;
  color: var(--ng-ink);
  font-size: clamp(1.65rem, 2.6vw, 2.3rem);
  line-height: 1.08;
}

.owner-profile-card p {
  color: var(--ng-muted);
  line-height: 1.65;
}

.owner-profile-log {
  display: grid;
  gap: 10px;
  margin-top: 20px;
}

.owner-profile-log div {
  display: grid;
  grid-template-columns: minmax(110px, 0.28fr) minmax(0, 1fr);
  gap: 14px;
  align-items: start;
  border: 1px solid var(--ng-line);
  border-radius: var(--ng-radius);
  background: var(--ng-paper);
  padding: 13px;
}

.owner-profile-log span {
  color: var(--ng-teal);
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
}

.owner-profile-log strong {
  color: var(--ng-ink);
  font-size: 0.94rem;
  line-height: 1.4;
}

.owner-profile-card ul {
  display: grid;
  gap: 10px;
  padding: 0;
  margin: 22px 0 0;
  list-style: none;
}

.owner-profile-card li {
  position: relative;
  padding-left: 24px;
  color: var(--ng-muted);
  line-height: 1.5;
}

.owner-profile-card li::before {
  position: absolute;
  left: 0;
  color: var(--ng-green);
  content: "✓";
  font-weight: 900;
}

.owner-profile-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 24px;
}

.owner-intro-band,
.contact-prep-band {
  background: linear-gradient(90deg, rgba(255, 255, 255, 0.96), rgba(237, 247, 248, 0.84)), var(--ng-white);
}

.owner-intro-grid,
.owner-community-grid,
.contact-prep-grid {
  align-items: center;
}

.local-marker-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 24px;
}

.local-marker-grid span {
  background: var(--ng-leaf);
  color: var(--ng-green);
  padding: 8px 12px;
}

.owner-trust-list {
  display: grid;
  gap: 14px;
}

.owner-trust-list article,
.request-detail-list div,
.form-support-card {
  background: var(--ng-white);
  box-shadow: none;
}

.owner-trust-list article {
  display: grid;
  gap: 8px;
}

.owner-trust-list span,
.request-detail-list span {
  color: var(--ng-teal);
  font-size: 0.78rem;
  font-weight: 900;
  text-transform: uppercase;
}

.owner-trust-list h3 {
  margin: 0;
  font-size: 1.2rem;
}

.owner-trust-list p {
  margin: 0;
}

.owner-portrait {
  overflow: hidden;
  margin: 0;
}

.owner-portrait img {
  width: 100%;
  min-height: 440px;
  object-fit: cover;
}

.owner-portrait figcaption {
  padding: 20px;
  color: var(--ng-ink);
}

.owner-portrait span,
.owner-portrait strong {
  display: block;
}

.owner-portrait span {
  color: var(--ng-teal);
  font-size: 0.78rem;
  font-weight: 900;
  text-transform: uppercase;
}

.owner-portrait strong {
  margin-top: 6px;
  font-size: 1.4rem;
}

.owner-story-grid {
  display: grid;
  gap: 24px;
}

.owner-story {
  display: grid;
  grid-template-columns: minmax(260px, 0.82fr) minmax(0, 1.18fr);
  overflow: hidden;
}

.owner-story.reverse {
  grid-template-columns: minmax(0, 1.18fr) minmax(260px, 0.82fr);
}

.owner-story.reverse img {
  grid-column: 2;
  grid-row: 1;
}

.owner-story.reverse div {
  grid-column: 1;
  grid-row: 1;
}

.owner-story img {
  width: 100%;
  height: 100%;
  min-height: 470px;
  object-fit: cover;
}

.owner-story img.owner-photo-roland,
.owner-story img.owner-photo-kari {
  object-position: center 72%;
}

.owner-story > div {
  padding: clamp(24px, 4vw, 42px);
}

.owner-story h2 {
  font-size: clamp(2rem, 4vw, 3.5rem);
}

.owner-community-band {
  background: linear-gradient(180deg, var(--ng-white), var(--ng-paper));
}

.owner-community-grid > img {
  width: 100%;
  height: 100%;
  min-height: 430px;
  border-radius: var(--ng-radius);
  box-shadow: var(--ng-shadow);
  object-fit: cover;
  object-position: center 24%;
}

.owner-mini-cta {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 24px;
}

.values-panel {
  display: grid;
  gap: 22px;
}

.contact-method-band {
  background: var(--ng-white);
  border-bottom: 1px solid var(--ng-line);
  padding: 20px 0;
}

.contact-method-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr));
}

.contact-method-grid a,
.contact-method-grid article,
.link-grid a {
  display: grid;
  gap: 8px;
  padding: 20px;
  color: var(--ng-ink);
  text-decoration: none;
}

.contact-method-grid a:hover,
.contact-method-grid article:hover,
.link-grid a:hover {
  border-color: rgba(20, 92, 75, 0.34);
  transform: translateY(-2px);
}

.contact-method-grid span,
.link-grid small {
  color: var(--ng-teal);
  font-size: 0.78rem;
  font-weight: 900;
  text-transform: uppercase;
}

.contact-method-grid strong,
.link-grid span {
  font-size: 1.15rem;
  font-weight: 900;
}

.contact-method-grid small {
  color: var(--ng-muted);
  overflow-wrap: anywhere;
}

.contact-summary p {
  margin: 12px 0 0;
}

.contact-summary b {
  margin-right: 4px;
}

.contact-summary-owner {
  display: flex;
  align-items: center;
  gap: 12px;
  margin: 18px 0 8px;
  border: 1px solid var(--ng-line);
  border-radius: var(--ng-radius);
  background: var(--ng-paper);
  padding: 12px;
}

.contact-summary-owner img {
  flex: 0 0 auto;
  width: 58px;
  height: 58px;
  border-radius: 999px;
  object-fit: cover;
  object-position: center 18%;
}

.contact-summary-owner span,
.contact-summary-owner small {
  display: block;
}

.contact-summary-owner span {
  color: var(--ng-ink);
  font-weight: 900;
}

.contact-summary-owner small {
  margin-top: 3px;
  color: var(--ng-muted);
  line-height: 1.4;
}

.request-detail-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

.request-detail-list div {
  display: grid;
  gap: 10px;
}

.request-detail-list span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 32px;
  height: 32px;
  border-radius: 999px;
  background: var(--ng-sky);
}

.request-detail-list strong {
  color: var(--ng-ink);
  line-height: 1.42;
}

.contact-grid {
  grid-template-columns: minmax(0, 1.1fr) minmax(300px, 0.9fr);
}

.contact-sidebar {
  display: grid;
  gap: 16px;
}

.form-support-card {
  display: flex;
  align-items: center;
  gap: 14px;
  margin: 22px 0;
  background: var(--ng-paper);
}

.form-support-card img {
  flex: 0 0 auto;
  width: 64px;
  height: 64px;
  border-radius: 999px;
  object-fit: cover;
  object-position: center 18%;
}

.form-support-card strong,
.form-support-card span {
  display: block;
}

.form-support-card span {
  margin-top: 4px;
  color: var(--ng-muted);
  line-height: 1.45;
}

.site-brief-next-step {
  display: grid;
  gap: 8px;
  margin: 22px 0;
  border: 1px solid rgba(20, 92, 75, 0.18);
  border-radius: var(--ng-radius);
  background: linear-gradient(135deg, rgba(229, 243, 239, 0.88), rgba(255, 248, 221, 0.62));
  padding: 18px;
}

.site-brief-next-step span {
  color: var(--ng-teal);
  font-size: 0.74rem;
  font-weight: 900;
  text-transform: uppercase;
}

.site-brief-next-step strong {
  color: var(--ng-ink);
  line-height: 1.45;
}

.contact-confidence-strip {
  display: grid;
  gap: 10px;
  margin: 22px 0;
}

.contact-confidence-strip div {
  display: grid;
  grid-template-columns: minmax(96px, 0.28fr) minmax(0, 1fr);
  gap: 12px;
  align-items: start;
  border: 1px solid var(--ng-line);
  border-radius: var(--ng-radius);
  background: var(--ng-white);
  padding: 14px;
}

.contact-confidence-strip span,
.contact-confidence-strip strong {
  display: block;
}

.contact-confidence-strip span {
  color: var(--ng-teal);
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
}

.contact-confidence-strip strong {
  color: var(--ng-ink);
  font-size: 0.92rem;
  line-height: 1.42;
}

.request-planner {
  display: grid;
  gap: 14px;
  margin: 22px 0;
  border-top: 1px solid var(--ng-line);
  border-bottom: 1px solid var(--ng-line);
  padding: 22px 0;
}

.request-planner-header strong {
  display: block;
  margin-top: 6px;
  color: var(--ng-ink);
  font-size: clamp(1.35rem, 3vw, 2rem);
  line-height: 1.15;
}

.request-tabs {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

.request-path-card {
  background: var(--ng-paper);
  border-radius: var(--ng-radius);
  padding: 18px;
}

.request-path-card p {
  margin: 0;
  color: var(--ng-muted);
  line-height: 1.62;
}

.request-path-card ul {
  display: grid;
  gap: 8px;
  padding: 0;
  margin: 16px 0 0;
  list-style: none;
}

.request-path-card li {
  position: relative;
  padding-left: 22px;
  color: var(--ng-muted);
  line-height: 1.45;
}

.request-path-card li::before {
  position: absolute;
  left: 0;
  color: var(--ng-green);
  content: "✓";
  font-weight: 900;
}

.contact-owner-card {
  display: grid;
  grid-template-columns: 84px minmax(0, 1fr);
  align-items: center;
  gap: 16px;
}

.contact-owner-card img {
  width: 84px;
  height: 84px;
  border-radius: var(--ng-radius);
  object-fit: cover;
  object-position: center 66%;
}

.contact-owner-card span {
  color: var(--ng-teal);
  font-size: 0.78rem;
  font-weight: 900;
  text-transform: uppercase;
}

.contact-owner-card h3 {
  margin: 4px 0 6px;
}

.contact-owner-card p {
  margin: 0;
  color: var(--ng-muted);
  line-height: 1.5;
}

.timeline.compact {
  display: grid;
  gap: 16px;
  margin-top: 14px;
}

.timeline.compact strong,
.timeline.compact span {
  display: block;
}

.timeline.compact span {
  color: var(--ng-muted);
  margin-top: 5px;
}

.privacy-note-card {
  border-left: 5px solid var(--ng-gold);
}

.privacy-note-card a {
  color: var(--ng-green);
  font-weight: 900;
}

.reassurance-grid {
  align-items: flex-start;
}

.contact-form-card {
  margin-top: 22px;
  padding: clamp(20px, 3vw, 28px);
}

.contact-form-card form {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

.contact-form-card .form-group:nth-of-type(3),
.contact-form-card .form-group:nth-of-type(4),
.contact-form-card .form-group:nth-of-type(5),
.contact-form-card .alert {
  grid-column: 1/-1;
}

.form-group {
  display: grid;
  gap: 7px;
  margin: 0;
}

.control-label,
.resource-search span {
  color: var(--ng-ink);
  font-weight: 900;
}

.form-control,
.resource-search input {
  width: 100%;
  min-height: 48px;
  border: 1px solid var(--ng-line);
  border-radius: var(--ng-radius);
  background: var(--ng-white);
  color: var(--ng-ink);
  padding: 12px 14px;
}

textarea.form-control {
  resize: vertical;
}

.form-control:focus,
.resource-search input:focus {
  outline: 3px solid rgba(11, 124, 134, 0.22);
  border-color: var(--ng-teal);
}

.text-danger,
.error-alert {
  color: #9b261a;
}

.small,
.text-muted {
  color: var(--ng-muted);
  font-size: 0.9rem;
  line-height: 1.55;
}

.alert {
  border-radius: var(--ng-radius);
  padding: 12px 14px;
  font-weight: 800;
}

.success-alert {
  background: var(--ng-leaf);
  color: var(--ng-green);
}

.error-alert {
  background: #fee7e1;
}

.resource-toolbar {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: end;
  margin-bottom: 18px;
}

.resource-command-bar {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin: 0 0 24px;
}

.resource-command-bar div {
  border: 1px solid var(--ng-line);
  border-radius: var(--ng-radius);
  background: linear-gradient(135deg, rgba(248, 251, 249, 0.96), rgba(255, 255, 255, 0.98));
  box-shadow: 0 16px 36px rgba(23, 45, 52, 0.08);
  padding: 18px;
}

.resource-command-bar span,
.resource-command-bar small,
.resource-command-bar strong {
  display: block;
}

.resource-command-bar span {
  color: var(--ng-teal);
  font-size: 0.76rem;
  font-weight: 900;
  text-transform: uppercase;
}

.resource-command-bar strong {
  overflow-wrap: anywhere;
  margin-top: 6px;
  color: var(--ng-ink);
  font-size: clamp(1.15rem, 2.4vw, 1.85rem);
  line-height: 1.14;
}

.resource-command-bar small {
  margin-top: 8px;
  color: var(--ng-muted);
  line-height: 1.45;
}

.resource-category-guide {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
  margin: 0 0 24px;
}

.resource-category-guide button {
  display: grid;
  gap: 8px;
  min-height: 188px;
  border: 1px solid var(--ng-line);
  border-radius: var(--ng-radius);
  background: rgba(255, 255, 255, 0.92);
  color: var(--ng-ink);
  cursor: pointer;
  padding: 20px;
  text-align: left;
  box-shadow: 0 16px 42px rgba(20, 92, 75, 0.08);
}

.resource-category-guide button:hover,
.resource-category-guide button.is-selected {
  border-color: rgba(20, 92, 75, 0.36);
  background: var(--ng-leaf);
}

.resource-category-guide span,
.resource-category-guide em {
  color: var(--ng-teal);
  font-size: 0.76rem;
  font-style: normal;
  font-weight: 900;
  text-transform: uppercase;
}

.resource-category-guide strong {
  font-size: 1.25rem;
}

.resource-category-guide small {
  color: var(--ng-muted);
  font-size: 0.92rem;
  line-height: 1.45;
}

.resource-category-guide em {
  color: var(--ng-green);
  line-height: 1.35;
  text-transform: none;
}

.resource-search {
  display: grid;
  gap: 8px;
}

.clear-filter-button {
  min-height: 48px;
  padding: 10px 16px;
}

.resource-filter {
  margin: 18px 0 24px;
}

.resource-filter button {
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.resource-filter small {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 24px;
  min-height: 24px;
  border-radius: 999px;
  background: rgba(11, 124, 134, 0.12);
}

.resource-results {
  color: var(--ng-muted);
  font-weight: 800;
}

.resource-results-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin: 18px 0;
}

.resource-results-row p {
  margin: 0;
}

.resource-results-row p:last-child {
  color: var(--ng-muted);
  font-size: 0.95rem;
  line-height: 1.45;
}

.resource-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.resource-card {
  display: grid;
  align-content: start;
  grid-template-rows: auto auto auto auto 1fr auto;
  min-height: 330px;
  padding: 22px;
}

.resource-card-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 18px;
}

.resource-card-header span {
  border-radius: 999px;
  background: var(--ng-leaf);
  color: var(--ng-green);
  padding: 7px 10px;
  font-size: 0.78rem;
  font-weight: 900;
}

.resource-card-header small {
  color: var(--ng-muted);
  font-weight: 800;
}

.resource-card h3 {
  margin: 0;
  color: var(--ng-ink);
  font-size: clamp(1.25rem, 2vw, 1.55rem);
  line-height: 1.15;
}

.resource-service-line {
  margin: 10px 0 0;
  color: var(--ng-muted);
  font-weight: 800;
  line-height: 1.45;
}

.resource-verification-strip {
  display: flex;
  flex-wrap: wrap;
  gap: 7px;
  margin-top: 16px;
}

.resource-verification-strip span {
  border: 1px solid var(--ng-line);
  border-radius: 999px;
  background: var(--ng-white);
  color: var(--ng-green);
  padding: 6px 8px;
  font-size: 0.72rem;
  font-weight: 900;
}

.resource-detail-list {
  display: grid;
  gap: 10px;
  margin: 16px 0 0;
}

.resource-detail-list div {
  display: grid;
  gap: 3px;
}

.resource-detail-list dt {
  color: var(--ng-teal);
  font-size: 0.74rem;
  font-weight: 900;
  text-transform: uppercase;
}

.resource-detail-list dd {
  margin: 0;
  color: var(--ng-muted);
  line-height: 1.45;
}

.resource-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-self: end;
  margin-top: 22px;
}

.resource-actions a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border-radius: var(--ng-radius);
  background: var(--ng-sky);
  color: var(--ng-teal);
  padding: 9px 11px;
  font-weight: 900;
  text-decoration: none;
}

.resource-actions a:hover {
  background: var(--ng-green);
  color: var(--ng-white);
}

.empty-resource-state,
.resource-disclaimer {
  border: 1px solid var(--ng-line);
  border-radius: var(--ng-radius);
  background: var(--ng-white);
  margin-top: 22px;
  padding: 22px;
}

.resource-disclaimer {
  border-left: 5px solid var(--ng-gold);
  color: var(--ng-muted);
  line-height: 1.62;
}

.resource-review-list {
  display: grid;
  gap: 14px;
  border: 1px solid var(--ng-line);
  border-left: 5px solid var(--ng-blue);
  border-radius: var(--ng-radius);
  background: var(--ng-white);
  margin-top: 18px;
  padding: 22px;
  box-shadow: 0 16px 34px rgba(23, 45, 52, 0.07);
}

.resource-review-list ul {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.resource-review-list li {
  position: relative;
  color: var(--ng-muted);
  font-weight: 800;
  line-height: 1.45;
  padding-left: 24px;
}

.resource-review-list li::before {
  content: "✓";
  position: absolute;
  left: 0;
  color: var(--ng-green);
  font-weight: 900;
}

.link-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.policy-content {
  max-width: 860px;
}

.policy-content h2 {
  margin-top: 34px;
  color: var(--ng-green);
}

.site-footer {
  background: linear-gradient(135deg, rgba(16, 41, 39, 0.98), rgba(20, 92, 75, 0.94)), #102927;
  color: rgba(255, 255, 255, 0.82);
  padding: 58px 0 24px;
}

.footer-grid {
  display: grid;
  grid-template-columns: minmax(240px, 1.25fr) minmax(130px, 0.65fr) minmax(190px, 0.9fr) minmax(220px, 0.95fr) minmax(240px, 1.1fr);
  gap: 28px;
}

.footer-brand p {
  max-width: 360px;
}

.footer-resource-note {
  border-left: 4px solid var(--ng-gold);
  margin-top: 16px;
  padding-left: 12px;
}

.site-footer img {
  width: 92px;
  height: auto;
  margin-bottom: 18px;
  filter: drop-shadow(0 10px 24px rgba(255, 255, 255, 0.08));
}

.site-footer h2 {
  margin: 0 0 13px;
  color: var(--ng-white);
  font-size: 0.95rem;
  text-transform: uppercase;
}

.site-footer a,
.site-footer span,
.site-footer p {
  color: rgba(255, 255, 255, 0.78);
}

.site-footer a {
  display: flex;
  align-items: center;
  min-height: 36px;
  margin: 8px 0;
  text-decoration: none;
}

.site-footer a:hover {
  color: var(--ng-gold);
}

.footer-license {
  color: var(--ng-gold) !important;
  font-weight: 900;
}

.footer-badge-grid,
.footer-chip-grid {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 18px;
}

.footer-badge-grid span,
.footer-chip-grid span {
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.08);
  padding: 7px 10px;
  font-size: 0.78rem;
  font-weight: 900;
}

.footer-compliance {
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: var(--ng-radius);
  background: rgba(255, 255, 255, 0.06);
  padding: 18px;
}

.footer-compliance span {
  display: block;
  margin-bottom: 10px;
}

.footer-compliance-list {
  display: grid;
  gap: 8px;
  margin-top: 16px;
}

.footer-compliance-list span {
  border: 1px solid rgba(255, 255, 255, 0.12);
  border-radius: var(--ng-radius);
  background: rgba(255, 255, 255, 0.06);
  margin: 0;
  padding: 8px 10px;
  color: rgba(255, 255, 255, 0.84);
  font-size: 0.82rem;
  font-weight: 800;
}

.footer-compliance p,
.footer-service-area p {
  line-height: 1.55;
}

.footer-bottom {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 12px;
  margin-top: 30px;
  padding-top: 20px;
  border-top: 1px solid rgba(255, 255, 255, 0.14);
  color: rgba(255, 255, 255, 0.58);
}

.footer-utility-row {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 24px;
}

.footer-utility-row a {
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: var(--ng-radius);
  background: rgba(255, 255, 255, 0.08);
  color: rgba(255, 255, 255, 0.86);
  padding: 10px 12px;
  font-size: 0.86rem;
  font-weight: 900;
  text-decoration: none;
}

.footer-utility-row a:hover {
  border-color: rgba(213, 174, 69, 0.52);
  color: var(--ng-gold);
}

.mobile-sticky-cta {
  display: none;
}

table {
  width: 100%;
  border-collapse: collapse;
}

td {
  border-bottom: 1px solid var(--ng-line);
  padding: 10px 0;
}

.fw-bold {
  color: var(--ng-green);
  font-weight: 900;
}

@media (max-width: 1080px) {
  .feature-grid,
  .proof-grid,
  .resource-command-bar,
  .resource-category-guide,
  .scope-stat-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .resource-grid,
  .resource-review-list ul,
  .link-grid,
  .inspection-route-map,
  .walkthrough-grid,
  .report-tabs,
  .request-tabs {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 980px) {
  .site-header {
    grid-template-columns: minmax(0, 1fr) 44px;
    gap: 12px;
  }
  .mobile-menu-button {
    display: block;
  }
  .primary-nav {
    grid-column: 1/-1;
    display: none;
    align-items: stretch;
    justify-content: stretch;
    flex-direction: column;
    border-top: 1px solid var(--ng-line);
    padding-top: 10px;
  }
  .primary-nav.is-open {
    display: flex;
  }
  .primary-nav a {
    justify-content: center;
  }
  .header-actions {
    grid-column: 1/-1;
    justify-content: space-between;
  }
  .ng-hero {
    min-height: auto;
    padding: 72px 0;
  }
  .ng-hero-media {
    inset: 0;
    border: 0;
    border-radius: 0;
    opacity: 0.14;
    box-shadow: none;
  }
  .ng-hero-media img {
    object-position: center;
  }
  .ng-hero-grid,
  .page-hero-grid,
  .resources-hero-grid,
  .split-intro,
  .readiness-grid,
  .inspection-map-heading,
  .inspection-mid-cta,
  .scope-toolbar,
  .inspection-workbench,
  .inspection-system-panel,
  .local-grid,
  .report-preview-grid,
  .photo-walk-grid,
  .family-grid,
  .construction-grid,
  .values-grid,
  .owner-dossier-grid,
  .owner-profile-card,
  .owner-intro-grid,
  .owner-community-grid,
  .contact-prep-grid,
  .contact-grid,
  .reassurance-grid,
  .final-cta-panel,
  .tour-board,
  .tour-detail,
  .report-preview-card,
  .neighborhood-tour-detail,
  .owner-story,
  .owner-story.reverse,
  .footer-grid {
    grid-template-columns: 1fr;
  }
  .owner-story.reverse img,
  .owner-story.reverse div {
    grid-column: auto;
    grid-row: auto;
  }
  .owner-story img.owner-photo-roland,
  .owner-story img.owner-photo-kari {
    object-position: center 92%;
  }
  .tour-stops {
    position: static;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .inspection-system-rail {
    position: static;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    max-height: none;
  }
  .inspection-route-command {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .inspection-route-command .ng-button {
    min-height: auto;
  }
  .tour-detail img,
  .system-image-stack img,
  .system-panel-media img,
  .owner-profile-card img,
  .owner-story img,
  .owner-community-grid > img,
  .family-grid img {
    min-height: 320px;
  }
}
@media (max-width: 640px) {
  body {
    padding-bottom: 74px;
  }
  .site-container {
    width: min(100% - 28px, 1120px);
  }
  .site-header {
    padding: 10px 14px;
  }
  .brand-mark span {
    display: none;
  }
  .brand-mark img {
    width: 88px;
    height: 64px;
  }
  .header-actions {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    max-width: 100%;
  }
  .ng-hero {
    padding: 46px 0 54px;
  }
  .ng-hero-media {
    opacity: 0.08;
  }
  .header-actions .phone-link {
    display: none;
  }
  .ng-hero-copy h1,
  .page-hero h1 {
    font-size: clamp(2rem, 10vw, 2.85rem);
  }
  .hero-actions {
    align-items: stretch;
    flex-direction: column;
    margin-top: 22px;
  }
  .hero-actions .ng-button {
    min-width: 0;
    width: 100%;
  }
  .section-panel {
    padding: 56px 0;
  }
  .feature-grid,
  .readiness-list,
  .resource-grid,
  .resource-command-bar,
  .resource-category-guide,
  .resource-review-list ul,
  .report-tabs,
  .request-tabs,
  .link-grid,
  .contact-method-grid,
  .proof-grid,
  .request-detail-list,
  .inspection-list,
  .inspection-route-command,
  .system-evidence-ledger,
  .checkpoint-ledger-header,
  .field-route-note,
  .inspection-route-map,
  .system-callouts,
  .walkthrough-grid,
  .tour-stops,
  .resource-toolbar {
    grid-template-columns: 1fr;
  }
  .resource-results-row {
    display: grid;
    gap: 8px;
  }
  .resource-command-bar div,
  .resource-review-list {
    padding: 18px;
  }
  .pill-control button,
  .area-tabs button,
  .focus-tabs button,
  .resource-filter button,
  .resource-category-guide button,
  .scope-filter button,
  .request-tabs button,
  .clear-filter-button,
  .inspection-route-map button,
  .inspection-system-rail button,
  .tour-stops button,
  .panel-actions .ng-button {
    width: 100%;
  }
  .scope-stat-grid {
    grid-template-columns: 1fr;
  }
  .scope-toolbar {
    gap: 14px;
  }
  .scope-filter {
    justify-content: stretch;
  }
  .field-route-note .ng-button,
  .inspection-route-command .ng-button {
    width: 100%;
  }
  .system-evidence-ledger div {
    grid-template-columns: 1fr;
    gap: 6px;
  }
  .inspection-system-rail {
    grid-template-columns: 1fr;
  }
  .inspection-route-map button {
    min-height: auto;
  }
  .inspection-route-map strong {
    margin-top: 12px;
  }
  .system-image-stack > div {
    left: 12px;
    right: 12px;
    bottom: 12px;
  }
  .system-panel-media > div {
    left: 12px;
    right: 12px;
    bottom: 12px;
  }
  .walkthrough-grid img {
    height: 210px;
  }
  .focus-photo,
  .focus-photo img {
    min-height: 440px;
  }
  .focus-caption {
    left: 12px;
    right: 12px;
    bottom: 12px;
  }
  .report-preview-card {
    box-shadow: 0 18px 38px rgba(23, 45, 52, 0.1);
  }
  .report-preview-image,
  .report-preview-image img {
    min-height: 230px;
  }
  .owner-profile-card img {
    min-height: 300px;
  }
  .form-support-card {
    align-items: flex-start;
  }
  .contact-owner-card {
    grid-template-columns: 72px minmax(0, 1fr);
  }
  .contact-owner-card img {
    width: 72px;
    height: 72px;
  }
  .mobile-sticky-cta {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 40;
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    gap: 10px;
    padding: 10px 14px calc(10px + env(safe-area-inset-bottom));
    border-top: 1px solid var(--ng-line);
    background: rgba(248, 251, 247, 0.96);
    -webkit-backdrop-filter: blur(14px);
            backdrop-filter: blur(14px);
  }
  .mobile-sticky-cta a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 0;
    min-height: 48px;
    border-radius: var(--ng-radius);
    background: var(--ng-teal);
    color: var(--ng-white);
    font-size: 0.9rem;
    font-weight: 900;
    text-decoration: none;
  }
  .mobile-sticky-cta a:first-child {
    background: var(--ng-green);
  }
}
/* Plan D: Field Journal concept */
:root {
  --ng-ink: #182429;
  --ng-muted: #5f6e6e;
  --ng-green: #23624f;
  --ng-teal: #3a7581;
  --ng-blue: #335d7b;
  --ng-gold: #d5ae45;
  --ng-coral: #b85e50;
  --ng-paper: #f4f6f1;
  --ng-sky: #eef4f5;
  --ng-leaf: #e5eee7;
  --ng-line: #cdd9d3;
  --ng-white: #ffffff;
  --ng-shadow: 0 22px 52px rgba(24, 36, 41, 0.14);
  --ng-radius: 6px;
}

body {
  background: linear-gradient(180deg, rgba(244, 246, 241, 0.96), rgba(238, 244, 245, 0.92)), repeating-linear-gradient(0deg, rgba(24, 36, 41, 0.045) 0, rgba(24, 36, 41, 0.045) 1px, transparent 1px, transparent 34px), repeating-linear-gradient(90deg, rgba(24, 36, 41, 0.035) 0, rgba(24, 36, 41, 0.035) 1px, transparent 1px, transparent 34px);
}

main {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.9) 0%, rgba(244, 246, 241, 0.94) 38%, rgba(238, 244, 245, 0.92) 100%), repeating-linear-gradient(0deg, rgba(24, 36, 41, 0.04) 0, rgba(24, 36, 41, 0.04) 1px, transparent 1px, transparent 32px), repeating-linear-gradient(90deg, rgba(24, 36, 41, 0.035) 0, rgba(24, 36, 41, 0.035) 1px, transparent 1px, transparent 32px);
}

.site-header {
  border-bottom: 1px solid rgba(24, 36, 41, 0.14);
  background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 14px 34px rgba(24, 36, 41, 0.08);
}

.site-header::before {
  height: 4px;
  background: repeating-linear-gradient(90deg, var(--ng-green) 0, var(--ng-green) 34px, var(--ng-gold) 34px, var(--ng-gold) 46px, var(--ng-blue) 46px, var(--ng-blue) 80px);
}

.brand-mark img {
  width: 68px;
  height: 52px;
}

.header-actions {
  align-items: flex-start;
}

.primary-nav a,
.phone-link,
.ng-button,
.pill-control button,
.area-tabs button,
.focus-tabs button,
.resource-filter button,
.scope-filter button,
.request-tabs button {
  border-radius: 4px;
}

.primary-nav a:hover,
.primary-nav a.is-active {
  background: var(--ng-ink);
  color: var(--ng-white);
}

.ng-button-primary,
.phone-link {
  background: var(--ng-green);
  box-shadow: 0 14px 24px rgba(35, 98, 79, 0.18);
}

.ng-button-secondary {
  background: var(--ng-blue);
  color: var(--ng-white);
}

.ng-button-ghost {
  border-color: rgba(24, 36, 41, 0.14);
  background: rgba(255, 255, 255, 0.92);
}

.ng-hero,
.neighborhood-page-hero {
  background: linear-gradient(115deg, rgba(255, 255, 255, 0.96) 0%, rgba(244, 246, 241, 0.94) 48%, rgba(238, 244, 245, 0.88) 100%), repeating-linear-gradient(0deg, rgba(24, 36, 41, 0.048) 0, rgba(24, 36, 41, 0.048) 1px, transparent 1px, transparent 28px), repeating-linear-gradient(90deg, rgba(24, 36, 41, 0.035) 0, rgba(24, 36, 41, 0.035) 1px, transparent 1px, transparent 28px);
}

.inspection-guide-hero {
  background: linear-gradient(115deg, rgba(255, 255, 255, 0.94), rgba(244, 246, 241, 0.86) 52%, rgba(238, 244, 245, 0.8)), url('inspections-electrical.jpeg') center/cover;
}

.contact-guide-hero {
  background: linear-gradient(115deg, rgba(255, 255, 255, 0.94), rgba(244, 246, 241, 0.84) 52%, rgba(238, 244, 245, 0.76)), url('kari_roland_door.jpg') right center/cover;
}

.owner-hero {
  background: linear-gradient(115deg, rgba(255, 255, 255, 0.94), rgba(244, 246, 241, 0.84) 52%, rgba(238, 244, 245, 0.76)), url('kari_and_roland_rr.jpg') center/cover;
}

.ng-hero-media {
  border: 1px solid rgba(24, 36, 41, 0.2);
  box-shadow: 18px 18px 0 rgba(35, 98, 79, 0.16), var(--ng-shadow);
}

.ng-hero-media::after,
.focus-photo::after,
.system-panel-media::after {
  background: linear-gradient(180deg, rgba(24, 36, 41, 0.04), rgba(24, 36, 41, 0.22)), repeating-linear-gradient(90deg, transparent 0, transparent 20px, rgba(255, 255, 255, 0.11) 20px, rgba(255, 255, 255, 0.11) 21px);
}

.eyebrow,
.mini-label,
.resource-command-bar span,
.resource-category-guide span,
.resource-category-guide em,
.resource-detail-list dt {
  color: var(--ng-blue);
  letter-spacing: 0.04em;
}

.guide-panel,
.feature-card,
.route-card,
.area-story,
.focus-caption,
.report-preview-card,
.owner-profile-card,
.owner-story,
.owner-command-grid article,
.values-panel article,
.sidebar-card,
.resource-card,
.contact-method-grid article,
.resource-category-guide button,
.resource-command-bar div,
.resource-review-list,
.link-grid a,
.form-shell {
  border: 1px solid rgba(24, 36, 41, 0.14);
  border-radius: var(--ng-radius);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(250, 252, 248, 0.94));
  box-shadow: 0 16px 34px rgba(24, 36, 41, 0.08);
}

.guide-panel,
.resource-command-bar div,
.scope-toolbar,
.request-planner,
.footer-compliance {
  position: relative;
}

.guide-panel::before,
.resource-command-bar div::before,
.scope-toolbar::before,
.request-planner::before,
.footer-compliance::before {
  position: absolute;
  inset: 0 auto 0 0;
  width: 5px;
  border-radius: var(--ng-radius) 0 0 var(--ng-radius);
  background: linear-gradient(180deg, var(--ng-green), var(--ng-gold));
  content: "";
}

.field-brief-card {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.95), rgba(244, 246, 241, 0.96)), repeating-linear-gradient(0deg, transparent 0, transparent 29px, rgba(24, 36, 41, 0.08) 30px);
}

.guide-owner {
  border-bottom: 1px dashed rgba(24, 36, 41, 0.18);
  padding-bottom: 18px;
}

.guide-steps li {
  border-bottom: 1px dashed rgba(24, 36, 41, 0.14);
}

.field-log-strip {
  border-top: 1px solid rgba(24, 36, 41, 0.14);
  border-bottom: 1px solid rgba(24, 36, 41, 0.14);
  background: var(--ng-ink);
  color: var(--ng-white);
}

.field-log-strip .site-container {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 1px;
  background: rgba(255, 255, 255, 0.16);
}

.field-log-strip article {
  display: grid;
  gap: 6px;
  background: linear-gradient(135deg, rgba(35, 98, 79, 0.34), rgba(51, 93, 123, 0.3)), var(--ng-ink);
  padding: 22px;
}

.field-log-strip span,
.field-log-strip small {
  color: rgba(255, 255, 255, 0.68);
  font-size: 0.76rem;
  font-weight: 900;
  text-transform: uppercase;
}

.field-log-strip strong {
  color: var(--ng-white);
  font-size: clamp(1.35rem, 3vw, 2.35rem);
  line-height: 1;
}

.readiness-list button,
.owner-profile-tabs button,
.inspection-system-rail button,
.request-detail-list div,
.timeline-path div,
.contact-method-grid a {
  border-radius: var(--ng-radius);
  border: 1px solid rgba(24, 36, 41, 0.14);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.94), rgba(244, 246, 241, 0.96));
  box-shadow: 0 10px 24px rgba(24, 36, 41, 0.07);
}

.readiness-list button.is-checked,
.owner-profile-tabs button.is-selected,
.inspection-system-rail button.is-selected,
.pill-control button.is-selected,
.area-tabs button.is-selected,
.focus-tabs button.is-selected,
.resource-filter button.is-selected,
.scope-filter button.is-selected,
.request-tabs button.is-selected,
.resource-category-guide button.is-selected {
  border-color: rgba(35, 98, 79, 0.42);
  background: linear-gradient(135deg, rgba(35, 98, 79, 0.14), rgba(213, 174, 69, 0.13));
  color: var(--ng-green);
}

.report-preview-shell,
.inspection-workbench,
.owner-dossier-band,
.contact-prep-band,
.resources-hero,
.walkthrough-band {
  background: linear-gradient(180deg, rgba(238, 244, 245, 0.62), rgba(244, 246, 241, 0.58)), repeating-linear-gradient(90deg, rgba(24, 36, 41, 0.05) 0, rgba(24, 36, 41, 0.05) 1px, transparent 1px, transparent 28px);
}

.report-tabs button {
  display: grid;
  align-content: center;
  gap: 4px;
  padding: 10px 12px;
  text-align: left;
}

.report-tabs button span,
.report-tabs button small {
  display: block;
}

.report-tabs button small {
  color: var(--ng-muted);
  font-size: 0.7rem;
  font-weight: 900;
  text-transform: uppercase;
}

.report-tabs button.is-selected small {
  color: rgba(255, 255, 255, 0.72);
}

.report-preview-image,
.system-panel-media,
.focus-photo,
.owner-portrait,
.owner-story img,
.walkthrough-grid img,
.family-grid img,
.owner-community-grid > img {
  border-radius: var(--ng-radius);
  border: 1px solid rgba(24, 36, 41, 0.16);
  box-shadow: 12px 12px 0 rgba(51, 93, 123, 0.12);
}

.report-preview-image {
  position: relative;
  overflow: hidden;
}

.evidence-stamp {
  position: absolute;
  left: 16px;
  right: 16px;
  bottom: 16px;
  display: grid;
  gap: 4px;
  border: 1px solid rgba(255, 255, 255, 0.34);
  border-radius: var(--ng-radius);
  background: rgba(24, 36, 41, 0.78);
  color: var(--ng-white);
  padding: 14px;
  -webkit-backdrop-filter: blur(12px);
          backdrop-filter: blur(12px);
}

.evidence-stamp span,
.evidence-stamp strong {
  color: var(--ng-white);
}

.evidence-stamp span {
  font-size: 0.74rem;
  font-weight: 900;
  text-transform: uppercase;
}

.evidence-stamp strong {
  font-size: 1rem;
}

.report-preview-copy span,
.focus-caption span,
.system-panel-media span,
.resource-card-header span,
.footer-license {
  color: var(--ng-green);
}

.field-note-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 10px;
  margin: 18px 0 4px;
}

.field-note-grid div {
  display: grid;
  grid-template-columns: minmax(92px, 0.35fr) minmax(0, 1fr);
  gap: 12px;
  align-items: start;
  border: 1px solid rgba(24, 36, 41, 0.12);
  border-radius: var(--ng-radius);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.86), rgba(244, 246, 241, 0.84));
  padding: 12px;
}

.field-note-grid small,
.field-note-grid strong {
  display: block;
}

.field-note-grid small {
  color: var(--ng-blue);
  font-size: 0.68rem;
  font-weight: 900;
  text-transform: uppercase;
}

.field-note-grid strong {
  color: var(--ng-ink);
  font-size: 0.92rem;
  line-height: 1.35;
}

.owner-hero-ledger span,
.owner-command-grid article,
.owner-profile-log div,
.contact-method-grid article,
.site-brief-next-step {
  border-color: rgba(24, 36, 41, 0.15);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.95), rgba(244, 246, 241, 0.94)), repeating-linear-gradient(0deg, transparent 0, transparent 27px, rgba(24, 36, 41, 0.045) 28px);
  box-shadow: 0 14px 30px rgba(24, 36, 41, 0.08);
}

.owner-command-grid article {
  position: relative;
  overflow: hidden;
}

.owner-command-grid article::before {
  position: absolute;
  inset: 0 auto 0 0;
  width: 5px;
  background: linear-gradient(180deg, var(--ng-green), var(--ng-gold));
  content: "";
}

.owner-profile-log span,
.owner-command-grid span,
.site-brief-next-step span,
.contact-method-grid span {
  color: var(--ng-blue);
  letter-spacing: 0.04em;
}

.inspection-route-command article,
.system-evidence-ledger div,
.checkpoint-ledger,
.field-route-note {
  border-color: rgba(24, 36, 41, 0.15);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.95), rgba(244, 246, 241, 0.94)), repeating-linear-gradient(0deg, transparent 0, transparent 27px, rgba(24, 36, 41, 0.045) 28px);
  box-shadow: 0 16px 34px rgba(24, 36, 41, 0.08);
}

.inspection-route-command article {
  position: relative;
  overflow: hidden;
}

.inspection-route-command article::before {
  position: absolute;
  inset: 0 auto 0 0;
  width: 5px;
  background: linear-gradient(180deg, var(--ng-green), var(--ng-gold));
  content: "";
}

.inspection-route-command article span,
.system-evidence-ledger span,
.checkpoint-ledger-header span {
  color: var(--ng-blue);
  letter-spacing: 0.04em;
}

.inspection-route-command .ng-button,
.field-route-note .ng-button {
  justify-content: center;
  text-align: center;
}

.inspection-system-rail em {
  background: #fff8dd;
  color: #6e5511;
}

.system-evidence-ledger div {
  box-shadow: none;
}

.checkpoint-ledger {
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.82);
}

.inspection-list span {
  border-color: rgba(24, 36, 41, 0.13);
  background: rgba(255, 255, 255, 0.78);
  box-shadow: 0 8px 18px rgba(24, 36, 41, 0.05);
}

.field-route-note {
  border-left: 5px solid var(--ng-gold);
}

.scope-progress div,
.readiness-meter {
  background: rgba(24, 36, 41, 0.1);
}

.scope-progress i,
.readiness-meter span {
  background: linear-gradient(90deg, var(--ng-green), var(--ng-gold));
}

.inspection-system-panel,
.contact-grid,
.owner-dossier-grid,
.resources-hero-grid,
.construction-grid,
.final-cta-panel {
  border-radius: var(--ng-radius);
}

.inspection-mid-cta,
.final-cta-panel {
  border: 1px solid rgba(24, 36, 41, 0.16);
  background: linear-gradient(135deg, rgba(24, 36, 41, 0.96), rgba(35, 98, 79, 0.9));
  color: var(--ng-white);
}

.inspection-mid-cta .eyebrow,
.final-cta-panel .eyebrow,
.site-footer h2 {
  color: var(--ng-gold);
}

.site-footer {
  background: linear-gradient(135deg, rgba(24, 36, 41, 0.98), rgba(35, 98, 79, 0.94)), repeating-linear-gradient(0deg, transparent 0, transparent 31px, rgba(255, 255, 255, 0.06) 32px);
}

.footer-badge-grid span,
.footer-chip-grid span,
.footer-compliance-list span {
  border-radius: 4px;
}

.resource-card-header {
  border-bottom: 1px dashed rgba(24, 36, 41, 0.16);
  padding-bottom: 14px;
}

.resource-card {
  position: relative;
  overflow: hidden;
}

.resource-card::before {
  position: absolute;
  inset: 0 auto 0 0;
  width: 5px;
  background: linear-gradient(180deg, var(--ng-green), var(--ng-gold));
  content: "";
}

.resource-verification-strip span {
  border-color: rgba(213, 174, 69, 0.34);
  background: #fff8dd;
  color: #6e5511;
}

.resource-actions a {
  background: rgba(51, 93, 123, 0.12);
  color: var(--ng-blue);
}

.link-grid small {
  text-transform: none;
}

.footer-resource-note {
  color: rgba(255, 255, 255, 0.82);
}

.footer-utility-row {
  border-top: 1px solid rgba(255, 255, 255, 0.14);
  padding-top: 20px;
}

.mobile-sticky-cta {
  background: rgba(255, 255, 255, 0.96);
}

.mobile-sticky-cta a:first-child {
  background: var(--ng-green);
}

.mobile-sticky-cta a:last-child {
  background: var(--ng-blue);
}

@media (max-width: 1080px) {
  .closing-path-workbench {
    grid-template-columns: 1fr;
  }
  .field-log-strip .site-container {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .resource-category-guide {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .contact-method-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .owner-command-grid {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 640px) {
  .ng-hero,
  .neighborhood-page-hero {
    background: linear-gradient(180deg, rgba(255, 255, 255, 0.94), rgba(244, 246, 241, 0.92)), repeating-linear-gradient(0deg, rgba(24, 36, 41, 0.045) 0, rgba(24, 36, 41, 0.045) 1px, transparent 1px, transparent 30px);
  }
  .ng-hero {
    padding: 38px 0 48px;
  }
  .ng-hero-copy h1,
  .page-hero h1 {
    font-size: 2.42rem;
    line-height: 1.03;
  }
  .hero-lede,
  .page-hero p {
    margin-top: 16px;
    font-size: 1rem;
    line-height: 1.52;
  }
  .neighborhood-trust {
    gap: 8px;
    margin-top: 18px;
  }
  .neighborhood-trust span {
    padding: 7px 9px;
    font-size: 0.78rem;
  }
  .resource-card {
    min-height: auto;
  }
  .resource-category-guide {
    grid-template-columns: 1fr;
  }
  .footer-utility-row {
    display: grid;
  }
  .owner-hero-ledger {
    display: grid;
  }
  .owner-profile-log div {
    grid-template-columns: 1fr;
    gap: 6px;
  }
  .contact-method-grid {
    grid-template-columns: 1fr;
  }
  .field-log-strip .site-container {
    width: 100%;
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .field-log-strip article {
    padding: 16px 14px;
  }
  .field-log-strip strong {
    font-size: 1.45rem;
  }
  .ng-hero-media {
    box-shadow: none;
  }
  .report-preview-image,
  .system-panel-media,
  .focus-photo,
  .owner-portrait,
  .owner-story img,
  .walkthrough-grid img,
  .family-grid img,
  .owner-community-grid > img {
    box-shadow: none;
  }
  .field-note-grid {
    grid-template-columns: 1fr;
  }
  .field-note-grid div {
    grid-template-columns: 1fr;
    gap: 6px;
  }
  .evidence-stamp {
    left: 12px;
    right: 12px;
    bottom: 12px;
  }
}
/* Plan E: Closing Concierge */
:root {
  --ng-ink: #18252d;
  --ng-muted: #62727a;
  --ng-green: #173f35;
  --ng-teal: #305f73;
  --ng-blue: #244f73;
  --ng-gold: #c99a4a;
  --ng-coral: #b86f63;
  --ng-paper: #f8f4ec;
  --ng-sky: #eef5f3;
  --ng-leaf: #e8f0ea;
  --ng-line: #dfd6c9;
  --ng-white: #fffdf8;
  --ng-shadow: 0 24px 58px rgba(24, 37, 45, 0.11);
  --ng-radius: 6px;
}

main {
  background: linear-gradient(180deg, #fffdf8 0%, #f8f4ec 34%, #ffffff 64%, #eef5f3 100%);
}

.site-header {
  border-bottom: 1px solid rgba(24, 37, 45, 0.12);
  background: rgba(255, 253, 248, 0.97);
  box-shadow: 0 12px 34px rgba(24, 37, 45, 0.08);
}

.site-header::before {
  height: 4px;
  background: linear-gradient(90deg, var(--ng-green), var(--ng-gold), var(--ng-blue), var(--ng-coral));
}

.brand-mark img {
  filter: drop-shadow(0 8px 14px rgba(24, 37, 45, 0.12));
}

.primary-nav a:hover,
.primary-nav a.is-active {
  background: #f3eadb;
  color: var(--ng-green);
}

.contact-form-card input,
.contact-form-card textarea,
.resource-search input {
  background: #fffdf8;
  border-color: rgba(24, 37, 45, 0.16);
}

.neighborhood-trust span,
.credential-list span,
.local-marker-grid span,
.mini-chip-grid span,
.city-chip-grid span {
  border-color: rgba(201, 154, 74, 0.34);
  background: #fff7e6;
  color: #694b19;
}

.phone-link,
.ng-button-primary,
.mobile-sticky-cta a:first-child {
  background: var(--ng-green);
  color: var(--ng-white);
}

.ng-button-secondary,
.ng-button-ghost {
  border-color: rgba(24, 37, 45, 0.18);
  background: #fffdf8;
  color: var(--ng-green);
}

.ng-hero,
.page-hero {
  position: relative;
  overflow: hidden;
  background: linear-gradient(135deg, rgba(255, 253, 248, 0.97), rgba(246, 239, 226, 0.93)), repeating-linear-gradient(90deg, rgba(24, 37, 45, 0.045) 0, rgba(24, 37, 45, 0.045) 1px, transparent 1px, transparent 80px);
}

.ng-hero {
  min-height: 650px;
}

.ng-hero::before,
.page-hero::before {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(90deg, rgba(23, 63, 53, 0.06), transparent 34%, rgba(201, 154, 74, 0.08)), repeating-linear-gradient(0deg, transparent 0, transparent 47px, rgba(24, 37, 45, 0.04) 48px);
  content: "";
}

.ng-hero-media {
  border-radius: 0;
  box-shadow: 0 34px 90px rgba(24, 37, 45, 0.2);
}

.ng-hero-media::after {
  background: linear-gradient(90deg, rgba(13, 33, 31, 0.72), rgba(13, 33, 31, 0.24) 56%, rgba(255, 253, 248, 0.72)), linear-gradient(180deg, transparent 0%, rgba(13, 33, 31, 0.52) 100%);
}

.ng-hero-copy,
.page-hero-grid > div:first-child,
.guide-panel,
.field-brief-card,
.light,
.report-preview-shell,
.route-card,
.area-story,
.feature-card,
.focus-photo,
.owner-profile-card,
.owner-story,
.sidebar-card,
.resource-card,
.resources-guide-panel,
.contact-form-card,
.request-planner,
.form-support-card,
.site-brief-next-step {
  border: 1px solid rgba(24, 37, 45, 0.13);
  background: rgba(255, 253, 248, 0.94);
  box-shadow: 0 22px 48px rgba(24, 37, 45, 0.09);
}

.ng-hero-copy {
  padding: 28px;
}

.ng-hero-copy h1,
.page-hero h1,
.section-heading h2,
.split-intro h2 {
  color: #14242a;
}

.ng-hero-copy h1 {
  max-width: 620px;
  font-size: 3.7rem;
  line-height: 1.02;
}

.page-hero h1 {
  font-size: 3.45rem;
  line-height: 1.04;
}

.neighborhood-page-hero,
.resources-hero,
.compact-hero {
  padding: 48px 0 36px;
}

.hero-lede {
  font-size: 1.08rem;
}

.eyebrow,
.mini-label,
.feature-icon,
.resource-card-header small,
.owner-profile-card span,
.proof-grid span {
  color: var(--ng-blue);
}

.guide-panel::before,
.feature-card::before,
.resource-card::before,
.owner-command-grid article::before {
  background: linear-gradient(180deg, var(--ng-gold), var(--ng-green));
}

.field-log-strip {
  border-top: 1px solid rgba(24, 37, 45, 0.1);
  border-bottom: 1px solid rgba(24, 37, 45, 0.1);
  background: #18252d;
}

.field-log-strip article {
  border-color: rgba(255, 253, 248, 0.16);
  background: rgba(255, 253, 248, 0.06);
}

.field-log-strip span,
.field-log-strip small {
  color: rgba(255, 253, 248, 0.72);
}

.field-log-strip strong {
  color: #fffdf8;
}

.readiness-band,
.report-preview-band,
.local-band,
.walkthrough-band,
.owner-command-band,
.contact-method-band,
.contact-prep-band {
  background: linear-gradient(135deg, rgba(255, 253, 248, 0.96), rgba(244, 237, 224, 0.9)), repeating-linear-gradient(90deg, transparent 0, transparent 58px, rgba(24, 37, 45, 0.045) 59px);
}

.readiness-list button,
.report-tabs button,
.pill-control button,
.area-tabs button,
.focus-tabs button,
.scope-filter button,
.inspection-system-rail button,
.request-tabs button,
.resource-filter button,
.resource-category-guide button {
  border-color: rgba(24, 37, 45, 0.14);
  background: #fffdf8;
  color: var(--ng-ink);
}

.readiness-list button.is-checked,
.report-tabs button.is-selected,
.pill-control button.is-selected,
.area-tabs button.is-selected,
.focus-tabs button.is-selected,
.scope-filter button.is-selected,
.inspection-system-rail button.is-selected,
.request-tabs button.is-selected,
.resource-filter button.is-selected,
.resource-category-guide button.is-selected {
  border-color: rgba(23, 63, 53, 0.38);
  background: #173f35;
  color: #fffdf8;
}

.readiness-list button.is-checked small,
.report-tabs button.is-selected small,
.inspection-system-rail button.is-selected small,
.inspection-system-rail button.is-selected em,
.resource-category-guide button.is-selected small,
.resource-category-guide button.is-selected em {
  color: rgba(255, 253, 248, 0.76);
}

.readiness-meter span,
.scope-progress i {
  background: linear-gradient(90deg, var(--ng-green), var(--ng-gold), var(--ng-coral));
}

.report-preview-card,
.inspection-system-panel,
.contact-grid,
.owner-dossier-grid,
.resources-hero-grid,
.construction-grid {
  border: 1px solid rgba(24, 37, 45, 0.13);
  background: rgba(255, 253, 248, 0.94);
}

.resources-hero-grid {
  align-items: start;
  padding: clamp(24px, 4vw, 42px);
}

.report-preview-card {
  grid-template-columns: minmax(180px, 0.62fr) minmax(0, 1.18fr);
}

.report-preview-image,
.report-preview-image img {
  min-height: 330px;
}

.report-preview-copy {
  padding: 24px;
}

.report-preview-copy h3 {
  font-size: clamp(1.4rem, 2.2vw, 2rem);
}

.report-preview-copy p {
  line-height: 1.48;
}

.report-preview-copy ul {
  gap: 7px;
  margin-top: 14px;
}

.owner-dossier-grid {
  grid-template-columns: minmax(260px, 0.72fr) minmax(0, 1.28fr);
  align-items: stretch;
  gap: 0;
  overflow: hidden;
  padding: 0;
}

.owner-dossier-grid > div:first-child {
  display: grid;
  align-content: center;
  border-right: 1px solid rgba(255, 253, 248, 0.16);
  background: linear-gradient(135deg, rgba(24, 37, 45, 0.96), rgba(23, 63, 53, 0.92)), repeating-linear-gradient(90deg, transparent 0, transparent 52px, rgba(255, 253, 248, 0.055) 53px);
  color: #fffdf8;
  padding: clamp(24px, 4vw, 42px);
}

.owner-dossier-grid > div:first-child .eyebrow {
  color: #f3cc82;
}

.owner-dossier-grid > div:first-child h2 {
  color: #fffdf8;
  font-size: clamp(2rem, 3vw, 3rem);
}

.owner-dossier-grid > div:first-child p {
  color: rgba(255, 253, 248, 0.78);
}

.owner-profile-tabs button {
  border-color: rgba(255, 253, 248, 0.18);
  background: rgba(255, 253, 248, 0.08);
  color: #fffdf8;
}

.owner-profile-tabs button span {
  color: rgba(255, 253, 248, 0.72);
}

.owner-profile-tabs button strong {
  color: inherit;
}

.owner-profile-tabs button.is-selected {
  border-color: rgba(243, 204, 130, 0.64);
  background: #fffdf8;
  color: var(--ng-green);
}

.owner-profile-tabs button.is-selected span {
  color: var(--ng-blue);
}

.owner-profile-card {
  border: 0;
  border-left: 1px solid rgba(24, 37, 45, 0.1);
  border-radius: 0;
  background: rgba(255, 253, 248, 0.96);
  box-shadow: none;
}

.owner-profile-card img {
  min-height: 100%;
}

.owner-profile-log div,
.contact-confidence-strip div {
  border: 1px solid rgba(24, 37, 45, 0.13);
  background: rgba(255, 253, 248, 0.9);
  box-shadow: none;
}

.owner-profile-actions .ng-button {
  min-width: 140px;
}

.field-note-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.field-note-grid div {
  grid-template-columns: 1fr;
}

.evidence-stamp,
.system-panel-media div,
.focus-caption,
.owner-portrait figcaption {
  border: 1px solid rgba(255, 253, 248, 0.22);
  background: rgba(24, 37, 45, 0.88);
  color: #fffdf8;
}

.system-panel-media div span {
  color: #f3cc82;
}

.system-panel-media div strong {
  color: #fffdf8;
}

.field-note-grid div,
.system-evidence-ledger div,
.system-callouts div,
.inspection-concierge-brief article,
.inspection-route-command article,
.scope-stat-grid article,
.resource-command-bar > div,
.owner-command-grid article,
.proof-grid div,
.contact-method-grid a,
.contact-method-grid article,
.closing-prep-card {
  border: 1px solid rgba(24, 37, 45, 0.13);
  background: rgba(255, 253, 248, 0.9);
  box-shadow: 0 14px 32px rgba(24, 37, 45, 0.07);
}

.system-panel-copy h3 {
  font-size: clamp(2rem, 3vw, 3rem);
}

.inspection-concierge-brief article {
  box-shadow: none;
}

.closing-path-workbench {
  display: grid;
  grid-template-columns: 1fr;
  gap: 16px;
  margin-top: 18px;
}

.closing-path-card {
  display: grid;
  grid-template-columns: minmax(170px, 0.72fr) minmax(0, 1fr);
  overflow: hidden;
  margin-top: 0;
}

.closing-path-card > div:not(.closing-path-image) {
  padding: 22px;
}

.closing-path-image {
  position: relative;
  min-height: 100%;
  overflow: hidden;
  background: var(--ng-sky);
}

.closing-path-image img {
  width: 100%;
  height: 100%;
  min-height: 270px;
  object-fit: cover;
  object-position: center;
}

.closing-path-image::after {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(24, 37, 45, 0), rgba(24, 37, 45, 0.48));
  content: "";
}

.closing-path-image span {
  position: absolute;
  left: 14px;
  right: 14px;
  bottom: 14px;
  z-index: 1;
  border: 1px solid rgba(255, 253, 248, 0.35);
  border-radius: var(--ng-radius);
  background: rgba(24, 37, 45, 0.82);
  color: #fffdf8;
  padding: 10px 12px;
  font-size: 0.78rem;
  font-weight: 900;
  text-transform: uppercase;
}

.closing-prep-card {
  display: grid;
  gap: 16px;
  align-content: start;
  border-radius: var(--ng-radius);
  padding: 22px;
}

.closing-prep-card strong {
  color: var(--ng-ink);
  font-size: 1.08rem;
  line-height: 1.45;
}

.closing-prep-card small {
  display: block;
  color: var(--ng-blue);
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
}

.closing-prep-card ul {
  display: grid;
  gap: 8px;
  margin: 10px 0 0;
  padding: 0;
  list-style: none;
}

.closing-prep-card li {
  position: relative;
  color: var(--ng-muted);
  line-height: 1.45;
  padding-left: 22px;
}

.closing-prep-card li::before {
  position: absolute;
  left: 0;
  color: var(--ng-green);
  content: "✓";
  font-weight: 900;
}

.inspection-route-command,
.inspection-mid-cta,
.final-cta-panel,
.field-route-note {
  border: 1px solid rgba(24, 37, 45, 0.18);
  background: linear-gradient(135deg, rgba(24, 37, 45, 0.96), rgba(23, 63, 53, 0.92)), repeating-linear-gradient(90deg, transparent 0, transparent 58px, rgba(255, 253, 248, 0.055) 59px);
  color: #fffdf8;
}

.field-route-note {
  border-left: 5px solid var(--ng-gold);
}

.inspection-route-command span,
.inspection-mid-cta .eyebrow,
.final-cta-panel .eyebrow,
.field-route-note .eyebrow,
.site-footer h2 {
  color: #f3cc82;
}

.inspection-system-rail em,
.resource-verification-strip span {
  background: #fff7e6;
  color: #694b19;
}

.inspection-system-rail button.is-selected em {
  background: #fff7e6;
  color: #694b19;
}

.resource-actions a {
  background: #edf3f2;
  color: var(--ng-green);
}

.resource-toolbar {
  border: 1px solid rgba(24, 37, 45, 0.13);
  border-radius: var(--ng-radius);
  background: rgba(255, 253, 248, 0.92);
  padding: 14px;
}

.resource-filter {
  align-items: center;
}

.resource-filter button small {
  background: rgba(23, 63, 53, 0.09);
  color: var(--ng-green);
}

.resource-filter button.is-selected small {
  background: rgba(255, 253, 248, 0.18);
  color: #fffdf8;
}

.resource-disclaimer,
.resource-review-list {
  background: rgba(255, 253, 248, 0.94);
}

.contact-prep-band {
  padding: clamp(54px, 7vw, 84px) 0;
}

.contact-grid {
  grid-template-columns: minmax(0, 1fr) minmax(300px, 0.72fr);
  gap: clamp(22px, 4vw, 42px);
}

.form-shell .section-heading h2 {
  font-size: clamp(2rem, 3.5vw, 3.35rem);
}

.contact-summary-owner {
  border-color: rgba(24, 37, 45, 0.13);
  background: rgba(246, 239, 226, 0.58);
}

.contact-confidence-strip div {
  border-top: 4px solid rgba(201, 154, 74, 0.55);
}

.contact-form-card {
  background: linear-gradient(180deg, rgba(255, 253, 248, 0.98), rgba(246, 239, 226, 0.58));
}

.site-footer {
  border-top: 4px solid rgba(201, 154, 74, 0.76);
  background: linear-gradient(135deg, rgba(24, 37, 45, 0.98), rgba(23, 63, 53, 0.96)), repeating-linear-gradient(90deg, transparent 0, transparent 64px, rgba(255, 253, 248, 0.06) 65px);
}

.mobile-sticky-cta {
  border-top: 1px solid rgba(24, 37, 45, 0.14);
  background: rgba(255, 253, 248, 0.97);
}

.mobile-sticky-cta a:last-child {
  background: var(--ng-blue);
}

@media (max-width: 960px) {
  .ng-hero-copy {
    padding: 22px;
  }
}
@media (max-width: 640px) {
  .ng-hero,
  .neighborhood-page-hero {
    background: linear-gradient(180deg, rgba(255, 253, 248, 0.97), rgba(246, 239, 226, 0.94)), repeating-linear-gradient(90deg, transparent 0, transparent 52px, rgba(24, 37, 45, 0.04) 53px);
  }
  .ng-hero-copy,
  .page-hero-grid > div:first-child {
    padding: 18px;
  }
  .ng-hero-copy h1,
  .page-hero h1 {
    font-size: 1.78rem;
    line-height: 1.05;
  }
  .ng-hero {
    min-height: auto;
    padding: 14px 0 0;
  }
  .hero-lede,
  .page-hero p {
    font-size: 0.92rem;
    line-height: 1.43;
  }
  .ng-hero .ng-button-ghost {
    display: none;
  }
  .closing-path-card {
    grid-template-columns: 1fr;
  }
  .closing-path-image,
  .closing-path-image img {
    min-height: 210px;
  }
  .closing-prep-card {
    padding: 18px;
  }
  .owner-dossier-grid {
    grid-template-columns: 1fr;
  }
  .owner-dossier-grid > div:first-child {
    border-right: 0;
    padding: 22px;
  }
  .owner-profile-card {
    grid-template-columns: 1fr;
    border-left: 0;
  }
  .owner-profile-card img {
    min-height: 0;
    max-height: 340px;
    aspect-ratio: 16/11;
  }
  .owner-profile-actions .ng-button {
    width: 100%;
  }
  .contact-confidence-strip,
  .contact-grid,
  .contact-form-card form {
    grid-template-columns: 1fr;
  }
  .form-shell .section-heading h2 {
    font-size: 2rem;
  }
  .contact-confidence-strip div {
    grid-template-columns: 1fr;
    gap: 6px;
  }
  .contact-form-card .form-group:nth-of-type(3),
  .contact-form-card .form-group:nth-of-type(4),
  .contact-form-card .form-group:nth-of-type(5),
  .contact-form-card .alert {
    grid-column: 1;
  }
  .request-tabs {
    display: flex;
    flex-wrap: nowrap;
    overflow-x: auto;
    padding-bottom: 2px;
  }
  .request-tabs button {
    flex: 0 0 auto;
    width: auto;
  }
  .field-note-grid {
    grid-template-columns: 1fr;
  }
  .resource-toolbar {
    padding: 12px;
  }
  .resource-filter {
    display: flex;
    flex-wrap: nowrap;
    gap: 8px;
    overflow-x: auto;
    padding-bottom: 2px;
  }
  .resource-filter button {
    flex: 0 0 auto;
    width: auto;
  }
  .resource-category-guide {
    display: flex;
    gap: 10px;
    overflow-x: auto;
    scroll-snap-type: x proximity;
  }
  .resource-category-guide button {
    flex: 0 0 min(82vw, 300px);
    width: auto;
    min-height: 172px;
    scroll-snap-align: start;
  }
  .inspection-concierge-brief {
    grid-template-columns: 1fr;
  }
  .scope-toolbar {
    overflow: hidden;
  }
  .scope-filter {
    flex-wrap: nowrap;
    justify-content: flex-start;
    overflow-x: auto;
    padding-bottom: 2px;
  }
  .scope-filter button {
    flex: 0 0 auto;
    width: auto;
  }
  .inspection-system-rail {
    display: flex;
    gap: 10px;
    overflow-x: auto;
    padding: 10px;
    scroll-snap-type: x proximity;
  }
  .inspection-system-rail button {
    flex: 0 0 220px;
    width: auto;
    grid-template-columns: 32px minmax(0, 1fr);
    scroll-snap-align: start;
  }
  .inspection-system-panel {
    overflow: visible;
  }
  .system-panel-media img {
    aspect-ratio: 16/10;
    min-height: 0;
  }
  .field-brief-card {
    display: none;
  }
  .ng-hero .neighborhood-trust {
    display: none;
  }
  .section-heading h2,
  .split-intro h2 {
    font-size: 2rem;
    line-height: 1.08;
  }
}
/* Plan F: Local Atlas */
:root {
  --ng-ink: #10242b;
  --ng-muted: #5c6c71;
  --ng-paper: #f5f1e6;
  --ng-white: #fffdf7;
  --ng-green: #17483c;
  --ng-teal: #247783;
  --ng-blue: #285d86;
  --ng-gold: #d6a13b;
  --ng-coral: #bd6b4a;
  --ng-line: rgba(16, 36, 43, 0.14);
  --ng-radius: 8px;
  --ng-shadow: 0 18px 42px rgba(16, 36, 43, 0.11);
}

body {
  background: linear-gradient(180deg, #fffdf7 0%, #f5f1e6 100%), repeating-linear-gradient(90deg, rgba(40, 93, 134, 0.05) 0, rgba(40, 93, 134, 0.05) 1px, transparent 1px, transparent 44px);
  color: var(--ng-ink);
}

body,
button,
input,
textarea,
select {
  letter-spacing: 0;
}

main {
  background: radial-gradient(circle at 12% 20%, rgba(214, 161, 59, 0.16), transparent 28%), linear-gradient(180deg, rgba(255, 253, 247, 0.92), rgba(245, 241, 230, 0.94));
}

.site-header {
  border-top: 4px solid var(--ng-gold);
  border-bottom: 1px solid rgba(16, 36, 43, 0.12);
  background: linear-gradient(90deg, rgba(255, 253, 247, 0.98), rgba(242, 248, 247, 0.96)), repeating-linear-gradient(90deg, transparent 0, transparent 37px, rgba(40, 93, 134, 0.06) 38px);
  box-shadow: 0 14px 32px rgba(16, 36, 43, 0.08);
}

.brand-mark small,
.page-hero p,
.hero-lede,
.guide-panel p,
.feature-card p,
.route-card p,
.resource-card p,
.sidebar-card p,
.owner-story p {
  color: var(--ng-muted);
}

.primary-nav a.is-active,
.primary-nav a:hover {
  background: rgba(214, 161, 59, 0.16);
  color: var(--ng-green);
}

.neighborhood-trust span,
.credential-list span,
.local-marker-grid span,
.mini-chip-grid span,
.city-chip-grid span,
.footer-badge-grid span,
.footer-chip-grid span {
  border-color: rgba(40, 93, 134, 0.2);
  background: rgba(255, 253, 247, 0.9);
  color: var(--ng-blue);
}

.phone-link,
.ng-button-primary,
.mobile-sticky-cta a:first-child {
  background: var(--ng-green);
  color: var(--ng-white);
}

.ng-button-secondary,
.ng-button-ghost,
.mobile-sticky-cta a:last-child {
  border-color: rgba(40, 93, 134, 0.22);
  background: #fffdf7;
  color: var(--ng-blue);
}

.ng-hero,
.page-hero,
.local-band,
.report-preview-band,
.inspection-map-band,
.contact-prep-band,
.resources-hero,
.walkthrough-band,
.owner-dossier-band {
  background: linear-gradient(135deg, rgba(255, 253, 247, 0.95), rgba(236, 246, 246, 0.84)), repeating-linear-gradient(90deg, rgba(40, 93, 134, 0.06) 0, rgba(40, 93, 134, 0.06) 1px, transparent 1px, transparent 56px), repeating-linear-gradient(0deg, rgba(23, 72, 60, 0.04) 0, rgba(23, 72, 60, 0.04) 1px, transparent 1px, transparent 56px);
}

.ng-hero {
  min-height: 620px;
}

.ng-hero-media::after {
  background: linear-gradient(90deg, rgba(16, 36, 43, 0.66), rgba(16, 36, 43, 0.22) 52%, rgba(255, 253, 247, 0.62)), linear-gradient(180deg, transparent, rgba(16, 36, 43, 0.42));
}

.ng-hero-copy,
.page-hero-grid > div:first-child,
.guide-panel,
.field-brief-card,
.light,
.report-preview-shell,
.route-card,
.area-story,
.feature-card,
.focus-photo,
.owner-profile-card,
.owner-story,
.sidebar-card,
.resource-card,
.resources-guide-panel,
.contact-form-card,
.request-planner,
.form-support-card,
.site-brief-next-step,
.resource-command-bar div,
.resource-category-guide button,
.resource-review-list,
.link-grid a,
.contact-method-grid a,
.contact-method-grid article,
.values-panel article {
  border: 1px solid rgba(16, 36, 43, 0.14);
  border-radius: var(--ng-radius);
  background: linear-gradient(180deg, rgba(255, 253, 247, 0.96), rgba(248, 252, 250, 0.94));
  box-shadow: var(--ng-shadow);
}

.ng-hero-copy,
.page-hero-grid > div:first-child {
  border-top: 5px solid var(--ng-blue);
  padding: clamp(24px, 4vw, 34px);
}

.field-brief-card,
.resources-guide-panel,
.contact-summary,
.guide-panel.light {
  position: relative;
  border-left: 6px solid var(--ng-gold);
  overflow: hidden;
}

.field-brief-card::after,
.resources-guide-panel::after,
.contact-summary::after,
.area-story::after {
  position: absolute;
  right: 18px;
  bottom: 18px;
  width: 74px;
  height: 74px;
  border: 1px solid rgba(40, 93, 134, 0.22);
  border-radius: 50%;
  background: linear-gradient(90deg, transparent 48%, rgba(40, 93, 134, 0.18) 50%, transparent 52%), linear-gradient(0deg, transparent 48%, rgba(40, 93, 134, 0.18) 50%, transparent 52%);
  content: "";
  opacity: 0.48;
}

.ng-hero-copy h1,
.page-hero h1 {
  color: var(--ng-ink);
  font-size: 3.45rem;
  line-height: 1.02;
}

.section-heading h2,
.split-intro h2 {
  color: var(--ng-ink);
}

.eyebrow,
.mini-label,
.feature-icon,
.resource-command-bar span,
.resource-category-guide span,
.resource-card-header small,
.resource-detail-list dt,
.owner-profile-card span,
.proof-grid span {
  color: var(--ng-blue);
  letter-spacing: 0;
}

.field-log-strip {
  background: var(--ng-ink);
}

.field-log-strip article {
  border-right-color: rgba(255, 253, 247, 0.12);
}

.field-log-strip strong {
  color: #fffdf7;
}

.field-log-strip span,
.field-log-strip small {
  color: rgba(255, 253, 247, 0.72);
}

.readiness-list button,
.report-tabs button,
.pill-control button,
.area-tabs button,
.focus-tabs button,
.scope-filter button,
.request-tabs button,
.resource-filter button {
  border: 1px solid rgba(16, 36, 43, 0.14);
  border-radius: var(--ng-radius);
  background: #fffdf7;
  color: var(--ng-ink);
}

.readiness-list button.is-checked,
.report-tabs button.is-selected,
.pill-control button.is-selected,
.area-tabs button.is-selected,
.focus-tabs button.is-selected,
.scope-filter button.is-selected,
.request-tabs button.is-selected,
.resource-filter button.is-selected,
.resource-category-guide button.is-selected,
.inspection-system-rail button.is-selected {
  border-color: rgba(23, 72, 60, 0.42);
  background: linear-gradient(135deg, var(--ng-green), #1f6f68);
  color: #fffdf7;
}

.report-preview-card,
.inspection-system-panel,
.contact-grid,
.owner-dossier-grid,
.resources-hero-grid,
.construction-grid {
  border: 1px solid rgba(16, 36, 43, 0.14);
  border-radius: var(--ng-radius);
  background: linear-gradient(180deg, rgba(255, 253, 247, 0.96), rgba(244, 249, 248, 0.94));
  box-shadow: var(--ng-shadow);
}

.resources-hero-grid {
  align-items: start;
  padding: clamp(24px, 4vw, 42px);
}

.resource-guardrail-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  margin: 0 0 18px;
}

.resource-guardrail-grid article,
.resource-category-group,
.footer-certification-strip {
  border: 1px solid rgba(16, 36, 43, 0.14);
  border-radius: var(--ng-radius);
  background: linear-gradient(180deg, rgba(255, 253, 247, 0.96), rgba(242, 248, 247, 0.94));
  box-shadow: 0 14px 32px rgba(16, 36, 43, 0.08);
}

.resource-guardrail-grid article {
  display: grid;
  gap: 7px;
  padding: 16px;
  border-top: 4px solid var(--ng-gold);
}

.resource-guardrail-grid span,
.resource-active-strip span,
.resource-category-group-heading span {
  color: var(--ng-blue);
  font-size: 0.74rem;
  font-weight: 900;
  text-transform: uppercase;
}

.resource-guardrail-grid p {
  margin: 0;
  color: var(--ng-muted);
  line-height: 1.48;
}

.resource-active-strip {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  margin: -6px 0 22px;
}

.resource-active-strip span,
.resource-active-strip button {
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  border: 1px solid rgba(40, 93, 134, 0.18);
  border-radius: 999px;
  background: rgba(255, 253, 247, 0.9);
  padding: 7px 12px;
}

.resource-active-strip button {
  background: var(--ng-green);
  color: #fffdf7;
  cursor: pointer;
  font-size: 0.78rem;
  font-weight: 900;
}

.resource-category-groups {
  display: grid;
  gap: 14px;
  margin: 0 0 24px;
}

.resource-category-group {
  display: grid;
  gap: 14px;
  padding: 16px;
}

.resource-category-group-heading {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: start;
  padding-bottom: 12px;
  border-bottom: 1px solid rgba(16, 36, 43, 0.12);
}

.resource-category-group-heading p {
  max-width: 720px;
  margin: 6px 0 0;
  color: var(--ng-muted);
  line-height: 1.45;
}

.resource-category-group-heading strong {
  border: 1px solid rgba(40, 93, 134, 0.18);
  border-radius: 999px;
  background: rgba(255, 253, 247, 0.9);
  color: var(--ng-green);
  padding: 8px 10px;
  white-space: nowrap;
}

.resource-category-group .resource-category-guide {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(188px, 1fr));
  margin: 0;
  overflow: visible;
}

.resource-category-group .resource-category-guide button {
  min-height: 154px;
  padding: 16px;
  box-shadow: none;
}

.resource-disclaimer strong {
  display: block;
  margin-bottom: 7px;
  color: var(--ng-ink);
}

.resource-disclaimer p {
  margin: 0;
}

.area-story,
.inspection-route-command article,
.scope-stat-grid article,
.contact-confidence-strip div,
.resource-command-bar div {
  border-left: 5px solid var(--ng-coral);
}

.area-story span,
.inspection-route-command span,
.scope-stat-grid span,
.resource-results,
.footer-license {
  color: var(--ng-blue);
}

.timeline-path div::before,
.guide-steps li::before,
.simple-list li::before,
.inspection-list small,
.feature-icon {
  background: var(--ng-gold);
  color: var(--ng-ink);
}

.readiness-meter span,
.scope-progress i {
  background: linear-gradient(90deg, var(--ng-blue), var(--ng-green), var(--ng-gold));
}

.focus-photo img,
.walkthrough-grid img,
.owner-portrait img,
.owner-profile-card img,
.owner-story img,
.contact-owner-card img,
.system-panel-media img,
.report-preview-image img,
.closing-path-image img {
  filter: saturate(0.95) contrast(1.04);
}

.site-footer {
  border-top: 5px solid var(--ng-gold);
  background: linear-gradient(135deg, #10242b, #17483c 58%, #285d86), repeating-linear-gradient(90deg, transparent 0, transparent 52px, rgba(255, 253, 247, 0.06) 53px);
}

.footer-certification-strip {
  display: grid;
  grid-template-columns: minmax(220px, 1.2fr) minmax(180px, 0.8fr) auto auto;
  gap: 10px;
  align-items: center;
  margin-bottom: 28px;
  padding: 14px;
  border-color: rgba(255, 253, 247, 0.2);
  background: rgba(255, 253, 247, 0.08);
  box-shadow: none;
}

.footer-certification-strip span,
.footer-certification-strip a {
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  margin: 0;
  border: 1px solid rgba(255, 253, 247, 0.12);
  border-radius: var(--ng-radius);
  background: rgba(255, 253, 247, 0.07);
  color: rgba(255, 253, 247, 0.84);
  padding: 8px 10px;
  font-size: 0.82rem;
  font-weight: 900;
  text-decoration: none;
}

.footer-certification-strip a:hover {
  border-color: rgba(214, 161, 59, 0.54);
  color: var(--ng-gold);
}

.footer-bottom span:last-child {
  color: rgba(255, 253, 247, 0.74);
}

.atlas-workbench {
  display: grid;
  gap: 14px;
  padding: 14px;
}

.atlas-map-card {
  position: relative;
  min-height: 310px;
  overflow: hidden;
  border: 1px solid rgba(16, 36, 43, 0.14);
  border-radius: var(--ng-radius);
  background: linear-gradient(135deg, rgba(255, 253, 247, 0.94), rgba(233, 244, 244, 0.9)), url('home-home.jpg') center/cover;
  box-shadow: inset 0 0 0 999px rgba(255, 253, 247, 0.62);
}

.atlas-map-card::before {
  position: absolute;
  inset: 0;
  background: repeating-linear-gradient(90deg, transparent 0, transparent 38px, rgba(40, 93, 134, 0.1) 39px), repeating-linear-gradient(0deg, transparent 0, transparent 38px, rgba(23, 72, 60, 0.08) 39px);
  content: "";
}

.atlas-map-rings {
  position: absolute;
  inset: 34px;
  border: 1px solid rgba(40, 93, 134, 0.18);
  border-radius: 999px;
}

.atlas-map-rings::before,
.atlas-map-rings::after {
  position: absolute;
  border: 1px solid rgba(40, 93, 134, 0.16);
  border-radius: 999px;
  content: "";
}

.atlas-map-rings::before {
  inset: 40px 72px;
}

.atlas-map-rings::after {
  inset: 82px 136px;
}

.atlas-map-route {
  position: absolute;
  left: 26%;
  top: 28%;
  width: 48%;
  height: 48%;
  border-left: 4px solid rgba(214, 161, 59, 0.76);
  border-bottom: 4px solid rgba(214, 161, 59, 0.76);
  border-radius: 0 0 0 72px;
  transform: rotate(-10deg);
}

.atlas-pin {
  position: absolute;
  z-index: 2;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-width: 112px;
  padding: 8px 10px;
  border: 1px solid rgba(16, 36, 43, 0.16);
  border-radius: 999px;
  background: rgba(255, 253, 247, 0.94);
  color: var(--ng-ink);
  cursor: pointer;
  font-weight: 900;
  transform: translate(-50%, -50%);
  box-shadow: 0 12px 28px rgba(16, 36, 43, 0.13);
}

.atlas-pin span {
  width: 24px;
  height: 24px;
  border-radius: 999px;
  background: var(--ng-gold);
  color: var(--ng-ink);
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 0.74rem;
}

.atlas-pin strong {
  font-size: 0.82rem;
  line-height: 1;
}

.atlas-pin.is-selected {
  border-color: rgba(23, 72, 60, 0.42);
  background: var(--ng-green);
  color: #fffdf7;
}

.atlas-pin.is-selected span {
  background: #fffdf7;
}

.atlas-map-caption {
  position: absolute;
  left: 16px;
  right: 16px;
  bottom: 16px;
  z-index: 2;
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 14px;
  border: 1px solid rgba(16, 36, 43, 0.12);
  border-radius: var(--ng-radius);
  background: rgba(255, 253, 247, 0.9);
}

.atlas-map-caption span,
.atlas-route-detail small {
  color: var(--ng-blue);
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
}

.atlas-map-caption strong {
  color: var(--ng-ink);
}

.atlas-workbench .area-tabs {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

.atlas-workbench .area-tabs button {
  display: grid;
  gap: 4px;
  min-height: 62px;
  padding: 10px;
  text-align: left;
}

.atlas-workbench .area-tabs button span {
  color: inherit;
  font-size: 0.68rem;
  line-height: 1.1;
  opacity: 0.7;
  text-transform: uppercase;
}

.atlas-area-story {
  position: relative;
  margin-top: 0;
  padding: 22px;
  border-top: 0;
}

.atlas-route-detail {
  display: grid;
  grid-template-columns: minmax(0, 1.4fr) minmax(150px, 0.6fr);
  gap: 10px;
  margin: 18px 0 0;
}

.atlas-route-detail div {
  padding: 14px;
  border: 1px solid rgba(16, 36, 43, 0.12);
  border-radius: var(--ng-radius);
  background: rgba(255, 253, 247, 0.82);
}

.atlas-route-detail strong {
  display: block;
  margin-top: 6px;
  color: var(--ng-ink);
  line-height: 1.36;
}

.atlas-checklist {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 0;
  margin: 18px 0 0;
  list-style: none;
}

.atlas-checklist li {
  padding: 8px 10px;
  border: 1px solid rgba(40, 93, 134, 0.18);
  border-radius: 999px;
  background: rgba(255, 253, 247, 0.9);
  color: var(--ng-blue);
  font-size: 0.78rem;
  font-weight: 900;
}

.owner-route-band {
  background: linear-gradient(180deg, rgba(255, 253, 247, 0.96), rgba(239, 247, 246, 0.9)), repeating-linear-gradient(90deg, transparent 0, transparent 48px, rgba(40, 93, 134, 0.07) 49px);
}

.owner-route-grid {
  display: grid;
  grid-template-columns: minmax(0, 0.88fr) minmax(420px, 1.12fr);
  gap: clamp(22px, 4vw, 48px);
  align-items: stretch;
}

.owner-route-tabs {
  display: grid;
  gap: 10px;
  margin-top: 24px;
}

.owner-route-tabs button {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  gap: 4px 12px;
  align-items: center;
  width: 100%;
  border: 1px solid rgba(16, 36, 43, 0.14);
  border-radius: var(--ng-radius);
  background: linear-gradient(180deg, rgba(255, 253, 247, 0.96), rgba(242, 248, 247, 0.94));
  color: var(--ng-ink);
  cursor: pointer;
  padding: 14px;
  text-align: left;
  box-shadow: 0 10px 24px rgba(16, 36, 43, 0.07);
}

.owner-route-tabs button span {
  grid-row: 1/span 2;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  border-radius: 999px;
  background: var(--ng-gold);
  color: var(--ng-ink);
  font-weight: 900;
}

.owner-route-tabs button strong,
.owner-route-tabs button small {
  display: block;
}

.owner-route-tabs button strong {
  font-size: 1rem;
  line-height: 1.18;
}

.owner-route-tabs button small {
  color: var(--ng-muted);
  font-weight: 800;
  line-height: 1.3;
}

.owner-route-tabs button.is-selected {
  border-color: rgba(23, 72, 60, 0.38);
  background: linear-gradient(135deg, var(--ng-green), #1f6f68);
  color: #fffdf7;
}

.owner-route-tabs button.is-selected span {
  background: #fffdf7;
  color: var(--ng-green);
}

.owner-route-tabs button.is-selected small {
  color: rgba(255, 253, 247, 0.76);
}

.owner-route-card {
  display: grid;
  grid-template-columns: minmax(220px, 0.76fr) minmax(0, 1.24fr);
  overflow: hidden;
  border: 1px solid rgba(16, 36, 43, 0.14);
  border-radius: var(--ng-radius);
  background: linear-gradient(180deg, rgba(255, 253, 247, 0.98), rgba(242, 248, 247, 0.96));
  box-shadow: var(--ng-shadow);
}

.owner-route-card img {
  width: 100%;
  height: 100%;
  min-height: 430px;
  object-fit: cover;
  object-position: center 28%;
}

.owner-route-card > div {
  display: grid;
  align-content: center;
  padding: clamp(24px, 4vw, 42px);
}

.owner-route-card span,
.contact-form-heading span,
.form-route-facts span,
.form-route-timeline span {
  color: var(--ng-blue);
  font-size: 0.74rem;
  font-weight: 900;
  text-transform: uppercase;
}

.owner-route-card h3,
.contact-form-heading h3 {
  margin: 10px 0 0;
  color: var(--ng-ink);
  font-size: clamp(1.8rem, 3vw, 2.65rem);
  line-height: 1.05;
}

.owner-route-card p,
.contact-form-heading p,
.form-route-timeline p {
  color: var(--ng-muted);
  line-height: 1.6;
}

.owner-route-card ul {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding: 0;
  margin: 18px 0 0;
  list-style: none;
}

.owner-route-card li {
  padding: 8px 10px;
  border: 1px solid rgba(40, 93, 134, 0.18);
  border-radius: 999px;
  background: rgba(255, 253, 247, 0.92);
  color: var(--ng-blue);
  font-size: 0.78rem;
  font-weight: 900;
}

.form-route-facts {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 22px 0;
}

.form-route-facts div,
.form-route-timeline article {
  border: 1px solid rgba(16, 36, 43, 0.12);
  border-radius: var(--ng-radius);
  background: rgba(255, 253, 247, 0.86);
  padding: 14px;
}

.form-route-facts strong {
  display: block;
  margin-top: 5px;
  color: var(--ng-ink);
  font-size: 0.92rem;
  line-height: 1.35;
}

.form-route-timeline {
  display: grid;
  gap: 10px;
  margin: 22px 0;
}

.form-route-timeline article {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  gap: 12px;
}

.form-route-timeline span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  border-radius: 999px;
  background: var(--ng-gold);
  color: var(--ng-ink);
}

.form-route-timeline strong {
  display: block;
  color: var(--ng-ink);
  line-height: 1.25;
}

.form-route-timeline p {
  margin: 5px 0 0;
  font-size: 0.92rem;
}

.contact-form-heading {
  margin-bottom: 22px;
  padding-bottom: 18px;
  border-bottom: 1px solid rgba(16, 36, 43, 0.12);
}

.contact-form-heading h3 {
  font-size: clamp(1.7rem, 3vw, 2.35rem);
}

.inspection-atlas-board {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(320px, 0.85fr);
  gap: 16px;
  margin: 0 0 18px;
}

.inspection-atlas-map,
.inspection-atlas-detail {
  border: 1px solid rgba(16, 36, 43, 0.14);
  border-radius: var(--ng-radius);
  background: linear-gradient(180deg, rgba(255, 253, 247, 0.96), rgba(242, 248, 247, 0.94));
  box-shadow: var(--ng-shadow);
}

.inspection-atlas-map {
  position: relative;
  min-height: 410px;
  overflow: hidden;
}

.inspection-atlas-map img {
  width: 100%;
  height: 100%;
  min-height: 410px;
  object-fit: cover;
  filter: saturate(0.95) contrast(1.03);
}

.inspection-atlas-map::after {
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(16, 36, 43, 0.68), rgba(16, 36, 43, 0.18) 48%, rgba(255, 253, 247, 0.54)), linear-gradient(180deg, rgba(255, 253, 247, 0.1), rgba(16, 36, 43, 0.42));
  content: "";
}

.inspection-atlas-grid {
  position: absolute;
  inset: 0;
  z-index: 1;
  background: repeating-linear-gradient(90deg, transparent 0, transparent 46px, rgba(255, 253, 247, 0.16) 47px), repeating-linear-gradient(0deg, transparent 0, transparent 46px, rgba(255, 253, 247, 0.12) 47px);
}

.inspection-atlas-line {
  position: absolute;
  left: 18%;
  top: 24%;
  z-index: 2;
  width: 64%;
  height: 56%;
  border-left: 4px solid rgba(214, 161, 59, 0.82);
  border-bottom: 4px solid rgba(214, 161, 59, 0.82);
  border-radius: 0 0 0 92px;
  transform: rotate(-7deg);
}

.inspection-atlas-pin {
  position: absolute;
  z-index: 3;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-width: 88px;
  padding: 7px 9px;
  border: 1px solid rgba(255, 253, 247, 0.5);
  border-radius: 999px;
  background: rgba(255, 253, 247, 0.92);
  color: var(--ng-ink);
  cursor: pointer;
  font-weight: 900;
  transform: translate(-50%, -50%);
  box-shadow: 0 12px 26px rgba(16, 36, 43, 0.2);
}

.inspection-atlas-pin span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  border-radius: 999px;
  background: var(--ng-gold);
  color: var(--ng-ink);
  font-size: 0.72rem;
}

.inspection-atlas-pin strong {
  font-size: 0.76rem;
}

.inspection-atlas-pin.is-selected {
  background: var(--ng-green);
  color: #fffdf7;
}

.inspection-atlas-pin.is-selected span {
  background: #fffdf7;
}

.inspection-atlas-caption {
  position: absolute;
  left: 16px;
  right: 16px;
  bottom: 16px;
  z-index: 3;
  display: flex;
  justify-content: space-between;
  gap: 12px;
  padding: 12px 14px;
  border: 1px solid rgba(255, 253, 247, 0.28);
  border-radius: var(--ng-radius);
  background: rgba(16, 36, 43, 0.78);
  color: #fffdf7;
}

.inspection-atlas-caption span,
.inspection-atlas-detail-grid small {
  color: rgba(255, 253, 247, 0.74);
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
}

.inspection-atlas-caption strong {
  color: #fffdf7;
}

.inspection-atlas-detail {
  display: grid;
  align-content: start;
  padding: clamp(22px, 3vw, 32px);
  border-left: 6px solid var(--ng-coral);
}

.inspection-atlas-detail h3 {
  margin: 10px 0 0;
  color: var(--ng-ink);
  font-size: clamp(2rem, 4vw, 3rem);
  line-height: 1.03;
}

.inspection-atlas-detail p {
  color: var(--ng-muted);
  line-height: 1.65;
}

.inspection-atlas-detail-grid {
  display: grid;
  gap: 10px;
  margin: 12px 0 20px;
}

.inspection-atlas-detail-grid div {
  padding: 14px;
  border: 1px solid rgba(16, 36, 43, 0.12);
  border-radius: var(--ng-radius);
  background: rgba(255, 253, 247, 0.82);
}

.inspection-atlas-detail-grid small {
  color: var(--ng-blue);
}

.inspection-atlas-detail-grid strong {
  display: block;
  margin-top: 6px;
  color: var(--ng-ink);
  line-height: 1.36;
}

.inspection-system-panel {
  grid-template-columns: minmax(320px, 0.42fr) minmax(0, 0.58fr);
}

.system-panel-media {
  align-self: start;
  min-height: 0;
}

.system-panel-media img {
  height: auto;
  min-height: 0;
  aspect-ratio: 1/1;
}

@media (max-width: 960px) {
  .ng-hero-copy h1,
  .page-hero h1 {
    font-size: 2.55rem;
  }
  .owner-route-grid,
  .owner-route-card {
    grid-template-columns: 1fr;
  }
  .owner-route-card img {
    min-height: 320px;
    max-height: 420px;
  }
  .atlas-workbench .area-tabs {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .inspection-atlas-board,
  .inspection-system-panel {
    grid-template-columns: 1fr;
  }
  .resource-guardrail-grid,
  .footer-certification-strip {
    grid-template-columns: 1fr;
  }
  .system-panel-media {
    min-height: 0;
  }
  .system-panel-media img {
    min-height: 0;
    aspect-ratio: 16/10;
  }
}
@media (max-width: 640px) {
  .ng-hero,
  .page-hero,
  .neighborhood-page-hero,
  .local-band,
  .report-preview-band,
  .inspection-map-band,
  .contact-prep-band,
  .resources-hero,
  .walkthrough-band,
  .owner-dossier-band {
    background: linear-gradient(180deg, rgba(255, 253, 247, 0.97), rgba(245, 241, 230, 0.95)), repeating-linear-gradient(90deg, transparent 0, transparent 38px, rgba(40, 93, 134, 0.08) 39px);
  }
  .ng-hero {
    padding: 14px 0 0;
  }
  .ng-hero-copy h1,
  .page-hero h1 {
    font-size: 1.72rem;
    line-height: 1.05;
  }
  .ng-hero-copy,
  .page-hero-grid > div:first-child,
  .resources-hero-grid {
    padding: 18px;
  }
  .hero-lede,
  .page-hero p {
    font-size: 0.92rem;
    line-height: 1.44;
  }
  .field-brief-card::after,
  .resources-guide-panel::after,
  .contact-summary::after,
  .area-story::after {
    display: none;
  }
  .atlas-workbench {
    padding: 10px;
  }
  .atlas-map-card {
    min-height: 245px;
  }
  .atlas-pin {
    min-width: 0;
    padding: 7px;
  }
  .atlas-pin strong {
    display: none;
  }
  .atlas-map-caption {
    display: grid;
  }
  .atlas-workbench .area-tabs {
    display: flex;
    overflow-x: auto;
    padding-bottom: 2px;
  }
  .atlas-workbench .area-tabs button {
    flex: 0 0 158px;
  }
  .atlas-route-detail {
    grid-template-columns: 1fr;
  }
  .resource-active-strip {
    align-items: stretch;
  }
  .resource-active-strip span,
  .resource-active-strip button,
  .resource-category-group-heading strong {
    justify-content: center;
    width: 100%;
  }
  .resource-category-group {
    padding: 12px;
  }
  .resource-category-group-heading {
    grid-template-columns: 1fr;
  }
  .resource-category-group .resource-category-guide {
    display: grid;
    grid-template-columns: 1fr;
    overflow: visible;
  }
  .owner-route-tabs {
    display: flex;
    max-width: 100%;
    overflow-x: auto;
    padding-bottom: 2px;
  }
  .owner-route-tabs button {
    flex: 0 0 min(74vw, 280px);
  }
  .owner-route-band {
    overflow: hidden;
  }
  .owner-route-grid,
  .owner-route-grid > div,
  .owner-route-card {
    width: 100%;
    min-width: 0;
  }
  .owner-route-card img {
    width: 100%;
    min-height: 0;
    max-height: none;
    aspect-ratio: 16/11;
    object-position: center center;
  }
  .owner-route-card > div {
    padding: 18px;
  }
  .owner-route-card h3,
  .contact-form-heading h3 {
    font-size: 1.8rem;
  }
  .form-route-facts {
    grid-template-columns: 1fr;
  }
  .form-route-timeline article {
    grid-template-columns: 36px minmax(0, 1fr);
  }
  .form-route-timeline span {
    width: 36px;
    height: 36px;
  }
  .inspection-atlas-map {
    min-height: 260px;
  }
  .inspection-atlas-map img {
    min-height: 260px;
  }
  .inspection-atlas-line {
    left: 20%;
    top: 28%;
    width: 56%;
    height: 48%;
  }
  .inspection-atlas-pin {
    z-index: 4;
    min-width: 0;
    padding: 7px;
  }
  .inspection-atlas-pin strong {
    display: none;
  }
  .inspection-atlas-caption {
    z-index: 3;
    display: grid;
    pointer-events: none;
  }
  .inspection-atlas-detail {
    padding: 18px;
  }
  .inspection-atlas-detail h3 {
    font-size: 1.85rem;
  }
}
/* Plan G: Heritage Blueprint */
:root {
  --ng-ink: #17292d;
  --ng-muted: #63706d;
  --ng-paper: #f6f0e4;
  --ng-white: #fffaf1;
  --ng-green: #315f4f;
  --ng-teal: #2d7180;
  --ng-blue: #295d78;
  --ng-gold: #b98533;
  --ng-coral: #a85e4d;
  --ng-line: rgba(23, 41, 45, 0.16);
  --ng-radius: 6px;
  --ng-shadow: 0 20px 42px rgba(23, 41, 45, 0.13);
}

body {
  color: var(--ng-ink);
  background: linear-gradient(180deg, #fffaf1 0%, #f6f0e4 46%, #eef4f0 100%), repeating-linear-gradient(90deg, rgba(41, 93, 120, 0.08) 0, rgba(41, 93, 120, 0.08) 1px, transparent 1px, transparent 32px), repeating-linear-gradient(0deg, rgba(49, 95, 79, 0.06) 0, rgba(49, 95, 79, 0.06) 1px, transparent 1px, transparent 32px);
}

body,
button,
input,
textarea,
select {
  letter-spacing: 0;
}

main {
  background: linear-gradient(180deg, rgba(255, 250, 241, 0.92), rgba(246, 240, 228, 0.94)), repeating-linear-gradient(90deg, transparent 0, transparent 31px, rgba(41, 93, 120, 0.08) 32px), repeating-linear-gradient(0deg, transparent 0, transparent 31px, rgba(49, 95, 79, 0.06) 32px);
}

.site-header {
  border-top: 5px solid var(--ng-gold);
  border-bottom: 1px solid rgba(23, 41, 45, 0.14);
  background: linear-gradient(180deg, rgba(255, 250, 241, 0.98), rgba(250, 246, 236, 0.96)), repeating-linear-gradient(90deg, transparent 0, transparent 30px, rgba(41, 93, 120, 0.07) 31px);
  box-shadow: 0 12px 30px rgba(23, 41, 45, 0.08);
}

.brand-mark small,
.page-hero p,
.hero-lede,
.guide-panel p,
.feature-card p,
.route-card p,
.resource-card p,
.sidebar-card p,
.owner-story p {
  color: var(--ng-muted);
}

.brand-mark img {
  width: 72px;
  height: 54px;
}

.primary-nav a,
.phone-link,
.ng-button,
.pill-control button,
.area-tabs button,
.focus-tabs button,
.resource-filter button,
.scope-filter button,
.request-tabs button,
.clear-filter-button {
  border-radius: var(--ng-radius);
}

.primary-nav a.is-active,
.primary-nav a:hover {
  background: rgba(185, 133, 51, 0.18);
  color: var(--ng-green);
}

.neighborhood-trust span,
.credential-list span,
.local-marker-grid span,
.mini-chip-grid span,
.city-chip-grid span,
.footer-badge-grid span,
.footer-chip-grid span {
  border-color: rgba(41, 93, 120, 0.22);
  background: rgba(255, 250, 241, 0.9);
  color: var(--ng-blue);
}

.phone-link,
.ng-button-primary,
.mobile-sticky-cta a:first-child {
  background: var(--ng-green);
  color: var(--ng-white);
}

.ng-button-secondary,
.ng-button-ghost,
.mobile-sticky-cta a:last-child {
  border-color: rgba(41, 93, 120, 0.24);
  background: #fffaf1;
  color: var(--ng-blue);
}

.ng-hero,
.page-hero,
.local-band,
.report-preview-band,
.inspection-map-band,
.contact-prep-band,
.resources-hero,
.walkthrough-band,
.owner-dossier-band,
.owner-route-band {
  background: linear-gradient(135deg, rgba(255, 250, 241, 0.95), rgba(239, 247, 242, 0.88)), repeating-linear-gradient(90deg, transparent 0, transparent 35px, rgba(41, 93, 120, 0.08) 36px), repeating-linear-gradient(0deg, transparent 0, transparent 35px, rgba(49, 95, 79, 0.06) 36px);
}

.ng-hero {
  min-height: 650px;
}

.ng-hero::before,
.page-hero::before {
  position: absolute;
  inset: 30px;
  border: 1px solid rgba(41, 93, 120, 0.12);
  content: "";
  pointer-events: none;
}

.ng-hero-media {
  inset: clamp(110px, 11vw, 150px) clamp(24px, 5vw, 74px) clamp(70px, 8vw, 108px) 58%;
  border: 1px solid rgba(23, 41, 45, 0.16);
  border-radius: var(--ng-radius);
  background: #fffaf1;
  box-shadow: 18px 18px 0 rgba(41, 93, 120, 0.12), var(--ng-shadow);
}

.ng-hero-media::after {
  background: linear-gradient(90deg, rgba(23, 41, 45, 0.5), rgba(23, 41, 45, 0.12) 52%, rgba(255, 250, 241, 0.34)), repeating-linear-gradient(90deg, transparent 0, transparent 23px, rgba(255, 250, 241, 0.16) 24px);
}

.ng-hero-copy,
.page-hero-grid > div:first-child,
.guide-panel,
.field-brief-card,
.light,
.report-preview-shell,
.route-card,
.area-story,
.feature-card,
.focus-photo,
.owner-profile-card,
.owner-story,
.sidebar-card,
.resource-card,
.resources-guide-panel,
.contact-form-card,
.request-planner,
.form-support-card,
.site-brief-next-step,
.resource-command-bar div,
.resource-category-guide button,
.resource-category-group,
.resource-review-list,
.link-grid a,
.contact-method-grid a,
.contact-method-grid article,
.values-panel article,
.owner-route-card,
.inspection-atlas-map,
.inspection-atlas-detail,
.inspection-system-panel {
  border: 1px solid rgba(23, 41, 45, 0.15);
  border-radius: var(--ng-radius);
  background: linear-gradient(180deg, rgba(255, 250, 241, 0.97), rgba(246, 250, 245, 0.94)), repeating-linear-gradient(90deg, transparent 0, transparent 23px, rgba(41, 93, 120, 0.045) 24px);
  box-shadow: var(--ng-shadow);
}

.ng-hero-copy,
.page-hero-grid > div:first-child {
  border-top: 6px solid var(--ng-blue);
  border-left: 6px solid rgba(185, 133, 51, 0.7);
  padding: clamp(26px, 4vw, 40px);
}

.field-brief-card,
.resources-guide-panel,
.contact-summary,
.guide-panel.light {
  position: relative;
  border-left: 6px solid var(--ng-gold);
  overflow: hidden;
}

.field-brief-card::after,
.resources-guide-panel::after,
.contact-summary::after,
.area-story::after {
  position: absolute;
  right: 18px;
  bottom: 18px;
  width: 86px;
  height: 86px;
  border: 1px solid rgba(41, 93, 120, 0.2);
  background: linear-gradient(90deg, transparent 48%, rgba(41, 93, 120, 0.16) 50%, transparent 52%), linear-gradient(0deg, transparent 48%, rgba(41, 93, 120, 0.16) 50%, transparent 52%), repeating-linear-gradient(45deg, transparent 0, transparent 9px, rgba(185, 133, 51, 0.12) 10px);
  content: "";
  opacity: 0.58;
}

.ng-hero-copy h1,
.page-hero h1 {
  color: var(--ng-ink);
  font-size: 4.05rem;
  line-height: 1.02;
}

.section-heading h2,
.split-intro h2,
.inspection-map-heading h2 {
  color: var(--ng-ink);
}

.eyebrow,
.mini-label,
.feature-icon,
.resource-command-bar span,
.resource-category-guide span,
.resource-card-header small,
.resource-detail-list dt,
.owner-profile-card span,
.proof-grid span,
.inspection-atlas-caption span,
.inspection-atlas-detail-grid small {
  color: var(--ng-blue);
  letter-spacing: 0;
}

.field-log-strip {
  background: linear-gradient(90deg, #17292d, #315f4f 58%, #295d78), repeating-linear-gradient(90deg, transparent 0, transparent 31px, rgba(255, 250, 241, 0.06) 32px);
}

.field-log-strip strong {
  color: #fffaf1;
}

.field-log-strip span,
.field-log-strip small {
  color: rgba(255, 250, 241, 0.72);
}

.readiness-list button,
.report-tabs button,
.pill-control button,
.area-tabs button,
.focus-tabs button,
.scope-filter button,
.request-tabs button,
.resource-filter button,
.inspection-system-rail button,
.owner-route-tabs button,
.owner-profile-tabs button {
  border: 1px solid rgba(23, 41, 45, 0.15);
  border-radius: var(--ng-radius);
  background: #fffaf1;
  color: var(--ng-ink);
}

.readiness-list button.is-checked,
.report-tabs button.is-selected,
.pill-control button.is-selected,
.area-tabs button.is-selected,
.focus-tabs button.is-selected,
.scope-filter button.is-selected,
.request-tabs button.is-selected,
.resource-filter button.is-selected,
.resource-category-guide button.is-selected,
.inspection-system-rail button.is-selected,
.inspection-atlas-pin.is-selected,
.owner-route-tabs button.is-selected,
.owner-profile-tabs button.is-selected {
  border-color: rgba(49, 95, 79, 0.45);
  background: linear-gradient(135deg, var(--ng-green), #467767);
  color: #fffaf1;
}

.report-preview-card,
.owner-dossier-grid,
.resources-hero-grid,
.construction-grid,
.contact-grid {
  border: 1px solid rgba(23, 41, 45, 0.16);
  border-radius: var(--ng-radius);
  background: linear-gradient(180deg, rgba(255, 250, 241, 0.98), rgba(241, 247, 242, 0.94)), repeating-linear-gradient(90deg, transparent 0, transparent 27px, rgba(41, 93, 120, 0.05) 28px);
  box-shadow: var(--ng-shadow);
}

.report-preview-card {
  border-top: 6px solid var(--ng-gold);
}

.report-preview-image,
.system-panel-media,
.inspection-atlas-map,
.focus-photo,
.owner-portrait {
  border-radius: var(--ng-radius);
}

.focus-photo img,
.walkthrough-grid img,
.owner-portrait img,
.owner-profile-card img,
.owner-story img,
.contact-owner-card img,
.system-panel-media img,
.report-preview-image img,
.closing-path-image img,
.inspection-atlas-map img {
  filter: saturate(0.92) contrast(1.04);
}

.area-story,
.inspection-route-command article,
.scope-stat-grid article,
.contact-confidence-strip div,
.resource-command-bar div,
.resource-guardrail-grid article {
  border-left: 5px solid var(--ng-coral);
}

.timeline-path div::before,
.guide-steps li::before,
.simple-list li::before,
.inspection-list small,
.feature-icon {
  background: var(--ng-gold);
  color: var(--ng-ink);
}

.readiness-meter span,
.scope-progress i {
  background: linear-gradient(90deg, var(--ng-blue), var(--ng-green), var(--ng-gold));
}

.atlas-map-card,
.inspection-atlas-map {
  background: linear-gradient(135deg, rgba(255, 250, 241, 0.88), rgba(239, 247, 242, 0.82)), url('new-home-construction.jpg') center/cover;
  box-shadow: inset 0 0 0 999px rgba(255, 250, 241, 0.54);
}

.atlas-map-card::before,
.inspection-atlas-grid {
  background: repeating-linear-gradient(90deg, transparent 0, transparent 30px, rgba(41, 93, 120, 0.14) 31px), repeating-linear-gradient(0deg, transparent 0, transparent 30px, rgba(49, 95, 79, 0.1) 31px);
}

.atlas-map-route,
.inspection-atlas-line {
  border-color: rgba(185, 133, 51, 0.82);
}

.atlas-pin,
.inspection-atlas-pin {
  border-color: rgba(23, 41, 45, 0.18);
  background: rgba(255, 250, 241, 0.94);
  box-shadow: 0 12px 28px rgba(23, 41, 45, 0.15);
}

.resource-active-strip button,
.resource-actions a:hover {
  background: var(--ng-green);
  color: #fffaf1;
}

.resource-actions a {
  background: rgba(41, 93, 120, 0.1);
  color: var(--ng-green);
}

.site-footer {
  border-top: 6px solid var(--ng-gold);
  background: linear-gradient(135deg, #17292d, #315f4f 58%, #295d78), repeating-linear-gradient(90deg, transparent 0, transparent 36px, rgba(255, 250, 241, 0.06) 37px);
}

.footer-certification-strip {
  border-color: rgba(255, 250, 241, 0.2);
  background: linear-gradient(180deg, rgba(255, 250, 241, 0.09), rgba(255, 250, 241, 0.05)), repeating-linear-gradient(90deg, transparent 0, transparent 28px, rgba(255, 250, 241, 0.04) 29px);
}

.footer-bottom span:last-child {
  color: rgba(255, 250, 241, 0.76);
}

@media (max-width: 960px) {
  .ng-hero-copy h1,
  .page-hero h1 {
    font-size: 2.6rem;
  }
  .ng-hero::before,
  .page-hero::before {
    inset: 16px;
  }
}
@media (max-width: 640px) {
  .ng-hero,
  .page-hero,
  .neighborhood-page-hero,
  .local-band,
  .report-preview-band,
  .inspection-map-band,
  .contact-prep-band,
  .resources-hero,
  .walkthrough-band,
  .owner-dossier-band,
  .owner-route-band {
    background: linear-gradient(180deg, rgba(255, 250, 241, 0.97), rgba(246, 240, 228, 0.95)), repeating-linear-gradient(90deg, transparent 0, transparent 30px, rgba(41, 93, 120, 0.08) 31px);
  }
  .ng-hero-copy h1,
  .page-hero h1 {
    font-size: 2rem;
    line-height: 1.05;
  }
  .ng-hero {
    min-height: auto;
    padding: 24px 0 42px;
  }
  .ng-hero-media {
    inset: 74px 18px 26px 42%;
    opacity: 0.18;
    box-shadow: none;
  }
  .ng-hero-copy,
  .page-hero-grid > div:first-child,
  .resources-hero-grid {
    padding: 18px;
  }
  .hero-lede,
  .page-hero p {
    font-size: 0.94rem;
    line-height: 1.48;
  }
  .field-brief-card::after,
  .resources-guide-panel::after,
  .contact-summary::after,
  .area-story::after {
    display: none;
  }
  .ng-hero::before,
  .page-hero::before {
    display: none;
  }
}
/* Plan G iteration 2: homepage polish */
.readiness-status-row {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 8px;
  margin-top: 12px;
  padding-top: 12px;
  border-top: 1px solid rgba(23, 41, 45, 0.12);
}

.readiness-status-row span,
.selected-plan-ledger small,
.plan-sequence small {
  color: var(--ng-blue);
  font-size: 0.72rem;
  font-weight: 900;
  line-height: 1.25;
  text-transform: uppercase;
}

.readiness-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin: 14px 0 4px;
}

.readiness-actions button {
  min-height: 42px;
  border: 1px solid rgba(41, 93, 120, 0.22);
  border-radius: var(--ng-radius);
  background: #fffaf1;
  color: var(--ng-blue);
  cursor: pointer;
  font-weight: 900;
}

.readiness-actions button:first-child {
  border-color: rgba(49, 95, 79, 0.48);
  background: var(--ng-green);
  color: #fffaf1;
}

.readiness-actions button:hover {
  transform: translateY(-1px);
}

.selected-plan-ledger {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 16px 0;
}

.selected-plan-ledger div,
.plan-sequence {
  border: 1px solid rgba(23, 41, 45, 0.12);
  border-radius: var(--ng-radius);
  background: linear-gradient(180deg, rgba(255, 250, 241, 0.94), rgba(241, 247, 242, 0.9)), repeating-linear-gradient(90deg, transparent 0, transparent 22px, rgba(41, 93, 120, 0.05) 23px);
  padding: 12px;
}

.selected-plan-ledger strong {
  display: block;
  margin-top: 6px;
  color: var(--ng-ink);
  font-size: 0.92rem;
  line-height: 1.34;
}

.plan-sequence {
  margin: 18px 0 16px;
}

.plan-sequence ol {
  display: grid;
  gap: 10px;
  padding: 0;
  margin: 10px 0 0;
  list-style: none;
}

.plan-sequence li {
  position: static;
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  gap: 10px;
  align-items: start;
  color: var(--ng-ink);
  font-size: 0.92rem;
  font-weight: 800;
  line-height: 1.35;
  padding-left: 0;
}

.plan-sequence li::before {
  display: none;
  content: none;
}

.plan-sequence li span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 999px;
  background: var(--ng-gold);
  color: var(--ng-ink);
  font-size: 0.74rem;
  font-weight: 900;
}

.report-preview-image img,
.closing-path-image img,
.focus-photo img {
  object-position: var(--image-position, center center);
}

@media (max-width: 960px) {
  .selected-plan-ledger {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 640px) {
  body {
    padding-bottom: 92px;
  }
  .site-header {
    row-gap: 6px;
  }
  .field-log-strip .site-container {
    width: 100%;
  }
  .field-log-strip article {
    padding: 18px 14px;
  }
  .readiness-status-row {
    display: grid;
  }
  .readiness-actions {
    grid-template-columns: 1fr;
  }
  .readiness-actions button {
    min-height: 46px;
  }
  .report-preview-card,
  .closing-path-card {
    grid-template-columns: 1fr;
  }
  .report-preview-image,
  .report-preview-image img,
  .closing-path-image,
  .closing-path-image img {
    min-height: 220px;
  }
  .report-preview-copy,
  .closing-path-card > div:not(.closing-path-image) {
    padding: 16px;
  }
  .report-preview-copy h3 {
    font-size: 1.45rem;
  }
  .selected-plan-ledger div,
  .plan-sequence {
    padding: 11px;
  }
  .plan-sequence li {
    font-size: 0.88rem;
  }
  .mobile-sticky-cta {
    box-shadow: 0 -14px 28px rgba(23, 41, 45, 0.12);
  }
}
/* Plan G iteration 3: inspection page service explanation */
.scope-sheet-index {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 10px;
  margin: 20px 0;
}

.scope-sheet-index button {
  display: grid;
  align-content: start;
  min-width: 0;
  min-height: 245px;
  border: 1px solid rgba(23, 41, 45, 0.15);
  border-radius: var(--ng-radius);
  background: linear-gradient(180deg, rgba(255, 250, 241, 0.96), rgba(241, 247, 242, 0.92)), repeating-linear-gradient(90deg, transparent 0, transparent 21px, rgba(41, 93, 120, 0.05) 22px);
  color: var(--ng-ink);
  cursor: pointer;
  overflow: hidden;
  padding: 0;
  text-align: left;
  box-shadow: 0 14px 30px rgba(23, 41, 45, 0.08);
}

.scope-sheet-index button:hover,
.scope-sheet-index button.is-selected {
  border-color: rgba(49, 95, 79, 0.48);
  transform: translateY(-2px);
}

.scope-sheet-index button.is-selected {
  background: linear-gradient(180deg, rgba(49, 95, 79, 0.96), rgba(41, 93, 120, 0.9)), repeating-linear-gradient(90deg, transparent 0, transparent 21px, rgba(255, 250, 241, 0.08) 22px);
  color: #fffaf1;
}

.scope-sheet-index img {
  width: 100%;
  height: 96px;
  object-fit: cover;
  filter: saturate(0.9) contrast(1.04);
}

.scope-sheet-index span,
.scope-toolbar > div:first-child small,
.service-explain-board span,
.decision-brief-card .mini-label {
  color: var(--ng-blue);
  font-size: 0.7rem;
  font-weight: 900;
  line-height: 1.25;
  text-transform: uppercase;
}

.scope-sheet-index button.is-selected span,
.scope-sheet-index button.is-selected small,
.scope-sheet-index button.is-selected em {
  color: rgba(255, 250, 241, 0.76);
}

.scope-sheet-index button.is-selected strong {
  color: #fffaf1;
}

.scope-sheet-index span,
.scope-sheet-index strong,
.scope-sheet-index small,
.scope-sheet-index em {
  display: block;
  margin-inline: 12px;
}

.scope-sheet-index span {
  margin-top: 12px;
}

.scope-sheet-index strong {
  margin-top: 6px;
  color: var(--ng-ink);
  font-size: 0.98rem;
  line-height: 1.18;
}

.scope-sheet-index small {
  margin-top: 7px;
  color: var(--ng-muted);
  font-size: 0.78rem;
  font-weight: 900;
  line-height: 1.3;
}

.scope-sheet-index em {
  margin-top: 8px;
  margin-bottom: 14px;
  color: var(--ng-muted);
  font-size: 0.76rem;
  font-style: normal;
  font-weight: 800;
  line-height: 1.32;
}

.scope-toolbar > div:first-child small {
  display: block;
  margin-top: 6px;
  color: var(--ng-muted);
}

.service-explain-board {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin: 18px 0;
}

.service-explain-board article {
  border: 1px solid rgba(23, 41, 45, 0.12);
  border-left: 5px solid rgba(185, 133, 51, 0.72);
  border-radius: var(--ng-radius);
  background: linear-gradient(180deg, rgba(255, 250, 241, 0.94), rgba(241, 247, 242, 0.9)), repeating-linear-gradient(90deg, transparent 0, transparent 20px, rgba(41, 93, 120, 0.05) 21px);
  padding: 13px;
}

.service-explain-board strong {
  display: block;
  margin-top: 8px;
  color: var(--ng-ink);
  font-size: 0.92rem;
  line-height: 1.36;
}

.decision-brief-card {
  display: grid;
  grid-template-columns: minmax(220px, 0.72fr) minmax(0, 1.28fr);
  gap: 0;
  overflow: hidden;
}

.decision-brief-card img {
  width: 100%;
  height: 100%;
  min-height: 360px;
  object-fit: cover;
  filter: saturate(0.92) contrast(1.03);
}

.decision-brief-card > div {
  display: grid;
  align-content: center;
  padding: clamp(22px, 4vw, 34px);
}

.decision-brief-card h3 {
  margin: 8px 0 0;
  color: var(--ng-ink);
  font-size: clamp(1.8rem, 3.5vw, 3rem);
  line-height: 1.04;
}

.decision-brief-card p {
  color: var(--ng-muted);
  line-height: 1.58;
}

.decision-brief-card .ng-button-primary {
  color: #fffaf1;
}

.decision-brief-card ol {
  display: grid;
  gap: 9px;
  padding: 0;
  margin: 16px 0 20px;
  list-style: none;
}

.decision-brief-card li {
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr);
  gap: 10px;
  align-items: start;
  color: var(--ng-ink);
  font-weight: 850;
  line-height: 1.36;
}

.decision-brief-card li span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  border-radius: 999px;
  background: var(--ng-gold);
  color: var(--ng-ink);
  font-size: 0.78rem;
  font-weight: 900;
}

@media (max-width: 1180px) {
  .scope-sheet-index {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}
@media (max-width: 960px) {
  .scope-sheet-index {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .service-explain-board,
  .decision-brief-card {
    grid-template-columns: 1fr;
  }
  .decision-brief-card img {
    min-height: 300px;
  }
}
@media (max-width: 640px) {
  .scope-sheet-index {
    display: grid;
    grid-auto-columns: minmax(176px, 72vw);
    grid-auto-flow: column;
    grid-template-columns: none;
    overflow-x: auto;
    padding: 2px 0 10px;
    scroll-snap-type: x mandatory;
  }
  .scope-sheet-index button {
    min-height: 236px;
    scroll-snap-align: start;
  }
  .scope-sheet-index img {
    height: 104px;
  }
  .service-explain-board {
    grid-template-columns: 1fr;
  }
  .decision-brief-card img {
    min-height: 230px;
  }
  .decision-brief-card > div {
    padding: 18px;
  }
  .decision-brief-card h3 {
    font-size: 1.62rem;
  }
  .decision-brief-card li {
    font-size: 0.9rem;
  }
}
/* Plan G iteration 4: owner and contact polish */
.local-owner-proof-band {
  padding-bottom: clamp(48px, 6vw, 76px);
  background: linear-gradient(135deg, rgba(255, 250, 241, 0.96), rgba(239, 247, 242, 0.88)), repeating-linear-gradient(90deg, transparent 0, transparent 34px, rgba(41, 93, 120, 0.07) 35px);
}

.owner-dossier-band {
  padding-top: clamp(48px, 6vw, 76px);
}

.local-owner-proof-grid {
  display: grid;
  grid-template-columns: minmax(0, 0.88fr) minmax(420px, 1.12fr);
  gap: clamp(22px, 4vw, 46px);
  align-items: center;
}

.local-owner-proof-grid h2 {
  color: var(--ng-ink);
  font-size: clamp(2.3rem, 5vw, 4.4rem);
  line-height: 1.02;
}

.local-owner-proof-grid p {
  color: var(--ng-muted);
  line-height: 1.62;
}

.local-owner-proof-cards {
  display: grid;
  gap: 12px;
}

.local-owner-proof-cards article,
.contact-intake-board article,
.request-plan-sequence,
.form-assurance-row span {
  border: 1px solid rgba(23, 41, 45, 0.13);
  border-radius: var(--ng-radius);
  background: linear-gradient(180deg, rgba(255, 250, 241, 0.96), rgba(241, 247, 242, 0.9)), repeating-linear-gradient(90deg, transparent 0, transparent 22px, rgba(41, 93, 120, 0.05) 23px);
}

.local-owner-proof-cards article {
  display: grid;
  grid-template-columns: 56px minmax(0, 1fr);
  gap: 4px 16px;
  padding: 18px;
  box-shadow: 0 14px 30px rgba(23, 41, 45, 0.08);
}

.local-owner-proof-cards span {
  grid-row: 1/span 2;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  border-radius: 999px;
  background: var(--ng-gold);
  color: var(--ng-ink);
  font-weight: 900;
}

.local-owner-proof-cards strong {
  color: var(--ng-ink);
  font-size: 1.12rem;
  line-height: 1.22;
}

.local-owner-proof-cards p {
  margin: 4px 0 0;
}

.request-path-card {
  display: grid;
  grid-template-columns: minmax(180px, 0.62fr) minmax(0, 1fr);
  gap: 0;
  overflow: hidden;
  padding: 0;
}

.request-planner {
  padding: clamp(20px, 3vw, 28px);
}

.request-path-card img {
  width: 100%;
  height: 100%;
  min-height: 330px;
  object-fit: cover;
  filter: saturate(0.92) contrast(1.03);
}

.request-path-card > div {
  padding: clamp(18px, 3vw, 26px);
}

.request-plan-sequence {
  margin: 16px 0;
  padding: 14px;
}

.request-plan-sequence small,
.contact-intake-board span,
.form-assurance-row span {
  color: var(--ng-blue);
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
}

.request-plan-sequence ol {
  display: grid;
  gap: 9px;
  padding: 0;
  margin: 10px 0 0;
  list-style: none;
}

.request-plan-sequence li {
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr);
  gap: 9px;
  align-items: start;
  color: var(--ng-ink);
  font-size: 0.9rem;
  font-weight: 850;
  line-height: 1.34;
}

.request-plan-sequence li span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  border-radius: 999px;
  background: var(--ng-gold);
  color: var(--ng-ink);
  font-size: 0.74rem;
  font-weight: 900;
}

.request-plan-sequence li::before {
  display: none;
  content: none;
}

.contact-intake-board {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin: 18px 0 22px;
}

.contact-intake-board article {
  border-left: 5px solid rgba(185, 133, 51, 0.76);
  padding: 14px;
}

.contact-intake-board strong {
  display: block;
  margin-top: 8px;
  color: var(--ng-ink);
  line-height: 1.25;
}

.contact-intake-board p {
  margin: 8px 0 0;
  color: var(--ng-muted);
  font-size: 0.9rem;
  line-height: 1.45;
}

.form-assurance-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 16px;
}

.form-assurance-row span {
  padding: 8px 10px;
}

.contact-form-card {
  border-top: 6px solid var(--ng-blue);
  border-left: 6px solid rgba(185, 133, 51, 0.68);
}

.contact-form-card input,
.contact-form-card textarea {
  background: #fffaf1;
}

@media (max-width: 960px) {
  .local-owner-proof-grid,
  .request-path-card {
    grid-template-columns: 1fr;
  }
  .request-path-card img {
    min-height: 280px;
    max-height: 360px;
  }
  .contact-intake-board {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 640px) {
  .owner-route-tabs {
    display: grid;
    overflow: visible;
    padding-bottom: 0;
  }
  .owner-route-tabs button {
    flex: initial;
  }
  .request-tabs {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    overflow: visible;
  }
  .request-tabs button {
    flex: initial;
    min-width: 0;
  }
  .local-owner-proof-grid h2 {
    font-size: 2rem;
  }
  .local-owner-proof-cards article {
    grid-template-columns: 44px minmax(0, 1fr);
    gap: 4px 12px;
    padding: 14px;
  }
  .local-owner-proof-cards span {
    width: 40px;
    height: 40px;
  }
  .request-path-card img {
    min-height: 220px;
  }
  .request-path-card > div,
  .request-plan-sequence,
  .contact-intake-board article {
    padding: 13px;
  }
  .request-plan-sequence li {
    font-size: 0.86rem;
  }
  .contact-form-card {
    padding: 18px;
  }
}
/* Plan G iteration 5: resources, navbar, and footer polish */
.resources-hero {
  padding: clamp(48px, 7vw, 88px) 0;
}

.resource-hero-cues {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 24px;
}

.resource-hero-cues span {
  border: 1px solid rgba(40, 93, 134, 0.18);
  border-radius: 999px;
  background: rgba(255, 253, 247, 0.9);
  color: var(--ng-blue);
  padding: 8px 10px;
  font-size: 0.78rem;
  font-weight: 900;
}

.resource-blueprint-board {
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(240px, 0.82fr) minmax(280px, 1fr);
  gap: 14px;
  margin: 0 0 24px;
  padding: 16px;
  border: 1px solid rgba(23, 41, 45, 0.14);
  border-left: 6px solid var(--ng-green);
  border-radius: var(--ng-radius);
  background: linear-gradient(135deg, rgba(255, 250, 241, 0.97), rgba(241, 247, 242, 0.92)), repeating-linear-gradient(90deg, transparent 0, transparent 24px, rgba(41, 93, 120, 0.05) 25px);
  box-shadow: 0 18px 38px rgba(23, 41, 45, 0.08);
}

.resource-blueprint-copy,
.resource-blueprint-shortlist,
.resource-blueprint-steps {
  min-width: 0;
}

.resource-blueprint-copy h3 {
  margin: 8px 0 0;
  color: var(--ng-ink);
  font-size: clamp(1.65rem, 3vw, 2.55rem);
  line-height: 1.06;
}

.resource-blueprint-copy p,
.resource-blueprint-shortlist p,
.resource-blueprint-steps p {
  color: var(--ng-muted);
  line-height: 1.5;
}

.resource-blueprint-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 18px;
}

.resource-blueprint-actions button,
.resource-blueprint-actions a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  border: 1px solid rgba(41, 93, 120, 0.22);
  border-radius: var(--ng-radius);
  background: #fffaf1;
  color: var(--ng-blue);
  cursor: pointer;
  padding: 9px 12px;
  font-weight: 900;
  text-decoration: none;
}

.resource-blueprint-actions a {
  border-color: rgba(49, 95, 79, 0.42);
  background: var(--ng-green);
  color: #fffaf1;
}

.resource-blueprint-shortlist {
  display: grid;
  gap: 10px;
}

.resource-blueprint-shortlist article,
.resource-blueprint-steps article {
  border: 1px solid rgba(23, 41, 45, 0.12);
  border-radius: var(--ng-radius);
  background: rgba(255, 253, 247, 0.82);
  padding: 12px;
}

.resource-blueprint-shortlist strong,
.resource-blueprint-shortlist small {
  display: block;
}

.resource-blueprint-shortlist strong {
  color: var(--ng-ink);
  line-height: 1.25;
}

.resource-blueprint-shortlist small {
  margin-top: 4px;
  color: var(--ng-muted);
  font-size: 0.86rem;
  line-height: 1.35;
}

.resource-blueprint-steps {
  display: grid;
  gap: 10px;
}

.resource-blueprint-steps article {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  gap: 10px;
}

.resource-blueprint-steps article > span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  border-radius: 999px;
  background: var(--ng-gold);
  color: var(--ng-ink);
  font-weight: 900;
}

.resource-blueprint-steps strong {
  display: block;
  color: var(--ng-ink);
  line-height: 1.25;
}

.resource-blueprint-steps p {
  margin: 5px 0 0;
  font-size: 0.9rem;
}

.resource-provider-groups {
  display: grid;
  gap: 34px;
}

.resource-provider-group {
  display: grid;
  gap: 14px;
  padding-top: 18px;
  border-top: 1px solid rgba(23, 41, 45, 0.14);
}

.resource-provider-group-heading {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: start;
}

.resource-provider-group-heading span {
  color: var(--ng-blue);
  font-size: 0.78rem;
  font-weight: 900;
  text-transform: uppercase;
}

.resource-provider-group-heading p {
  margin: 5px 0 0;
  color: var(--ng-muted);
  line-height: 1.45;
}

.resource-provider-group-heading strong {
  display: inline-flex;
  align-items: center;
  border: 1px solid rgba(40, 93, 134, 0.2);
  border-radius: 999px;
  background: rgba(255, 253, 247, 0.9);
  color: var(--ng-green);
  padding: 8px 10px;
  white-space: nowrap;
}

.resource-provider-group .resource-grid {
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr));
  margin: 0;
}

.site-footer h2 {
  letter-spacing: 0;
}

.footer-compliance {
  border-left: 5px solid rgba(185, 133, 51, 0.75);
}

.footer-resource-note,
.footer-bottom span:last-child {
  line-height: 1.45;
}

@media (max-width: 1080px) {
  .resource-blueprint-board {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 640px) {
  .resource-blueprint-board {
    padding: 14px;
  }
  .resource-blueprint-actions {
    display: grid;
  }
  .resource-blueprint-actions button,
  .resource-blueprint-actions a {
    width: 100%;
  }
  .resource-blueprint-steps article {
    grid-template-columns: 36px minmax(0, 1fr);
  }
  .resource-blueprint-steps article > span {
    width: 34px;
    height: 34px;
    font-size: 0.82rem;
  }
  .resource-provider-group-heading {
    grid-template-columns: 1fr;
  }
  .resource-provider-group-heading strong {
    justify-content: center;
    text-align: center;
    white-space: normal;
  }
  .resource-filter {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    overflow: visible;
    padding-bottom: 0;
  }
  .resource-filter button {
    justify-content: center;
    width: 100%;
    flex: initial;
  }
  .footer-certification-strip {
    grid-template-columns: 1fr;
  }
}
/* Plan H: Home Health Checkup */
:root {
  --ng-ink: #102a31;
  --ng-muted: #5f7277;
  --ng-paper: #f3faf8;
  --ng-white: #ffffff;
  --ng-green: #276b5d;
  --ng-teal: #087e89;
  --ng-blue: #245f86;
  --ng-gold: #f3b04d;
  --ng-coral: #d8685a;
  --ng-line: rgba(16, 42, 49, 0.13);
  --ng-radius: 8px;
  --ng-shadow: 0 22px 48px rgba(16, 42, 49, 0.11);
}

body {
  color: var(--ng-ink);
  background: linear-gradient(180deg, #ffffff 0%, #f3faf8 42%, #ecf8f6 100%);
}

main {
  background: linear-gradient(180deg, #ffffff 0%, #f7fcfb 34%, #eef8f6 72%, #ffffff 100%);
}

.site-header {
  border-top: 4px solid var(--ng-teal);
  border-bottom: 1px solid rgba(16, 42, 49, 0.1);
  background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 12px 32px rgba(16, 42, 49, 0.08);
}

.site-header::before {
  height: 4px;
  background: linear-gradient(90deg, var(--ng-teal), #7cc9bf 44%, var(--ng-coral));
}

.brand-mark small,
.page-hero p,
.hero-lede,
.guide-panel p,
.feature-card p,
.route-card p,
.resource-card p,
.sidebar-card p,
.owner-story p {
  color: var(--ng-muted);
}

.primary-nav a.is-active,
.primary-nav a:hover {
  background: #e5f6f3;
  color: var(--ng-green);
}

.eyebrow,
.mini-label,
.resource-command-bar span,
.resource-category-guide span,
.resource-card-header small,
.resource-detail-list dt,
.owner-profile-card span,
.proof-grid span,
.inspection-atlas-caption span,
.inspection-atlas-detail-grid small,
.scope-sheet-index span,
.scope-toolbar > div:first-child small,
.service-explain-board span,
.decision-brief-card .mini-label {
  color: var(--ng-teal);
}

.form-control,
.resource-search input,
.contact-form-card input,
.contact-form-card textarea {
  background: #ffffff;
  border-color: rgba(16, 42, 49, 0.15);
}

.neighborhood-trust span,
.credential-list span,
.local-marker-grid span,
.mini-chip-grid span,
.city-chip-grid span,
.footer-badge-grid span,
.footer-chip-grid span,
.resource-hero-cues span {
  border-color: rgba(8, 126, 137, 0.18);
  background: #e8f7f4;
  color: var(--ng-green);
}

.phone-link,
.ng-button-primary,
.mobile-sticky-cta a:first-child {
  background: linear-gradient(135deg, var(--ng-green), var(--ng-teal));
  color: #ffffff;
}

.phone-link:hover,
.ng-button-primary:hover {
  background: linear-gradient(135deg, #1f5f52, #066a75);
}

.ng-button-secondary,
.ng-button-ghost,
.mobile-sticky-cta a:last-child {
  border-color: rgba(8, 126, 137, 0.24);
  background: #ffffff;
  color: var(--ng-blue);
}

.ng-hero,
.page-hero,
.local-band,
.report-preview-band,
.inspection-map-band,
.contact-prep-band,
.resources-hero,
.walkthrough-band,
.owner-dossier-band,
.owner-route-band,
.local-owner-proof-band {
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.98), rgba(235, 248, 246, 0.9)), linear-gradient(90deg, rgba(8, 126, 137, 0.035) 1px, transparent 1px), linear-gradient(0deg, rgba(8, 126, 137, 0.03) 1px, transparent 1px);
  background-size: auto, auto, 34px 34px, 34px 34px;
}

.ng-hero {
  min-height: 660px;
}

.ng-hero::before,
.page-hero::before {
  inset: 26px;
  border: 1px solid rgba(8, 126, 137, 0.12);
  border-radius: var(--ng-radius);
}

.ng-hero-media {
  border: 1px solid rgba(16, 42, 49, 0.12);
  border-radius: var(--ng-radius);
  background: #ffffff;
  box-shadow: var(--ng-shadow);
}

.ng-hero-media::after {
  background: linear-gradient(90deg, rgba(16, 42, 49, 0.3), rgba(16, 42, 49, 0.05) 58%, rgba(255, 255, 255, 0.2)), linear-gradient(180deg, rgba(8, 126, 137, 0.08), rgba(216, 104, 90, 0.08));
}

.ng-hero-copy,
.page-hero-grid > div:first-child,
.guide-panel,
.field-brief-card,
.light,
.report-preview-shell,
.route-card,
.area-story,
.feature-card,
.focus-photo,
.owner-profile-card,
.owner-story,
.sidebar-card,
.resource-card,
.resources-guide-panel,
.contact-form-card,
.request-planner,
.form-support-card,
.site-brief-next-step,
.resource-command-bar div,
.resource-category-guide button,
.resource-category-group,
.resource-review-list,
.link-grid a,
.contact-method-grid a,
.contact-method-grid article,
.values-panel article,
.owner-route-card,
.inspection-atlas-map,
.inspection-atlas-detail,
.inspection-system-panel,
.report-preview-card,
.owner-dossier-grid,
.resources-hero-grid,
.construction-grid,
.contact-grid,
.resource-blueprint-board,
.local-owner-proof-cards article,
.contact-intake-board article,
.request-plan-sequence,
.form-assurance-row span {
  border: 1px solid rgba(16, 42, 49, 0.12);
  border-radius: var(--ng-radius);
  background: rgba(255, 255, 255, 0.94);
  box-shadow: var(--ng-shadow);
}

.ng-hero-copy,
.page-hero-grid > div:first-child,
.contact-form-card {
  border-top: 6px solid var(--ng-teal);
  border-left: 0;
}

.field-brief-card,
.resources-guide-panel,
.contact-summary,
.guide-panel.light,
.resource-blueprint-board,
.footer-compliance {
  border-left: 6px solid var(--ng-coral);
}

.field-brief-card::after,
.resources-guide-panel::after,
.contact-summary::after,
.area-story::after {
  width: 82px;
  height: 82px;
  border: 1px solid rgba(8, 126, 137, 0.18);
  border-radius: 999px;
  background: conic-gradient(from 180deg, var(--ng-teal) 0 68%, rgba(8, 126, 137, 0.1) 68% 100%), #ffffff;
  opacity: 0.22;
}

.ng-hero-copy h1,
.page-hero h1 {
  color: var(--ng-ink);
  line-height: 1.02;
  overflow-wrap: normal;
  word-break: normal;
  -webkit-hyphens: none;
          hyphens: none;
}

.ng-hero-copy h1 {
  font-size: clamp(2.65rem, 5.6vw, 5.25rem);
}

.page-hero h1 {
  font-size: clamp(2.4rem, 4.5vw, 4.55rem);
}

.field-log-strip {
  background: linear-gradient(90deg, #102a31, #276b5d 54%, #087e89);
}

.field-log-strip article {
  border-left: 1px solid rgba(255, 255, 255, 0.16);
}

.field-log-strip strong {
  color: #ffffff;
}

.field-log-strip span,
.field-log-strip small {
  color: rgba(255, 255, 255, 0.74);
}

.readiness-list button,
.report-tabs button,
.pill-control button,
.area-tabs button,
.focus-tabs button,
.scope-filter button,
.request-tabs button,
.resource-filter button,
.inspection-system-rail button,
.owner-route-tabs button,
.owner-profile-tabs button,
.scope-sheet-index button {
  border: 1px solid rgba(16, 42, 49, 0.13);
  border-radius: var(--ng-radius);
  background: #ffffff;
  color: var(--ng-ink);
}

.readiness-list button.is-checked,
.report-tabs button.is-selected,
.pill-control button.is-selected,
.area-tabs button.is-selected,
.focus-tabs button.is-selected,
.scope-filter button.is-selected,
.request-tabs button.is-selected,
.resource-filter button.is-selected,
.resource-category-guide button.is-selected,
.inspection-system-rail button.is-selected,
.inspection-atlas-pin.is-selected,
.owner-route-tabs button.is-selected,
.owner-profile-tabs button.is-selected,
.scope-sheet-index button.is-selected {
  border-color: rgba(39, 107, 93, 0.46);
  background: linear-gradient(135deg, var(--ng-green), var(--ng-teal));
  color: #ffffff;
}

.readiness-list span,
.inspection-system-rail em,
.resource-filter small {
  background: #eef8f6;
  color: var(--ng-teal);
}

.area-story,
.inspection-route-command article,
.scope-stat-grid article,
.contact-confidence-strip div,
.resource-command-bar div,
.resource-guardrail-grid article,
.service-explain-board article,
.contact-intake-board article {
  border-left: 5px solid var(--ng-coral);
}

.timeline-path div,
.values-panel article,
.timeline.compact div {
  border-left-color: var(--ng-coral);
}

.timeline-path div::before,
.guide-steps li::before,
.simple-list li::before,
.inspection-list small,
.feature-icon,
.decision-brief-card li span,
.request-plan-sequence li span,
.resource-blueprint-steps article > span,
.local-owner-proof-cards span {
  background: #ffe2b6;
  color: var(--ng-ink);
}

.readiness-meter span,
.scope-progress i {
  background: linear-gradient(90deg, var(--ng-teal), #7cc9bf, var(--ng-coral));
}

.report-preview-card {
  border-top: 6px solid var(--ng-teal);
}

.resource-blueprint-actions a,
.resource-active-strip button,
.resource-actions a:hover {
  background: linear-gradient(135deg, var(--ng-green), var(--ng-teal));
  color: #ffffff;
}

.resource-blueprint-actions button,
.resource-actions a,
.readiness-actions button,
.readiness-actions button:first-child {
  border-color: rgba(8, 126, 137, 0.2);
}

.readiness-actions button:first-child {
  background: linear-gradient(135deg, var(--ng-green), var(--ng-teal));
  color: #ffffff;
}

.atlas-map-card,
.inspection-atlas-map {
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.72), rgba(235, 248, 246, 0.78)), url('home-home.jpg') center/cover;
  box-shadow: inset 0 0 0 999px rgba(255, 255, 255, 0.36), var(--ng-shadow);
}

.atlas-map-card::before,
.inspection-atlas-grid {
  background: linear-gradient(90deg, rgba(8, 126, 137, 0.12) 1px, transparent 1px), linear-gradient(0deg, rgba(8, 126, 137, 0.1) 1px, transparent 1px);
  background-size: 30px 30px;
}

.atlas-map-route,
.inspection-atlas-line {
  border-color: rgba(216, 104, 90, 0.86);
}

.atlas-pin,
.inspection-atlas-pin {
  border-color: rgba(16, 42, 49, 0.14);
  background: rgba(255, 255, 255, 0.95);
  box-shadow: 0 12px 26px rgba(16, 42, 49, 0.14);
}

.focus-photo img,
.walkthrough-grid img,
.owner-portrait img,
.owner-profile-card img,
.owner-story img,
.contact-owner-card img,
.system-panel-media img,
.report-preview-image img,
.closing-path-image img,
.inspection-atlas-map img,
.scope-sheet-index img,
.request-path-card img,
.decision-brief-card img {
  filter: saturate(1.02) contrast(1.01);
}

.site-footer {
  border-top: 6px solid var(--ng-teal);
  background: linear-gradient(135deg, #102a31, #245f86 52%, #276b5d);
}

.footer-certification-strip {
  border-color: rgba(255, 255, 255, 0.18);
  background: rgba(255, 255, 255, 0.07);
}

.footer-bottom span:last-child {
  color: rgba(255, 255, 255, 0.78);
}

.home-vitals-band {
  background: linear-gradient(180deg, #ffffff, #eef8f6);
}

.home-vitals-grid {
  display: grid;
  grid-template-columns: minmax(0, 0.82fr) minmax(360px, 1.18fr);
  gap: clamp(28px, 5vw, 64px);
  align-items: center;
}

.home-vitals-grid h2 {
  margin: 0;
  color: var(--ng-ink);
  font-size: clamp(2.05rem, 4vw, 3.65rem);
  font-weight: 900;
  line-height: 1.04;
}

.home-vitals-grid p {
  color: var(--ng-muted);
  font-size: 1.03rem;
  line-height: 1.65;
}

.home-score-card,
.home-vitals-workbench,
.home-vital-detail {
  border: 1px solid rgba(16, 42, 49, 0.12);
  border-radius: var(--ng-radius);
  background: rgba(255, 255, 255, 0.94);
  box-shadow: var(--ng-shadow);
}

.home-score-card {
  display: grid;
  gap: 8px;
  max-width: 420px;
  margin-top: 24px;
  border-left: 6px solid var(--ng-coral);
  padding: clamp(20px, 4vw, 28px);
}

.home-score-card span,
.home-vital-image span {
  color: var(--ng-teal);
  font-size: 0.78rem;
  font-weight: 900;
  text-transform: uppercase;
}

.home-score-card strong {
  color: var(--ng-ink);
  font-size: clamp(1.55rem, 3vw, 2.2rem);
  line-height: 1.1;
}

.home-score-card p {
  margin: 0;
}

.home-vitals-workbench {
  display: grid;
  gap: 14px;
  padding: clamp(16px, 3vw, 22px);
}

.home-vital-tabs {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

.home-vital-tabs button {
  display: grid;
  gap: 6px;
  min-height: 120px;
  border: 1px solid rgba(16, 42, 49, 0.12);
  border-radius: var(--ng-radius);
  background: #ffffff;
  color: var(--ng-ink);
  cursor: pointer;
  padding: 16px;
  text-align: left;
}

.home-vital-tabs button:hover,
.home-vital-tabs button.is-selected {
  border-color: rgba(39, 107, 93, 0.38);
  transform: translateY(-1px);
}

.home-vital-tabs button.is-selected {
  background: linear-gradient(135deg, var(--ng-green), var(--ng-teal));
  color: #ffffff;
}

.home-vital-tabs span,
.home-vital-tabs small {
  color: var(--ng-teal);
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
}

.home-vital-tabs button.is-selected span,
.home-vital-tabs button.is-selected small {
  color: rgba(255, 255, 255, 0.78);
}

.home-vital-tabs strong {
  font-size: 1.08rem;
  line-height: 1.2;
}

.home-vital-detail {
  display: grid;
  grid-template-columns: minmax(240px, 0.8fr) minmax(0, 1.2fr);
  overflow: hidden;
}

.home-vital-image {
  position: relative;
  min-height: 360px;
  background: #eef8f6;
}

.home-vital-image img {
  width: 100%;
  height: 100%;
  min-height: 360px;
  object-fit: cover;
}

.home-vital-image span {
  position: absolute;
  left: 16px;
  bottom: 16px;
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.92);
  color: var(--ng-blue);
  padding: 8px 11px;
}

.home-vital-copy {
  display: grid;
  align-content: center;
  gap: 14px;
  padding: clamp(22px, 4vw, 34px);
}

.home-vital-copy h3 {
  margin: 0;
  color: var(--ng-ink);
  font-size: clamp(1.7rem, 3vw, 2.65rem);
  line-height: 1.06;
}

.home-vital-copy p {
  margin: 0;
}

.home-vital-checks {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.home-vital-checks span {
  border: 1px solid rgba(8, 126, 137, 0.18);
  border-radius: 999px;
  background: #e8f7f4;
  color: var(--ng-green);
  padding: 8px 10px;
  font-size: 0.84rem;
  font-weight: 900;
}

.inspection-guide-hero .guide-panel.light {
  border-top: 6px solid var(--ng-teal);
}

.inspection-exam-heading {
  margin-bottom: 24px;
  border-bottom: 1px solid rgba(16, 42, 49, 0.1);
  padding-bottom: 24px;
}

.inspection-exam-heading h2 {
  max-width: 720px;
  font-size: clamp(2rem, 4vw, 3.25rem);
  line-height: 1.05;
}

.inspection-map-band .inspection-route-command {
  align-items: stretch;
  border: 1px solid rgba(16, 42, 49, 0.14);
  background: linear-gradient(135deg, rgba(16, 42, 49, 0.98), rgba(36, 95, 134, 0.95)), linear-gradient(90deg, rgba(255, 255, 255, 0.08) 1px, transparent 1px);
  background-size: auto, 32px 32px;
  box-shadow: var(--ng-shadow);
}

.inspection-map-band .inspection-route-command article {
  border-left: 5px solid var(--ng-coral);
  background: rgba(255, 255, 255, 0.08);
  color: #ffffff;
}

.inspection-map-band .inspection-route-command article span,
.inspection-map-band .inspection-route-command article p {
  color: rgba(255, 255, 255, 0.76);
}

.inspection-map-band .inspection-route-command article strong {
  color: #ffffff;
}

.inspection-map-band .inspection-route-command .ng-button-primary {
  align-self: center;
  background: #ffffff;
  color: var(--ng-green);
}

.scope-sheet-index {
  margin: 26px 0;
}

.scope-sheet-index button {
  position: relative;
  display: grid;
  grid-template-rows: 130px auto auto auto;
  gap: 8px;
  min-height: 258px;
  overflow: hidden;
  padding: 10px;
  text-align: left;
}

.scope-sheet-index button::after {
  position: absolute;
  right: 12px;
  top: 12px;
  width: 12px;
  height: 12px;
  border: 2px solid rgba(255, 255, 255, 0.92);
  border-radius: 999px;
  background: var(--ng-coral);
  box-shadow: 0 0 0 4px rgba(216, 104, 90, 0.18);
  content: "";
}

.scope-sheet-index button.is-selected::after {
  background: #ffffff;
  box-shadow: 0 0 0 4px rgba(255, 255, 255, 0.22);
}

.scope-sheet-index img {
  width: 100%;
  height: 130px;
  border-radius: calc(var(--ng-radius) - 2px);
  object-fit: cover;
}

.scope-sheet-index span,
.scope-sheet-index small {
  color: var(--ng-teal);
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
}

.scope-sheet-index strong {
  color: var(--ng-ink);
  font-size: 1.02rem;
  line-height: 1.18;
}

.scope-sheet-index em {
  color: var(--ng-muted);
  font-size: 0.84rem;
  font-style: normal;
  line-height: 1.35;
}

.scope-sheet-index button.is-selected span,
.scope-sheet-index button.is-selected small,
.scope-sheet-index button.is-selected strong,
.scope-sheet-index button.is-selected em {
  color: #ffffff;
}

.inspection-health-board {
  display: grid;
  grid-template-columns: minmax(280px, 0.9fr) minmax(0, 1.1fr);
  overflow: hidden;
  margin: 30px 0;
  border: 1px solid rgba(16, 42, 49, 0.12);
  border-radius: var(--ng-radius);
  background: #ffffff;
  box-shadow: var(--ng-shadow);
}

.inspection-health-media {
  position: relative;
  min-height: 520px;
  background: #e8f7f4;
}

.inspection-health-media::after {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(16, 42, 49, 0.02), rgba(16, 42, 49, 0.55)), linear-gradient(90deg, rgba(255, 255, 255, 0.12) 1px, transparent 1px);
  background-size: auto, 34px 34px;
  content: "";
}

.inspection-health-media img {
  width: 100%;
  height: 100%;
  min-height: 520px;
  object-fit: cover;
}

.inspection-health-caption {
  position: absolute;
  z-index: 1;
  left: clamp(18px, 4vw, 30px);
  right: clamp(18px, 4vw, 30px);
  bottom: clamp(18px, 4vw, 30px);
  display: grid;
  gap: 8px;
  border: 1px solid rgba(255, 255, 255, 0.28);
  border-left: 6px solid var(--ng-coral);
  border-radius: var(--ng-radius);
  background: rgba(16, 42, 49, 0.82);
  padding: clamp(18px, 3vw, 24px);
  color: #ffffff;
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
}

.inspection-health-caption span,
.inspection-health-caption small {
  color: rgba(255, 255, 255, 0.76);
  font-size: 0.78rem;
  font-weight: 900;
  text-transform: uppercase;
}

.inspection-health-caption strong {
  color: #ffffff;
  font-size: clamp(1.5rem, 3vw, 2.25rem);
  line-height: 1.08;
}

.inspection-health-copy {
  display: grid;
  align-content: center;
  gap: clamp(18px, 3vw, 26px);
  padding: clamp(24px, 5vw, 46px);
}

.inspection-health-copy h3 {
  margin: 0;
  color: var(--ng-ink);
  font-size: clamp(1.95rem, 4vw, 3.35rem);
  line-height: 1.04;
}

.inspection-health-copy > p {
  margin: 0;
  color: var(--ng-muted);
  font-size: 1.03rem;
  line-height: 1.62;
}

.inspection-health-metrics {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.inspection-health-metrics div {
  display: grid;
  gap: 8px;
  border: 1px solid rgba(8, 126, 137, 0.14);
  border-radius: var(--ng-radius);
  background: #f3fbf9;
  padding: 14px;
}

.inspection-health-metrics small {
  color: var(--ng-teal);
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
}

.inspection-health-metrics strong {
  color: var(--ng-ink);
  font-size: 0.94rem;
  line-height: 1.35;
}

.inspection-exam-flow {
  display: grid;
  gap: 10px;
}

.inspection-exam-flow article {
  display: grid;
  grid-template-columns: auto minmax(110px, 0.3fr) minmax(0, 1fr);
  gap: 14px;
  align-items: start;
  border-left: 5px solid var(--ng-coral);
  border-radius: var(--ng-radius);
  background: #ffffff;
  box-shadow: inset 0 0 0 1px rgba(16, 42, 49, 0.1);
  padding: 16px;
}

.inspection-exam-flow span {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 999px;
  background: #ffe2b6;
  color: var(--ng-ink);
  font-weight: 900;
}

.inspection-exam-flow strong {
  color: var(--ng-ink);
  font-size: 1rem;
}

.inspection-exam-flow p {
  margin: 0;
  color: var(--ng-muted);
  line-height: 1.45;
}

.inspection-health-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

@media (max-width: 960px) {
  .ng-hero-copy h1,
  .page-hero h1 {
    font-size: clamp(2rem, 8vw, 2.8rem);
  }
  .home-vitals-grid,
  .home-vital-detail,
  .inspection-health-board {
    grid-template-columns: 1fr;
  }
  .home-vital-tabs {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .inspection-health-media,
  .inspection-health-media img {
    min-height: 360px;
  }
  .inspection-health-metrics {
    grid-template-columns: 1fr;
  }
  .inspection-exam-flow article {
    grid-template-columns: auto minmax(0, 1fr);
  }
  .inspection-exam-flow p {
    grid-column: 2;
  }
}
@media (max-width: 640px) {
  .ng-hero,
  .page-hero,
  .neighborhood-page-hero,
  .local-band,
  .report-preview-band,
  .inspection-map-band,
  .contact-prep-band,
  .resources-hero,
  .walkthrough-band,
  .owner-dossier-band,
  .owner-route-band,
  .local-owner-proof-band {
    background: linear-gradient(180deg, #ffffff, #f3faf8), linear-gradient(90deg, rgba(8, 126, 137, 0.03) 1px, transparent 1px);
    background-size: auto, 30px 30px;
  }
  .ng-hero-media {
    inset: 74px 18px 26px 42%;
    opacity: 0.16;
  }
  .ng-hero-copy h1,
  .page-hero h1 {
    font-size: 2rem;
  }
  .home-vitals-grid {
    gap: 18px;
  }
  .home-score-card,
  .home-vitals-workbench {
    padding: 16px;
  }
  .home-vital-tabs {
    grid-template-columns: 1fr;
  }
  .home-vital-tabs button {
    min-height: 88px;
    padding: 14px;
  }
  .home-vital-image,
  .home-vital-image img {
    min-height: 230px;
  }
  .home-vital-copy {
    padding: 18px;
  }
  .home-vital-copy h3 {
    font-size: 1.55rem;
  }
  .inspection-exam-heading {
    gap: 14px;
    padding-bottom: 18px;
  }
  .inspection-exam-heading h2,
  .inspection-health-copy h3 {
    font-size: 1.65rem;
  }
  .inspection-map-band .inspection-route-command {
    gap: 10px;
  }
  .scope-sheet-index {
    grid-template-columns: 1fr;
  }
  .scope-sheet-index button {
    grid-template-columns: 108px minmax(0, 1fr);
    grid-template-rows: auto auto auto auto;
    min-height: 0;
    align-items: center;
  }
  .scope-sheet-index img {
    grid-row: 1/span 4;
    height: 112px;
  }
  .inspection-health-media,
  .inspection-health-media img {
    min-height: 260px;
  }
  .inspection-health-caption {
    left: 14px;
    right: 14px;
    bottom: 14px;
    padding: 14px;
  }
  .inspection-health-copy {
    padding: 18px;
  }
  .inspection-exam-flow article {
    gap: 10px;
    padding: 14px;
  }
  .inspection-health-actions .ng-button {
    width: 100%;
  }
}
/* Plan H iteration 3: mobile viewport guardrails for dense inspection copy */
@media (max-width: 640px) {
  html,
  body,
  main {
    max-width: 100%;
    overflow-x: hidden;
  }
  .site-container,
  .page-hero-grid,
  .page-hero-grid > div:first-child,
  .guide-panel,
  .inspection-exam-heading,
  .inspection-health-board,
  .inspection-health-copy {
    min-width: 0;
    max-width: 100%;
  }
  .scope-sheet-index {
    grid-auto-flow: row;
    grid-auto-columns: auto;
    grid-template-columns: 1fr;
    overflow-x: visible;
    scroll-snap-type: none;
  }
  .scope-sheet-index button {
    width: 100%;
    scroll-snap-align: none;
  }
  .scope-filter {
    flex-wrap: wrap;
    justify-content: stretch;
    overflow-x: visible;
  }
  .scope-filter button {
    flex: 1 1 calc(50% - 8px);
    width: auto;
  }
  .inspection-system-rail {
    display: grid;
    grid-template-columns: 1fr;
    max-height: none;
    overflow: visible;
    scroll-snap-type: none;
  }
  .inspection-system-rail button {
    flex: initial;
    width: 100%;
    scroll-snap-align: none;
  }
  .page-hero h1 {
    max-width: 100%;
    font-size: 1.6rem;
    line-height: 1.08;
    overflow-wrap: break-word;
  }
  .inspection-exam-heading h2,
  .inspection-health-copy h3 {
    max-width: 100%;
    font-size: 1.48rem;
    line-height: 1.12;
    overflow-wrap: break-word;
  }
  .page-hero p,
  .inspection-exam-heading p,
  .inspection-health-copy p,
  .inspection-exam-flow p {
    max-width: 100%;
    overflow-wrap: break-word;
  }
  .mobile-sticky-cta {
    width: 100%;
    max-width: 100vw;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    overflow: hidden;
  }
  .mobile-sticky-cta a {
    min-width: 0;
    white-space: nowrap;
  }
}
/* Plan H iteration 4: owner trust and contact handoff */
.owner-care-band,
.contact-handoff-band {
  background: linear-gradient(180deg, #ffffff, #eef8f6);
}

.owner-care-grid {
  display: grid;
  grid-template-columns: minmax(300px, 0.84fr) minmax(0, 1.16fr);
  gap: clamp(26px, 5vw, 58px);
  align-items: center;
}

.owner-care-photo {
  position: relative;
  min-height: 640px;
  overflow: hidden;
  margin: 0;
  border: 1px solid rgba(16, 42, 49, 0.12);
  border-radius: var(--ng-radius);
  background: #e8f7f4;
  box-shadow: var(--ng-shadow);
}

.owner-care-photo img {
  width: 100%;
  height: 100%;
  min-height: 640px;
  object-fit: cover;
  object-position: center center;
  filter: saturate(1.02) contrast(1.01);
}

.owner-care-photo::after {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(16, 42, 49, 0.02), rgba(16, 42, 49, 0.56)), linear-gradient(90deg, rgba(255, 255, 255, 0.13) 1px, transparent 1px);
  background-size: auto, 34px 34px;
  content: "";
}

.owner-care-photo figcaption {
  position: absolute;
  z-index: 1;
  left: clamp(18px, 4vw, 30px);
  right: clamp(18px, 4vw, 30px);
  bottom: clamp(18px, 4vw, 30px);
  display: grid;
  gap: 8px;
  border-left: 6px solid var(--ng-coral);
  border-radius: var(--ng-radius);
  background: rgba(16, 42, 49, 0.84);
  padding: clamp(18px, 3vw, 24px);
  color: #ffffff;
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
}

.owner-care-photo figcaption span,
.owner-care-cards span,
.owner-trust-ledger span,
.contact-prep-owner-card span,
.contact-handoff-steps span,
.contact-handoff-card > span,
.contact-form-handoff > div > span,
.handoff-tags span {
  color: var(--ng-teal);
  font-size: 0.74rem;
  font-weight: 900;
  text-transform: uppercase;
}

.owner-care-photo figcaption span {
  color: rgba(255, 255, 255, 0.74);
}

.owner-care-photo figcaption strong {
  color: #ffffff;
  font-size: clamp(1.3rem, 2.6vw, 2rem);
  line-height: 1.12;
}

.owner-care-copy {
  display: grid;
  gap: 20px;
}

.owner-care-copy h2,
.contact-handoff-grid h2 {
  margin: 0;
  color: var(--ng-ink);
  font-size: clamp(2rem, 4.5vw, 3.85rem);
  line-height: 1.04;
}

.owner-care-copy > p,
.contact-handoff-grid > div > p {
  margin: 0;
  color: var(--ng-muted);
  font-size: 1.03rem;
  line-height: 1.65;
}

.owner-care-cards {
  display: grid;
  gap: 12px;
}

.owner-care-cards article,
.contact-prep-owner-card,
.contact-handoff-card,
.contact-form-handoff {
  border: 1px solid rgba(16, 42, 49, 0.12);
  border-radius: var(--ng-radius);
  background: rgba(255, 255, 255, 0.94);
}

.owner-care-cards article {
  display: grid;
  grid-template-columns: 92px minmax(0, 1fr);
  gap: 14px;
  align-items: center;
  padding: 12px;
}

.owner-care-cards img {
  width: 92px;
  height: 92px;
  border-radius: var(--ng-radius);
  object-fit: cover;
}

.owner-care-cards strong {
  display: block;
  margin-top: 6px;
  color: var(--ng-ink);
  font-size: 1.08rem;
  line-height: 1.2;
}

.owner-care-cards p {
  margin: 6px 0 0;
  color: var(--ng-muted);
  line-height: 1.48;
}

.owner-trust-ledger {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

.owner-trust-ledger article {
  border: 1px solid rgba(8, 126, 137, 0.14);
  border-left: 5px solid var(--ng-coral);
  border-radius: var(--ng-radius);
  background: #f3fbf9;
  padding: 14px;
}

.owner-trust-ledger strong {
  display: block;
  margin-top: 8px;
  color: var(--ng-ink);
  line-height: 1.22;
}

.owner-trust-ledger p {
  margin: 8px 0 0;
  color: var(--ng-muted);
  font-size: 0.9rem;
  line-height: 1.44;
}

.contact-prep-stack {
  display: grid;
  gap: 14px;
}

.contact-prep-owner-card {
  display: grid;
  grid-template-columns: minmax(160px, 0.42fr) minmax(0, 1fr);
  gap: 0;
  overflow: hidden;
}

.contact-prep-owner-card img {
  width: 100%;
  height: 100%;
  min-height: 210px;
  object-fit: cover;
}

.contact-prep-owner-card div {
  display: grid;
  align-content: center;
  gap: 8px;
  padding: clamp(18px, 3vw, 26px);
}

.contact-prep-owner-card strong,
.contact-handoff-card strong,
.contact-form-handoff strong {
  color: var(--ng-ink);
  font-size: clamp(1.25rem, 2.4vw, 1.75rem);
  line-height: 1.12;
}

.contact-prep-owner-card p,
.contact-handoff-card p,
.contact-form-handoff p {
  margin: 0;
  color: var(--ng-muted);
  line-height: 1.55;
}

.contact-handoff-grid {
  display: grid;
  grid-template-columns: minmax(0, 0.85fr) minmax(280px, 0.65fr) minmax(260px, 0.5fr);
  gap: clamp(18px, 4vw, 34px);
  align-items: start;
}

.contact-handoff-steps {
  display: grid;
  gap: 10px;
}

.contact-handoff-steps article {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  gap: 12px;
  border-left: 5px solid var(--ng-coral);
  border-radius: var(--ng-radius);
  background: #ffffff;
  box-shadow: inset 0 0 0 1px rgba(16, 42, 49, 0.1);
  padding: 14px;
}

.contact-handoff-steps span {
  display: grid;
  place-items: center;
  width: 36px;
  height: 36px;
  border-radius: 999px;
  background: #ffe2b6;
  color: var(--ng-ink);
}

.contact-handoff-steps strong {
  color: var(--ng-ink);
  line-height: 1.25;
}

.contact-handoff-steps p {
  margin: 6px 0 0;
  color: var(--ng-muted);
  line-height: 1.45;
}

.contact-handoff-card {
  display: grid;
  gap: 12px;
  border-top: 6px solid var(--ng-teal);
  padding: clamp(18px, 3vw, 24px);
  box-shadow: var(--ng-shadow);
}

.contact-handoff-card .ng-button {
  width: 100%;
}

.contact-form-handoff {
  display: grid;
  grid-template-columns: 152px minmax(0, 1fr);
  gap: 0;
  overflow: hidden;
  margin: 18px 0;
  border-left: 6px solid var(--ng-coral);
}

.contact-form-handoff img {
  width: 100%;
  height: 100%;
  min-height: 190px;
  object-fit: cover;
  object-position: center 18%;
}

.contact-form-handoff > div {
  display: grid;
  align-content: center;
  gap: 10px;
  padding: clamp(18px, 3vw, 24px);
}

.handoff-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.handoff-tags span {
  border: 1px solid rgba(8, 126, 137, 0.16);
  border-radius: 999px;
  background: #e8f7f4;
  padding: 7px 9px;
}

.contact-form-heading h3 {
  max-width: 720px;
}

@media (max-width: 1080px) {
  .contact-handoff-grid {
    grid-template-columns: 1fr;
  }
  .owner-trust-ledger {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 960px) {
  .owner-care-grid,
  .contact-prep-owner-card,
  .contact-form-handoff {
    grid-template-columns: 1fr;
  }
  .owner-care-photo,
  .owner-care-photo img {
    min-height: 420px;
  }
  .contact-prep-owner-card img,
  .contact-form-handoff img {
    min-height: 250px;
    max-height: 330px;
  }
}
@media (max-width: 640px) {
  .owner-care-copy h2,
  .contact-handoff-grid h2 {
    font-size: 1.68rem;
    line-height: 1.1;
  }
  .owner-care-photo,
  .owner-care-photo img {
    min-height: 320px;
  }
  .owner-care-photo figcaption {
    left: 14px;
    right: 14px;
    bottom: 14px;
    padding: 14px;
  }
  .owner-care-cards article {
    grid-template-columns: 76px minmax(0, 1fr);
    gap: 12px;
  }
  .owner-care-cards img {
    width: 76px;
    height: 76px;
  }
  .contact-prep-owner-card div,
  .contact-form-handoff > div,
  .contact-handoff-card {
    padding: 16px;
  }
  .contact-handoff-steps article {
    grid-template-columns: 36px minmax(0, 1fr);
    padding: 13px;
  }
  .contact-form-handoff img,
  .contact-prep-owner-card img {
    min-height: 210px;
  }
}
/* Plan H iteration 5: resources, navbar, and footer polish */
.design-select-shell {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
}

.design-select-shell strong {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 34px;
  border-radius: 999px;
  background: #e8f7f4;
  color: var(--ng-green);
  padding: 7px 10px;
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
  white-space: nowrap;
}

.resource-quick-list {
  display: grid;
  gap: 14px;
  margin: 24px 0 30px;
  border: 1px solid rgba(16, 42, 49, 0.12);
  border-radius: var(--ng-radius);
  background: rgba(255, 255, 255, 0.96);
  box-shadow: var(--ng-shadow);
  padding: clamp(16px, 3vw, 22px);
}

.resource-quick-list-heading {
  display: grid;
  grid-template-columns: minmax(0, 0.7fr) minmax(260px, 0.5fr);
  gap: 16px;
  align-items: end;
  border-bottom: 1px solid rgba(16, 42, 49, 0.1);
  padding-bottom: 16px;
}

.resource-quick-list-heading h3 {
  margin: 6px 0 0;
  color: var(--ng-ink);
  font-size: clamp(1.45rem, 3vw, 2.2rem);
  line-height: 1.08;
}

.resource-quick-list-heading p {
  margin: 0;
  color: var(--ng-muted);
  line-height: 1.5;
}

.resource-quick-list-grid {
  display: grid;
  gap: 8px;
}

.resource-quick-list-head,
.resource-quick-list-grid article {
  display: grid;
  grid-template-columns: minmax(110px, 0.7fr) minmax(190px, 1.2fr) minmax(150px, 0.9fr) minmax(120px, 0.7fr) minmax(90px, 0.45fr);
  gap: 12px;
  align-items: center;
}

.resource-quick-list-head {
  color: var(--ng-teal);
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
}

.resource-quick-list-grid article {
  border: 1px solid rgba(8, 126, 137, 0.12);
  border-radius: var(--ng-radius);
  background: #f7fcfb;
  padding: 12px;
}

.resource-quick-category,
.resource-quick-list-grid article > span:last-child {
  display: inline-flex;
  width: -moz-fit-content;
  width: fit-content;
  border-radius: 999px;
  background: #e8f7f4;
  color: var(--ng-green);
  padding: 7px 9px;
  font-size: 0.76rem;
  font-weight: 900;
}

.resource-quick-list-grid strong,
.resource-quick-list-grid small {
  display: block;
}

.resource-quick-list-grid strong {
  color: var(--ng-ink);
  line-height: 1.2;
}

.resource-quick-list-grid small,
.resource-quick-list-grid article > span {
  color: var(--ng-muted);
  line-height: 1.35;
}

.resource-quick-list-grid a {
  display: inline-flex;
  justify-content: center;
  border-radius: var(--ng-radius);
  background: linear-gradient(135deg, var(--ng-green), var(--ng-teal));
  color: #ffffff;
  padding: 9px 11px;
  font-weight: 900;
  text-decoration: none;
}

.footer-checkup-panel {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr)) auto;
  gap: 12px;
  align-items: stretch;
  margin-top: 18px;
  margin-bottom: 28px;
}

.footer-checkup-panel article,
.footer-checkup-panel > a {
  border: 1px solid rgba(255, 255, 255, 0.16);
  border-radius: var(--ng-radius);
  background: rgba(255, 255, 255, 0.08);
}

.footer-checkup-panel article {
  display: grid;
  gap: 7px;
  border-left: 5px solid rgba(216, 104, 90, 0.88);
  padding: 14px;
}

.footer-checkup-panel span {
  color: rgba(255, 255, 255, 0.68);
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
}

.footer-checkup-panel strong {
  color: #ffffff;
  font-size: 1rem;
  line-height: 1.24;
}

.footer-checkup-panel p {
  margin: 0;
  color: rgba(255, 255, 255, 0.72);
  font-size: 0.86rem;
  line-height: 1.42;
}

.footer-checkup-panel > a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #102a31;
  background: #ffffff;
  padding: 14px 18px;
  font-weight: 900;
  text-decoration: none;
}

.footer-checkup-panel > a:hover {
  color: var(--ng-green);
}

@media (max-width: 1180px) {
  .resource-quick-list-head,
  .resource-quick-list-grid article {
    grid-template-columns: minmax(110px, 0.7fr) minmax(190px, 1.1fr) minmax(120px, 0.7fr) minmax(90px, 0.45fr);
  }
  .resource-quick-list-head span:nth-child(3),
  .resource-quick-list-grid article > span:nth-of-type(2) {
    display: none;
  }
  .footer-checkup-panel {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 760px) {
  .design-select-shell {
    grid-template-columns: 1fr;
  }
  .design-select-shell strong {
    justify-content: flex-start;
    width: -moz-fit-content;
    width: fit-content;
  }
  .resource-quick-list-heading,
  .resource-quick-list-head,
  .resource-quick-list-grid article,
  .footer-checkup-panel {
    grid-template-columns: 1fr;
  }
  .resource-quick-list-head {
    display: none;
  }
  .resource-quick-list-grid article {
    align-items: start;
  }
  .resource-quick-list-grid article > span:nth-of-type(2) {
    display: block;
  }
  .resource-quick-list-grid a {
    width: 100%;
  }
}
/* Comparison suite: live design concept overrides */
body.dh {
  --ng-ink: #18252d;
  --ng-muted: #62727a;
  --ng-green: #173f35;
  --ng-teal: #305f73;
  --ng-blue: #244f73;
  --ng-gold: #c99a4a;
  --ng-coral: #b86f63;
  --ng-paper: #f8f4ec;
  --ng-sky: #eef5f3;
  --ng-leaf: #e8f0ea;
  --ng-line: #dfd6c9;
  --ng-white: #fffdf8;
  --ng-shadow: 0 28px 66px rgba(24, 37, 45, 0.14);
  --ng-radius: 6px;
  background: #f8f4ec;
}

body.dh main,
body.dh .ng-hero,
body.dh .page-hero {
  background: linear-gradient(135deg, rgba(255, 253, 248, 0.98), rgba(248, 244, 236, 0.95) 58%, rgba(238, 245, 243, 0.96));
}

body.dh .site-header::before,
body.dh .ng-hero::before,
body.dh .page-hero::before {
  background: linear-gradient(90deg, var(--ng-green), var(--ng-gold), var(--ng-blue), var(--ng-coral));
}

body.dh .ng-hero,
body.dh .page-hero,
body.dh .feature-card,
body.dh .route-card,
body.dh .resource-card,
body.dh .contact-form-card {
  border-color: rgba(201, 154, 74, 0.26);
  box-shadow: 0 26px 58px rgba(24, 37, 45, 0.1);
}

body.dh .phone-link,
body.dh .closing-concierge-schedule,
body.dh .ng-button-primary,
body.dh .mobile-sticky-cta a:first-child {
  background: linear-gradient(135deg, #173f35, #305f73);
}

body.dh .dh-only {
  display: initial;
}

body.dh .footer-concept-default {
  display: none;
}

body.dh :is(.footer-checkup-panel, .footer-grid, .footer-utility-row) {
  display: none;
}

body.dh .closing-concierge-schedule {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  border-radius: 6px;
  color: #fffdf8;
  font-weight: 900;
  padding: 9px 14px;
  text-decoration: none;
}

body.dh :is(.closing-concierge-nav-note, .closing-concierge-footer-strip) {
  display: grid;
  border: 1px solid rgba(201, 154, 74, 0.24);
  border-left: 5px solid var(--ng-gold);
  border-radius: 6px;
  background: rgba(255, 253, 248, 0.94);
}

body.dh .closing-concierge-nav-note {
  max-width: 300px;
  gap: 3px;
  margin-left: 10px;
  padding: 9px 12px;
}

body.dh .closing-concierge-nav-note span,
body.dh .closing-concierge-footer-strip span {
  color: var(--ng-blue);
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
}

body.dh .closing-concierge-nav-note strong,
body.dh .closing-concierge-footer-strip strong {
  color: var(--ng-ink);
  line-height: 1.25;
}

body.dh .closing-concierge-footer-strip {
  grid-template-columns: 84px minmax(0, 1fr) auto;
  gap: 16px;
  align-items: center;
  margin-top: 22px;
  padding: 14px;
}

body.dh .closing-concierge-footer-strip img {
  width: 84px;
  height: 62px;
  border-radius: 6px;
  object-fit: cover;
}

body.dh .closing-concierge-footer-strip p {
  margin: 5px 0 0;
  color: var(--ng-muted);
}

body.dh .closing-concierge-footer-strip a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  border-radius: 6px;
  background: linear-gradient(135deg, #173f35, #305f73);
  color: #fffdf8;
  font-weight: 900;
  padding: 9px 12px;
  text-decoration: none;
}

body.dh :is(.cch-hero, .cch-section) {
  background: linear-gradient(135deg, rgba(255, 253, 248, 0.97), rgba(248, 244, 236, 0.94)), linear-gradient(90deg, rgba(201, 154, 74, 0.12), transparent 46%);
}

body.dh .cch-hero {
  padding: clamp(126px, 10vw, 166px) 0 clamp(70px, 7vw, 102px);
}

body.dh .cch-section {
  padding: clamp(38px, 6vw, 70px) 0;
}

body.dh :is(.cch-grid, .cch-rail, .cch-contact-grid) {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(300px, 0.62fr);
  gap: clamp(20px, 4vw, 46px);
  align-items: start;
}

body.dh .cch-rail {
  grid-template-columns: 280px minmax(0, 1fr);
}

body.dh .cch-contact-grid {
  grid-template-columns: minmax(0, 760px);
  justify-content: center;
}

body.dh .cch-resource-shell {
  display: grid;
  grid-template-columns: minmax(0, 1fr);
  gap: 18px;
  align-items: start;
}

body.dh .cch-resource-shell :is(.cch-dossier, .cch-file) {
  width: min(100%, 920px);
  justify-self: center;
}

body.dh .cch-label,
body.dh .cch-tabs span,
body.dh .cch-dossier > span {
  color: var(--ng-blue);
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
}

body.dh .cch-label {
  display: inline-flex;
  width: -moz-fit-content;
  width: fit-content;
  border: 1px solid rgba(201, 154, 74, 0.28);
  border-radius: 999px;
  background: rgba(255, 253, 248, 0.88);
  padding: 7px 10px;
}

body.dh .cch-copy h1 {
  max-width: 760px;
  margin: 10px 0 14px;
  color: var(--ng-ink);
  font-size: clamp(2.85rem, 6.1vw, 5.2rem);
  line-height: 0.96;
}

body.dh :is(.cch-copy p, .cch-dossier p, .cch-file p) {
  color: var(--ng-muted);
  line-height: 1.62;
}

body.dh :is(.cch-dossier, .cch-file) {
  border: 1px solid rgba(201, 154, 74, 0.34);
  border-left: 8px solid var(--ng-gold);
  border-radius: 6px;
  background: linear-gradient(180deg, rgba(255, 253, 248, 0.98), rgba(255, 255, 255, 0.88));
  box-shadow: var(--ng-shadow);
  padding: clamp(18px, 3vw, 28px);
}

body.dh .cch-file {
  border-left-color: var(--ng-green);
}

body.dh :is(.cch-dossier h2, .cch-dossier strong, .cch-file h2) {
  display: block;
  margin: 8px 0;
  color: var(--ng-ink);
  font-weight: 900;
  line-height: 1.16;
}

body.dh .cch-tabs {
  display: grid;
  gap: 10px;
}

body.dh .cch-tabs button {
  border: 1px solid var(--ng-line);
  border-radius: 6px;
  background: #fffdf8;
  color: var(--ng-ink);
  cursor: pointer;
  font-weight: 900;
  min-height: 44px;
  padding: 11px 12px;
  text-align: left;
}

body.dh .cch-tabs button span {
  display: block;
  margin-bottom: 3px;
  line-height: 1.15;
}

body.dh .cch-tabs button.is-selected,
body.dh .cch-tabs button:hover {
  background: linear-gradient(135deg, #18252d, var(--ng-blue));
  color: #fffdf8;
}

body.dh .cch-file img,
body.dh .cch-portrait img {
  width: 100%;
  height: clamp(220px, 31vw, 380px);
  border-radius: 6px;
  object-fit: cover;
}

body.dh .cch-file img {
  margin-bottom: 18px;
}

body.dh .cch-file ul,
body.dh .cch-dossier ol {
  display: grid;
  gap: 9px;
  padding: 0;
  list-style: none;
}

body.dh .cch-file li,
body.dh .cch-proof span,
body.dh .cch-file article,
body.dh .cch-dossier li {
  border-left: 4px solid var(--ng-gold);
  background: rgba(255, 255, 255, 0.84);
  color: var(--ng-ink);
  font-weight: 800;
  padding: 9px 11px;
}

body.dh .cch-proof {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

body.dh .cch-phone {
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  margin-top: 18px;
  color: var(--ng-ink);
  font-size: clamp(2rem, 5vw, 3.3rem);
  font-weight: 900;
  line-height: 1;
  text-decoration: none;
}

body.dh .cch-dossier label {
  display: grid;
  gap: 7px;
  margin-bottom: 14px;
  color: var(--ng-ink);
  font-weight: 900;
}

body.dh .cch-dossier :is(input, select) {
  width: 100%;
  min-height: 44px;
  border: 1px solid var(--ng-line);
  border-radius: 6px;
  padding: 10px 12px;
}

body.dh .cch-resource-controls {
  grid-template-columns: minmax(220px, 1fr) minmax(180px, 240px) auto;
  margin-top: 0;
}

body.dh .cch-resource-controls label {
  margin-bottom: 0;
}

body.dh .cch-resource-controls .resource-control-reset {
  border-radius: 6px;
  background: linear-gradient(135deg, #173f35, #305f73);
  color: #fffdf8;
}

body.dh .cch-contact-grid .cch-file {
  width: min(100%, 760px);
  justify-self: center;
}

body.dh .cch-contact-grid .contact-form-card {
  border: 0;
  background: transparent;
  box-shadow: none;
  padding: 0;
}

body.dh .cch-file article {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  margin-top: 10px;
}

body.dh .cch-file article div {
  min-width: 0;
}

body.dh .cch-file article small {
  display: block;
  margin-top: 3px;
  color: var(--ng-muted);
  font-size: 0.82rem;
  font-weight: 800;
  line-height: 1.35;
}

body.dh .cch-file article a {
  color: var(--ng-blue);
  font-weight: 900;
  overflow-wrap: anywhere;
}

@media (max-width: 900px) {
  body.dh :is(.cch-grid, .cch-rail, .cch-contact-grid, .cch-resource-shell) {
    grid-template-columns: 1fr;
  }
  body.dh :is(.cch-tabs, .cch-contact-grid .cch-dossier) {
    order: initial;
    position: static;
  }
  body.dh .cch-tabs {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  body.dh .cch-resource-controls {
    grid-template-columns: 1fr 1fr;
  }
}
@media (max-width: 620px) {
  body.dh .cch-tabs,
  body.dh .cch-file article,
  body.dh .cch-resource-controls {
    grid-template-columns: 1fr;
  }
  body.dh .cch-copy h1 {
    font-size: clamp(2.1rem, 10vw, 3.45rem);
  }
  body.dh .cch-phone {
    font-size: clamp(1.7rem, 9vw, 2.35rem);
  }
}
@media (max-width: 720px) {
  body.dh .closing-concierge-footer-strip {
    grid-template-columns: 64px minmax(0, 1fr);
  }
  body.dh .closing-concierge-footer-strip img {
    width: 64px;
    height: 58px;
  }
  body.dh .closing-concierge-footer-strip a {
    grid-column: 1/-1;
  }
}
body.di {
  --ng-green: #132f28;
  --ng-teal: #2f6f7a;
  --ng-blue: #214760;
  --ng-gold: #b68d48;
  --ng-radius: 4px;
  background: #f4f7f5;
}

body.di .site-header {
  z-index: 130;
}

body.di main {
  background: linear-gradient(180deg, #fff, rgba(244, 247, 245, 0.94)), repeating-linear-gradient(90deg, transparent 0 31px, rgba(47, 111, 122, 0.07) 32px);
}

body.di .site-header::before {
  background: linear-gradient(90deg, var(--ng-green), var(--ng-blue), var(--ng-teal), var(--ng-gold));
}

body.di :is(.phone-link, .precision-grid-schedule, .ng-button-primary, .mobile-sticky-cta a:first-child),
body.di .site-footer > .site-container > a {
  background: linear-gradient(135deg, #173f35, #244d63);
}

body.di .di-only {
  display: initial;
}

body.di .footer-concept-default {
  display: none;
}

body.di :is(.footer-checkup-panel, .footer-grid, .footer-utility-row) {
  display: none;
}

body.di .precision-grid-schedule {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  border-radius: 4px;
  color: #ffffff;
  font-weight: 900;
  padding: 9px 14px;
  text-decoration: none;
}

body.di :is(.guide-panel, .home-vital-detail, .owner-portrait, .owner-route-card) {
  border-radius: 4px;
  border-left: 5px solid var(--ng-blue);
}

body.di :is(.inspection-route-command, .inspection-atlas-board, .inspection-workbench, .resource-blueprint-board, .resource-category-group, .resource-provider-group, .resource-card, .link-grid a, .resource-command-bar div) {
  border-radius: 4px;
  border-color: rgba(36, 77, 99, 0.24);
}

body.di :is(.scope-sheet-index button, .resource-filter button, .resource-category-guide button, .scope-filter button) {
  border-radius: 4px;
}

body.di :is(.scope-sheet-index button.is-selected, .resource-filter button.is-selected, .resource-category-guide button.is-selected, .scope-filter button.is-selected) {
  box-shadow: inset 0 0 0 2px var(--ng-blue);
}

body.di :is(.scope-sheet-index img, .system-panel-media img, .walkthrough-grid img) {
  border-radius: 3px;
}

body.di :is(.contact-summary, .contact-form-handoff, .request-planner, .contact-sidebar .sidebar-card, app-contact-form .contact-form-card) {
  border-radius: 4px;
  border-color: rgba(36, 77, 99, 0.24);
}

body.di app-contact-form .form-control:focus {
  outline: 3px solid rgba(36, 77, 99, 0.28);
  border-color: var(--ng-blue);
}

body.di .pgx-hero,
body.di .pgx-section {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(244, 247, 245, 0.94)), repeating-linear-gradient(90deg, transparent 0 35px, rgba(36, 77, 99, 0.1) 36px);
}

body.di .pgx-hero {
  padding: clamp(126px, 10vw, 166px) 0 clamp(70px, 7vw, 104px);
  border-bottom: 1px solid rgba(36, 77, 99, 0.16);
}

body.di .pgx-section {
  padding: clamp(48px, 7vw, 84px) 0;
}

body.di .pgx-hero-grid,
body.di .pgx-workbench,
body.di .pgx-two-col,
body.di .pgx-schematic-layout,
body.di .pgx-contact-layout,
body.di .pgx-resource-layout,
body.di .pgx-decision-grid,
body.di .pgx-quote-grid {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(300px, 0.78fr);
  gap: clamp(24px, 4vw, 52px);
  align-items: start;
}

body.di .pgx-kicker {
  display: inline-flex;
  width: -moz-fit-content;
  width: fit-content;
  align-items: center;
  gap: 8px;
  margin-bottom: 12px;
  color: var(--ng-blue);
  font-size: 0.78rem;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

body.di .pgx-copy h1,
body.di .pgx-section-copy h2,
body.di .pgx-results-head h2,
body.di .pgx-form-head h2 {
  margin: 0 0 16px;
  color: #112923;
  letter-spacing: 0;
}

body.di .pgx-copy h1 {
  max-width: 780px;
  font-size: clamp(2.65rem, 6vw, 5.6rem);
  line-height: 0.92;
}

body.di .pgx-copy p,
body.di .pgx-section-copy p,
body.di .pgx-results-head p,
body.di .pgx-form-head p {
  max-width: 720px;
  color: #52645f;
  font-size: clamp(1rem, 1.6vw, 1.16rem);
  line-height: 1.72;
}

body.di :is(.pgx-status-board, .pgx-feature-panel, .pgx-ledger, .pgx-contact-card, .pgx-stepper, .pgx-form-card, .pgx-filter-panel, .pgx-resource-results, .pgx-portrait, .pgx-diagram, .pgx-proof-wall article, .pgx-resource-group, .pgx-link-list a) {
  border: 1px solid rgba(36, 77, 99, 0.24);
  border-radius: 4px;
  background: rgba(255, 255, 255, 0.92);
  box-shadow: 0 24px 58px rgba(23, 63, 53, 0.12);
}

body.di :is(.pgx-status-board, .pgx-feature-panel, .pgx-ledger, .pgx-stepper, .pgx-form-card, .pgx-filter-panel, .pgx-resource-results) {
  padding: clamp(18px, 3vw, 30px);
}

body.di .pgx-board-head,
body.di .pgx-stat-row,
body.di .pgx-ledger > div,
body.di .pgx-resource-group > div:first-child,
body.di .pgx-provider-row,
body.di .pgx-timeline article {
  display: grid;
  gap: 6px;
  padding: 14px 0;
  border-bottom: 1px solid rgba(36, 77, 99, 0.13);
}

body.di .pgx-stat-row {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
}

body.di .pgx-stat-row small {
  grid-column: 1/-1;
}

body.di :is(.pgx-board-head span, .pgx-stat-row span, .pgx-ledger span, .pgx-resource-group span, .pgx-provider-row span, .pgx-contact-card small) {
  color: #667570;
  font-size: 0.82rem;
  font-weight: 800;
  text-transform: uppercase;
}

body.di :is(.pgx-board-head strong, .pgx-stat-row strong, .pgx-ledger strong, .pgx-contact-card strong, .pgx-resource-group strong, .pgx-provider-row strong) {
  color: #152e28;
}

body.di .pgx-tab-board {
  display: grid;
  gap: 18px;
}

body.di .pgx-tabs,
body.di .pgx-pill-row,
body.di .pgx-rail {
  display: grid;
  gap: 10px;
}

body.di .pgx-pill-row {
  grid-template-columns: repeat(auto-fit, minmax(128px, 1fr));
  margin-top: 18px;
}

body.di :is(.pgx-tabs button, .pgx-pill-row button, .pgx-rail button, .pgx-reset-button) {
  width: 100%;
  min-height: 48px;
  border: 1px solid rgba(36, 77, 99, 0.18);
  border-radius: 4px;
  background: rgba(255, 255, 255, 0.78);
  color: #173f35;
  font: inherit;
  font-weight: 850;
  text-align: left;
  cursor: pointer;
}

body.di :is(.pgx-tabs button, .pgx-rail button) {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 4px 12px;
  align-items: center;
  padding: 12px 14px;
}

body.di .pgx-pill-row button,
body.di .pgx-reset-button {
  padding: 12px 14px;
  text-align: center;
}

body.di :is(.pgx-tabs button span, .pgx-rail button span) {
  color: var(--ng-blue);
  font-size: 0.76rem;
  font-weight: 950;
  text-transform: uppercase;
}

body.di :is(.pgx-tabs button small, .pgx-rail button small) {
  grid-column: 2;
  color: #667570;
  font-size: 0.78rem;
  line-height: 1.35;
}

body.di :is(.pgx-tabs button.is-selected, .pgx-pill-row button.is-selected, .pgx-rail button.is-selected) {
  border-color: var(--ng-blue);
  background: #132f28;
  color: #ffffff;
}

body.di :is(.pgx-tabs button.is-selected span, .pgx-tabs button.is-selected small, .pgx-rail button.is-selected span, .pgx-rail button.is-selected small) {
  color: rgba(255, 255, 255, 0.78);
}

body.di .pgx-feature-panel {
  display: grid;
  gap: 18px;
}

body.di .pgx-feature-panel h2,
body.di .pgx-feature-panel h3 {
  margin: 0 0 10px;
  color: #152e28;
}

body.di .pgx-feature-panel p,
body.di .pgx-ledger p,
body.di .pgx-resource-group p {
  color: #52645f;
  line-height: 1.65;
}

body.di .pgx-image-panel,
body.di .pgx-owner-panel > img,
body.di .pgx-portrait img {
  overflow: hidden;
  border-radius: 3px;
}

body.di .pgx-image-panel {
  position: relative;
  min-height: 260px;
}

body.di .pgx-image-panel img,
body.di .pgx-owner-panel > img,
body.di .pgx-portrait img,
body.di .pgx-diagram img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

body.di .pgx-image-panel span {
  position: absolute;
  left: 14px;
  bottom: 14px;
  padding: 7px 10px;
  border-radius: 3px;
  background: rgba(17, 41, 35, 0.92);
  color: #ffffff;
  font-weight: 900;
}

body.di .pgx-check-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
  gap: 10px;
  margin-top: 18px;
}

body.di .pgx-check-grid span {
  padding: 10px 12px;
  border-left: 4px solid var(--ng-gold);
  border-radius: 3px;
  background: rgba(47, 111, 122, 0.08);
  color: #173f35;
  font-weight: 850;
}

body.di .pgx-diagram {
  position: relative;
  min-height: 560px;
  overflow: hidden;
  background: #0f211f;
}

body.di .pgx-diagram img {
  position: absolute;
  inset: 0;
  opacity: 0.72;
}

body.di .pgx-grid-overlay {
  position: absolute;
  inset: 0;
  background: repeating-linear-gradient(90deg, transparent 0 49px, rgba(255, 255, 255, 0.16) 50px), repeating-linear-gradient(0deg, transparent 0 49px, rgba(255, 255, 255, 0.16) 50px);
}

body.di .pgx-pin {
  position: absolute;
  width: 42px;
  height: 42px;
  transform: translate(-50%, -50%);
  border: 2px solid #ffffff;
  border-radius: 999px;
  background: var(--ng-gold);
  color: #12251f;
  font-weight: 950;
  cursor: pointer;
}

body.di .pgx-pin.is-selected {
  background: #ffffff;
  color: var(--ng-blue);
  box-shadow: 0 0 0 8px rgba(255, 255, 255, 0.24);
}

body.di .pgx-ledger ul,
body.di .pgx-owner-panel ul {
  margin: 10px 0 0;
  padding-left: 18px;
  color: #52645f;
}

body.di .pgx-portrait {
  margin: 0;
  overflow: hidden;
}

body.di .pgx-portrait img {
  aspect-ratio: 4/3;
  display: block;
}

body.di .pgx-portrait figcaption {
  display: grid;
  gap: 4px;
  padding: 16px;
}

body.di .pgx-quote-grid {
  grid-template-columns: minmax(280px, 0.8fr) minmax(0, 1fr);
}

body.di .pgx-quote-grid blockquote {
  margin: 0;
  padding: clamp(22px, 4vw, 42px);
  border-left: 6px solid var(--ng-gold);
  background: linear-gradient(135deg, #132f28, #214760);
  color: #ffffff;
}

body.di .pgx-quote-grid blockquote p {
  margin: 0;
  font-size: clamp(1.35rem, 3vw, 2.2rem);
  line-height: 1.18;
}

body.di .pgx-proof-wall {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
  gap: 12px;
}

body.di .pgx-proof-wall article {
  display: grid;
  gap: 8px;
  padding: 16px;
}

body.di .pgx-owner-panel {
  grid-template-columns: minmax(190px, 0.65fr) minmax(0, 1fr);
}

body.di .pgx-owner-panel > img {
  min-height: 320px;
}

body.di .pgx-contact-card {
  display: grid;
  gap: 12px;
  padding: clamp(18px, 3vw, 28px);
}

body.di .pgx-contact-card a {
  color: var(--ng-blue);
  font-weight: 900;
}

body.di .pgx-timeline {
  margin-top: 18px;
}

body.di .pgx-timeline article {
  grid-template-columns: 52px minmax(0, 1fr);
  align-items: start;
}

body.di .pgx-timeline article > span {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border-radius: 999px;
  background: #132f28;
  color: #ffffff;
  font-weight: 950;
}

body.di .pgx-form-card app-contact-form .contact-form-card {
  box-shadow: none;
}

body.di .pgx-resource-layout {
  grid-template-columns: minmax(220px, 320px) minmax(0, 1fr);
}

body.di :is(.pgx-contact-simple, .pgx-resource-compact) {
  grid-template-columns: minmax(0, 840px);
  justify-content: center;
}

body.di .pgx-resource-compact {
  gap: 18px;
}

body.di .pgx-resource-compact :is(.pgx-filter-panel, .pgx-resource-results) {
  width: min(100%, 920px);
  justify-self: center;
}

body.di .pgx-contact-simple .pgx-form-card {
  width: min(100%, 760px);
  justify-self: center;
}

body.di .pgx-contact-simple app-contact-form .contact-form-card {
  border: 0;
  background: transparent;
  box-shadow: none;
  padding: 0;
}

body.di .pgx-contact-inline {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin: 0 0 18px;
}

body.di .pgx-contact-inline :is(a, span) {
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  border: 1px solid rgba(36, 77, 99, 0.18);
  border-radius: 999px;
  background: rgba(47, 111, 122, 0.08);
  color: #173f35;
  font-weight: 850;
  padding: 7px 11px;
  text-decoration: none;
}

body.di .pgx-search {
  display: grid;
  gap: 8px;
  margin-bottom: 18px;
  color: #173f35;
  font-weight: 900;
}

body.di .pgx-search input {
  min-height: 48px;
  border: 1px solid rgba(36, 77, 99, 0.22);
  border-radius: 4px;
  padding: 0 12px;
  font: inherit;
}

body.di .pgx-resource-group {
  margin-top: 18px;
  padding: 18px;
}

body.di .pgx-resource-compact .resource-control-strip {
  grid-template-columns: minmax(220px, 1fr) minmax(180px, 240px) auto;
  margin-top: 0;
}

body.di .pgx-resource-compact .resource-control-field {
  margin-bottom: 0;
}

body.di .pgx-provider-list {
  display: grid;
  gap: 0;
  margin-top: 18px;
}

body.di .pgx-provider-row {
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
}

body.di .pgx-provider-row a {
  color: var(--ng-blue);
  font-weight: 950;
  overflow-wrap: anywhere;
  white-space: nowrap;
}

body.di .pgx-link-list {
  display: grid;
  gap: 10px;
}

body.di .pgx-link-list a {
  display: grid;
  gap: 6px;
  padding: 14px;
  color: #173f35;
  text-decoration: none;
}

@media (max-width: 940px) {
  body.di .pgx-hero-grid,
  body.di .pgx-workbench,
  body.di .pgx-two-col,
  body.di .pgx-schematic-layout,
  body.di .pgx-contact-layout,
  body.di .pgx-resource-layout,
  body.di .pgx-decision-grid,
  body.di .pgx-quote-grid {
    grid-template-columns: 1fr;
  }
  body.di .pgx-copy h1 {
    font-size: clamp(2.25rem, 11vw, 4.2rem);
  }
  body.di .pgx-diagram {
    min-height: 430px;
  }
  body.di .pgx-resource-layout {
    gap: 20px;
  }
}
@media (max-width: 620px) {
  body.di .pgx-hero {
    padding-top: 138px;
  }
  body.di :is(.pgx-status-board, .pgx-feature-panel, .pgx-ledger, .pgx-stepper, .pgx-form-card, .pgx-filter-panel, .pgx-resource-results) {
    padding: 16px;
  }
  body.di :is(.pgx-tabs button, .pgx-rail button) {
    grid-template-columns: 1fr;
  }
  body.di :is(.pgx-tabs button small, .pgx-rail button small) {
    grid-column: auto;
  }
  body.di .pgx-owner-panel,
  body.di .pgx-provider-row,
  body.di .pgx-stat-row {
    grid-template-columns: 1fr;
  }
  body.di .pgx-resource-compact .resource-control-strip,
  body.di .pgx-contact-inline {
    grid-template-columns: 1fr;
  }
  body.di .pgx-contact-inline {
    display: grid;
  }
  body.di .pgx-diagram {
    min-height: 330px;
  }
  body.di .pgx-pin {
    width: 34px;
    height: 34px;
  }
}
body.design-heritage-blueprint {
  --ng-ink: #17292d;
  --ng-muted: #63706d;
  --ng-paper: #f6f0e4;
  --ng-white: #fffaf1;
  --ng-green: #315f4f;
  --ng-teal: #2d7180;
  --ng-blue: #295d78;
  --ng-gold: #b98533;
  --ng-coral: #a85e4d;
  --ng-line: rgba(23, 41, 45, 0.16);
  --ng-radius: 6px;
  --ng-shadow: 0 20px 42px rgba(23, 41, 45, 0.13);
  background: #f6f0e4;
}

body.design-heritage-blueprint main,
body.design-heritage-blueprint .ng-hero,
body.design-heritage-blueprint .page-hero {
  background: linear-gradient(180deg, rgba(255, 250, 241, 0.94), rgba(246, 240, 228, 0.94) 52%, rgba(237, 244, 242, 0.95)), repeating-linear-gradient(90deg, transparent 0, transparent 31px, rgba(41, 93, 120, 0.1) 32px), repeating-linear-gradient(0deg, transparent 0, transparent 31px, rgba(49, 95, 79, 0.06) 32px);
}

body.design-heritage-blueprint .site-header {
  border-top: 5px solid var(--ng-gold);
  background: linear-gradient(180deg, rgba(255, 250, 241, 0.98), rgba(250, 246, 236, 0.96)), repeating-linear-gradient(90deg, transparent 0, transparent 30px, rgba(41, 93, 120, 0.07) 31px);
}

body.design-heritage-blueprint .ng-hero,
body.design-heritage-blueprint .page-hero,
body.design-heritage-blueprint .feature-card,
body.design-heritage-blueprint .route-card,
body.design-heritage-blueprint .resource-card,
body.design-heritage-blueprint .contact-form-card,
body.design-heritage-blueprint .footer-compliance {
  border-color: rgba(41, 93, 120, 0.22);
  box-shadow: 0 20px 42px rgba(23, 41, 45, 0.13);
}

body.design-heritage-blueprint .ng-button-primary,
body.design-heritage-blueprint .phone-link,
body.design-heritage-blueprint .mobile-sticky-cta a:first-child {
  background: var(--ng-green);
}

body.dg :is(.hbp-hero, .hbp-section) {
  background: linear-gradient(180deg, rgba(255, 250, 241, 0.95), rgba(246, 240, 228, 0.94)), repeating-linear-gradient(90deg, transparent 0, transparent 31px, rgba(41, 93, 120, 0.1) 32px), repeating-linear-gradient(0deg, transparent 0, transparent 31px, rgba(49, 95, 79, 0.08) 32px);
}

body.dg .hbp-hero {
  padding: clamp(126px, 10vw, 166px) 0 clamp(72px, 7vw, 104px);
}

body.dg .hbp-section {
  padding: clamp(40px, 6vw, 72px) 0;
}

body.dg :is(.hbp-grid, .hbp-rail, .hbp-contact-grid) {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(300px, 0.58fr);
  gap: clamp(20px, 4vw, 48px);
  align-items: start;
}

body.dg .hbp-rail {
  grid-template-columns: 280px minmax(0, 1fr);
}

body.dg .hbp-contact-grid {
  grid-template-columns: minmax(0, 1fr) 340px;
}

body.dg .hbp-contact-grid {
  grid-template-columns: minmax(0, 820px);
  justify-content: center;
}

body.dg .hbp-label,
body.dg .hbp-tabs span,
body.dg .hbp-sheet > span,
body.dg .hbp-phone + small {
  color: var(--ng-blue);
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
}

body.dg .hbp-label {
  display: inline-flex;
  width: -moz-fit-content;
  width: fit-content;
  border: 1px solid rgba(41, 93, 120, 0.24);
  border-radius: 999px;
  background: rgba(255, 250, 241, 0.84);
  padding: 7px 10px;
}

body.dg .hbp-copy h1 {
  max-width: 760px;
  margin: 10px 0 14px;
  color: var(--ng-ink);
  font-size: clamp(2.85rem, 6.2vw, 5.25rem);
  line-height: 0.96;
}

body.dg .hbp-copy p,
body.dg .hbp-file p,
body.dg .hbp-sheet p {
  color: var(--ng-muted);
  line-height: 1.62;
}

body.dg :is(.hbp-sheet, .hbp-file) {
  border: 1px solid rgba(41, 93, 120, 0.28);
  border-left: 8px solid var(--ng-gold);
  border-radius: 6px;
  background: linear-gradient(180deg, rgba(255, 250, 241, 0.98), rgba(255, 255, 255, 0.88)), repeating-linear-gradient(0deg, transparent 0, transparent 30px, rgba(41, 93, 120, 0.06) 31px);
  box-shadow: 0 28px 68px rgba(23, 41, 45, 0.17);
  padding: clamp(18px, 3vw, 28px);
}

body.dg .hbp-file {
  border-left-color: var(--ng-green);
}

body.dg .hbp-sheet strong,
body.dg .hbp-file h2,
body.dg .hbp-file h3 {
  display: block;
  margin: 8px 0;
  color: var(--ng-ink);
  font-weight: 900;
  line-height: 1.16;
}

body.dg .hbp-sheet ol,
body.dg .hbp-contact-grid ol {
  display: grid;
  gap: 12px;
  margin: 18px 0 0;
  padding: 0;
  list-style: none;
}

body.dg .hbp-sheet li,
body.dg .hbp-contact-grid li {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 10px;
  border-top: 1px solid var(--ng-line);
  padding-top: 12px;
}

body.dg .hbp-sheet li span,
body.dg .hbp-contact-grid li span {
  color: var(--ng-gold);
  font-weight: 900;
}

body.dg .hbp-sheet li p,
body.dg .hbp-contact-grid li p {
  margin: 0;
}

body.dg .hbp-tabs {
  display: grid;
  gap: 10px;
}

body.dg .hbp-tabs button {
  border: 1px solid rgba(41, 93, 120, 0.26);
  border-radius: 6px;
  background: linear-gradient(180deg, rgba(255, 250, 241, 0.96), rgba(246, 240, 228, 0.82));
  color: var(--ng-ink);
  cursor: pointer;
  font-weight: 900;
  min-height: 44px;
  padding: 11px 12px;
  text-align: left;
}

body.dg .hbp-tabs button span {
  display: block;
  margin-bottom: 3px;
  line-height: 1.2;
}

body.dg .hbp-tabs button.is-selected,
body.dg .hbp-tabs button:hover {
  border-color: rgba(184, 133, 51, 0.45);
  background: linear-gradient(135deg, #17292d, var(--ng-blue));
  color: #ffffff;
}

body.dg .hbp-tabs button.is-selected span {
  color: rgba(255, 255, 255, 0.78);
}

body.dg .hbp-file img,
body.dg .hbp-portrait img {
  width: 100%;
  height: clamp(220px, 32vw, 390px);
  border-radius: 6px;
  object-fit: cover;
}

body.dg .hbp-file img {
  margin: 0 0 18px;
}

body.dg .hbp-file details {
  margin-top: 16px;
  border-top: 1px solid var(--ng-line);
  padding-top: 14px;
}

body.dg .hbp-file summary {
  cursor: pointer;
  color: var(--ng-ink);
  font-weight: 900;
}

body.dg .hbp-file ul {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  padding: 0;
  list-style: none;
}

body.dg .hbp-file li,
body.dg .hbp-proof span,
body.dg .hbp-file article {
  border-left: 4px solid var(--ng-gold);
  background: rgba(255, 255, 255, 0.8);
  color: var(--ng-ink);
  font-weight: 800;
  padding: 9px 11px;
}

body.dg .hbp-proof {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

body.dg .hbp-phone {
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  margin-top: 18px;
  color: var(--ng-ink);
  font-size: clamp(2rem, 5vw, 3.35rem);
  font-weight: 900;
  line-height: 1;
  text-decoration: none;
}

body.dg .hbp-measure {
  overflow: hidden;
  height: 12px;
  border-radius: 999px;
  background: rgba(41, 93, 120, 0.12);
}

body.dg .hbp-measure span {
  display: block;
  height: 100%;
  background: linear-gradient(90deg, var(--ng-green), var(--ng-blue), var(--ng-gold));
}

body.dg .hbp-sheet label {
  display: grid;
  gap: 7px;
  margin-bottom: 14px;
  color: var(--ng-ink);
  font-weight: 900;
}

body.dg .hbp-sheet input {
  width: 100%;
  min-height: 44px;
  border: 1px solid var(--ng-line);
  border-radius: 6px;
  padding: 10px 12px;
}

body.dg .hbp-file article {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  margin-top: 10px;
}

body.dg .hbp-file article small {
  display: block;
  margin-top: 3px;
  color: var(--ng-muted);
  line-height: 1.35;
}

body.dg .hbp-resource-controls {
  grid-template-columns: 1fr;
}

body.dg .hbp-resource-controls .resource-control-reset {
  background: linear-gradient(135deg, #17292d, var(--ng-blue));
  color: #fff;
}

@media (max-width: 900px) {
  body.dg :is(.hbp-grid, .hbp-rail, .hbp-contact-grid) {
    grid-template-columns: 1fr;
  }
  body.dg :is(.hbp-tabs, .hbp-sheet) {
    position: static;
  }
  body.dg .hbp-tabs {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  body.dg .hbp-copy h1 {
    font-size: clamp(2.2rem, 10vw, 3.6rem);
  }
}
@media (max-width: 720px) {
  body.dg .hbp-hero {
    padding-top: 138px;
  }
}
@media (max-width: 620px) {
  body.dg .hbp-tabs,
  body.dg .hbp-file ul,
  body.dg .hbp-file article {
    grid-template-columns: 1fr;
  }
  body.dg .hbp-phone {
    font-size: clamp(1.7rem, 9vw, 2.35rem);
  }
}
.fj-only,
.lc-only,
.rs-only,
.ngd-only,
.ic-only,
.hhc-only,
.dh-only,
.di-only {
  display: none;
}

body.da {
  --ng-ink: #182326;
  --ng-muted: #5e6b69;
  --ng-green: #315f4e;
  --ng-teal: #2f7485;
  --ng-blue: #425f8d;
  --ng-gold: #b9872f;
  --ng-coral: #9a5a45;
  --ng-paper: #f3f7f4;
  --ng-sky: #e6f0f2;
  --ng-leaf: #e7eee4;
  --ng-line: #cbd8d3;
  --ng-white: #fbfdf9;
  --ng-shadow: 0 24px 50px rgba(24, 35, 38, 0.14);
  --ng-radius: 6px;
  background: #f3f7f4;
}

body.da .fj-only {
  display: initial;
}

body.da .footer-concept-default {
  display: none;
}

body.da {
  --fj-paper: #fffaf0;
  --fj-paper-soft: #f7f2e6;
  --fj-wash: #edf5f0;
  --fj-edge: rgba(24, 35, 38, 0.14);
  --fj-rule: rgba(49, 95, 78, 0.085);
  --fj-shadow: 0 26px 64px rgba(24, 35, 38, 0.13);
}

body.da main {
  background: linear-gradient(180deg, rgba(255, 250, 240, 0.97), rgba(247, 242, 230, 0.94) 46%, rgba(237, 245, 240, 0.94)), repeating-linear-gradient(0deg, transparent 0, transparent 31px, var(--fj-rule) 32px), linear-gradient(90deg, transparent 0, transparent clamp(22px, 7vw, 88px), rgba(154, 90, 69, 0.22) clamp(22px, 7vw, 88px), rgba(154, 90, 69, 0.22) calc(clamp(22px, 7vw, 88px) + 1px), transparent calc(clamp(22px, 7vw, 88px) + 1px));
}

body.da .site-header {
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: clamp(14px, 2.4vw, 28px);
  border-bottom: 1px solid var(--fj-edge);
  background: linear-gradient(180deg, rgba(255, 250, 240, 0.98), rgba(247, 242, 230, 0.96)), repeating-linear-gradient(0deg, transparent 0, transparent 26px, rgba(49, 95, 78, 0.06) 27px);
  box-shadow: 0 16px 36px rgba(24, 35, 38, 0.09);
}

body.da .site-header::before {
  height: 4px;
  background: linear-gradient(90deg, var(--ng-coral), var(--ng-gold), var(--ng-green), var(--ng-blue));
}

body.da .brand-mark {
  position: relative;
  align-self: stretch;
  padding-right: 18px;
}

body.da .brand-mark::after {
  position: absolute;
  top: 9px;
  right: 0;
  bottom: 9px;
  width: 1px;
  background: repeating-linear-gradient(180deg, rgba(174, 92, 79, 0.55) 0 6px, transparent 6px 10px);
  content: "";
}

body.da .brand-mark img {
  width: 116px;
  height: auto;
  object-fit: contain;
}

body.da .brand-mark strong {
  font-size: 1.02rem;
  line-height: 1.1;
}

body.da .brand-mark small {
  color: var(--ng-muted);
}

body.da .field-journal-brand-note {
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  margin-top: 6px;
  border: 1px solid rgba(174, 92, 79, 0.22);
  border-radius: 999px;
  background: rgba(174, 92, 79, 0.08);
  color: var(--ng-coral);
  font-size: 0.66rem;
  font-style: normal;
  font-weight: 900;
  padding: 4px 8px;
  text-transform: uppercase;
}

body.da .primary-nav {
  justify-content: center;
  gap: 6px;
}

body.da .primary-nav a {
  position: relative;
  min-height: 40px;
  border: 1px solid transparent;
  border-radius: 6px 6px 2px 2px;
  color: var(--ng-ink);
  padding: 9px 12px;
}

body.da .primary-nav a::after {
  position: absolute;
  right: 11px;
  bottom: 6px;
  left: 11px;
  height: 2px;
  border-radius: 999px;
  background: var(--ng-coral);
  content: "";
  opacity: 0;
  transform: scaleX(0.35);
  transform-origin: left;
  transition: opacity 160ms ease, transform 160ms ease;
}

body.da .primary-nav a:hover,
body.da .primary-nav a.is-active {
  border-color: rgba(29, 40, 37, 0.12);
  background: rgba(255, 253, 247, 0.92);
  color: var(--ng-green);
}

body.da .primary-nav a:hover::after,
body.da .primary-nav a.is-active::after {
  opacity: 1;
  transform: scaleX(1);
}

body.da .field-journal-nav-note {
  display: grid;
  max-width: 248px;
  margin-left: 8px;
  border-left: 1px dashed rgba(29, 40, 37, 0.24);
  padding-left: 14px;
}

body.da .field-journal-nav-note span {
  color: var(--ng-coral);
  font-size: 0.68rem;
  font-weight: 900;
  text-transform: uppercase;
}

body.da .field-journal-nav-note strong {
  margin-top: 3px;
  color: var(--ng-muted);
  font-size: 0.74rem;
  line-height: 1.3;
}

body.da .phone-link,
body.da .field-journal-schedule,
body.da .ng-button-primary,
body.da .mobile-sticky-cta a:first-child {
  position: relative;
  border: 1px solid rgba(36, 93, 76, 0.24);
  border-radius: 6px;
  background: var(--ng-green);
  color: #fffdf7;
  box-shadow: 0 12px 24px rgba(36, 93, 76, 0.18);
  overflow: hidden;
}

body.da .phone-link:hover,
body.da .field-journal-schedule:hover,
body.da .ng-button-primary:hover {
  background: #1d4f41;
  transform: translateY(-1px);
}

body.da .field-journal-schedule {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 9px 14px;
  font-weight: 900;
  text-decoration: none;
}

body.da .ng-button-secondary,
body.da .ng-button-ghost {
  border: 1px solid rgba(29, 40, 37, 0.16);
  border-radius: 6px;
  background: rgba(255, 253, 247, 0.88);
  color: var(--ng-green);
}

body.da .ng-button-secondary:hover,
body.da .ng-button-ghost:hover {
  border-color: rgba(174, 92, 79, 0.32);
  background: rgba(230, 238, 230, 0.88);
  color: var(--ng-coral);
}

body.da .inline-cta,
body.da .field-journal-owner-log-body a,
body.da .field-journal-privacy-note a,
body.da app-contact-form .small.text-muted a {
  display: inline-flex;
  align-items: center;
  min-height: 40px;
  padding: 2px 0;
}

body.da .site-footer {
  border-top: 1px solid rgba(29, 40, 37, 0.15);
  background: linear-gradient(180deg, #fffdf7, #f5f2e8), repeating-linear-gradient(0deg, transparent 0, transparent 30px, rgba(29, 40, 37, 0.06) 31px);
  padding: 24px 0 16px;
}

body.da .footer-certification-strip {
  border: 1px solid rgba(29, 40, 37, 0.14);
  border-left: 6px solid var(--ng-coral);
  border-radius: 6px;
  background: rgba(255, 253, 247, 0.88);
}

body.da :is(.footer-certification-strip, .footer-checkup-panel, .footer-grid, .footer-utility-row) {
  display: none;
}

body.da .field-journal-footer-strip {
  display: grid;
  grid-template-columns: 72px minmax(0, 1fr) auto;
  gap: 16px;
  align-items: center;
  margin-top: 0;
  margin-bottom: 18px;
  border: 1px solid rgba(29, 40, 37, 0.16);
  border-left: 6px solid var(--ng-coral);
  border-radius: 6px;
  background: linear-gradient(135deg, rgba(255, 253, 247, 0.96), rgba(238, 244, 241, 0.9)), repeating-linear-gradient(0deg, transparent 0, transparent 28px, rgba(29, 40, 37, 0.05) 29px);
  box-shadow: var(--ng-shadow);
  padding: 14px;
}

body.da .field-journal-footer-strip img {
  width: 72px;
  height: 72px;
  margin: 0;
  border: 1px solid rgba(29, 40, 37, 0.16);
  border-radius: 6px;
  object-fit: cover;
  object-position: center 18%;
}

body.da .field-journal-footer-strip span {
  color: var(--ng-coral);
  font-size: 0.76rem;
  font-weight: 900;
  text-transform: uppercase;
}

body.da .field-journal-footer-strip strong {
  display: block;
  margin-top: 4px;
  color: var(--ng-ink);
  font-size: clamp(1.05rem, 1.7vw, 1.3rem);
  line-height: 1.22;
}

body.da .field-journal-footer-strip p {
  margin: 5px 0 0;
  color: var(--ng-muted);
  font-size: 0.92rem;
  line-height: 1.35;
}

body.da .field-journal-footer-strip a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  border: 1px solid rgba(36, 93, 76, 0.24);
  border-radius: 6px;
  background: rgba(251, 253, 249, 0.9);
  color: var(--ng-green);
  font-weight: 900;
  padding: 8px 10px;
  text-decoration: none;
  white-space: nowrap;
}

body.da .field-journal-footer-strip nav {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
}

body.da .footer-bottom {
  justify-content: center;
  margin-top: 8px;
  padding-top: 14px;
  text-align: center;
}

body.da .footer-concept-field-journal {
  display: none;
}

body.da .footer-checkup-panel article,
body.da .footer-compliance,
body.da .footer-service-area,
body.da .footer-brand,
body.da .footer-grid > div {
  border-color: rgba(29, 40, 37, 0.14);
}

body.da .footer-badge-grid span,
body.da .footer-chip-grid span,
body.da .footer-compliance-list span {
  border-radius: 6px;
  background: rgba(230, 238, 230, 0.82);
  color: var(--ng-green);
}

body.da .mobile-menu-button {
  border-color: rgba(29, 40, 37, 0.14);
  border-radius: 6px;
  background: #fffdf7;
}

body.da .mobile-menu-button:focus-visible,
body.da a:focus-visible,
body.da button:focus-visible,
body.da select:focus-visible,
body.da input:focus-visible,
body.da textarea:focus-visible {
  outline: 3px solid rgba(207, 166, 80, 0.62);
  outline-offset: 3px;
}

@media (max-width: 1040px) {
  body.da .site-header {
    grid-template-columns: auto auto;
  }
  body.da .mobile-menu-button {
    display: block;
    justify-self: end;
  }
  body.da .primary-nav {
    position: absolute;
    top: calc(100% + 1px);
    right: 16px;
    left: 16px;
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    justify-content: stretch;
    max-height: 0;
    overflow: hidden;
    border: 1px solid rgba(29, 40, 37, 0.16);
    border-left: 6px solid var(--ng-coral);
    border-radius: 6px;
    background: linear-gradient(180deg, rgba(255, 253, 247, 0.99), rgba(245, 242, 232, 0.98)), repeating-linear-gradient(0deg, transparent 0, transparent 28px, rgba(29, 40, 37, 0.06) 29px);
    box-shadow: var(--ng-shadow);
    opacity: 0;
    padding: 0 14px;
    pointer-events: none;
    transform: translateY(-8px) scale(0.98);
    transform-origin: top center;
    transition: max-height 260ms ease, opacity 180ms ease, padding 260ms ease, transform 260ms ease, visibility 0s linear 260ms;
    visibility: hidden;
  }
  body.da .primary-nav.is-open {
    max-height: 430px;
    opacity: 1;
    padding: 14px;
    pointer-events: auto;
    transform: translateY(0) scale(1);
    transition: max-height 300ms ease, opacity 180ms ease, padding 300ms ease, transform 300ms ease;
    visibility: visible;
  }
  body.da .primary-nav > * {
    opacity: 0;
    transform: translateY(-6px);
    transition: opacity 160ms ease, transform 220ms ease;
  }
  body.da .primary-nav.is-open > * {
    opacity: 1;
    transform: translateY(0);
  }
  body.da .primary-nav.is-open > :nth-child(2) {
    transition-delay: 35ms;
  }
  body.da .primary-nav.is-open > :nth-child(3) {
    transition-delay: 70ms;
  }
  body.da .primary-nav.is-open > :nth-child(4) {
    transition-delay: 105ms;
  }
  body.da .primary-nav.is-open > :nth-child(5) {
    transition-delay: 140ms;
  }
  body.da .primary-nav.is-open > :nth-child(6) {
    transition-delay: 175ms;
  }
  body.da .primary-nav a {
    justify-content: flex-start;
    width: 100%;
  }
  body.da .field-journal-nav-note {
    grid-column: 1/-1;
    max-width: none;
    margin: 6px 0 0;
    border-top: 1px dashed rgba(29, 40, 37, 0.2);
    border-left: 0;
    padding: 12px 0 0;
  }
  body.da .header-actions {
    grid-column: 1/-1;
    justify-self: stretch;
  }
  body.da .header-actions .phone-link,
  body.da .header-actions .field-journal-schedule {
    flex: 1 1 0;
  }
}
@media (max-width: 720px) {
  body.da .site-header {
    grid-template-columns: 44px minmax(0, 1fr) 44px;
    gap: 10px;
    padding: 10px 14px;
  }
  body.da .brand-mark {
    grid-column: 2;
    justify-self: center;
    justify-content: center;
    gap: 0;
    padding-right: 0;
  }
  body.da .brand-mark span,
  body.da .brand-mark::after,
  body.da .field-journal-brand-note {
    display: none;
  }
  body.da .brand-mark img {
    width: 110px;
    height: auto;
  }
  body.da .mobile-menu-button {
    grid-column: 3;
    grid-row: 1;
    justify-self: end;
  }
  body.da .brand-mark strong {
    font-size: 0.95rem;
  }
  body.da .primary-nav {
    grid-template-columns: 1fr;
    right: 10px;
    left: 10px;
  }
  body.da .field-journal-footer-strip {
    grid-template-columns: 72px minmax(0, 1fr);
  }
  body.da .field-journal-footer-strip img {
    width: 72px;
    height: 72px;
  }
  body.da .field-journal-footer-strip a {
    grid-column: 1/-1;
    width: 100%;
    white-space: normal;
  }
  body.da .field-journal-footer-strip nav {
    grid-column: 1/-1;
    justify-content: flex-start;
  }
  body.da .field-journal-footer-strip nav a {
    width: auto;
  }
}
body.db {
  --ng-ink: #13272a;
  --ng-muted: #5d6f71;
  --ng-green: #1f6758;
  --ng-teal: #287a84;
  --ng-blue: #385b7c;
  --ng-gold: #c6933d;
  --ng-coral: #a95d58;
  --ng-paper: #f3f7f5;
  --ng-sky: #e6f1f3;
  --ng-leaf: #e8f1ec;
  --ng-line: rgba(19, 39, 42, 0.14);
  --ng-white: #ffffff;
  --ng-shadow: 0 22px 50px rgba(19, 39, 42, 0.12);
  --ng-radius: 8px;
  background: #f3f7f5;
}

body.db .lc-only {
  display: initial;
}

body.db .footer-concept-default {
  display: none;
}

body.db main {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(243, 247, 245, 0.94) 38%, rgba(230, 241, 243, 0.92) 100%), linear-gradient(90deg, rgba(40, 122, 132, 0.1) 0, rgba(40, 122, 132, 0.1) 1px, transparent 1px, transparent 100%);
  background-size: auto, 72px 100%;
}

body.db .site-header {
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 24px;
  border-bottom: 1px solid rgba(35, 95, 85, 0.14);
  background: rgba(255, 253, 249, 0.97);
  box-shadow: 0 18px 42px rgba(23, 40, 45, 0.09);
}

body.db .site-header::before {
  height: 4px;
  background: linear-gradient(90deg, var(--ng-green), var(--ng-gold), var(--ng-teal));
}

body.db .brand-mark {
  position: relative;
  padding-right: 18px;
}

body.db .brand-mark::after {
  position: absolute;
  top: 8px;
  right: 0;
  bottom: 8px;
  width: 1px;
  background: rgba(35, 95, 85, 0.14);
  content: "";
}

body.db .brand-mark img {
  width: 82px;
  height: 58px;
  border: 1px solid rgba(35, 95, 85, 0.12);
  border-radius: 8px;
  background: #fffdf9;
  padding: 5px;
  box-shadow: 0 10px 24px rgba(23, 40, 45, 0.08);
}

body.db .brand-mark strong {
  color: var(--ng-ink);
  font-size: 1.02rem;
  line-height: 1.1;
}

body.db .brand-mark small {
  color: var(--ng-muted);
}

body.db .local-concierge-brand-note {
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  margin-top: 6px;
  border: 1px solid rgba(213, 169, 84, 0.34);
  border-radius: 999px;
  background: rgba(213, 169, 84, 0.12);
  color: #7b5a1f;
  font-size: 0.66rem;
  font-style: normal;
  font-weight: 900;
  padding: 4px 9px;
  text-transform: uppercase;
}

body.db .primary-nav {
  justify-content: center;
  gap: 5px;
}

body.db .primary-nav a {
  min-height: 42px;
  border: 1px solid transparent;
  border-radius: 999px;
  color: var(--ng-ink);
  padding: 10px 13px;
  transition: background 160ms ease, border-color 160ms ease, color 160ms ease, transform 160ms ease;
}

body.db .primary-nav a:hover,
body.db .primary-nav a.is-active {
  border-color: rgba(35, 95, 85, 0.17);
  background: rgba(231, 240, 235, 0.84);
  color: var(--ng-green);
  transform: translateY(-1px);
}

body.db .local-concierge-nav-note {
  display: grid;
  max-width: 248px;
  margin-left: 10px;
  border-left: 1px solid rgba(213, 169, 84, 0.42);
  padding-left: 14px;
}

body.db .local-concierge-nav-note span {
  color: #8a6422;
  font-size: 0.68rem;
  font-weight: 900;
  text-transform: uppercase;
}

body.db .local-concierge-nav-note strong {
  margin-top: 3px;
  color: var(--ng-muted);
  font-size: 0.74rem;
  line-height: 1.3;
}

body.db .phone-link,
body.db .local-concierge-schedule,
body.db .ng-button-primary,
body.db .mobile-sticky-cta a:first-child {
  border: 1px solid rgba(35, 95, 85, 0.22);
  border-radius: 999px;
  background: linear-gradient(135deg, var(--ng-green), var(--ng-teal));
  color: #fffdf9;
  box-shadow: 0 14px 28px rgba(35, 95, 85, 0.18);
  transition: background 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

body.db .phone-link:hover,
body.db .local-concierge-schedule:hover,
body.db .ng-button-primary:hover {
  background: linear-gradient(135deg, #1d5048, #285f6b);
  box-shadow: 0 18px 34px rgba(35, 95, 85, 0.22);
  transform: translateY(-1px);
}

body.db .local-concierge-schedule {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 10px 16px;
  font-weight: 900;
  text-decoration: none;
}

body.db .local-concierge-schedule::before,
body.db .ng-button-primary::before {
  margin-right: 8px;
  color: var(--ng-gold);
  content: "+";
  font-weight: 900;
}

body.db .ng-button-secondary,
body.db .ng-button-ghost,
body.db .mobile-sticky-cta a:last-child {
  border: 1px solid rgba(35, 95, 85, 0.18);
  border-radius: 999px;
  background: rgba(255, 253, 249, 0.9);
  color: var(--ng-green);
  box-shadow: 0 10px 22px rgba(23, 40, 45, 0.06);
}

body.db .ng-button-secondary:hover,
body.db .ng-button-ghost:hover {
  border-color: rgba(213, 169, 84, 0.44);
  background: rgba(255, 251, 241, 0.98);
  color: #7b5a1f;
  transform: translateY(-1px);
}

body.db .mobile-menu-button {
  border-color: rgba(35, 95, 85, 0.16);
  border-radius: 999px;
  background: #fffdf9;
  box-shadow: 0 8px 18px rgba(23, 40, 45, 0.08);
}

body.db .mobile-menu-button:focus-visible,
body.db a:focus-visible,
body.db button:focus-visible,
body.db select:focus-visible,
body.db input:focus-visible,
body.db textarea:focus-visible {
  outline: 3px solid rgba(213, 169, 84, 0.68);
  outline-offset: 3px;
}

body.db .site-footer {
  border-top: 1px solid rgba(35, 95, 85, 0.14);
  background: linear-gradient(180deg, rgba(255, 253, 249, 0.98), rgba(247, 244, 238, 0.96)), linear-gradient(135deg, rgba(231, 240, 235, 0.8), rgba(239, 247, 246, 0.74));
  color: var(--ng-muted);
  padding: 28px 0 18px;
}

body.db .footer-certification-strip {
  display: none;
}

body.db :is(.footer-checkup-panel, .footer-grid, .footer-utility-row) {
  display: none;
}

body.db .local-concierge-footer-strip {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 18px;
  align-items: center;
  margin-bottom: 12px;
  border: 1px solid rgba(35, 95, 85, 0.16);
  border-left: 5px solid var(--ng-gold);
  border-radius: 8px;
  background: linear-gradient(135deg, rgba(255, 253, 249, 0.98), rgba(231, 240, 235, 0.9)), linear-gradient(90deg, rgba(213, 169, 84, 0.1), transparent 46%);
  box-shadow: 0 14px 30px rgba(23, 40, 45, 0.08);
  padding: 16px;
}

body.db .local-concierge-footer-strip span {
  color: #8a6422;
  font-size: 0.76rem;
  font-weight: 900;
  text-transform: uppercase;
}

body.db .local-concierge-footer-strip strong {
  display: block;
  margin-top: 5px;
  color: var(--ng-ink);
  font-size: 1.18rem;
  line-height: 1.18;
}

body.db .local-concierge-footer-strip p {
  margin: 6px 0 0;
  color: var(--ng-muted);
  line-height: 1.35;
}

body.db .local-concierge-footer-strip nav {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
}

body.db .local-concierge-footer-strip a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  border: 1px solid rgba(35, 95, 85, 0.2);
  border-radius: 999px;
  background: rgba(255, 253, 249, 0.84);
  color: var(--ng-green);
  font-weight: 900;
  margin: 0;
  padding: 8px 12px;
  text-decoration: none;
  white-space: nowrap;
}

body.db .local-concierge-footer-strip nav a:first-child {
  background: var(--ng-green);
  color: #fffdf9;
}

body.db .footer-checkup-panel article,
body.db .footer-compliance,
body.db .footer-service-area,
body.db .footer-brand,
body.db .footer-grid > div {
  border-color: rgba(35, 95, 85, 0.14);
  background: rgba(255, 253, 249, 0.82);
  box-shadow: 0 12px 28px rgba(23, 40, 45, 0.06);
}

body.db .site-footer h2,
body.db .footer-license {
  color: var(--ng-green) !important;
}

body.db .site-footer a,
body.db .site-footer span,
body.db .site-footer p {
  color: var(--ng-muted);
}

body.db .site-footer a:hover {
  color: #8a6422;
}

body.db .footer-badge-grid span,
body.db .footer-chip-grid span,
body.db .footer-compliance-list span,
body.db .footer-utility-row a {
  border-color: rgba(35, 95, 85, 0.14);
  background: rgba(231, 240, 235, 0.82);
  color: var(--ng-green);
}

body.db .footer-bottom {
  border-top-color: rgba(35, 95, 85, 0.14);
  margin-top: 12px;
  padding-top: 12px;
  font-size: 0.82rem;
}

body.db .footer-concept-local-concierge {
  display: none;
}

@media (max-width: 1040px) {
  body.db .site-header {
    grid-template-columns: auto auto;
  }
  body.db .mobile-menu-button {
    display: block;
    justify-self: end;
  }
  body.db .primary-nav {
    position: absolute;
    top: calc(100% + 1px);
    right: 16px;
    left: 16px;
    display: none;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    justify-content: stretch;
    border: 1px solid rgba(35, 95, 85, 0.15);
    border-left: 6px solid var(--ng-gold);
    border-radius: 8px;
    background: rgba(255, 253, 249, 0.99);
    box-shadow: var(--ng-shadow);
    padding: 14px;
  }
  body.db .primary-nav.is-open {
    display: grid;
  }
  body.db .primary-nav a {
    justify-content: flex-start;
    width: 100%;
  }
  body.db .local-concierge-nav-note {
    grid-column: 1/-1;
    max-width: none;
    margin: 6px 0 0;
    border-top: 1px solid rgba(213, 169, 84, 0.34);
    border-left: 0;
    padding: 12px 0 0;
  }
  body.db .header-actions {
    grid-column: 1/-1;
    justify-self: stretch;
  }
  body.db .header-actions .phone-link,
  body.db .header-actions .local-concierge-schedule {
    flex: 1 1 0;
  }
}
@media (max-width: 720px) {
  body.db .site-header {
    padding: 10px 14px;
  }
  body.db .brand-mark {
    gap: 9px;
    padding-right: 0;
  }
  body.db .brand-mark::after,
  body.db .brand-mark small,
  body.db .local-concierge-brand-note {
    display: none;
  }
  body.db .brand-mark img {
    width: 64px;
    height: 46px;
  }
  body.db .brand-mark strong {
    font-size: 0.95rem;
  }
  body.db .primary-nav {
    grid-template-columns: 1fr;
    right: 10px;
    left: 10px;
  }
  body.db .local-concierge-footer-strip {
    grid-template-columns: 1fr;
  }
  body.db .local-concierge-footer-strip strong {
    font-size: 1.12rem;
  }
  body.db .local-concierge-footer-strip nav {
    justify-content: stretch;
  }
  body.db .local-concierge-footer-strip nav a {
    flex: 1 1 120px;
    width: 100%;
    white-space: normal;
  }
}
body.dc {
  --ng-ink: #111827;
  --ng-muted: #5d6878;
  --ng-green: #215e55;
  --ng-teal: #0f766e;
  --ng-blue: #244f78;
  --ng-gold: #c6a15b;
  --ng-coral: #b64b45;
  --ng-paper: #f4f7fb;
  --ng-sky: #eaf2f6;
  --ng-leaf: #e5f0ed;
  --ng-line: rgba(17, 24, 39, 0.13);
  --ng-white: #ffffff;
  --ng-shadow: 0 22px 55px rgba(15, 23, 42, 0.14);
  --ng-radius: 8px;
  background: #f4f7fb;
}

body.dc .rs-only {
  display: initial;
}

body.dc .footer-concept-default {
  display: none;
}

body.dc main {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(244, 247, 251, 0.96) 42%, rgba(234, 242, 246, 0.9)), linear-gradient(90deg, rgba(36, 79, 120, 0.08) 1px, transparent 1px), linear-gradient(0deg, rgba(17, 24, 39, 0.055) 1px, transparent 1px);
  background-size: auto, 64px 64px, 64px 64px;
}

body.dc .site-header {
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 24px;
  border-bottom: 1px solid rgba(17, 24, 39, 0.13);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(249, 251, 253, 0.96)), linear-gradient(90deg, rgba(36, 79, 120, 0.08), transparent 36%);
  box-shadow: 0 18px 42px rgba(15, 23, 42, 0.1);
}

body.dc .site-header::before {
  height: 5px;
  background: linear-gradient(90deg, var(--ng-blue), var(--ng-teal), var(--ng-gold), var(--ng-coral));
}

body.dc .brand-mark {
  position: relative;
  padding-right: 18px;
}

body.dc .brand-mark::after {
  position: absolute;
  top: 8px;
  right: 0;
  bottom: 8px;
  width: 1px;
  background: rgba(17, 24, 39, 0.14);
  content: "";
}

body.dc .brand-mark img {
  width: 82px;
  height: 58px;
  border: 1px solid rgba(36, 79, 120, 0.16);
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.1);
  padding: 5px;
}

body.dc .brand-mark strong {
  color: var(--ng-ink);
  font-size: 1.02rem;
  line-height: 1.1;
}

body.dc .brand-mark small {
  color: var(--ng-muted);
}

body.dc .report-studio-brand-note {
  display: block;
  width: -moz-fit-content;
  width: fit-content;
  margin-top: 6px;
  border: 1px solid rgba(36, 79, 120, 0.18);
  border-radius: 8px;
  background: rgba(36, 79, 120, 0.08);
  color: var(--ng-blue);
  font-size: 0.66rem;
  font-style: normal;
  font-weight: 900;
  letter-spacing: 0;
  padding: 4px 9px;
  text-transform: uppercase;
}

body.dc .primary-nav {
  justify-content: center;
  gap: 5px;
}

body.dc .primary-nav a {
  position: relative;
  min-height: 42px;
  border: 1px solid transparent;
  border-radius: 8px;
  color: var(--ng-ink);
  padding: 10px 13px;
  transition: background 160ms ease, border-color 160ms ease, color 160ms ease, transform 160ms ease;
}

body.dc .primary-nav a::before {
  position: absolute;
  top: 9px;
  bottom: 9px;
  left: 5px;
  width: 3px;
  border-radius: 999px;
  background: var(--ng-teal);
  content: "";
  opacity: 0;
  transform: scaleY(0.45);
  transition: opacity 160ms ease, transform 160ms ease;
}

body.dc .primary-nav a:hover,
body.dc .primary-nav a.is-active {
  border-color: rgba(36, 79, 120, 0.16);
  background: rgba(234, 242, 246, 0.86);
  color: var(--ng-blue);
  transform: translateY(-1px);
}

body.dc .primary-nav a:hover::before,
body.dc .primary-nav a.is-active::before {
  opacity: 1;
  transform: scaleY(1);
}

body.dc .report-studio-nav-note {
  display: grid;
  max-width: 268px;
  margin-left: 10px;
  border: 1px solid rgba(17, 24, 39, 0.12);
  border-left: 5px solid var(--ng-teal);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.72);
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.07);
  padding: 9px 12px;
}

body.dc .report-studio-nav-note span {
  color: var(--ng-blue);
  font-size: 0.68rem;
  font-weight: 900;
  letter-spacing: 0;
  text-transform: uppercase;
}

body.dc .report-studio-nav-note strong {
  margin-top: 3px;
  color: var(--ng-muted);
  font-size: 0.74rem;
  line-height: 1.3;
}

body.dc .phone-link,
body.dc .report-studio-schedule,
body.dc .ng-button-primary,
body.dc .mobile-sticky-cta a:first-child {
  position: relative;
  border: 1px solid rgba(17, 24, 39, 0.12);
  border-radius: 8px;
  background: linear-gradient(135deg, var(--ng-blue), #173b5f);
  color: #ffffff;
  box-shadow: 0 14px 30px rgba(36, 79, 120, 0.2);
  overflow: hidden;
  transition: box-shadow 160ms ease, transform 160ms ease, background 160ms ease;
}

body.dc .phone-link::after,
body.dc .report-studio-schedule::after,
body.dc .ng-button-primary::after {
  position: absolute;
  right: 10px;
  bottom: 7px;
  left: 10px;
  height: 1px;
  background: rgba(255, 255, 255, 0.32);
  content: "";
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 160ms ease;
}

body.dc .phone-link:hover,
body.dc .report-studio-schedule:hover,
body.dc .ng-button-primary:hover {
  background: linear-gradient(135deg, #173b5f, var(--ng-teal));
  box-shadow: 0 18px 36px rgba(36, 79, 120, 0.24);
  transform: translateY(-1px);
}

body.dc .phone-link:hover::after,
body.dc .report-studio-schedule:hover::after,
body.dc .ng-button-primary:hover::after {
  transform: scaleX(1);
}

body.dc .report-studio-schedule {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 10px 16px;
  font-weight: 900;
  text-decoration: none;
}

body.dc .report-studio-schedule::before,
body.dc .ng-button-primary::before {
  margin-right: 8px;
  color: #d8bd7d;
  content: "01";
  font-size: 0.72rem;
  font-weight: 950;
}

body.dc .ng-button-secondary,
body.dc .ng-button-ghost,
body.dc .mobile-sticky-cta a:last-child {
  border: 1px solid rgba(36, 79, 120, 0.18);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.88);
  color: var(--ng-blue);
  box-shadow: 0 10px 22px rgba(15, 23, 42, 0.06);
}

body.dc .ng-button-secondary:hover,
body.dc .ng-button-ghost:hover {
  border-color: rgba(15, 118, 110, 0.32);
  background: rgba(234, 242, 246, 0.98);
  color: var(--ng-teal);
  transform: translateY(-1px);
}

body.dc .mobile-menu-button {
  border-color: rgba(36, 79, 120, 0.16);
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 8px 18px rgba(15, 23, 42, 0.08);
}

body.dc .mobile-menu-button span {
  background: var(--ng-blue);
}

body.dc .mobile-menu-button:focus-visible,
body.dc a:focus-visible,
body.dc button:focus-visible,
body.dc select:focus-visible,
body.dc input:focus-visible,
body.dc textarea:focus-visible {
  outline: 3px solid rgba(198, 161, 91, 0.72);
  outline-offset: 3px;
}

body.dc .site-footer {
  border-top: 1px solid rgba(17, 24, 39, 0.13);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(244, 247, 251, 0.96)), linear-gradient(90deg, rgba(36, 79, 120, 0.06), transparent 45%);
  color: var(--ng-muted);
}

body.dc .footer-certification-strip {
  border: 1px solid rgba(17, 24, 39, 0.13);
  border-left: 6px solid var(--ng-teal);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.9);
  box-shadow: 0 14px 30px rgba(15, 23, 42, 0.08);
}

body.dc .report-studio-footer-strip {
  display: grid;
  grid-template-columns: 118px minmax(0, 1fr) auto;
  gap: 20px;
  align-items: center;
  margin-top: 18px;
  margin-bottom: 18px;
  border: 1px solid rgba(17, 24, 39, 0.14);
  border-left: 6px solid var(--ng-teal);
  border-radius: 8px;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.98), rgba(234, 242, 246, 0.9)), linear-gradient(90deg, rgba(36, 79, 120, 0.1), transparent 44%);
  box-shadow: var(--ng-shadow);
  padding: 18px;
}

body.dc .report-studio-footer-strip img {
  width: 118px;
  height: 118px;
  border: 1px solid rgba(17, 24, 39, 0.14);
  border-radius: 8px;
  background: #ffffff;
  object-fit: cover;
  object-position: center 18%;
}

body.dc .report-studio-footer-strip span {
  color: var(--ng-blue);
  font-size: 0.76rem;
  font-weight: 900;
  letter-spacing: 0;
  text-transform: uppercase;
}

body.dc .report-studio-footer-strip strong {
  display: block;
  margin-top: 5px;
  color: var(--ng-ink);
  font-size: 1.38rem;
  line-height: 1.22;
}

body.dc .report-studio-footer-strip p {
  margin: 8px 0 0;
  color: var(--ng-muted);
  line-height: 1.5;
}

body.dc .report-studio-footer-strip a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  border: 1px solid rgba(17, 24, 39, 0.12);
  border-radius: 8px;
  background: var(--ng-blue);
  color: #ffffff;
  font-weight: 900;
  padding: 10px 16px;
  text-decoration: none;
  white-space: nowrap;
}

body.dc .footer-checkup-panel article,
body.dc .footer-compliance,
body.dc .footer-service-area,
body.dc .footer-brand,
body.dc .footer-grid > div {
  border-color: rgba(17, 24, 39, 0.13);
  background: rgba(255, 255, 255, 0.84);
  box-shadow: 0 12px 28px rgba(15, 23, 42, 0.06);
}

body.dc .site-footer h2,
body.dc .footer-license {
  color: var(--ng-blue) !important;
}

body.dc .site-footer a,
body.dc .site-footer span,
body.dc .site-footer p {
  color: var(--ng-muted);
}

body.dc .site-footer a:hover {
  color: var(--ng-teal);
}

body.dc .site-footer a {
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  max-width: 100%;
  overflow-wrap: anywhere;
}

body.dc .footer-grid a,
body.dc .footer-compliance a {
  width: 100%;
}

body.dc .footer-certification-strip a,
body.dc .footer-utility-row a,
body.dc .footer-checkup-panel > a {
  justify-content: center;
  min-height: 42px;
}

body.dc .footer-badge-grid span,
body.dc .footer-chip-grid span,
body.dc .footer-compliance-list span,
body.dc .footer-utility-row a {
  border-color: rgba(36, 79, 120, 0.14);
  background: rgba(234, 242, 246, 0.84);
  color: var(--ng-blue);
}

body.dc .footer-bottom {
  border-top-color: rgba(17, 24, 39, 0.13);
}

@media (max-width: 720px) {
  body.dc .site-footer a,
  body.dc .report-studio-contact-file-body a,
  body.dc .report-studio-privacy-note a,
  body.dc app-contact-form .small.text-muted a {
    min-height: 42px;
  }
}
@media (max-width: 1040px) {
  body.dc .site-header {
    grid-template-columns: auto auto;
  }
  body.dc .mobile-menu-button {
    display: block;
    justify-self: end;
  }
  body.dc .primary-nav {
    position: absolute;
    top: calc(100% + 1px);
    right: 16px;
    left: 16px;
    display: none;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    justify-content: stretch;
    border: 1px solid rgba(17, 24, 39, 0.14);
    border-left: 6px solid var(--ng-teal);
    border-radius: 8px;
    background: rgba(255, 255, 255, 0.99);
    box-shadow: var(--ng-shadow);
    padding: 14px;
  }
  body.dc .primary-nav.is-open {
    display: grid;
  }
  body.dc .primary-nav a {
    justify-content: flex-start;
    width: 100%;
  }
  body.dc .report-studio-nav-note {
    grid-column: 1/-1;
    max-width: none;
    margin: 6px 0 0;
  }
  body.dc .header-actions {
    grid-column: 1/-1;
    justify-self: stretch;
  }
  body.dc .header-actions .phone-link,
  body.dc .header-actions .report-studio-schedule {
    flex: 1 1 0;
  }
}
@media (max-width: 720px) {
  body.dc .site-header {
    padding: 10px 14px;
  }
  body.dc .brand-mark {
    gap: 9px;
    padding-right: 0;
  }
  body.dc .brand-mark::after,
  body.dc .brand-mark small,
  body.dc .report-studio-brand-note {
    display: none;
  }
  body.dc .brand-mark img {
    width: 64px;
    height: 46px;
  }
  body.dc .brand-mark strong {
    font-size: 0.95rem;
  }
  body.dc .primary-nav {
    grid-template-columns: 1fr;
    right: 10px;
    left: 10px;
  }
  body.dc .report-studio-footer-strip {
    grid-template-columns: 82px minmax(0, 1fr);
  }
  body.dc .report-studio-footer-strip img {
    width: 82px;
    height: 82px;
  }
  body.dc .report-studio-footer-strip strong {
    font-size: 1.12rem;
  }
  body.dc .report-studio-footer-strip a {
    grid-column: 1/-1;
    width: 100%;
    white-space: normal;
  }
}
body.dd {
  --ng-ink: #1f312b;
  --ng-muted: #60736b;
  --ng-green: #315f49;
  --ng-teal: #2d7776;
  --ng-blue: #315f7f;
  --ng-gold: #c89b4e;
  --ng-coral: #a85f4a;
  --ng-paper: #f7f4ec;
  --ng-sky: #edf5f3;
  --ng-leaf: #e4eee7;
  --ng-line: rgba(49, 95, 73, 0.16);
  --ng-white: #fffdf8;
  --ng-shadow: 0 22px 52px rgba(31, 49, 43, 0.13);
  --ng-radius: 8px;
  background: #f7f4ec;
}

body.dd .ngd-only {
  display: initial;
}

body.dd .footer-concept-default {
  display: none;
}

body.dd main,
body.dd .site-footer {
  background: linear-gradient(180deg, rgba(255, 253, 248, 0.98), rgba(247, 244, 236, 0.95) 42%, rgba(237, 245, 243, 0.94)), linear-gradient(90deg, rgba(49, 95, 73, 0.06) 1px, transparent 1px);
  background-size: auto, 92px 92px;
}

body.dd .site-header {
  grid-template-columns: auto minmax(0, 1fr) auto;
  border-bottom: 1px solid rgba(49, 95, 73, 0.15);
  background: rgba(255, 253, 248, 0.97);
  box-shadow: 0 16px 38px rgba(31, 49, 43, 0.08);
}

body.dd .site-header::before {
  height: 4px;
  background: linear-gradient(90deg, var(--ng-green), var(--ng-teal), var(--ng-blue), var(--ng-coral));
}

body.dd .brand-mark img {
  width: 82px;
  height: 58px;
  border: 1px solid rgba(49, 95, 73, 0.14);
  border-radius: 8px;
  background: #fffdf8;
  object-fit: contain;
  padding: 5px;
}

body.dd .primary-nav a {
  position: relative;
  border: 1px solid transparent;
  border-radius: 8px;
  padding: 10px 13px 10px 26px;
  transition: background 160ms ease, border-color 160ms ease, transform 160ms ease;
}

body.dd .primary-nav a::before {
  position: absolute;
  top: 50%;
  left: 10px;
  width: 8px;
  height: 8px;
  border: 2px solid var(--ng-teal);
  border-radius: 999px;
  background: #fffdf8;
  content: "";
  transform: translateY(-50%);
}

body.dd .primary-nav a:hover,
body.dd .primary-nav a.is-active {
  border-color: rgba(49, 95, 73, 0.17);
  background: rgba(228, 238, 231, 0.88);
  color: var(--ng-green);
  transform: translateY(-1px);
}

body.dd .primary-nav a:hover::before,
body.dd .primary-nav a.is-active::before {
  border-color: var(--ng-coral);
  background: var(--ng-gold);
  box-shadow: 0 0 0 4px rgba(200, 155, 78, 0.18);
}

body.dd :is(.neighborhood-guide-nav-note, .neighborhood-guide-footer-strip) {
  display: grid;
  border: 1px solid rgba(49, 95, 73, 0.13);
  border-left: 5px solid var(--ng-coral);
  border-radius: 8px;
  background: rgba(255, 253, 248, 0.76);
  box-shadow: 0 12px 28px rgba(31, 49, 43, 0.07);
}

body.dd .neighborhood-guide-nav-note {
  max-width: 270px;
  margin-left: 10px;
  padding: 9px 12px;
}

body.dd :is(.neighborhood-guide-nav-note span, .neighborhood-guide-footer-strip span) {
  color: var(--ng-coral);
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
}

body.dd .neighborhood-guide-nav-note strong {
  color: var(--ng-muted);
  font-size: 0.74rem;
  line-height: 1.3;
}

body.dd :is(.phone-link, .neighborhood-guide-schedule, .ng-button-primary, .mobile-sticky-cta a:first-child) {
  position: relative;
  border: 1px solid rgba(49, 95, 73, 0.22);
  border-radius: 8px;
  background: linear-gradient(135deg, var(--ng-green), var(--ng-teal));
  color: #fffdf8;
  box-shadow: 0 14px 30px rgba(49, 95, 73, 0.18);
  transition: background 160ms ease, transform 160ms ease;
}

body.dd :is(.phone-link, .neighborhood-guide-schedule, .ng-button-primary)::before {
  width: 8px;
  height: 8px;
  margin-right: 8px;
  border: 2px solid rgba(255, 253, 248, 0.86);
  border-radius: 999px;
  background: var(--ng-gold);
  content: "";
  flex: 0 0 auto;
}

body.dd :is(.phone-link, .neighborhood-guide-schedule, .ng-button-primary):hover {
  background: linear-gradient(135deg, #284d3c, var(--ng-blue));
  transform: translateY(-1px);
}

body.dd .neighborhood-guide-schedule {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 10px 16px;
  font-weight: 900;
  text-decoration: none;
}

body.dd .mobile-menu-button {
  border-color: rgba(49, 95, 73, 0.16);
  border-radius: 8px;
  background: #fffdf8;
}

body.dd :is(.mobile-menu-button, a, button, select, input, textarea):focus-visible {
  outline: 3px solid rgba(200, 155, 78, 0.7);
  outline-offset: 3px;
}

body.dd .footer-certification-strip {
  border: 1px solid rgba(49, 95, 73, 0.14);
  border-left: 6px solid var(--ng-coral);
  border-radius: 8px;
  background: rgba(255, 253, 248, 0.9);
}

body.dd .neighborhood-guide-footer-strip {
  grid-template-columns: 116px minmax(0, 1fr) auto;
  gap: 20px;
  align-items: center;
  margin-top: 18px;
  margin-bottom: 18px;
  padding: 18px;
}

body.dd .neighborhood-guide-footer-strip img {
  width: 116px;
  height: 116px;
  border: 1px solid rgba(49, 95, 73, 0.16);
  border-radius: 8px;
  background: #fffdf8;
  object-fit: cover;
  object-position: center 20%;
}

body.dd .neighborhood-guide-footer-strip strong {
  display: block;
  margin-top: 5px;
  color: var(--ng-ink);
  font-size: 1.38rem;
  line-height: 1.22;
}

body.dd .neighborhood-guide-footer-strip p {
  margin: 8px 0 0;
  color: var(--ng-muted);
  line-height: 1.5;
}

body.dd .neighborhood-guide-footer-strip a {
  justify-content: center;
  min-height: 44px;
  border: 1px solid rgba(49, 95, 73, 0.2);
  border-radius: 8px;
  background: var(--ng-green);
  color: #fffdf8;
  font-weight: 900;
  padding: 10px 16px;
  text-decoration: none;
  white-space: nowrap;
}

body.dd :is(.footer-checkup-panel article, .footer-compliance, .footer-service-area, .footer-brand, .footer-grid > div) {
  border-color: rgba(49, 95, 73, 0.14);
}

:is(body.dg, body.dd, body.df) :is(.inline-cta, .field-brief-card > a, .closing-path-card a:not(.ng-button), .contact-summary a, .contact-handoff-card p a, .privacy-note-card a, app-contact-form .small.text-muted a) {
  display: inline-flex;
  align-items: center;
  min-height: 40px;
}

body.dd :is(.site-footer h2, .footer-license) {
  color: var(--ng-green) !important;
}

body.dd :is(.site-footer a, .site-footer span, .site-footer p) {
  color: var(--ng-muted);
}

body.dd .site-footer a:hover {
  color: var(--ng-coral);
}

body.dd .site-footer a {
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  max-width: 100%;
  overflow-wrap: anywhere;
}

body.dd :is(.footer-grid a, .footer-compliance a) {
  width: 100%;
}

body.dd :is(.footer-certification-strip a, .footer-utility-row a, .footer-checkup-panel > a) {
  justify-content: center;
  min-height: 42px;
}

body.dd :is(.footer-badge-grid span, .footer-chip-grid span, .footer-compliance-list span, .footer-utility-row a) {
  border-color: rgba(49, 95, 73, 0.14);
  background: rgba(228, 238, 231, 0.84);
  color: var(--ng-green);
}

:is(body.dd, body.df, body.di) .neighborhood-guide-owner-cue {
  display: flex;
  gap: 10px;
  align-items: center;
  margin-bottom: 14px;
}

:is(body.dd, body.df, body.di) .neighborhood-guide-owner-cue img {
  width: 52px;
  height: 52px;
  border-radius: 8px;
  object-fit: cover;
}

body.dd app-contact-form .contact-form-heading > .contact-form-default-copy,
body.dd app-contact-form :is(.contact-form-field-journal-copy, .contact-form-local-concierge-copy, .contact-form-report-studio-copy) {
  display: none;
}

body.dd app-contact-form :is(span.contact-form-neighborhood-guide-copy, h3.contact-form-neighborhood-guide-copy) {
  display: block;
}

body.dd :is(.ngdx-home-hero,
.ngdx-inspection-hero,
.ngdx-about-hero,
.ngdx-contact-hero,
.ngdx-resource-hero) {
  position: relative;
  overflow: hidden;
  padding: clamp(58px, 8vw, 96px) 0 clamp(52px, 7vw, 82px);
  background: linear-gradient(135deg, rgba(255, 253, 248, 0.98), rgba(237, 245, 243, 0.92)), repeating-linear-gradient(90deg, transparent 0, transparent 82px, rgba(49, 95, 73, 0.075) 83px), linear-gradient(180deg, rgba(200, 155, 78, 0.16), transparent 44%);
}

body.dd :is(.ngdx-route-section,
.ngdx-system-section,
.ngdx-readiness-section,
.ngdx-family-section,
.ngdx-room-section,
.ngdx-accordion-section,
.ngdx-brief-section,
.ngdx-process-section,
.ngdx-community-section,
.ngdx-founder-section,
.ngdx-profile-section,
.ngdx-values-section,
.ngdx-gallery-section,
.ngdx-contact-form-section,
.ngdx-request-section,
.ngdx-next-section,
.ngdx-library-section,
.ngdx-seasonal-section,
.ngdx-glossary-section,
.ngdx-checklist-section,
.ngdx-reference-section) {
  position: relative;
  overflow: hidden;
  padding: clamp(52px, 7vw, 78px) 0;
}

body.dd :is(.ngdx-system-section, .ngdx-accordion-section, .ngdx-community-section, .ngdx-next-section, .ngdx-seasonal-section, .ngdx-reference-section) {
  background: linear-gradient(180deg, rgba(228, 238, 231, 0.84), rgba(247, 244, 236, 0.94)), repeating-linear-gradient(0deg, transparent 0, transparent 70px, rgba(45, 119, 118, 0.07) 71px);
}

body.dd :is(.ngdx-route-section, .ngdx-room-section, .ngdx-profile-section, .ngdx-contact-form-section, .ngdx-library-section, .ngdx-checklist-section) {
  background: rgba(255, 253, 248, 0.72);
}

body.dd :is(.ngdx-home-hero-grid,
.ngdx-inspection-hero-grid,
.ngdx-about-hero-grid,
.ngdx-contact-hero-grid,
.ngdx-resource-hero-grid,
.ngdx-route-grid,
.ngdx-system-grid,
.ngdx-readiness-grid,
.ngdx-family-grid,
.ngdx-accordion-grid,
.ngdx-brief-grid,
.ngdx-process-grid,
.ngdx-community-grid,
.ngdx-founder-grid,
.ngdx-profile-grid,
.ngdx-values-grid,
.ngdx-contact-form-grid,
.ngdx-request-grid,
.ngdx-next-grid,
.ngdx-library-grid,
.ngdx-seasonal-grid,
.ngdx-glossary-grid,
.ngdx-checklist-grid) {
  display: grid;
  gap: clamp(22px, 4vw, 42px);
  align-items: start;
}

body.dd :is(.ngdx-home-hero-grid, .ngdx-inspection-hero-grid, .ngdx-about-hero-grid, .ngdx-contact-hero-grid, .ngdx-resource-hero-grid) {
  grid-template-columns: minmax(0, 0.92fr) minmax(360px, 0.68fr);
  align-items: center;
}

body.dd :is(.ngdx-route-grid, .ngdx-founder-grid, .ngdx-profile-grid, .ngdx-contact-form-grid, .ngdx-request-grid, .ngdx-library-grid) {
  grid-template-columns: minmax(280px, 0.42fr) minmax(0, 1fr);
}

body.dd :is(.ngdx-system-grid, .ngdx-readiness-grid, .ngdx-family-grid, .ngdx-accordion-grid, .ngdx-brief-grid, .ngdx-process-grid, .ngdx-community-grid, .ngdx-values-grid, .ngdx-next-grid, .ngdx-seasonal-grid, .ngdx-glossary-grid, .ngdx-checklist-grid) {
  grid-template-columns: minmax(0, 0.7fr) minmax(0, 1fr);
  align-items: center;
}

body.dd :is(.ngdx-home-hero h1,
.ngdx-inspection-hero h1,
.ngdx-about-hero h1,
.ngdx-contact-hero h1,
.ngdx-resource-hero h1) {
  max-width: 820px;
  margin: 0;
  color: var(--ng-ink);
  font-size: clamp(2.35rem, 6vw, 4.8rem);
  font-weight: 950;
  letter-spacing: 0;
  line-height: 0.99;
}

body.dd :is(.ngdx-route-section h2,
.ngdx-system-section h2,
.ngdx-readiness-section h2,
.ngdx-family-section h2,
.ngdx-room-section h2,
.ngdx-accordion-section h2,
.ngdx-brief-section h2,
.ngdx-process-section h2,
.ngdx-community-section h2,
.ngdx-founder-section h2,
.ngdx-profile-section h2,
.ngdx-values-section h2,
.ngdx-gallery-section h2,
.ngdx-contact-form-section h2,
.ngdx-request-section h2,
.ngdx-next-section h2,
.ngdx-library-section h2,
.ngdx-seasonal-section h2,
.ngdx-glossary-section h2,
.ngdx-checklist-section h2,
.ngdx-reference-section h2) {
  margin: 0;
  color: var(--ng-ink);
  font-size: clamp(1.85rem, 4vw, 3.15rem);
  letter-spacing: 0;
  line-height: 1.04;
}

body.dd :is(.ngdx-guide-copy, .ngdx-route-sidebar, .ngdx-section-head, .ngdx-room-section .ngdx-section-head > div, .ngdx-form-intro, .ngdx-library-sidebar, .ngdx-reference-section .ngdx-section-head) {
  display: grid;
  align-content: start;
  gap: 16px;
}

body.dd :is(.ngdx-home-hero p, .ngdx-inspection-hero p, .ngdx-about-hero p, .ngdx-contact-hero p, .ngdx-resource-hero p, .ngdx-route-section p, .ngdx-system-section p, .ngdx-readiness-section p, .ngdx-family-section p, .ngdx-room-section p, .ngdx-accordion-section p, .ngdx-brief-section p, .ngdx-process-section p, .ngdx-community-section p, .ngdx-founder-section p, .ngdx-profile-section p, .ngdx-values-section p, .ngdx-gallery-section p, .ngdx-contact-form-section p, .ngdx-request-section p, .ngdx-next-section p, .ngdx-library-section p, .ngdx-seasonal-section p, .ngdx-glossary-section p, .ngdx-checklist-section p, .ngdx-reference-section p) {
  margin: 0;
  color: var(--ng-muted);
  line-height: 1.62;
}

body.dd :is(.ngdx-map-label, .ngdx-guide-tabs button span, .ngdx-profile-tabs button span, .ngdx-system-tabs button span, .ngdx-room-tabs button span, .ngdx-category-list button span, .ngdx-resource-dashboard span, .ngdx-scope-strip span, .ngdx-proof-strip span, .ngdx-audience-grid span, .ngdx-season-list span, .ngdx-provider-group header span, .ngdx-provider-table article > div > span) {
  color: var(--ng-coral);
  font-size: 0.72rem;
  font-weight: 900;
  letter-spacing: 0;
  text-transform: uppercase;
}

body.dd .ngdx-map-label {
  display: inline-flex;
  width: -moz-fit-content;
  width: fit-content;
  max-width: 100%;
  min-height: 32px;
  align-items: center;
  border: 1px solid rgba(49, 95, 73, 0.16);
  border-left: 5px solid var(--ng-coral);
  border-radius: 8px;
  background: rgba(255, 253, 248, 0.84);
  padding: 6px 10px;
}

body.dd :is(.ngdx-guide-tags, .ngdx-map-pins, .resource-hero-cues) {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
}

body.dd :is(.ngdx-guide-tags span, .ngdx-map-pins span, .resource-hero-cues span) {
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  border: 1px solid rgba(49, 95, 73, 0.15);
  border-radius: 8px;
  background: rgba(255, 253, 248, 0.88);
  color: var(--ng-green);
  font-size: 0.82rem;
  font-weight: 850;
  line-height: 1.25;
  padding: 7px 11px;
}

body.dd :is(.ngdx-map-board,
.ngdx-guide-file,
.ngdx-system-card,
.ngdx-readiness-meter,
.ngdx-home-diagram,
.ngdx-system-guide,
.ngdx-brief-card,
.ngdx-about-photo,
.ngdx-owner-card,
.ngdx-contact-card,
.ngdx-contact-guide,
.ngdx-request-card,
.ngdx-featured-guide,
.ngdx-library-sidebar,
.ngdx-resource-plan,
.empty-resource-state,
.ngdx-privacy-note) {
  min-width: 0;
  border: 1px solid rgba(49, 95, 73, 0.15);
  border-radius: 8px;
  background: rgba(255, 253, 248, 0.94);
  box-shadow: var(--ng-shadow);
}

body.dd :is(.ngdx-map-board, .ngdx-readiness-meter, .ngdx-home-diagram, .ngdx-contact-guide, .ngdx-library-sidebar, .ngdx-resource-plan, .empty-resource-state, .ngdx-privacy-note) {
  display: grid;
  gap: 15px;
  padding: clamp(18px, 3vw, 24px);
}

body.dd :is(.ngdx-map-board figure, .ngdx-about-photo, .ngdx-system-card, .ngdx-system-guide, .ngdx-guide-file, .ngdx-brief-card, .ngdx-contact-card, .ngdx-request-card, .ngdx-featured-guide, .ngdx-owner-card) {
  display: grid;
  overflow: hidden;
}

body.dd :is(.ngdx-map-board figure, .ngdx-about-photo, .ngdx-system-card) {
  position: relative;
  margin: 0;
}

body.dd :is(.ngdx-map-board img, .ngdx-about-photo img, .ngdx-system-card img, .ngdx-guide-file img, .ngdx-system-guide img, .ngdx-brief-card img, .ngdx-owner-card img, .ngdx-contact-card img, .ngdx-request-card img, .ngdx-featured-guide img, .ngdx-family-grid img, .ngdx-gallery-grid img) {
  display: block;
  width: 100%;
  object-fit: cover;
}

body.dd :is(.ngdx-map-board figure img, .ngdx-about-photo img) {
  height: 360px;
  object-position: center 20%;
}

body.dd :is(.ngdx-map-board figcaption, .ngdx-about-photo figcaption, .ngdx-system-card figcaption) {
  position: absolute;
  right: 14px;
  bottom: 14px;
  left: 14px;
  display: grid;
  gap: 5px;
  border-left: 6px solid var(--ng-gold);
  border-radius: 8px;
  background: rgba(31, 49, 43, 0.84);
  color: #fffdf8;
  padding: 14px;
}

body.dd :is(.ngdx-map-board figcaption span, .ngdx-about-photo figcaption span, .ngdx-system-card figcaption span) {
  color: #f1d48b;
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
}

body.dd :is(.ngdx-map-board figcaption strong, .ngdx-about-photo figcaption strong) {
  color: #fffdf8;
  font-size: 1.2rem;
  line-height: 1.18;
}

body.dd .ngdx-stat-row,
body.dd .ngdx-scope-strip .site-container,
body.dd .ngdx-proof-strip .site-container,
body.dd .ngdx-resource-dashboard,
body.dd .ngdx-audience-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

body.dd :is(.ngdx-stat-row article, .ngdx-scope-strip article, .ngdx-proof-strip article, .ngdx-resource-dashboard div, .ngdx-audience-grid article) {
  display: grid;
  gap: 7px;
  min-width: 0;
  border: 1px solid rgba(49, 95, 73, 0.14);
  border-left: 5px solid var(--ng-coral);
  border-radius: 8px;
  background: rgba(255, 253, 248, 0.9);
  padding: 15px;
}

body.dd :is(.ngdx-stat-row strong, .ngdx-scope-strip strong, .ngdx-proof-strip strong, .ngdx-resource-dashboard strong) {
  color: var(--ng-green);
  font-size: clamp(1.45rem, 3vw, 2.2rem);
  line-height: 1;
}

body.dd .ngdx-scope-strip,
body.dd .ngdx-proof-strip,
body.dd .ngdx-audience-section {
  padding: 0;
  background: #fffdf8;
}

body.dd :is(.ngdx-scope-strip .site-container, .ngdx-proof-strip .site-container, .ngdx-audience-grid) {
  padding-top: 18px;
  padding-bottom: 18px;
}

body.dd :is(.ngdx-guide-tabs, .ngdx-profile-tabs, .ngdx-system-tabs, .ngdx-room-tabs, .ngdx-category-list, .ngdx-filter-pills) {
  display: grid;
  gap: 10px;
}

body.dd .ngdx-filter-pills {
  grid-template-columns: repeat(6, minmax(0, 1fr));
  margin: 18px 0;
}

body.dd :is(.ngdx-guide-tabs button, .ngdx-profile-tabs button, .ngdx-system-tabs button, .ngdx-room-tabs button, .ngdx-category-list button, .ngdx-filter-pills button, .ngdx-glossary-cards button) {
  min-width: 0;
  border: 1px solid rgba(49, 95, 73, 0.16);
  border-radius: 8px;
  background: rgba(255, 253, 248, 0.88);
  color: var(--ng-ink);
  cursor: pointer;
  font-weight: 850;
  line-height: 1.25;
  padding: 11px 13px;
  text-align: left;
  transition: background 160ms ease, border-color 160ms ease, color 160ms ease, transform 160ms ease;
  overflow-wrap: anywhere;
}

body.dd :is(.ngdx-guide-tabs button:hover, .ngdx-profile-tabs button:hover, .ngdx-system-tabs button:hover, .ngdx-room-tabs button:hover, .ngdx-category-list button:hover, .ngdx-filter-pills button:hover, .ngdx-glossary-cards button:hover, .ngdx-guide-tabs button.is-selected, .ngdx-profile-tabs button.is-selected, .ngdx-system-tabs button.is-selected, .ngdx-room-tabs button.is-selected, .ngdx-category-list button.is-selected, .ngdx-filter-pills button.is-selected, .ngdx-glossary-cards button.is-selected) {
  border-color: rgba(168, 95, 74, 0.34);
  background: rgba(228, 238, 231, 0.94);
  color: var(--ng-green);
  transform: translateY(-1px);
}

body.dd :is(.ngdx-guide-file, .ngdx-system-guide, .ngdx-brief-card, .ngdx-owner-card, .ngdx-contact-card, .ngdx-request-card, .ngdx-featured-guide) {
  grid-template-columns: minmax(250px, 0.42fr) minmax(0, 1fr);
}

body.dd :is(.ngdx-guide-file img, .ngdx-system-guide img, .ngdx-brief-card img, .ngdx-owner-card img, .ngdx-contact-card img, .ngdx-request-card img, .ngdx-featured-guide img) {
  height: 100%;
  min-height: 340px;
}

body.dd :is(.ngdx-guide-file > div, .ngdx-system-guide > div, .ngdx-brief-card > div, .ngdx-owner-card > div, .ngdx-contact-card > div, .ngdx-request-card > div, .ngdx-featured-guide > div) {
  display: grid;
  align-content: start;
  gap: 14px;
  padding: clamp(18px, 3vw, 24px);
}

body.dd :is(.ngdx-guide-file h3, .ngdx-system-guide h3, .ngdx-brief-card h3, .ngdx-owner-card h3, .ngdx-request-card h3, .ngdx-resource-plan h3) {
  margin: 0;
  color: var(--ng-ink);
  font-size: clamp(1.5rem, 3vw, 2.12rem);
  line-height: 1.1;
}

body.dd :is(.ngdx-guide-file dl, .ngdx-system-guide dl, .ngdx-owner-card dl, .ngdx-provider-table dl) {
  display: grid;
  gap: 10px;
  margin: 0;
}

body.dd :is(.ngdx-guide-file dl div, .ngdx-system-guide dl div, .ngdx-owner-card dl div, .ngdx-provider-table dl div) {
  border-left: 4px solid var(--ng-gold);
  background: rgba(247, 244, 236, 0.82);
  padding: 10px 12px;
}

body.dd :is(dt, dd) {
  margin: 0;
}

body.dd :is(.ngdx-guide-file dt, .ngdx-system-guide dt, .ngdx-owner-card dt, .ngdx-provider-table dt) {
  color: var(--ng-coral);
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
}

body.dd :is(.ngdx-guide-file dd, .ngdx-system-guide dd, .ngdx-owner-card dd, .ngdx-provider-table dd) {
  color: var(--ng-ink);
  line-height: 1.4;
}

body.dd :is(.ngdx-guide-file ol, .ngdx-brief-card ol, .ngdx-request-card ol, .ngdx-guide-file ul, .ngdx-checklist-grid ul) {
  display: grid;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

body.dd :is(.ngdx-guide-file li, .ngdx-brief-card li, .ngdx-request-card li, .ngdx-checklist-grid li) {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 10px;
  align-items: start;
  color: var(--ng-muted);
  line-height: 1.45;
}

body.dd :is(.ngdx-guide-file li span, .ngdx-brief-card li span, .ngdx-request-card li span, .ngdx-process-list article > span, .ngdx-detail-list article > span, .ngdx-value-list article > span) {
  display: inline-grid;
  place-items: center;
  width: 32px;
  height: 32px;
  border-radius: 8px;
  background: rgba(200, 155, 78, 0.18);
  color: var(--ng-coral);
  font-weight: 900;
}

body.dd .ngdx-system-card img {
  min-height: 460px;
}

body.dd .ngdx-readiness-grid {
  align-items: stretch;
}

body.dd .ngdx-progress {
  display: grid;
  gap: 8px;
}

body.dd .ngdx-progress strong {
  color: var(--ng-green);
  font-size: 2.4rem;
  line-height: 1;
}

body.dd .ngdx-progress div {
  height: 11px;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(49, 95, 73, 0.13);
}

body.dd .ngdx-progress i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--ng-gold), var(--ng-coral), var(--ng-teal));
}

body.dd .ngdx-meter-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
}

body.dd :is(.ngdx-meter-actions button, .ngdx-clear-filter) {
  min-height: 42px;
  border: 1px solid rgba(49, 95, 73, 0.18);
  border-radius: 8px;
  background: rgba(255, 253, 248, 0.92);
  color: var(--ng-green);
  cursor: pointer;
  font-weight: 900;
  padding: 9px 12px;
}

body.dd .ngdx-checklist,
body.dd .ngdx-detail-list,
body.dd .ngdx-value-list,
body.dd .ngdx-season-list,
body.dd .ngdx-shortlist,
body.dd .ngdx-link-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

body.dd .ngdx-checklist {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

body.dd :is(.ngdx-checklist button, .ngdx-detail-list article, .ngdx-value-list article, .ngdx-season-list article, .ngdx-shortlist article, .ngdx-link-list a) {
  display: grid;
  gap: 8px;
  min-width: 0;
  border: 1px solid rgba(49, 95, 73, 0.14);
  border-radius: 8px;
  background: rgba(255, 253, 248, 0.88);
  color: var(--ng-ink);
  padding: 14px;
  text-decoration: none;
}

body.dd .ngdx-checklist button {
  cursor: pointer;
  text-align: left;
}

body.dd .ngdx-checklist button.is-checked {
  border-color: rgba(45, 119, 118, 0.32);
  background: rgba(228, 238, 231, 0.92);
}

body.dd .ngdx-family-grid img {
  height: 420px;
  border-radius: 8px;
  box-shadow: var(--ng-shadow);
  object-position: center 18%;
}

body.dd .ngdx-diagram-shell {
  position: relative;
  min-height: 360px;
  overflow: hidden;
  border: 1px solid rgba(49, 95, 73, 0.16);
  border-radius: 8px;
  background: linear-gradient(180deg, rgba(255, 253, 248, 0.94), rgba(228, 238, 231, 0.9)), linear-gradient(90deg, rgba(49, 95, 73, 0.08) 1px, transparent 1px), linear-gradient(0deg, rgba(49, 95, 73, 0.08) 1px, transparent 1px);
  background-size: auto, 34px 34px, 34px 34px;
}

body.dd .ngdx-diagram-shell::before {
  position: absolute;
  right: 17%;
  bottom: 54px;
  left: 17%;
  height: 170px;
  border: 6px solid rgba(49, 95, 73, 0.22);
  border-top: 0;
  border-radius: 0 0 8px 8px;
  background: rgba(255, 253, 248, 0.9);
  content: "";
}

body.dd .ngdx-roofline {
  position: absolute;
  top: 78px;
  left: 50%;
  width: 270px;
  height: 270px;
  border-top: 7px solid rgba(49, 95, 73, 0.32);
  border-left: 7px solid rgba(49, 95, 73, 0.32);
  transform: translateX(-50%) rotate(45deg);
}

body.dd .ngdx-pin {
  position: absolute;
  z-index: 2;
  min-height: 34px;
  border: 1px solid rgba(168, 95, 74, 0.35);
  border-radius: 999px;
  background: var(--ng-coral);
  color: #fffdf8;
  cursor: pointer;
  font-size: 0.74rem;
  font-weight: 900;
  padding: 7px 10px;
  white-space: nowrap;
}

body.dd .pin-roof {
  top: 66px;
  left: 42%;
}

body.dd .pin-attic {
  top: 132px;
  left: 52%;
}

body.dd .pin-hvac {
  top: 198px;
  left: 24%;
}

body.dd .pin-interior {
  top: 224px;
  right: 24%;
}

body.dd .pin-electric {
  bottom: 72px;
  left: 34%;
}

body.dd .pin-plumbing {
  right: 30%;
  bottom: 68px;
}

body.dd .ngdx-room-grid {
  display: grid;
  grid-template-columns: minmax(250px, 0.34fr) minmax(0, 1fr);
  gap: 18px;
}

body.dd .ngdx-section-head {
  grid-template-columns: minmax(0, 1fr) minmax(230px, 0.34fr);
  align-items: end;
}

body.dd .ngdx-section-head aside {
  border: 1px solid rgba(49, 95, 73, 0.14);
  border-left: 5px solid var(--ng-coral);
  border-radius: 8px;
  background: rgba(255, 253, 248, 0.88);
  padding: 16px;
}

body.dd .ngdx-room-tabs {
  max-height: 760px;
  overflow: auto;
  padding-right: 4px;
}

body.dd :is(.ngdx-accordion-list, .ngdx-provider-groups, .ngdx-process-list) {
  display: grid;
  gap: 12px;
}

body.dd .ngdx-process-list {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

body.dd :is(.ngdx-process-list article, .ngdx-accordion-list details, .ngdx-provider-group) {
  overflow: hidden;
  border: 1px solid rgba(49, 95, 73, 0.14);
  border-radius: 8px;
  background: rgba(255, 253, 248, 0.9);
  box-shadow: 0 12px 26px rgba(31, 49, 43, 0.07);
}

body.dd .ngdx-process-list article {
  display: grid;
  gap: 8px;
  padding: 15px;
}

body.dd .ngdx-accordion-list summary {
  display: grid;
  gap: 5px;
  cursor: pointer;
  color: var(--ng-ink);
  font-weight: 900;
  list-style: none;
  padding: 17px;
}

body.dd .ngdx-accordion-list summary::-webkit-details-marker {
  display: none;
}

body.dd .ngdx-accordion-list details > div {
  border-top: 1px solid rgba(49, 95, 73, 0.12);
  padding: 17px;
}

body.dd .ngdx-accordion-list ul {
  columns: 2;
  gap: 24px;
  margin: 10px 0 0;
  padding-left: 20px;
}

body.dd .ngdx-community-grid blockquote {
  margin: 0;
  border-left: 8px solid var(--ng-coral);
  border-radius: 8px;
  background: rgba(255, 253, 248, 0.92);
  box-shadow: var(--ng-shadow);
  color: var(--ng-ink);
  font-size: clamp(1.35rem, 3vw, 2.1rem);
  font-weight: 850;
  line-height: 1.22;
  padding: clamp(20px, 4vw, 34px);
}

body.dd .ngdx-community-grid blockquote span {
  display: block;
  margin-bottom: 10px;
  color: var(--ng-coral);
  font-size: 0.72rem;
  text-transform: uppercase;
}

body.dd .ngdx-gallery-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

body.dd .ngdx-gallery-grid article {
  display: grid;
  overflow: hidden;
  border: 1px solid rgba(49, 95, 73, 0.14);
  border-radius: 8px;
  background: rgba(255, 253, 248, 0.92);
  box-shadow: var(--ng-shadow);
}

body.dd .ngdx-gallery-grid img {
  height: 340px;
  object-position: center 18%;
}

body.dd .ngdx-gallery-grid article > div {
  display: grid;
  gap: 12px;
  padding: clamp(18px, 3vw, 24px);
}

body.dd .ngdx-phone-panel {
  display: grid;
  width: min(100%, 520px);
  gap: 6px;
  border: 1px solid rgba(49, 95, 73, 0.16);
  border-left: 7px solid var(--ng-coral);
  border-radius: 8px;
  background: rgba(255, 253, 248, 0.9);
  box-shadow: 0 14px 30px rgba(31, 49, 43, 0.08);
  padding: 16px;
}

body.dd .ngdx-phone-panel a {
  color: var(--ng-green);
  font-size: clamp(1.55rem, 4vw, 2.4rem);
  font-weight: 950;
  line-height: 1;
  text-decoration: none;
}

body.dd .ngdx-contact-ribbon {
  padding: 0;
  background: #fffdf8;
}

body.dd .ngdx-contact-ribbon .site-container {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  padding-top: 18px;
  padding-bottom: 18px;
}

body.dd .ngdx-contact-ribbon article {
  border: 1px solid rgba(49, 95, 73, 0.14);
  border-left: 5px solid var(--ng-coral);
  border-radius: 8px;
  background: rgba(255, 253, 248, 0.9);
  padding: 15px;
}

body.dd .ngdx-contact-ribbon strong {
  color: var(--ng-green);
  font-size: 1.45rem;
  line-height: 1;
}

body.dd .ngdx-service-map {
  display: grid;
  min-height: 260px;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  align-content: center;
  border: 1px solid rgba(49, 95, 73, 0.14);
  border-radius: 8px;
  background: linear-gradient(180deg, rgba(255, 253, 248, 0.92), rgba(228, 238, 231, 0.88)), linear-gradient(90deg, rgba(49, 95, 73, 0.07) 1px, transparent 1px), linear-gradient(0deg, rgba(49, 95, 73, 0.07) 1px, transparent 1px);
  background-size: auto, 36px 36px, 36px 36px;
  padding: 18px;
}

body.dd .ngdx-service-map span {
  display: grid;
  place-items: center;
  min-height: 46px;
  border: 1px solid rgba(49, 95, 73, 0.16);
  border-radius: 999px;
  background: var(--ng-green);
  color: #fffdf8;
  font-weight: 900;
  text-align: center;
}

body.dd app-contact-form .contact-form-card {
  margin-top: 0;
  border: 1px solid rgba(49, 95, 73, 0.14);
  border-top: 7px solid var(--ng-coral);
  border-radius: 8px;
  background: linear-gradient(180deg, rgba(255, 253, 248, 0.98), rgba(247, 244, 236, 0.96)), repeating-linear-gradient(90deg, transparent 0, transparent 68px, rgba(49, 95, 73, 0.05) 69px);
  box-shadow: var(--ng-shadow);
}

body.dd app-contact-form :is(.contact-form-field-journal-copy, .contact-form-local-concierge-copy, .contact-form-report-studio-copy, .field-journal-form-progress, .local-concierge-form-progress, .report-studio-form-progress, .field-journal-form-section, .local-concierge-form-section, .report-studio-form-section, .field-journal-field-hint, .local-concierge-field-hint, .report-studio-field-hint, .local-concierge-submit-note, .report-studio-submit-note) {
  display: none;
}

body.dd app-contact-form :is(span.contact-form-neighborhood-guide-copy, h3.contact-form-neighborhood-guide-copy) {
  display: block;
}

body.dd app-contact-form .contact-form-heading {
  display: grid;
  gap: 12px;
  border-bottom: 1px solid rgba(49, 95, 73, 0.13);
  margin-bottom: 18px;
  padding-bottom: 18px;
}

body.dd app-contact-form .contact-form-heading h3 {
  margin: 0;
  color: var(--ng-ink);
  font-size: clamp(1.4rem, 2.8vw, 2.05rem);
  line-height: 1.12;
}

body.dd app-contact-form .contact-form-heading p,
body.dd app-contact-form .small.text-muted {
  color: var(--ng-muted);
  line-height: 1.55;
}

body.dd app-contact-form .form-assurance-row {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 8px;
}

body.dd app-contact-form .form-assurance-row span.contact-form-default-copy {
  display: inline-flex;
  align-items: center;
  min-height: 42px;
  border: 1px solid rgba(49, 95, 73, 0.16);
  border-radius: 8px;
  background: rgba(228, 238, 231, 0.82);
  color: var(--ng-green);
  font-size: 0.78rem;
  font-weight: 900;
  padding: 8px 10px;
}

body.dd app-contact-form .contact-form-card form {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 16px;
}

body.dd app-contact-form :is(.form-group:nth-of-type(3), .form-group:nth-of-type(4), .form-group:nth-of-type(5), .alert) {
  grid-column: 1/-1;
}

body.dd app-contact-form .form-group:nth-of-type(1),
body.dd app-contact-form .form-group:nth-of-type(2) {
  grid-column: span 3;
}

body.dd app-contact-form .form-control {
  min-height: 56px;
  border: 1px solid rgba(49, 95, 73, 0.16);
  border-radius: 8px;
  background: #fffdf8;
  color: var(--ng-ink);
  font-size: 1rem;
}

body.dd app-contact-form textarea.form-control {
  min-height: 176px;
  resize: vertical;
}

body.dd app-contact-form .form-control:focus {
  border-color: rgba(168, 95, 74, 0.44);
  box-shadow: 0 0 0 4px rgba(200, 155, 78, 0.2);
}

body.dd app-contact-form .text-danger {
  border-left: 3px solid var(--ng-coral);
  color: #844431;
  font-size: 0.88rem;
  font-weight: 800;
  padding-left: 8px;
}

body.dd app-contact-form .contact-form-card button[type=submit] {
  width: min(100%, 280px);
  min-height: 56px;
}

body.dd .ngdx-resource-search {
  display: grid;
  gap: 7px;
}

body.dd .ngdx-resource-search input {
  min-height: 52px;
  border: 1px solid rgba(49, 95, 73, 0.16);
  border-radius: 8px;
  background: #fffdf8;
  padding: 0 13px;
}

body.dd .ngdx-library-results {
  display: grid;
  gap: 18px;
  min-width: 0;
}

body.dd .ngdx-provider-group header,
body.dd .ngdx-provider-table article {
  display: grid;
  gap: 12px;
}

body.dd .ngdx-provider-group header {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
  border-bottom: 1px solid rgba(49, 95, 73, 0.12);
  padding: 17px;
}

body.dd .ngdx-provider-table {
  display: grid;
}

body.dd .ngdx-provider-table article {
  grid-template-columns: minmax(210px, 0.7fr) minmax(220px, 0.62fr) minmax(190px, 0.46fr);
  padding: 17px;
}

body.dd .ngdx-provider-table article + article {
  border-top: 1px solid rgba(49, 95, 73, 0.12);
}

body.dd .ngdx-provider-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

body.dd .ngdx-provider-actions a,
body.dd .ngdx-provider-actions span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  border: 1px solid rgba(49, 95, 73, 0.16);
  border-radius: 8px;
  color: var(--ng-green);
  font-weight: 900;
  padding: 8px 10px;
  text-decoration: none;
  overflow-wrap: anywhere;
}

body.dd .ngdx-glossary-cards {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

body.dd .ngdx-link-list {
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-top: 18px;
}

body.dd .ngdx-resource-disclaimer {
  margin-top: 16px;
  border: 1px solid rgba(168, 95, 74, 0.22);
  border-left: 6px solid var(--ng-coral);
  border-radius: 8px;
  background: rgba(255, 253, 248, 0.92);
  padding: 16px;
}

@media (max-width: 1180px) {
  body.dd :is(.ngdx-home-hero-grid, .ngdx-inspection-hero-grid, .ngdx-about-hero-grid, .ngdx-contact-hero-grid, .ngdx-resource-hero-grid, .ngdx-route-grid, .ngdx-system-grid, .ngdx-readiness-grid, .ngdx-family-grid, .ngdx-room-grid, .ngdx-accordion-grid, .ngdx-brief-grid, .ngdx-process-grid, .ngdx-community-grid, .ngdx-founder-grid, .ngdx-profile-grid, .ngdx-values-grid, .ngdx-contact-form-grid, .ngdx-request-grid, .ngdx-next-grid, .ngdx-library-grid, .ngdx-seasonal-grid, .ngdx-glossary-grid, .ngdx-checklist-grid, .ngdx-section-head, .ngdx-guide-file, .ngdx-system-guide, .ngdx-brief-card, .ngdx-owner-card, .ngdx-contact-card, .ngdx-request-card, .ngdx-featured-guide) {
    grid-template-columns: 1fr;
  }
  body.dd :is(.ngdx-stat-row, .ngdx-scope-strip .site-container, .ngdx-proof-strip .site-container, .ngdx-resource-dashboard, .ngdx-audience-grid, .ngdx-checklist, .ngdx-process-list, .ngdx-link-list) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  body.dd .ngdx-room-tabs {
    max-height: none;
    overflow: visible;
  }
  body.dd .ngdx-provider-table article {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 760px) {
  body.dd :is(.ngdx-home-hero, .ngdx-inspection-hero, .ngdx-about-hero, .ngdx-contact-hero, .ngdx-resource-hero, .ngdx-route-section, .ngdx-system-section, .ngdx-readiness-section, .ngdx-family-section, .ngdx-room-section, .ngdx-accordion-section, .ngdx-brief-section, .ngdx-process-section, .ngdx-community-section, .ngdx-founder-section, .ngdx-profile-section, .ngdx-values-section, .ngdx-gallery-section, .ngdx-contact-form-section, .ngdx-request-section, .ngdx-next-section, .ngdx-library-section, .ngdx-seasonal-section, .ngdx-glossary-section, .ngdx-checklist-section, .ngdx-reference-section) {
    padding: 44px 0;
  }
  body.dd :is(.ngdx-stat-row, .ngdx-scope-strip .site-container, .ngdx-proof-strip .site-container, .ngdx-resource-dashboard, .ngdx-audience-grid, .ngdx-checklist, .ngdx-process-list, .ngdx-detail-list, .ngdx-value-list, .ngdx-season-list, .ngdx-shortlist, .ngdx-link-list, .ngdx-filter-pills, .ngdx-contact-ribbon .site-container, .ngdx-gallery-grid, .ngdx-glossary-cards, .ngdx-service-map),
  body.dd app-contact-form :is(.form-assurance-row, .contact-form-card form) {
    grid-template-columns: 1fr;
  }
  body.dd :is(.ngdx-map-board figure img, .ngdx-about-photo img, .ngdx-system-card img, .ngdx-guide-file img, .ngdx-system-guide img, .ngdx-brief-card img, .ngdx-owner-card img, .ngdx-contact-card img, .ngdx-request-card img, .ngdx-featured-guide img, .ngdx-family-grid img, .ngdx-gallery-grid img) {
    min-height: 0;
    height: 260px;
  }
  body.dd app-contact-form :is(.form-group:nth-of-type(1), .form-group:nth-of-type(2), .form-group:nth-of-type(3), .form-group:nth-of-type(4), .form-group:nth-of-type(5), .alert) {
    grid-column: 1/-1;
  }
  body.dd .ngdx-accordion-list ul {
    columns: 1;
  }
  body.dd app-contact-form .contact-form-card button[type=submit] {
    width: 100%;
  }
}
@media (max-width: 520px) {
  body.dd :is(.ngdx-guide-tags, .ngdx-map-pins, .resource-hero-cues, .hero-actions, .panel-actions, .ngdx-meter-actions, .ngdx-provider-actions) {
    display: grid;
    grid-template-columns: 1fr;
  }
  body.dd :is(.ngdx-map-board figcaption, .ngdx-about-photo figcaption, .ngdx-system-card figcaption) {
    position: static;
    border-radius: 0;
  }
  body.dd :is(.ngdx-map-board, .ngdx-readiness-meter, .ngdx-home-diagram, .ngdx-contact-guide, .ngdx-library-sidebar, .ngdx-resource-plan, .empty-resource-state, .ngdx-privacy-note, .ngdx-guide-file > div, .ngdx-system-guide > div, .ngdx-brief-card > div, .ngdx-owner-card > div, .ngdx-contact-card > div, .ngdx-request-card > div, .ngdx-featured-guide > div) {
    padding: 16px;
  }
  body.dd .ngdx-diagram-shell {
    min-height: 330px;
  }
  body.dd .ngdx-pin {
    font-size: 0.68rem;
    padding: 6px 8px;
  }
}
body.dd {
  --ngdx-cream: #fffaf0;
  --ngdx-paper: #f8f4e9;
  --ngdx-map: #edf4ee;
  --ngdx-ink: #1d2f29;
  --ngdx-edge: rgba(49, 95, 73, 0.18);
  --ngdx-route: rgba(168, 95, 74, 0.34);
  --ngdx-shadow: 0 28px 72px rgba(31, 49, 43, 0.15);
}

body.dd main,
body.dd .site-footer {
  background: linear-gradient(180deg, rgba(255, 250, 240, 0.98), rgba(248, 244, 233, 0.96) 40%, rgba(237, 244, 238, 0.94)), repeating-linear-gradient(90deg, transparent 0 86px, rgba(49, 95, 73, 0.08) 87px), repeating-linear-gradient(0deg, transparent 0 86px, rgba(45, 119, 118, 0.055) 87px);
}

body.dd :is(.ngdx-home-hero,
.ngdx-inspection-hero,
.ngdx-about-hero,
.ngdx-contact-hero,
.ngdx-resource-hero) {
  padding: clamp(124px, 10vw, 164px) 0 clamp(68px, 7vw, 94px);
  background: linear-gradient(135deg, rgba(255, 250, 240, 0.99), rgba(237, 244, 238, 0.93)), repeating-linear-gradient(90deg, transparent 0 78px, rgba(49, 95, 73, 0.11) 79px), repeating-linear-gradient(0deg, transparent 0 78px, rgba(45, 119, 118, 0.07) 79px);
}

body.dd :is(.ngdx-home-hero,
.ngdx-inspection-hero,
.ngdx-about-hero,
.ngdx-contact-hero,
.ngdx-resource-hero)::before {
  position: absolute;
  top: clamp(18px, 3vw, 34px);
  right: clamp(18px, 5vw, 76px);
  width: min(390px, 46vw);
  height: 116px;
  border: 1px solid rgba(49, 95, 73, 0.16);
  border-radius: 8px;
  background: linear-gradient(135deg, transparent 0 43%, rgba(168, 95, 74, 0.22) 44% 47%, transparent 48%), repeating-linear-gradient(90deg, transparent 0 42px, rgba(49, 95, 73, 0.1) 43px), repeating-linear-gradient(0deg, transparent 0 28px, rgba(45, 119, 118, 0.09) 29px), rgba(255, 250, 240, 0.62);
  content: "";
  opacity: 0.86;
}

body.dd :is(.ngdx-home-hero,
.ngdx-inspection-hero,
.ngdx-about-hero,
.ngdx-contact-hero,
.ngdx-resource-hero)::after {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 8px;
  background: linear-gradient(90deg, var(--ng-green), var(--ng-teal), var(--ng-gold), var(--ng-coral), var(--ng-blue));
  content: "";
}

body.dd :is(.ngdx-home-hero h1,
.ngdx-inspection-hero h1,
.ngdx-about-hero h1,
.ngdx-contact-hero h1,
.ngdx-resource-hero h1) {
  max-width: 900px;
  font-size: clamp(3rem, 6.3vw, 5.25rem);
  line-height: 0.95;
  text-wrap: balance;
}

body.dd :is(.ngdx-home-hero p,
.ngdx-inspection-hero p,
.ngdx-about-hero p,
.ngdx-contact-hero p,
.ngdx-resource-hero p) {
  max-width: 760px;
  font-size: clamp(1rem, 1.35vw, 1.15rem);
}

body.dd .ngdx-map-label {
  border-color: rgba(168, 95, 74, 0.22);
  border-left-color: var(--ng-coral);
  border-radius: 999px;
  background: rgba(255, 250, 240, 0.9);
  box-shadow: 0 10px 22px rgba(31, 49, 43, 0.07);
}

body.dd :is(.ngdx-guide-tags span, .ngdx-map-pins span, .resource-hero-cues span) {
  border-color: var(--ngdx-edge);
  background: rgba(255, 250, 240, 0.9);
  box-shadow: 0 10px 20px rgba(31, 49, 43, 0.05);
}

body.dd :is(.ngdx-map-board,
.ngdx-guide-file,
.ngdx-system-card,
.ngdx-readiness-meter,
.ngdx-home-diagram,
.ngdx-system-guide,
.ngdx-brief-card,
.ngdx-about-photo,
.ngdx-owner-card,
.ngdx-contact-card,
.ngdx-contact-guide,
.ngdx-request-card,
.ngdx-featured-guide,
.ngdx-library-sidebar,
.ngdx-resource-plan,
.empty-resource-state,
.ngdx-privacy-note,
.ngdx-gallery-grid article,
.ngdx-community-grid blockquote,
.ngdx-resource-disclaimer) {
  border-color: var(--ngdx-edge);
  border-radius: 8px;
  background: linear-gradient(180deg, rgba(255, 250, 240, 0.96), rgba(248, 244, 233, 0.88)), repeating-linear-gradient(90deg, transparent 0 42px, rgba(49, 95, 73, 0.045) 43px);
  box-shadow: var(--ngdx-shadow);
}

body.dd :is(.ngdx-guide-file, .ngdx-system-guide, .ngdx-brief-card, .ngdx-owner-card, .ngdx-contact-card, .ngdx-request-card, .ngdx-featured-guide) {
  position: relative;
}

body.dd :is(.ngdx-guide-file, .ngdx-system-guide, .ngdx-brief-card, .ngdx-owner-card, .ngdx-contact-card, .ngdx-request-card, .ngdx-featured-guide)::before {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1;
  height: 6px;
  background: linear-gradient(90deg, var(--ng-coral), var(--ng-gold), var(--ng-green), var(--ng-teal));
  content: "";
}

body.dd :is(.ngdx-map-board figure, .ngdx-about-photo, .ngdx-system-card) {
  border: 8px solid rgba(255, 250, 240, 0.86);
  background: var(--ngdx-paper);
}

body.dd :is(.ngdx-map-board img, .ngdx-about-photo img, .ngdx-system-card img, .ngdx-guide-file img, .ngdx-system-guide img, .ngdx-brief-card img, .ngdx-owner-card img, .ngdx-contact-card img, .ngdx-request-card img, .ngdx-featured-guide img, .ngdx-family-grid img, .ngdx-gallery-grid img) {
  filter: saturate(0.98) contrast(1.04);
}

body.dd :is(.ngdx-map-board figcaption, .ngdx-about-photo figcaption, .ngdx-system-card figcaption) {
  border-left-color: var(--ng-coral);
  background: linear-gradient(135deg, rgba(31, 49, 43, 0.94), rgba(45, 119, 118, 0.86));
  box-shadow: 0 18px 34px rgba(31, 49, 43, 0.2);
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
}

body.dd :is(.ngdx-stat-row article, .ngdx-scope-strip article, .ngdx-proof-strip article, .ngdx-resource-dashboard div, .ngdx-audience-grid article, .ngdx-checklist button, .ngdx-detail-list article, .ngdx-value-list article, .ngdx-season-list article, .ngdx-shortlist article, .ngdx-link-list a, .ngdx-process-list article, .ngdx-accordion-list details, .ngdx-provider-group) {
  border-color: var(--ngdx-edge);
  border-radius: 8px;
  background: rgba(255, 250, 240, 0.92);
  box-shadow: 0 16px 36px rgba(31, 49, 43, 0.08);
}

body.dd :is(.ngdx-scope-strip, .ngdx-proof-strip, .ngdx-audience-section, .ngdx-contact-ribbon) {
  background: linear-gradient(90deg, rgba(31, 49, 43, 0.98), rgba(49, 95, 73, 0.96)), repeating-linear-gradient(90deg, transparent 0 74px, rgba(255, 250, 240, 0.08) 75px);
}

body.dd :is(.ngdx-scope-strip article, .ngdx-proof-strip article, .ngdx-audience-grid article, .ngdx-contact-ribbon article) {
  border-color: rgba(255, 250, 240, 0.18);
  border-left-color: var(--ng-gold);
  background: rgba(255, 250, 240, 0.08);
  color: #fffaf0;
  box-shadow: none;
}

body.dd :is(.ngdx-scope-strip span, .ngdx-proof-strip span, .ngdx-audience-grid span, .ngdx-contact-ribbon span) {
  color: #f1d48b;
}

body.dd :is(.ngdx-scope-strip strong, .ngdx-proof-strip strong, .ngdx-resource-dashboard strong, .ngdx-contact-ribbon strong) {
  color: #fffaf0;
}

body.dd .ngdx-resource-dashboard strong {
  color: var(--ng-green);
}

body.dd :is(.ngdx-guide-tabs button, .ngdx-profile-tabs button, .ngdx-system-tabs button, .ngdx-room-tabs button, .ngdx-category-list button, .ngdx-filter-pills button, .ngdx-glossary-cards button, .ngdx-checklist button, .ngdx-meter-actions button, .ngdx-clear-filter) {
  border-radius: 8px;
  background: linear-gradient(180deg, rgba(255, 250, 240, 0.98), rgba(237, 244, 238, 0.78));
  box-shadow: 0 10px 22px rgba(31, 49, 43, 0.06);
}

body.dd :is(.ngdx-guide-tabs button:hover, .ngdx-profile-tabs button:hover, .ngdx-system-tabs button:hover, .ngdx-room-tabs button:hover, .ngdx-category-list button:hover, .ngdx-filter-pills button:hover, .ngdx-glossary-cards button:hover, .ngdx-checklist button:hover, .ngdx-meter-actions button:hover, .ngdx-clear-filter:hover, .ngdx-guide-tabs button.is-selected, .ngdx-profile-tabs button.is-selected, .ngdx-system-tabs button.is-selected, .ngdx-room-tabs button.is-selected, .ngdx-category-list button.is-selected, .ngdx-filter-pills button.is-selected, .ngdx-glossary-cards button.is-selected, .ngdx-checklist button.is-checked) {
  border-color: rgba(168, 95, 74, 0.38);
  background: linear-gradient(135deg, #315f49, #2d7776);
  color: #fffdf8;
  box-shadow: 0 18px 34px rgba(49, 95, 73, 0.18);
}

body.dd :is(.ngdx-guide-tabs button:hover span, .ngdx-profile-tabs button:hover span, .ngdx-system-tabs button:hover span, .ngdx-room-tabs button:hover span, .ngdx-category-list button:hover span, .ngdx-guide-tabs button.is-selected span, .ngdx-profile-tabs button.is-selected span, .ngdx-system-tabs button.is-selected span, .ngdx-room-tabs button.is-selected span, .ngdx-category-list button.is-selected span) {
  color: rgba(255, 253, 248, 0.82);
}

body.dd .ngdx-diagram-shell {
  border-color: var(--ngdx-edge);
  background: linear-gradient(135deg, rgba(255, 250, 240, 0.96), rgba(237, 244, 238, 0.9)), repeating-linear-gradient(90deg, transparent 0 33px, rgba(49, 95, 73, 0.08) 34px), repeating-linear-gradient(0deg, transparent 0 33px, rgba(45, 119, 118, 0.07) 34px);
  box-shadow: inset 0 0 0 1px rgba(255, 250, 240, 0.56);
}

body.dd .ngdx-pin {
  border-color: rgba(255, 250, 240, 0.74);
  background: linear-gradient(135deg, var(--ng-coral), var(--ng-gold));
  color: #fffdf8;
  box-shadow: 0 10px 20px rgba(31, 49, 43, 0.18);
}

body.dd app-contact-form .contact-form-card {
  border-radius: 8px;
  background: linear-gradient(180deg, rgba(255, 250, 240, 0.98), rgba(248, 244, 233, 0.94)), repeating-linear-gradient(90deg, transparent 0 68px, rgba(49, 95, 73, 0.05) 69px);
  box-shadow: var(--ngdx-shadow);
}

body.dd app-contact-form .form-control,
body.dd .ngdx-resource-search input {
  border-radius: 8px;
}

body.dd app-contact-form .form-control:focus,
body.dd .ngdx-resource-search input:focus {
  border-color: rgba(45, 119, 118, 0.5);
  box-shadow: 0 0 0 4px rgba(200, 155, 78, 0.2);
}

body.dd .ngdx-phone-panel,
body.dd .ngdx-service-map,
body.dd .ngdx-section-head aside {
  border-color: var(--ngdx-edge);
  background: linear-gradient(180deg, rgba(255, 250, 240, 0.96), rgba(237, 244, 238, 0.86));
  box-shadow: 0 18px 38px rgba(31, 49, 43, 0.1);
}

body.dd .ngdx-provider-actions a:hover,
body.dd .ngdx-link-list a:hover {
  border-color: rgba(49, 95, 73, 0.28);
  background: rgba(237, 244, 238, 0.96);
  transform: translateY(-1px);
}

@media (max-width: 760px) {
  body.dd :is(.ngdx-home-hero,
  .ngdx-inspection-hero,
  .ngdx-about-hero,
  .ngdx-contact-hero,
  .ngdx-resource-hero) {
    padding-top: 138px;
  }
  body.dd :is(.ngdx-home-hero h1, .ngdx-inspection-hero h1, .ngdx-about-hero h1, .ngdx-contact-hero h1, .ngdx-resource-hero h1) {
    font-size: clamp(2.45rem, 10vw, 3.35rem);
  }
}
@media (max-width: 520px) {
  body.dd :is(.ngdx-home-hero,
  .ngdx-inspection-hero,
  .ngdx-about-hero,
  .ngdx-contact-hero,
  .ngdx-resource-hero) {
    padding-top: 144px;
  }
  body.dd :is(.ngdx-map-board figcaption, .ngdx-about-photo figcaption, .ngdx-system-card figcaption) {
    box-shadow: none;
  }
}
body.dd :is(.ngdx-route-section,
.ngdx-system-section,
.ngdx-room-section,
.ngdx-contact-form-section,
.ngdx-library-section,
.ngdx-reference-section) {
  padding: clamp(42px, 6vw, 62px) 0;
}

body.dd .ngdx-guide-file > div,
body.dd .ngdx-system-guide > div {
  gap: 12px;
}

body.dd .ngdx-compact-checklist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

body.dd .ngdx-compact-checklist li {
  border-left: 3px solid var(--ng-coral);
  border-radius: 8px;
  background: rgba(255, 250, 240, 0.9);
  color: var(--ng-ink);
  line-height: 1.35;
  padding: 8px 10px;
}

body.dd .ngdx-contact-form-grid {
  grid-template-columns: minmax(0, 780px);
  justify-content: center;
}

body.dd .ngdx-library-grid {
  grid-template-columns: minmax(240px, 0.32fr) minmax(0, 1fr);
}

body.dd .ngdx-library-sidebar h2 {
  font-size: clamp(1.35rem, 2.2vw, 1.85rem);
  line-height: 1.1;
}

body.dd .ngdx-resource-summary-row {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 10px 14px;
  align-items: center;
  border: 1px solid var(--ngdx-edge);
  border-left: 5px solid var(--ng-coral);
  border-radius: 8px;
  background: rgba(255, 250, 240, 0.94);
  box-shadow: 0 12px 30px rgba(31, 49, 43, 0.07);
  padding: 14px 16px;
}

body.dd .ngdx-resource-summary-row strong {
  color: var(--ng-green);
  font-size: 1rem;
}

body.dd .ngdx-resource-summary-row :is(span, small) {
  color: var(--ng-muted);
  line-height: 1.35;
}

body.dd .ngdx-provider-group summary {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: start;
  cursor: pointer;
  list-style: none;
  padding: 16px;
}

body.dd .ngdx-provider-group summary::-webkit-details-marker {
  display: none;
}

body.dd .ngdx-provider-group summary span {
  color: var(--ng-coral);
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
}

body.dd .ngdx-provider-group summary strong {
  display: inline-flex;
  gap: 8px;
  align-items: center;
  color: var(--ng-green);
  white-space: nowrap;
}

body.dd .ngdx-provider-group summary strong::after {
  display: inline-grid;
  place-items: center;
  width: 24px;
  height: 24px;
  border-radius: 999px;
  background: rgba(168, 95, 74, 0.12);
  color: var(--ng-coral);
  content: "+";
}

body.dd .ngdx-provider-group[open] summary {
  border-bottom: 1px solid rgba(49, 95, 73, 0.12);
}

body.dd .ngdx-provider-group[open] summary strong::after {
  content: "-";
}

body.dd .ngdx-provider-table article {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  padding: 14px 16px;
}

body.dd .ngdx-provider-actions {
  justify-content: flex-end;
}

@media (max-width: 1180px) {
  body.dd .ngdx-contact-form-grid {
    grid-template-columns: minmax(0, 780px);
  }
}
@media (max-width: 760px) {
  body.dd .ngdx-compact-checklist,
  body.dd .ngdx-resource-summary-row,
  body.dd .ngdx-provider-group summary,
  body.dd .ngdx-provider-table article {
    grid-template-columns: 1fr;
  }
  body.dd .ngdx-provider-actions {
    justify-content: stretch;
  }
  body.dd .ngdx-provider-group summary strong {
    white-space: normal;
  }
}
body.df .hhc-only {
  display: initial;
}

body.df .footer-concept-default {
  display: none;
}

body.df :is(.home-health-nav-note, .home-health-footer-strip) {
  display: grid;
  border: 1px solid var(--ng-line);
  border-left: 5px solid var(--ng-teal);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.9);
}

body.df .home-health-nav-note {
  max-width: 270px;
  margin-left: 10px;
  padding: 9px 12px;
}

body.df :is(.home-health-nav-note span, .home-health-footer-strip span) {
  color: var(--ng-teal);
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
}

body.df .home-health-nav-note strong {
  color: var(--ng-muted);
  font-size: 0.74rem;
  line-height: 1.3;
}

body.df :is(.phone-link, .home-health-schedule, .ng-button-primary, .mobile-sticky-cta a:first-child) {
  background: linear-gradient(135deg, var(--ng-green), var(--ng-teal));
  color: #ffffff;
}

body.df .home-health-schedule,
body.df .home-health-footer-strip a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  border-radius: 8px;
  font-weight: 900;
  padding: 10px 16px;
  text-decoration: none;
}

body.df .home-health-schedule:hover,
body.df .home-health-footer-strip a:hover {
  background: linear-gradient(135deg, #24594d, var(--ng-blue));
  color: #ffffff;
}

body.df :is(.mobile-menu-button, a, button, select, input, textarea):focus-visible {
  outline: 3px solid rgba(213, 162, 76, 0.7);
  outline-offset: 3px;
}

body.df .home-health-footer-strip {
  grid-template-columns: 116px minmax(0, 1fr) auto;
  gap: 18px;
  align-items: center;
  margin: 18px auto;
  padding: 18px;
}

body.df .home-health-footer-strip img {
  width: 116px;
  height: 116px;
  border-radius: 8px;
  object-fit: cover;
  object-position: center 20%;
}

body.df .home-health-footer-strip strong {
  display: block;
  margin-top: 5px;
  color: var(--ng-ink);
  font-size: 1.28rem;
  line-height: 1.22;
}

body.df .home-health-footer-strip p {
  margin: 8px 0 0;
  color: var(--ng-muted);
  line-height: 1.5;
}

body.df .home-health-footer-strip a {
  background: var(--ng-green);
  color: #ffffff;
  white-space: nowrap;
}

body.df {
  --ng-ink: #143038;
  --ng-muted: #5c7175;
  --ng-green: #26665c;
  --ng-teal: #1f7f86;
  --ng-blue: #2f628d;
  --ng-gold: #c99538;
  --ng-paper: #f4f8f6;
  --ng-sky: #eaf4f3;
  --ng-leaf: #ddece8;
  --ng-line: rgba(28, 69, 73, 0.16);
  --ng-shadow: 0 20px 46px rgba(15, 48, 54, 0.12);
}

body.df main {
  background: linear-gradient(180deg, #fff 0%, var(--ng-paper) 34%, #fff 64%, var(--ng-sky) 100%);
}

body.df :is(.hhx-home-hero, .hhx-inspection-hero, .hhx-about-hero, .hhx-contact-hero, .hhx-resources-hero) {
  padding: clamp(42px, 7vw, 86px) 0;
  background: linear-gradient(135deg, rgba(31, 127, 134, 0.13), rgba(201, 149, 56, 0.1)), #fff;
}

body.df :is(.hhx-home-shell, .hhx-inspection-hero-grid, .hhx-contact-hero-grid, .hhx-resources-hero-grid, .hhx-about-hero-grid, .hhx-triage-grid, .hhx-readiness-grid, .hhx-room-grid, .hhx-included-grid, .hhx-tools-grid, .hhx-local-grid, .hhx-schedule-grid, .hhx-form-grid, .hhx-library-grid, .hhx-calendar-grid, .hhx-glossary-grid) {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(320px, 0.72fr);
  gap: clamp(20px, 4vw, 46px);
  align-items: start;
}

body.df :is(.hhx-triage-grid, .hhx-room-grid, .hhx-included-grid, .hhx-tools-grid, .hhx-local-grid, .hhx-schedule-grid, .hhx-library-grid, .hhx-calendar-grid, .hhx-glossary-grid) {
  grid-template-columns: 0.44fr minmax(0, 1fr);
}

body.df .hhx-form-grid {
  grid-template-columns: minmax(0, 1fr) 0.42fr;
}

body.df .hhx-library-grid {
  grid-template-columns: 320px minmax(0, 1fr);
}

body.df .hhx-label,
body.df :is(.hhx-vital-stats dt, .hhx-vitals-board header span, .hhx-chart-card span, .hhx-contact-summary > span, .hhx-featured-guide span, .hhx-library-status span, .hhx-season-list span) {
  color: var(--ng-teal);
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
}

body.df .hhx-label {
  display: inline-flex;
  width: -moz-fit-content;
  width: fit-content;
  border: 1px solid rgba(31, 127, 134, 0.25);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.78);
  padding: 7px 10px;
}

body.df :is(h1, h2, h3, .hhx-mission-quote blockquote) {
  color: var(--ng-ink);
}

body.df .hhx-home-copy h1 {
  max-width: 760px;
  margin: 10px 0 14px;
  font-size: clamp(2.45rem, 6vw, 5.1rem);
  font-weight: 900;
  line-height: 1.04;
}

body.df :is(.hhx-home-copy p, .hhx-section-split p, .hhx-triage-menu p, .hhx-provider-ledger p, .hhx-next-timeline p, .hhx-contact-summary p) {
  color: var(--ng-muted);
  line-height: 1.6;
}

body.df :is(.hhx-vitals-board, .hhx-chart-card, .hhx-contact-summary, .hhx-featured-guide, .hhx-readiness-meter, .hhx-triage-file, .hhx-system-profile, .hhx-form-column, .hhx-next-timeline, .hhx-library-control, .hhx-provider-ledger, .hhx-hours-card, .hhx-local-file) {
  border: 1px solid var(--ng-line);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.92);
  box-shadow: var(--ng-shadow);
}

body.df :is(.hhx-chart-card, .hhx-readiness-meter, .hhx-contact-summary, .hhx-library-control, .hhx-provider-ledger, .hhx-form-column, .hhx-next-timeline, .hhx-hours-card) {
  padding: clamp(16px, 3vw, 26px);
}

body.df :is(.hhx-triage-section, .hhx-readiness-section, .hhx-room-lab, .hhx-included-section, .hhx-tools-section, .hhx-credential-wall, .hhx-local-section, .hhx-schedule-section, .hhx-form-section, .hhx-library-section, .hhx-calendar-section, .hhx-glossary-section) {
  padding: clamp(42px, 6vw, 76px) 0;
}

body.df :is(.hhx-readiness-section, .hhx-included-section, .hhx-credential-wall, .hhx-schedule-section, .hhx-calendar-section) {
  background: linear-gradient(135deg, rgba(221, 236, 232, 0.8), rgba(255, 255, 255, 0.92));
}

body.df .hhx-vital-stats,
body.df :is(.hhx-proof-bar, .hhx-credential-list, .hhx-season-list) {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}

body.df :is(.hhx-proof-bar, .hhx-credential-list, .hhx-season-list) {
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-top: 18px;
}

body.df :is(.hhx-vital-stats div, .hhx-proof-bar article, .hhx-credential-list article, .hhx-tool-rail article, .hhx-season-list article) {
  border: 1px solid var(--ng-line);
  border-radius: 8px;
  background: #fff;
  padding: 14px;
}

body.df .hhx-vital-stats dd,
body.df .hhx-proof-bar strong {
  margin: 2px 0;
  font-size: 1.55rem;
  font-weight: 900;
}

body.df :is(.hhx-vitals-board, .hhx-tool-rail, .hhx-readiness-list, .hhx-system-list, .hhx-route-tabs, .hhx-scope-accordion, .hhx-detail-stack, .hhx-provider-ledger) {
  display: grid;
  gap: 10px;
}

body.df :is(.hhx-vital-tabs, .hhx-filter-row, .hhx-category-pills, .resource-hero-cues, .hhx-service-cloud) {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

body.df :is(button, .hhx-provider-ledger article a) {
  font-weight: 900;
}

body.df :is(.hhx-vital-tabs button, .hhx-filter-row button, .hhx-category-pills button, .hhx-reset-filter, .hhx-stepper button, .hhx-triage-menu button, .hhx-system-list button, .hhx-route-tabs button, .hhx-readiness-list button) {
  border: 1px solid var(--ng-line);
  border-radius: 8px;
  background: #fff;
  color: var(--ng-ink);
  cursor: pointer;
  min-height: 42px;
  padding: 10px 12px;
  text-align: left;
}

body.df :is(.hhx-vital-tabs button.is-selected, .hhx-filter-row button.is-selected, .hhx-category-pills button.is-selected, .hhx-triage-menu button.is-selected, .hhx-system-list button.is-selected, .hhx-route-tabs button.is-selected, .hhx-readiness-list button.is-complete, .hhx-reset-filter:hover, .hhx-stepper button:hover) {
  border-color: rgba(31, 127, 134, 0.48);
  background: var(--ng-green);
  color: #fff;
}

body.df :is(.hhx-triage-menu button span, .hhx-system-list button span, .hhx-route-tabs button span, .hhx-readiness-list button span) {
  display: block;
  color: var(--ng-teal);
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
}

body.df :is(.hhx-triage-menu button.is-selected span, .hhx-system-list button.is-selected span, .hhx-readiness-list button.is-complete span) {
  color: rgba(255, 255, 255, 0.86);
}

body.df :is(.hhx-vitals-board img, .hhx-about-hero img) {
  width: 100%;
  height: clamp(230px, 30vw, 380px);
  border-radius: 8px;
  object-fit: cover;
}

body.df :is(.hhx-triage-file, .hhx-local-file, .hhx-system-profile, .hhx-featured-guide) {
  display: grid;
  grid-template-columns: minmax(220px, 0.45fr) minmax(0, 1fr);
  overflow: hidden;
}

body.df :is(.hhx-triage-file img, .hhx-local-file img, .hhx-system-profile img, .hhx-featured-guide img) {
  width: 100%;
  height: 100%;
  min-height: 260px;
  object-fit: cover;
}

body.df :is(.hhx-triage-file > div, .hhx-local-file > div, .hhx-system-profile > div, .hhx-featured-guide > div) {
  padding: clamp(18px, 3vw, 28px);
}

body.df :is(.hhx-triage-file dl, .hhx-system-profile ul, .hhx-local-file ul) {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  padding: 0;
  list-style: none;
}

body.df :is(.hhx-triage-file dl div, .hhx-system-profile li, .hhx-local-file li) {
  border-left: 4px solid var(--ng-teal);
  background: var(--ng-sky);
  color: var(--ng-ink);
  font-weight: 800;
  padding: 10px 12px;
}

body.df .hhx-progress-track {
  overflow: hidden;
  height: 12px;
  border-radius: 999px;
  background: rgba(31, 127, 134, 0.14);
}

body.df .hhx-progress-track span {
  display: block;
  height: 100%;
  background: linear-gradient(90deg, var(--ng-green), var(--ng-teal), var(--ng-gold));
}

body.df .hhx-stepper {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin-top: 14px;
}

body.df .hhx-scope-accordion details {
  border: 1px solid var(--ng-line);
  border-radius: 8px;
  background: #fff;
  padding: 0 16px;
}

body.df .hhx-scope-accordion summary {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 12px;
  cursor: pointer;
  font-weight: 900;
  padding: 15px 0;
}

body.df :is(.hhx-scope-accordion details div, .hhx-detail-stack) {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  padding-bottom: 16px;
}

body.df :is(.hhx-scope-accordion details div span, .hhx-detail-stack span, .hhx-service-cloud span, .resource-hero-cues span) {
  border: 1px solid var(--ng-line);
  border-radius: 999px;
  background: #fff;
  color: var(--ng-muted);
  font-size: 0.82rem;
  font-weight: 800;
  padding: 7px 10px;
}

body.df .hhx-mission-quote blockquote {
  margin: 14px 0;
  font-size: clamp(2rem, 5vw, 4rem);
  font-weight: 900;
  line-height: 1.04;
}

body.df .hhx-phone-focus {
  display: grid;
  margin-top: 22px;
  border-left: 6px solid var(--ng-gold);
  border-radius: 8px;
  background: #fff;
  padding: 18px;
}

body.df .hhx-phone-focus a {
  color: var(--ng-ink);
  font-size: clamp(1.9rem, 5vw, 3.2rem);
  font-weight: 900;
  line-height: 1;
  text-decoration: none;
}

body.df .hhx-next-timeline ol {
  display: grid;
  gap: 12px;
  margin: 18px 0 0;
  padding: 0;
  list-style: none;
}

body.df .hhx-next-timeline li {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 12px;
  border-top: 1px solid var(--ng-line);
  padding-top: 14px;
}

body.df .hhx-next-timeline li span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  border-radius: 999px;
  background: var(--ng-green);
  color: #fff;
  font-weight: 900;
}

body.df .hhx-library-control {
  position: sticky;
  top: 112px;
}

body.df .hhx-library-control label {
  display: grid;
  gap: 7px;
  margin: 18px 0;
  font-weight: 900;
}

body.df .hhx-library-control input {
  width: 100%;
  min-height: 46px;
  border: 1px solid var(--ng-line);
  border-radius: 8px;
  padding: 10px 12px;
}

body.df .hhx-provider-ledger {
  box-shadow: none;
}

body.df .hhx-provider-ledger section,
body.df .hhx-provider-ledger article {
  border-top: 1px solid var(--ng-line);
  padding-top: 14px;
}

body.df .hhx-provider-ledger article {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 14px;
  align-items: center;
  padding-bottom: 12px;
}

body.df .hhx-provider-ledger article a {
  white-space: nowrap;
}

@media (max-width: 900px) {
  body.df :is(.hhx-home-shell, .hhx-inspection-hero-grid, .hhx-contact-hero-grid, .hhx-resources-hero-grid, .hhx-about-hero-grid, .hhx-triage-grid, .hhx-readiness-grid, .hhx-room-grid, .hhx-included-grid, .hhx-tools-grid, .hhx-local-grid, .hhx-schedule-grid, .hhx-form-grid, .hhx-library-grid, .hhx-calendar-grid, .hhx-glossary-grid) {
    grid-template-columns: 1fr;
  }
  body.df :is(.hhx-library-control, .hhx-triage-menu) {
    position: static;
  }
  body.df :is(.hhx-triage-file, .hhx-local-file, .hhx-system-profile, .hhx-featured-guide) {
    grid-template-columns: 1fr;
  }
  body.df :is(.hhx-vital-stats, .hhx-proof-bar, .hhx-credential-list, .hhx-season-list) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 620px) {
  body.df :is(.hhx-vital-stats, .hhx-proof-bar, .hhx-credential-list, .hhx-season-list, .hhx-triage-file dl, .hhx-system-profile ul, .hhx-local-file ul, .hhx-stepper) {
    grid-template-columns: 1fr;
  }
  body.df .hhx-provider-ledger article {
    grid-template-columns: 1fr;
  }
  body.df .hhx-phone-focus a {
    font-size: clamp(1.7rem, 9vw, 2.35rem);
  }
}
@media (max-width: 720px) {
  body.df .brand-mark small,
  body.df .home-health-brand-note {
    display: none;
  }
  body.df .home-health-nav-note {
    max-width: none;
    margin: 6px 0 0;
  }
  body.df .home-health-footer-strip {
    grid-template-columns: 82px minmax(0, 1fr);
  }
  body.df .home-health-footer-strip img {
    width: 82px;
    height: 82px;
  }
  body.df .home-health-footer-strip a {
    grid-column: 1/-1;
    width: 100%;
    white-space: normal;
  }
}
body.df {
  --hhx-sheet: rgba(255, 255, 255, 0.96);
  --hhx-sheet-soft: rgba(244, 248, 246, 0.92);
  --hhx-grid-line: rgba(31, 127, 134, 0.075);
  --hhx-heartline: #d58f35;
  --hhx-shadow-deep: 0 30px 72px rgba(15, 48, 54, 0.16);
  --hhx-shadow-soft: 0 18px 38px rgba(15, 48, 54, 0.1);
}

body.df main,
body.df .site-footer {
  background: linear-gradient(116deg, rgba(31, 127, 134, 0.08) 0 18%, transparent 18% 70%, rgba(213, 143, 53, 0.1) 70% 100%), linear-gradient(180deg, #ffffff 0%, #f3f8f6 38%, #ffffff 65%, #e9f4f2 100%), repeating-linear-gradient(90deg, transparent 0 42px, var(--hhx-grid-line) 43px), repeating-linear-gradient(0deg, transparent 0 42px, rgba(201, 149, 56, 0.055) 43px);
}

body.df :is(.home-health-nav-note, .home-health-footer-strip) {
  border-color: rgba(31, 127, 134, 0.2);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.97), rgba(234, 244, 243, 0.9)), repeating-linear-gradient(90deg, transparent 0 26px, rgba(31, 127, 134, 0.07) 27px);
  box-shadow: var(--hhx-shadow-soft);
}

body.df :is(.home-health-schedule, .home-health-footer-strip a, .phone-link, .ng-button-primary, .mobile-sticky-cta a:first-child) {
  background: linear-gradient(135deg, #1d594f, #1f7f86);
  box-shadow: 0 14px 28px rgba(31, 127, 134, 0.2);
}

body.df :is(.hhx-home-hero, .hhx-inspection-hero, .hhx-about-hero, .hhx-contact-hero, .hhx-resources-hero) {
  position: relative;
  overflow: hidden;
  padding: clamp(132px, 11vw, 176px) 0 clamp(74px, 7vw, 108px);
  background: linear-gradient(112deg, rgba(31, 127, 134, 0.16) 0 22%, transparent 22% 73%, rgba(213, 143, 53, 0.14) 73% 100%), linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(221, 236, 232, 0.86)), repeating-linear-gradient(90deg, transparent 0 36px, rgba(31, 127, 134, 0.11) 37px), repeating-linear-gradient(0deg, transparent 0 36px, rgba(201, 149, 56, 0.07) 37px);
}

body.df :is(.hhx-home-hero, .hhx-inspection-hero, .hhx-about-hero, .hhx-contact-hero, .hhx-resources-hero) .site-container {
  position: relative;
  z-index: 1;
}

body.df :is(.hhx-home-hero, .hhx-inspection-hero, .hhx-about-hero, .hhx-contact-hero, .hhx-resources-hero)::before {
  position: absolute;
  top: clamp(30px, 5vw, 62px);
  right: clamp(18px, 6vw, 82px);
  width: min(410px, 44vw);
  height: 118px;
  border: 1px solid rgba(31, 127, 134, 0.2);
  border-radius: 8px;
  background: linear-gradient(90deg, transparent 0 10%, rgba(31, 127, 134, 0.2) 10% 12%, transparent 12% 20%, rgba(213, 143, 53, 0.36) 20% 23%, transparent 23% 32%, rgba(31, 127, 134, 0.22) 32% 34%, transparent 34% 100%), repeating-linear-gradient(90deg, transparent 0 30px, rgba(31, 127, 134, 0.12) 31px), rgba(255, 255, 255, 0.64);
  box-shadow: 0 18px 40px rgba(15, 48, 54, 0.1);
  content: "";
  pointer-events: none;
}

body.df :is(.hhx-home-hero, .hhx-inspection-hero, .hhx-about-hero, .hhx-contact-hero, .hhx-resources-hero)::after {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 8px;
  background: linear-gradient(90deg, var(--ng-green), var(--ng-teal), var(--hhx-heartline));
  content: "";
}

body.df :is(.hhx-home-copy h1, .hhx-mission-quote h1) {
  max-width: 850px;
  margin-top: 12px;
  font-size: clamp(2.85rem, 6.1vw, 5.25rem);
  font-weight: 950;
  letter-spacing: 0;
  line-height: 0.96;
  text-wrap: balance;
}

body.df :is(.hhx-home-copy p, .hhx-mission-quote p, .hhx-section-split p, .hhx-triage-menu p, .hhx-provider-ledger p, .hhx-next-timeline p, .hhx-contact-summary p) {
  max-width: 760px;
  font-size: 1.02rem;
}

body.df .hhx-label {
  border-color: rgba(31, 127, 134, 0.26);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(234, 244, 243, 0.84));
  box-shadow: 0 12px 24px rgba(15, 48, 54, 0.08);
}

body.df :is(.hhx-vitals-board, .hhx-chart-card, .hhx-contact-summary, .hhx-featured-guide, .hhx-readiness-meter, .hhx-triage-file, .hhx-system-profile, .hhx-form-column, .hhx-next-timeline, .hhx-library-control, .hhx-provider-ledger, .hhx-hours-card, .hhx-local-file, .hhx-about-hero figure) {
  border-color: rgba(28, 69, 73, 0.18);
  background: linear-gradient(180deg, var(--hhx-sheet), var(--hhx-sheet-soft)), repeating-linear-gradient(90deg, transparent 0 32px, rgba(31, 127, 134, 0.055) 33px);
  box-shadow: var(--hhx-shadow-deep);
}

body.df :is(.hhx-vitals-board, .hhx-chart-card, .hhx-contact-summary, .hhx-featured-guide, .hhx-readiness-meter, .hhx-triage-file, .hhx-system-profile, .hhx-form-column, .hhx-next-timeline, .hhx-library-control, .hhx-provider-ledger, .hhx-hours-card, .hhx-local-file) {
  position: relative;
  overflow: hidden;
}

body.df :is(.hhx-vitals-board, .hhx-chart-card, .hhx-contact-summary, .hhx-featured-guide, .hhx-readiness-meter, .hhx-triage-file, .hhx-system-profile, .hhx-form-column, .hhx-next-timeline, .hhx-library-control, .hhx-provider-ledger, .hhx-hours-card, .hhx-local-file)::before {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1;
  height: 6px;
  background: linear-gradient(90deg, var(--ng-green), var(--ng-teal), var(--hhx-heartline));
  content: "";
}

body.df .hhx-vitals-board {
  padding: clamp(16px, 2.3vw, 24px);
}

body.df .hhx-vitals-board header {
  display: flex;
  justify-content: space-between;
  gap: 14px;
  align-items: center;
  margin-bottom: 16px;
}

body.df .hhx-vitals-board header strong {
  border-radius: 999px;
  background: rgba(31, 127, 134, 0.11);
  color: var(--ng-green);
  padding: 7px 10px;
}

body.df .hhx-vitals-board figure {
  position: relative;
  overflow: hidden;
  margin: 16px 0 0;
  border-radius: 8px;
}

body.df .hhx-vitals-board figure img {
  height: clamp(260px, 30vw, 390px);
  filter: saturate(0.98) contrast(1.04);
}

body.df .hhx-vitals-board figcaption {
  position: absolute;
  right: 14px;
  bottom: 14px;
  left: 14px;
  border: 1px solid rgba(255, 255, 255, 0.22);
  border-radius: 8px;
  background: linear-gradient(135deg, rgba(20, 48, 56, 0.93), rgba(31, 127, 134, 0.85));
  color: #ffffff;
  padding: 16px;
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
}

body.df .hhx-vitals-board figcaption :is(h2, p, span) {
  color: #ffffff;
}

body.df :is(.hhx-readiness-section, .hhx-included-section, .hhx-credential-wall, .hhx-schedule-section, .hhx-calendar-section) {
  background: linear-gradient(115deg, rgba(31, 127, 134, 0.08) 0 34%, transparent 34% 100%), linear-gradient(180deg, rgba(234, 244, 243, 0.92), rgba(255, 255, 255, 0.96));
}

body.df :is(.hhx-triage-section, .hhx-room-lab, .hhx-tools-section, .hhx-local-section, .hhx-form-section, .hhx-library-section, .hhx-glossary-section) {
  background: repeating-linear-gradient(90deg, transparent 0 44px, rgba(31, 127, 134, 0.045) 45px), #ffffff;
}

body.df :is(.hhx-vital-stats div, .hhx-proof-bar article, .hhx-credential-list article, .hhx-tool-rail article, .hhx-season-list article, .hhx-scope-accordion details, .hhx-provider-ledger section, .hhx-provider-ledger article) {
  border-color: rgba(28, 69, 73, 0.16);
  background: rgba(255, 255, 255, 0.9);
  box-shadow: 0 12px 28px rgba(15, 48, 54, 0.07);
}

body.df :is(.hhx-vital-stats dd, .hhx-proof-bar strong, .hhx-library-status strong) {
  color: var(--ng-green);
}

body.df :is(.hhx-vital-tabs button, .hhx-filter-row button, .hhx-category-pills button, .hhx-reset-filter, .hhx-stepper button, .hhx-triage-menu button, .hhx-system-list button, .hhx-route-tabs button, .hhx-readiness-list button) {
  border-color: rgba(28, 69, 73, 0.17);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(234, 244, 243, 0.78));
  box-shadow: 0 10px 22px rgba(15, 48, 54, 0.06);
}

body.df :is(.hhx-vital-tabs button:hover, .hhx-filter-row button:hover, .hhx-category-pills button:hover, .hhx-reset-filter:hover, .hhx-stepper button:hover, .hhx-triage-menu button:hover, .hhx-system-list button:hover, .hhx-route-tabs button:hover, .hhx-readiness-list button:hover, .hhx-vital-tabs button.is-selected, .hhx-filter-row button.is-selected, .hhx-category-pills button.is-selected, .hhx-triage-menu button.is-selected, .hhx-system-list button.is-selected, .hhx-route-tabs button.is-selected, .hhx-readiness-list button.is-complete) {
  border-color: rgba(213, 143, 53, 0.42);
  background: linear-gradient(135deg, #143038, #1f7f86);
  color: #ffffff;
  box-shadow: inset 5px 0 0 var(--hhx-heartline), 0 16px 32px rgba(15, 48, 54, 0.16);
}

body.df :is(.hhx-vital-tabs button:hover span, .hhx-filter-row button:hover span, .hhx-category-pills button:hover span, .hhx-triage-menu button:hover span, .hhx-system-list button:hover span, .hhx-route-tabs button:hover span, .hhx-readiness-list button:hover span, .hhx-vital-tabs button.is-selected span, .hhx-filter-row button.is-selected span, .hhx-category-pills button.is-selected span, .hhx-triage-menu button.is-selected span, .hhx-system-list button.is-selected span, .hhx-route-tabs button.is-selected span, .hhx-readiness-list button.is-complete span) {
  color: rgba(255, 255, 255, 0.86);
}

body.df :is(.hhx-triage-file img, .hhx-local-file img, .hhx-system-profile img, .hhx-featured-guide img, .hhx-about-hero img) {
  border: 1px solid rgba(28, 69, 73, 0.12);
  filter: saturate(0.98) contrast(1.04);
}

body.df .hhx-system-profile ul,
body.df .hhx-local-file ul,
body.df .hhx-triage-file dl {
  gap: 10px;
}

body.df :is(.hhx-triage-file dl div, .hhx-system-profile li, .hhx-local-file li, .hhx-scope-accordion details div span, .hhx-detail-stack span, .hhx-service-cloud span, .resource-hero-cues span) {
  border-color: rgba(31, 127, 134, 0.18);
  border-left: 4px solid var(--ng-teal);
  background: rgba(234, 244, 243, 0.78);
  color: var(--ng-ink);
}

body.df .hhx-progress-track {
  height: 14px;
  background: repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.52) 0 9px, transparent 9px 18px), rgba(31, 127, 134, 0.16);
  box-shadow: inset 0 0 0 1px rgba(31, 127, 134, 0.14);
}

body.df .hhx-mission-quote blockquote {
  border-left: 8px solid var(--hhx-heartline);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.74), rgba(234, 244, 243, 0.7));
  padding: clamp(16px, 3vw, 28px);
  box-shadow: var(--hhx-shadow-soft);
}

body.df .hhx-phone-focus {
  border: 1px solid rgba(28, 69, 73, 0.16);
  border-left: 8px solid var(--hhx-heartline);
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.98), rgba(234, 244, 243, 0.88));
  box-shadow: var(--hhx-shadow-soft);
}

body.df .hhx-phone-focus a {
  color: var(--ng-green);
}

body.df .hhx-next-timeline li {
  border-top-color: rgba(28, 69, 73, 0.16);
}

body.df .hhx-next-timeline li span {
  background: linear-gradient(135deg, var(--ng-green), var(--ng-teal));
  box-shadow: 0 10px 20px rgba(31, 127, 134, 0.18);
}

body.df app-contact-form .contact-form-card {
  border: 1px solid rgba(28, 69, 73, 0.18);
  border-radius: 8px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(244, 248, 246, 0.94));
  box-shadow: var(--hhx-shadow-deep);
}

body.df app-contact-form .form-control,
body.df .hhx-library-control input {
  border-color: rgba(28, 69, 73, 0.18);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.94);
}

body.df app-contact-form .form-control:focus,
body.df .hhx-library-control input:focus {
  border-color: rgba(31, 127, 134, 0.52);
  box-shadow: 0 0 0 4px rgba(213, 143, 53, 0.18);
}

body.df app-contact-form button[type=submit] {
  border-radius: 8px;
  background: linear-gradient(135deg, #143038, #1f7f86);
  box-shadow: 0 16px 32px rgba(15, 48, 54, 0.17);
}

body.df .hhx-provider-ledger article a {
  border: 1px solid rgba(31, 127, 134, 0.18);
  border-radius: 999px;
  background: rgba(234, 244, 243, 0.82);
  color: var(--ng-green);
  padding: 8px 12px;
  text-decoration: none;
}

body.df .hhx-provider-ledger article a:hover {
  background: #ffffff;
  transform: translateY(-1px);
}

@media (max-width: 900px) {
  body.df :is(.hhx-home-hero, .hhx-inspection-hero, .hhx-about-hero, .hhx-contact-hero, .hhx-resources-hero)::before {
    width: min(340px, 56vw);
    opacity: 0.62;
  }
  body.df :is(.hhx-home-copy h1, .hhx-mission-quote h1) {
    font-size: clamp(2.65rem, 9vw, 4rem);
  }
}
@media (max-width: 720px) {
  body.df :is(.hhx-home-hero, .hhx-inspection-hero, .hhx-about-hero, .hhx-contact-hero, .hhx-resources-hero) {
    padding-top: 138px;
  }
  body.df :is(.hhx-home-hero, .hhx-inspection-hero, .hhx-about-hero, .hhx-contact-hero, .hhx-resources-hero)::before {
    top: 24px;
    right: 14px;
    width: min(280px, 72vw);
    height: 78px;
  }
  body.df :is(.hhx-vitals-board figcaption) {
    position: static;
    border-radius: 0 0 8px 8px;
  }
  body.df .hhx-vitals-board figure img {
    height: 250px;
    border-radius: 8px 8px 0 0;
  }
}
@media (max-width: 520px) {
  body.df :is(.hhx-home-hero, .hhx-inspection-hero, .hhx-about-hero, .hhx-contact-hero, .hhx-resources-hero) {
    padding-top: 146px;
  }
  body.df :is(.hhx-home-copy h1, .hhx-mission-quote h1) {
    font-size: clamp(2.35rem, 10.5vw, 3.15rem);
  }
  body.df .hhx-vitals-board {
    padding: 14px;
  }
  body.df .hhx-provider-ledger article a {
    justify-content: center;
    width: 100%;
    text-align: center;
    white-space: normal;
  }
}
/* Design F concise pass */
body.df :is(.hhx-room-lab, .hhx-form-section, .hhx-library-section, .hhx-credential-wall) {
  padding: clamp(42px, 5vw, 64px) 0;
}

body.df .hhx-form-grid {
  grid-template-columns: minmax(0, 820px);
  justify-content: center;
}

body.df .hhx-form-column {
  min-width: 0;
}

body.df .hhx-form-column > h2,
body.df .hhx-library-control h2 {
  margin: 6px 0 16px;
  font-size: clamp(1.55rem, 3vw, 2.1rem);
  line-height: 1.08;
}

body.df .hhx-room-grid {
  grid-template-columns: minmax(236px, 0.3fr) minmax(0, 1fr);
}

body.df .hhx-system-profile {
  grid-template-columns: minmax(210px, 0.34fr) minmax(0, 1fr);
}

body.df .hhx-system-profile img {
  min-height: 240px;
}

body.df .hhx-system-profile ul {
  margin: 16px 0 0;
}

body.df .hhx-stepper button {
  text-align: center;
}

body.df .hhx-library-grid {
  grid-template-columns: minmax(236px, 0.3fr) minmax(0, 1fr);
}

body.df .hhx-library-status {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 12px;
  align-items: baseline;
  border-bottom: 1px solid var(--ng-line);
  padding-bottom: 12px;
}

body.df .hhx-library-status strong {
  font-size: 1.25rem;
}

body.df .hhx-provider-ledger article small {
  display: block;
  color: var(--ng-muted);
  line-height: 1.35;
}

body.df .resource-control-reset.hhx-reset-filter {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(135deg, #143038, #1f7f86);
  color: #fff;
}

@media (max-width: 900px) {
  body.df :is(.hhx-room-grid, .hhx-form-grid, .hhx-library-grid, .hhx-system-profile) {
    grid-template-columns: 1fr;
  }
  body.df :is(.hhx-library-control, .hhx-system-list) {
    position: static;
  }
}
@media (max-width: 620px) {
  body.df .hhx-system-profile img {
    min-height: 220px;
  }
  body.df .hhx-library-status {
    display: grid;
    gap: 4px;
  }
}
body.de {
  --ng-ink: #17242b;
  --ng-muted: #64727a;
  --ng-green: #234f49;
  --ng-teal: #216f75;
  --ng-blue: #284f78;
  --ng-gold: #c79439;
  --ng-paper: #f3f6f4;
  --ng-sky: #edf4f1;
  --ng-leaf: #e1ebe8;
  --ng-line: rgba(31, 52, 61, 0.15);
  --ng-white: #fbfcfa;
  --ng-shadow: 0 18px 46px rgba(23, 36, 43, 0.13);
}

body.de .ic-only {
  display: initial;
}

body.de .footer-concept-default {
  display: none;
}

body.de main,
body.de .site-footer {
  background: linear-gradient(180deg, var(--ng-white), var(--ng-paper) 52%, var(--ng-sky));
}

body.de .site-header {
  border-bottom: 1px solid var(--ng-line);
  background: rgba(251, 252, 250, 0.98);
  box-shadow: 0 14px 34px rgba(23, 36, 43, 0.08);
}

body.de .site-header::before {
  height: 4px;
  background: linear-gradient(90deg, var(--ng-green), var(--ng-blue), var(--ng-gold));
}

body.de .primary-nav a {
  border-radius: 8px;
}

body.de .primary-nav a:hover,
body.de .primary-nav a.is-active {
  background: rgba(225, 235, 232, 0.9);
  color: var(--ng-blue);
}

body.de :is(.inspection-console-nav-note, .inspection-console-footer-strip) {
  display: grid;
  border: 1px solid var(--ng-line);
  border-left: 5px solid var(--ng-gold);
  border-radius: 8px;
  background: rgba(251, 252, 250, 0.9);
}

body.de .inspection-console-nav-note {
  max-width: 250px;
  margin-left: 10px;
  padding: 9px 12px;
}

body.de :is(.inspection-console-nav-note span, .inspection-console-footer-strip span) {
  color: var(--ng-blue);
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
}

body.de .inspection-console-nav-note strong {
  color: var(--ng-muted);
  font-size: 0.74rem;
  line-height: 1.3;
}

body.de :is(.phone-link, .inspection-console-schedule, .ng-button-primary, .mobile-sticky-cta a:first-child) {
  background: linear-gradient(135deg, var(--ng-green), var(--ng-blue));
  color: #fbfcfa;
}

body.de .inspection-console-schedule {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 10px 16px;
  font-weight: 900;
  text-decoration: none;
}

body.de :is(.mobile-menu-button, a, button, select, input, textarea):focus-visible {
  outline: 3px solid rgba(199, 148, 57, 0.72);
  outline-offset: 3px;
}

body.de .inspection-console-footer-strip {
  grid-template-columns: 112px minmax(0, 1fr) auto;
  gap: 18px;
  align-items: center;
  margin: 18px auto;
  padding: 18px;
}

body.de .inspection-console-footer-strip img {
  width: 112px;
  height: 112px;
  border-radius: 8px;
  object-fit: cover;
  object-position: center 20%;
}

body.de .inspection-console-footer-strip strong {
  display: block;
  margin-top: 5px;
  color: var(--ng-ink);
  font-size: 1.28rem;
  line-height: 1.22;
}

body.de .inspection-console-footer-strip p {
  margin: 8px 0 0;
  color: var(--ng-muted);
}

body.de .inspection-console-footer-strip a {
  justify-content: center;
  min-height: 44px;
  border-radius: 8px;
  background: var(--ng-green);
  color: #fbfcfa;
  font-weight: 900;
  padding: 10px 16px;
  text-decoration: none;
  white-space: nowrap;
}

body.de app-contact-form .report-studio-form-section > span {
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  border-radius: 8px;
  background: rgba(199, 148, 57, 0.18);
  color: var(--ng-green);
  font-weight: 900;
}

body.de .inspection-console-privacy-note {
  border-left: 6px solid var(--ng-gold);
}

body.de .inspection-console-privacy-note a {
  color: var(--ng-blue);
  font-weight: 900;
}

body.de app-contact-form .contact-form-card {
  margin-top: 0;
  border: 1px solid var(--ng-line);
  border-top: 7px solid var(--ng-teal);
  border-radius: 8px;
  background: rgba(251, 252, 250, 0.96);
  box-shadow: var(--ng-shadow);
}

body.de app-contact-form :is(.contact-form-default-copy, .contact-form-field-journal-copy, .contact-form-local-concierge-copy, .contact-form-neighborhood-guide-copy) {
  display: none;
}

body.de app-contact-form span.contact-form-report-studio-copy,
body.de app-contact-form .report-studio-submit-note span {
  display: inline-block;
  color: var(--ng-blue);
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
}

body.de app-contact-form h3.contact-form-report-studio-copy {
  display: block;
}

body.de app-contact-form .form-assurance-row span.contact-form-report-studio-copy {
  display: inline-flex;
}

body.de app-contact-form .contact-form-card form {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 16px;
}

body.de app-contact-form .report-studio-form-progress {
  grid-column: 1/-1;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

body.de app-contact-form :is(.form-assurance-row span, .report-studio-form-progress span) {
  border: 1px solid var(--ng-line);
  border-radius: 8px;
  background: var(--ng-leaf);
  color: var(--ng-blue);
}

body.de app-contact-form .report-studio-form-progress span {
  display: flex;
  align-items: center;
  min-height: 44px;
  padding: 9px 11px;
  font-weight: 900;
}

body.de app-contact-form .report-studio-form-section {
  grid-column: 1/-1;
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  border-top: 1px solid var(--ng-line);
  padding-top: 14px;
}

body.de app-contact-form :is(.form-group:nth-of-type(1), .form-group:nth-of-type(2)) {
  grid-column: span 3;
}

body.de app-contact-form :is(.form-group:nth-of-type(3), .form-group:nth-of-type(4), .form-group:nth-of-type(5), .alert) {
  grid-column: 1/-1;
}

body.de app-contact-form .form-control {
  min-height: 56px;
  border-color: var(--ng-line);
  background: #fff;
}

body.de app-contact-form textarea.form-control {
  min-height: 176px;
}

body.de app-contact-form .form-control:focus {
  border-color: rgba(33, 111, 117, 0.48);
}

body.de app-contact-form .form-control.is-invalid {
  border-color: rgba(157, 67, 59, 0.78);
  background: #fff8f4;
}

body.de app-contact-form :is(.report-studio-field-hint, .report-studio-form-section small) {
  display: block;
  color: var(--ng-muted);
}

body.de app-contact-form .text-danger {
  border-left: 3px solid #9d433b;
  font-weight: 800;
  padding-left: 8px;
}

body.de app-contact-form .report-studio-submit-note {
  display: grid;
  gap: 5px;
  margin-bottom: 14px;
  border-left: 5px solid var(--ng-gold);
  background: var(--ng-leaf);
  padding: 13px;
}

body.de app-contact-form button[type=submit] {
  min-height: 56px;
  width: min(100%, 280px);
}

/* Design E: Inspection Console page system */
body.de {
  --icx-ink: #14201e;
  --icx-muted: #61706b;
  --icx-panel: #fbfcfa;
  --icx-paper: #f2f5f0;
  --icx-mint: #dfece3;
  --icx-line: rgba(20, 32, 30, 0.14);
  --icx-teal: #176d68;
  --icx-rust: #a75532;
  --icx-amber: #c89135;
  --icx-plum: #695178;
  --icx-shadow: 0 20px 46px rgba(20, 32, 30, 0.13);
}

body.de :is(.icx-home-hero,
.icx-telemetry-section,
.icx-readiness-section,
.icx-route-section,
.icx-report-section,
.icx-inspection-hero,
.icx-scope-strip,
.icx-hotspot-section,
.icx-module-section,
.icx-process-section,
.icx-brief-section,
.icx-about-hero,
.icx-mission-section,
.icx-operations-section,
.icx-profile-section,
.icx-credentials-section,
.icx-story-section,
.icx-about-cta,
.icx-contact-hero,
.icx-schedule-section,
.icx-contact-intake-section,
.icx-next-section,
.icx-resources-hero,
.icx-resource-center,
.icx-seasonal-section,
.icx-reference-section) {
  padding: 82px 0;
}

body.de :is(.icx-home-hero, .icx-inspection-hero, .icx-about-hero, .icx-contact-hero, .icx-resources-hero) {
  position: relative;
  overflow: hidden;
  background: linear-gradient(120deg, rgba(251, 252, 250, 0.98), rgba(242, 245, 240, 0.9)), linear-gradient(90deg, rgba(23, 109, 104, 0.12) 1px, transparent 1px), linear-gradient(180deg, rgba(167, 85, 50, 0.1) 1px, transparent 1px);
  background-size: auto, 52px 52px, 52px 52px;
}

body.de :is(.icx-home-shell,
.icx-telemetry-grid,
.icx-readiness-grid,
.icx-route-grid,
.icx-report-grid,
.icx-inspection-hero-grid,
.icx-hotspot-grid,
.icx-module-grid,
.icx-process-grid,
.icx-brief-grid,
.icx-about-hero-grid,
.icx-mission-grid,
.icx-operations-grid,
.icx-profile-grid,
.icx-credentials-grid,
.icx-about-cta-grid,
.icx-contact-hero-grid,
.icx-schedule-grid,
.icx-contact-intake-grid,
.icx-next-grid,
.icx-resources-hero-grid,
.icx-reference-grid) {
  display: grid;
  grid-template-columns: minmax(0, 0.95fr) minmax(360px, 0.78fr);
  align-items: start;
  gap: 34px;
}

body.de :is(.icx-section-head, .icx-hero-copy, .icx-rail-panel) {
  min-width: 0;
}

body.de :is(.icx-section-head h1, .icx-hero-copy h1) {
  max-width: 760px;
  margin: 0;
  color: var(--icx-ink);
  font-size: 4.05rem;
  font-weight: 900;
  line-height: 1.02;
}

body.de :is(.icx-section-head h2, .icx-rail-panel h2, .icx-readiness-panel h2, .icx-about-cta h2) {
  margin: 0;
  color: var(--icx-ink);
  font-size: 2.35rem;
  font-weight: 900;
  line-height: 1.08;
}

body.de :is(.icx-section-head p, .icx-hero-copy p, .icx-rail-panel p, .icx-readiness-panel p) {
  max-width: 660px;
  color: var(--icx-muted);
  line-height: 1.62;
}

body.de :is(.icx-command-stack,
.icx-contact-console,
.icx-scope-console,
.icx-rail-panel,
.icx-signal-panel,
.icx-readiness-panel,
.icx-route-card,
.icx-report-card,
.icx-module-panel,
.icx-brief-card,
.icx-people-console,
.icx-profile-card,
.icx-owner-story,
.icx-about-cta-grid,
.icx-schedule-card,
.icx-form-intro,
.icx-service-panel,
.icx-featured-guide,
.icx-resource-sidebar,
.icx-resource-plan,
.icx-provider-group,
.icx-resource-disclaimer,
.icx-checklist-card) {
  border: 1px solid var(--icx-line);
  border-radius: 8px;
  background: rgba(251, 252, 250, 0.95);
  box-shadow: var(--icx-shadow);
}

body.de :is(.icx-command-stack, .icx-contact-console, .icx-scope-console, .icx-people-console, .icx-service-panel) {
  display: grid;
  gap: 14px;
  padding: 18px;
}

body.de :is(.icx-operator-card, .icx-contact-family) {
  display: grid;
  grid-template-columns: 94px minmax(0, 1fr);
  gap: 14px;
  align-items: center;
}

body.de :is(.icx-operator-card img, .icx-contact-family img) {
  width: 94px;
  height: 94px;
  border-radius: 8px;
  object-fit: cover;
  object-position: center 20%;
}

body.de :is(.icx-operator-card span, .icx-active-signal span, .icx-status-ledger span, .icx-proof-grid span, .icx-module-metrics span, .icx-resource-status span, .icx-resource-steps span, .icx-provider-heading span, .icx-provider-row span, .icx-season-board span, .icx-process-lane span, .icx-contact-family span, .icx-privacy-note span, .icx-phone-block span) {
  color: var(--icx-rust);
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
}

body.de :is(.icx-operator-card strong, .icx-active-signal strong, .icx-phone-block a) {
  display: block;
  color: var(--icx-ink);
  font-size: 1.12rem;
  font-weight: 900;
  text-decoration: none;
}

body.de :is(.icx-operator-card p, .icx-active-signal p, .icx-contact-family p, .icx-privacy-note p) {
  margin: 6px 0 0;
  color: var(--icx-muted);
  line-height: 1.45;
}

body.de .icx-status-ledger {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

body.de .icx-status-ledger :is(article, div),
body.de .icx-proof-grid article,
body.de .icx-signal-grid article {
  border: 1px solid var(--icx-line);
  border-radius: 8px;
  background: #fff;
  padding: 12px;
}

body.de .icx-status-ledger strong,
body.de .icx-proof-grid strong {
  display: block;
  margin-top: 3px;
  color: var(--icx-teal);
  font-size: 1.45rem;
  line-height: 1.1;
}

body.de :is(.icx-active-signal, .icx-report-facts, .icx-privacy-note) {
  border-left: 5px solid var(--icx-amber);
  border-radius: 8px;
  background: rgba(223, 236, 227, 0.72);
  padding: 14px;
}

body.de .icx-inline-ledger {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 24px;
}

body.de .icx-inline-ledger span,
body.de .icx-credential-wall span {
  border: 1px solid var(--icx-line);
  border-radius: 999px;
  background: #fff;
  color: var(--icx-teal);
  font-weight: 850;
  padding: 8px 12px;
}

body.de :is(.icx-vertical-tabs, .icx-route-tabs, .icx-report-tabs, .icx-profile-tabs, .icx-request-tabs, .icx-brief-tabs, .icx-resource-filter) {
  display: grid;
  gap: 10px;
  margin-top: 22px;
}

body.de :is(.icx-vertical-tabs button, .icx-route-tabs button, .icx-report-tabs button, .icx-profile-tabs button, .icx-request-tabs button, .icx-brief-tabs button, .icx-resource-filter button, .icx-readiness-list button, .icx-filter-row button) {
  min-height: 52px;
  border: 1px solid var(--icx-line);
  border-radius: 8px;
  background: #fff;
  color: var(--icx-ink);
  font-weight: 850;
  text-align: left;
  padding: 10px 12px;
}

body.de :is(.icx-filter-row, .icx-brief-tabs, .icx-request-tabs) {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

body.de :is(.icx-vertical-tabs button.is-selected, .icx-route-tabs button.is-selected, .icx-report-tabs button.is-selected, .icx-profile-tabs button.is-selected, .icx-request-tabs button.is-selected, .icx-brief-tabs button.is-selected, .icx-resource-filter button.is-selected, .icx-readiness-list button.is-checked, .icx-filter-row button.is-selected) {
  border-color: rgba(167, 85, 50, 0.55);
  background: var(--icx-mint);
  box-shadow: inset 5px 0 0 var(--icx-rust);
}

body.de :is(.icx-vertical-tabs span, .icx-route-tabs span, .icx-report-tabs span, .icx-readiness-list span, .icx-resource-filter span) {
  display: block;
  color: var(--icx-rust);
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
}

body.de .icx-signal-panel,
body.de .icx-route-card,
body.de .icx-report-card,
body.de .icx-module-panel,
body.de .icx-brief-card,
body.de .icx-profile-card,
body.de .icx-owner-story,
body.de .icx-schedule-card,
body.de .icx-featured-guide {
  display: grid;
  grid-template-columns: minmax(240px, 0.42fr) minmax(0, 1fr);
  gap: 20px;
  padding: 18px;
}

body.de :is(.icx-signal-photo, .icx-module-media, .icx-route-card > img, .icx-report-card > img, .icx-brief-card > img, .icx-profile-card > img, .icx-featured-guide > img) {
  position: relative;
  overflow: hidden;
  min-height: 310px;
  border-radius: 8px;
}

body.de :is(.icx-signal-photo img, .icx-module-media img, .icx-route-card > img, .icx-report-card > img, .icx-brief-card > img, .icx-profile-card > img, .icx-featured-guide > img, .icx-owner-story > img) {
  width: 100%;
  height: 100%;
  min-height: 310px;
  object-fit: cover;
}

body.de :is(.icx-signal-photo span, .icx-module-media span) {
  position: absolute;
  right: 12px;
  bottom: 12px;
  border-radius: 999px;
  background: rgba(20, 32, 30, 0.88);
  color: #fff;
  font-weight: 900;
  padding: 8px 10px;
}

body.de .icx-chip-grid,
body.de .icx-checkpoint-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin: 18px 0;
}

body.de :is(.icx-chip-grid span, .icx-checkpoint-list span) {
  border: 1px solid var(--icx-line);
  border-radius: 8px;
  background: var(--icx-paper);
  padding: 9px 10px;
}

body.de .icx-checkpoint-list small {
  margin-right: 6px;
  color: var(--icx-rust);
  font-weight: 900;
}

body.de .icx-readiness-section,
body.de .icx-process-section,
body.de .icx-mission-section,
body.de .icx-next-section,
body.de .icx-seasonal-section {
  background: #14201e;
  color: #fff;
}

body.de :is(.icx-readiness-section, .icx-process-section, .icx-mission-section, .icx-next-section, .icx-seasonal-section) :is(h2, p, .eyebrow) {
  color: inherit;
}

body.de .icx-meter {
  margin-top: 20px;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.08);
  padding: 18px;
}

body.de .icx-meter strong {
  color: var(--icx-amber);
  font-size: 2rem;
}

body.de .icx-meter div,
body.de .icx-progress-line div {
  height: 10px;
  overflow: hidden;
  margin: 12px 0;
  border-radius: 999px;
  background: rgba(20, 32, 30, 0.12);
}

body.de .icx-meter div {
  background: rgba(255, 255, 255, 0.18);
}

body.de :is(.icx-meter i, .icx-progress-line i) {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--icx-amber), var(--icx-teal));
}

body.de .icx-meter-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 14px;
}

body.de .icx-meter-actions button {
  min-height: 44px;
  border: 1px solid rgba(255, 255, 255, 0.25);
  border-radius: 8px;
  background: #fff;
  color: var(--icx-ink);
  font-weight: 900;
  padding: 9px 14px;
}

body.de .icx-readiness-list {
  display: grid;
  gap: 12px;
}

body.de .icx-route-card dl,
body.de .icx-profile-card dl {
  display: grid;
  gap: 10px;
  margin: 18px 0;
}

body.de .icx-route-card dl div,
body.de .icx-profile-card dl div {
  border-top: 1px solid var(--icx-line);
  padding-top: 10px;
}

body.de :is(.icx-route-card dd, .icx-profile-card dd) {
  margin: 4px 0 0;
  color: var(--icx-ink);
  font-weight: 800;
}

body.de :is(.icx-route-card ol, .icx-report-card ul, .icx-brief-card ol, .icx-schedule-card ol, .icx-profile-card ul, .icx-route-card ul) {
  display: grid;
  gap: 9px;
  margin: 18px 0;
  padding: 0;
  list-style: none;
}

body.de :is(.icx-route-card li, .icx-report-card li, .icx-brief-card li, .icx-schedule-card li) {
  display: flex;
  gap: 10px;
  color: var(--icx-muted);
}

body.de :is(.icx-route-card li span, .icx-brief-card li span, .icx-schedule-card li span) {
  color: var(--icx-rust);
  font-weight: 900;
}

body.de .icx-scope-grid,
body.de .icx-proof-grid,
body.de .icx-signal-grid,
body.de .icx-module-metrics,
body.de .icx-resource-status,
body.de .icx-resource-steps,
body.de .icx-season-board,
body.de .icx-link-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

body.de .icx-scope-grid article,
body.de .icx-module-metrics div,
body.de .icx-resource-status div,
body.de .icx-resource-steps article,
body.de .icx-season-board article,
body.de .icx-link-list a {
  border: 1px solid var(--icx-line);
  border-radius: 8px;
  background: #fff;
  color: var(--icx-ink);
  padding: 14px;
  text-decoration: none;
}

body.de :is(.icx-scope-grid span, .icx-link-list span) {
  color: var(--icx-rust);
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
}

body.de :is(.icx-scope-grid strong, .icx-resource-status strong) {
  display: block;
  color: var(--icx-teal);
  font-size: 1.55rem;
}

body.de .icx-hotspot-grid {
  align-items: center;
}

body.de .icx-house-diagram {
  position: relative;
  min-height: 430px;
  border: 1px solid var(--icx-line);
  border-radius: 8px;
  background: linear-gradient(180deg, rgba(223, 236, 227, 0.72), rgba(255, 255, 255, 0.98)), linear-gradient(90deg, rgba(20, 32, 30, 0.08) 1px, transparent 1px), linear-gradient(180deg, rgba(20, 32, 30, 0.08) 1px, transparent 1px);
  background-size: auto, 34px 34px, 34px 34px;
  box-shadow: var(--icx-shadow);
}

body.de .icx-house-roof {
  position: absolute;
  left: 14%;
  top: 12%;
  width: 72%;
  height: 34%;
  clip-path: polygon(50% 0, 100% 100%, 0 100%);
  background: linear-gradient(135deg, var(--icx-rust), var(--icx-amber));
}

body.de .icx-house-body {
  position: absolute;
  left: 20%;
  top: 42%;
  width: 60%;
  height: 42%;
  border: 1px solid rgba(20, 32, 30, 0.18);
  border-radius: 8px;
  background: var(--icx-panel);
}

body.de .icx-window,
body.de .icx-door,
body.de .icx-foundation {
  position: absolute;
  border: 1px solid rgba(20, 32, 30, 0.18);
  border-radius: 6px;
  background: var(--icx-mint);
}

body.de .icx-window.one {
  left: 14%;
  top: 22%;
  width: 18%;
  height: 22%;
}

body.de .icx-window.two {
  right: 14%;
  top: 22%;
  width: 18%;
  height: 22%;
}

body.de .icx-door {
  left: 43%;
  bottom: 0;
  width: 16%;
  height: 48%;
  background: #fff;
}

body.de .icx-foundation {
  left: -5%;
  bottom: -12px;
  width: 110%;
  height: 18px;
  background: var(--icx-plum);
}

body.de .icx-hotspot {
  position: absolute;
  z-index: 2;
  display: grid;
  place-items: center;
  width: 54px;
  height: 54px;
  transform: translate(-50%, -50%);
  border: 3px solid #fff;
  border-radius: 999px;
  background: var(--icx-teal);
  color: #fff;
  font-weight: 900;
  box-shadow: 0 12px 24px rgba(20, 32, 30, 0.18);
}

body.de .icx-hotspot.is-selected {
  background: var(--icx-rust);
}

body.de .icx-module-grid,
body.de .icx-resource-layout {
  grid-template-columns: minmax(270px, 0.34fr) minmax(0, 1fr);
}

body.de .icx-module-queue,
body.de .icx-resource-sidebar {
  position: sticky;
  top: 108px;
  align-self: start;
}

body.de .icx-module-index {
  display: grid;
  gap: 9px;
  margin-top: 18px;
}

body.de .icx-module-index button {
  min-height: 66px;
  border: 1px solid var(--icx-line);
  border-radius: 8px;
  background: #fff;
  color: var(--icx-ink);
  text-align: left;
  padding: 10px 12px;
}

body.de .icx-module-index button.is-selected {
  border-color: rgba(167, 85, 50, 0.55);
  box-shadow: inset 5px 0 0 var(--icx-rust);
}

body.de .icx-module-index span {
  display: block;
  color: var(--icx-rust);
  font-size: 0.72rem;
  font-weight: 900;
}

body.de .icx-process-lane {
  display: grid;
  gap: 12px;
  margin: 0;
  padding: 0;
  list-style: none;
}

body.de .icx-process-lane li,
body.de .icx-process-lane article {
  display: grid;
  grid-template-columns: 56px minmax(0, 1fr);
  gap: 14px;
  align-items: start;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.08);
  color: #fff;
  padding: 14px;
}

body.de .icx-process-lane span {
  color: var(--icx-amber);
  font-size: 0.9rem;
}

body.de .icx-process-lane p {
  margin: 5px 0 0;
}

body.de .icx-people-console figure {
  position: relative;
  overflow: hidden;
  margin: 0;
  border-radius: 8px;
}

body.de .icx-people-console figure img {
  width: 100%;
  height: 280px;
  object-fit: cover;
  object-position: center 25%;
}

body.de .icx-people-console figcaption {
  position: absolute;
  left: 14px;
  right: 14px;
  bottom: 14px;
  border-radius: 8px;
  background: rgba(20, 32, 30, 0.84);
  color: #fff;
  padding: 13px;
}

body.de .icx-mission-grid {
  grid-template-columns: minmax(0, 0.9fr) minmax(360px, 1fr);
  align-items: stretch;
}

body.de .icx-mission-grid blockquote {
  margin: 0;
  border-left: 6px solid var(--icx-amber);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.08);
  padding: 26px;
}

body.de .icx-mission-grid blockquote p {
  max-width: none;
  margin: 12px 0;
  color: #fff;
  font-size: 1.45rem;
  font-weight: 850;
  line-height: 1.35;
}

body.de .icx-mission-grid cite {
  color: var(--icx-amber);
  font-style: normal;
  font-weight: 900;
}

body.de .icx-credential-wall {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

body.de .icx-story-stack {
  display: grid;
  gap: 24px;
}

body.de .icx-owner-story {
  align-items: stretch;
}

body.de .icx-owner-story > img {
  border-radius: 8px;
  object-position: center 20%;
}

body.de .icx-owner-story.reverse > img {
  grid-column: 2;
}

body.de .icx-owner-story.reverse > div {
  grid-column: 1;
  grid-row: 1;
}

body.de .icx-phone-block {
  display: grid;
  gap: 4px;
  width: min(100%, 360px);
  margin: 24px 0;
  border-left: 6px solid var(--icx-rust);
  border-radius: 8px;
  background: #fff;
  padding: 16px;
  box-shadow: var(--icx-shadow);
}

body.de .icx-phone-block a {
  font-size: 2rem;
}

body.de .icx-schedule-card {
  grid-template-columns: minmax(0, 1fr) minmax(290px, 0.58fr);
}

body.de .icx-calendar-card {
  border: 1px solid var(--icx-line);
  border-radius: 8px;
  background: var(--icx-paper);
  padding: 14px;
}

body.de .icx-calendar-card > span {
  display: block;
  margin-bottom: 10px;
  color: var(--icx-rust);
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
}

body.de .icx-form-intro {
  border-left: 6px solid var(--icx-rust);
  margin-bottom: 18px;
  padding: 18px;
}

body.de .icx-service-panel {
  position: sticky;
  top: 108px;
}

body.de .icx-service-map {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

body.de .icx-service-map span {
  border: 1px solid var(--icx-line);
  border-radius: 999px;
  background: #fff;
  color: var(--icx-teal);
  font-weight: 850;
  padding: 8px 10px;
}

body.de .icx-next-grid {
  grid-template-columns: minmax(0, 0.65fr) minmax(0, 1fr) minmax(260px, 0.44fr);
}

body.de .icx-resource-sidebar {
  padding: 18px;
}

body.de .icx-resource-search {
  display: grid;
  gap: 8px;
  margin: 18px 0 0;
}

body.de .icx-resource-search input {
  width: 100%;
  min-height: 46px;
  border: 1px solid var(--icx-line);
  border-radius: 8px;
  padding: 10px 12px;
}

body.de .icx-resource-filter button {
  display: flex;
  justify-content: space-between;
  width: 100%;
}

body.de .icx-resource-sidebar .clear-filter-button {
  width: 100%;
  min-height: 44px;
  margin-top: 12px;
  border: 1px solid var(--icx-line);
  border-radius: 8px;
  background: var(--icx-ink);
  color: #fff;
  font-weight: 900;
}

body.de .icx-resource-main,
body.de .icx-provider-groups {
  display: grid;
  gap: 18px;
}

body.de :is(.icx-resource-plan, .icx-provider-group, .icx-resource-disclaimer, .icx-checklist-card) {
  padding: 18px;
}

body.de .icx-provider-heading,
body.de .icx-provider-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  align-items: center;
}

body.de .icx-provider-row {
  border-top: 1px solid var(--icx-line);
  padding: 13px 0;
}

body.de .icx-provider-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
}

body.de .icx-provider-actions a,
body.de .icx-provider-actions span {
  display: inline-flex;
  align-items: center;
  min-height: 42px;
  border: 1px solid var(--icx-line);
  border-radius: 8px;
  background: #fff;
  color: var(--icx-teal);
  font-weight: 850;
  padding: 8px 10px;
  text-decoration: none;
}

body.de .icx-link-list a {
  color: var(--icx-ink);
}

body.de .icx-checklist-card ul {
  display: grid;
  gap: 8px;
  margin: 14px 0 0;
  padding: 0;
  list-style: none;
}

body.de .icx-checklist-card li {
  border-top: 1px solid var(--icx-line);
  padding-top: 8px;
}

@media (max-width: 1040px) {
  body.de :is(.icx-home-shell,
  .icx-telemetry-grid,
  .icx-readiness-grid,
  .icx-route-grid,
  .icx-report-grid,
  .icx-inspection-hero-grid,
  .icx-hotspot-grid,
  .icx-module-grid,
  .icx-process-grid,
  .icx-brief-grid,
  .icx-about-hero-grid,
  .icx-mission-grid,
  .icx-operations-grid,
  .icx-profile-grid,
  .icx-credentials-grid,
  .icx-about-cta-grid,
  .icx-contact-hero-grid,
  .icx-schedule-grid,
  .icx-contact-intake-grid,
  .icx-next-grid,
  .icx-resources-hero-grid,
  .icx-resource-layout,
  .icx-reference-grid) {
    grid-template-columns: 1fr;
  }
  body.de :is(.icx-module-queue, .icx-resource-sidebar, .icx-service-panel) {
    position: static;
  }
  body.de :is(.icx-section-head h1, .icx-hero-copy h1) {
    font-size: 3.25rem;
  }
  body.de .icx-scope-grid,
  body.de .icx-proof-grid,
  body.de .icx-signal-grid,
  body.de .icx-module-metrics,
  body.de .icx-resource-status,
  body.de .icx-resource-steps,
  body.de .icx-season-board,
  body.de .icx-link-list {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}
@media (max-width: 720px) {
  body.de :is(.icx-home-hero,
  .icx-telemetry-section,
  .icx-readiness-section,
  .icx-route-section,
  .icx-report-section,
  .icx-inspection-hero,
  .icx-scope-strip,
  .icx-hotspot-section,
  .icx-module-section,
  .icx-process-section,
  .icx-brief-section,
  .icx-about-hero,
  .icx-mission-section,
  .icx-operations-section,
  .icx-profile-section,
  .icx-credentials-section,
  .icx-story-section,
  .icx-about-cta,
  .icx-contact-hero,
  .icx-schedule-section,
  .icx-contact-intake-section,
  .icx-next-section,
  .icx-resources-hero,
  .icx-resource-center,
  .icx-seasonal-section,
  .icx-reference-section) {
    padding: 54px 0;
  }
  body.de :is(.icx-section-head h1, .icx-hero-copy h1) {
    font-size: 2.45rem;
  }
  body.de :is(.icx-section-head h2, .icx-rail-panel h2, .icx-readiness-panel h2, .icx-about-cta h2) {
    font-size: 1.8rem;
  }
  body.de .icx-status-ledger,
  body.de .icx-scope-grid,
  body.de .icx-proof-grid,
  body.de .icx-signal-grid,
  body.de .icx-module-metrics,
  body.de .icx-resource-status,
  body.de .icx-resource-steps,
  body.de .icx-season-board,
  body.de .icx-link-list,
  body.de .icx-chip-grid,
  body.de .icx-checkpoint-list {
    grid-template-columns: 1fr;
  }
  body.de :is(.icx-signal-panel, .icx-route-card, .icx-report-card, .icx-module-panel, .icx-brief-card, .icx-profile-card, .icx-owner-story, .icx-schedule-card, .icx-featured-guide, .icx-provider-heading, .icx-provider-row) {
    grid-template-columns: 1fr;
  }
  body.de :is(.icx-signal-photo, .icx-module-media, .icx-route-card > img, .icx-report-card > img, .icx-brief-card > img, .icx-profile-card > img, .icx-featured-guide > img) {
    min-height: 230px;
  }
  body.de :is(.icx-signal-photo img, .icx-module-media img, .icx-route-card > img, .icx-report-card > img, .icx-brief-card > img, .icx-profile-card > img, .icx-featured-guide > img, .icx-owner-story > img) {
    min-height: 230px;
  }
  body.de .icx-house-diagram {
    min-height: 330px;
  }
  body.de .icx-hotspot {
    width: 44px;
    height: 44px;
    font-size: 0.72rem;
  }
  body.de .icx-owner-story.reverse > img,
  body.de .icx-owner-story.reverse > div {
    grid-column: auto;
    grid-row: auto;
  }
  body.de .icx-phone-block a {
    font-size: 1.45rem;
  }
  body.de .icx-provider-actions {
    justify-content: flex-start;
  }
  body.de .icx-meter-actions button {
    width: 100%;
  }
  body.de .brand-mark small,
  body.de .inspection-console-brand-note {
    display: none;
  }
  body.de app-contact-form :is(.report-studio-form-progress, .contact-form-card form) {
    grid-template-columns: 1fr;
  }
  body.de app-contact-form :is(.form-group:nth-of-type(1), .form-group:nth-of-type(2), .form-group:nth-of-type(3), .form-group:nth-of-type(4), .form-group:nth-of-type(5), .alert) {
    grid-column: 1/-1;
  }
  body.de app-contact-form button[type=submit] {
    width: 100%;
  }
  body.de .inspection-console-footer-strip {
    grid-template-columns: 82px minmax(0, 1fr);
  }
  body.de .inspection-console-footer-strip img {
    width: 82px;
    height: 82px;
  }
  body.de .inspection-console-footer-strip a {
    grid-column: 1/-1;
    width: 100%;
    white-space: normal;
  }
}
body.de {
  --icx-panel-strong: rgba(251, 252, 250, 0.97);
  --icx-panel-soft: rgba(242, 245, 240, 0.88);
  --icx-edge-strong: rgba(20, 32, 30, 0.18);
  --icx-glow: 0 30px 78px rgba(20, 32, 30, 0.16);
}

body.de main,
body.de .site-footer {
  background: linear-gradient(115deg, rgba(199, 148, 57, 0.12) 0 12%, transparent 12% 68%, rgba(33, 111, 117, 0.1) 68% 100%), linear-gradient(180deg, #fbfcfa, #f2f5f0 44%, #edf4f1), repeating-linear-gradient(90deg, transparent 0 58px, rgba(23, 109, 104, 0.06) 59px);
}

body.de :is(.icx-home-hero,
.icx-inspection-hero,
.icx-about-hero,
.icx-contact-hero,
.icx-resources-hero) {
  padding: clamp(126px, 10vw, 166px) 0 clamp(70px, 7vw, 98px);
  background: linear-gradient(112deg, rgba(167, 85, 50, 0.12) 0 18%, transparent 18% 76%, rgba(199, 148, 57, 0.1) 76% 100%), linear-gradient(125deg, rgba(251, 252, 250, 0.99), rgba(223, 236, 227, 0.9)), repeating-linear-gradient(90deg, transparent 0 51px, rgba(23, 109, 104, 0.11) 52px), repeating-linear-gradient(0deg, transparent 0 51px, rgba(167, 85, 50, 0.07) 52px);
}

body.de :is(.icx-home-hero,
.icx-inspection-hero,
.icx-about-hero,
.icx-contact-hero,
.icx-resources-hero)::before {
  position: absolute;
  top: clamp(18px, 3vw, 36px);
  right: clamp(18px, 5vw, 78px);
  width: min(390px, 44vw);
  height: 118px;
  border: 1px solid rgba(23, 109, 104, 0.18);
  border-radius: 8px;
  background: linear-gradient(90deg, rgba(20, 32, 30, 0.86) 0 16px, transparent 16px), linear-gradient(180deg, rgba(199, 148, 57, 0.22) 0 6px, transparent 6px), repeating-linear-gradient(90deg, transparent 0 44px, rgba(23, 109, 104, 0.14) 45px), rgba(251, 252, 250, 0.68);
  box-shadow: 0 18px 34px rgba(20, 32, 30, 0.08);
  content: "";
  opacity: 0.86;
}

body.de :is(.icx-home-hero,
.icx-inspection-hero,
.icx-about-hero,
.icx-contact-hero,
.icx-resources-hero)::after {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 8px;
  background: linear-gradient(90deg, var(--icx-teal), var(--icx-amber), var(--icx-rust), var(--icx-plum));
  content: "";
}

body.de :is(.icx-section-head h1, .icx-hero-copy h1) {
  max-width: 920px;
  font-size: clamp(3.05rem, 6.4vw, 5.35rem);
  line-height: 0.95;
  text-wrap: balance;
}

body.de :is(.icx-section-head p, .icx-hero-copy p, .icx-rail-panel p, .icx-readiness-panel p) {
  max-width: 760px;
}

body.de :is(.mini-label, .icx-inline-ledger span, .icx-credential-wall span) {
  border-color: rgba(167, 85, 50, 0.22);
  border-radius: 999px;
  background: rgba(251, 252, 250, 0.9);
  box-shadow: 0 10px 22px rgba(20, 32, 30, 0.06);
}

body.de :is(.icx-command-stack,
.icx-contact-console,
.icx-scope-console,
.icx-rail-panel,
.icx-signal-panel,
.icx-readiness-panel,
.icx-route-card,
.icx-report-card,
.icx-module-panel,
.icx-brief-card,
.icx-people-console,
.icx-profile-card,
.icx-owner-story,
.icx-about-cta-grid,
.icx-schedule-card,
.icx-form-intro,
.icx-service-panel,
.icx-featured-guide,
.icx-resource-sidebar,
.icx-resource-plan,
.icx-provider-group,
.icx-resource-disclaimer,
.icx-checklist-card) {
  border-color: var(--icx-edge-strong);
  background: linear-gradient(180deg, var(--icx-panel-strong), var(--icx-panel-soft)), repeating-linear-gradient(90deg, transparent 0 42px, rgba(23, 109, 104, 0.045) 43px);
  box-shadow: var(--icx-glow);
}

body.de :is(.icx-signal-panel, .icx-route-card, .icx-report-card, .icx-module-panel, .icx-brief-card, .icx-profile-card, .icx-owner-story, .icx-schedule-card, .icx-featured-guide, .icx-people-console, .icx-command-stack, .icx-contact-console, .icx-scope-console) {
  position: relative;
  overflow: hidden;
}

body.de :is(.icx-signal-panel, .icx-route-card, .icx-report-card, .icx-module-panel, .icx-brief-card, .icx-profile-card, .icx-owner-story, .icx-schedule-card, .icx-featured-guide, .icx-command-stack, .icx-contact-console, .icx-scope-console)::before {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1;
  height: 6px;
  background: linear-gradient(90deg, var(--icx-teal), var(--icx-amber), var(--icx-rust));
  content: "";
}

body.de :is(.icx-operator-card img, .icx-contact-family img, .icx-people-console figure, .icx-signal-photo, .icx-module-media, .icx-route-card > img, .icx-report-card > img, .icx-brief-card > img, .icx-profile-card > img, .icx-featured-guide > img, .icx-owner-story > img) {
  border: 1px solid rgba(20, 32, 30, 0.12);
  box-shadow: 0 16px 34px rgba(20, 32, 30, 0.11);
}

body.de :is(.icx-signal-photo img, .icx-module-media img, .icx-route-card > img, .icx-report-card > img, .icx-brief-card > img, .icx-profile-card > img, .icx-featured-guide > img, .icx-owner-story > img, .icx-people-console figure img) {
  filter: saturate(0.98) contrast(1.04);
}

body.de :is(.icx-signal-photo span, .icx-module-media span, .icx-people-console figcaption) {
  background: linear-gradient(135deg, rgba(20, 32, 30, 0.94), rgba(23, 109, 104, 0.88));
  box-shadow: 0 16px 30px rgba(20, 32, 30, 0.2);
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
}

body.de :is(.icx-status-ledger :is(article, div), .icx-proof-grid article, .icx-signal-grid article, .icx-scope-grid article, .icx-module-metrics div, .icx-resource-status div, .icx-resource-steps article, .icx-season-board article, .icx-link-list a, .icx-chip-grid span, .icx-checkpoint-list span) {
  border-color: var(--icx-edge-strong);
  background: rgba(251, 252, 250, 0.92);
  box-shadow: 0 14px 30px rgba(20, 32, 30, 0.07);
}

body.de :is(.icx-scope-strip, .icx-readiness-section, .icx-process-section, .icx-mission-section, .icx-next-section, .icx-seasonal-section) {
  background: linear-gradient(112deg, transparent 0 58%, rgba(199, 148, 57, 0.18) 58% 100%), linear-gradient(135deg, #14201e, #176d68);
}

body.de :is(.icx-scope-strip, .icx-readiness-section, .icx-process-section, .icx-mission-section, .icx-next-section, .icx-seasonal-section) :is(h2, p, .eyebrow, strong, small) {
  color: #fbfcfa;
}

body.de .icx-scope-grid article {
  border-color: rgba(251, 252, 250, 0.16);
  background: rgba(251, 252, 250, 0.08);
  color: #fbfcfa;
  box-shadow: none;
}

body.de .icx-scope-grid span,
body.de .icx-scope-grid strong {
  color: #e3c172;
}

body.de :is(.icx-vertical-tabs button, .icx-route-tabs button, .icx-report-tabs button, .icx-profile-tabs button, .icx-request-tabs button, .icx-brief-tabs button, .icx-resource-filter button, .icx-readiness-list button, .icx-filter-row button, .icx-module-index button, .icx-meter-actions button, .icx-resource-sidebar .clear-filter-button) {
  border-radius: 8px;
  background: linear-gradient(180deg, rgba(251, 252, 250, 0.98), rgba(223, 236, 227, 0.72));
  box-shadow: 0 10px 22px rgba(20, 32, 30, 0.06);
}

body.de :is(.icx-vertical-tabs button:hover, .icx-route-tabs button:hover, .icx-report-tabs button:hover, .icx-profile-tabs button:hover, .icx-request-tabs button:hover, .icx-brief-tabs button:hover, .icx-resource-filter button:hover, .icx-readiness-list button:hover, .icx-filter-row button:hover, .icx-module-index button:hover, .icx-meter-actions button:hover, .icx-resource-sidebar .clear-filter-button:hover, .icx-vertical-tabs button.is-selected, .icx-route-tabs button.is-selected, .icx-report-tabs button.is-selected, .icx-profile-tabs button.is-selected, .icx-request-tabs button.is-selected, .icx-brief-tabs button.is-selected, .icx-resource-filter button.is-selected, .icx-readiness-list button.is-checked, .icx-filter-row button.is-selected, .icx-module-index button.is-selected) {
  border-color: rgba(167, 85, 50, 0.46);
  background: linear-gradient(135deg, #14201e, #176d68);
  color: #fbfcfa;
  box-shadow: inset 5px 0 0 var(--icx-amber), 0 18px 34px rgba(20, 32, 30, 0.16);
}

body.de :is(.icx-vertical-tabs button:hover span, .icx-route-tabs button:hover span, .icx-report-tabs button:hover span, .icx-resource-filter button:hover span, .icx-module-index button:hover span, .icx-vertical-tabs button.is-selected span, .icx-route-tabs button.is-selected span, .icx-report-tabs button.is-selected span, .icx-resource-filter button.is-selected span, .icx-module-index button.is-selected span, .icx-readiness-list button.is-checked span) {
  color: #e3c172;
}

body.de .icx-house-diagram {
  border-color: var(--icx-edge-strong);
  background: linear-gradient(180deg, rgba(223, 236, 227, 0.78), rgba(251, 252, 250, 0.98)), repeating-linear-gradient(90deg, transparent 0 33px, rgba(23, 109, 104, 0.09) 34px), repeating-linear-gradient(0deg, transparent 0 33px, rgba(167, 85, 50, 0.07) 34px);
  box-shadow: var(--icx-glow);
}

body.de .icx-hotspot {
  border-color: rgba(251, 252, 250, 0.9);
  background: linear-gradient(135deg, var(--icx-teal), var(--icx-plum));
}

body.de .icx-hotspot.is-selected {
  background: linear-gradient(135deg, var(--icx-rust), var(--icx-amber));
  box-shadow: 0 0 0 8px rgba(199, 148, 57, 0.2), 0 14px 28px rgba(20, 32, 30, 0.2);
}

body.de .icx-mission-grid blockquote,
body.de :is(.icx-active-signal, .icx-report-facts, .icx-privacy-note, .icx-form-intro, .icx-phone-block) {
  border-left-color: var(--icx-amber);
  background: linear-gradient(180deg, rgba(251, 252, 250, 0.96), rgba(223, 236, 227, 0.76));
}

body.de .icx-mission-grid blockquote {
  background: rgba(251, 252, 250, 0.1);
  box-shadow: inset 0 0 0 1px rgba(251, 252, 250, 0.12);
}

body.de app-contact-form .contact-form-card {
  border-radius: 8px;
  background: linear-gradient(180deg, rgba(251, 252, 250, 0.99), rgba(242, 245, 240, 0.94)), linear-gradient(135deg, transparent 0 68%, rgba(199, 148, 57, 0.14) 68% 100%);
  box-shadow: var(--icx-glow);
}

body.de app-contact-form .form-control,
body.de .icx-resource-search input {
  border-radius: 8px;
}

body.de app-contact-form .form-control:focus,
body.de .icx-resource-search input:focus {
  border-color: rgba(23, 109, 104, 0.52);
  box-shadow: 0 0 0 4px rgba(199, 148, 57, 0.2);
}

body.de .icx-provider-actions a:hover,
body.de .icx-link-list a:hover {
  border-color: rgba(23, 109, 104, 0.32);
  background: rgba(223, 236, 227, 0.92);
  transform: translateY(-1px);
}

@media (max-width: 720px) {
  body.de :is(.icx-home-hero,
  .icx-inspection-hero,
  .icx-about-hero,
  .icx-contact-hero,
  .icx-resources-hero) {
    padding-top: 138px;
  }
  body.de :is(.icx-section-head h1, .icx-hero-copy h1) {
    font-size: clamp(2.45rem, 10vw, 3.35rem);
  }
}
@media (max-width: 520px) {
  body.de :is(.icx-home-hero,
  .icx-inspection-hero,
  .icx-about-hero,
  .icx-contact-hero,
  .icx-resources-hero) {
    padding-top: 144px;
  }
}
/* Design E concise pass */
body.de :is(.icx-telemetry-section,
.icx-route-section,
.icx-hotspot-section,
.icx-module-section,
.icx-process-section,
.icx-mission-section,
.icx-credentials-section,
.icx-story-section,
.icx-about-cta,
.icx-contact-intake-section,
.icx-next-section,
.icx-resource-center,
.icx-reference-section) {
  padding: clamp(50px, 5.8vw, 74px) 0;
}

body.de .icx-contact-intake-grid {
  grid-template-columns: minmax(0, 820px);
  justify-content: center;
}

body.de .icx-contact-intake-grid .icx-form-column {
  min-width: 0;
}

body.de .icx-contact-intake-section .icx-form-intro {
  margin-bottom: 16px;
  padding: 16px 18px;
}

body.de .icx-contact-intake-section .icx-form-intro h2,
body.de .icx-resource-sidebar h2 {
  font-size: clamp(1.55rem, 2.7vw, 2.05rem);
  line-height: 1.08;
}

body.de .icx-next-grid {
  grid-template-columns: minmax(0, 0.42fr) minmax(0, 1fr);
  gap: 22px;
}

body.de .icx-next-section .icx-section-head h2 {
  font-size: clamp(1.45rem, 2.5vw, 2rem);
}

body.de .icx-contact-intake-section app-contact-form .contact-form-card {
  box-shadow: 0 18px 44px rgba(20, 32, 30, 0.1);
}

body.de .icx-resource-layout {
  display: grid;
  grid-template-columns: minmax(238px, 0.3fr) minmax(0, 1fr);
  align-items: start;
}

body.de .icx-resource-sidebar {
  display: block;
  padding: 18px;
}

body.de .icx-resource-controls {
  grid-template-columns: 1fr;
}

body.de .icx-resource-sidebar .clear-filter-button {
  border-color: rgba(20, 32, 30, 0.24);
  background: linear-gradient(135deg, var(--icx-teal), var(--icx-plum));
  color: #fbfcfa;
}

body.de .icx-resource-summary-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 12px;
  align-items: center;
  border: 1px solid var(--icx-edge-strong);
  border-radius: 8px;
  background: rgba(251, 252, 250, 0.94);
  box-shadow: 0 12px 26px rgba(20, 32, 30, 0.07);
  padding: 12px 14px;
}

body.de .icx-resource-summary-row strong {
  color: var(--icx-teal);
  font-size: 1.1rem;
}

body.de .icx-resource-summary-row span,
body.de .icx-resource-summary-row small {
  color: var(--icx-muted);
  line-height: 1.35;
}

body.de .icx-provider-group {
  padding: 0;
}

body.de .icx-provider-heading {
  grid-template-columns: minmax(0, 1fr) auto auto;
  cursor: pointer;
  list-style: none;
  padding: 16px 18px;
}

body.de .icx-provider-heading::-webkit-details-marker {
  display: none;
}

body.de .icx-provider-heading::after {
  color: var(--icx-rust);
  content: "+";
  font-size: 1.35rem;
  font-weight: 900;
}

body.de .icx-provider-group[open] .icx-provider-heading::after {
  content: "-";
}

body.de .icx-provider-heading p {
  margin: 4px 0 0;
  color: var(--icx-muted);
  line-height: 1.35;
}

body.de .icx-provider-table {
  padding: 0 18px 10px;
}

body.de .icx-provider-row {
  grid-template-columns: minmax(0, 1fr) auto;
  padding: 12px 0;
}

body.de .icx-provider-row small {
  display: block;
  color: var(--icx-muted);
  line-height: 1.35;
}

body.de .icx-story-section .icx-owner-story {
  grid-template-columns: minmax(220px, 0.34fr) minmax(0, 1fr);
}

body.de .icx-story-section .credential-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

body.de .icx-story-section .credential-list span {
  border: 1px solid var(--icx-line);
  border-radius: 999px;
  background: rgba(251, 252, 250, 0.9);
  color: var(--icx-teal);
  font-size: 0.84rem;
  font-weight: 850;
  padding: 7px 10px;
}

@media (max-width: 1040px) {
  body.de .icx-resource-layout,
  body.de .icx-contact-intake-grid,
  body.de .icx-next-grid {
    grid-template-columns: 1fr;
  }
  body.de .icx-resource-sidebar {
    position: static;
  }
}
@media (max-width: 720px) {
  body.de :is(.icx-telemetry-section,
  .icx-route-section,
  .icx-hotspot-section,
  .icx-module-section,
  .icx-process-section,
  .icx-mission-section,
  .icx-credentials-section,
  .icx-story-section,
  .icx-about-cta,
  .icx-contact-intake-section,
  .icx-next-section,
  .icx-resource-center,
  .icx-reference-section) {
    padding: 42px 0;
  }
  body.de .icx-provider-heading {
    grid-template-columns: minmax(0, 1fr) auto auto;
  }
  body.de .icx-provider-row {
    grid-template-columns: 1fr;
  }
  body.de .icx-provider-heading::after {
    justify-self: start;
  }
  body.de .icx-provider-actions {
    justify-content: flex-start;
  }
  body.de .icx-story-section .icx-owner-story {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 1040px) {
  body.dd .site-header {
    grid-template-columns: auto auto;
  }
  body.dd .mobile-menu-button {
    display: block;
    justify-self: end;
  }
  body.dd .primary-nav {
    position: absolute;
    top: calc(100% + 1px);
    right: 16px;
    left: 16px;
    display: none;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    justify-content: stretch;
    border: 1px solid rgba(49, 95, 73, 0.15);
    border-left: 6px solid var(--ng-coral);
    background: rgba(255, 253, 248, 0.99);
    box-shadow: var(--ng-shadow);
    padding: 14px;
  }
  body.dd .primary-nav.is-open {
    display: grid;
  }
  body.dd .primary-nav a {
    justify-content: flex-start;
    width: 100%;
  }
  body.dd .neighborhood-guide-nav-note {
    grid-column: 1/-1;
    max-width: none;
    margin: 6px 0 0;
  }
  body.dd .header-actions {
    grid-column: 1/-1;
    justify-self: stretch;
  }
  body.dd .header-actions .phone-link,
  body.dd .header-actions .neighborhood-guide-schedule {
    flex: 1 1 0;
  }
}
@media (max-width: 720px) {
  body.dd .site-header {
    padding: 10px 14px;
  }
  body.dd .brand-mark {
    gap: 9px;
    padding-right: 0;
  }
  body.dd .brand-mark small,
  body.dd .neighborhood-guide-brand-note {
    display: none;
  }
  body.dd .brand-mark img {
    width: 64px;
    height: 46px;
  }
  body.dd .brand-mark strong {
    font-size: 0.95rem;
  }
  body.dd .primary-nav {
    grid-template-columns: 1fr;
    right: 10px;
    left: 10px;
  }
  body.dd .neighborhood-guide-footer-strip {
    grid-template-columns: 82px minmax(0, 1fr);
  }
  body.dd .neighborhood-guide-footer-strip img {
    width: 82px;
    height: 82px;
  }
  body.dd .neighborhood-guide-footer-strip strong {
    font-size: 1.12rem;
  }
  body.dd .neighborhood-guide-footer-strip a {
    grid-column: 1/-1;
    width: 100%;
    white-space: normal;
  }
}
body.dc :is(.rsx-home-hero,
.rsx-inspection-hero,
.rsx-about-hero,
.rsx-contact-hero,
.rsx-resource-hero) {
  position: relative;
  overflow: hidden;
  padding: clamp(54px, 7vw, 88px) 0 clamp(46px, 6vw, 76px);
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.98), rgba(234, 242, 246, 0.94)), repeating-linear-gradient(90deg, transparent 0, transparent 78px, rgba(36, 79, 120, 0.075) 79px), linear-gradient(180deg, rgba(198, 161, 91, 0.15), transparent 42%);
}

body.dc :is(.rsx-case-section,
.rsx-system-section,
.rsx-report-section,
.rsx-family-band,
.rsx-report-preview-section,
.rsx-accordion-section,
.rsx-client-brief-section,
.rsx-build-section,
.rsx-tools-section,
.rsx-founder-section,
.rsx-profile-section,
.rsx-local-section,
.rsx-gallery-section,
.rsx-calendar-section,
.rsx-intake-section,
.rsx-next-section,
.rsx-prep-section,
.rsx-library-section,
.rsx-glossary-section,
.rsx-faq-section,
.rsx-checklist-section,
.rsx-reference-section,
.rsx-page-cta) {
  position: relative;
  overflow: hidden;
  padding: clamp(52px, 7vw, 76px) 0;
}

body.dc :is(.rsx-system-section,
.rsx-client-brief-section,
.rsx-founder-section,
.rsx-local-section,
.rsx-next-section,
.rsx-glossary-section,
.rsx-reference-section) {
  background: linear-gradient(180deg, rgba(234, 242, 246, 0.84), rgba(244, 247, 251, 0.96)), repeating-linear-gradient(0deg, transparent 0, transparent 62px, rgba(15, 118, 110, 0.07) 63px);
}

body.dc :is(.rsx-report-section,
.rsx-accordion-section,
.rsx-profile-section,
.rsx-intake-section,
.rsx-library-section,
.rsx-checklist-section) {
  background: rgba(255, 255, 255, 0.72);
}

body.dc :is(.rsx-home-hero-grid,
.rsx-inspection-hero-grid,
.rsx-about-hero-grid,
.rsx-contact-hero-grid,
.rsx-resource-hero-grid,
.rsx-case-grid,
.rsx-system-grid,
.rsx-report-grid,
.rsx-family-grid,
.rsx-report-workbench,
.rsx-accordion-grid,
.rsx-client-brief-grid,
.rsx-build-grid,
.rsx-tools-grid,
.rsx-founder-grid,
.rsx-profile-grid,
.rsx-local-grid,
.rsx-calendar-grid,
.rsx-intake-grid,
.rsx-prep-grid,
.rsx-resource-hero-grid,
.rsx-library-grid,
.rsx-glossary-grid,
.rsx-faq-grid,
.rsx-checklist-grid,
.rsx-page-cta-grid) {
  display: grid;
  gap: clamp(22px, 4vw, 42px);
  align-items: start;
}

body.dc :is(.rsx-home-hero-grid, .rsx-inspection-hero-grid, .rsx-about-hero-grid, .rsx-contact-hero-grid, .rsx-resource-hero-grid) {
  grid-template-columns: minmax(0, 0.92fr) minmax(360px, 0.68fr);
  align-items: center;
}

body.dc :is(.rsx-case-grid, .rsx-founder-grid, .rsx-profile-grid, .rsx-intake-grid, .rsx-library-grid) {
  grid-template-columns: minmax(280px, 0.44fr) minmax(0, 1fr);
}

body.dc :is(.rsx-system-grid, .rsx-report-grid, .rsx-client-brief-grid, .rsx-build-grid, .rsx-tools-grid, .rsx-local-grid, .rsx-calendar-grid, .rsx-prep-grid, .rsx-glossary-grid, .rsx-faq-grid, .rsx-checklist-grid, .rsx-family-grid, .rsx-page-cta-grid) {
  grid-template-columns: minmax(0, 0.72fr) minmax(0, 1fr);
  align-items: center;
}

body.dc .rsx-report-workbench {
  grid-template-columns: minmax(250px, 0.34fr) minmax(0, 1fr);
  align-items: stretch;
}

body.dc :is(.rsx-home-hero h1,
.rsx-inspection-hero h1,
.rsx-about-hero h1,
.rsx-contact-hero h1,
.rsx-resource-hero h1) {
  max-width: 780px;
  margin: 0;
  color: var(--ng-ink);
  font-size: clamp(2.45rem, 6vw, 4.85rem);
  font-weight: 950;
  letter-spacing: 0;
  line-height: 0.98;
}

body.dc :is(.rsx-case-section h2,
.rsx-system-section h2,
.rsx-report-section h2,
.rsx-family-band h2,
.rsx-report-preview-section h2,
.rsx-accordion-section h2,
.rsx-client-brief-section h2,
.rsx-build-section h2,
.rsx-tools-section h2,
.rsx-founder-section h2,
.rsx-profile-section h2,
.rsx-local-section h2,
.rsx-gallery-section h2,
.rsx-calendar-section h2,
.rsx-intake-section h2,
.rsx-next-section h2,
.rsx-prep-section h2,
.rsx-library-section h2,
.rsx-glossary-section h2,
.rsx-faq-section h2,
.rsx-checklist-section h2,
.rsx-reference-section h2,
.rsx-page-cta h2) {
  margin: 0;
  color: var(--ng-ink);
  font-size: clamp(1.85rem, 4vw, 3.15rem);
  letter-spacing: 0;
  line-height: 1.04;
}

body.dc :is(.rsx-file-label, .mini-label) {
  display: inline-flex;
  width: -moz-fit-content;
  width: fit-content;
  max-width: 100%;
  min-height: 32px;
  align-items: center;
  border: 1px solid rgba(36, 79, 120, 0.16);
  border-left: 5px solid var(--ng-teal);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.82);
  color: var(--ng-blue);
  font-size: 0.72rem;
  font-weight: 900;
  letter-spacing: 0;
  padding: 6px 10px;
  text-transform: uppercase;
}

body.dc :is(.rsx-home-copy, .rsx-case-index, .rsx-system-copy, .rsx-report-grid > div:first-child, .rsx-inspection-hero-grid > div:first-child, .rsx-scope-head, .rsx-accordion-grid > div:first-child, .rsx-client-brief-grid > aside, .rsx-build-grid > div:first-child, .rsx-about-hero-grid > div:first-child, .rsx-tools-grid > div:first-child, .rsx-founder-grid > aside, .rsx-profile-grid > div:first-child, .rsx-calendar-grid > div:first-child, .rsx-form-intro, .rsx-prep-grid > div:first-child, .rsx-library-sidebar, .rsx-glossary-grid > div:first-child, .rsx-faq-grid > div:first-child, .rsx-checklist-grid > div:first-child, .rsx-section-heading) {
  display: grid;
  align-content: start;
  gap: 16px;
}

body.dc :is(.rsx-home-hero p, .rsx-inspection-hero p, .rsx-about-hero p, .rsx-contact-hero p, .rsx-resource-hero p, .rsx-case-section p, .rsx-system-section p, .rsx-report-section p, .rsx-family-band p, .rsx-report-preview-section p, .rsx-accordion-section p, .rsx-client-brief-section p, .rsx-build-section p, .rsx-tools-section p, .rsx-founder-section p, .rsx-profile-section p, .rsx-local-section p, .rsx-gallery-section p, .rsx-calendar-section p, .rsx-intake-section p, .rsx-next-section p, .rsx-prep-section p, .rsx-library-section p, .rsx-glossary-section p, .rsx-faq-section p, .rsx-checklist-section p, .rsx-reference-section p, .rsx-page-cta p) {
  margin: 0;
  color: var(--ng-muted);
  line-height: 1.62;
}

body.dc :is(.rsx-trust-row, .resource-hero-cues, .rsx-chip-row, .rsx-service-map, .rsx-filter-row, .rsx-report-tabs, .rsx-brief-tabs, .request-tabs, .rsx-category-tabs) {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
}

body.dc :is(.rsx-trust-row span, .resource-hero-cues span, .rsx-chip-row span, .rsx-service-map span) {
  display: inline-flex;
  align-items: center;
  min-height: 36px;
  border: 1px solid rgba(36, 79, 120, 0.16);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.86);
  color: var(--ng-blue);
  font-size: 0.82rem;
  font-weight: 850;
  line-height: 1.25;
  padding: 7px 11px;
}

body.dc :is(.rsx-report-window,
.rsx-case-index,
.rsx-case-viewer,
.rsx-report-page,
.rsx-inspector-file,
.rsx-sample-report,
.rsx-client-brief,
.rsx-about-portrait,
.rsx-route-file,
.rsx-owner-card,
.rsx-contact-file,
.rsx-calendar-card,
.rsx-request-planner,
.rsx-request-card,
.rsx-privacy-note,
.rsx-featured-guide,
.rsx-library-sidebar,
.rsx-resource-plan,
.empty-resource-state) {
  min-width: 0;
  border: 1px solid rgba(17, 24, 39, 0.14);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.92);
  box-shadow: var(--ng-shadow);
}

body.dc :is(.rsx-report-window, .rsx-case-index, .rsx-report-page, .rsx-sample-body, .rsx-client-brief, .rsx-request-planner, .rsx-privacy-note, .rsx-library-sidebar, .rsx-resource-plan, .empty-resource-state) {
  display: grid;
  gap: 15px;
  padding: clamp(18px, 3vw, 24px);
}

body.dc :is(.rsx-report-window img, .rsx-case-viewer img, .rsx-system-photo img, .rsx-report-page img, .rsx-family-grid img, .rsx-inspector-file img, .rsx-sample-cover img, .rsx-route-file img, .rsx-owner-card img, .rsx-about-portrait img, .rsx-gallery-grid img, .rsx-contact-file img, .rsx-request-card img, .rsx-featured-guide img) {
  display: block;
  width: 100%;
  object-fit: cover;
}

body.dc .rsx-window-bar {
  display: grid;
  grid-template-columns: 12px 12px 12px minmax(0, 1fr);
  gap: 8px;
  align-items: center;
  border-bottom: 1px solid rgba(36, 79, 120, 0.14);
  padding-bottom: 12px;
}

body.dc .rsx-window-bar span {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: var(--ng-coral);
}

body.dc .rsx-window-bar span:nth-child(2) {
  background: var(--ng-gold);
}

body.dc .rsx-window-bar span:nth-child(3) {
  background: var(--ng-teal);
}

body.dc .rsx-window-bar strong {
  justify-self: end;
  color: var(--ng-blue);
  font-size: 0.76rem;
  text-transform: uppercase;
}

body.dc :is(.rsx-owner-evidence, .rsx-about-portrait, .rsx-system-photo, .rsx-sample-cover) {
  position: relative;
  display: grid;
  overflow: hidden;
  margin: 0;
  border-radius: 8px;
}

body.dc .rsx-owner-evidence img {
  height: 330px;
  object-position: center 18%;
}

body.dc :is(.rsx-owner-evidence > div, .rsx-about-portrait figcaption, .rsx-system-photo figcaption, .rsx-sample-cover > div) {
  position: absolute;
  right: 14px;
  bottom: 14px;
  left: 14px;
  display: grid;
  gap: 4px;
  border-left: 6px solid var(--ng-gold);
  border-radius: 8px;
  background: rgba(17, 24, 39, 0.84);
  color: #ffffff;
  padding: 14px;
}

body.dc :is(.rsx-owner-evidence span, .rsx-about-portrait span, .rsx-system-photo figcaption, .rsx-sample-cover span) {
  color: #e2c782;
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
}

body.dc :is(.rsx-owner-evidence strong, .rsx-about-portrait strong, .rsx-sample-cover strong) {
  color: #ffffff;
  font-size: 1.18rem;
  line-height: 1.2;
}

body.dc .rsx-stat-ledger,
body.dc .rsx-scope-ledger .site-container,
body.dc .rsx-credential-grid,
body.dc .rsx-resource-dashboard {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
}

body.dc :is(.rsx-stat-ledger article, .rsx-scope-ledger article, .rsx-credential-grid article, .rsx-resource-dashboard div) {
  display: grid;
  gap: 7px;
  min-width: 0;
  border: 1px solid rgba(36, 79, 120, 0.14);
  border-left: 5px solid var(--ng-teal);
  border-radius: 8px;
  background: rgba(244, 247, 251, 0.86);
  padding: 15px;
}

body.dc :is(.rsx-stat-ledger span, .rsx-scope-ledger span, .rsx-credential-grid span, .rsx-resource-dashboard span, .rsx-resource-plan span, .rsx-provider-group header span, .rsx-provider-table article > div > span, .rsx-next-steps article > span, .rsx-build-steps article > span, .rsx-resource-steps article > span, .rsx-detail-list span, .rsx-value-list article > span) {
  color: var(--ng-blue);
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
}

body.dc :is(.rsx-stat-ledger strong, .rsx-scope-ledger strong, .rsx-credential-grid strong, .rsx-resource-dashboard strong) {
  color: var(--ng-blue);
  font-size: clamp(1.55rem, 3vw, 2.25rem);
  line-height: 1;
}

body.dc :is(.rsx-file-tabs, .rsx-profile-tabs, .rsx-system-index) {
  display: grid;
  gap: 10px;
}

body.dc :is(.rsx-file-tabs button, .rsx-profile-tabs button, .rsx-system-index button, .rsx-filter-row button, .rsx-report-tabs button, .rsx-brief-tabs button, .request-tabs button, .rsx-category-tabs button, .rsx-glossary-list button) {
  min-width: 0;
  border: 1px solid rgba(36, 79, 120, 0.15);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.88);
  color: var(--ng-ink);
  cursor: pointer;
  font-weight: 850;
  line-height: 1.25;
  padding: 11px 13px;
  text-align: left;
  transition: background 160ms ease, border-color 160ms ease, color 160ms ease, transform 160ms ease;
  overflow-wrap: anywhere;
}

body.dc :is(.rsx-file-tabs button:hover, .rsx-profile-tabs button:hover, .rsx-system-index button:hover, .rsx-filter-row button:hover, .rsx-report-tabs button:hover, .rsx-brief-tabs button:hover, .request-tabs button:hover, .rsx-category-tabs button:hover, .rsx-glossary-list button:hover, .rsx-file-tabs button.is-selected, .rsx-profile-tabs button.is-selected, .rsx-system-index button.is-selected, .rsx-filter-row button.is-selected, .rsx-report-tabs button.is-selected, .rsx-brief-tabs button.is-selected, .request-tabs button.is-selected, .rsx-category-tabs button.is-selected, .rsx-glossary-list button.is-selected) {
  border-color: rgba(15, 118, 110, 0.32);
  background: rgba(229, 240, 237, 0.94);
  color: var(--ng-blue);
  transform: translateY(-1px);
}

body.dc :is(.rsx-file-tabs button span, .rsx-profile-tabs button span, .rsx-system-index button span, .rsx-report-tabs button span, .rsx-category-tabs button span) {
  display: block;
  color: var(--ng-teal);
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
}

body.dc :is(.rsx-case-viewer, .rsx-inspector-file, .rsx-route-file, .rsx-owner-card, .rsx-contact-file, .rsx-featured-guide, .rsx-request-card) {
  display: grid;
  overflow: hidden;
}

body.dc .rsx-case-viewer header,
body.dc .rsx-case-viewer footer,
body.dc :is(.rsx-case-body, .rsx-inspector-file > div, .rsx-route-file > div, .rsx-owner-card > div, .rsx-contact-file > div, .rsx-featured-guide > div, .rsx-request-card > div) {
  display: grid;
  gap: 14px;
  padding: clamp(18px, 3vw, 24px);
}

body.dc :is(.rsx-case-viewer img, .rsx-route-file img, .rsx-owner-card img, .rsx-contact-file img, .rsx-featured-guide img, .rsx-request-card img) {
  height: clamp(230px, 36vw, 340px);
}

body.dc :is(.rsx-case-viewer h3, .rsx-report-page h3, .rsx-route-file h3, .rsx-owner-card h3, .rsx-resource-plan h3) {
  margin: 0;
  color: var(--ng-ink);
  font-size: clamp(1.55rem, 3vw, 2.15rem);
  line-height: 1.1;
}

body.dc :is(.rsx-case-viewer dl, .rsx-report-page dl, .rsx-sample-body dl, .rsx-owner-card dl, .rsx-provider-table dl) {
  display: grid;
  gap: 10px;
  margin: 0;
}

body.dc :is(.rsx-case-viewer dl div, .rsx-report-page dl div, .rsx-sample-body dl div, .rsx-owner-card dl div, .rsx-provider-table dl div) {
  border-left: 4px solid var(--ng-gold);
  background: rgba(244, 247, 251, 0.78);
  padding: 10px 12px;
}

body.dc :is(dt, dd) {
  margin: 0;
}

body.dc :is(.rsx-case-viewer dt, .rsx-report-page dt, .rsx-sample-body dt, .rsx-owner-card dt, .rsx-provider-table dt) {
  color: var(--ng-blue);
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
}

body.dc :is(.rsx-case-viewer dd, .rsx-report-page dd, .rsx-sample-body dd, .rsx-owner-card dd, .rsx-provider-table dd) {
  color: var(--ng-ink);
  line-height: 1.4;
}

body.dc :is(.rsx-case-viewer ol, .rsx-inspector-file ol, .rsx-request-card ol, .rsx-build-steps, .rsx-next-steps, .rsx-resource-steps, .rsx-route-file ul, .rsx-owner-card ul, .rsx-checklist-grid ul) {
  display: grid;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

body.dc :is(.rsx-case-viewer li, .rsx-inspector-file li, .rsx-request-card li, .rsx-route-file li, .rsx-owner-card li, .rsx-checklist-grid li) {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 10px;
  align-items: start;
  color: var(--ng-muted);
  line-height: 1.45;
}

body.dc :is(.rsx-case-viewer li span, .rsx-inspector-file li span, .rsx-request-card li span, .rsx-next-steps article > span, .rsx-build-steps article > span, .rsx-resource-steps article > span, .rsx-detail-list span, .rsx-value-list article > span) {
  display: inline-grid;
  place-items: center;
  width: 32px;
  height: 32px;
  border-radius: 8px;
  background: rgba(15, 118, 110, 0.14);
  color: var(--ng-teal);
  font-weight: 900;
}

body.dc :is(.rsx-route-file li, .rsx-owner-card li, .rsx-checklist-grid li) {
  grid-template-columns: 12px minmax(0, 1fr);
}

body.dc :is(.rsx-route-file li::before, .rsx-owner-card li::before, .rsx-checklist-grid li::before) {
  width: 8px;
  height: 8px;
  margin-top: 8px;
  border-radius: 50%;
  background: var(--ng-teal);
  content: "";
}

body.dc .rsx-evidence-strip {
  position: relative;
  z-index: 1;
  background: linear-gradient(90deg, #ffffff, rgba(234, 242, 246, 0.94));
  border-top: 1px solid rgba(17, 24, 39, 0.1);
  border-bottom: 1px solid rgba(17, 24, 39, 0.1);
}

body.dc .rsx-evidence-strip .site-container {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  padding-top: 16px;
  padding-bottom: 16px;
}

body.dc .rsx-evidence-strip button {
  min-height: 96px;
  border: 1px solid rgba(36, 79, 120, 0.14);
  border-left: 5px solid var(--ng-teal);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.9);
  color: var(--ng-ink);
  cursor: pointer;
  padding: 13px;
  text-align: left;
}

body.dc .rsx-evidence-strip button.is-selected {
  background: linear-gradient(135deg, var(--ng-blue), var(--ng-teal));
  color: #ffffff;
}

body.dc .rsx-evidence-strip span,
body.dc .rsx-evidence-strip small {
  display: block;
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
}

body.dc .rsx-system-photo img {
  min-height: 420px;
  height: 100%;
}

body.dc .rsx-system-copy blockquote,
body.dc .rsx-local-grid blockquote {
  margin: 0;
  border-left: 7px solid var(--ng-gold);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.88);
  color: var(--ng-ink);
  font-size: clamp(1.25rem, 2.6vw, 1.8rem);
  font-weight: 800;
  line-height: 1.25;
  padding: clamp(18px, 3vw, 28px);
}

body.dc .rsx-report-page {
  border-top: 7px solid var(--ng-blue);
}

body.dc .rsx-report-page-header {
  display: flex;
  gap: 10px;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid rgba(36, 79, 120, 0.14);
  padding-bottom: 12px;
}

body.dc .rsx-report-page-header span {
  color: var(--ng-blue);
  font-size: 0.78rem;
  font-weight: 900;
  text-transform: uppercase;
}

body.dc .rsx-report-page-header strong {
  color: var(--ng-ink);
  text-align: right;
}

body.dc .rsx-report-page img {
  height: 260px;
  border-radius: 8px;
}

body.dc .rsx-family-grid img {
  height: 420px;
  border-radius: 8px;
  box-shadow: var(--ng-shadow);
  object-position: center 30%;
}

body.dc .rsx-scope-ledger,
body.dc .rsx-credential-section {
  padding: 0;
  background: #ffffff;
}

body.dc .rsx-scope-ledger .site-container,
body.dc .rsx-credential-grid {
  padding-top: 18px;
  padding-bottom: 18px;
}

body.dc .rsx-scope-head {
  grid-template-columns: minmax(0, 1fr) minmax(240px, 0.36fr);
  align-items: end;
  margin-bottom: 18px;
}

body.dc .rsx-scope-head aside {
  border: 1px solid rgba(36, 79, 120, 0.14);
  border-left: 5px solid var(--ng-teal);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.9);
  padding: 16px;
}

body.dc .rsx-system-index {
  max-height: 760px;
  overflow: auto;
  padding-right: 4px;
}

body.dc .rsx-system-index button {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 10px;
}

body.dc .rsx-system-index em {
  color: var(--ng-muted);
  font-size: 0.78rem;
  font-style: normal;
}

body.dc .rsx-sample-report {
  grid-template-columns: minmax(280px, 0.42fr) minmax(0, 1fr);
}

body.dc .rsx-sample-cover img {
  min-height: 100%;
  height: 100%;
}

body.dc .scope-progress {
  display: grid;
  gap: 7px;
}

body.dc .scope-progress div {
  height: 11px;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(36, 79, 120, 0.12);
}

body.dc .scope-progress i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--ng-gold), var(--ng-teal));
}

body.dc .rsx-explain-row,
body.dc .rsx-signal-list,
body.dc .rsx-value-list,
body.dc .rsx-calendar-card,
body.dc .rsx-detail-list,
body.dc .rsx-shortlist,
body.dc .rsx-link-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

body.dc :is(.rsx-explain-row article, .rsx-signal-list article, .rsx-value-list article, .rsx-calendar-card div, .rsx-detail-list div, .rsx-shortlist article, .rsx-link-list a) {
  display: grid;
  gap: 8px;
  min-width: 0;
  border: 1px solid rgba(36, 79, 120, 0.14);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.86);
  color: var(--ng-ink);
  padding: 15px;
  text-decoration: none;
}

body.dc .rsx-calendar-card {
  grid-template-columns: repeat(7, minmax(0, 1fr));
  padding: 14px;
}

body.dc .rsx-calendar-card div {
  min-height: 112px;
  border-left: 5px solid var(--ng-teal);
}

body.dc .rsx-calendar-card .is-closed {
  border-left-color: var(--ng-coral);
  background: rgba(255, 248, 244, 0.96);
}

body.dc :is(.rsx-system-accordion, .rsx-glossary-list, .rsx-faq-list) {
  display: grid;
  gap: 12px;
}

body.dc :is(.rsx-system-accordion details, .rsx-glossary-list details, .rsx-faq-list details, .rsx-provider-group) {
  overflow: hidden;
  border: 1px solid rgba(36, 79, 120, 0.14);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.9);
  box-shadow: 0 12px 26px rgba(15, 23, 42, 0.07);
}

body.dc :is(.rsx-system-accordion summary, .rsx-glossary-list summary, .rsx-faq-list summary) {
  display: grid;
  gap: 5px;
  cursor: pointer;
  color: var(--ng-ink);
  font-weight: 900;
  list-style: none;
  padding: 17px;
}

body.dc :is(.rsx-system-accordion summary::-webkit-details-marker, .rsx-glossary-list summary::-webkit-details-marker, .rsx-faq-list summary::-webkit-details-marker) {
  display: none;
}

body.dc :is(.rsx-system-accordion details > div, .rsx-glossary-list details > div, .rsx-faq-list details > p) {
  border-top: 1px solid rgba(36, 79, 120, 0.12);
  padding: 17px;
}

body.dc .rsx-system-accordion ul {
  columns: 2;
  gap: 24px;
  margin: 10px 0 0;
  padding-left: 20px;
}

body.dc .panel-actions,
body.dc .hero-actions,
body.dc .rsx-provider-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
}

body.dc .panel-actions > *,
body.dc .rsx-provider-actions > * {
  flex: 1 1 180px;
  justify-content: center;
}

body.dc .rsx-build-steps article,
body.dc .rsx-next-steps article,
body.dc .rsx-resource-steps article {
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr);
  gap: 12px;
  align-items: start;
  border: 1px solid rgba(36, 79, 120, 0.14);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.9);
  padding: 15px;
}

body.dc .rsx-about-portrait img {
  height: 520px;
  object-position: center 18%;
}

body.dc .rsx-route-file,
body.dc .rsx-owner-card {
  grid-template-columns: minmax(260px, 0.44fr) minmax(0, 1fr);
}

body.dc :is(.rsx-route-file img, .rsx-owner-card img) {
  height: 100%;
  min-height: 420px;
}

body.dc .rsx-local-grid blockquote span {
  display: block;
  margin-bottom: 10px;
  color: var(--ng-blue);
  font-size: 0.72rem;
  text-transform: uppercase;
}

body.dc .rsx-gallery-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}

body.dc .rsx-gallery-grid article {
  display: grid;
  overflow: hidden;
  border: 1px solid rgba(17, 24, 39, 0.14);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.92);
  box-shadow: var(--ng-shadow);
}

body.dc .rsx-gallery-grid img {
  height: 360px;
  object-position: center 16%;
}

body.dc .rsx-gallery-grid article > div {
  display: grid;
  gap: 13px;
  padding: clamp(18px, 3vw, 24px);
}

body.dc .rsx-page-cta-grid {
  border: 1px solid rgba(17, 24, 39, 0.14);
  border-left: 8px solid var(--ng-teal);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.92);
  box-shadow: var(--ng-shadow);
  padding: clamp(20px, 4vw, 34px);
}

body.dc .rsx-contact-file img {
  height: 360px;
  object-position: center 20%;
}

body.dc .rsx-contact-file p {
  overflow-wrap: anywhere;
}

body.dc .rsx-request-card img {
  height: 210px;
}

body.dc .rsx-request-planner {
  position: sticky;
  top: 118px;
  align-self: start;
}

body.dc .rsx-service-map,
body.dc .rsx-detail-list {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.dc app-contact-form .contact-form-card {
  margin-top: 0;
  border: 1px solid rgba(17, 24, 39, 0.14);
  border-top: 7px solid var(--ng-teal);
  border-radius: 8px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(244, 247, 251, 0.96)), repeating-linear-gradient(90deg, transparent 0, transparent 66px, rgba(36, 79, 120, 0.05) 67px);
  box-shadow: var(--ng-shadow);
}

body.dc app-contact-form :is(.contact-form-default-copy, .contact-form-field-journal-copy, .contact-form-local-concierge-copy, .contact-form-neighborhood-guide-copy, .field-journal-form-progress, .local-concierge-form-progress, .field-journal-form-section, .local-concierge-form-section, .field-journal-field-hint, .local-concierge-field-hint, .local-concierge-submit-note) {
  display: none;
}

body.dc app-contact-form :is(span.contact-form-report-studio-copy, h3.contact-form-report-studio-copy, .form-assurance-row span.contact-form-report-studio-copy, .report-studio-form-progress, .report-studio-form-section, .report-studio-field-hint, .report-studio-submit-note) {
  display: grid;
}

body.dc app-contact-form span.contact-form-report-studio-copy,
body.dc app-contact-form .form-assurance-row span.contact-form-report-studio-copy,
body.dc app-contact-form .report-studio-field-hint {
  display: inline-flex;
}

body.dc app-contact-form .contact-form-heading {
  display: grid;
  gap: 12px;
  border-bottom: 1px solid rgba(36, 79, 120, 0.13);
  margin-bottom: 18px;
  padding-bottom: 18px;
}

body.dc app-contact-form .contact-form-heading h3 {
  margin: 0;
  color: var(--ng-ink);
  font-size: clamp(1.4rem, 2.8vw, 2.05rem);
  line-height: 1.12;
}

body.dc app-contact-form .contact-form-heading p,
body.dc app-contact-form .small.text-muted,
body.dc app-contact-form .report-studio-field-hint {
  color: var(--ng-muted);
  line-height: 1.55;
}

body.dc app-contact-form .form-assurance-row,
body.dc app-contact-form .report-studio-form-progress {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 8px;
}

body.dc app-contact-form :is(.form-assurance-row span, .report-studio-form-progress span) {
  align-items: center;
  min-height: 42px;
  border: 1px solid rgba(36, 79, 120, 0.16);
  border-radius: 8px;
  background: rgba(234, 242, 246, 0.82);
  color: var(--ng-blue);
  font-size: 0.78rem;
  font-weight: 900;
  padding: 8px 10px;
}

body.dc app-contact-form .contact-form-card form {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 16px;
}

body.dc app-contact-form :is(.report-studio-form-progress, .report-studio-form-section, .form-group:nth-of-type(3), .form-group:nth-of-type(4), .form-group:nth-of-type(5), .alert) {
  grid-column: 1/-1;
}

body.dc app-contact-form .form-group:nth-of-type(1),
body.dc app-contact-form .form-group:nth-of-type(2) {
  grid-column: span 3;
}

body.dc app-contact-form .report-studio-form-section {
  grid-template-columns: 44px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  border-top: 1px solid rgba(36, 79, 120, 0.13);
  padding-top: 14px;
}

body.dc app-contact-form .report-studio-form-section > span {
  display: grid;
  place-items: center;
  width: 42px;
  height: 42px;
  border-radius: 8px;
  background: rgba(15, 118, 110, 0.14);
  color: var(--ng-teal);
  font-weight: 900;
}

body.dc app-contact-form :is(.report-studio-form-section strong, .report-studio-submit-note strong, .control-label) {
  color: var(--ng-ink);
}

body.dc app-contact-form .form-control {
  min-height: 56px;
  border: 1px solid rgba(36, 79, 120, 0.16);
  border-radius: 8px;
  background: #ffffff;
  color: var(--ng-ink);
  font-size: 1rem;
}

body.dc app-contact-form textarea.form-control {
  min-height: 176px;
  resize: vertical;
}

body.dc app-contact-form .form-control:focus {
  border-color: rgba(15, 118, 110, 0.44);
  box-shadow: 0 0 0 4px rgba(198, 161, 91, 0.2);
}

body.dc app-contact-form .form-control.is-invalid {
  border-color: rgba(182, 75, 69, 0.78);
  background: #fff8f4;
}

body.dc app-contact-form .text-danger {
  border-left: 3px solid var(--ng-coral);
  color: #8b342a;
  font-size: 0.88rem;
  font-weight: 800;
  padding-left: 8px;
}

body.dc app-contact-form .report-studio-submit-note {
  gap: 5px;
  border: 1px solid rgba(36, 79, 120, 0.14);
  border-left: 5px solid var(--ng-gold);
  border-radius: 8px;
  background: rgba(234, 242, 246, 0.7);
  padding: 13px;
}

body.dc app-contact-form .contact-form-card button[type=submit] {
  width: min(100%, 280px);
  min-height: 56px;
}

body.dc .rsx-resource-search {
  display: grid;
  gap: 7px;
}

body.dc .rsx-resource-search input {
  min-height: 52px;
  border: 1px solid rgba(36, 79, 120, 0.16);
  border-radius: 8px;
  padding: 0 13px;
}

body.dc .rsx-library-results {
  display: grid;
  gap: 18px;
  min-width: 0;
}

body.dc .rsx-provider-groups {
  display: grid;
  gap: 16px;
}

body.dc .rsx-provider-group header,
body.dc .rsx-provider-table article {
  display: grid;
  gap: 12px;
}

body.dc .rsx-provider-group header {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: start;
  border-bottom: 1px solid rgba(36, 79, 120, 0.12);
  padding: 17px;
}

body.dc .rsx-provider-table {
  display: grid;
}

body.dc .rsx-provider-table article {
  grid-template-columns: minmax(210px, 0.7fr) minmax(220px, 0.62fr) minmax(190px, 0.46fr);
  padding: 17px;
}

body.dc .rsx-provider-table article + article {
  border-top: 1px solid rgba(36, 79, 120, 0.12);
}

body.dc .rsx-provider-actions a,
body.dc .rsx-provider-actions span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 40px;
  border: 1px solid rgba(36, 79, 120, 0.16);
  border-radius: 8px;
  color: var(--ng-blue);
  font-weight: 900;
  padding: 8px 10px;
  text-decoration: none;
  overflow-wrap: anywhere;
}

body.dc .rsx-glossary-list details > div {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

body.dc .rsx-link-list {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

body.dc .rsx-resource-disclaimer {
  margin-top: 16px;
  border: 1px solid rgba(182, 75, 69, 0.22);
  border-left: 6px solid var(--ng-coral);
  border-radius: 8px;
  background: rgba(255, 248, 244, 0.9);
  padding: 16px;
}

@media (max-width: 1180px) {
  body.dc :is(.rsx-home-hero-grid, .rsx-inspection-hero-grid, .rsx-about-hero-grid, .rsx-contact-hero-grid, .rsx-resource-hero-grid, .rsx-case-grid, .rsx-system-grid, .rsx-report-grid, .rsx-family-grid, .rsx-report-workbench, .rsx-accordion-grid, .rsx-client-brief-grid, .rsx-build-grid, .rsx-tools-grid, .rsx-founder-grid, .rsx-profile-grid, .rsx-local-grid, .rsx-calendar-grid, .rsx-intake-grid, .rsx-prep-grid, .rsx-library-grid, .rsx-glossary-grid, .rsx-faq-grid, .rsx-checklist-grid, .rsx-page-cta-grid, .rsx-scope-head, .rsx-sample-report, .rsx-route-file, .rsx-owner-card) {
    grid-template-columns: 1fr;
  }
  body.dc .rsx-request-planner {
    position: static;
  }
  body.dc .rsx-stat-ledger,
  body.dc .rsx-scope-ledger .site-container,
  body.dc .rsx-credential-grid,
  body.dc .rsx-resource-dashboard,
  body.dc .rsx-link-list,
  body.dc .rsx-calendar-card {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  body.dc .rsx-system-index {
    max-height: none;
    overflow: visible;
  }
  body.dc .rsx-provider-table article {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 760px) {
  body.dc :is(.rsx-home-hero, .rsx-inspection-hero, .rsx-about-hero, .rsx-contact-hero, .rsx-resource-hero, .rsx-case-section, .rsx-system-section, .rsx-report-section, .rsx-family-band, .rsx-report-preview-section, .rsx-accordion-section, .rsx-client-brief-section, .rsx-build-section, .rsx-tools-section, .rsx-founder-section, .rsx-profile-section, .rsx-local-section, .rsx-gallery-section, .rsx-calendar-section, .rsx-intake-section, .rsx-next-section, .rsx-prep-section, .rsx-library-section, .rsx-glossary-section, .rsx-faq-section, .rsx-checklist-section, .rsx-reference-section, .rsx-page-cta) {
    padding: 44px 0;
  }
  body.dc :is(.rsx-stat-ledger, .rsx-scope-ledger .site-container, .rsx-credential-grid, .rsx-resource-dashboard, .rsx-explain-row, .rsx-signal-list, .rsx-value-list, .rsx-calendar-card, .rsx-detail-list, .rsx-shortlist, .rsx-link-list, .rsx-gallery-grid, .rsx-glossary-list details > div, .rsx-evidence-strip .site-container),
  body.dc app-contact-form :is(.form-assurance-row, .report-studio-form-progress, .contact-form-card form) {
    grid-template-columns: 1fr;
  }
  body.dc :is(.rsx-case-viewer img, .rsx-route-file img, .rsx-owner-card img, .rsx-about-portrait img, .rsx-gallery-grid img, .rsx-contact-file img, .rsx-featured-guide img, .rsx-system-photo img, .rsx-family-grid img) {
    min-height: 0;
    height: 260px;
  }
  body.dc .rsx-system-accordion ul {
    columns: 1;
  }
  body.dc app-contact-form :is(.form-group:nth-of-type(1), .form-group:nth-of-type(2), .form-group:nth-of-type(3), .form-group:nth-of-type(4), .form-group:nth-of-type(5), .alert) {
    grid-column: 1/-1;
  }
  body.dc app-contact-form .contact-form-card button[type=submit] {
    width: 100%;
  }
}
@media (max-width: 520px) {
  body.dc :is(.rsx-trust-row, .resource-hero-cues, .rsx-chip-row, .rsx-service-map, .rsx-filter-row, .rsx-report-tabs, .rsx-brief-tabs, .request-tabs, .rsx-category-tabs, .panel-actions, .hero-actions, .rsx-provider-actions) {
    display: grid;
    grid-template-columns: 1fr;
  }
  body.dc :is(.rsx-owner-evidence > div, .rsx-about-portrait figcaption, .rsx-system-photo figcaption, .rsx-sample-cover > div) {
    position: static;
    border-radius: 0;
  }
  body.dc :is(.rsx-report-window, .rsx-case-index, .rsx-report-page, .rsx-sample-body, .rsx-client-brief, .rsx-request-planner, .rsx-privacy-note, .rsx-library-sidebar, .rsx-resource-plan, .empty-resource-state, .rsx-case-viewer header, .rsx-case-viewer footer, .rsx-case-body, .rsx-inspector-file > div, .rsx-route-file > div, .rsx-owner-card > div, .rsx-contact-file > div, .rsx-featured-guide > div, .rsx-request-card > div) {
    padding: 16px;
  }
}
body.dc {
  --rsx-page: #f7f9fc;
  --rsx-panel: rgba(255, 255, 255, 0.94);
  --rsx-blueprint: #dcebf3;
  --rsx-edge: rgba(36, 79, 120, 0.18);
  --rsx-gold-soft: rgba(198, 161, 91, 0.18);
  --rsx-shadow-lg: 0 30px 82px rgba(15, 23, 42, 0.16);
}

body.dc main {
  background: radial-gradient(circle at 86% 8%, rgba(198, 161, 91, 0.2), transparent 26rem), radial-gradient(circle at 8% 17%, rgba(15, 118, 110, 0.14), transparent 25rem), linear-gradient(180deg, #ffffff 0%, var(--rsx-page) 42%, #eef5f8 100%), linear-gradient(90deg, rgba(36, 79, 120, 0.065) 1px, transparent 1px), linear-gradient(0deg, rgba(17, 24, 39, 0.045) 1px, transparent 1px);
  background-size: auto, auto, auto, 58px 58px, 58px 58px;
}

body.dc :is(.rsx-home-hero,
.rsx-inspection-hero,
.rsx-about-hero,
.rsx-contact-hero,
.rsx-resource-hero) {
  padding: clamp(118px, 10vw, 156px) 0 clamp(66px, 7vw, 92px);
  background: radial-gradient(circle at 86% 20%, rgba(182, 75, 69, 0.12), transparent 19rem), linear-gradient(135deg, rgba(255, 255, 255, 0.99), rgba(220, 235, 243, 0.92)), linear-gradient(90deg, transparent 0, transparent clamp(26px, 6vw, 84px), rgba(36, 79, 120, 0.18) clamp(26px, 6vw, 84px), rgba(36, 79, 120, 0.18) calc(clamp(26px, 6vw, 84px) + 1px), transparent calc(clamp(26px, 6vw, 84px) + 1px));
}

body.dc :is(.rsx-home-hero,
.rsx-inspection-hero,
.rsx-about-hero,
.rsx-contact-hero,
.rsx-resource-hero)::before {
  position: absolute;
  top: clamp(18px, 3vw, 36px);
  right: clamp(18px, 5vw, 72px);
  width: min(360px, 42vw);
  height: 92px;
  border: 1px solid rgba(36, 79, 120, 0.14);
  border-radius: 18px;
  background: linear-gradient(90deg, rgba(36, 79, 120, 0.18) 0 12px, transparent 12px 100%), repeating-linear-gradient(0deg, transparent 0 17px, rgba(36, 79, 120, 0.12) 18px), rgba(255, 255, 255, 0.54);
  content: "";
  opacity: 0.82;
}

body.dc :is(.rsx-home-hero,
.rsx-inspection-hero,
.rsx-about-hero,
.rsx-contact-hero,
.rsx-resource-hero)::after {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 8px;
  background: linear-gradient(90deg, var(--ng-blue), var(--ng-teal), var(--ng-gold), var(--ng-coral));
  content: "";
}

body.dc :is(.rsx-home-hero h1,
.rsx-inspection-hero h1,
.rsx-about-hero h1,
.rsx-contact-hero h1,
.rsx-resource-hero h1) {
  max-width: 920px;
  font-size: clamp(3rem, 6.4vw, 5.35rem);
  line-height: 0.94;
  text-wrap: balance;
}

body.dc :is(.rsx-home-hero p,
.rsx-inspection-hero p,
.rsx-about-hero p,
.rsx-contact-hero p,
.rsx-resource-hero p) {
  max-width: 780px;
  font-size: clamp(1rem, 1.35vw, 1.16rem);
}

body.dc :is(.rsx-file-label, .mini-label) {
  border-color: rgba(36, 79, 120, 0.2);
  border-left-color: var(--ng-coral);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.9);
  box-shadow: 0 10px 24px rgba(15, 23, 42, 0.07);
}

body.dc :is(.rsx-report-window,
.rsx-case-index,
.rsx-case-viewer,
.rsx-report-page,
.rsx-inspector-file,
.rsx-sample-report,
.rsx-client-brief,
.rsx-about-portrait,
.rsx-route-file,
.rsx-owner-card,
.rsx-contact-file,
.rsx-calendar-card,
.rsx-request-planner,
.rsx-request-card,
.rsx-privacy-note,
.rsx-featured-guide,
.rsx-library-sidebar,
.rsx-resource-plan,
.empty-resource-state,
.rsx-gallery-grid article,
.rsx-page-cta-grid) {
  border-color: var(--rsx-edge);
  border-radius: 18px;
  background: linear-gradient(180deg, var(--rsx-panel), rgba(247, 249, 252, 0.88)), linear-gradient(90deg, rgba(36, 79, 120, 0.05) 1px, transparent 1px);
  background-size: auto, 44px 100%;
  box-shadow: var(--rsx-shadow-lg);
}

body.dc :is(.rsx-report-window, .rsx-case-index, .rsx-report-page, .rsx-sample-body, .rsx-client-brief, .rsx-request-planner, .rsx-privacy-note, .rsx-library-sidebar, .rsx-resource-plan, .empty-resource-state) {
  padding: clamp(20px, 3vw, 30px);
}

body.dc :is(.rsx-case-viewer, .rsx-route-file, .rsx-owner-card, .rsx-contact-file, .rsx-featured-guide, .rsx-request-card, .rsx-report-page, .rsx-about-portrait) {
  position: relative;
}

body.dc :is(.rsx-case-viewer, .rsx-route-file, .rsx-owner-card, .rsx-contact-file, .rsx-featured-guide, .rsx-request-card, .rsx-report-page)::before {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  z-index: 1;
  height: 7px;
  background: linear-gradient(90deg, var(--ng-blue), var(--ng-teal), var(--ng-gold));
  content: "";
}

body.dc .rsx-window-bar {
  border-radius: 14px;
  background: rgba(220, 235, 243, 0.62);
  padding: 12px;
}

body.dc :is(.rsx-owner-evidence, .rsx-about-portrait, .rsx-system-photo, .rsx-sample-cover) {
  border-radius: 16px;
}

body.dc :is(.rsx-owner-evidence img, .rsx-about-portrait img, .rsx-system-photo img, .rsx-sample-cover img, .rsx-case-viewer img, .rsx-route-file img, .rsx-owner-card img, .rsx-contact-file img, .rsx-featured-guide img, .rsx-request-card img, .rsx-gallery-grid img, .rsx-family-grid img) {
  filter: saturate(0.96) contrast(1.04);
}

body.dc :is(.rsx-owner-evidence > div, .rsx-about-portrait figcaption, .rsx-system-photo figcaption, .rsx-sample-cover > div) {
  border-left-color: var(--ng-coral);
  border-radius: 14px;
  background: linear-gradient(135deg, rgba(17, 24, 39, 0.92), rgba(36, 79, 120, 0.88));
  box-shadow: 0 18px 34px rgba(15, 23, 42, 0.18);
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
}

body.dc :is(.rsx-stat-ledger article, .rsx-scope-ledger article, .rsx-credential-grid article, .rsx-resource-dashboard div, .rsx-explain-row article, .rsx-signal-list article, .rsx-value-list article, .rsx-calendar-card div, .rsx-detail-list div, .rsx-shortlist article, .rsx-link-list a, .rsx-build-steps article, .rsx-next-steps article, .rsx-resource-steps article, .rsx-system-accordion details, .rsx-glossary-list details, .rsx-faq-list details, .rsx-provider-group) {
  border-color: var(--rsx-edge);
  border-radius: 15px;
  background: rgba(255, 255, 255, 0.9);
  box-shadow: 0 16px 38px rgba(15, 23, 42, 0.08);
}

body.dc :is(.rsx-stat-ledger article, .rsx-scope-ledger article, .rsx-credential-grid article, .rsx-resource-dashboard div) {
  border-left-color: var(--ng-coral);
}

body.dc :is(.rsx-file-tabs button, .rsx-profile-tabs button, .rsx-system-index button, .rsx-filter-row button, .rsx-report-tabs button, .rsx-brief-tabs button, .request-tabs button, .rsx-category-tabs button, .rsx-glossary-list button) {
  border-radius: 14px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(220, 235, 243, 0.46));
  box-shadow: 0 10px 22px rgba(15, 23, 42, 0.06);
}

body.dc :is(.rsx-file-tabs button:hover, .rsx-profile-tabs button:hover, .rsx-system-index button:hover, .rsx-filter-row button:hover, .rsx-report-tabs button:hover, .rsx-brief-tabs button:hover, .request-tabs button:hover, .rsx-category-tabs button:hover, .rsx-glossary-list button:hover, .rsx-file-tabs button.is-selected, .rsx-profile-tabs button.is-selected, .rsx-system-index button.is-selected, .rsx-filter-row button.is-selected, .rsx-report-tabs button.is-selected, .rsx-brief-tabs button.is-selected, .request-tabs button.is-selected, .rsx-category-tabs button.is-selected, .rsx-glossary-list button.is-selected) {
  border-color: rgba(36, 79, 120, 0.36);
  background: linear-gradient(135deg, #244f78, #0f766e);
  color: #ffffff;
  box-shadow: 0 18px 36px rgba(36, 79, 120, 0.18);
}

body.dc :is(.rsx-file-tabs button:hover span, .rsx-profile-tabs button:hover span, .rsx-system-index button:hover span, .rsx-report-tabs button:hover span, .rsx-category-tabs button:hover span, .rsx-file-tabs button.is-selected span, .rsx-profile-tabs button.is-selected span, .rsx-system-index button.is-selected span, .rsx-report-tabs button.is-selected span, .rsx-category-tabs button.is-selected span) {
  color: rgba(255, 255, 255, 0.78);
}

body.dc .rsx-evidence-strip {
  background: linear-gradient(90deg, rgba(17, 24, 39, 0.96), rgba(36, 79, 120, 0.96)), linear-gradient(90deg, rgba(255, 255, 255, 0.1) 1px, transparent 1px);
  background-size: auto, 58px 100%;
}

body.dc .rsx-evidence-strip button {
  border-color: rgba(255, 255, 255, 0.16);
  border-left-color: var(--ng-gold);
  background: rgba(255, 255, 255, 0.08);
  color: #ffffff;
  box-shadow: none;
}

body.dc .rsx-evidence-strip button.is-selected {
  border-left-color: var(--ng-coral);
  background: #ffffff;
  color: var(--ng-blue);
  box-shadow: 0 16px 34px rgba(0, 0, 0, 0.16);
}

body.dc .rsx-system-copy blockquote,
body.dc .rsx-local-grid blockquote {
  border-left-color: var(--ng-coral);
  background: radial-gradient(circle at 96% 8%, rgba(198, 161, 91, 0.2), transparent 16rem), linear-gradient(135deg, rgba(255, 255, 255, 0.98), rgba(220, 235, 243, 0.84));
  box-shadow: 0 18px 42px rgba(15, 23, 42, 0.09);
}

body.dc .rsx-report-page {
  border-top: 0;
}

body.dc app-contact-form .contact-form-card {
  border-radius: 18px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(247, 249, 252, 0.92)), radial-gradient(circle at 100% 0, rgba(198, 161, 91, 0.16), transparent 18rem);
  box-shadow: var(--rsx-shadow-lg);
}

body.dc app-contact-form .form-control,
body.dc .rsx-resource-search input {
  border-radius: 14px;
}

body.dc app-contact-form .form-control:focus,
body.dc .rsx-resource-search input:focus {
  border-color: rgba(36, 79, 120, 0.48);
  box-shadow: 0 0 0 4px rgba(15, 118, 110, 0.18);
}

body.dc .rsx-resource-disclaimer,
body.dc app-contact-form .report-studio-submit-note {
  border-radius: 15px;
  background: rgba(255, 248, 244, 0.94);
}

body.dc .rsx-page-cta-grid {
  border-left-color: var(--ng-coral);
}

@media (max-width: 760px) {
  body.dc :is(.rsx-home-hero,
  .rsx-inspection-hero,
  .rsx-about-hero,
  .rsx-contact-hero,
  .rsx-resource-hero) {
    padding-top: 138px;
  }
  body.dc :is(.rsx-home-hero h1, .rsx-inspection-hero h1, .rsx-about-hero h1, .rsx-contact-hero h1, .rsx-resource-hero h1) {
    font-size: clamp(2.45rem, 10vw, 3.35rem);
  }
}
@media (max-width: 520px) {
  body.dc :is(.rsx-home-hero,
  .rsx-inspection-hero,
  .rsx-about-hero,
  .rsx-contact-hero,
  .rsx-resource-hero) {
    padding-top: 144px;
  }
  body.dc :is(.rsx-owner-evidence > div, .rsx-about-portrait figcaption, .rsx-system-photo figcaption, .rsx-sample-cover > div) {
    border-radius: 0;
    box-shadow: none;
  }
}
body.dc :is(.rsx-case-section,
.rsx-report-section,
.rsx-report-preview-section,
.rsx-intake-section,
.rsx-library-section,
.rsx-faq-section,
.rsx-reference-section) {
  padding: clamp(42px, 6vw, 62px) 0;
}

body.dc .rsx-case-viewer-compact {
  align-content: start;
}

body.dc .rsx-case-viewer-compact .rsx-case-body {
  padding-top: 0;
}

body.dc .rsx-case-viewer-compact footer {
  border-top: 1px solid rgba(36, 79, 120, 0.12);
}

body.dc .rsx-report-page p {
  max-width: 62ch;
}

body.dc .rsx-scope-head-compact {
  max-width: 860px;
}

body.dc .rsx-report-workbench-compact {
  grid-template-columns: minmax(220px, 0.31fr) minmax(0, 1fr);
  gap: 18px;
}

body.dc .rsx-report-workbench-compact .rsx-system-index {
  max-height: 620px;
}

body.dc .rsx-report-workbench-compact .rsx-sample-report {
  grid-template-columns: minmax(220px, 0.34fr) minmax(0, 1fr);
}

body.dc .rsx-compact-checklist {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

body.dc .rsx-compact-checklist li {
  border-left: 3px solid var(--ng-teal);
  border-radius: 8px;
  background: rgba(244, 247, 251, 0.84);
  color: var(--ng-ink);
  line-height: 1.35;
  padding: 8px 10px;
}

body.dc .rsx-report-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

body.dc .rsx-intake-grid {
  grid-template-columns: minmax(0, 780px);
  justify-content: center;
}

body.dc .rsx-form-column {
  min-width: 0;
}

body.dc .rsx-library-grid {
  grid-template-columns: minmax(240px, 0.32fr) minmax(0, 1fr);
}

body.dc .rsx-library-sidebar h2 {
  font-size: clamp(1.35rem, 2.2vw, 1.85rem);
  line-height: 1.1;
}

body.dc .rsx-resource-summary-row {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 10px 14px;
  align-items: center;
  border: 1px solid var(--rsx-edge);
  border-left: 5px solid var(--ng-coral);
  border-radius: 15px;
  background: rgba(255, 255, 255, 0.92);
  box-shadow: 0 12px 30px rgba(15, 23, 42, 0.07);
  padding: 14px 16px;
}

body.dc .rsx-resource-summary-row strong {
  color: var(--ng-blue);
  font-size: 1rem;
}

body.dc .rsx-resource-summary-row :is(span, small) {
  color: var(--ng-muted);
  line-height: 1.35;
}

body.dc .rsx-provider-group summary {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: start;
  cursor: pointer;
  list-style: none;
  padding: 16px;
}

body.dc .rsx-provider-group summary::-webkit-details-marker {
  display: none;
}

body.dc .rsx-provider-group summary span {
  color: var(--ng-blue);
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
}

body.dc .rsx-provider-group summary strong {
  display: inline-flex;
  gap: 8px;
  align-items: center;
  color: var(--ng-blue);
  white-space: nowrap;
}

body.dc .rsx-provider-group summary strong::after {
  display: inline-grid;
  place-items: center;
  width: 24px;
  height: 24px;
  border-radius: 999px;
  background: rgba(15, 118, 110, 0.12);
  color: var(--ng-teal);
  content: "+";
}

body.dc .rsx-provider-group[open] summary {
  border-bottom: 1px solid rgba(36, 79, 120, 0.12);
}

body.dc .rsx-provider-group[open] summary strong::after {
  content: "-";
}

body.dc .rsx-provider-table article {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  padding: 14px 16px;
}

body.dc .rsx-provider-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
}

body.dc .rsx-reference-section {
  padding-top: 36px;
}

@media (max-width: 1180px) {
  body.dc :is(.rsx-report-workbench-compact, .rsx-report-workbench-compact .rsx-sample-report, .rsx-library-grid) {
    grid-template-columns: 1fr;
  }
}
@media (max-width: 760px) {
  body.dc .rsx-compact-checklist,
  body.dc .rsx-resource-summary-row,
  body.dc .rsx-provider-group summary,
  body.dc .rsx-provider-table article {
    grid-template-columns: 1fr;
  }
  body.dc .rsx-report-nav,
  body.dc .rsx-provider-actions {
    display: grid;
    grid-template-columns: 1fr;
    justify-content: stretch;
  }
  body.dc .rsx-provider-group summary strong {
    white-space: normal;
  }
}
body.db :is(.lcx-home-hero,
.lcx-inspection-hero,
.lcx-about-hero,
.lcx-contact-hero,
.lcx-resource-hero) {
  position: relative;
  overflow: hidden;
  padding: 78px 0 64px;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.98), rgba(230, 241, 243, 0.94)), repeating-linear-gradient(90deg, transparent 0, transparent 68px, rgba(40, 122, 132, 0.07) 69px), linear-gradient(180deg, rgba(232, 241, 236, 0.48), transparent 52%);
}

body.db :is(.lcx-dispatch,
.lcx-system-snapshot,
.lcx-report-handoff,
.lcx-family-handoff,
.lcx-audience-section,
.lcx-brief-section,
.lcx-process-section,
.lcx-scope-section,
.lcx-newbuild-section,
.lcx-mission-quote,
.lcx-community-section,
.lcx-founder-timeline,
.lcx-profile-section,
.lcx-values-section,
.lcx-story-gallery,
.lcx-quote-section,
.lcx-service-map-section,
.lcx-next-section,
.lcx-audience-guide,
.lcx-library-section,
.lcx-seasonal-section,
.lcx-checklist-section,
.lcx-reference-section,
.lcx-page-cta) {
  position: relative;
  overflow: hidden;
  padding: 72px 0;
}

body.db :is(.lcx-home-hero-grid,
.lcx-inspection-hero-grid,
.lcx-about-hero-grid,
.lcx-contact-hero-grid,
.lcx-resource-hero-grid,
.lcx-dispatch-grid,
.lcx-system-grid,
.lcx-report-grid,
.lcx-family-grid,
.lcx-brief-grid,
.lcx-process-grid,
.lcx-scope-workbench,
.lcx-newbuild-grid,
.lcx-mission-grid,
.lcx-community-grid,
.lcx-founder-grid,
.lcx-profile-grid,
.lcx-values-grid,
.lcx-quote-grid,
.lcx-service-map-grid,
.lcx-next-grid,
.lcx-library-grid,
.lcx-seasonal-grid,
.lcx-checklist-grid,
.lcx-page-cta-grid) {
  display: grid;
  gap: 32px;
  align-items: start;
}

body.db :is(.lcx-home-hero-grid,
.lcx-inspection-hero-grid,
.lcx-about-hero-grid,
.lcx-contact-hero-grid,
.lcx-resource-hero-grid) {
  grid-template-columns: minmax(0, 0.92fr) minmax(340px, 0.58fr);
  align-items: center;
}

body.db :is(.lcx-home-copy,
.lcx-home-hero-grid > div,
.lcx-inspection-hero-grid > div,
.lcx-about-hero-grid > div,
.lcx-contact-hero-grid > div,
.lcx-resource-hero-grid > div,
.lcx-section-heading) {
  display: grid;
  gap: 18px;
}

body.db :is(.lcx-home-hero h1,
.lcx-inspection-hero h1,
.lcx-about-hero h1,
.lcx-contact-hero h1,
.lcx-resource-hero h1) {
  max-width: 840px;
  margin: 0;
  color: var(--ng-ink);
  font-size: 4.25rem;
  font-weight: 950;
  line-height: 0.98;
}

body.db :is(.lcx-home-hero p,
.lcx-inspection-hero p,
.lcx-about-hero p,
.lcx-contact-hero p,
.lcx-resource-hero p,
.lcx-section-heading p,
.lcx-readiness-panel p,
.lcx-selected-need p,
.lcx-vital-card p,
.lcx-report-preview p,
.lcx-family-grid p,
.lcx-brief-card p,
.lcx-process-grid p,
.lcx-active-system p,
.lcx-community-grid p,
.lcx-route-feature p,
.lcx-profile-card p,
.lcx-story-grid p,
.lcx-quote-planner p,
.lcx-form-intro p,
.lcx-contact-card p,
.lcx-next-timeline p,
.lcx-resource-sidebar p,
.lcx-resource-plan p,
.lcx-provider-group p,
.lcx-featured-guide p,
.lcx-season-list p,
.lcx-resource-steps p,
.lcx-resource-disclaimer p) {
  color: var(--ng-muted);
  line-height: 1.62;
}

body.db :is(.lcx-section-heading h2,
.lcx-readiness-panel h2,
.lcx-decision-console h2,
.lcx-system-menu h2,
.lcx-report-grid h2,
.lcx-family-grid h2,
.lcx-audience-section h2,
.lcx-brief-grid h2,
.lcx-process-grid h2,
.lcx-scope-head h2,
.lcx-newbuild-grid h2,
.lcx-mission-grid h2,
.lcx-community-grid h2,
.lcx-founder-grid h2,
.lcx-profile-grid h2,
.lcx-values-grid h2,
.lcx-story-grid h2,
.lcx-quote-planner h2,
.lcx-form-intro h2,
.lcx-service-map-grid h2,
.lcx-next-grid h2,
.lcx-resource-sidebar h2,
.lcx-seasonal-grid h2,
.lcx-checklist-grid h2,
.lcx-page-cta-grid h2) {
  margin: 0;
  color: var(--ng-ink);
  font-size: 2.55rem;
  line-height: 1.08;
}

body.db :is(.lcx-desk-board,
.lcx-readiness-panel,
.lcx-decision-console,
.lcx-selected-need,
.lcx-vital-card,
.lcx-report-preview,
.lcx-scope-ticket,
.lcx-brief-card,
.lcx-active-system,
.lcx-about-portrait,
.lcx-route-feature,
.lcx-profile-card,
.lcx-quote-planner,
.lcx-form-intro,
.lcx-contact-card,
.lcx-featured-guide,
.lcx-resource-sidebar,
.lcx-resource-plan,
.lcx-resource-disclaimer,
.lcx-page-cta-grid) {
  border: 1px solid rgba(31, 103, 88, 0.15);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: var(--ng-shadow);
}

body.db .lcx-desk-board {
  display: grid;
  gap: 14px;
  border-left: 7px solid var(--ng-teal);
  padding: 18px;
}

body.db .lcx-owner-ticket {
  display: grid;
  grid-template-columns: 112px minmax(0, 1fr);
  gap: 16px;
  align-items: center;
}

body.db .lcx-owner-ticket img,
body.db .lcx-scope-ticket img,
body.db .lcx-contact-card img,
body.db .lcx-featured-guide img {
  display: block;
  width: 100%;
  object-fit: cover;
}

body.db .lcx-owner-ticket img {
  height: 112px;
  border-radius: 8px;
  object-position: center 18%;
}

body.db :is(.lcx-owner-ticket, .lcx-arrival-list, .lcx-contact-card, .lcx-featured-guide) span,
body.db :is(.lcx-progress-meter, .lcx-selected-need, .lcx-vital-card, .lcx-report-preview, .lcx-brief-card, .lcx-route-feature, .lcx-profile-card, .lcx-resource-dashboard, .lcx-shortlist, .lcx-provider-group, .lcx-season-list, .lcx-resource-steps) span,
body.db :is(.lcx-category-groups summary, .lcx-link-list a) span {
  color: var(--ng-blue);
  font-size: 0.74rem;
  font-weight: 900;
  line-height: 1.35;
  text-transform: uppercase;
}

body.db :is(.lcx-owner-ticket strong, .lcx-arrival-list strong, .lcx-contact-card strong, .lcx-featured-guide strong) {
  display: block;
  color: var(--ng-ink);
  font-size: 1.2rem;
  line-height: 1.22;
}

body.db .lcx-arrival-list {
  display: grid;
  gap: 14px;
  border-top: 1px solid var(--ng-line);
  padding-top: 16px;
}

body.db :is(.lcx-arrival-list ol, .lcx-selected-need ul, .lcx-brief-card ol, .lcx-phase-list, .lcx-route-feature ul, .lcx-profile-card ul, .lcx-request-card ol, .lcx-checklist-grid ul) {
  display: grid;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

body.db .lcx-arrival-list li,
body.db .lcx-brief-card li,
body.db .lcx-request-card li,
body.db .lcx-phase-list li,
body.db .lcx-resource-steps article,
body.db .lcx-next-timeline article {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  gap: 12px;
  align-items: start;
}

body.db .lcx-arrival-list li > :not(span) {
  grid-column: 2;
}

body.db .lcx-arrival-list li > span,
body.db .lcx-brief-card li > span,
body.db .lcx-request-card li > span,
body.db .lcx-phase-list li > span,
body.db .lcx-resource-steps article > span,
body.db .lcx-next-timeline article > span,
body.db .lcx-process-timeline article > span,
body.db .lcx-prep-list span,
body.db .lcx-value-list span {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background: rgba(198, 147, 61, 0.18);
  color: #76531b;
  font-weight: 900;
}

body.db .lcx-status-bar,
body.db .lcx-contact-ribbon {
  background: linear-gradient(90deg, var(--ng-green), var(--ng-teal), var(--ng-blue));
  color: #fff;
}

body.db :is(.lcx-status-bar .site-container, .lcx-contact-ribbon .site-container) {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

body.db :is(.lcx-status-bar article, .lcx-contact-ribbon a, .lcx-contact-ribbon article) {
  display: grid;
  gap: 6px;
  min-height: 132px;
  border-left: 1px solid rgba(255, 255, 255, 0.16);
  color: #fff;
  padding: 24px;
  text-decoration: none;
}

body.db :is(.lcx-status-bar span, .lcx-status-bar small, .lcx-contact-ribbon span, .lcx-contact-ribbon small) {
  color: rgba(255, 255, 255, 0.74);
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
}

body.db :is(.lcx-status-bar strong, .lcx-contact-ribbon strong) {
  color: #fff;
  font-size: 1.55rem;
  line-height: 1.1;
}

body.db .lcx-status-bar strong {
  font-size: 2.2rem;
}

body.db .lcx-dispatch,
body.db .lcx-brief-section,
body.db .lcx-founder-timeline,
body.db .lcx-quote-section,
body.db .lcx-library-section {
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.78), rgba(243, 247, 245, 0.9)), linear-gradient(90deg, rgba(56, 91, 124, 0.08) 1px, transparent 1px);
  background-size: auto, 62px 100%;
}

body.db .lcx-system-snapshot,
body.db .lcx-process-section,
body.db .lcx-community-section,
body.db .lcx-service-map-section,
body.db .lcx-seasonal-section {
  background: linear-gradient(180deg, rgba(230, 241, 243, 0.86), rgba(255, 255, 255, 0.92)), linear-gradient(0deg, rgba(31, 103, 88, 0.07) 1px, transparent 1px);
  background-size: auto, 58px 58px;
}

body.db .lcx-report-handoff,
body.db .lcx-scope-section,
body.db .lcx-profile-section,
body.db .lcx-next-section,
body.db .lcx-checklist-section {
  background: rgba(255, 255, 255, 0.78);
}

body.db .lcx-family-handoff,
body.db .lcx-newbuild-section,
body.db .lcx-values-section,
body.db .lcx-reference-section {
  background: rgba(232, 241, 236, 0.72);
}

body.db .lcx-dispatch-grid {
  grid-template-columns: minmax(300px, 0.44fr) minmax(0, 0.9fr);
}

body.db .lcx-readiness-panel,
body.db .lcx-decision-console,
body.db .lcx-resource-sidebar {
  display: grid;
  gap: 18px;
  padding: 22px;
}

body.db .lcx-progress-meter {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
}

body.db :is(.lcx-progress-meter div, .lcx-active-system .scope-progress div) {
  grid-column: 1/-1;
  overflow: hidden;
  height: 9px;
  border-radius: 999px;
  background: rgba(19, 39, 42, 0.1);
}

body.db :is(.lcx-progress-meter i, .lcx-active-system .scope-progress i) {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--ng-teal), var(--ng-gold));
}

body.db .lcx-checklist,
body.db .lcx-need-rail,
body.db .lcx-vital-tabs,
body.db .lcx-brief-tabs,
body.db .lcx-route-tabs,
body.db .lcx-profile-tabs,
body.db .request-tabs,
body.db .lcx-filter-row,
body.db .lcx-category-list {
  display: grid;
  gap: 10px;
}

body.db :is(.lcx-checklist button, .lcx-need-rail button, .lcx-vital-tabs button, .lcx-report-tabs button, .lcx-brief-tabs button, .lcx-route-tabs button, .lcx-profile-tabs button, .request-tabs button, .lcx-filter-row button, .lcx-category-list button, .lcx-category-groups button) {
  min-width: 0;
  min-height: 54px;
  border: 1px solid rgba(31, 103, 88, 0.14);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.84);
  color: var(--ng-ink);
  cursor: pointer;
  font-weight: 850;
  padding: 11px 13px;
  text-align: left;
  transition: background 160ms ease, border-color 160ms ease, transform 160ms ease;
}

body.db :is(.lcx-checklist button:hover, .lcx-need-rail button:hover, .lcx-vital-tabs button:hover, .lcx-report-tabs button:hover, .lcx-brief-tabs button:hover, .lcx-route-tabs button:hover, .lcx-profile-tabs button:hover, .request-tabs button:hover, .lcx-filter-row button:hover, .lcx-category-list button:hover, .lcx-category-groups button:hover),
body.db :is(.lcx-checklist button.is-checked, .lcx-need-rail button.is-selected, .lcx-vital-tabs button.is-selected, .lcx-report-tabs button.is-selected, .lcx-brief-tabs button.is-selected, .lcx-route-tabs button.is-selected, .lcx-profile-tabs button.is-selected, .request-tabs button.is-selected, .lcx-filter-row button.is-selected, .lcx-category-list button.is-selected, .lcx-category-groups button.is-selected) {
  border-color: rgba(31, 103, 88, 0.32);
  background: rgba(232, 241, 236, 0.94);
  transform: translateY(-1px);
}

body.db .lcx-checklist button {
  display: grid;
  gap: 4px;
}

body.db .lcx-checklist-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

body.db .lcx-checklist-actions button,
body.db .lcx-clear-filter {
  border: 1px solid rgba(31, 103, 88, 0.2);
  border-radius: 999px;
  background: var(--ng-green);
  color: #fff;
  cursor: pointer;
  font-weight: 900;
  padding: 10px 14px;
}

body.db .lcx-need-rail,
body.db .lcx-report-tabs,
body.db .lcx-brief-tabs,
body.db .request-tabs,
body.db .lcx-filter-row {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}

body.db .lcx-selected-need,
body.db .lcx-vital-card,
body.db .lcx-report-preview,
body.db .lcx-brief-card,
body.db .lcx-active-system,
body.db .lcx-route-feature,
body.db .lcx-profile-card,
body.db .lcx-request-card {
  display: grid;
  grid-template-columns: minmax(230px, 0.42fr) minmax(0, 0.78fr);
  overflow: hidden;
}

body.db :is(.lcx-selected-need img, .lcx-vital-card img, .lcx-report-preview img, .lcx-brief-card img, .lcx-active-system img, .lcx-route-feature img, .lcx-profile-card img, .lcx-request-card img) {
  width: 100%;
  height: 100%;
  min-height: 430px;
  object-fit: cover;
}

body.db :is(.lcx-selected-need > div, .lcx-vital-card > div, .lcx-report-preview > div, .lcx-brief-card > div, .lcx-active-system > div, .lcx-route-feature > div, .lcx-profile-card > div, .lcx-request-card > div) {
  display: grid;
  align-content: start;
  gap: 15px;
  padding: 24px;
}

body.db :is(.lcx-selected-need h3, .lcx-vital-card h3, .lcx-report-preview h3, .lcx-brief-card h3, .lcx-active-system h3, .lcx-route-feature h3, .lcx-profile-card h3, .lcx-resource-plan h3) {
  margin: 0;
  color: var(--ng-ink);
  font-size: 1.85rem;
  line-height: 1.15;
}

body.db :is(.lcx-selected-need dl, .lcx-active-system dl, .lcx-profile-card dl, .lcx-provider-table dl) {
  display: grid;
  gap: 10px;
  margin: 0;
}

body.db :is(.lcx-selected-need dl div, .lcx-active-system dl div, .lcx-profile-card dl div, .lcx-provider-table dl div) {
  border: 1px solid rgba(31, 103, 88, 0.12);
  border-left: 5px solid var(--ng-teal);
  border-radius: 8px;
  background: rgba(243, 247, 245, 0.8);
  padding: 12px;
}

body.db :is(.lcx-selected-need dt, .lcx-active-system dt, .lcx-profile-card dt, .lcx-provider-table dt) {
  color: var(--ng-blue);
  font-size: 0.68rem;
  font-weight: 900;
  text-transform: uppercase;
}

body.db :is(.lcx-selected-need dd, .lcx-active-system dd, .lcx-profile-card dd, .lcx-provider-table dd) {
  margin: 5px 0 0;
  color: var(--ng-ink);
  line-height: 1.4;
}

body.db :is(.lcx-selected-need li, .lcx-route-feature li, .lcx-profile-card li, .lcx-checklist-grid li) {
  display: grid;
  grid-template-columns: 16px minmax(0, 1fr);
  gap: 9px;
  color: var(--ng-muted);
  line-height: 1.45;
}

body.db :is(.lcx-selected-need li, .lcx-route-feature li, .lcx-profile-card li, .lcx-checklist-grid li)::before {
  width: 8px;
  height: 8px;
  margin-top: 8px;
  border-radius: 50%;
  background: var(--ng-teal);
  content: "";
}

body.db .lcx-system-grid,
body.db .lcx-report-grid,
body.db .lcx-brief-grid,
body.db .lcx-process-grid,
body.db .lcx-newbuild-grid,
body.db .lcx-community-grid,
body.db .lcx-founder-grid,
body.db .lcx-profile-grid,
body.db .lcx-values-grid,
body.db .lcx-quote-grid,
body.db .lcx-service-map-grid,
body.db .lcx-checklist-grid {
  grid-template-columns: minmax(280px, 0.44fr) minmax(0, 0.9fr);
}

body.db .lcx-family-grid,
body.db .lcx-mission-grid,
body.db .lcx-seasonal-grid,
body.db .lcx-next-grid {
  grid-template-columns: minmax(300px, 0.58fr) minmax(0, 0.82fr);
}

body.db .lcx-family-grid img {
  width: 100%;
  height: 420px;
  border-radius: 8px;
  object-fit: cover;
  object-position: center 18%;
  box-shadow: var(--ng-shadow);
}

body.db .lcx-family-grid > div,
body.db .lcx-page-cta-grid > div {
  display: grid;
  gap: 16px;
}

body.db .lcx-check-tags,
body.db .resource-hero-cues,
body.db .lcx-marker-list {
  display: flex;
  flex-wrap: wrap;
  gap: 9px;
}

body.db :is(.lcx-check-tags span, .resource-hero-cues span, .lcx-marker-list span) {
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  border: 1px solid rgba(31, 103, 88, 0.16);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.86);
  color: var(--ng-green);
  font-size: 0.78rem;
  font-weight: 900;
  padding: 7px 11px;
}

body.db .lcx-vital-card blockquote,
body.db .lcx-mission-grid blockquote {
  margin: 0;
  border-left: 7px solid var(--ng-gold);
  border-radius: 8px;
  background: rgba(232, 241, 236, 0.78);
  color: var(--ng-ink);
  font-weight: 850;
  line-height: 1.5;
  padding: 16px;
}

body.db .lcx-mission-grid blockquote {
  display: grid;
  gap: 12px;
  min-height: 100%;
  background: var(--ng-ink);
  color: #fff;
  padding: 28px;
}

body.db .lcx-mission-grid blockquote p {
  margin: 0;
  color: #fff;
  font-size: 1.65rem;
  line-height: 1.35;
}

body.db .lcx-credential-wall,
body.db .lcx-audience-grid,
body.db .lcx-audience-guide-grid,
body.db .lcx-value-list,
body.db .lcx-season-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

body.db .lcx-credential-wall {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.db :is(.lcx-credential-wall article, .lcx-audience-grid article, .lcx-audience-guide article, .lcx-value-list article, .lcx-season-list article, .lcx-care-roster article, .lcx-prep-list div) {
  border: 1px solid rgba(31, 103, 88, 0.14);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.88);
  padding: 18px;
}

body.db .lcx-credential-wall strong {
  display: block;
  color: var(--ng-green);
  font-size: 2.35rem;
  line-height: 1;
}

body.db :is(.lcx-audience-grid strong, .lcx-audience-guide strong, .lcx-value-list strong, .lcx-season-list strong, .lcx-care-roster strong, .lcx-next-timeline strong, .lcx-resource-steps strong, .lcx-prep-list strong) {
  display: block;
  margin-top: 4px;
  color: var(--ng-ink);
  font-size: 1.14rem;
  line-height: 1.25;
}

body.db .lcx-centered {
  max-width: 760px;
  margin: 0 auto 26px;
  text-align: center;
}

body.db .lcx-scope-head,
body.db .lcx-provider-group header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 18px;
  align-items: end;
  margin-bottom: 18px;
}

body.db .lcx-scope-head aside {
  display: grid;
  gap: 4px;
  min-width: 260px;
  border: 1px solid rgba(31, 103, 88, 0.14);
  border-left: 6px solid var(--ng-gold);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.9);
  padding: 16px;
}

body.db .lcx-filter-row {
  margin-bottom: 16px;
}

body.db .lcx-scope-workbench {
  grid-template-columns: minmax(280px, 0.52fr) minmax(0, 0.88fr);
}

body.db .lcx-system-accordion,
body.db .lcx-category-groups,
body.db .lcx-provider-groups,
body.db .lcx-care-roster,
body.db .lcx-story-grid,
body.db .lcx-next-timeline,
body.db .lcx-resource-steps {
  display: grid;
  gap: 12px;
}

body.db :is(.lcx-system-accordion details, .lcx-category-groups details, .lcx-provider-group) {
  border: 1px solid rgba(31, 103, 88, 0.14);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.88);
  overflow: hidden;
}

body.db :is(.lcx-system-accordion summary, .lcx-category-groups summary) {
  display: grid;
  grid-template-columns: 86px minmax(0, 1fr);
  gap: 4px 12px;
  align-items: center;
  cursor: pointer;
  padding: 16px;
}

body.db :is(.lcx-system-accordion summary small, .lcx-category-groups summary small) {
  grid-column: 2;
  color: var(--ng-muted);
  line-height: 1.35;
}

body.db :is(.lcx-accordion-body, .lcx-category-groups details > div) {
  border-top: 1px solid var(--ng-line);
  padding: 16px;
}

body.db .lcx-accordion-body ul {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
  margin: 12px 0 0;
  padding: 0;
  list-style: none;
}

body.db .lcx-accordion-body li {
  border-left: 4px solid var(--ng-teal);
  color: var(--ng-muted);
  padding-left: 10px;
}

body.db .lcx-active-system .scope-progress {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 7px;
}

body.db .lcx-panel-actions,
body.db .lcx-provider-actions,
body.db .lcx-hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

body.db .lcx-phase-list {
  position: relative;
}

body.db .lcx-phase-list::before,
body.db .lcx-process-timeline::before {
  position: absolute;
  top: 18px;
  bottom: 18px;
  left: 19px;
  width: 2px;
  background: rgba(31, 103, 88, 0.18);
  content: "";
}

body.db .lcx-phase-list li,
body.db .lcx-process-timeline article {
  position: relative;
}

body.db .lcx-process-timeline {
  position: relative;
  display: grid;
  gap: 18px;
}

body.db .lcx-process-timeline article {
  display: grid;
  grid-template-columns: 42px 116px minmax(0, 1fr);
  gap: 14px;
  align-items: center;
  border: 1px solid rgba(31, 103, 88, 0.14);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.88);
  padding: 12px;
}

body.db .lcx-process-timeline article.is-report-step {
  grid-template-columns: 42px minmax(0, 1fr);
}

body.db .lcx-process-timeline img {
  width: 116px;
  height: 92px;
  border-radius: 8px;
  object-fit: cover;
}

body.db .lcx-about-portrait {
  position: relative;
  overflow: hidden;
  margin: 0;
}

body.db .lcx-about-portrait img,
body.db .lcx-story-grid img {
  display: block;
  width: 100%;
  height: 520px;
  object-fit: cover;
  object-position: center 18%;
}

body.db .lcx-about-portrait figcaption {
  position: absolute;
  right: 16px;
  bottom: 16px;
  left: 16px;
  border-left: 6px solid var(--ng-gold);
  border-radius: 8px;
  background: rgba(19, 39, 42, 0.84);
  color: #fff;
  padding: 16px;
}

body.db .lcx-care-roster article {
  display: grid;
  grid-template-columns: 112px minmax(0, 1fr);
  gap: 14px;
  align-items: center;
}

body.db .lcx-care-roster img {
  width: 112px;
  height: 126px;
  border-radius: 8px;
  object-fit: cover;
}

body.db .lcx-story-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.db .lcx-story-grid article {
  display: grid;
  grid-template-rows: auto 1fr;
  overflow: hidden;
  border: 1px solid rgba(31, 103, 88, 0.14);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.9);
  box-shadow: var(--ng-shadow);
}

body.db .lcx-story-grid img {
  height: 330px;
}

body.db .lcx-story-grid article > div {
  display: grid;
  gap: 12px;
  padding: 22px;
}

body.db .lcx-phone-panel {
  display: grid;
  width: min(100%, 430px);
  gap: 5px;
  border: 1px solid rgba(31, 103, 88, 0.15);
  border-left: 7px solid var(--ng-gold);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: var(--ng-shadow);
  padding: 18px;
}

body.db .lcx-phone-panel a {
  color: var(--ng-green);
  font-size: 2rem;
  font-weight: 950;
  line-height: 1;
  text-decoration: none;
}

body.db .lcx-contact-card,
body.db .lcx-featured-guide {
  overflow: hidden;
}

body.db .lcx-contact-card img,
body.db .lcx-featured-guide img {
  height: 300px;
  object-position: center 18%;
}

body.db :is(.lcx-contact-card > div, .lcx-featured-guide > div) {
  display: grid;
  gap: 10px;
  padding: 20px;
}

body.db .lcx-quote-grid {
  grid-template-columns: minmax(310px, 0.48fr) minmax(0, 0.86fr);
}

body.db .lcx-quote-planner,
body.db .lcx-form-column {
  display: grid;
  gap: 18px;
  min-width: 0;
}

body.db .lcx-quote-planner {
  align-self: start;
  position: sticky;
  top: 118px;
}

body.db .lcx-request-card {
  grid-template-columns: 1fr;
}

body.db .lcx-request-card img {
  min-height: 190px;
  height: 190px;
}

body.db .lcx-form-intro {
  border-left: 7px solid var(--ng-teal);
  padding: 22px;
}

body.db app-contact-form .contact-form-card {
  margin-top: 0;
  border: 1px solid rgba(31, 103, 88, 0.14);
  border-top: 7px solid var(--ng-gold);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.96);
  box-shadow: var(--ng-shadow);
}

body.db app-contact-form .contact-form-heading {
  border-bottom: 1px solid var(--ng-line);
  margin-bottom: 18px;
  padding-bottom: 18px;
}

body.db app-contact-form :is(.contact-form-default-copy, .contact-form-field-journal-copy, .contact-form-report-studio-copy, .contact-form-neighborhood-guide-copy) {
  display: none;
}

body.db app-contact-form :is(span.contact-form-local-concierge-copy, h3.contact-form-local-concierge-copy),
body.db app-contact-form .form-assurance-row span.contact-form-local-concierge-copy {
  display: inline-flex;
}

body.db app-contact-form span.contact-form-local-concierge-copy,
body.db app-contact-form .local-concierge-submit-note span {
  color: var(--ng-blue);
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
}

body.db app-contact-form h3.contact-form-local-concierge-copy {
  display: block;
  margin: 8px 0 0;
  color: var(--ng-ink);
  font-size: 1.9rem;
  line-height: 1.12;
}

body.db app-contact-form :is(.contact-form-heading p, .local-concierge-field-hint, .small.text-muted) {
  color: var(--ng-muted);
  line-height: 1.55;
}

body.db app-contact-form .form-assurance-row span,
body.db app-contact-form .local-concierge-form-progress span {
  border: 1px solid rgba(31, 103, 88, 0.16);
  border-radius: 999px;
  background: rgba(232, 241, 236, 0.82);
  color: var(--ng-green);
}

body.db app-contact-form .contact-form-card form,
body.db app-contact-form .local-concierge-form-progress {
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  gap: 16px;
}

body.db app-contact-form .local-concierge-form-progress,
body.db app-contact-form .local-concierge-form-section,
body.db app-contact-form .form-group:nth-of-type(3),
body.db app-contact-form .form-group:nth-of-type(4),
body.db app-contact-form .form-group:nth-of-type(5),
body.db app-contact-form .alert {
  grid-column: 1/-1;
}

body.db app-contact-form .local-concierge-form-progress span {
  align-items: center;
  gap: 8px;
  min-height: 42px;
  padding: 9px 11px;
  font-size: 0.8rem;
  font-weight: 900;
}

body.db app-contact-form .local-concierge-form-progress b {
  color: #76531b;
}

body.db app-contact-form .local-concierge-form-section {
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  border-top: 1px solid var(--ng-line);
  padding-top: 14px;
}

body.db app-contact-form .local-concierge-form-section > span {
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border-radius: 50%;
  background: rgba(198, 147, 61, 0.18);
  color: #76531b;
  font-weight: 900;
}

body.db app-contact-form :is(.local-concierge-form-section strong, .local-concierge-submit-note strong, .control-label) {
  color: var(--ng-ink);
}

body.db app-contact-form .form-group:nth-of-type(1),
body.db app-contact-form .form-group:nth-of-type(2) {
  grid-column: span 3;
}

body.db app-contact-form .form-control {
  min-height: 54px;
  border: 1px solid rgba(31, 103, 88, 0.16);
  border-radius: 8px;
  background: #fff;
  color: var(--ng-ink);
}

body.db app-contact-form textarea.form-control {
  min-height: 170px;
  resize: vertical;
}

body.db app-contact-form .form-control:focus {
  border-color: rgba(31, 103, 88, 0.42);
  box-shadow: 0 0 0 4px rgba(198, 147, 61, 0.18);
}

body.db app-contact-form .form-control.is-invalid {
  border-color: rgba(169, 93, 88, 0.76);
  background: #fff8f6;
}

body.db app-contact-form .text-danger {
  border-left: 3px solid var(--ng-coral);
  color: #8b342a;
  font-size: 0.88rem;
  font-weight: 800;
  padding-left: 8px;
}

body.db app-contact-form .local-concierge-submit-note {
  display: grid;
  gap: 5px;
  margin-bottom: 14px;
  border: 1px solid rgba(31, 103, 88, 0.12);
  border-left: 5px solid var(--ng-gold);
  border-radius: 8px;
  background: rgba(232, 241, 236, 0.7);
  padding: 13px;
}

body.db app-contact-form .contact-form-card button[type=submit] {
  min-height: 54px;
  width: min(100%, 280px);
}

body.db .lcx-service-map {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
  align-content: start;
  border: 1px solid rgba(31, 103, 88, 0.16);
  border-radius: 8px;
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.9), rgba(230, 241, 243, 0.9)), linear-gradient(90deg, rgba(31, 103, 88, 0.08) 1px, transparent 1px), linear-gradient(0deg, rgba(31, 103, 88, 0.08) 1px, transparent 1px);
  background-size: auto, 46px 46px, 46px 46px;
  min-height: 420px;
  padding: 18px;
}

body.db .lcx-service-map span {
  display: grid;
  place-items: center;
  min-height: 62px;
  border: 1px solid rgba(31, 103, 88, 0.16);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.82);
  color: var(--ng-green);
  font-size: 0.82rem;
  font-weight: 900;
  text-align: center;
}

body.db .lcx-prep-list {
  display: grid;
  gap: 12px;
  margin-top: 18px;
}

body.db .lcx-prep-list div {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
}

body.db .lcx-next-grid {
  align-items: stretch;
}

body.db .lcx-privacy-note {
  border: 1px solid rgba(31, 103, 88, 0.14);
  border-left: 6px solid var(--ng-gold);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.86);
  padding: 18px;
}

body.db .lcx-privacy-note a,
body.db .lcx-resource-disclaimer a,
body.db app-contact-form .small.text-muted a {
  color: var(--ng-green);
  font-weight: 900;
}

body.db .lcx-library-grid {
  grid-template-columns: minmax(270px, 0.34fr) minmax(0, 1fr);
}

body.db .lcx-resource-sidebar {
  position: sticky;
  top: 118px;
}

body.db .lcx-resource-search {
  display: grid;
  gap: 7px;
}

body.db .lcx-resource-search input {
  min-height: 52px;
  width: 100%;
  border: 1px solid rgba(31, 103, 88, 0.16);
  border-radius: 8px;
  background: #fff;
  color: var(--ng-ink);
  padding: 0 14px;
}

body.db .lcx-resource-results,
body.db .lcx-resource-plan > div,
body.db .lcx-shortlist {
  display: grid;
  gap: 14px;
}

body.db .lcx-resource-dashboard {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

body.db .lcx-resource-dashboard div {
  border: 1px solid rgba(31, 103, 88, 0.14);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.88);
  padding: 14px;
}

body.db .lcx-resource-plan {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(230px, 0.42fr);
  gap: 16px;
  padding: 20px;
}

body.db .lcx-shortlist article {
  border-left: 4px solid var(--ng-teal);
  padding-left: 10px;
}

body.db .lcx-category-groups details > div {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
}

body.db .lcx-provider-group header {
  margin: 0;
  padding: 16px;
}

body.db .lcx-provider-table {
  border-top: 1px solid var(--ng-line);
}

body.db .lcx-provider-table article {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(210px, 0.42fr) auto;
  gap: 16px;
  align-items: center;
  padding: 16px;
}

body.db .lcx-provider-table article + article {
  border-top: 1px solid var(--ng-line);
}

body.db .lcx-provider-actions {
  justify-content: flex-end;
}

body.db .lcx-provider-actions a,
body.db .lcx-provider-actions span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 38px;
  border: 1px solid rgba(31, 103, 88, 0.18);
  border-radius: 999px;
  background: rgba(232, 241, 236, 0.82);
  color: var(--ng-green);
  font-size: 0.82rem;
  font-weight: 900;
  padding: 8px 12px;
  text-decoration: none;
}

body.db .lcx-reference-section {
  padding-bottom: 90px;
}

body.db .lcx-link-list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin-top: 18px;
}

body.db .lcx-link-list a {
  display: grid;
  gap: 8px;
  min-height: 112px;
  border: 1px solid rgba(31, 103, 88, 0.14);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.9);
  color: var(--ng-ink);
  padding: 16px;
  text-decoration: none;
}

body.db .lcx-resource-disclaimer {
  margin-top: 18px;
  border-left: 7px solid var(--ng-gold);
  padding: 18px;
}

body.db .lcx-page-cta-grid {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  padding: 28px;
}

@media (max-width: 1180px) {
  body.db :is(.lcx-home-hero-grid,
  .lcx-inspection-hero-grid,
  .lcx-about-hero-grid,
  .lcx-contact-hero-grid,
  .lcx-resource-hero-grid,
  .lcx-dispatch-grid,
  .lcx-system-grid,
  .lcx-report-grid,
  .lcx-family-grid,
  .lcx-brief-grid,
  .lcx-process-grid,
  .lcx-scope-workbench,
  .lcx-newbuild-grid,
  .lcx-mission-grid,
  .lcx-community-grid,
  .lcx-founder-grid,
  .lcx-profile-grid,
  .lcx-values-grid,
  .lcx-quote-grid,
  .lcx-service-map-grid,
  .lcx-next-grid,
  .lcx-library-grid,
  .lcx-seasonal-grid,
  .lcx-checklist-grid,
  .lcx-page-cta-grid) {
    grid-template-columns: 1fr;
  }
  body.db .lcx-quote-planner,
  body.db .lcx-resource-sidebar {
    position: static;
  }
  body.db .lcx-page-cta-grid .hero-actions {
    justify-content: start;
  }
}
@media (max-width: 880px) {
  body.db :is(.lcx-home-hero,
  .lcx-inspection-hero,
  .lcx-about-hero,
  .lcx-contact-hero,
  .lcx-resource-hero,
  .lcx-dispatch,
  .lcx-system-snapshot,
  .lcx-report-handoff,
  .lcx-family-handoff,
  .lcx-audience-section,
  .lcx-brief-section,
  .lcx-process-section,
  .lcx-scope-section,
  .lcx-newbuild-section,
  .lcx-mission-quote,
  .lcx-community-section,
  .lcx-founder-timeline,
  .lcx-profile-section,
  .lcx-values-section,
  .lcx-story-gallery,
  .lcx-quote-section,
  .lcx-service-map-section,
  .lcx-next-section,
  .lcx-audience-guide,
  .lcx-library-section,
  .lcx-seasonal-section,
  .lcx-checklist-section,
  .lcx-reference-section,
  .lcx-page-cta) {
    padding: 48px 0;
  }
  body.db :is(.lcx-home-hero h1, .lcx-inspection-hero h1, .lcx-about-hero h1, .lcx-contact-hero h1, .lcx-resource-hero h1) {
    font-size: 3rem;
  }
  body.db :is(.lcx-section-heading h2,
  .lcx-readiness-panel h2,
  .lcx-decision-console h2,
  .lcx-system-menu h2,
  .lcx-report-grid h2,
  .lcx-family-grid h2,
  .lcx-audience-section h2,
  .lcx-brief-grid h2,
  .lcx-process-grid h2,
  .lcx-scope-head h2,
  .lcx-newbuild-grid h2,
  .lcx-community-grid h2,
  .lcx-founder-grid h2,
  .lcx-profile-grid h2,
  .lcx-values-grid h2,
  .lcx-story-grid h2,
  .lcx-quote-planner h2,
  .lcx-form-intro h2,
  .lcx-service-map-grid h2,
  .lcx-next-grid h2,
  .lcx-resource-sidebar h2,
  .lcx-seasonal-grid h2,
  .lcx-checklist-grid h2,
  .lcx-page-cta-grid h2) {
    font-size: 2rem;
  }
  body.db :is(.lcx-status-bar .site-container, .lcx-contact-ribbon .site-container, .lcx-need-rail, .lcx-report-tabs, .lcx-brief-tabs, .request-tabs, .lcx-filter-row, .lcx-resource-dashboard, .lcx-category-groups details > div, .lcx-link-list, .lcx-credential-wall, .lcx-audience-grid, .lcx-audience-guide-grid, .lcx-value-list, .lcx-season-list) {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  body.db :is(.lcx-selected-need, .lcx-vital-card, .lcx-report-preview, .lcx-brief-card, .lcx-active-system, .lcx-route-feature, .lcx-profile-card, .lcx-request-card, .lcx-resource-plan, .lcx-provider-table article, .lcx-story-grid) {
    grid-template-columns: 1fr;
  }
  body.db :is(.lcx-selected-need img, .lcx-vital-card img, .lcx-report-preview img, .lcx-brief-card img, .lcx-active-system img, .lcx-route-feature img, .lcx-profile-card img) {
    min-height: 280px;
    height: 280px;
  }
  body.db .lcx-provider-actions {
    justify-content: flex-start;
  }
  body.db .lcx-service-map {
    grid-template-columns: repeat(3, minmax(0, 1fr));
    min-height: auto;
  }
  body.db app-contact-form .contact-form-card form,
  body.db app-contact-form .local-concierge-form-progress {
    grid-template-columns: 1fr;
  }
  body.db app-contact-form .form-group:nth-of-type(1),
  body.db app-contact-form .form-group:nth-of-type(2) {
    grid-column: 1/-1;
  }
}
@media (max-width: 580px) {
  body.db :is(.lcx-home-hero h1, .lcx-inspection-hero h1, .lcx-about-hero h1, .lcx-contact-hero h1, .lcx-resource-hero h1) {
    font-size: 2.3rem;
  }
  body.db :is(.lcx-status-bar .site-container, .lcx-contact-ribbon .site-container, .lcx-need-rail, .lcx-report-tabs, .lcx-brief-tabs, .request-tabs, .lcx-filter-row, .lcx-resource-dashboard, .lcx-category-groups details > div, .lcx-link-list, .lcx-credential-wall, .lcx-audience-grid, .lcx-audience-guide-grid, .lcx-value-list, .lcx-season-list, .lcx-accordion-body ul, .lcx-service-map) {
    grid-template-columns: 1fr;
  }
  body.db .lcx-owner-ticket,
  body.db .lcx-care-roster article,
  body.db .lcx-prep-list div,
  body.db .lcx-process-timeline article,
  body.db .lcx-process-timeline article.is-report-step {
    grid-template-columns: 1fr;
  }
  body.db .lcx-process-timeline::before,
  body.db .lcx-phase-list::before {
    display: none;
  }
  body.db .lcx-process-timeline img,
  body.db .lcx-owner-ticket img,
  body.db .lcx-care-roster img {
    width: 100%;
    height: 190px;
  }
  body.db :is(.lcx-selected-need > div, .lcx-vital-card > div, .lcx-report-preview > div, .lcx-brief-card > div, .lcx-active-system > div, .lcx-route-feature > div, .lcx-profile-card > div, .lcx-request-card > div, .lcx-readiness-panel, .lcx-decision-console, .lcx-resource-sidebar, .lcx-form-intro, .lcx-page-cta-grid) {
    padding: 16px;
  }
  body.db .lcx-provider-actions a,
  body.db .lcx-provider-actions span {
    width: 100%;
  }
  body.db app-contact-form .contact-form-card {
    padding: 16px;
  }
  body.db app-contact-form .contact-form-card button[type=submit] {
    width: 100%;
  }
}
body.db {
  --lcx-cream: #fffaf0;
  --lcx-mint: #edf7f1;
  --lcx-aqua: #e8f5f6;
  --lcx-card: rgba(255, 255, 255, 0.9);
  --lcx-border: rgba(31, 103, 88, 0.16);
  --lcx-shadow: 0 28px 72px rgba(19, 39, 42, 0.13);
}

body.db main {
  background: radial-gradient(circle at 92% 7%, rgba(198, 147, 61, 0.18), transparent 27rem), radial-gradient(circle at 8% 18%, rgba(40, 122, 132, 0.16), transparent 24rem), linear-gradient(180deg, rgba(255, 250, 240, 0.98), rgba(237, 247, 241, 0.95) 42%, rgba(232, 245, 246, 0.92)), linear-gradient(90deg, rgba(31, 103, 88, 0.07) 1px, transparent 1px);
  background-size: auto, auto, auto, 74px 100%;
}

body.db :is(.lcx-home-hero,
.lcx-inspection-hero,
.lcx-about-hero,
.lcx-contact-hero,
.lcx-resource-hero) {
  padding: clamp(142px, 11vw, 170px) 0 clamp(70px, 7vw, 96px);
  background: radial-gradient(circle at 82% 24%, rgba(198, 147, 61, 0.17), transparent 22rem), linear-gradient(135deg, rgba(255, 250, 240, 0.98), rgba(232, 245, 246, 0.94)), linear-gradient(90deg, transparent 0, transparent clamp(24px, 6vw, 72px), rgba(31, 103, 88, 0.15) clamp(24px, 6vw, 72px), rgba(31, 103, 88, 0.15) calc(clamp(24px, 6vw, 72px) + 1px), transparent calc(clamp(24px, 6vw, 72px) + 1px));
}

body.db :is(.lcx-home-hero,
.lcx-inspection-hero,
.lcx-about-hero,
.lcx-contact-hero,
.lcx-resource-hero)::before {
  position: absolute;
  top: 26px;
  left: clamp(18px, 4vw, 54px);
  width: min(210px, 42vw);
  height: 42px;
  border: 1px solid rgba(198, 147, 61, 0.22);
  border-radius: 999px;
  background: radial-gradient(circle, rgba(198, 147, 61, 0.42) 0 2px, transparent 3px) 14px 50%/18px 18px repeat-x, rgba(255, 250, 240, 0.7);
  content: "";
  opacity: 0.72;
}

body.db :is(.lcx-home-hero,
.lcx-inspection-hero,
.lcx-about-hero,
.lcx-contact-hero,
.lcx-resource-hero)::after {
  position: absolute;
  right: clamp(18px, 5vw, 72px);
  bottom: 24px;
  width: min(310px, 42vw);
  height: 7px;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--ng-gold), var(--ng-teal), var(--ng-green));
  content: "";
  opacity: 0.8;
}

body.db :is(.lcx-home-hero h1,
.lcx-inspection-hero h1,
.lcx-about-hero h1,
.lcx-contact-hero h1,
.lcx-resource-hero h1) {
  max-width: 900px;
  font-size: clamp(3.1rem, 6.5vw, 5.2rem);
  line-height: 0.94;
  text-wrap: balance;
}

body.db :is(.lcx-home-hero p,
.lcx-inspection-hero p,
.lcx-about-hero p,
.lcx-contact-hero p,
.lcx-resource-hero p) {
  max-width: 760px;
  font-size: clamp(1rem, 1.4vw, 1.16rem);
}

body.db :is(.lcx-home-hero .eyebrow, .lcx-inspection-hero .eyebrow, .lcx-about-hero .eyebrow, .lcx-contact-hero .eyebrow, .lcx-resource-hero .eyebrow, .mini-label) {
  width: -moz-fit-content;
  width: fit-content;
  border: 1px solid rgba(198, 147, 61, 0.28);
  border-radius: 999px;
  background: rgba(255, 250, 240, 0.8);
  color: #76531b;
  padding: 7px 11px;
}

body.db :is(.lcx-desk-board,
.lcx-readiness-panel,
.lcx-decision-console,
.lcx-selected-need,
.lcx-vital-card,
.lcx-report-preview,
.lcx-scope-ticket,
.lcx-brief-card,
.lcx-active-system,
.lcx-about-portrait,
.lcx-route-feature,
.lcx-profile-card,
.lcx-quote-planner,
.lcx-form-intro,
.lcx-contact-card,
.lcx-featured-guide,
.lcx-resource-sidebar,
.lcx-resource-plan,
.lcx-resource-disclaimer,
.lcx-page-cta-grid,
.lcx-phone-panel,
.lcx-privacy-note) {
  border-color: var(--lcx-border);
  border-radius: 18px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.94), rgba(255, 250, 240, 0.84)), linear-gradient(135deg, rgba(232, 247, 241, 0.34), rgba(232, 245, 246, 0.28));
  box-shadow: var(--lcx-shadow);
}

body.db :is(.lcx-credential-wall article, .lcx-audience-grid article, .lcx-audience-guide article, .lcx-value-list article, .lcx-season-list article, .lcx-care-roster article, .lcx-prep-list div, .lcx-system-accordion details, .lcx-category-groups details, .lcx-provider-group, .lcx-story-grid article, .lcx-resource-dashboard div, .lcx-link-list a) {
  border-color: var(--lcx-border);
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.88);
  box-shadow: 0 18px 42px rgba(19, 39, 42, 0.08);
}

body.db :is(.lcx-about-portrait, .lcx-family-grid img, .lcx-owner-ticket img, .lcx-care-roster img, .lcx-story-grid img, .lcx-contact-card img, .lcx-featured-guide img, .lcx-selected-need img, .lcx-vital-card img, .lcx-report-preview img, .lcx-brief-card img, .lcx-active-system img, .lcx-route-feature img, .lcx-profile-card img, .lcx-request-card img) {
  filter: saturate(0.96) contrast(1.04);
}

body.db .lcx-about-portrait {
  border: 10px solid rgba(255, 250, 240, 0.88);
}

body.db .lcx-about-portrait::before,
body.db :is(.lcx-contact-card, .lcx-featured-guide)::before {
  position: absolute;
  top: 18px;
  left: 50%;
  z-index: 2;
  width: 132px;
  height: 28px;
  border: 1px solid rgba(198, 147, 61, 0.24);
  border-radius: 999px;
  background: rgba(255, 226, 156, 0.52);
  box-shadow: 0 8px 20px rgba(19, 39, 42, 0.1);
  content: "";
  transform: translateX(-50%) rotate(-2deg);
}

body.db .lcx-about-portrait figcaption {
  border-left-color: var(--ng-gold);
  border-radius: 16px;
  background: rgba(19, 39, 42, 0.88);
  -webkit-backdrop-filter: blur(10px);
          backdrop-filter: blur(10px);
}

body.db :is(.lcx-selected-need, .lcx-vital-card, .lcx-report-preview, .lcx-brief-card, .lcx-active-system, .lcx-route-feature, .lcx-profile-card, .lcx-request-card) {
  position: relative;
}

body.db :is(.lcx-selected-need, .lcx-vital-card, .lcx-report-preview, .lcx-brief-card, .lcx-active-system, .lcx-route-feature, .lcx-profile-card, .lcx-request-card)::before {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 6px;
  background: linear-gradient(90deg, var(--ng-gold), var(--ng-teal), var(--ng-green));
  content: "";
  z-index: 1;
}

body.db :is(.lcx-checklist button, .lcx-need-rail button, .lcx-vital-tabs button, .lcx-report-tabs button, .lcx-brief-tabs button, .lcx-route-tabs button, .lcx-profile-tabs button, .request-tabs button, .lcx-filter-row button, .lcx-category-list button, .lcx-category-groups button) {
  border-radius: 14px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.94), rgba(237, 247, 241, 0.82));
  box-shadow: 0 10px 22px rgba(19, 39, 42, 0.06);
}

body.db :is(.lcx-checklist button:hover, .lcx-need-rail button:hover, .lcx-vital-tabs button:hover, .lcx-report-tabs button:hover, .lcx-brief-tabs button:hover, .lcx-route-tabs button:hover, .lcx-profile-tabs button:hover, .request-tabs button:hover, .lcx-filter-row button:hover, .lcx-category-list button:hover, .lcx-category-groups button:hover),
body.db :is(.lcx-checklist button.is-checked, .lcx-need-rail button.is-selected, .lcx-vital-tabs button.is-selected, .lcx-report-tabs button.is-selected, .lcx-brief-tabs button.is-selected, .lcx-route-tabs button.is-selected, .lcx-profile-tabs button.is-selected, .request-tabs button.is-selected, .lcx-filter-row button.is-selected, .lcx-category-list button.is-selected, .lcx-category-groups button.is-selected) {
  border-color: rgba(31, 103, 88, 0.36);
  background: linear-gradient(135deg, #1f6758, #287a84);
  color: #ffffff;
  box-shadow: 0 18px 36px rgba(31, 103, 88, 0.18);
}

body.db :is(.lcx-route-tabs button.is-selected span, .lcx-profile-tabs button.is-selected span, .lcx-vital-tabs button.is-selected span, .lcx-report-tabs button.is-selected span, .lcx-brief-tabs button.is-selected span, .request-tabs button.is-selected span, .lcx-category-list button.is-selected span, .lcx-category-groups button.is-selected span) {
  color: rgba(255, 255, 255, 0.78);
}

body.db :is(.lcx-status-bar, .lcx-contact-ribbon) {
  background: radial-gradient(circle at 10% 0, rgba(198, 147, 61, 0.3), transparent 18rem), linear-gradient(90deg, #1f6758, #287a84, #385b7c);
}

body.db :is(.lcx-status-bar article, .lcx-contact-ribbon a, .lcx-contact-ribbon article) {
  min-height: 144px;
  padding: 26px;
}

body.db .lcx-mission-grid blockquote {
  border-left: 0;
  border-radius: 18px;
  background: radial-gradient(circle at 96% 5%, rgba(198, 147, 61, 0.2), transparent 16rem), linear-gradient(135deg, #13272a, #1f6758);
  box-shadow: var(--lcx-shadow);
}

body.db .lcx-mission-grid blockquote p {
  font-size: clamp(1.65rem, 3vw, 2.35rem);
  line-height: 1.22;
  text-wrap: balance;
}

body.db app-contact-form .contact-form-card {
  border-radius: 18px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(255, 250, 240, 0.9)), radial-gradient(circle at 100% 0, rgba(198, 147, 61, 0.12), transparent 18rem);
  box-shadow: var(--lcx-shadow);
}

body.db app-contact-form .form-control,
body.db .lcx-resource-search input {
  border-radius: 14px;
}

body.db app-contact-form .form-control:focus,
body.db .lcx-resource-search input:focus {
  border-color: rgba(40, 122, 132, 0.5);
  box-shadow: 0 0 0 4px rgba(198, 147, 61, 0.2);
}

body.db .lcx-link-list a:hover,
body.db .lcx-provider-actions a:hover {
  border-color: rgba(31, 103, 88, 0.3);
  background: rgba(237, 247, 241, 0.94);
  transform: translateY(-1px);
}

@media (max-width: 880px) {
  body.db :is(.lcx-home-hero,
  .lcx-inspection-hero,
  .lcx-about-hero,
  .lcx-contact-hero,
  .lcx-resource-hero) {
    padding-top: 136px;
  }
}
@media (max-width: 580px) {
  body.db :is(.lcx-home-hero,
  .lcx-inspection-hero,
  .lcx-about-hero,
  .lcx-contact-hero,
  .lcx-resource-hero) {
    padding-top: 142px;
  }
  body.db :is(.lcx-home-hero h1, .lcx-inspection-hero h1, .lcx-about-hero h1, .lcx-contact-hero h1, .lcx-resource-hero h1) {
    font-size: clamp(2.32rem, 10vw, 3.1rem);
  }
}
body.db :is(.lcx-dispatch,
.lcx-system-snapshot,
.lcx-report-handoff,
.lcx-family-handoff,
.lcx-audience-section,
.lcx-brief-section,
.lcx-process-section,
.lcx-scope-section,
.lcx-mission-quote,
.lcx-community-section,
.lcx-values-section,
.lcx-story-gallery,
.lcx-quote-section,
.lcx-next-section,
.lcx-library-section,
.lcx-reference-section,
.lcx-page-cta) {
  padding: clamp(42px, 5vw, 62px) 0;
}

body.db .lcx-readiness-steps {
  display: grid;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

body.db .lcx-readiness-steps li {
  display: grid;
  grid-template-columns: 34px minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  min-height: 48px;
  border: 1px solid var(--lcx-border);
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.78);
  padding: 8px 10px;
}

body.db .lcx-readiness-steps span {
  display: grid;
  place-items: center;
  width: 30px;
  height: 30px;
  border-radius: 999px;
  background: rgba(198, 147, 61, 0.18);
  color: #76531b;
  font-size: 0.72rem;
  font-weight: 900;
}

body.db .lcx-readiness-steps li.is-ready span {
  background: linear-gradient(135deg, var(--ng-green), var(--ng-teal));
  color: #fff;
}

body.db .lcx-readiness-steps strong {
  color: var(--ng-ink);
  font-size: 0.95rem;
  line-height: 1.2;
}

body.db :is(.lcx-selected-need img, .lcx-vital-card img, .lcx-report-preview img, .lcx-brief-card img) {
  min-height: 330px;
}

body.db .lcx-scope-workbench-compact {
  grid-template-columns: 1fr;
}

body.db .lcx-scope-workbench-compact .lcx-system-accordion {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.db .lcx-scope-workbench-compact summary {
  min-height: 92px;
}

body.db .lcx-quote-grid {
  grid-template-columns: minmax(0, 760px);
  justify-content: center;
}

body.db .lcx-form-column {
  display: grid;
  gap: 18px;
}

body.db .lcx-resource-summary-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 14px;
  align-items: center;
  border: 1px solid var(--lcx-border);
  border-radius: 16px;
  background: rgba(255, 255, 255, 0.88);
  box-shadow: 0 18px 42px rgba(19, 39, 42, 0.08);
  padding: 14px 16px;
}

body.db .lcx-resource-summary-row strong {
  color: var(--ng-ink);
  font-size: 1.05rem;
}

body.db .lcx-resource-summary-row span,
body.db .lcx-resource-summary-row small {
  color: var(--ng-muted);
  line-height: 1.35;
}

body.db .lcx-resource-controls {
  grid-template-columns: minmax(0, 1.2fr) minmax(180px, 0.8fr) auto;
  margin-top: 0;
}

body.db .lcx-provider-group summary {
  grid-template-columns: minmax(0, 1fr) auto;
  padding: 14px 16px;
}

body.db .lcx-provider-group summary {
  display: grid;
  gap: 12px;
  align-items: center;
  cursor: pointer;
}

body.db .lcx-provider-group summary::marker {
  color: var(--ng-green);
}

body.db .lcx-provider-group summary p {
  margin: 2px 0 0;
}

body.db .lcx-provider-table article {
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  padding: 13px 16px;
}

body.db .lcx-provider-actions {
  align-items: center;
}

body.db .lcx-provider-actions a,
body.db .lcx-provider-actions span {
  min-height: 34px;
  padding: 7px 11px;
}

body.db .lcx-reference-section {
  padding-bottom: clamp(56px, 6vw, 76px);
}

@media (max-width: 880px) {
  body.db .lcx-scope-workbench-compact .lcx-system-accordion,
  body.db .lcx-resource-controls,
  body.db .lcx-provider-table article {
    grid-template-columns: 1fr;
  }
  body.db .lcx-provider-actions {
    justify-content: flex-start;
  }
}
@media (max-width: 580px) {
  body.db :is(.lcx-dispatch,
  .lcx-system-snapshot,
  .lcx-report-handoff,
  .lcx-family-handoff,
  .lcx-audience-section,
  .lcx-brief-section,
  .lcx-process-section,
  .lcx-scope-section,
  .lcx-mission-quote,
  .lcx-community-section,
  .lcx-values-section,
  .lcx-story-gallery,
  .lcx-quote-section,
  .lcx-next-section,
  .lcx-library-section,
  .lcx-reference-section,
  .lcx-page-cta) {
    padding: 36px 0;
  }
  body.db .lcx-resource-summary-row {
    display: grid;
  }
  body.db :is(.lcx-selected-need img, .lcx-vital-card img, .lcx-report-preview img, .lcx-brief-card img) {
    height: 190px;
    min-height: 190px;
  }
}
body.da :is(.fj-logbook-hero,
.fj-inspection-cover,
.fj-about-cover,
.fj-contact-desk,
.fj-resource-cover) {
  position: relative;
  overflow: hidden;
  padding: clamp(88px, 9vw, 128px) 0 clamp(66px, 7vw, 90px);
  background: linear-gradient(135deg, rgba(255, 250, 240, 0.98), rgba(235, 245, 239, 0.94)), repeating-linear-gradient(0deg, transparent 0, transparent 33px, rgba(49, 95, 78, 0.07) 34px), linear-gradient(90deg, transparent 0, transparent clamp(56px, 7vw, 84px), rgba(154, 90, 69, 0.22) clamp(56px, 7vw, 84px), rgba(154, 90, 69, 0.22) calc(clamp(56px, 7vw, 84px) + 1px), transparent calc(clamp(56px, 7vw, 84px) + 1px));
}

body.da :is(.fj-logbook-hero,
.fj-inspection-cover,
.fj-about-cover,
.fj-contact-desk,
.fj-resource-cover)::before {
  position: absolute;
  top: 18px;
  bottom: 18px;
  left: clamp(18px, 4vw, 54px);
  width: 12px;
  border-radius: 999px;
  background: radial-gradient(circle, rgba(154, 90, 69, 0.34) 0 2px, transparent 3px) 0 0/12px 26px;
  content: "";
  opacity: 0.72;
}

body.da :is(.fj-logbook-hero,
.fj-inspection-cover,
.fj-about-cover,
.fj-contact-desk,
.fj-resource-cover)::after {
  position: absolute;
  inset: auto 0 0;
  height: 7px;
  background: linear-gradient(90deg, var(--ng-coral), var(--ng-gold), var(--ng-green), var(--ng-teal), var(--ng-blue));
  content: "";
}

body.da :is(.fj-logbook-hero-grid,
.fj-inspection-cover-grid,
.fj-about-cover-grid,
.fj-contact-desk-grid,
.fj-resource-cover-grid,
.fj-dispatch-grid,
.fj-photo-grid,
.fj-family-handoff-grid,
.fj-hotspot-grid,
.fj-newbuild-grid,
.fj-page-cta-grid,
.fj-mission-grid,
.fj-founder-grid,
.fj-profile-ledger-grid,
.fj-values-grid,
.fj-schedule-grid,
.fj-contact-workbench-grid,
.fj-prep-ledger-grid,
.fj-resource-console-grid,
.fj-reference-grid) {
  display: grid;
  gap: 28px;
  align-items: start;
}

body.da :is(.fj-logbook-hero-grid,
.fj-about-cover-grid,
.fj-contact-desk-grid,
.fj-resource-cover-grid) {
  grid-template-columns: minmax(0, 1.05fr) minmax(340px, 0.76fr);
  align-items: center;
}

body.da .fj-inspection-cover-grid {
  grid-template-columns: minmax(0, 0.95fr) minmax(330px, 0.58fr);
  align-items: center;
}

body.da :is(.fj-log-cover,
.fj-inspection-cover-grid > div:first-child,
.fj-about-cover-grid > div:first-child,
.fj-contact-desk-grid > div:first-child,
.fj-resource-cover-grid > div:first-child,
.fj-section-kicker,
.fj-panel-heading,
.fj-form-intro,
.fj-scope-head > div:first-child,
.fj-schedule-grid > div:first-child,
.fj-prep-ledger-grid > div:first-child,
.fj-resource-heading > div:first-child,
.fj-reference-grid > div:first-child,
.fj-values-grid > div:first-child,
.fj-newbuild-grid > div:first-child,
.fj-focus-copy) {
  display: grid;
  gap: 14px;
}

body.da .fj-log-stamp {
  display: inline-flex;
  width: -moz-fit-content;
  width: fit-content;
  border: 1px solid rgba(154, 90, 69, 0.3);
  border-radius: 999px;
  background: rgba(154, 90, 69, 0.1);
  color: var(--ng-coral);
  font-size: 0.72rem;
  font-weight: 900;
  padding: 6px 10px;
  text-transform: uppercase;
}

body.da :is(.fj-log-cover h1,
.fj-inspection-cover h1,
.fj-about-cover h1,
.fj-contact-desk h1,
.fj-resource-cover h1) {
  margin: 0;
  color: var(--ng-ink);
  font-size: clamp(3rem, 6.6vw, 5.15rem);
  line-height: 0.96;
  letter-spacing: 0;
  text-wrap: balance;
}

body.da :is(.fj-log-cover .hero-lede,
.fj-inspection-cover p,
.fj-about-cover p,
.fj-contact-desk p,
.fj-resource-cover p,
.fj-section-kicker p,
.fj-panel-heading p,
.fj-scope-head p,
.fj-schedule-grid p,
.fj-prep-ledger-grid p,
.fj-resource-heading p,
.fj-reference-grid p,
.fj-values-grid p,
.fj-newbuild-grid p,
.fj-focus-copy p) {
  margin: 0;
  color: var(--ng-muted);
  line-height: 1.65;
}

body.da :is(.fj-section-kicker h2,
.fj-panel-heading h2,
.fj-scope-head h2,
.fj-schedule-grid h2,
.fj-prep-ledger-grid h2,
.fj-resource-heading h2,
.fj-reference-grid h2,
.fj-values-grid h2,
.fj-newbuild-grid h2,
.fj-focus-copy h2,
.fj-page-cta h2) {
  margin: 0;
  color: var(--ng-ink);
  font-size: clamp(2.05rem, 4vw, 3.05rem);
  line-height: 1.07;
  letter-spacing: 0;
  text-wrap: balance;
}

body.da :is(.fj-hero-spread,
.fj-readiness-panel,
.fj-selected-docket,
.fj-focus-photo,
.fj-family-handoff-grid,
.fj-scope-summary,
.fj-house-map,
.fj-active-system-sheet,
.fj-page-cta-grid,
.fj-mission-grid,
.fj-route-feature,
.fj-profile-sheet,
.fj-values-grid,
.fj-phone-panel,
.fj-calendar-card,
.fj-next-timeline,
.fj-request-planner,
.fj-featured-guide,
.fj-resource-sidebar,
.fj-resource-plan,
.fj-resource-disclaimer) {
  border: 1px solid var(--fj-edge);
  border-radius: 8px;
  background: linear-gradient(180deg, rgba(255, 250, 240, 0.96), rgba(251, 253, 249, 0.94)), repeating-linear-gradient(0deg, transparent 0, transparent 27px, rgba(49, 95, 78, 0.045) 28px);
  box-shadow: var(--fj-shadow);
  overflow: hidden;
}

body.da :is(.fj-hero-spread, .fj-readiness-panel, .fj-scope-summary, .fj-featured-guide, .fj-next-timeline) {
  border-left: 7px solid var(--ng-coral);
}

body.da .fj-credential-row,
body.da .resource-hero-cues,
body.da .fj-focus-tabs,
body.da .fj-docket-tabs,
body.da .fj-scope-filter,
body.da .fj-route-pills,
body.da .fj-profile-tabs,
body.da .request-tabs,
body.da .fj-checklist-actions,
body.da .fj-local-marker-list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

body.da :is(.fj-credential-row span, .resource-hero-cues span, .fj-local-marker-list span) {
  border: 1px solid rgba(49, 95, 78, 0.22);
  border-radius: 999px;
  background: rgba(231, 238, 228, 0.86);
  color: var(--ng-green);
  font-size: 0.78rem;
  font-weight: 900;
  padding: 8px 10px;
}

body.da :is(.fj-docket-tabs button,
.fj-focus-tabs button,
.fj-scope-filter button,
.fj-route-pills button,
.fj-profile-tabs button,
.request-tabs button,
.fj-resource-category-list button,
.fj-category-board button) {
  border: 1px solid var(--fj-edge);
  border-radius: 8px;
  background: linear-gradient(180deg, rgba(255, 250, 240, 0.96), rgba(251, 253, 249, 0.92)), repeating-linear-gradient(0deg, transparent 0, transparent 22px, rgba(49, 95, 78, 0.035) 23px);
  color: var(--ng-ink);
  font-weight: 900;
  padding: 10px 12px;
  text-align: left;
  transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease;
}

body.da :is(.fj-docket-tabs button,
.fj-focus-tabs button,
.fj-scope-filter button,
.fj-route-pills button,
.fj-profile-tabs button,
.request-tabs button,
.fj-resource-category-list button,
.fj-category-board button):hover {
  border-color: rgba(154, 90, 69, 0.34);
  box-shadow: 0 12px 24px rgba(24, 35, 38, 0.08);
  transform: translateY(-1px);
}

body.da :is(.fj-docket-tabs button,
.fj-focus-tabs button,
.fj-scope-filter button,
.request-tabs button) {
  text-align: center;
}

body.da :is(.fj-docket-tabs button.is-selected,
.fj-focus-tabs button.is-selected,
.fj-scope-filter button.is-selected,
.fj-route-pills button.is-selected,
.fj-profile-tabs button.is-selected,
.request-tabs button.is-selected,
.fj-resource-category-list button.is-selected,
.fj-category-board button.is-selected) {
  border-color: rgba(49, 95, 78, 0.34);
  background: linear-gradient(135deg, #315f4e, #2f7485);
  color: var(--ng-white);
}

body.da :is(.fj-hero-spread figure,
.fj-about-cover figure,
.fj-focus-photo,
.fj-scope-summary,
.fj-phone-panel,
.fj-featured-guide) {
  position: relative;
  margin: 0;
}

body.da :is(.fj-hero-spread img,
.fj-about-cover figure img,
.fj-scope-summary img,
.fj-phone-panel img,
.fj-featured-guide img) {
  width: 100%;
  height: clamp(320px, 35vw, 430px);
  object-fit: cover;
  object-position: center 18%;
  filter: saturate(0.95) contrast(1.04);
}

body.da :is(.fj-hero-spread figcaption, .fj-about-cover figcaption) {
  display: grid;
  gap: 4px;
  border-top: 1px dashed rgba(24, 35, 38, 0.18);
  padding: 16px 18px;
}

body.da :is(.fj-hero-spread figcaption span, .fj-about-cover figcaption span) {
  color: var(--ng-coral);
  font-size: 0.74rem;
  font-weight: 900;
  text-transform: uppercase;
}

body.da :is(.fj-hero-spread figcaption strong, .fj-about-cover figcaption strong) {
  color: var(--ng-ink);
  font-size: 1.4rem;
}

body.da .fj-margin-notes,
body.da .fj-scope-summary ol,
body.da .fj-featured-guide ol,
body.da .fj-phase-timeline,
body.da .fj-request-card ul,
body.da .fj-route-feature ul,
body.da .fj-profile-sheet ul {
  display: grid;
  gap: 10px;
  margin: 0;
  padding: 0;
  list-style: none;
}

body.da .fj-margin-notes {
  padding: 18px;
}

body.da .fj-margin-notes li,
body.da .fj-phase-timeline li {
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr);
  gap: 10px;
  align-items: start;
}

body.da .fj-margin-notes li span,
body.da .fj-phase-timeline li span,
body.da .fj-next-timeline article > span,
body.da .fj-observe-flow article span {
  display: grid;
  place-items: center;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: rgba(184, 135, 47, 0.17);
  color: var(--ng-coral);
  font-weight: 900;
}

body.da :is(.fj-margin-notes strong, .fj-margin-notes small) {
  display: block;
  line-height: 1.35;
}

body.da .fj-margin-notes small {
  color: var(--ng-muted);
}

body.da .fj-quick-ledger {
  padding: 0 0 46px;
  background: linear-gradient(180deg, rgba(243, 247, 244, 0.98), rgba(251, 253, 249, 0.9));
}

body.da .fj-quick-ledger .site-container {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  transform: translateY(-22px);
}

body.da .fj-quick-ledger article {
  display: grid;
  gap: 6px;
  min-height: 126px;
  border: 1px solid var(--fj-edge);
  border-top: 5px solid var(--ng-gold);
  border-radius: 8px;
  background: linear-gradient(180deg, rgba(255, 250, 240, 0.98), rgba(251, 253, 249, 0.94)), repeating-linear-gradient(0deg, transparent 0, transparent 25px, rgba(49, 95, 78, 0.045) 26px);
  box-shadow: 0 16px 34px rgba(24, 35, 38, 0.09);
  padding: 16px;
}

body.da .fj-quick-ledger span,
body.da .fj-proof-wall span,
body.da :is(.fj-scope-ledger article span, .fj-resource-guardrails span, .fj-active-resource-strip span, .fj-provider-group header span, .fj-provider-table article > div > span) {
  color: var(--ng-coral);
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
}

body.da .fj-quick-ledger strong,
body.da .fj-proof-wall strong {
  color: var(--ng-ink);
  font-size: 2rem;
  line-height: 1;
}

body.da .fj-quick-ledger small {
  color: var(--ng-muted);
}

body.da .fj-dispatch-board,
body.da .fj-hotspot-section,
body.da .fj-founder-timeline,
body.da .fj-contact-workbench,
body.da .fj-resource-console {
  padding: 64px 0;
}

body.da .fj-dispatch-grid {
  grid-template-columns: minmax(280px, 0.38fr) minmax(0, 1fr);
}

body.da .fj-readiness-panel,
body.da .fj-next-timeline,
body.da .fj-resource-sidebar {
  position: sticky;
  top: 112px;
}

body.da .fj-readiness-panel,
body.da .fj-next-timeline,
body.da .fj-resource-sidebar {
  display: grid;
  gap: 16px;
  padding: 18px;
}

body.da .fj-progress-meter {
  display: grid;
  gap: 8px;
}

body.da .fj-progress-meter span {
  color: var(--ng-coral);
  font-size: 0.74rem;
  font-weight: 900;
  text-transform: uppercase;
}

body.da .fj-progress-meter strong {
  color: var(--ng-ink);
  font-size: 2.2rem;
}

body.da :is(.fj-progress-meter div, .fj-active-system-sheet .scope-progress div) {
  height: 10px;
  border-radius: 999px;
  background: rgba(24, 35, 38, 0.1);
  overflow: hidden;
}

body.da :is(.fj-progress-meter i, .fj-active-system-sheet .scope-progress i) {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--ng-coral), var(--ng-gold), var(--ng-green));
}

body.da .fj-checklist {
  display: grid;
  gap: 9px;
}

body.da .fj-progress-track {
  position: relative;
  margin: 6px 12px 8px;
  overflow: visible !important;
}

body.da .fj-progress-track b {
  position: absolute;
  top: 50%;
  z-index: 2;
  display: grid;
  place-items: center;
  width: 24px;
  height: 24px;
  border: 2px solid #fffdf7;
  border-radius: 50%;
  background: #d4ddd8;
  color: var(--ng-green);
  font-size: 0.72rem;
  font-style: normal;
  font-weight: 900;
  transform: translate(-50%, -50%);
  box-shadow: 0 4px 10px rgba(24, 35, 38, 0.16);
}

body.da .fj-progress-track b.is-checked {
  background: var(--ng-green);
  color: #fffdf7;
}

body.da .fj-checklist article {
  display: grid;
  gap: 4px;
  border: 1px solid rgba(24, 35, 38, 0.13);
  border-left: 4px solid rgba(154, 90, 69, 0.5);
  border-radius: 8px;
  background: rgba(255, 250, 240, 0.76);
  color: var(--ng-ink);
  padding: 12px;
  text-align: left;
}

body.da .fj-checklist article.is-checked {
  border-left-color: var(--ng-green);
  background: rgba(231, 238, 228, 0.92);
  box-shadow: inset 0 0 0 1px rgba(49, 95, 78, 0.12);
}

body.da .fj-checklist article span,
body.da :is(.fj-selected-docket dt, .fj-active-system-sheet dt, .fj-profile-sheet dt, .fj-provider-table dt) {
  color: var(--ng-coral);
  font-size: 0.7rem;
  font-weight: 900;
  text-transform: uppercase;
}

body.da .fj-checklist article small {
  color: var(--ng-muted);
  line-height: 1.35;
}

body.da .fj-checklist-actions button,
body.da .fj-resource-search button,
body.da .fj-active-resource-strip button,
body.da .fj-resource-plan a {
  min-height: 42px;
  border: 1px solid rgba(24, 35, 38, 0.16);
  border-radius: 6px;
  background: rgba(251, 253, 249, 0.92);
  color: var(--ng-green);
  font-weight: 900;
  padding: 9px 12px;
  text-decoration: none;
}

body.da .fj-decision-docket {
  display: grid;
  gap: 18px;
}

body.da .fj-selected-docket,
body.da .fj-active-system-sheet,
body.da .fj-route-feature,
body.da .fj-profile-sheet {
  display: grid;
  grid-template-columns: minmax(260px, 0.42fr) minmax(0, 1fr);
}

body.da :is(.fj-selected-docket, .fj-active-system-sheet, .fj-route-feature, .fj-profile-sheet)::before {
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  height: 5px;
  background: linear-gradient(90deg, var(--ng-coral), var(--ng-gold), var(--ng-green), var(--ng-teal));
  content: "";
}

body.da :is(.fj-selected-docket, .fj-active-system-sheet, .fj-route-feature, .fj-profile-sheet) {
  position: relative;
}

body.da :is(.fj-selected-docket img, .fj-active-system-sheet img, .fj-route-feature img, .fj-profile-sheet img) {
  width: 100%;
  height: 100%;
  min-height: 360px;
  object-fit: cover;
  filter: saturate(0.95) contrast(1.04);
}

body.da :is(.fj-selected-docket > div, .fj-active-system-sheet > div:last-child, .fj-route-feature > div, .fj-profile-sheet > div) {
  display: grid;
  align-content: center;
  gap: 14px;
  padding: 24px;
}

body.da :is(.fj-selected-docket h3, .fj-active-system-sheet h2, .fj-route-feature h3, .fj-profile-sheet h3, .fj-resource-plan h3) {
  margin: 0;
  color: var(--ng-ink);
  font-size: 2rem;
  line-height: 1.1;
}

body.da :is(.fj-selected-docket p, .fj-active-system-sheet p, .fj-route-feature p, .fj-profile-sheet p, .fj-resource-plan p, .fj-resource-disclaimer p) {
  margin: 0;
  color: var(--ng-muted);
  line-height: 1.58;
}

body.da :is(.fj-selected-docket dl, .fj-active-system-sheet dl, .fj-profile-sheet dl) {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
}

body.da :is(.fj-selected-docket dl div, .fj-active-system-sheet dl div, .fj-profile-sheet dl div) {
  border: 1px solid rgba(24, 35, 38, 0.13);
  border-left: 4px solid var(--ng-gold);
  border-radius: 8px;
  background: rgba(255, 250, 240, 0.78);
  padding: 12px;
}

body.da :is(.fj-selected-docket dd, .fj-active-system-sheet dd, .fj-profile-sheet dd) {
  margin: 5px 0 0;
  color: var(--ng-ink);
  line-height: 1.35;
}

body.da :is(.fj-selected-docket ul, .fj-route-feature ul, .fj-profile-sheet ul, .fj-request-card ul) {
  display: grid;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

body.da :is(.fj-selected-docket li, .fj-route-feature li, .fj-profile-sheet li, .fj-request-card li) {
  border-left: 3px solid var(--ng-gold);
  color: var(--ng-muted);
  padding-left: 10px;
}

body.da .fj-owner-story-band,
body.da .fj-schedule-board,
body.da .fj-reference-library {
  padding: 64px 0;
  background: linear-gradient(180deg, rgba(230, 240, 242, 0.7), rgba(251, 253, 249, 0.94)), repeating-linear-gradient(0deg, transparent 0, transparent 31px, rgba(24, 35, 38, 0.045) 32px);
}

body.da .fj-photo-field,
body.da .fj-accordion-scope,
body.da .fj-profile-ledger,
body.da .fj-values-wall,
body.da .fj-prep-ledger {
  padding: 64px 0;
}

body.da .fj-photo-grid {
  grid-template-columns: minmax(330px, 0.82fr) minmax(0, 1fr);
  align-items: center;
}

body.da .fj-focus-photo img {
  width: 100%;
  height: 430px;
  object-fit: cover;
}

body.da .fj-focus-photo figcaption {
  display: grid;
  gap: 8px;
  border-top: 1px dashed rgba(24, 35, 38, 0.18);
  padding: 18px;
}

body.da .fj-focus-photo figcaption span {
  color: var(--ng-coral);
  font-size: 0.74rem;
  font-weight: 900;
  text-transform: uppercase;
}

body.da .fj-focus-photo figcaption strong {
  color: var(--ng-ink);
  font-size: 1.45rem;
}

body.da .fj-family-handoff {
  padding: 64px 0 78px;
}

body.da .fj-family-handoff-grid {
  grid-template-columns: 220px minmax(0, 1fr) auto;
  align-items: center;
  border-left: 7px solid var(--ng-coral);
  padding: 18px;
}

body.da .fj-family-handoff-grid img {
  width: 220px;
  height: 170px;
  border-radius: 6px;
  object-fit: cover;
  object-position: center 42%;
}

body.da .fj-family-handoff-grid h2 {
  margin: 0;
  color: var(--ng-ink);
  font-size: 2rem;
  line-height: 1.1;
}

body.da .fj-scope-summary > div,
body.da .fj-featured-guide > div,
body.da .fj-phone-panel > div {
  display: grid;
  gap: 10px;
  padding: 18px;
}

body.da :is(.fj-scope-summary strong, .fj-phone-panel strong, .fj-featured-guide strong) {
  color: var(--ng-ink);
  font-size: 1.8rem;
  line-height: 1.1;
}

body.da :is(.fj-scope-summary p, .fj-phone-panel p, .fj-featured-guide p) {
  margin: 0;
  color: var(--ng-muted);
  line-height: 1.5;
}

body.da .fj-scope-summary li,
body.da .fj-featured-guide li {
  border-left: 3px solid var(--ng-gold);
  color: var(--ng-muted);
  padding-left: 9px;
}

body.da .fj-hotspot-grid {
  grid-template-columns: minmax(0, 1fr) !important;
  max-width: 1080px;
}

body.da .fj-hotspot-intro {
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(280px, 0.42fr);
  gap: clamp(18px, 4vw, 42px);
  align-items: end;
  margin-bottom: clamp(18px, 3vw, 28px);
}

body.da .fj-hotspot-intro > div {
  display: grid;
  gap: 12px;
}

body.da .fj-hotspot-intro h1 {
  max-width: 820px;
  margin: 0;
  color: var(--ng-ink);
  font-size: clamp(2.25rem, 4.6vw, 3.85rem);
  line-height: 1.02;
  text-wrap: balance;
}

body.da .fj-hotspot-intro p {
  max-width: 68ch;
  margin: 0;
  color: var(--ng-muted);
  line-height: 1.62;
}

body.da .fj-selected-system-brief {
  display: grid;
  gap: 7px;
  border: 1px solid rgba(0, 136, 168, 0.16);
  border-left: 5px solid var(--gtx-logo-teal, var(--ng-teal));
  border-radius: 8px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(237, 249, 251, 0.72)), repeating-linear-gradient(0deg, transparent 0, transparent 24px, rgba(0, 136, 168, 0.035) 25px);
  box-shadow: 0 16px 34px rgba(7, 9, 11, 0.08);
  padding: 16px;
}

body.da .fj-selected-system-brief span,
body.da .fj-selected-system-brief small {
  color: var(--gtx-logo-teal-deep, var(--ng-blue));
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
}

body.da .fj-selected-system-brief strong {
  color: var(--ng-ink);
  font-size: 1.35rem;
  line-height: 1.1;
}

body.da .fj-selected-system-brief p {
  margin: 0;
  color: var(--ng-muted);
  line-height: 1.48;
}

body.da .fj-house-map {
  width: 100%;
  max-width: 980px;
  margin: 0 auto;
  padding: 18px;
}

body.da .fj-house-outline {
  position: relative;
  aspect-ratio: 16/10;
  min-height: clamp(380px, 48vw, 590px);
  border: 1px solid rgba(24, 35, 38, 0.13);
  border-radius: 6px;
  background: linear-gradient(180deg, rgba(230, 240, 242, 0.9), rgba(251, 253, 249, 0.96)), repeating-linear-gradient(90deg, transparent 0, transparent 38px, rgba(24, 35, 38, 0.045) 39px);
  overflow: hidden;
}

body.da .fj-roof-plane {
  position: absolute;
  top: 12%;
  left: 13%;
  width: 74%;
  height: 22%;
  clip-path: polygon(50% 0, 100% 100%, 0 100%);
  background: rgba(154, 90, 69, 0.2);
}

body.da .fj-attic-plane {
  position: absolute;
  top: 33%;
  left: 21%;
  width: 58%;
  height: 13%;
  border: 1px dashed rgba(24, 35, 38, 0.2);
  background: rgba(184, 135, 47, 0.12);
}

body.da .fj-main-plane {
  position: absolute;
  top: 46%;
  left: 17%;
  width: 66%;
  height: 35%;
  border: 2px solid rgba(49, 95, 78, 0.36);
  background: rgba(251, 253, 249, 0.72);
}

body.da .fj-foundation-plane {
  position: absolute;
  top: 81%;
  left: 13%;
  width: 74%;
  height: 8%;
  background: rgba(66, 95, 141, 0.16);
}

body.da .fj-house-outline button {
  position: absolute;
  display: grid;
  gap: 2px;
  place-items: center;
  min-width: clamp(58px, 7vw, 78px);
  min-height: clamp(50px, 5.8vw, 62px);
  border: 1px solid rgba(24, 35, 38, 0.16);
  border-radius: 6px;
  background: rgba(251, 253, 249, 0.95);
  color: var(--ng-ink);
  box-shadow: 0 10px 22px rgba(24, 35, 38, 0.12);
  transform: translate(-50%, -50%);
}

body.da .fj-house-outline button span {
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: var(--ng-green);
  color: var(--ng-white);
  font-weight: 900;
}

body.da .fj-house-outline button small {
  color: var(--ng-muted);
  font-size: 0.68rem;
  font-weight: 900;
  text-transform: uppercase;
}

body.da .fj-house-outline button.is-selected {
  border-color: rgba(154, 90, 69, 0.42);
  background: var(--ng-coral);
  color: var(--ng-white);
}

body.da .fj-house-outline button.is-selected span {
  background: var(--ng-white);
  color: var(--ng-coral);
}

body.da .fj-house-outline button.is-selected small {
  color: var(--ng-white);
}

body.da .fj-map-key {
  display: grid;
  gap: 4px;
  border-top: 1px dashed rgba(24, 35, 38, 0.18);
  margin-top: 14px;
  padding-top: 14px;
}

body.da .fj-map-key span {
  color: var(--ng-coral);
  font-size: 0.74rem;
  font-weight: 900;
  text-transform: uppercase;
}

body.da .fj-map-key strong {
  color: var(--ng-ink);
  font-size: 1.4rem;
}

body.da .fj-map-key small {
  color: var(--ng-muted);
}

body.da .fj-hotspot-modal-backdrop {
  position: fixed;
  inset: 0;
  z-index: 10050;
  display: grid;
  place-items: start center;
  background: rgba(24, 35, 38, 0.58);
  padding: clamp(14px, 3vw, 34px);
  overflow-y: auto;
}

body.da .fj-hotspot-modal {
  position: relative;
  display: grid;
  gap: 18px;
  width: min(980px, 100%);
  max-height: calc(100svh - 42px);
  border: 1px solid rgba(24, 35, 38, 0.18);
  border-left: 7px solid var(--ng-coral);
  border-radius: 8px;
  background: linear-gradient(180deg, rgba(255, 250, 240, 0.98), rgba(251, 253, 249, 0.97)), repeating-linear-gradient(0deg, transparent 0, transparent 27px, rgba(49, 95, 78, 0.045) 28px);
  box-shadow: 0 30px 80px rgba(0, 0, 0, 0.28);
  overflow: auto;
  padding: clamp(18px, 3vw, 28px);
}

body.da .fj-hotspot-modal header {
  display: grid;
  gap: 8px;
  padding-right: 48px;
}

body.da .fj-modal-topbar {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
}

body.da .fj-modal-pager {
  display: grid;
  grid-template-columns: repeat(2, minmax(96px, 1fr));
  gap: 8px;
  width: min(100%, 230px);
}

body.da .fj-modal-pager .ng-button {
  width: 100%;
  min-height: 38px;
  padding: 8px 12px;
  white-space: nowrap;
}

body.da .fj-hotspot-modal h2 {
  margin: 0;
  color: var(--ng-ink);
  font-size: clamp(2rem, 4vw, 3rem);
  line-height: 1.02;
  letter-spacing: 0;
}

body.da .fj-hotspot-modal p {
  margin: 0;
  color: var(--ng-muted);
  line-height: 1.58;
}

body.da .fj-modal-close {
  position: absolute;
  top: 14px;
  right: 14px;
  display: grid;
  place-items: center;
  width: 38px;
  height: 38px;
  border: 1px solid rgba(24, 35, 38, 0.18);
  border-radius: 6px;
  background: #fffdf7;
  color: var(--ng-coral);
  cursor: pointer;
  font-weight: 900;
}

body.da .fj-modal-body {
  display: grid;
  grid-template-columns: minmax(260px, 0.52fr) minmax(0, 1fr);
  gap: 18px;
  align-items: start;
}

body.da .fj-modal-body img {
  width: 100%;
  height: clamp(250px, 32vw, 380px);
  border: 1px solid rgba(24, 35, 38, 0.14);
  border-radius: 6px;
  object-fit: cover;
}

body.da .fj-modal-copy {
  display: grid;
  gap: 14px;
  min-width: 0;
}

body.da .fj-hotspot-modal .scope-progress {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
  border: 1px solid rgba(24, 35, 38, 0.13);
  border-radius: 6px;
  background: rgba(255, 250, 240, 0.8);
  padding: 12px;
}

body.da .fj-hotspot-modal .scope-progress span {
  color: var(--ng-coral);
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
}

body.da .fj-hotspot-modal .scope-progress div {
  grid-column: 1/-1;
  height: 10px;
  border-radius: 999px;
  background: rgba(24, 35, 38, 0.1);
  overflow: hidden;
}

body.da .fj-hotspot-modal .scope-progress i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--ng-coral), var(--ng-gold), var(--ng-green));
}

body.da .fj-hotspot-modal dl {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
}

body.da .fj-hotspot-modal dl div {
  border: 1px solid rgba(24, 35, 38, 0.13);
  border-left: 4px solid var(--ng-gold);
  border-radius: 8px;
  background: rgba(255, 250, 240, 0.78);
  padding: 12px;
}

body.da .fj-hotspot-modal dt {
  color: var(--ng-coral);
  font-size: 0.7rem;
  font-weight: 900;
  text-transform: uppercase;
}

body.da .fj-hotspot-modal dd {
  margin: 5px 0 0;
  color: var(--ng-ink);
  line-height: 1.35;
}

body.da .fj-modal-actions {
  display: grid;
  justify-items: center;
}

body.da .fj-modal-actions .ng-button-primary {
  width: min(100%, 310px);
}

body.da .fj-active-system-sheet {
  grid-template-columns: minmax(280px, 0.45fr) minmax(0, 1fr);
  position: relative;
}

body.da .fj-active-system-sheet .scope-progress {
  position: absolute;
  top: 14px;
  right: 14px;
  left: 14px;
  z-index: 1;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
  border: 1px solid rgba(251, 253, 249, 0.4);
  border-radius: 6px;
  background: rgba(24, 35, 38, 0.76);
  color: var(--ng-white);
  padding: 10px;
}

body.da .fj-active-system-sheet .scope-progress span {
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
}

body.da .fj-active-system-sheet .scope-progress div {
  grid-column: 1/-1;
  background: rgba(251, 253, 249, 0.18);
}

body.da .fj-scope-head,
body.da .fj-resource-heading {
  display: grid;
  grid-template-columns: minmax(0, 0.7fr) minmax(0, 1fr);
  gap: 28px;
  align-items: start;
}

body.da .fj-scope-filter {
  margin: 22px 0;
}

body.da .fj-scope-ledger {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 18px;
}

body.da .fj-scope-ledger article,
body.da .fj-observe-flow article,
body.da .fj-resource-guardrails article,
body.da .fj-shortlist article,
body.da .fj-commitment-list article {
  display: grid;
  gap: 6px;
  border: 1px solid rgba(24, 35, 38, 0.13);
  border-left: 4px solid var(--ng-gold);
  border-radius: 6px;
  background: rgba(251, 253, 249, 0.86);
  padding: 14px;
}

body.da .fj-system-accordion {
  display: grid;
  gap: 12px;
}

body.da .fj-system-accordion details,
body.da .fj-category-board details {
  border: 1px solid rgba(24, 35, 38, 0.15);
  border-radius: 6px;
  background: rgba(251, 253, 249, 0.94);
  box-shadow: 0 12px 28px rgba(24, 35, 38, 0.08);
  overflow: hidden;
}

body.da .fj-system-accordion summary,
body.da .fj-category-board summary {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  cursor: pointer;
  padding: 16px;
}

body.da .fj-system-accordion summary::marker,
body.da .fj-category-board summary::marker {
  content: "";
}

body.da .fj-system-accordion summary::-webkit-details-marker,
body.da .fj-category-board summary::-webkit-details-marker {
  display: none;
}

body.da .fj-system-accordion summary span,
body.da .fj-category-board summary span {
  color: var(--ng-coral);
  font-size: 0.76rem;
  font-weight: 900;
  text-transform: uppercase;
}

body.da .fj-system-accordion summary .fj-accordion-arrow {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border: 1px solid rgba(0, 76, 95, 0.2);
  border-radius: 50%;
  background: rgba(0, 136, 168, 0.09);
  transition: background 160ms ease, border-color 160ms ease, transform 160ms ease;
}

body.da .fj-system-accordion summary .fj-accordion-arrow::before {
  width: 9px;
  height: 9px;
  border-right: 3px solid var(--gtx-logo-teal-deep, var(--ng-teal));
  border-bottom: 3px solid var(--gtx-logo-teal-deep, var(--ng-teal));
  content: "";
  transform: translateY(-2px) rotate(45deg);
  transition: transform 160ms ease;
}

body.da .fj-system-accordion details[open] summary .fj-accordion-arrow {
  border-color: rgba(0, 76, 95, 0.34);
  background: var(--gtx-logo-teal-deep, var(--ng-teal));
}

body.da .fj-system-accordion details[open] summary .fj-accordion-arrow::before {
  border-color: #ffffff;
  transform: translateY(2px) rotate(225deg);
}

body.da .fj-system-accordion summary strong,
body.da .fj-category-board summary strong {
  color: var(--ng-ink);
}

body.da .fj-system-accordion summary small,
body.da .fj-category-board summary small {
  color: var(--ng-muted);
}

body.da .fj-accordion-body {
  display: grid;
  gap: 16px;
  border-top: 1px dashed rgba(24, 35, 38, 0.18);
  padding: 18px;
}

body.da .fj-observe-flow {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
}

body.da .fj-checkpoint-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

body.da .fj-checkpoint-list span {
  display: grid;
  grid-template-columns: 30px minmax(0, 1fr);
  gap: 8px;
  align-items: center;
  color: var(--ng-muted);
}

body.da .fj-checkpoint-list small {
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border-radius: 50%;
  background: var(--ng-green);
  color: var(--ng-white);
  font-weight: 900;
}

body.da .fj-newbuild-grid,
body.da .fj-founder-grid,
body.da .fj-schedule-grid,
body.da .fj-prep-ledger-grid {
  grid-template-columns: minmax(0, 0.62fr) minmax(0, 1fr);
}

body.da .fj-phase-timeline {
  position: relative;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 14px;
}

body.da .fj-phase-timeline::before {
  position: absolute;
  top: 32px;
  right: 14%;
  left: 14%;
  width: auto;
  height: 2px;
  background: rgba(154, 90, 69, 0.24);
  content: "";
}

body.da .fj-phase-timeline li {
  position: relative;
  grid-template-columns: 1fr;
  justify-items: center;
  gap: 10px;
  border: 1px solid rgba(24, 35, 38, 0.13);
  border-radius: 6px;
  background: rgba(251, 253, 249, 0.92);
  padding: 18px 16px;
  text-align: center;
}

body.da .fj-phase-timeline li span {
  position: relative;
  z-index: 1;
}

body.da .fj-phase-timeline li div {
  display: grid;
  gap: 6px;
  justify-items: center;
}

body.da .fj-phase-timeline li strong {
  color: var(--ng-ink);
  line-height: 1.2;
}

body.da .fj-phase-timeline li p {
  max-width: 24ch;
  line-height: 1.45;
}

body.da .fj-page-cta {
  padding: 58px 0 78px;
}

body.da .fj-page-cta-grid {
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  border-left: 7px solid var(--ng-coral);
  padding: 28px;
}

body.da .fj-mission-quote {
  padding: 0 0 48px;
  background: linear-gradient(180deg, rgba(243, 247, 244, 0.98), rgba(251, 253, 249, 0.9));
}

body.da .fj-mission-grid {
  grid-template-columns: minmax(0, 0.95fr) minmax(320px, 0.75fr);
  transform: translateY(-24px);
  border-left: 7px solid var(--ng-coral);
  border-top: 1px solid rgba(184, 135, 47, 0.24);
  padding: 24px;
}

body.da .fj-mission-grid blockquote {
  display: grid;
  gap: 12px;
  margin: 0;
}

body.da .fj-mission-grid blockquote span {
  color: var(--ng-coral);
  font-size: 0.74rem;
  font-weight: 900;
  text-transform: uppercase;
}

body.da .fj-mission-grid blockquote p {
  position: relative;
  margin: 0;
  color: var(--ng-ink);
  font-size: clamp(2rem, 3.9vw, 3rem);
  font-weight: 850;
  line-height: 1.12;
  text-wrap: balance;
}

body.da .fj-proof-wall {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

body.da .fj-proof-wall div {
  display: grid;
  gap: 6px;
  border: 1px solid rgba(24, 35, 38, 0.13);
  border-radius: 8px;
  background: linear-gradient(180deg, rgba(255, 250, 240, 0.92), rgba(243, 247, 244, 0.82)), repeating-linear-gradient(0deg, transparent 0, transparent 20px, rgba(49, 95, 78, 0.04) 21px);
  padding: 14px;
}

body.da .fj-route-pills button,
body.da .fj-profile-tabs button {
  display: grid;
  gap: 4px;
}

body.da .fj-route-pills button span,
body.da .fj-profile-tabs button span {
  color: var(--ng-coral);
  font-size: 0.72rem;
  text-transform: uppercase;
}

body.da :is(.fj-route-pills button.is-selected span, .fj-profile-tabs button.is-selected span) {
  color: var(--ng-gold);
}

body.da .fj-profile-ledger-grid {
  grid-template-columns: minmax(0, 0.52fr) minmax(200px, 0.28fr) minmax(0, 1fr);
}

body.da .fj-profile-ledger-compact .fj-profile-ledger-grid {
  grid-template-columns: minmax(240px, 0.54fr) minmax(180px, 0.3fr) minmax(0, 0.92fr);
  align-items: stretch;
}

body.da .fj-profile-ledger-compact .fj-section-kicker {
  align-content: start;
  gap: 12px;
}

body.da .fj-profile-ledger-compact .fj-section-kicker h2 {
  font-size: clamp(1.85rem, 3vw, 2.55rem);
}

body.da .fj-profile-ledger-compact .fj-section-kicker p:not(.eyebrow) {
  max-width: 46ch;
  line-height: 1.5;
}

body.da .fj-team-marker-strip {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

body.da .fj-team-marker-strip span {
  border: 1px solid rgba(49, 95, 78, 0.2);
  border-radius: 999px;
  background: rgba(231, 238, 228, 0.86);
  color: var(--ng-green);
  font-size: 0.74rem;
  font-weight: 900;
  padding: 7px 9px;
}

body.da .fj-profile-ledger-compact .fj-profile-tabs {
  display: grid;
  gap: 10px;
}

body.da .fj-profile-ledger-compact .fj-profile-tabs button {
  min-height: 82px;
}

body.da .fj-profile-ledger-compact .fj-profile-sheet {
  grid-template-columns: minmax(150px, 0.34fr) minmax(0, 1fr);
}

body.da .fj-profile-ledger-compact .fj-profile-sheet img {
  min-height: 280px;
}

body.da .fj-profile-ledger-compact .fj-profile-sheet > div {
  align-content: start;
  gap: 11px;
  padding: 20px;
}

body.da .fj-profile-ledger-compact .fj-profile-sheet h3 {
  font-size: clamp(1.55rem, 2.7vw, 2.1rem);
}

body.da .fj-profile-ledger-compact .fj-profile-sheet ul {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 7px;
}

body.da .fj-profile-ledger-compact .fj-profile-sheet li {
  border: 1px solid rgba(24, 35, 38, 0.12);
  border-left: 3px solid var(--ng-gold);
  border-radius: 6px;
  background: rgba(255, 250, 240, 0.72);
  padding: 8px 10px;
  font-size: 0.88rem;
  line-height: 1.3;
}

body.da .fj-profile-note {
  border-top: 1px dashed rgba(24, 35, 38, 0.16);
  padding-top: 10px;
  font-size: 0.92rem;
}

body.da .fj-profile-tabs {
  align-content: start;
}

body.da .fj-owner-story-band .site-container {
  display: grid;
  gap: 18px;
}

body.da .fj-owner-story {
  display: grid;
  grid-template-columns: minmax(280px, 0.36fr) minmax(0, 1fr);
  border: 1px solid var(--fj-edge);
  border-radius: 8px;
  background: linear-gradient(180deg, rgba(255, 250, 240, 0.96), rgba(251, 253, 249, 0.94)), repeating-linear-gradient(0deg, transparent 0, transparent 27px, rgba(49, 95, 78, 0.04) 28px);
  box-shadow: var(--fj-shadow);
  overflow: hidden;
}

body.da .fj-owner-story.reverse {
  grid-template-columns: minmax(0, 1fr) minmax(280px, 0.36fr);
}

body.da .fj-owner-story.reverse img {
  order: 2;
}

body.da .fj-owner-story img {
  width: 100%;
  height: 100%;
  min-height: 430px;
  object-fit: cover;
  object-position: center 18%;
}

body.da .fj-owner-story.reverse img {
  object-position: center 20%;
}

body.da .fj-owner-story > div {
  display: grid;
  align-content: center;
  gap: 14px;
  padding: 30px;
}

body.da .fj-owner-story h2 {
  margin: 0;
  color: var(--ng-ink);
  font-size: 2.35rem;
}

body.da .fj-owner-story p {
  margin: 0;
  color: var(--ng-muted);
  line-height: 1.62;
}

body.da .fj-values-grid {
  grid-template-columns: minmax(0, 0.82fr) minmax(320px, 0.7fr);
  border-left: 7px solid var(--ng-coral);
  border-top: 1px solid rgba(184, 135, 47, 0.24);
  padding: 28px;
}

body.da .fj-commitment-list {
  display: grid;
  gap: 12px;
}

body.da .fj-commitment-list article span {
  color: var(--ng-ink);
  font-weight: 900;
}

body.da .fj-contact-ribbon {
  padding: 0 0 46px;
  background: linear-gradient(180deg, rgba(243, 247, 244, 0.98), rgba(251, 253, 249, 0.9));
}

body.da .fj-contact-ribbon .site-container {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 12px;
  transform: translateY(-22px);
}

body.da .fj-contact-form-first .fj-contact-desk-grid {
  grid-template-columns: minmax(0, 720px);
  justify-content: center;
}

body.da .fj-hero-form {
  display: block;
  min-width: 0;
  position: relative;
  z-index: 1;
}

body.da .fj-hero-form app-contact-form {
  display: block;
}

body.da .fj-contact-form-first + .fj-contact-ribbon {
  padding-top: 24px;
}

body.da .fj-contact-form-first + .fj-contact-ribbon .site-container {
  transform: none;
}

body.da .fj-contact-ribbon :is(a, article) {
  display: grid;
  gap: 6px;
  min-height: 124px;
  border: 1px solid var(--fj-edge);
  border-top: 5px solid var(--ng-gold);
  border-radius: 8px;
  background: linear-gradient(180deg, rgba(255, 250, 240, 0.98), rgba(251, 253, 249, 0.94)), repeating-linear-gradient(0deg, transparent 0, transparent 24px, rgba(49, 95, 78, 0.04) 25px);
  color: var(--ng-ink);
  box-shadow: 0 14px 30px rgba(24, 35, 38, 0.08);
  padding: 16px;
  text-decoration: none;
}

body.da .fj-contact-ribbon span {
  color: var(--ng-coral);
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
}

body.da .fj-contact-ribbon small {
  color: var(--ng-muted);
}

body.da .fj-phone-panel a {
  color: var(--ng-green);
  font-weight: 900;
}

body.da .fj-calendar-card {
  display: grid;
  grid-template-columns: repeat(7, minmax(0, 1fr));
  gap: 8px;
  padding: 14px;
}

body.da .fj-calendar-card div {
  display: grid;
  gap: 6px;
  min-height: 118px;
  border: 1px solid rgba(24, 35, 38, 0.13);
  border-radius: 8px;
  background: linear-gradient(180deg, rgba(231, 238, 228, 0.86), rgba(255, 250, 240, 0.78));
  padding: 12px;
}

body.da .fj-calendar-card .is-closed {
  background: rgba(154, 90, 69, 0.1);
}

body.da .fj-calendar-card span {
  color: var(--ng-coral);
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
}

body.da .fj-calendar-card strong {
  color: var(--ng-ink);
  font-size: 1.2rem;
}

body.da .fj-calendar-card small {
  color: var(--ng-muted);
}

body.da .fj-contact-workbench-grid {
  grid-template-columns: minmax(250px, 0.52fr) minmax(420px, 1fr) minmax(260px, 0.52fr);
}

body.da .fj-simple-request .fj-contact-workbench-grid {
  grid-template-columns: minmax(0, 720px) !important;
  justify-content: center;
}

body.da .fj-simple-request .fj-form-column {
  gap: 14px;
}

body.da .fj-simple-request .fj-form-intro {
  display: grid;
  gap: 8px;
  max-width: 620px;
}

body.da .fj-simple-request .fj-form-intro h2 {
  margin: 0;
  color: var(--ng-ink);
  font-size: clamp(2rem, 4vw, 2.75rem);
  line-height: 1.05;
}

body.da .fj-simple-request .fj-form-intro p {
  margin: 0;
  color: var(--ng-muted);
  line-height: 1.5;
}

body.da .fj-next-timeline article {
  display: grid;
  grid-template-columns: 36px minmax(0, 1fr);
  gap: 10px;
}

body.da .fj-next-timeline article p,
body.da .fj-privacy-note p,
body.da .fj-request-card p {
  margin: 0;
  color: var(--ng-muted);
  line-height: 1.5;
}

body.da .fj-privacy-note {
  display: grid;
  gap: 8px;
  border-top: 1px dashed rgba(24, 35, 38, 0.18);
  padding-top: 14px;
}

body.da .fj-privacy-note span {
  color: var(--ng-coral);
  font-weight: 900;
  text-transform: uppercase;
}

body.da .fj-form-column {
  display: grid;
  gap: 18px;
}

body.da app-contact-form .contact-form-card {
  margin-top: 0;
  border: 1px solid rgba(24, 35, 38, 0.15);
  border-left: 5px solid var(--ng-coral);
  border-radius: 8px;
  background: linear-gradient(180deg, rgba(255, 250, 240, 0.98), rgba(243, 247, 244, 0.96));
  box-shadow: 0 18px 44px rgba(24, 35, 38, 0.1);
  padding: clamp(18px, 3vw, 26px);
}

body.da app-contact-form :is(.contact-form-heading,
.form-assurance-row,
.field-journal-form-progress,
.field-journal-form-section,
.field-journal-field-hint,
.local-concierge-field-hint,
.report-studio-field-hint,
.local-concierge-submit-note,
.report-studio-submit-note,
.small.text-muted) {
  display: none !important;
}

body.da app-contact-form :is(.contact-form-default-copy, .contact-form-local-concierge-copy, .contact-form-report-studio-copy, .contact-form-neighborhood-guide-copy) {
  display: none;
}

body.da app-contact-form span.contact-form-field-journal-copy,
body.da app-contact-form h3.contact-form-field-journal-copy,
body.da app-contact-form .form-assurance-row span.contact-form-field-journal-copy {
  display: inline-flex;
}

body.da app-contact-form h3.contact-form-field-journal-copy {
  display: block;
  margin: 8px 0 0;
  color: var(--ng-ink);
  font-size: 1.9rem;
  line-height: 1.12;
}

body.da app-contact-form .contact-form-heading p,
body.da app-contact-form .field-journal-field-hint,
body.da app-contact-form .field-journal-form-section small,
body.da app-contact-form .small.text-muted {
  color: var(--ng-muted);
  line-height: 1.55;
}

body.da app-contact-form .form-assurance-row span,
body.da app-contact-form .field-journal-form-progress span {
  border: 1px solid rgba(49, 95, 78, 0.18);
  border-radius: 6px;
  background: rgba(231, 238, 228, 0.78);
  color: var(--ng-green);
  font-weight: 900;
}

body.da app-contact-form .contact-form-card form,
body.da app-contact-form .field-journal-form-progress {
  display: grid;
  gap: 16px;
}

body.da app-contact-form .contact-form-card form {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 14px;
}

body.da app-contact-form .field-journal-form-section strong,
body.da app-contact-form .control-label {
  color: var(--ng-ink);
}

body.da app-contact-form :is(.form-group:nth-of-type(1), .form-group:nth-of-type(2)) {
  grid-column: span 1;
}

body.da app-contact-form :is(.form-group:nth-of-type(3), .form-group:nth-of-type(4), .form-group:nth-of-type(5), .alert) {
  grid-column: 1/-1;
}

body.da app-contact-form .form-control {
  min-height: 48px;
  border: 1px solid rgba(24, 35, 38, 0.16);
  border-radius: 6px;
  background: var(--ng-white);
  font-size: 0.98rem;
}

body.da app-contact-form .form-control:focus {
  border-color: rgba(154, 90, 69, 0.45);
  box-shadow: 0 0 0 4px rgba(184, 135, 47, 0.16);
}

body.da app-contact-form textarea.form-control {
  min-height: 140px;
}

body.da app-contact-form .text-danger {
  border-left: 3px solid var(--ng-coral);
  color: #8b342a;
  font-size: 0.88rem;
  font-weight: 800;
  padding-left: 8px;
}

body.da app-contact-form .contact-form-card button[type=submit] {
  min-height: 50px;
  width: min(100%, 220px);
}

body.da .fj-request-planner {
  display: grid;
  align-content: start;
  gap: 14px;
}

body.da .fj-request-planner img {
  width: 100%;
  height: 210px;
  object-fit: cover;
  object-position: center 18%;
}

body.da .fj-request-planner > :not(img) {
  margin-right: 16px;
  margin-left: 16px;
}

body.da .fj-request-planner > :last-child {
  margin-bottom: 16px;
}

body.da .request-planner-header {
  display: grid;
  gap: 6px;
}

body.da .request-planner-header strong {
  color: var(--ng-ink);
  font-size: 1.25rem;
  line-height: 1.2;
}

body.da .fj-request-card {
  display: grid;
  gap: 10px;
}

body.da .fj-prep-ledger-grid {
  align-items: center;
}

body.da .fj-prep-list {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}

body.da .fj-prep-list div {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr);
  gap: 12px;
  align-items: center;
  min-height: 108px;
  border: 1px solid rgba(24, 35, 38, 0.13);
  border-radius: 6px;
  background: rgba(251, 253, 249, 0.92);
  padding: 14px;
}

body.da .fj-prep-list span {
  display: grid;
  place-items: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: rgba(154, 90, 69, 0.1);
  color: var(--ng-coral);
  font-weight: 900;
}

body.da .fj-resource-cover-grid {
  grid-template-columns: minmax(0, 0.95fr) minmax(330px, 0.62fr);
}

body.da .fj-resource-console-grid {
  grid-template-columns: minmax(260px, 0.3fr) minmax(0, 1fr);
}

body.da .fj-resource-search-only .fj-resource-console-grid {
  grid-template-columns: minmax(0, 1fr) !important;
  max-width: 980px;
}

body.da .fj-resource-sidebar {
  align-content: start;
}

body.da .fj-resource-search {
  display: grid;
  gap: 10px;
}

body.da .fj-resource-search label {
  display: grid;
  gap: 7px;
}

body.da .fj-resource-search label span {
  color: var(--ng-coral);
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
}

body.da .fj-resource-search input {
  min-height: 52px;
  border: 1px solid rgba(24, 35, 38, 0.16);
  border-radius: 6px;
  background: var(--ng-white);
  padding: 12px 14px;
}

body.da .fj-resource-search-panel {
  margin-top: 0;
  border: 1px solid rgba(24, 35, 38, 0.14);
  border-radius: 8px;
  background: rgba(255, 250, 240, 0.9);
  padding: 14px;
}

body.da .fj-resource-category-list,
body.da .fj-resource-guardrails,
body.da .fj-resource-results,
body.da .fj-category-board,
body.da .fj-provider-table,
body.da .fj-link-list {
  display: grid;
  gap: 12px;
}

body.da .fj-resource-category-list button {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
}

body.da .fj-active-resource-strip {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  border: 1px dashed rgba(24, 35, 38, 0.22);
  border-radius: 6px;
  background: rgba(243, 247, 244, 0.74);
  padding: 9px 12px;
}

body.da .fj-resource-plan {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(260px, 0.52fr);
  gap: 18px;
  border-left: 7px solid var(--ng-coral);
  padding: 18px;
}

body.da .fj-resource-plan > div,
body.da .fj-shortlist {
  display: grid;
  align-content: start;
  gap: 10px;
}

body.da .fj-category-board details > div {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  border-top: 1px dashed rgba(24, 35, 38, 0.18);
  padding: 14px;
}

body.da .fj-category-board button {
  display: grid;
  gap: 7px;
}

body.da .fj-provider-group {
  border: 1px solid var(--fj-edge);
  border-radius: 8px;
  background: linear-gradient(180deg, rgba(255, 250, 240, 0.96), rgba(251, 253, 249, 0.94)), repeating-linear-gradient(0deg, transparent 0, transparent 26px, rgba(49, 95, 78, 0.04) 27px);
  box-shadow: 0 16px 34px rgba(24, 35, 38, 0.09);
  overflow: hidden;
}

body.da .fj-provider-group header {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 16px;
  align-items: center;
  border-bottom: 1px dashed rgba(24, 35, 38, 0.18);
  padding: 16px;
}

body.da .fj-provider-group header p {
  margin: 4px 0 0;
  color: var(--ng-muted);
  line-height: 1.45;
}

body.da .fj-provider-table article {
  display: grid;
  grid-template-columns: minmax(230px, 1fr) minmax(220px, 0.72fr) auto;
  gap: 16px;
  align-items: center;
  border-bottom: 1px solid rgba(24, 35, 38, 0.09);
  padding: 15px 16px;
}

body.da .fj-provider-table article:last-child {
  border-bottom: 0;
}

body.da .fj-provider-table article > div > strong {
  display: block;
  margin-top: 4px;
  color: var(--ng-ink);
}

body.da .fj-provider-table small {
  color: var(--ng-muted);
}

body.da .fj-provider-table dl {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
}

body.da .fj-provider-table dd {
  margin: 3px 0 0;
  color: var(--ng-muted);
}

body.da .fj-provider-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  justify-content: flex-end;
}

body.da .fj-provider-actions a,
body.da .fj-provider-actions span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  border: 1px solid rgba(49, 95, 78, 0.24);
  border-radius: 6px;
  background: var(--ng-green);
  color: var(--ng-white);
  font-weight: 900;
  padding: 9px 12px;
  text-decoration: none;
  white-space: nowrap;
}

body.da .fj-resource-disclaimer {
  display: grid;
  gap: 8px;
  border-left: 7px solid var(--ng-coral);
  padding: 18px;
}

body.da .fj-resource-results,
body.da .fj-provider-table {
  gap: 10px;
}

body.da .fj-provider-table {
  padding: 12px;
}

body.da .fj-provider-card-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-auto-rows: 1fr;
  gap: 8px 10px;
}

body.da .fj-provider-table .fj-provider-card {
  display: grid;
  grid-template-columns: 1fr;
  gap: 5px;
  align-content: space-between;
  min-width: 0;
  min-height: 142px;
  border: 1px solid rgba(16, 42, 49, 0.12);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.9);
  padding: 9px 12px;
}

body.da .fj-provider-card > div,
body.da .fj-provider-card dl,
body.da .fj-provider-card dd,
body.da .fj-provider-card strong,
body.da .fj-provider-card small {
  min-width: 0;
  overflow-wrap: anywhere;
}

body.da .fj-provider-table .fj-provider-card > div > strong {
  font-size: clamp(0.98rem, 1vw, 1.08rem);
  line-height: 1.18;
}

body.da .fj-provider-table .fj-provider-card small {
  display: block;
  margin-top: 4px;
  line-height: 1.25;
}

body.da .fj-provider-table .fj-provider-card dl {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 6px;
}

body.da .fj-provider-card dt {
  font-size: 0.64rem;
}

body.da .fj-provider-card dd {
  font-size: 0.76rem;
  line-height: 1.25;
}

body.da .fj-provider-table .fj-provider-card .fj-provider-actions {
  justify-content: flex-start;
}

body.da .fj-provider-table .fj-provider-card .fj-provider-actions a,
body.da .fj-provider-table .fj-provider-card .fj-provider-actions span {
  min-height: 30px;
  width: 100%;
  border-radius: 8px;
  padding: 4px 10px;
  white-space: normal;
}

body.da .fj-resource-pagination {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
}

body.da .fj-resource-pagination div {
  display: flex;
  flex-wrap: wrap;
  gap: 6px;
  justify-content: center;
}

body.da .fj-resource-pagination button {
  min-height: 38px;
  border: 1px solid rgba(16, 42, 49, 0.18);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.9);
  color: #102a31;
  cursor: pointer;
  font: inherit;
  font-weight: 900;
  padding: 7px 11px;
}

body.da .fj-resource-pagination button:hover:not(:disabled),
body.da .fj-resource-pagination button.is-selected {
  border-color: rgba(36, 116, 140, 0.44);
  background: #184d5a;
  color: #ffffff;
}

body.da .fj-resource-pagination button:disabled {
  cursor: not-allowed;
  opacity: 0.5;
}

body.da .fj-reference-grid {
  grid-template-columns: minmax(0, 0.52fr) minmax(0, 1fr);
}

body.da .fj-link-list {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

body.da .fj-link-list a {
  display: grid;
  gap: 8px;
  min-height: 110px;
  border: 1px solid rgba(24, 35, 38, 0.13);
  border-left: 5px solid var(--ng-gold);
  border-radius: 8px;
  background: linear-gradient(180deg, rgba(255, 250, 240, 0.96), rgba(251, 253, 249, 0.94));
  color: var(--ng-ink);
  padding: 15px;
  text-decoration: none;
  box-shadow: 0 12px 24px rgba(24, 35, 38, 0.07);
}

body.da .fj-link-list span {
  font-weight: 900;
}

body.da .fj-link-list small {
  color: var(--ng-muted);
  line-height: 1.4;
}

@media (max-width: 1120px) {
  body.da .fj-profile-ledger-compact .fj-profile-ledger-grid,
  body.da .fj-profile-ledger-compact .fj-profile-sheet {
    grid-template-columns: 1fr;
  }
  body.da :is(.fj-logbook-hero-grid,
  .fj-inspection-cover-grid,
  .fj-about-cover-grid,
  .fj-contact-desk-grid,
  .fj-resource-cover-grid,
  .fj-dispatch-grid,
  .fj-photo-grid,
  .fj-hotspot-grid,
  .fj-newbuild-grid,
  .fj-mission-grid,
  .fj-founder-grid,
  .fj-profile-ledger-grid,
  .fj-values-grid,
  .fj-schedule-grid,
  .fj-contact-workbench-grid,
  .fj-prep-ledger-grid,
  .fj-resource-console-grid,
  .fj-reference-grid,
  .fj-scope-head,
  .fj-resource-heading,
  .fj-resource-plan,
  .fj-page-cta-grid) {
    grid-template-columns: 1fr;
  }
  body.da :is(.fj-readiness-panel, .fj-next-timeline, .fj-resource-sidebar) {
    position: static;
  }
  body.da .fj-quick-ledger .site-container,
  body.da .fj-scope-ledger,
  body.da .fj-calendar-card,
  body.da .fj-category-board details > div {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  body.da :is(.fj-selected-docket,
  .fj-active-system-sheet,
  .fj-route-feature,
  .fj-profile-sheet,
  .fj-owner-story,
  .fj-owner-story.reverse) {
    grid-template-columns: 1fr;
  }
  body.da .fj-owner-story.reverse img {
    order: 0;
  }
  body.da .fj-provider-table article {
    grid-template-columns: 1fr;
  }
  body.da .fj-provider-actions {
    justify-content: flex-start;
  }
}
@media (max-width: 720px) {
  body.da .fj-profile-ledger-compact .fj-profile-sheet ul {
    grid-template-columns: 1fr;
  }
  body.da .fj-profile-ledger-compact .fj-profile-sheet img {
    min-height: 230px;
  }
  body.da :is(.fj-logbook-hero,
  .fj-inspection-cover,
  .fj-about-cover,
  .fj-contact-desk,
  .fj-resource-cover,
  .fj-dispatch-board,
  .fj-photo-field,
  .fj-family-handoff,
  .fj-hotspot-section,
  .fj-accordion-scope,
  .fj-newbuild-route,
  .fj-page-cta,
  .fj-founder-timeline,
  .fj-profile-ledger,
  .fj-owner-story-band,
  .fj-values-wall,
  .fj-schedule-board,
  .fj-contact-workbench,
  .fj-prep-ledger,
  .fj-resource-console,
  .fj-reference-library) {
    padding-top: 42px;
    padding-bottom: 52px;
  }
  body.da :is(.fj-log-cover h1,
  .fj-inspection-cover h1,
  .fj-about-cover h1,
  .fj-contact-desk h1,
  .fj-resource-cover h1) {
    font-size: 2.45rem;
  }
  body.da :is(.fj-section-kicker h2,
  .fj-panel-heading h2,
  .fj-scope-head h2,
  .fj-schedule-grid h2,
  .fj-prep-ledger-grid h2,
  .fj-resource-heading h2,
  .fj-reference-grid h2,
  .fj-values-grid h2,
  .fj-newbuild-grid h2,
  .fj-focus-copy h2,
  .fj-page-cta h2,
  .fj-mission-grid blockquote p) {
    font-size: 1.85rem;
  }
  body.da :is(.fj-quick-ledger .site-container,
  .fj-contact-ribbon .site-container,
  app-contact-form .field-journal-form-progress,
  app-contact-form .contact-form-card form,
  .fj-selected-docket dl,
  .fj-active-system-sheet dl,
  .fj-profile-sheet dl,
  .fj-observe-flow,
  .fj-checkpoint-list,
  .fj-scope-ledger,
  .fj-proof-wall,
  .fj-calendar-card,
  .fj-prep-list,
  .fj-provider-table dl,
  .fj-provider-card-grid,
  .fj-resource-pagination,
  .fj-link-list,
  .fj-category-board details > div) {
    grid-template-columns: 1fr;
  }
  body.da .fj-resource-pagination div {
    justify-content: flex-start;
  }
  body.da .fj-family-handoff-grid {
    grid-template-columns: 1fr;
  }
  body.da .fj-family-handoff-grid img {
    width: 100%;
    height: 230px;
  }
  body.da .fj-house-outline {
    width: 100%;
    height: 330px;
    min-height: 0;
    aspect-ratio: auto;
  }
  body.da .fj-house-map {
    padding: 12px;
  }
  body.da .fj-house-outline button {
    min-width: 44px;
    min-height: 44px;
    padding: 6px;
  }
  body.da .fj-house-outline button span {
    width: 26px;
    height: 26px;
  }
  body.da .fj-house-outline button small {
    display: none !important;
  }
  body.da .fj-modal-body,
  body.da .fj-hotspot-modal dl,
  body.da .fj-modal-actions {
    grid-template-columns: 1fr;
  }
  body.da .fj-modal-actions .ng-button-primary {
    justify-self: stretch;
  }
  body.da .fj-phase-timeline {
    grid-template-columns: 1fr;
  }
  body.da .fj-phase-timeline::before {
    top: 18px;
    bottom: 18px;
    left: 15px;
    right: auto;
    width: 2px;
    height: auto;
  }
  body.da .fj-phase-timeline li {
    grid-template-columns: 36px minmax(0, 1fr);
    justify-items: start;
    text-align: left;
  }
  body.da .fj-phase-timeline li div {
    justify-items: start;
  }
  body.da .fj-phase-timeline li p {
    max-width: none;
  }
  body.da :is(.fj-hero-spread img,
  .fj-about-cover figure img,
  .fj-selected-docket img,
  .fj-active-system-sheet img,
  .fj-route-feature img,
  .fj-profile-sheet img,
  .fj-owner-story img,
  .fj-focus-photo img,
  .fj-scope-summary img,
  .fj-phone-panel img,
  .fj-featured-guide img) {
    height: 260px;
    min-height: 260px;
  }
  body.da :is(.fj-selected-docket > div,
  .fj-active-system-sheet > div:last-child,
  .fj-route-feature > div,
  .fj-profile-sheet > div,
  .fj-owner-story > div,
  .fj-page-cta-grid,
  .fj-values-grid,
  .fj-mission-grid) {
    padding: 18px;
  }
  body.da .fj-house-outline {
    min-height: 330px;
  }
  body.da .fj-house-outline button {
    min-width: 48px;
    min-height: 44px;
  }
  body.da .fj-house-outline button small {
    display: none;
  }
  body.da .fj-active-system-sheet .scope-progress {
    position: static;
    border-color: rgba(24, 35, 38, 0.15);
    background: rgba(24, 35, 38, 0.86);
    margin: 14px;
  }
  body.da app-contact-form :is(.form-group:nth-of-type(1), .form-group:nth-of-type(2), .form-group:nth-of-type(3), .form-group:nth-of-type(4), .form-group:nth-of-type(5), .alert) {
    grid-column: 1/-1;
  }
  body.da app-contact-form .contact-form-card {
    padding: 18px;
  }
  body.da app-contact-form .contact-form-card button[type=submit] {
    width: 100%;
  }
  body.da :is(.fj-docket-tabs, .fj-focus-tabs, .fj-scope-filter, .fj-route-pills, .fj-profile-tabs, .request-tabs) {
    display: grid;
    grid-template-columns: 1fr;
  }
}
@media (max-width: 720px) {
  body.da :is(.fj-logbook-hero,
  .fj-inspection-cover,
  .fj-about-cover,
  .fj-contact-desk,
  .fj-resource-cover) {
    padding-top: 132px;
  }
}
.thermal-reveal-section {
  position: relative;
  overflow: clip;
  padding: clamp(64px, 8vw, 108px) 0;
  border-top: 1px solid rgba(36, 116, 140, 0.14);
  border-bottom: 1px solid rgba(36, 116, 140, 0.12);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(237, 247, 248, 0.86)), linear-gradient(90deg, rgba(27, 106, 86, 0.05), rgba(45, 108, 223, 0.06));
}

.thermal-reveal-shell {
  display: grid;
  gap: clamp(22px, 4vw, 40px);
}

.thermal-reveal-heading {
  display: grid;
  grid-template-columns: minmax(0, 0.95fr) minmax(300px, 0.58fr);
  gap: clamp(20px, 4vw, 52px);
  align-items: end;
}

.thermal-reveal-heading h2 {
  max-width: 780px;
  margin: 0;
  color: var(--ng-ink);
  font-size: clamp(2.1rem, 4.4vw, 4rem);
  font-weight: 900;
  line-height: 1.04;
  scroll-margin-top: 130px;
}

.thermal-reveal-heading p:not(.eyebrow) {
  margin: 0;
  color: var(--ng-muted);
  font-size: 1.03rem;
  line-height: 1.7;
}

.thermal-reveal-frame {
  margin: 0;
  overflow: hidden;
  border: 1px solid rgba(36, 116, 140, 0.2);
  border-radius: 8px;
  background: #ffffff;
  box-shadow: 0 18px 46px rgba(23, 45, 52, 0.12);
}

.thermal-reveal-stage {
  position: relative;
  min-height: 500px;
  overflow: hidden;
  background: #102a31;
  aspect-ratio: 16/10;
  isolation: isolate;
}

.thermal-standard-image,
.thermal-image,
.thermal-color-map,
.thermal-scan-texture,
.thermal-reveal-pane,
.thermal-hotspot-layer {
  position: absolute;
  inset: 0;
}

.thermal-standard-image,
.thermal-image {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}

.thermal-standard-image {
  z-index: 1;
}

.thermal-reveal-pane {
  z-index: 4;
  overflow: hidden;
  pointer-events: none;
  transition: clip-path 120ms ease;
}

.thermal-image {
  filter: grayscale(1) contrast(1.65) brightness(0.78) sepia(1) saturate(5.2) hue-rotate(160deg);
}

.thermal-color-map {
  background: radial-gradient(ellipse at 34% 62%, rgba(16, 38, 143, 0.84) 0%, rgba(31, 135, 186, 0.58) 24%, transparent 42%), radial-gradient(ellipse at 55% 31%, rgba(255, 229, 84, 0.9) 0%, rgba(236, 86, 68, 0.56) 28%, transparent 46%), radial-gradient(ellipse at 79% 48%, rgba(104, 220, 244, 0.84) 0%, rgba(49, 61, 177, 0.52) 30%, transparent 48%), linear-gradient(90deg, rgba(11, 18, 91, 0.86), rgba(81, 17, 136, 0.78) 35%, rgba(219, 33, 151, 0.64) 62%, rgba(255, 174, 48, 0.62));
  mix-blend-mode: color;
  opacity: 0.92;
}

.thermal-color-map::after {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(255, 241, 116, 0.32), transparent 22%), linear-gradient(0deg, rgba(10, 17, 79, 0.44), transparent 38%);
  mix-blend-mode: overlay;
  content: "";
}

.thermal-scan-texture {
  background: repeating-linear-gradient(0deg, rgba(255, 255, 255, 0.08) 0 1px, transparent 1px 5px), linear-gradient(90deg, rgba(0, 0, 0, 0.26), transparent 18%, transparent 82%, rgba(0, 0, 0, 0.24));
  mix-blend-mode: overlay;
  opacity: 0.45;
}

.thermal-view-label {
  position: absolute;
  z-index: 7;
  top: 18px;
  display: inline-flex;
  align-items: center;
  min-height: 34px;
  border: 1px solid rgba(255, 255, 255, 0.42);
  border-radius: 999px;
  background: rgba(16, 42, 49, 0.76);
  color: #ffffff;
  box-shadow: 0 10px 24px rgba(16, 42, 49, 0.2);
  font-size: 0.77rem;
  font-weight: 900;
  line-height: 1;
  padding: 9px 12px;
  pointer-events: none;
  text-transform: uppercase;
}

.thermal-view-label-standard {
  right: 18px;
}

.thermal-view-label-thermal {
  left: 18px;
  background: rgba(18, 28, 84, 0.8);
}

.thermal-hotspot-layer {
  z-index: 12;
  pointer-events: none;
}

.thermal-hotspot-button {
  position: absolute;
  display: inline-grid;
  grid-template-columns: 22px auto;
  align-items: center;
  gap: 7px;
  min-height: 36px;
  max-width: 150px;
  transform: translate(-50%, -50%);
  border: 1px solid rgba(255, 255, 255, 0.72);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.94);
  color: #102a31;
  box-shadow: 0 14px 30px rgba(10, 20, 45, 0.24);
  cursor: pointer;
  font-size: 0.76rem;
  font-weight: 900;
  line-height: 1.1;
  opacity: 1;
  padding: 6px 10px 6px 7px;
  pointer-events: auto;
  transition: opacity 140ms ease, transform 140ms ease, background 140ms ease;
}

.thermal-hotspot-icon {
  display: block;
  width: 22px;
  height: 22px;
  object-fit: contain;
}

.thermal-hotspot-button:hover,
.thermal-hotspot-button:focus-visible,
.thermal-hotspot-button.is-selected {
  transform: translate(-50%, -50%) scale(1.04);
  background: #fff8df;
}

.thermal-hotspot-button:focus-visible {
  outline: 3px solid rgba(45, 108, 223, 0.48);
  outline-offset: 3px;
}

.thermal-reveal-range {
  position: absolute;
  inset: 0;
  z-index: 10;
  width: 100%;
  height: 100%;
  opacity: 0;
  cursor: ew-resize;
  touch-action: none;
}

.thermal-reveal-range::-webkit-slider-thumb {
  width: 46px;
  height: 100%;
  cursor: ew-resize;
  appearance: none;
}

.thermal-reveal-range::-moz-range-thumb {
  width: 46px;
  height: 100%;
  border: 0;
  cursor: ew-resize;
}

.thermal-reveal-handle {
  position: absolute;
  z-index: 11;
  top: 0;
  bottom: 0;
  width: 2px;
  transform: translateX(-1px);
  background: rgba(255, 255, 255, 0.95);
  box-shadow: 0 0 0 1px rgba(16, 42, 49, 0.18), 0 0 24px rgba(16, 42, 49, 0.32);
  pointer-events: none;
}

.thermal-reveal-handle span {
  position: absolute;
  left: 50%;
  top: 50%;
  display: grid;
  place-items: center;
  width: 52px;
  height: 52px;
  transform: translate(-50%, -50%);
  border: 2px solid rgba(255, 255, 255, 0.95);
  border-radius: 999px;
  background: var(--ng-green);
  box-shadow: 0 16px 34px rgba(16, 42, 49, 0.28);
}

.thermal-reveal-handle span::before,
.thermal-reveal-handle span::after {
  position: absolute;
  width: 8px;
  height: 8px;
  border-top: 2px solid #ffffff;
  border-left: 2px solid #ffffff;
  content: "";
}

.thermal-reveal-handle span::before {
  transform: translateX(-7px) rotate(-45deg);
}

.thermal-reveal-handle span::after {
  transform: translateX(7px) rotate(135deg);
}

.thermal-reveal-range:focus-visible + .thermal-reveal-handle span {
  outline: 4px solid rgba(45, 108, 223, 0.5);
  outline-offset: 4px;
}

.thermal-popover {
  position: absolute;
  z-index: 13;
  display: grid;
  gap: 7px;
  width: min(310px, 100% - 28px);
  transform: translateY(-50%);
  border: 1px solid rgba(255, 255, 255, 0.72);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.94);
  box-shadow: 0 18px 42px rgba(16, 42, 49, 0.24);
  color: var(--ng-ink);
  padding: 16px;
  pointer-events: none;
}

.thermal-popover span {
  color: var(--ng-teal);
  font-size: 0.72rem;
  font-weight: 950;
  text-transform: uppercase;
}

.thermal-popover h3 {
  margin: 0;
  color: var(--ng-ink);
  font-size: 1.02rem;
  font-weight: 950;
  line-height: 1.2;
}

.thermal-popover p {
  margin: 0;
  color: #52645f;
  font-size: 0.9rem;
  line-height: 1.48;
}

.thermal-popover p + p {
  color: #667670;
  font-size: 0.84rem;
}

.thermal-reveal-frame figcaption {
  border-top: 1px solid rgba(36, 116, 140, 0.14);
  background: rgba(247, 251, 250, 0.94);
  color: var(--ng-muted);
  font-size: 0.89rem;
  line-height: 1.55;
  padding: 13px 18px;
}

.thermal-reveal-cta {
  display: flex;
  justify-content: center;
}

.thermal-reveal-cta .ng-button {
  min-width: min(100%, 240px);
}

@media (prefers-reduced-motion: reduce) {
  .thermal-reveal-pane,
  .thermal-hotspot-button {
    transition: none;
  }
}
@media (max-width: 960px) {
  .thermal-reveal-heading {
    grid-template-columns: 1fr;
  }
  .thermal-reveal-stage {
    min-height: 430px;
  }
}
@media (max-width: 720px) {
  .thermal-reveal-section {
    padding: 48px 0 70px;
  }
  .thermal-reveal-heading {
    gap: 12px;
  }
  .thermal-reveal-heading h2 {
    font-size: clamp(2rem, 9vw, 2.85rem);
  }
  .thermal-reveal-stage {
    min-height: 380px;
    aspect-ratio: 4/5;
  }
  .thermal-standard-image,
  .thermal-image {
    object-position: 57% center;
  }
  .thermal-view-label {
    top: 12px;
    min-height: 30px;
    font-size: 0.68rem;
    padding: 8px 10px;
  }
  .thermal-view-label-standard {
    right: 12px;
  }
  .thermal-view-label-thermal {
    left: 12px;
  }
  .thermal-hotspot-button {
    grid-template-columns: 22px;
    min-width: 40px;
    min-height: 40px;
    padding: 8px;
  }
  .thermal-hotspot-button strong {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0 0 0 0);
    white-space: nowrap;
  }
  .thermal-hotspot-icon {
    width: 22px;
    height: 22px;
  }
  .thermal-reveal-handle span {
    width: 46px;
    height: 46px;
  }
  .thermal-popover {
    left: 14px !important;
    right: 14px;
    top: auto !important;
    bottom: calc(96px + env(safe-area-inset-bottom));
    width: auto;
    transform: none;
    padding: 14px;
  }
  .thermal-reveal-frame figcaption {
    padding: 12px 14px;
  }
}
@media (max-width: 480px) {
  .thermal-reveal-stage {
    min-height: 340px;
  }
  .thermal-popover p + p {
    display: none;
  }
}
.cutaway-section {
  position: relative;
  overflow: clip;
  padding: clamp(64px, 8vw, 108px) 0;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(237, 247, 248, 0.86)), repeating-linear-gradient(90deg, transparent 0 42px, rgba(36, 116, 140, 0.045) 43px), var(--ng-paper);
}

.cutaway-shell {
  display: grid;
  gap: clamp(24px, 4vw, 42px);
}

.cutaway-intro {
  display: grid;
  grid-template-columns: minmax(0, 0.78fr) minmax(280px, 0.58fr);
  gap: clamp(18px, 4vw, 46px);
  align-items: end;
}

.cutaway-intro .eyebrow {
  grid-column: 1;
  margin-bottom: -8px;
}

.cutaway-intro h2 {
  grid-column: 1;
  grid-row: 2;
  max-width: 760px;
  margin: 0;
  color: var(--ng-ink);
  font-size: clamp(2rem, 4vw, 3.7rem);
  font-weight: 900;
  line-height: 1.04;
  scroll-margin-top: 130px;
}

.cutaway-intro p:not(.eyebrow) {
  grid-column: 2;
  grid-row: 2;
  margin: 0;
  color: var(--ng-muted);
  font-size: 1.03rem;
  line-height: 1.7;
}

.cutaway-workbench {
  display: block;
}

.cutaway-visual-card {
  border: 1px solid rgba(36, 116, 140, 0.18);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.92);
  box-shadow: 0 24px 58px rgba(23, 45, 52, 0.12);
  overflow: hidden;
  padding: clamp(12px, 2vw, 20px);
}

.cutaway-stage {
  position: relative;
  width: 100%;
  max-width: 100%;
  min-height: 0;
  overflow: hidden;
  border-radius: 6px;
  background: linear-gradient(180deg, #eef7f6 0%, #f9fbf8 58%, #e4efe8 100%), repeating-linear-gradient(90deg, transparent 0 44px, rgba(36, 116, 140, 0.06) 45px);
  aspect-ratio: 110/68;
}

.cutaway-house-svg {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}

.cutaway-hotspots {
  position: absolute;
  inset: 0;
}

.cutaway-hotspot {
  position: absolute;
  display: grid;
  place-items: center;
  width: 48px;
  height: 48px;
  transform: translate(-50%, -50%);
  border: 0;
  border-radius: 999px;
  background: transparent;
  color: #112923;
  cursor: pointer;
  padding: 0;
}

.cutaway-hotspot::before {
  position: absolute;
  inset: 2px;
  border: 2px solid #ffffff;
  border-radius: inherit;
  background: linear-gradient(135deg, var(--ng-gold), #f5d889);
  box-shadow: 0 12px 24px rgba(17, 41, 35, 0.18);
  content: "";
  transition: transform 180ms ease, background 180ms ease, box-shadow 180ms ease;
}

.cutaway-hotspot::after {
  position: absolute;
  inset: -8px;
  border: 1px solid rgba(220, 164, 64, 0.4);
  border-radius: inherit;
  content: "";
  opacity: 0.64;
  animation: cutaway-pulse 2.8s ease-out infinite;
}

.cutaway-hotspot-index {
  position: relative;
  z-index: 1;
  font-size: 0.83rem;
  font-weight: 950;
}

.cutaway-hotspot-label {
  position: absolute;
  left: 50%;
  top: calc(100% + 8px);
  z-index: 3;
  width: max-content;
  max-width: 148px;
  transform: translateX(-50%) translateY(4px);
  border: 1px solid rgba(23, 45, 52, 0.12);
  border-radius: 6px;
  background: rgba(255, 255, 255, 0.96);
  color: #172d34;
  box-shadow: 0 12px 24px rgba(17, 41, 35, 0.13);
  font-size: 0.75rem;
  font-weight: 900;
  line-height: 1.25;
  opacity: 0;
  padding: 6px 8px;
  pointer-events: none;
  text-align: center;
  transition: opacity 160ms ease, transform 160ms ease;
}

.cutaway-hotspot:hover::before,
.cutaway-hotspot:focus-visible::before,
.cutaway-hotspot.is-selected::before {
  transform: scale(1.1);
  background: linear-gradient(135deg, var(--ng-green), var(--ng-teal));
  box-shadow: 0 14px 30px rgba(17, 41, 35, 0.28);
}

.cutaway-hotspot:hover .cutaway-hotspot-index,
.cutaway-hotspot:focus-visible .cutaway-hotspot-index,
.cutaway-hotspot.is-selected .cutaway-hotspot-index {
  color: #ffffff;
}

.cutaway-hotspot:hover .cutaway-hotspot-label,
.cutaway-hotspot:focus-visible .cutaway-hotspot-label {
  opacity: 1;
  transform: translateX(-50%) translateY(0);
}

.cutaway-hotspot:focus-visible {
  outline: 3px solid rgba(45, 108, 223, 0.45);
  outline-offset: 5px;
}

.cutaway-modal-backdrop {
  position: fixed;
  inset: 0;
  z-index: 10050;
  display: grid;
  place-items: center;
  background: rgba(17, 41, 35, 0.62);
  padding: clamp(14px, 3vw, 34px);
  overflow: auto;
}

.cutaway-modal {
  position: relative;
  display: grid;
  gap: 18px;
  width: min(920px, 100%);
  max-height: calc(100svh - 42px);
  overflow: auto;
  border: 1px solid rgba(36, 116, 140, 0.18);
  border-top: 7px solid var(--ng-teal);
  border-radius: 8px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(247, 251, 250, 0.97)), repeating-linear-gradient(0deg, transparent 0, transparent 27px, rgba(36, 116, 140, 0.045) 28px);
  box-shadow: 0 30px 80px rgba(0, 0, 0, 0.3);
  padding: clamp(22px, 3vw, 34px) clamp(70px, 7vw, 88px);
}

.cutaway-modal-heading,
.cutaway-modal-body {
  display: grid;
  gap: 14px;
}

.cutaway-modal-body {
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.cutaway-modal-heading span {
  color: var(--ng-teal);
  font-size: 0.76rem;
  font-weight: 900;
  text-transform: uppercase;
}

.cutaway-modal-heading h3 {
  margin: 0;
  color: var(--ng-ink);
  font-size: clamp(1.75rem, 3vw, 2.45rem);
  font-weight: 900;
  line-height: 1.05;
}

.cutaway-modal-heading p,
.cutaway-why p,
.cutaway-report-note p {
  margin: 0;
  color: var(--ng-muted);
  line-height: 1.65;
}

.cutaway-detail-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  grid-column: 1/-1;
  gap: 12px;
}

.cutaway-detail-grid section,
.cutaway-why,
.cutaway-report-note {
  border: 1px solid rgba(36, 116, 140, 0.14);
  border-radius: 6px;
  background: rgba(247, 251, 250, 0.82);
  padding: 16px;
}

.cutaway-modal h4 {
  margin: 0 0 10px;
  color: var(--ng-ink);
  font-size: 0.88rem;
  font-weight: 950;
  text-transform: uppercase;
}

.cutaway-modal ul {
  display: grid;
  gap: 8px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.cutaway-modal li {
  position: relative;
  color: #52645f;
  font-size: 0.92rem;
  line-height: 1.45;
  padding-left: 18px;
}

.cutaway-modal li::before {
  position: absolute;
  left: 0;
  top: 0.58em;
  width: 7px;
  height: 7px;
  border-radius: 999px;
  background: var(--ng-green);
  content: "";
}

.cutaway-report-note {
  border-left: 5px solid var(--ng-gold);
  background: linear-gradient(180deg, rgba(255, 250, 240, 0.96), rgba(247, 251, 250, 0.9));
}

.cutaway-report-note p {
  color: #3f514c;
  font-weight: 700;
}

.cutaway-modal-actions {
  display: grid;
  justify-items: center;
}

.cutaway-modal-side-controls {
  display: contents;
}

.cutaway-modal-actions .ng-button {
  width: 100%;
  max-width: 310px;
}

.cutaway-modal-close,
.cutaway-modal-nav {
  position: absolute;
  display: grid;
  place-items: center;
  border: 1px solid rgba(23, 45, 52, 0.16);
  background: #ffffff;
  color: var(--ng-ink);
  box-shadow: 0 12px 28px rgba(17, 41, 35, 0.16);
  cursor: pointer;
  font-weight: 950;
}

.cutaway-modal-close {
  top: 14px;
  right: 14px;
  width: 40px;
  height: 40px;
  border-radius: 6px;
}

.cutaway-modal-nav {
  top: 50%;
  width: 50px;
  height: 78px;
  transform: translateY(-50%);
  border-radius: 8px;
  font-size: 1.9rem;
  line-height: 1;
}

.cutaway-modal-nav:hover,
.cutaway-modal-nav:focus-visible,
.cutaway-modal-close:hover,
.cutaway-modal-close:focus-visible {
  border-color: rgba(36, 116, 140, 0.36);
  background: var(--ng-leaf);
  color: var(--ng-green);
}

.cutaway-modal-nav:focus-visible,
.cutaway-modal-close:focus-visible {
  outline: 3px solid rgba(45, 108, 223, 0.45);
  outline-offset: 3px;
}

.cutaway-modal-nav-previous {
  left: 14px;
}

.cutaway-modal-nav-next {
  right: 14px;
}

@keyframes cutaway-pulse {
  0% {
    opacity: 0.7;
    transform: scale(0.82);
  }
  70%, 100% {
    opacity: 0;
    transform: scale(1.65);
  }
}
@media (prefers-reduced-motion: reduce) {
  .cutaway-hotspot::after {
    animation: none;
  }
  .cutaway-hotspot::before,
  .cutaway-hotspot-label,
  .cutaway-modal-nav,
  .cutaway-modal-close {
    transition: none;
  }
}
@media (max-width: 1080px) {
  .cutaway-intro {
    grid-template-columns: 1fr;
  }
  .cutaway-intro .eyebrow,
  .cutaway-intro h2,
  .cutaway-intro p:not(.eyebrow) {
    grid-column: auto;
    grid-row: auto;
  }
  .cutaway-intro .eyebrow {
    margin-bottom: 0;
  }
  .cutaway-stage {
    min-height: 0;
  }
}
@media (max-width: 720px) {
  .cutaway-section {
    padding: 48px 0 70px;
  }
  .cutaway-intro {
    gap: 12px;
  }
  .cutaway-intro h2 {
    font-size: clamp(2rem, 9vw, 2.8rem);
  }
  .cutaway-visual-card {
    padding: 10px;
  }
  .cutaway-stage {
    min-height: 0;
    aspect-ratio: 110/68;
  }
  .cutaway-hotspot {
    width: 42px;
    height: 42px;
  }
  .cutaway-hotspot-label {
    display: none;
  }
  .cutaway-detail-grid {
    grid-template-columns: 1fr;
  }
  .cutaway-modal-body {
    grid-template-columns: 1fr;
  }
  .cutaway-modal-backdrop {
    place-items: end center;
    padding: 14px;
  }
  .cutaway-modal {
    width: 100%;
    max-height: calc(100svh - 28px);
    padding: 18px 16px;
  }
  .cutaway-modal-heading {
    padding-right: 46px;
  }
  .cutaway-modal-close {
    top: 12px;
    right: 12px;
  }
  .cutaway-modal-nav {
    position: static;
    width: 50px;
    height: 50px;
    transform: none;
  }
  .cutaway-modal-side-controls {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
  }
  .cutaway-modal-nav-previous {
    justify-self: start;
  }
  .cutaway-modal-nav-next {
    justify-self: end;
  }
}
@media (max-width: 520px) {
  .cutaway-stage {
    min-height: 0;
  }
  .cutaway-hotspot {
    width: 38px;
    height: 38px;
  }
  .cutaway-hotspot-index {
    font-size: 0.78rem;
  }
}
.ipt {
  padding: clamp(56px, 8vw, 92px) 0;
  background: linear-gradient(180deg, #f8fbfa 0%, #ffffff 100%);
}

.ipt-head {
  max-width: 720px;
  margin: 0 0 32px;
}

.ipt-head h2 {
  margin: 0;
  color: var(--ng-ink);
  font-size: clamp(2rem, 4vw, 3.15rem);
  line-height: 1.05;
}

.ipt-head p:not(.eyebrow) {
  margin: 14px 0 0;
  color: var(--ng-muted);
  line-height: 1.7;
}

.ipt-steps {
  position: relative;
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 14px;
  margin: 0;
  padding: 0;
  list-style: none;
}

.ipt-steps::before {
  position: absolute;
  top: 31px;
  left: 10%;
  right: 10%;
  height: 2px;
  background: rgba(27, 106, 86, 0.22);
  content: "";
}

.ipt-step {
  position: relative;
  min-width: 0;
}

.ipt-toggle {
  position: relative;
  z-index: 1;
  width: 100%;
  min-height: 286px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  padding: 16px 14px;
  border: 1px solid rgba(23, 45, 52, 0.13);
  border-radius: var(--ng-radius);
  background: rgba(255, 255, 255, 0.96);
  color: inherit;
  text-align: center;
  box-shadow: 0 18px 42px rgba(23, 45, 52, 0.08);
  cursor: pointer;
}

.ipt-toggle:hover,
.ipt-toggle[aria-expanded=true] {
  border-color: rgba(27, 106, 86, 0.34);
}

.ipt-toggle:focus-visible {
  outline: 3px solid rgba(220, 164, 64, 0.75);
  outline-offset: 4px;
}

.ipt-marker {
  width: 48px;
  height: 48px;
  display: inline-grid;
  place-items: center;
  border: 2px solid #ffffff;
  border-radius: 999px;
  background: var(--ng-green);
  color: #ffffff;
  box-shadow: 0 0 0 4px rgba(27, 106, 86, 0.12);
}

.ipt-marker svg {
  width: 24px;
  height: 24px;
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.8;
}

.ipt-copy,
.ipt-chips {
  display: flex;
}

.ipt-copy {
  min-width: 0;
  flex: 1;
  flex-direction: column;
  align-items: center;
  gap: 9px;
}

.ipt-index,
.ipt-action {
  color: var(--ng-green);
  font-size: 0.78rem;
  font-weight: 900;
  text-transform: uppercase;
}

.ipt-title {
  color: var(--ng-ink);
  font-size: 1.02rem;
  font-weight: 900;
  line-height: 1.25;
}

.ipt-summary,
.ipt-detail {
  color: var(--ng-muted);
  font-size: 0.86rem;
  line-height: 1.5;
}

.ipt-chips {
  flex-wrap: wrap;
  justify-content: center;
  gap: 6px;
}

.ipt-chips span {
  padding: 5px 8px;
  border-radius: 999px;
  background: var(--ng-sky);
  color: var(--ng-teal);
  font-size: 0.72rem;
  font-weight: 800;
}

.ipt-action {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  margin-top: auto;
}

.ipt-chevron {
  width: 8px;
  height: 8px;
  border: solid currentColor;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg) translateY(-2px);
}

.ipt-toggle[aria-expanded=true] .ipt-chevron {
  transform: rotate(225deg) translateY(-1px);
}

.ipt-detail {
  margin-top: 10px;
  padding: 14px 15px;
  border-left: 3px solid var(--ng-gold);
  border-radius: var(--ng-radius);
  background: rgba(255, 255, 255, 0.86);
  box-shadow: 0 10px 28px rgba(23, 45, 52, 0.07);
}

.ipt-detail strong {
  display: block;
  margin-bottom: 8px;
  color: var(--ng-ink);
}

.ipt-detail ul {
  display: grid;
  gap: 7px;
  margin: 0;
  padding-left: 18px;
}

@media (max-width: 900px) {
  .ipt-steps {
    grid-template-columns: 1fr;
  }
  .ipt-steps::before {
    top: 24px;
    bottom: 24px;
    left: 24px;
    right: auto;
    width: 2px;
    height: auto;
  }
  .ipt-toggle {
    min-height: 0;
    display: grid;
    grid-template-columns: 48px minmax(0, 1fr);
    align-items: start;
    text-align: left;
  }
  .ipt-copy {
    align-items: flex-start;
  }
  .ipt-chips {
    justify-content: flex-start;
  }
  .ipt-detail {
    margin-left: 62px;
  }
}
@media (max-width: 560px) {
  .ipt {
    padding: 46px 0;
  }
  .ipt-detail {
    margin-left: 0;
  }
}
.sample-finding-section {
  padding: 78px 0 92px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.88), rgba(239, 247, 246, 0.94)), var(--ng-paper);
  overflow: hidden;
}

.sample-finding-shell {
  display: grid;
  gap: 24px;
}

.sample-finding-heading {
  max-width: 790px;
}

.sample-finding-heading .eyebrow {
  margin: 0 0 8px;
  color: var(--ng-green);
  font-size: 0.78rem;
  font-weight: 900;
  text-transform: uppercase;
}

.sample-finding-heading h2 {
  margin: 0;
  color: var(--ng-ink);
  font-size: 2.15rem;
  font-weight: 900;
  line-height: 1.12;
}

.sample-finding-heading p:last-child {
  max-width: 700px;
  margin: 12px 0 0;
  color: var(--ng-muted);
  font-size: 1rem;
  line-height: 1.72;
}

.finding-folder-shell {
  position: relative;
  min-height: 710px;
  margin-top: 10px;
  outline: none;
  overflow: clip;
  perspective: 1800px;
  transform-style: preserve-3d;
}

.finding-folder-shell::before {
  position: absolute;
  left: 5%;
  right: 5%;
  bottom: -7px;
  height: 72px;
  border-radius: 50%;
  background: radial-gradient(ellipse at center, rgba(23, 45, 52, 0.18), transparent 68%);
  content: "";
  filter: blur(8px);
  pointer-events: none;
}

.finding-folder-shell:focus-visible {
  border-radius: 10px;
  outline: 3px solid rgba(36, 116, 140, 0.32);
  outline-offset: 6px;
}

.finding-folder-back {
  position: absolute;
  inset: 86px -16px 18px;
  border: 1px solid rgba(132, 93, 36, 0.3);
  border-radius: 0 8px 8px;
  background: linear-gradient(115deg, rgba(255, 255, 255, 0.28), transparent 32%), repeating-linear-gradient(88deg, rgba(112, 74, 27, 0.04) 0 1px, transparent 1px 9px), linear-gradient(180deg, #e6c98c 0%, #d7ae61 48%, #c99947 100%);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.46), inset 0 -18px 30px rgba(109, 73, 27, 0.12), 0 28px 70px rgba(23, 45, 52, 0.16);
}

.finding-folder-back::before {
  position: absolute;
  top: -58px;
  left: 0;
  width: min(360px, 64%);
  height: 60px;
  border: 1px solid rgba(132, 93, 36, 0.28);
  border-bottom: 0;
  border-radius: 8px 8px 0 0;
  background: repeating-linear-gradient(88deg, rgba(112, 74, 27, 0.04) 0 1px, transparent 1px 9px), linear-gradient(180deg, #efd79e, #e1bd74);
  content: "";
}

.finding-folder-back::after {
  position: absolute;
  inset: 22px 24px auto;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(115, 78, 30, 0.24), transparent);
  box-shadow: 0 38px 0 rgba(115, 78, 30, 0.07), 0 76px 0 rgba(115, 78, 30, 0.05);
  content: "";
}

.finding-folder-back span {
  position: absolute;
  top: -44px;
  left: 28px;
  z-index: 1;
  color: #6a4719;
  font-size: 0.8rem;
  font-weight: 900;
  text-transform: uppercase;
}

.finding-paper-stack {
  --finding-page-top: 54px;
  --finding-page-side: 48px;
  position: relative;
  z-index: 3;
  min-height: 650px;
  padding: 54px 48px 82px;
  opacity: 0;
  transform: translateY(92px) scale(0.94);
  transform-origin: center bottom;
  transition: opacity 360ms ease, transform 620ms cubic-bezier(0.2, 0.8, 0.2, 1);
}

.sample-finding-section.is-open .finding-paper-stack {
  opacity: 1;
  transform: translateY(0) scale(1);
  transition-delay: 180ms;
}

.finding-paper-offset,
.finding-paper-page {
  border: 1px solid rgba(23, 45, 52, 0.12);
  border-radius: 8px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(250, 252, 251, 0.98)), #ffffff;
  box-shadow: 0 20px 45px rgba(23, 45, 52, 0.12);
}

.finding-paper-offset {
  position: absolute;
  inset: 62px 54px auto;
  height: calc(100% - 166px);
  background: linear-gradient(90deg, rgba(23, 45, 52, 0.025) 0 1px, transparent 1px 100%), repeating-linear-gradient(180deg, transparent 0 34px, rgba(23, 45, 52, 0.035) 34px 35px), #ffffff;
  pointer-events: none;
}

.finding-paper-offset-one {
  transform: translate(11px, 10px) rotate(1.1deg);
  opacity: 0.72;
}

.finding-paper-offset-two {
  transform: translate(-11px, 19px) rotate(-0.9deg);
  opacity: 0.52;
}

.finding-paper-page {
  position: relative;
  z-index: 3;
  min-height: 565px;
  padding: 24px;
  overflow: hidden;
  transform: rotate(-0.2deg) translateZ(0);
  transform-origin: center 84%;
  will-change: transform, opacity;
}

.finding-paper-page.is-outgoing {
  position: absolute;
  top: var(--finding-page-top);
  right: var(--finding-page-side);
  left: var(--finding-page-side);
}

.finding-paper-page.is-outgoing {
  z-index: 5;
  filter: saturate(0.92);
  pointer-events: none;
}

.finding-paper-page.is-incoming {
  z-index: 6;
}

.finding-paper-stack.swap-next .finding-paper-page.is-outgoing {
  animation: findingPageOutNext 600ms cubic-bezier(0.2, 0.82, 0.24, 1) both;
}

.finding-paper-stack.swap-next .finding-paper-page.is-incoming {
  animation: findingPageInNext 600ms cubic-bezier(0.2, 0.82, 0.24, 1) both;
}

.finding-paper-stack.swap-previous .finding-paper-page.is-outgoing {
  animation: findingPageOutPrevious 600ms cubic-bezier(0.2, 0.82, 0.24, 1) both;
}

.finding-paper-stack.swap-previous .finding-paper-page.is-incoming {
  animation: findingPageInPrevious 600ms cubic-bezier(0.2, 0.82, 0.24, 1) both;
}

.finding-paper-page::before {
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, rgba(23, 45, 52, 0.04) 0 1px, transparent 1px 100%), repeating-linear-gradient(180deg, transparent 0 35px, rgba(23, 45, 52, 0.035) 35px 36px);
  content: "";
  pointer-events: none;
}

.finding-paper-page::after {
  position: absolute;
  top: 0;
  right: 0;
  width: 58px;
  height: 58px;
  background: linear-gradient(135deg, rgba(23, 45, 52, 0.09), rgba(23, 45, 52, 0) 46%), linear-gradient(135deg, transparent 50%, #eef3f1 51%);
  border-bottom-left-radius: 8px;
  box-shadow: -5px 5px 12px rgba(23, 45, 52, 0.08);
  content: "";
  pointer-events: none;
}

@keyframes findingPageOutNext {
  0% {
    opacity: 1;
    transform: translateX(0) translateY(0) rotate(-0.2deg) scale(1);
  }
  28% {
    opacity: 0.28;
    transform: translateX(-7%) translateY(14px) rotate(-4deg) scale(0.97);
  }
  68% {
    opacity: 0.14;
    transform: translateX(-15%) translateY(32px) rotate(-6deg) scale(0.95);
  }
  100% {
    opacity: 0;
    transform: translateX(-23%) translateY(48px) rotate(-7deg) scale(0.93);
  }
}
@keyframes findingPageInNext {
  0% {
    opacity: 0;
    transform: translateX(18%) translateY(38px) rotate(6deg) scale(0.95);
  }
  24% {
    opacity: 0.96;
    transform: translateX(6%) translateY(12px) rotate(2.4deg) scale(0.99);
  }
  100% {
    opacity: 1;
    transform: translateX(0) translateY(0) rotate(-0.2deg) scale(1);
  }
}
@keyframes findingPageOutPrevious {
  0% {
    opacity: 1;
    transform: translateX(0) translateY(0) rotate(-0.2deg) scale(1);
  }
  28% {
    opacity: 0.28;
    transform: translateX(7%) translateY(14px) rotate(4deg) scale(0.97);
  }
  68% {
    opacity: 0.14;
    transform: translateX(15%) translateY(32px) rotate(6deg) scale(0.95);
  }
  100% {
    opacity: 0;
    transform: translateX(23%) translateY(48px) rotate(7deg) scale(0.93);
  }
}
@keyframes findingPageInPrevious {
  0% {
    opacity: 0;
    transform: translateX(-18%) translateY(38px) rotate(-6deg) scale(0.95);
  }
  24% {
    opacity: 0.96;
    transform: translateX(-6%) translateY(12px) rotate(-2.4deg) scale(0.99);
  }
  100% {
    opacity: 1;
    transform: translateX(0) translateY(0) rotate(-0.2deg) scale(1);
  }
}
.finding-page-header,
.finding-card {
  position: relative;
  z-index: 1;
}

.finding-page-header {
  display: flex;
  gap: 18px;
  align-items: flex-start;
  justify-content: space-between;
  margin-bottom: 18px;
}

.finding-page-number {
  display: inline-flex;
  margin-bottom: 7px;
  color: var(--ng-teal);
  font-size: 0.78rem;
  font-weight: 900;
}

.finding-page-header h3 {
  margin: 0;
  color: var(--ng-ink);
  font-size: 1.75rem;
  font-weight: 900;
  line-height: 1.16;
}

.finding-card {
  display: grid;
  grid-template-columns: minmax(300px, 0.92fr) minmax(0, 1.08fr);
  overflow: hidden;
  border: 1px solid rgba(23, 45, 52, 0.11);
  border-radius: 8px;
  background: #ffffff;
}

.finding-photo {
  position: relative;
  min-height: 390px;
  margin: 0;
  overflow: hidden;
  background: #edf3f2;
}

.finding-photo img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.finding-photo::after {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(10, 22, 26, 0.02), rgba(10, 22, 26, 0.16));
  content: "";
  pointer-events: none;
}

.finding-photo-annotation {
  position: absolute;
  z-index: 1;
  min-width: 52px;
  min-height: 52px;
  border: 2px solid rgba(255, 255, 255, 0.96);
  border-radius: 50%;
  background: rgba(200, 111, 90, 0.08);
  box-shadow: 0 0 0 2px rgba(200, 111, 90, 0.76), 0 10px 26px rgba(16, 42, 49, 0.24);
  transform: translate(-50%, -50%);
}

.finding-photo-annotation::after {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #ffffff;
  box-shadow: 0 0 0 2px rgba(200, 111, 90, 0.82);
  content: "";
  transform: translate(-50%, -50%);
}

.finding-photo figcaption {
  position: absolute;
  right: 12px;
  bottom: 12px;
  z-index: 2;
  max-width: calc(100% - 24px);
  padding: 5px 8px;
  border-radius: 6px;
  background: rgba(10, 22, 26, 0.72);
  color: #ffffff;
  font-size: 0.68rem;
  font-weight: 750;
  line-height: 1.3;
}

.finding-content {
  display: flex;
  min-width: 0;
  flex-direction: column;
  padding: 28px;
}

.finding-overline {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center;
  margin-bottom: 12px;
}

.finding-severity-badge,
.finding-category {
  display: inline-flex;
  align-items: center;
  min-height: 30px;
  padding: 6px 10px;
  border: 1px solid transparent;
  border-radius: 6px;
  font-size: 0.8rem;
  font-weight: 900;
}

.severity-repair {
  border-color: #edd59c;
  background: #fff7e4;
  color: #74501b;
}

.severity-safety {
  border-color: #ecc6c1;
  background: #fff1ef;
  color: #8b3f37;
}

.severity-moisture {
  border-color: #b9dde4;
  background: #edf8fa;
  color: #1f5e69;
}

.severity-evaluation {
  border-color: #d7d0de;
  background: #f6f3f8;
  color: #5b5167;
}

.finding-category {
  border-color: rgba(23, 45, 52, 0.12);
  background: #f8fbfa;
  color: var(--ng-muted);
}

.finding-location {
  display: flex;
  gap: 8px;
  align-items: flex-start;
  margin: 0 0 18px;
  color: var(--ng-muted);
  font-weight: 800;
  line-height: 1.45;
}

.finding-location svg {
  width: 19px;
  height: 19px;
  flex: 0 0 auto;
  margin-top: 1px;
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.9;
}

.finding-body {
  display: grid;
  gap: 16px;
}

.finding-body h4 {
  margin: 0 0 7px;
  color: var(--ng-ink);
  font-size: 0.92rem;
  font-weight: 900;
}

.finding-body p {
  margin: 0;
  color: var(--ng-muted);
  line-height: 1.7;
}

.finding-recommendation {
  padding: 16px;
  border: 1px solid rgba(27, 106, 86, 0.18);
  border-radius: 8px;
  background: #f1f8f5;
}

.finding-chip-row {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: auto;
  padding-top: 22px;
}

.finding-chip-row span {
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 30px;
  padding: 6px 9px;
  border: 1px solid rgba(23, 45, 52, 0.12);
  border-radius: 6px;
  background: #fbfdfc;
  color: var(--ng-muted);
  font-size: 0.78rem;
  font-weight: 850;
}

.finding-chip-row span::before {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--ng-teal);
  content: "";
}

.finding-folder-front {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 10px;
  z-index: 4;
  height: 48%;
  border: 1px solid rgba(132, 93, 36, 0.31);
  border-radius: 8px;
  clip-path: polygon(0 18%, 15% 0, 100% 0, 100% 100%, 0 100%);
  background: linear-gradient(145deg, rgba(255, 255, 255, 0.34), transparent 28%), repeating-linear-gradient(89deg, rgba(112, 74, 27, 0.045) 0 1px, transparent 1px 10px), linear-gradient(180deg, rgba(229, 195, 121, 0.94), rgba(200, 150, 65, 0.94));
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.42), inset 0 18px 28px rgba(255, 255, 255, 0.15), 0 -16px 34px rgba(23, 45, 52, 0.08);
  transform: rotateX(0deg);
  transform-origin: bottom center;
  transition: transform 720ms cubic-bezier(0.2, 0.8, 0.2, 1), opacity 420ms ease;
}

.finding-folder-front::before,
.finding-folder-front::after {
  position: absolute;
  content: "";
  pointer-events: none;
}

.finding-folder-front::before {
  top: 18%;
  left: 2%;
  right: 2%;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(100, 69, 28, 0.3), transparent);
  box-shadow: 0 24px 0 rgba(100, 69, 28, 0.07), 0 52px 0 rgba(255, 255, 255, 0.12);
}

.finding-folder-front::after {
  top: 10%;
  left: 4%;
  width: 22%;
  height: 76%;
  border-left: 1px solid rgba(100, 69, 28, 0.14);
  transform: skewX(-16deg);
}

.finding-folder-front span {
  position: absolute;
  inset: 18px 24px auto auto;
  width: 96px;
  height: 8px;
  border-radius: 999px;
  background: rgba(100, 69, 28, 0.18);
}

.sample-finding-section.is-open .finding-folder-front {
  z-index: 1;
  opacity: 0.82;
  transform: rotateX(68deg) translateY(58px);
}

.finding-folder-controls {
  display: grid;
  grid-template-columns: 48px minmax(0, 1fr) 48px;
  gap: 12px;
  align-items: center;
  width: min(760px, 100%);
  justify-self: center;
}

.finding-arrow-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  border: 1px solid rgba(23, 45, 52, 0.16);
  border-radius: 8px;
  background: #ffffff;
  color: var(--ng-green);
  cursor: pointer;
  box-shadow: 0 12px 28px rgba(23, 45, 52, 0.08);
}

.finding-arrow-button:hover {
  background: var(--ng-leaf);
}

.finding-arrow-button:focus-visible,
.finding-page-tabs button:focus-visible {
  outline: 3px solid rgba(36, 116, 140, 0.34);
  outline-offset: 2px;
}

.finding-arrow-button svg {
  width: 24px;
  height: 24px;
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 2.4;
}

.finding-page-tabs {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 7px;
  padding: 6px;
  border: 1px solid rgba(23, 45, 52, 0.12);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.84);
}

.finding-page-tabs button {
  min-height: 42px;
  border: 0;
  border-radius: 6px;
  background: transparent;
  color: var(--ng-muted);
  font-weight: 900;
  cursor: pointer;
}

.finding-page-tabs button.is-selected {
  background: var(--ng-ink);
  color: #ffffff;
}

@media (max-width: 920px) {
  .sample-finding-section {
    padding: 58px 0 70px;
  }
  .finding-folder-shell {
    min-height: 930px;
  }
  .finding-paper-stack {
    --finding-page-top: 44px;
    --finding-page-side: 24px;
    padding: 44px 24px 70px;
  }
  .finding-paper-offset {
    inset: 52px 30px auto;
  }
  .finding-card {
    grid-template-columns: 1fr;
  }
  .finding-photo {
    min-height: 320px;
  }
}
@media (max-width: 620px) {
  .sample-finding-section {
    padding: 46px 0 58px;
  }
  .sample-finding-shell {
    gap: 16px;
  }
  .sample-finding-heading h2 {
    font-size: 1.58rem;
  }
  .sample-finding-heading p:last-child {
    font-size: 0.92rem;
    line-height: 1.58;
  }
  .finding-folder-shell {
    min-height: 900px;
    margin-inline: -4px;
  }
  .finding-folder-back {
    top: 76px;
    right: -6px;
    bottom: 20px;
    left: -6px;
  }
  .finding-folder-back::before {
    top: -50px;
    width: min(240px, 72%);
    height: 52px;
  }
  .finding-folder-back span {
    left: 18px;
    top: -36px;
    font-size: 0.66rem;
    letter-spacing: 0.04em;
  }
  .finding-paper-stack {
    --finding-page-top: 42px;
    --finding-page-side: 10px;
    min-height: 840px;
    padding: 42px 10px 58px;
  }
  .finding-paper-offset {
    display: none;
  }
  .finding-paper-page {
    min-height: 0;
    padding: 12px;
  }
  .finding-paper-page::after {
    width: 44px;
    height: 44px;
  }
  .finding-page-header {
    display: grid;
    gap: 8px;
    margin-bottom: 12px;
  }
  .finding-page-number {
    margin-bottom: 4px;
    font-size: 0.72rem;
  }
  .finding-page-header h3 {
    font-size: 1.22rem;
    line-height: 1.1;
  }
  .finding-severity-badge,
  .finding-category {
    min-height: 26px;
    padding: 5px 8px;
    font-size: 0.72rem;
  }
  .finding-severity-badge {
    width: -moz-fit-content;
    width: fit-content;
  }
  .finding-photo {
    min-height: 210px;
  }
  .finding-photo-annotation {
    min-width: 38px;
    min-height: 38px;
  }
  .finding-photo figcaption {
    right: 8px;
    bottom: 8px;
    max-width: calc(100% - 16px);
    font-size: 0.56rem;
    line-height: 1.2;
  }
  .finding-content {
    padding: 14px;
  }
  .finding-overline {
    margin-bottom: 8px;
  }
  .finding-location {
    gap: 6px;
    margin-bottom: 10px;
    font-size: 0.84rem;
  }
  .finding-location svg {
    width: 16px;
    height: 16px;
  }
  .finding-body {
    gap: 10px;
  }
  .finding-body h4 {
    margin-bottom: 5px;
    font-size: 0.82rem;
  }
  .finding-body p {
    font-size: 0.9rem;
    line-height: 1.48;
  }
  .finding-recommendation {
    padding: 12px;
  }
  .finding-chip-row {
    flex-wrap: nowrap;
    gap: 6px;
    margin-top: 0;
    padding-top: 12px;
    padding-bottom: 2px;
    overflow-x: auto;
    scrollbar-width: none;
  }
  .finding-chip-row::-webkit-scrollbar {
    display: none;
  }
  .finding-chip-row span {
    flex: 0 0 auto;
    min-height: 26px;
    padding: 5px 8px;
    font-size: 0.68rem;
  }
  .sample-finding-section.is-open .finding-folder-front {
    opacity: 0.72;
    transform: rotateX(70deg) translateY(52px);
  }
  .finding-folder-controls {
    grid-template-columns: 40px minmax(0, 1fr) 40px;
    gap: 6px;
  }
  .finding-arrow-button {
    width: 40px;
    height: 40px;
  }
  .finding-page-tabs {
    display: flex;
    gap: 4px;
    overflow-x: auto;
    scrollbar-width: none;
  }
  .finding-page-tabs::-webkit-scrollbar {
    display: none;
  }
  .finding-page-tabs button {
    flex: 0 0 auto;
    min-width: 96px;
    min-height: 36px;
    padding: 0 10px;
    font-size: 0.78rem;
  }
}
@media (prefers-reduced-motion: reduce) {
  .finding-paper-stack,
  .finding-folder-front {
    transition: none;
  }
  .finding-paper-stack.swap-next .finding-paper-page.is-outgoing,
  .finding-paper-stack.swap-next .finding-paper-page.is-incoming,
  .finding-paper-stack.swap-previous .finding-paper-page.is-outgoing,
  .finding-paper-stack.swap-previous .finding-paper-page.is-incoming {
    animation: none;
  }
}
/* Design A logo theme layer */
:root {
  --gtx-logo-teal: #0088a8;
  --gtx-logo-teal-dark: #006d86;
  --gtx-logo-teal-deep: #004b5d;
  --gtx-logo-black: #07090b;
  --gtx-logo-charcoal: #172226;
  --gtx-logo-muted: #53666d;
  --gtx-logo-ice: #edf9fb;
  --gtx-logo-line: rgba(0, 136, 168, 0.2);
}

body.da {
  --ng-ink: var(--gtx-logo-black);
  --ng-muted: var(--gtx-logo-muted);
  --ng-green: var(--gtx-logo-teal-dark);
  --ng-teal: var(--gtx-logo-teal);
  --ng-blue: var(--gtx-logo-teal-deep);
  --ng-gold: #a7edf7;
  --ng-coral: var(--gtx-logo-charcoal);
  --ng-paper: #f5fbfc;
  --ng-sky: var(--gtx-logo-ice);
  --ng-leaf: #e8f5f7;
  --ng-line: var(--gtx-logo-line);
  --ng-white: #ffffff;
  --ng-shadow: 0 24px 56px rgba(7, 9, 11, 0.13);
  --ng-radius: 8px;
  --fj-paper: #ffffff;
  --fj-paper-soft: #f5fbfc;
  --fj-wash: var(--gtx-logo-ice);
  --fj-edge: var(--gtx-logo-line);
  --fj-rule: rgba(0, 136, 168, 0.07);
  --fj-shadow: var(--ng-shadow);
  background: var(--ng-paper);
}

body.da main {
  background: linear-gradient(180deg, #ffffff 0%, var(--ng-paper) 44%, #ffffff 74%, var(--ng-sky) 100%), repeating-linear-gradient(90deg, rgba(0, 136, 168, 0.055) 0 1px, transparent 1px 76px);
}

body.da .site-header {
  border-bottom: 1px solid rgba(0, 136, 168, 0.18);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(245, 251, 252, 0.95)), linear-gradient(90deg, rgba(0, 136, 168, 0.08), transparent 48%);
  box-shadow: 0 16px 36px rgba(7, 9, 11, 0.08);
}

body.da .site-header::before {
  height: 5px;
  background: linear-gradient(90deg, var(--gtx-logo-teal) 0 46%, var(--gtx-logo-black) 46% 54%, var(--gtx-logo-teal) 54% 100%);
}

body.da .brand-mark::after {
  background: rgba(0, 136, 168, 0.2);
}

body.da .brand-mark img {
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  object-fit: contain;
  padding: 0;
}

body.da .brand-mark strong {
  color: var(--gtx-logo-black);
  font-weight: 900;
}

body.da .brand-mark small {
  color: var(--gtx-logo-muted);
}

body.da .field-journal-brand-note,
body.da .fj-log-stamp,
body.da .mini-label,
body.da :is(.field-journal-nav-note span, .fj-focus-photo figcaption span, .fj-resource-search label span) {
  border-color: rgba(0, 136, 168, 0.24);
  background: rgba(0, 136, 168, 0.09);
  color: var(--gtx-logo-teal-deep);
}

body.da .primary-nav a {
  color: var(--gtx-logo-black);
}

body.da .primary-nav a::after {
  background: var(--gtx-logo-teal);
}

body.da .primary-nav a:hover,
body.da .primary-nav a.is-active {
  border-color: rgba(0, 136, 168, 0.22);
  background: var(--gtx-logo-ice);
  color: var(--gtx-logo-teal-deep);
}

body.da .field-journal-nav-note {
  border-left-color: rgba(0, 136, 168, 0.32);
}

body.da .field-journal-nav-note strong {
  color: var(--gtx-logo-muted);
}

body.da :is(.phone-link, .field-journal-schedule, .ng-button-primary, .mobile-sticky-cta a:first-child) {
  border: 1px solid rgba(0, 76, 95, 0.24);
  border-radius: 8px;
  background: linear-gradient(135deg, var(--gtx-logo-teal), var(--gtx-logo-teal-deep));
  color: #ffffff;
  box-shadow: 0 14px 30px rgba(0, 92, 115, 0.22);
}

body.da :is(.phone-link, .field-journal-schedule, .ng-button-primary):hover {
  background: linear-gradient(135deg, var(--gtx-logo-black), var(--gtx-logo-teal-dark));
  color: #ffffff;
  transform: translateY(-1px);
}

body.da :is(.ng-button-secondary, .ng-button-ghost, .mobile-sticky-cta a:last-child) {
  border: 1px solid rgba(0, 136, 168, 0.26);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.92);
  color: var(--gtx-logo-teal-deep);
  box-shadow: 0 10px 22px rgba(7, 9, 11, 0.06);
}

body.da :is(.ng-button-secondary, .ng-button-ghost):hover {
  border-color: rgba(0, 76, 95, 0.32);
  background: var(--gtx-logo-ice);
  color: var(--gtx-logo-black);
}

body.da .mobile-menu-button {
  border-color: rgba(0, 136, 168, 0.2);
  background: #ffffff;
}

body.da .mobile-menu-button span {
  background: var(--gtx-logo-teal-deep);
}

body.da :is(.fj-logbook-hero,
.fj-inspection-cover,
.fj-about-cover,
.fj-contact-desk,
.fj-resource-cover) {
  background: linear-gradient(120deg, #ffffff 0%, #f6fcfd 48%, var(--gtx-logo-ice) 100%), repeating-linear-gradient(90deg, rgba(0, 136, 168, 0.06) 0 1px, transparent 1px 78px);
  color: var(--gtx-logo-black);
}

body.da :is(.fj-logbook-hero,
.fj-inspection-cover,
.fj-about-cover,
.fj-contact-desk,
.fj-resource-cover)::before {
  display: none;
}

body.da :is(.fj-logbook-hero,
.fj-inspection-cover,
.fj-about-cover,
.fj-contact-desk,
.fj-resource-cover)::after {
  height: 6px;
  background: linear-gradient(90deg, var(--gtx-logo-teal), var(--gtx-logo-black), var(--gtx-logo-teal));
}

.has-hero-scroll-cue {
  position: relative;
}

.hero-scroll-cue {
  position: absolute;
  left: 50%;
  bottom: clamp(12px, 2.4svh, 22px);
  z-index: 6;
  display: grid;
  place-items: center;
  width: 28px;
  height: 30px;
  color: var(--gtx-logo-teal-deep, var(--ng-teal));
  opacity: var(--hero-scroll-cue-opacity, 1);
  pointer-events: none;
  transform: translateX(-50%);
  transition: opacity 120ms linear, visibility 120ms linear;
  will-change: opacity;
}

.hero-scroll-cue span {
  display: block;
  width: 12px;
  height: 12px;
  border-right: 2px solid currentColor;
  border-bottom: 2px solid currentColor;
  opacity: 0.62;
  transform: rotate(45deg);
  animation: hero-scroll-cue-pulse 1.35s ease-in-out infinite;
}

.hero-scroll-cue span + span {
  margin-top: -5px;
  opacity: 0.9;
  animation-delay: 160ms;
}

.has-hero-scroll-cue[data-hero-scroll-cue-hidden=true] .hero-scroll-cue {
  visibility: hidden;
}

@keyframes hero-scroll-cue-pulse {
  0%, 100% {
    opacity: 0.32;
    transform: translateY(-3px) rotate(45deg);
  }
  50% {
    opacity: 1;
    transform: translateY(5px) rotate(45deg);
  }
}
@media (prefers-reduced-motion: reduce) {
  .hero-scroll-cue span {
    animation: none;
  }
}
@media (max-width: 640px) {
  body:not(:has(app-contact)) :is(.fj-logbook-hero,
  .fj-inspection-cover,
  .fj-about-cover,
  .fj-contact-desk,
  .fj-resource-cover) .hero-scroll-cue {
    bottom: calc(82px + env(safe-area-inset-bottom));
  }
}
body.da :is(.eyebrow, .resource-card-header span, .resource-detail-list dt) {
  color: var(--gtx-logo-teal-deep);
}

body.da :is(.fj-hero-spread,
.fj-readiness-panel,
.fj-selected-docket,
.fj-focus-photo,
.fj-family-handoff-grid,
.fj-scope-summary,
.fj-house-map,
.fj-active-system-sheet,
.fj-page-cta-grid,
.fj-mission-grid,
.fj-route-feature,
.fj-profile-sheet,
.fj-values-grid,
.fj-phone-panel,
.fj-calendar-card,
.fj-next-timeline,
.fj-request-planner,
.fj-featured-guide,
.fj-resource-sidebar,
.fj-resource-plan,
.fj-resource-disclaimer,
.fj-provider-table,
.fj-resource-results,
.empty-resource-state) {
  border-color: var(--gtx-logo-line);
  border-radius: 8px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(245, 251, 252, 0.94)), repeating-linear-gradient(0deg, transparent 0, transparent 28px, rgba(0, 136, 168, 0.035) 29px);
  box-shadow: var(--ng-shadow);
}

body.da :is(.fj-hero-spread,
.fj-readiness-panel,
.fj-scope-summary,
.fj-featured-guide,
.fj-next-timeline,
.fj-family-handoff-grid,
.fj-values-grid,
.fj-resource-plan,
.fj-resource-disclaimer,
app-contact-form .contact-form-card) {
  border-left-color: var(--gtx-logo-teal);
}

body.da :is(.fj-credential-row span, .resource-hero-cues span, .fj-local-marker-list span) {
  border-color: rgba(0, 136, 168, 0.22);
  background: rgba(0, 136, 168, 0.09);
  color: var(--gtx-logo-teal-deep);
}

body.da :is(.fj-docket-tabs button,
.fj-focus-tabs button,
.fj-scope-filter button,
.fj-route-pills button,
.fj-profile-tabs button,
.request-tabs button,
.fj-resource-category-list button,
.fj-category-board button) {
  border-color: rgba(0, 136, 168, 0.18);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(237, 249, 251, 0.78));
  color: var(--gtx-logo-black);
}

body.da :is(.fj-docket-tabs button.is-selected,
.fj-focus-tabs button.is-selected,
.fj-scope-filter button.is-selected,
.fj-route-pills button.is-selected,
.fj-profile-tabs button.is-selected,
.request-tabs button.is-selected,
.fj-resource-category-list button.is-selected,
.fj-category-board button.is-selected) {
  border-color: rgba(0, 76, 95, 0.34);
  background: linear-gradient(135deg, var(--gtx-logo-black), var(--gtx-logo-teal-dark));
  color: #ffffff;
}

body.da :is(.fj-progress-track i, .scope-progress i) {
  background: linear-gradient(90deg, var(--gtx-logo-teal), var(--gtx-logo-teal-deep), var(--gtx-logo-black));
}

body.da .fj-house-outline button span,
body.da .fj-provider-actions a,
body.da .fj-provider-actions span {
  background: var(--gtx-logo-teal-dark);
  color: #ffffff;
}

body.da .fj-house-outline button.is-selected {
  background: var(--gtx-logo-black);
  color: #ffffff;
}

body.da .fj-house-outline button.is-selected span {
  background: var(--ng-gold);
  color: var(--gtx-logo-black);
}

body.da .site-footer {
  border-top: 5px solid var(--gtx-logo-teal);
  background: linear-gradient(135deg, var(--gtx-logo-black), #0d2228 58%, var(--gtx-logo-teal-deep)), repeating-linear-gradient(90deg, rgba(255, 255, 255, 0.055) 0 1px, transparent 1px 76px);
  color: rgba(255, 255, 255, 0.8);
}

body.da .field-journal-footer-strip {
  border-color: rgba(255, 255, 255, 0.14);
  border-left-color: var(--gtx-logo-teal);
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.1), rgba(0, 136, 168, 0.16));
  box-shadow: none;
}

body.da .field-journal-footer-strip img {
  border-color: rgba(255, 255, 255, 0.16);
  object-fit: cover;
}

body.da .field-journal-footer-strip span {
  color: var(--ng-gold);
}

body.da .field-journal-footer-strip :is(strong, p),
body.da .footer-bottom span {
  color: rgba(255, 255, 255, 0.82);
}

body.da .field-journal-footer-strip a {
  border-color: rgba(255, 255, 255, 0.2);
  background: #ffffff;
  color: var(--gtx-logo-teal-deep);
}

body.da .field-journal-footer-strip a:hover {
  background: var(--ng-gold);
  color: var(--gtx-logo-black);
}

body.da .footer-bottom {
  border-top-color: rgba(255, 255, 255, 0.14);
}

@media (max-width: 720px) {
  body.da .brand-mark img {
    width: 110px;
    height: auto;
  }
}
/* Resource hero search */
body.da .fj-resource-hero-search {
  align-items: start !important;
  min-height: calc(100svh - var(--site-header-height)) !important;
  padding-top: clamp(10px, 2svh, 18px) !important;
  padding-bottom: clamp(12px, 2svh, 22px) !important;
}

body.da .fj-resource-hero-search .fj-resource-search-layout {
  width: min(1280px, 100% - 32px);
  display: grid;
  grid-template-columns: minmax(0, 1fr) !important;
  gap: clamp(12px, 1.6vw, 18px);
  align-items: start !important;
}

body.da .fj-resource-hero-heading {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 14px;
  align-items: center;
  max-width: none;
}

body.da .fj-resource-hero-heading h1 {
  margin: 0;
  font-size: clamp(1.35rem, 1.8vw, 1.7rem) !important;
  line-height: 1.05 !important;
}

body.da .fj-resource-hero-results,
body.da .fj-resource-hero-results .fj-provider-table,
body.da .fj-resource-hero-results .fj-resource-disclaimer,
body.da .fj-resource-hero-results .empty-resource-state {
  border: 0;
  background: transparent;
  box-shadow: none;
}

body.da .fj-resource-hero-results {
  display: grid;
  gap: 8px;
}

body.da .fj-resource-hero-results .fj-resource-search-panel {
  position: relative;
  z-index: 5;
  grid-template-columns: minmax(0, 1fr) minmax(270px, 0.36fr);
  gap: 8px;
  border: 1px solid rgba(0, 136, 168, 0.16);
  background: rgba(255, 255, 255, 0.5);
  box-shadow: none;
  padding: 8px;
}

body.da .fj-resource-hero-results .resource-control-field > span {
  display: none;
}

body.da .fj-resource-hero-results .resource-control-field input,
body.da .fj-resource-hero-results .resource-service-trigger {
  min-height: 44px;
  border-radius: 8px;
}

body.da .fj-resource-hero-results .resource-control-field input {
  border-color: rgba(0, 76, 95, 0.18);
  background: rgba(255, 255, 255, 0.86);
  color: var(--gtx-logo-black);
  font-weight: 850;
  padding-top: 8px;
  padding-bottom: 8px;
}

body.da .fj-resource-hero-results .resource-search-field input {
  border: 2px solid rgba(0, 76, 95, 0.58);
  box-shadow: 0 0 0 3px rgba(0, 136, 168, 0.1), inset 0 0 0 1px rgba(7, 9, 11, 0.08);
}

body.da .fj-resource-hero-results .resource-search-field input:focus {
  border-color: var(--gtx-logo-teal-deep);
  outline: 3px solid rgba(0, 76, 95, 0.22);
  box-shadow: 0 0 0 5px rgba(0, 136, 168, 0.14), inset 0 0 0 1px rgba(7, 9, 11, 0.1);
}

body.da .resource-service-menu {
  position: relative;
}

body.da .resource-service-trigger {
  width: 100%;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto 18px;
  gap: 8px;
  align-items: center;
  border: 0;
  cursor: pointer;
  font: inherit;
  font-weight: 900;
  padding: 6px 12px;
  text-align: left;
}

body.da .resource-service-trigger span,
body.da .resource-service-options button span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

body.da .resource-service-trigger small,
body.da .resource-service-options button small {
  color: currentColor;
  font-size: 0.72rem;
  font-weight: 850;
  opacity: 0.88;
}

body.da .resource-service-trigger i {
  font-style: normal;
  text-align: right;
  transition: transform 160ms ease;
}

body.da .resource-service-menu.is-open .resource-service-trigger i {
  transform: rotate(180deg);
}

body.da .resource-service-options {
  position: absolute;
  left: 0;
  right: 0;
  top: calc(100% + 8px);
  z-index: 20;
  display: grid;
  gap: 6px;
  max-height: min(430px, 68svh);
  overflow: auto;
  border: 1px solid rgba(0, 76, 95, 0.16);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.96);
  box-shadow: 0 18px 42px rgba(7, 9, 11, 0.16);
  padding: 8px;
  transform-origin: top right;
  animation: resourceDropdownIn 170ms ease-out;
}

body.da .resource-service-options button {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 10px;
  align-items: center;
  min-height: 38px;
  border: 2px solid transparent;
  border-radius: 8px;
  cursor: pointer;
  font: inherit;
  font-weight: 900;
  padding: 8px 10px;
  text-align: left;
}

body.da .resource-service-options button[aria-selected=true] {
  border-color: rgba(255, 255, 255, 0.85);
  outline: 2px solid rgba(7, 9, 11, 0.28);
}

@keyframes resourceDropdownIn {
  from {
    opacity: 0;
    transform: translateY(-8px) scale(0.98);
  }
  to {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}
body.da .fj-resource-hero-results .fj-active-resource-strip {
  gap: 7px;
  border: 0;
  background: transparent;
  padding: 0;
}

body.da .fj-resource-hero-results .fj-active-resource-strip span {
  border: 1px solid rgba(0, 136, 168, 0.16);
  border-radius: 999px;
  background: rgba(255, 255, 255, 0.56);
  color: var(--gtx-logo-black);
  padding: 5px 9px;
}

body.da .fj-resource-hero-results .fj-provider-table {
  padding: 0;
}

body.da .fj-resource-hero-results .fj-provider-card-grid {
  gap: 6px 10px;
}

@media (min-width: 861px) {
  body.da .fj-resource-hero-results .fj-provider-card-grid {
    gap: 16px 10px;
  }
}
body.da .fj-resource-hero-results .fj-provider-table .fj-provider-card {
  min-height: 112px;
  border: 1px solid rgba(0, 76, 95, 0.12);
  background: rgba(255, 255, 255, 0.34);
  box-shadow: none;
  padding: 7px 11px;
}

body.da .fj-resource-hero-results .fj-provider-card-head {
  display: grid;
  grid-template-columns: auto minmax(0, 1fr);
  gap: 9px;
  align-items: center;
}

body.da .resource-service-pill {
  display: inline-flex;
  align-items: center;
  min-height: 22px;
  border-radius: 999px;
  font-size: 0.68rem;
  font-weight: 900;
  padding: 4px 8px;
  white-space: nowrap;
}

body.da .fj-resource-hero-results .fj-provider-table .fj-provider-card > div > strong {
  font-size: 1rem;
  line-height: 1.16;
}

body.da .fj-resource-hero-results .fj-provider-table .fj-provider-card dl {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}

body.da .fj-resource-hero-results .fj-provider-table .fj-provider-card dl div:only-child {
  grid-column: 1/-1;
}

body.da .fj-resource-hero-results .fj-provider-card dt {
  color: var(--gtx-logo-black);
  opacity: 0.78;
}

body.da .fj-resource-hero-results .fj-provider-card dd {
  color: var(--gtx-logo-charcoal);
  font-size: 0.82rem;
}

body.da .fj-resource-hero-results .fj-provider-table .fj-provider-card .fj-provider-actions a,
body.da .fj-resource-hero-results .fj-provider-table .fj-provider-card .fj-provider-actions span {
  min-height: 26px;
}

body.da .fj-resource-hero-results .fj-resource-pagination button {
  min-height: 36px;
  border-color: rgba(0, 76, 95, 0.16);
  background: rgba(255, 255, 255, 0.6);
}

body.da .fj-resource-hero-results .fj-resource-pagination button.is-selected,
body.da .fj-resource-hero-results .fj-resource-pagination button:hover:not(:disabled) {
  background: var(--gtx-logo-black);
  color: #ffffff;
}

body.da .fj-resource-hero-disclaimer {
  border-top: 1px solid rgba(0, 76, 95, 0.12);
  padding: 5px 0 0;
}

body.da .fj-resource-hero-disclaimer strong,
body.da .fj-resource-hero-disclaimer p {
  display: inline;
  color: var(--gtx-logo-muted);
  font-size: 0.78rem;
  line-height: 1.35;
}

@media (max-width: 860px) {
  body.da .fj-resource-hero-results .fj-resource-search-panel,
  body.da .fj-resource-hero-results .fj-provider-card-grid,
  body.da .fj-resource-hero-results .fj-provider-table .fj-provider-card dl {
    grid-template-columns: 1fr;
  }
  body.da .fj-resource-hero-results .fj-provider-card-head {
    grid-template-columns: 1fr;
    justify-items: start;
  }
  body.da .fj-resource-hero-results .fj-active-resource-strip {
    display: none;
  }
}
@media (max-width: 720px) {
  body.da .fj-resource-hero-search {
    padding-top: 20px !important;
    padding-bottom: 28px !important;
  }
  body.da .fj-resource-hero-search .fj-resource-search-layout {
    width: min(100% - 24px, 1280px);
  }
  body.da .fj-resource-hero-heading h1 {
    font-size: clamp(1.55rem, 7vw, 2.05rem) !important;
  }
}
@media (prefers-reduced-motion: reduce) {
  body.da .resource-service-trigger i {
    transition: none;
  }
  body.da .resource-service-options {
    animation: none;
  }
}
/* Inspection process timeline concepts */
.ipt {
  position: relative;
  overflow: hidden;
  padding: clamp(58px, 8vw, 96px) 0;
  border-top: 1px solid rgba(0, 136, 168, 0.12);
  border-bottom: 1px solid rgba(0, 136, 168, 0.12);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(237, 249, 251, 0.82) 54%, rgba(255, 255, 255, 0.96)), repeating-linear-gradient(90deg, rgba(0, 136, 168, 0.05) 0 1px, transparent 1px 76px);
}

.ipt-head {
  display: grid;
  grid-template-columns: minmax(0, 0.92fr) minmax(280px, 0.56fr);
  gap: clamp(20px, 4vw, 52px);
  align-items: end;
  margin-bottom: 24px;
}

.ipt-head h2,
.ipt-concept-head h3,
.ipt-story-copy h4,
.ipt-board-copy h4 {
  margin: 0;
  color: var(--ng-ink);
  letter-spacing: 0;
}

.ipt-head h2 {
  max-width: 820px;
  font-size: clamp(2rem, 4.2vw, 3.25rem);
  line-height: 1.05;
  text-wrap: balance;
}

.ipt-head p:not(.eyebrow),
.ipt-concept-head p,
.ipt-photo-panel p,
.ipt-inline-detail p,
.ipt-story-copy p,
.ipt-story-copy li,
.ipt-board-copy dd {
  color: var(--ng-muted);
  line-height: 1.6;
}

.ipt-head p:not(.eyebrow) {
  margin: 0;
}

.ipt-step-tabs {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 8px;
  margin-bottom: 18px;
}

.ipt-step-tabs button,
.ipt-rail-list button,
.ipt-story-strip button,
.ipt-board-steps button {
  border: 1px solid rgba(0, 136, 168, 0.18);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.9);
  color: var(--ng-ink);
  cursor: pointer;
  font: inherit;
  text-align: left;
  transition: border-color 160ms ease, box-shadow 160ms ease, transform 160ms ease, background 160ms ease;
}

.ipt-step-tabs button {
  display: grid;
  grid-template-columns: 32px minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  min-height: 64px;
  padding: 10px;
}

.ipt-step-tabs button:hover,
.ipt-rail-list button:hover,
.ipt-story-strip button:hover,
.ipt-board-steps button:hover {
  border-color: rgba(0, 76, 95, 0.32);
  box-shadow: 0 12px 28px rgba(7, 9, 11, 0.08);
  transform: translateY(-1px);
}

.ipt-step-tabs button:focus-visible,
.ipt-rail-list button:focus-visible,
.ipt-story-strip button:focus-visible,
.ipt-board-steps button:focus-visible,
.ipt-board-actions button:focus-visible {
  outline: 3px solid rgba(167, 237, 247, 0.86);
  outline-offset: 3px;
}

.ipt-step-tabs button.is-selected,
.ipt-rail-list li.is-selected > button,
.ipt-story-strip button.is-selected,
.ipt-board-steps button.is-selected {
  border-color: rgba(0, 76, 95, 0.36);
  background: linear-gradient(135deg, var(--gtx-logo-black, #07090b), var(--gtx-logo-teal-dark, #006d86));
  color: #ffffff;
  box-shadow: 0 16px 34px rgba(0, 76, 95, 0.18);
}

.ipt-step-tabs span,
.ipt-rail-list button span,
.ipt-board-steps button span {
  display: grid;
  place-items: center;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: rgba(0, 136, 168, 0.1);
  color: var(--gtx-logo-teal-deep, var(--ng-blue));
  font-weight: 900;
}

.ipt-step-tabs button.is-selected span,
.ipt-rail-list li.is-selected > button span,
.ipt-board-steps button.is-selected span {
  background: var(--ng-gold);
  color: var(--ng-ink);
}

.ipt-step-tabs strong,
.ipt-rail-list strong,
.ipt-story-strip strong,
.ipt-board-steps strong {
  min-width: 0;
  font-size: 0.9rem;
  font-weight: 900;
  line-height: 1.2;
}

.ipt-comparison-grid {
  display: grid;
  gap: 18px;
}

.ipt-concept {
  border: 1px solid rgba(0, 136, 168, 0.16);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.88);
  box-shadow: 0 24px 54px rgba(7, 9, 11, 0.09);
  padding: clamp(16px, 3vw, 24px);
}

.ipt-concept-head {
  display: grid;
  grid-template-columns: auto minmax(0, 0.34fr) minmax(0, 1fr);
  gap: 12px 16px;
  align-items: center;
  margin-bottom: 18px;
}

.ipt-concept-head > span {
  display: inline-flex;
  width: -moz-fit-content;
  width: fit-content;
  border: 1px solid rgba(0, 136, 168, 0.22);
  border-radius: 999px;
  background: rgba(0, 136, 168, 0.08);
  color: var(--gtx-logo-teal-deep, var(--ng-blue));
  font-size: 0.76rem;
  font-weight: 900;
  padding: 7px 10px;
  text-transform: uppercase;
}

.ipt-concept-head h3 {
  font-size: clamp(1.45rem, 2.4vw, 2rem);
  line-height: 1.08;
}

.ipt-concept-head p {
  margin: 0;
  font-size: 0.96rem;
}

.ipt-rail-layout {
  display: grid;
  grid-template-columns: minmax(300px, 0.44fr) minmax(0, 1fr);
  gap: clamp(16px, 3vw, 28px);
  align-items: start;
}

.ipt-photo-panel {
  display: grid;
  margin: 0;
  overflow: hidden;
  border: 1px solid rgba(0, 136, 168, 0.16);
  border-radius: 8px;
  background: #ffffff;
}

.ipt-photo-panel img {
  width: 100%;
  height: clamp(260px, 29vw, 390px);
  object-fit: cover;
  filter: saturate(0.96) contrast(1.03);
}

.ipt-photo-panel figcaption {
  display: grid;
  gap: 8px;
  padding: 18px;
}

.ipt-photo-panel figcaption span,
.ipt-story-copy > span,
.ipt-board-copy > span,
.ipt-progress-card > span {
  color: var(--gtx-logo-teal-deep, var(--ng-blue));
  font-size: 0.76rem;
  font-weight: 900;
  text-transform: uppercase;
}

.ipt-photo-panel strong {
  color: var(--ng-ink);
  font-size: clamp(1.35rem, 2.4vw, 1.8rem);
  line-height: 1.1;
}

.ipt-photo-panel p {
  margin: 0;
}

.ipt-rail-list,
.ipt-board-steps {
  margin: 0;
  padding: 0;
  list-style: none;
}

.ipt-rail-list {
  position: relative;
  display: grid;
  gap: 10px;
}

.ipt-rail-list::before {
  position: absolute;
  top: 18px;
  bottom: 18px;
  left: 20px;
  width: 2px;
  background: rgba(0, 136, 168, 0.16);
  content: "";
}

.ipt-rail-list li {
  position: relative;
  display: grid;
  gap: 8px;
}

.ipt-rail-list button {
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-columns: 42px minmax(0, 1fr) auto;
  gap: 12px;
  align-items: center;
  min-height: 72px;
  padding: 12px;
}

.ipt-rail-list small {
  color: currentColor;
  font-size: 0.72rem;
  font-weight: 900;
  opacity: 0.72;
  text-transform: uppercase;
}

.ipt-inline-detail {
  display: grid;
  gap: 12px;
  margin-left: 54px;
  border-left: 4px solid var(--ng-gold);
  border-radius: 8px;
  background: rgba(237, 249, 251, 0.62);
  padding: 14px;
}

.ipt-inline-detail p {
  margin: 0;
}

.ipt-inline-detail div,
.ipt-story-copy ul {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.ipt-inline-detail span {
  border: 1px solid rgba(0, 136, 168, 0.16);
  border-radius: 999px;
  background: #ffffff;
  color: var(--gtx-logo-teal-deep, var(--ng-blue));
  font-size: 0.75rem;
  font-weight: 900;
  padding: 6px 9px;
}

.ipt-story-strip {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 10px;
}

.ipt-story-strip button {
  position: relative;
  display: grid;
  gap: 9px;
  overflow: hidden;
  min-height: 230px;
  padding: 0 0 14px;
}

.ipt-story-strip img {
  width: 100%;
  height: 136px;
  object-fit: cover;
  filter: saturate(0.94) contrast(1.02);
}

.ipt-story-strip span {
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 12px;
  border-radius: 999px;
  background: rgba(0, 136, 168, 0.1);
  color: var(--gtx-logo-teal-deep, var(--ng-blue));
  font-size: 0.76rem;
  font-weight: 900;
  padding: 5px 8px;
}

.ipt-story-strip button.is-selected span {
  background: var(--ng-gold);
  color: var(--ng-ink);
}

.ipt-story-strip strong {
  display: block;
  margin: 0 12px;
}

.ipt-story-feature {
  display: grid;
  grid-template-columns: minmax(220px, 0.28fr) minmax(0, 1fr);
  gap: 16px;
  align-items: stretch;
  margin-top: 16px;
}

.ipt-progress-card,
.ipt-story-copy {
  border: 1px solid rgba(0, 136, 168, 0.15);
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.82);
  padding: 18px;
}

.ipt-progress-card {
  display: grid;
  align-content: center;
  gap: 10px;
}

.ipt-progress-card strong {
  color: var(--ng-ink);
  font-size: clamp(1.8rem, 3vw, 2.45rem);
  line-height: 1;
}

.ipt-progress-card div {
  height: 10px;
  overflow: hidden;
  border-radius: 999px;
  background: rgba(7, 9, 11, 0.1);
}

.ipt-progress-card i {
  display: block;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--gtx-logo-teal, var(--ng-teal)), var(--gtx-logo-teal-deep, var(--ng-blue)), var(--gtx-logo-black, var(--ng-ink)));
}

.ipt-story-copy {
  display: grid;
  gap: 12px;
}

.ipt-story-copy h4 {
  font-size: clamp(1.6rem, 3vw, 2.35rem);
  line-height: 1.08;
}

.ipt-story-copy p {
  margin: 0;
}

.ipt-story-copy ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.ipt-story-copy li {
  flex: 1 1 190px;
  min-width: 0;
  border-left: 4px solid var(--ng-gold);
  background: rgba(237, 249, 251, 0.64);
  padding: 10px 12px;
}

.ipt-board-layout {
  display: grid;
  grid-template-columns: minmax(220px, 0.26fr) minmax(0, 1fr);
  gap: 16px;
  align-items: start;
}

.ipt-board-steps {
  display: grid;
  gap: 8px;
}

.ipt-board-steps button {
  display: grid;
  grid-template-columns: 32px minmax(0, 1fr);
  gap: 10px;
  align-items: center;
  width: 100%;
  min-height: 54px;
  padding: 10px;
}

.ipt-board-card {
  display: grid;
  grid-template-columns: minmax(260px, 0.42fr) minmax(0, 1fr);
  overflow: hidden;
  border: 1px solid rgba(0, 136, 168, 0.15);
  border-radius: 8px;
  background: #ffffff;
}

.ipt-board-card img {
  width: 100%;
  height: 100%;
  min-height: 360px;
  object-fit: cover;
  filter: saturate(0.96) contrast(1.03);
}

.ipt-board-copy {
  display: grid;
  align-content: center;
  gap: 14px;
  min-width: 0;
  padding: clamp(18px, 3vw, 28px);
}

.ipt-board-copy h4 {
  font-size: clamp(1.55rem, 3vw, 2.3rem);
  line-height: 1.08;
}

.ipt-board-copy dl {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
  margin: 0;
}

.ipt-board-copy dl div {
  border: 1px solid rgba(0, 136, 168, 0.14);
  border-left: 4px solid var(--ng-gold);
  border-radius: 8px;
  background: rgba(237, 249, 251, 0.6);
  padding: 12px;
}

.ipt-board-copy dt {
  color: var(--gtx-logo-teal-deep, var(--ng-blue));
  font-size: 0.72rem;
  font-weight: 900;
  text-transform: uppercase;
}

.ipt-board-copy dd {
  margin: 6px 0 0;
}

.ipt-board-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.ipt-board-actions .ng-button {
  min-width: min(100%, 190px);
}

@media (max-width: 1050px) {
  .ipt-head,
  .ipt-rail-layout,
  .ipt-board-layout,
  .ipt-board-card {
    grid-template-columns: 1fr;
  }
  .ipt-concept-head {
    grid-template-columns: auto minmax(0, 1fr);
  }
  .ipt-concept-head p {
    grid-column: 1/-1;
  }
  .ipt-board-card img {
    height: 290px;
    min-height: 290px;
  }
}
@media (max-width: 860px) {
  .ipt-step-tabs,
  .ipt-story-strip {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .ipt-story-feature,
  .ipt-board-copy dl {
    grid-template-columns: 1fr;
  }
  .ipt-rail-list button {
    grid-template-columns: 42px minmax(0, 1fr);
  }
  .ipt-rail-list small {
    grid-column: 2;
  }
}
@media (max-width: 560px) {
  .ipt {
    padding: 44px 0;
  }
  .ipt-head {
    gap: 14px;
    margin-bottom: 18px;
  }
  .ipt-step-tabs,
  .ipt-story-strip {
    grid-template-columns: 1fr;
  }
  .ipt-step-tabs button,
  .ipt-story-strip button {
    min-height: 0;
  }
  .ipt-concept {
    padding: 14px;
  }
  .ipt-concept-head {
    grid-template-columns: 1fr;
    gap: 8px;
  }
  .ipt-photo-panel img,
  .ipt-board-card img {
    height: 230px;
    min-height: 230px;
  }
  .ipt-inline-detail {
    margin-left: 0;
  }
  .ipt-story-strip img {
    height: 168px;
  }
  .ipt-board-actions .ng-button {
    width: 100%;
  }
}
/* Production inspection process timeline */
.inspection-process-timeline {
  position: relative;
  overflow: hidden;
  border-top: 1px solid rgba(0, 136, 168, 0.14);
  border-bottom: 1px solid rgba(0, 136, 168, 0.14);
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.98), rgba(237, 249, 251, 0.86) 52%, rgba(255, 255, 255, 0.97)), repeating-linear-gradient(90deg, rgba(0, 136, 168, 0.045) 0 1px, transparent 1px 76px);
  padding: clamp(56px, 8vw, 92px) 0;
}

.inspection-process-timeline::before {
  position: absolute;
  inset: 0 0 auto;
  height: 5px;
  background: linear-gradient(90deg, var(--gtx-logo-teal, #0088a8) 0 46%, var(--gtx-logo-black, #07090b) 46% 54%, var(--gtx-logo-teal, #0088a8) 54% 100%);
  content: "";
}

.inspection-process-timeline__header {
  position: relative;
  z-index: 2;
  display: grid;
  grid-template-columns: minmax(0, 0.9fr) minmax(280px, 0.56fr);
  gap: clamp(20px, 4vw, 48px);
  align-items: end;
  margin-bottom: 34px;
}

.inspection-process-timeline__header h2 {
  max-width: 760px;
  margin: 0;
  color: var(--gtx-logo-black, var(--ng-ink));
  font-size: 2.35rem;
  line-height: 1.05;
  text-wrap: balance;
}

.inspection-process-timeline__header p:not(.eyebrow) {
  margin: 0;
  color: var(--gtx-logo-muted, var(--ng-muted));
  line-height: 1.6;
}

.inspection-process-timeline__viewport {
  position: relative;
  z-index: 1;
  overflow: visible;
  padding: 14px 4px 0;
}

.inspection-process-timeline__viewport::-webkit-scrollbar {
  height: 10px;
}

.inspection-process-timeline__viewport::-webkit-scrollbar-track {
  border-radius: 999px;
  background: rgba(0, 136, 168, 0.08);
}

.inspection-process-timeline__viewport::-webkit-scrollbar-thumb {
  border-radius: 999px;
  background: rgba(0, 76, 95, 0.35);
}

.inspection-process-timeline__steps {
  --timeline-upper: 184px;
  --timeline-lower: 188px;
  position: relative;
  display: grid;
  grid-template-columns: repeat(6, minmax(0, 1fr));
  min-width: 0;
  margin: 0;
  padding: 0;
  list-style: none;
}

.inspection-process-timeline__steps::before {
  position: absolute;
  z-index: 0;
  top: calc(var(--timeline-upper) + 17px);
  right: 0;
  left: 0;
  height: 18px;
  border-radius: 999px;
  background: linear-gradient(90deg, rgba(7, 9, 11, 0.98), rgba(0, 75, 93, 0.96) 18%, rgba(0, 136, 168, 0.96) 42%, rgba(0, 109, 134, 0.96) 68%, rgba(7, 9, 11, 0.98)), linear-gradient(90deg, rgba(255, 255, 255, 0.24), transparent);
  box-shadow: 0 18px 36px rgba(0, 76, 95, 0.16);
  content: "";
}

.inspection-process-timeline__step {
  --step-accent: var(--gtx-logo-teal, #0088a8);
  position: relative;
  z-index: 1;
  display: grid;
  grid-template-rows: var(--timeline-upper) 52px var(--timeline-lower);
  gap: 0;
  min-width: 0;
  padding: 0 10px;
}

.inspection-process-timeline__step + .inspection-process-timeline__step {
  border-left: 1px solid rgba(0, 136, 168, 0.13);
}

.inspection-process-timeline__copy {
  position: relative;
  display: grid;
  align-self: end;
  gap: 7px;
  min-width: 0;
  min-height: 148px;
  border: 1px solid rgba(0, 136, 168, 0.16);
  border-top: 5px solid var(--step-accent);
  border-radius: 8px;
  background: linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(245, 251, 252, 0.9)), #ffffff;
  box-shadow: 0 16px 32px rgba(7, 9, 11, 0.08);
  padding: 13px;
}

.inspection-process-timeline__copy::after {
  position: absolute;
  bottom: -23px;
  left: 50%;
  width: 2px;
  height: 23px;
  background: linear-gradient(180deg, var(--step-accent), rgba(0, 136, 168, 0.18));
  content: "";
}

.inspection-process-timeline__copy span {
  display: inline-flex;
  width: -moz-fit-content;
  width: fit-content;
  border-radius: 999px;
  background: rgba(0, 136, 168, 0.09);
  color: var(--gtx-logo-teal-deep, #004b5d);
  font-size: 0.72rem;
  font-weight: 900;
  letter-spacing: 0.08em;
  line-height: 1;
  padding: 6px 8px;
  text-transform: uppercase;
}

.inspection-process-timeline__copy h3 {
  margin: 0;
  color: var(--gtx-logo-black, var(--ng-ink));
  font-size: 1rem;
  line-height: 1.15;
  overflow-wrap: anywhere;
}

.inspection-process-timeline__copy p {
  margin: 0;
  color: var(--gtx-logo-muted, var(--ng-muted));
  font-size: 0.88rem;
  line-height: 1.48;
  overflow-wrap: anywhere;
}

.inspection-process-timeline__axis {
  position: relative;
  display: grid;
  grid-row: 2;
  place-items: center;
}

.inspection-process-timeline__axis span {
  width: 22px;
  height: 22px;
  border: 4px solid #ffffff;
  border-radius: 50%;
  background: var(--step-accent);
  box-shadow: 0 0 0 1px rgba(0, 76, 95, 0.15), 0 10px 20px rgba(7, 9, 11, 0.15);
}

.inspection-process-timeline__icon-shell {
  position: relative;
  display: grid;
  place-self: start center;
  width: 86px;
  height: 86px;
}

.inspection-process-timeline__icon-shell::before {
  position: absolute;
  top: -25px;
  left: 50%;
  width: 3px;
  height: 26px;
  background: linear-gradient(180deg, rgba(0, 136, 168, 0.18), var(--step-accent));
  content: "";
  transform: translateX(-50%);
}

.inspection-process-timeline__step-number {
  position: absolute;
  z-index: 2;
  top: -6px;
  right: -3px;
  display: grid;
  place-items: center;
  width: 28px;
  height: 28px;
  border: 2px solid #ffffff;
  border-radius: 50%;
  background: var(--gtx-logo-black, #07090b);
  color: #ffffff;
  font-size: 0.78rem;
  font-weight: 900;
  line-height: 1;
}

.inspection-process-timeline__icon {
  display: grid;
  place-items: center;
  width: 76px;
  height: 76px;
  border: 4px solid #ffffff;
  border-radius: 50%;
  background: radial-gradient(circle at 35% 25%, rgba(255, 255, 255, 0.22), transparent 38%), linear-gradient(135deg, var(--step-accent), var(--gtx-logo-black, #07090b));
  box-shadow: 0 18px 34px rgba(0, 76, 95, 0.2);
  color: #ffffff;
}

.inspection-process-timeline__icon svg {
  width: 34px;
  height: 34px;
  fill: none;
  stroke: currentColor;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-width: 1.8;
}

.inspection-process-timeline__step.is-reversed .inspection-process-timeline__copy {
  grid-row: 3;
  align-self: start;
}

.inspection-process-timeline__step.is-reversed .inspection-process-timeline__copy::after {
  top: -23px;
  bottom: auto;
  background: linear-gradient(180deg, rgba(0, 136, 168, 0.18), var(--step-accent));
}

.inspection-process-timeline__step.is-reversed .inspection-process-timeline__icon-shell {
  grid-row: 1;
  place-self: end center;
}

.inspection-process-timeline__step.is-reversed .inspection-process-timeline__icon-shell::before {
  top: auto;
  bottom: -25px;
  background: linear-gradient(180deg, var(--step-accent), rgba(0, 136, 168, 0.18));
}

@media (max-width: 900px) {
  .inspection-process-timeline {
    padding: 50px 0 62px;
  }
  .inspection-process-timeline__header {
    grid-template-columns: 1fr;
    gap: 14px;
    margin-bottom: 24px;
  }
  .inspection-process-timeline__header h2 {
    font-size: 1.9rem;
  }
}
@media (max-width: 560px) {
  .inspection-process-timeline {
    padding: 42px 0 54px;
  }
  .inspection-process-timeline__header h2 {
    font-size: 1.65rem;
  }
  .inspection-process-timeline__viewport {
    margin-right: 0;
    margin-left: 0;
    padding-right: 0;
    padding-left: 0;
  }
  .inspection-process-timeline__steps {
    --timeline-upper: 172px;
    --timeline-lower: 180px;
    min-width: 0;
  }
  .inspection-process-timeline__step {
    padding: 0 8px;
  }
  .inspection-process-timeline__copy {
    min-height: 142px;
    padding: 11px;
  }
  .inspection-process-timeline__copy p {
    font-size: 0.82rem;
  }
}
@media (max-width: 980px) {
  .inspection-process-timeline__viewport {
    overflow: visible;
    padding: 6px 0 0;
  }
  .inspection-process-timeline__steps {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0;
    min-width: 0;
    padding: 4px 0;
  }
  .inspection-process-timeline__steps::before {
    top: 4px;
    bottom: 4px;
    left: 36px;
    right: auto;
    width: 10px;
    height: auto;
    border-radius: 999px;
    background: linear-gradient(180deg, rgba(7, 9, 11, 0.98), rgba(0, 75, 93, 0.96) 18%, rgba(0, 136, 168, 0.96) 42%, rgba(0, 109, 134, 0.96) 68%, rgba(7, 9, 11, 0.98)), linear-gradient(180deg, rgba(255, 255, 255, 0.24), transparent);
  }
  .inspection-process-timeline__step {
    display: grid;
    grid-template-columns: 82px minmax(0, 1fr);
    grid-template-rows: auto;
    gap: 0;
    padding: 0 0 22px;
  }
  .inspection-process-timeline__step:last-child {
    padding-bottom: 0;
  }
  .inspection-process-timeline__step + .inspection-process-timeline__step {
    border-left: 0;
  }
  .inspection-process-timeline__copy,
  .inspection-process-timeline__step.is-reversed .inspection-process-timeline__copy {
    grid-column: 2;
    grid-row: 1;
    align-self: start;
    min-height: 0;
  }
  .inspection-process-timeline__copy::after,
  .inspection-process-timeline__step.is-reversed .inspection-process-timeline__copy::after {
    top: 32px;
    bottom: auto;
    left: -34px;
    width: 34px;
    height: 2px;
    background: linear-gradient(90deg, var(--step-accent), rgba(0, 136, 168, 0.18));
  }
  .inspection-process-timeline__axis {
    display: none;
  }
  .inspection-process-timeline__icon-shell,
  .inspection-process-timeline__step.is-reversed .inspection-process-timeline__icon-shell {
    grid-column: 1;
    grid-row: 1;
    place-self: start center;
    width: 72px;
    height: 72px;
  }
  .inspection-process-timeline__icon-shell::before,
  .inspection-process-timeline__step.is-reversed .inspection-process-timeline__icon-shell::before {
    display: none;
  }
  .inspection-process-timeline__step-number {
    top: -2px;
    right: 1px;
    width: 24px;
    height: 24px;
    font-size: 0.7rem;
  }
  .inspection-process-timeline__icon {
    width: 64px;
    height: 64px;
  }
  .inspection-process-timeline__icon svg {
    width: 28px;
    height: 28px;
  }
}
/* Focused aesthetic refinements for the active field-journal design */
@media (max-width: 640px) {
  body.da .site-header {
    grid-template-columns: auto 44px;
    justify-content: space-between;
    gap: 12px;
    padding: 8px 14px;
  }
  body.da .brand-mark {
    grid-column: 1;
    justify-self: start;
    justify-content: flex-start;
  }
  body.da .brand-mark img {
    width: 104px;
    height: auto;
  }
  body.da .mobile-menu-button {
    grid-column: 2;
    grid-row: 1;
  }
  body.da .header-actions {
    display: none;
  }
  body.da .primary-nav {
    grid-column: 1/-1;
  }
}
@media (max-width: 720px) {
  body.da :is(.fj-logbook-hero,
  .fj-inspection-cover,
  .fj-about-cover,
  .fj-contact-desk,
  .fj-resource-cover) {
    padding-top: 58px;
  }
  body.da .fj-hotspot-intro {
    grid-template-columns: 1fr;
    gap: 14px;
    margin-bottom: 16px;
  }
  body.da .fj-hotspot-intro h1 {
    font-size: clamp(2rem, 9vw, 2.6rem);
  }
  body.da .fj-selected-system-brief {
    padding: 14px;
  }
  body.da .fj-house-map {
    padding: 10px;
  }
  body.da .fj-house-map .cutaway-stage {
    min-height: 0;
    aspect-ratio: 110/68;
  }
  body.da .fj-map-key {
    margin-top: 10px;
    padding-top: 10px;
  }
  body.da .fj-map-key strong {
    font-size: 1.18rem;
  }
  body.da .fj-modal-topbar {
    grid-template-columns: 1fr;
    align-items: start;
  }
  body.da .fj-modal-pager {
    width: min(100%, 230px);
  }
  body.da .fj-resource-hero-results .fj-provider-table .fj-provider-card {
    display: grid;
    gap: 12px;
    min-height: 0;
    padding: 16px;
  }
  body.da .fj-resource-hero-results .fj-provider-card-head {
    grid-template-columns: auto minmax(0, 1fr);
    gap: 10px;
    align-items: center;
  }
  body.da .resource-service-pill {
    border: 1px solid rgba(0, 136, 168, 0.22);
    background: rgba(0, 136, 168, 0.1) !important;
    color: var(--gtx-logo-teal-deep) !important;
    font-size: 0.66rem;
    text-transform: none;
  }
  body.da .fj-resource-hero-results .fj-provider-table .fj-provider-card > div > strong {
    font-size: 1.05rem;
    line-height: 1.22;
  }
  body.da .fj-resource-hero-results .fj-provider-table .fj-provider-card dl {
    gap: 10px;
  }
  body.da .fj-resource-hero-results .fj-provider-card dt {
    color: var(--gtx-logo-muted);
    font-size: 0.66rem;
    letter-spacing: 0;
    text-transform: none;
  }
  body.da .fj-resource-hero-results .fj-provider-card dd {
    font-size: 0.92rem;
    line-height: 1.35;
  }
  body.da .fj-resource-hero-results .fj-provider-table .fj-provider-card .fj-provider-actions a,
  body.da .fj-resource-hero-results .fj-provider-table .fj-provider-card .fj-provider-actions span {
    min-height: 40px;
  }
}
@media (max-width: 620px) {
  .finding-folder-shell {
    min-height: 780px;
  }
  .finding-paper-stack {
    min-height: 720px;
    padding-bottom: 42px;
  }
  .finding-folder-front {
    height: 40%;
  }
  .finding-photo {
    min-height: 190px;
  }
  .sample-finding-section.is-open .finding-folder-front {
    transform: rotateX(72deg) translateY(40px);
  }
}
@media (max-width: 520px) {
  body.da .fj-house-map .cutaway-stage {
    min-height: 0;
  }
  body.da .cutaway-hotspot {
    width: 34px;
    height: 34px;
  }
  body.da .cutaway-hotspot-index {
    font-size: 0.72rem;
  }
}

/*# sourceMappingURL=styles.css.map*/