/* KEYNEIGHBOR_AZURE_SAFFRON_GOSIGNAL_V5
   Azure Saffron architecture and palette from the archived v86 source, paired
   only with GoSignal's Verdana typography from v90. Application behavior is
   intentionally untouched. */
:root {
  color-scheme: light;
  --kn-primary: #0EA5E9;
  --kn-primary-dark: #0369A1;
  --kn-secondary: #F59E0B;
  --kn-secondary-dark: #B45309;
  --kn-tertiary: #DB2777;
  --kn-quaternary: #10B981;
  --kn-brown: var(--kn-ink);
  --kn-brown-dark: #111827;
  --kn-accent: var(--kn-primary);
  --kn-teal: var(--kn-primary);
  --kn-teal-dark: var(--kn-primary-dark);
  --kn-gold: var(--kn-tertiary);
  --kn-urgent: #DB2777;
  --kn-ink: #1F2937;
  --kn-muted: #5F6B7A;
  --kn-line: #D6DEE8;
  --kn-bg: #FFFFFF;
  --kn-surface: #FFFFFF;
  --kn-mist: #F7F8FA;
  --kn-cream: #F7F8FA;
  --kn-cream-deep: #E0F2FE;
  --kn-positive-bg: rgba(16,185,129,.13);
  --kn-warning-bg: rgba(245,158,11,.14);
  --kn-danger-bg: rgba(219,39,119,.12);
  --kn-texture: none;
  --kn-display: Verdana, Geneva, sans-serif;
  --kn-body: Verdana, Geneva, sans-serif;
  --kn-mono: Verdana, Geneva, sans-serif;
  --kn-radius-sm: 3px;
  --kn-radius-md: 5px;
  --kn-radius-lg: 7px;
  --kn-pill: 4px;
  --kn-shell: 1120px;
}

* { box-sizing: border-box; }
html { background: var(--kn-bg); }
body[data-kn-page] {
  min-width: 320px;
  min-height: 100vh;
  margin: 0;
  color: var(--kn-ink);
  background: var(--kn-bg) !important;
  background-image: none !important;
  font-family: var(--kn-body) !important;
  line-height: 1.55;
  -webkit-font-smoothing: antialiased;
}
body[data-kn-page] :where(h1,h2,h3,h4,legend) {
  color: var(--kn-ink);
  font-family: var(--kn-display) !important;
  font-weight: 700 !important;
  letter-spacing: -.025em !important;
  line-height: 1.12 !important;
  text-transform: none !important;
}
body[data-kn-page] :where(button,input,select,textarea) { font: inherit; }
body[data-kn-page] :where(a) { text-underline-offset: .18em; }
body[data-kn-page] :focus-visible { outline: 3px solid rgba(14,165,233,.32) !important; outline-offset: 3px; }
body[data-kn-page] :where(.eyebrow) {
  color: var(--kn-brown) !important;
  font-family: var(--kn-mono) !important;
  font-size: 11px !important;
  font-weight: 700 !important;
  letter-spacing: .12em !important;
  text-transform: uppercase !important;
}
body[data-kn-page] :where(.lead,.sub,.intro,.hint,.meta,.updated,.summary,.note,.privacy) { color: var(--kn-muted) !important; }
body[data-kn-page] :where(.topbar,header:not(.hero)) {
  color: var(--kn-ink);
  background: rgba(255,255,255,.94) !important;
  border-color: var(--kn-line) !important;
  box-shadow: none !important;
  backdrop-filter: blur(10px);
}
body[data-kn-page] :where(.brand) {
  color: var(--kn-ink) !important;
  font-family: var(--kn-display) !important;
  font-weight: 700 !important;
  letter-spacing: -.02em;
  text-decoration: none !important;
}
body[data-kn-page] :where(.brand img) { width: 44px !important; height: 44px !important; object-fit: contain; }
body[data-kn-page] .kn-brand-accent { color: var(--kn-secondary) !important; }
body[data-kn-page] :where(button,.button,.primary,.secondary,.action,.submit,.select,.post-top,.logout,.icon-btn,.back,.home,.account-login,.account-signup,.btn-primary,.btn-secondary) {
  min-height: 44px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 10px 18px;
  border: 1px solid var(--kn-line);
  border-radius: var(--kn-pill) !important;
  background: var(--kn-surface);
  color: var(--kn-ink);
  box-shadow: none !important;
  font-family: var(--kn-body) !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  text-decoration: none !important;
  cursor: pointer;
}
body[data-kn-page] :where(button,.button,.primary,.secondary,.action,.submit,.select,.post-top,.logout,.icon-btn,.back,.home,.account-login,.account-signup,.btn-primary,.btn-secondary):hover:not(:disabled) { border-color: var(--kn-teal); }
body[data-kn-page] :where(.primary,.submit,.post-top,.button.primary,.btn-primary,button[type="submit"]):not(.secondary) {
  color: #fff !important;
  background: var(--kn-teal) !important;
  border-color: var(--kn-teal) !important;
}
body[data-kn-page] :where(.primary,.submit,.post-top,.button.primary,.btn-primary,button[type="submit"]):not(.secondary):hover:not(:disabled) { background: var(--kn-teal-dark) !important; }
body[data-kn-page] :where(.secondary,.btn-secondary) { color: var(--kn-brown) !important; background: var(--kn-surface) !important; border-color: var(--kn-line) !important; }
body[data-kn-page] :where(.danger,.action.danger,.button.danger) { color: var(--kn-urgent) !important; background: var(--kn-danger-bg) !important; border-color: #e4b7ab !important; }
body[data-kn-page] :where(button,[role="button"]):disabled { opacity: .52; cursor: not-allowed; }
body[data-kn-page] :where(input:not([type="checkbox"]):not([type="radio"]),select,textarea,.text-input) {
  width: 100%;
  min-height: 48px;
  padding: 12px 14px;
  color: var(--kn-ink) !important;
  background: var(--kn-surface) !important;
  border: 1px solid #d9ccba !important;
  border-radius: var(--kn-radius-sm) !important;
  box-shadow: none !important;
  outline: 0;
}
body[data-kn-page] :where(input:not([type="checkbox"]):not([type="radio"]),select,textarea,.text-input):focus { border-color: var(--kn-teal) !important; box-shadow: 0 0 0 3px rgba(14,165,233,.13) !important; }
body[data-kn-page] textarea { min-height: 110px; resize: vertical; }
body[data-kn-page] :where(.card,.panel,.request-card,.quote,.review,.metric,.location-box,.choice,.category) {
  color: var(--kn-ink);
  background-color: var(--kn-surface) !important;
  background-image: var(--kn-texture) !important;
  border: 1px solid var(--kn-line) !important;
  border-radius: var(--kn-radius-md) !important;
  box-shadow: none !important;
}
body[data-kn-page] :where(.status,.badge,.category) { font-family: var(--kn-mono) !important; }
body[data-kn-page] :where(.status,.badge) { border-radius: var(--kn-pill) !important; }
body[data-kn-page] :where(.empty) { border-color: var(--kn-line) !important; border-radius: var(--kn-radius-md) !important; background-color: var(--kn-surface) !important; background-image: var(--kn-texture) !important; color: var(--kn-muted) !important; }

/* Homepage */
body[data-kn-page="home"] .switcher { position: sticky; top: 0; z-index: 30; padding: 0; background: rgba(255,255,255,.95) !important; border-bottom: 1px solid var(--kn-line) !important; }
body[data-kn-page="home"] .switcher-inner { min-height: 74px; }
body[data-kn-page="home"] .brand-mark > :not(.logo-crosswalk) { display: none !important; }
body[data-kn-page="home"] .logo-crosswalk { display: block !important; width: 44px !important; height: 44px !important; }
body[data-kn-page="home"] .brand-name { color: var(--kn-ink) !important; font-family: var(--kn-display) !important; font-size: 20px !important; font-weight: 700 !important; }
body[data-kn-page="home"] .brand-tag { color: var(--kn-muted) !important; border-color: var(--kn-line) !important; background: var(--kn-mist) !important; }
body[data-kn-page="home"] > .wrap { width: min(100% - 36px,var(--kn-shell)) !important; }
body[data-kn-page="home"] .hero { min-height: auto !important; padding: clamp(64px,9vw,110px) 0 60px !important; text-align: center; }
body[data-kn-page="home"] .hero-ripple,.footer-ripple { display: none !important; }
body[data-kn-page="home"] .default-eyebrow { display: block !important; }
body[data-kn-page="home"] .ripple-eyebrow { display: none !important; }
body[data-kn-page="home"] .hero h1 { max-width: 780px !important; margin: 12px auto 20px !important; font-size: clamp(42px,6vw,68px) !important; }
body[data-kn-page="home"] .hero > p { max-width: 650px; margin-inline: auto; color: var(--kn-muted) !important; font-size: 18px; }
body[data-kn-page="home"] .hero .cta-row { justify-content: center; }
body[data-kn-page="home"] .route-bar { overflow: hidden; border: 1px solid var(--kn-line) !important; border-radius: var(--kn-radius-md) !important; background: var(--kn-surface) !important; box-shadow: none !important; }
body[data-kn-page="home"] .route-cell { border-color: var(--kn-line) !important; background: transparent !important; }
body[data-kn-page="home"] .route-cell b { color: var(--kn-brown) !important; font-family: var(--kn-display) !important; }
body[data-kn-page="home"] .section { padding-block: 58px !important; }
body[data-kn-page="home"] .mission-grid,.steps,.trust-grid { gap: 14px !important; }
body[data-kn-page="home"] :where(.mission-cell,.step-card,.trust-card,.cat-chip) { border: 1px solid var(--kn-line) !important; border-radius: var(--kn-radius-lg) !important; background-color: var(--kn-surface) !important; background-image: var(--kn-texture) !important; box-shadow: none !important; }
body[data-kn-page="home"] :where(.mission-cell,.step-card,.trust-card) { padding: 24px !important; }
body[data-kn-page="home"] .plaque { color: var(--kn-brown) !important; background: var(--kn-mist) !important; border-color: var(--kn-line) !important; border-radius: var(--kn-pill) !important; }
body[data-kn-page="home"] .tag { color: var(--kn-teal) !important; background: rgba(14,165,233,.1) !important; border-radius: var(--kn-pill) !important; }
body[data-kn-page="home"] .cat-toggle { border-color: var(--kn-line) !important; background: var(--kn-mist) !important; border-radius: var(--kn-pill) !important; }
body[data-kn-page="home"] .cat-toggle button.active { color: #fff !important; background: var(--kn-teal) !important; }
body[data-kn-page="home"] .cat-grid { grid-template-columns: repeat(4,minmax(0,1fr)) !important; gap: 12px !important; }
body[data-kn-page="home"] .cat-chip { min-height: 154px; display: flex !important; align-items: flex-start !important; justify-content: flex-end !important; flex-direction: column; gap: 12px; padding: 18px !important; color: var(--kn-ink) !important; text-align: left !important; font-family: var(--kn-display) !important; font-weight: 700 !important; }
body[data-kn-page="home"] .cat-chip::before { width: 42px; height: 42px; display: grid; place-items: center; border-radius: 12px; background: rgba(14,165,233,.09); content: attr(data-icon); font-size: 19px; }
body[data-kn-page="home"] .cat-chip::after { display: none !important; }
body[data-kn-page="home"] .cat-chip strong { display: block; color: var(--kn-ink); font-family: var(--kn-display); font-size: 14px; line-height: 1.25; }
body[data-kn-page="home"] .cat-chip span { display: block; margin-top: -7px; color: var(--kn-muted); font-family: var(--kn-body); font-size: 12px; font-weight: 400; line-height: 1.45; }
body[data-kn-page="home"] .footer-cta { overflow: hidden; padding: 56px 30px !important; border: 0 !important; border-radius: var(--kn-radius-lg) !important; background: var(--kn-brown) !important; color: #fff !important; text-align: center; }
body[data-kn-page="home"] .footer-cta :where(h2,p) { color: #fff !important; }
body[data-kn-page="home"] .footer-cta .btn-primary { background: #fff !important; border-color: #fff !important; color: var(--kn-brown) !important; }
body[data-kn-page="home"] .footer-cta .btn-secondary { color: #fff !important; background: var(--kn-teal) !important; border-color: var(--kn-teal) !important; }
body[data-kn-page="home"] .site-footer { color: var(--kn-muted) !important; border-color: var(--kn-line) !important; }

/* Authentication and invite pages */
html[data-theme="crosswalk"] body.auth-crosswalk[data-kn-page] {
  --kn-home-paper: var(--kn-bg);
  --kn-home-surface: var(--kn-surface);
  --kn-home-ink: var(--kn-ink);
  --kn-home-muted: var(--kn-muted);
  --kn-home-line: var(--kn-line);
  --kn-home-accent: var(--kn-teal);
  --accent: var(--kn-teal);
  --font-display: var(--kn-display);
  --font-body: var(--kn-body);
}
body[data-kn-page="login"],body[data-kn-page="signup"] { display: grid !important; place-items: center !important; padding: 42px 18px !important; background: linear-gradient(135deg,var(--kn-bg),var(--kn-mist)) !important; }
body[data-kn-page="login"] .kn-auth-brand,body[data-kn-page="signup"] .kn-auth-brand { position: static !important; display: flex !important; justify-content: center; margin: 0 auto 22px !important; }
body[data-kn-page="login"] .kn-auth-brand img,body[data-kn-page="signup"] .kn-auth-brand img { width: 66px !important; height: 66px !important; }
body[data-kn-page="login"] .kn-auth-brand span,body[data-kn-page="signup"] .kn-auth-brand span { color: var(--kn-ink) !important; font-family: var(--kn-display) !important; font-size: 25px !important; font-weight: 700; }
body[data-kn-page="login"] .card,body[data-kn-page="signup"] .card { width: min(100%,460px) !important; margin: 0 !important; padding: clamp(28px,6vw,44px) !important; border-radius: var(--kn-radius-lg) !important; }
html[data-theme="crosswalk"] body.auth-crosswalk[data-kn-page] .kn-auth-card { border-color: var(--kn-line) !important; border-radius: var(--kn-radius-lg) !important; background-color: var(--kn-surface) !important; background-image: var(--kn-texture) !important; box-shadow: none !important; }
html[data-theme="crosswalk"] body.auth-crosswalk[data-kn-page] .kn-auth-card .kn-auth-brand { color: var(--kn-ink) !important; }
html[data-theme="crosswalk"] body.auth-crosswalk[data-kn-page] .kn-auth-card .kn-auth-brand img { width: 66px !important; height: 66px !important; min-width: 66px !important; }
html[data-theme="crosswalk"] body.auth-crosswalk[data-kn-page] .kn-auth-card :where(h1,h2) { color: var(--kn-ink) !important; font-family: var(--kn-display) !important; }
html[data-theme="crosswalk"] body.auth-crosswalk[data-kn-page] .kn-auth-card :where(input,select,textarea) { border-color: #d9ccba !important; border-radius: var(--kn-radius-sm) !important; }
html[data-theme="crosswalk"] body.auth-crosswalk[data-kn-page] .kn-auth-card :where(button,input[type="submit"],.button,.btn-primary) { border-color: var(--kn-teal) !important; border-radius: var(--kn-pill) !important; background: var(--kn-teal) !important; }
html[data-theme="crosswalk"] body.auth-crosswalk[data-kn-page] .kn-auth-card a:not(.kn-auth-brand) { color: var(--kn-teal) !important; }
body[data-kn-page="login"] h1,body[data-kn-page="signup"] h1 { font-size: clamp(32px,7vw,44px) !important; }
body[data-kn-page="login"] label,body[data-kn-page="signup"] label { color: var(--kn-ink) !important; font-weight: 700 !important; }
body[data-kn-page="login"] .footer-link,body[data-kn-page="signup"] .footer-link { color: var(--kn-muted) !important; }
body[data-kn-page="login"] .footer-link a,body[data-kn-page="signup"] .footer-link a { color: var(--kn-teal) !important; }
body[data-kn-page="login"] .kn-auth-brand .kn-brand-accent,body[data-kn-page="signup"] .kn-auth-brand .kn-brand-accent { color: var(--kn-teal) !important; }
body[data-kn-page="join"] .nav { border-color: var(--kn-line) !important; background: var(--kn-surface) !important; }
body[data-kn-page="join"] .wrap { width: min(100% - 32px,900px) !important; }
body[data-kn-page="join"] .card { max-width: 620px; margin: 70px auto; padding: clamp(28px,5vw,48px) !important; }

/* Shared signed-in application shell */
body:is([data-kn-page="dashboard"],[data-kn-page="onboarding"],[data-kn-page="request"],[data-kn-page="job"],[data-kn-page="quotes"],[data-kn-page="notifications"]) :where(header,.topbar) { min-height: 74px !important; height: auto !important; padding-block: 10px !important; }
body:is([data-kn-page="dashboard"],[data-kn-page="onboarding"],[data-kn-page="request"],[data-kn-page="job"],[data-kn-page="quotes"],[data-kn-page="notifications"]) main { width: min(var(--kn-shell),calc(100% - 32px)) !important; }
body:is([data-kn-page="dashboard"],[data-kn-page="onboarding"],[data-kn-page="request"],[data-kn-page="job"],[data-kn-page="quotes"],[data-kn-page="notifications"]) h1 { font-size: clamp(36px,5.5vw,58px) !important; }
body:is([data-kn-page="dashboard"],[data-kn-page="onboarding"],[data-kn-page="request"],[data-kn-page="job"],[data-kn-page="quotes"],[data-kn-page="notifications"]) h2 { font-size: clamp(22px,3vw,30px) !important; }

/* Onboarding */
body[data-kn-page="onboarding"] main { width: min(780px,calc(100% - 28px)) !important; margin-top: 48px !important; }
body[data-kn-page="onboarding"] .progress { gap: 10px !important; margin-bottom: 42px !important; }
body[data-kn-page="onboarding"] .progress span { height: 4px !important; border-radius: var(--kn-pill); background: var(--kn-line) !important; }
body[data-kn-page="onboarding"] .progress span:is(.done,.active) { background: var(--kn-teal) !important; }
body[data-kn-page="onboarding"] .panel { border: 0 !important; background: transparent !important; }
body[data-kn-page="onboarding"] .choice { min-height: 126px; padding: 22px !important; }
body[data-kn-page="onboarding"] .choice:hover,body[data-kn-page="onboarding"] .choice.selected { border-color: var(--kn-teal) !important; box-shadow: 0 0 0 3px rgba(14,165,233,.11) !important; }
body[data-kn-page="onboarding"] .choice strong { font-family: var(--kn-display) !important; font-size: 20px !important; }
body[data-kn-page="onboarding"] .choice .tick { color: #fff !important; background: var(--kn-teal) !important; }
body[data-kn-page="onboarding"] .suggestions { overflow: hidden auto; border-color: var(--kn-line) !important; border-radius: 0 0 var(--kn-radius-sm) var(--kn-radius-sm) !important; }
body[data-kn-page="onboarding"] .suggestions button { justify-content: flex-start; border: 0 !important; border-radius: 0 !important; }
body[data-kn-page="onboarding"] .suggestions button:hover { background: var(--kn-mist) !important; }
body[data-kn-page="onboarding"] .location-box { padding: 24px !important; }
body[data-kn-page="onboarding"] .status-icon { color: var(--kn-brown); background: var(--kn-mist) !important; }
body[data-kn-page="onboarding"] .status-icon.ok { color: var(--kn-teal) !important; background: var(--kn-positive-bg) !important; }
body[data-kn-page="onboarding"] .privacy::before { color: var(--kn-teal) !important; }
body[data-kn-page="onboarding"] .category { font-family: var(--kn-body) !important; }
body[data-kn-page="onboarding"] .category:has(input:checked) { border-color: var(--kn-teal) !important; background: var(--kn-positive-bg) !important; }
body[data-kn-page="onboarding"] input[type="checkbox"],body[data-kn-page="onboarding"] input[type="radio"] { accent-color: var(--kn-teal) !important; }

/* Dashboard */
body[data-kn-page="dashboard"] main { margin-top: 44px !important; }
body[data-kn-page="dashboard"] .welcome-row { align-items: end !important; }
body[data-kn-page="dashboard"] .location-chip { color: var(--kn-brown) !important; background: var(--kn-mist) !important; border: 1px solid var(--kn-line) !important; border-radius: var(--kn-pill) !important; }
body[data-kn-page="dashboard"] .tabs { gap: 8px !important; border-color: var(--kn-line) !important; }
body[data-kn-page="dashboard"] .tab { color: var(--kn-muted) !important; background: transparent !important; border-color: transparent !important; }
body[data-kn-page="dashboard"] .tab.active { color: #fff !important; background: var(--kn-teal) !important; }
body[data-kn-page="dashboard"] .count { color: var(--kn-brown) !important; background: var(--kn-mist) !important; }
body[data-kn-page="dashboard"] .request-grid { gap: 14px !important; }
body[data-kn-page="dashboard"] .request-card { overflow: hidden; padding: 22px !important; }
body[data-kn-page="dashboard"] .request-card:hover { border-color: var(--kn-brown) !important; transform: none !important; }
body[data-kn-page="dashboard"] .category { color: var(--kn-brown) !important; border: 0 !important; background: transparent !important; }
body[data-kn-page="dashboard"] .status { color: var(--kn-teal) !important; background: rgba(14,165,233,.1) !important; }
body[data-kn-page="dashboard"] .quotes { color: var(--kn-brown) !important; }
body[data-kn-page="dashboard"] dialog { border: 0 !important; border-radius: var(--kn-radius-lg) !important; box-shadow: 0 30px 90px rgba(36,26,16,.24) !important; }
body[data-kn-page="dashboard"] dialog::backdrop { background: rgba(36,26,16,.5) !important; }
body[data-kn-page="dashboard"] .location-confirm { color: var(--kn-muted) !important; background: var(--kn-mist) !important; border-color: var(--kn-line) !important; border-radius: var(--kn-radius-md) !important; }

/* Requests, quotes and notifications use inbox-like rows/cards. */
body:is([data-kn-page="request"],[data-kn-page="job"],[data-kn-page="quotes"],[data-kn-page="notifications"]) main { margin-top: 44px !important; }
body[data-kn-page="request"] .layout { gap: 18px !important; }
body[data-kn-page="request"] .panel { padding: 25px !important; }
body[data-kn-page="request"] .request { border-top: 4px solid var(--kn-brown) !important; }
body[data-kn-page="request"] .side { border-top: 4px solid var(--kn-teal) !important; }
body[data-kn-page="request"] .quote { padding: 18px !important; }
body[data-kn-page="request"] .quote:hover { border-color: var(--kn-brown) !important; }
body[data-kn-page="request"] .quote.selected { border-color: var(--kn-teal) !important; background: var(--kn-positive-bg) !important; }
body[data-kn-page="request"] .badge { color: var(--kn-brown) !important; background: var(--kn-mist) !important; }
body[data-kn-page="quotes"] .grid { gap: 14px !important; }
body[data-kn-page="quotes"] .card { position: relative; padding: 22px !important; }
body[data-kn-page="quotes"] .card::after { position: absolute; top: 24px; right: 22px; width: 9px; height: 9px; border-radius: 50%; background: var(--kn-gold); content: ""; }
body[data-kn-page="quotes"] .card:hover { border-color: var(--kn-brown) !important; }
body[data-kn-page="quotes"] .category { padding: 0 !important; color: var(--kn-brown) !important; border: 0 !important; background: transparent !important; }
body[data-kn-page="quotes"] .status { margin-right: 20px; color: var(--kn-teal) !important; background: rgba(14,165,233,.1) !important; }
body[data-kn-page="quotes"] .amount { color: var(--kn-brown); font-family: var(--kn-display); }
body[data-kn-page="notifications"] .head { align-items: end !important; }
body[data-kn-page="notifications"] .mark { color: var(--kn-brown) !important; background: var(--kn-surface) !important; border-color: var(--kn-line) !important; }
body[data-kn-page="notifications"] .list { overflow: hidden; border: 1px solid var(--kn-line) !important; border-radius: var(--kn-radius-md) !important; background: var(--kn-surface) !important; }
body[data-kn-page="notifications"] .item { border-color: var(--kn-line) !important; background: var(--kn-surface) !important; }
body[data-kn-page="notifications"] .item:hover { background: var(--kn-mist) !important; }
body[data-kn-page="notifications"] .item.unread { border-left: 4px solid var(--kn-teal) !important; background: #fbfdfc !important; }
body[data-kn-page="notifications"] .dot { background: var(--kn-gold) !important; }

/* Job workspace */
body[data-kn-page="job"] .grid { gap: 18px !important; }
body[data-kn-page="job"] .panel { padding: 25px !important; }
body[data-kn-page="job"] .status { color: var(--kn-brown) !important; background: var(--kn-warning-bg) !important; }
body[data-kn-page="job"] .money { color: var(--kn-brown); font-family: var(--kn-display) !important; }
body[data-kn-page="job"] .person { border-color: var(--kn-line) !important; border-radius: var(--kn-radius-sm); background: var(--kn-mist); }
body[data-kn-page="job"] .notice { border-radius: var(--kn-radius-sm); background: var(--kn-warning-bg) !important; }
body[data-kn-page="job"] .notice.safe { color: var(--kn-teal) !important; background: var(--kn-positive-bg) !important; }
body[data-kn-page="job"] .action { width: 100%; color: #fff !important; background: var(--kn-teal) !important; border-color: var(--kn-teal) !important; }
body[data-kn-page="job"] .action.secondary { color: var(--kn-ink) !important; background: var(--kn-surface) !important; border-color: var(--kn-line) !important; }
body[data-kn-page="job"] .event::before { background: var(--kn-gold) !important; border-color: var(--kn-brown) !important; }
body[data-kn-page="job"] .timeline { border-color: var(--kn-line) !important; }
body[data-kn-page="job"] .bubble { border-color: var(--kn-line) !important; border-radius: var(--kn-radius-md) !important; background: var(--kn-mist) !important; }
body[data-kn-page="job"] .bubble.mine { background: var(--kn-positive-bg) !important; }
body[data-kn-page="job"] .review { padding: 18px !important; }
body[data-kn-page="job"] .stars { color: var(--kn-gold) !important; }

/* Owner moderation */
body[data-kn-page="moderation"] header { position: sticky; top: 0; z-index: 20; }
body[data-kn-page="moderation"] .header-inner,body[data-kn-page="moderation"] main { width: min(var(--kn-shell),calc(100% - 32px)) !important; }
body[data-kn-page="moderation"] main { margin-top: 40px !important; }
body[data-kn-page="moderation"] .summary { gap: 14px !important; }
body[data-kn-page="moderation"] .metric { padding: 20px !important; }
body[data-kn-page="moderation"] .metric strong { color: var(--kn-brown); font-family: var(--kn-display); }
body[data-kn-page="moderation"] .tabs { background: var(--kn-mist) !important; border-color: var(--kn-line) !important; border-radius: var(--kn-pill) !important; }
body[data-kn-page="moderation"] .tab { color: var(--kn-muted) !important; border: 0 !important; background: transparent !important; }
body[data-kn-page="moderation"] .tab[aria-selected="true"] { color: #fff !important; background: var(--kn-teal) !important; }
body[data-kn-page="moderation"] .panel { overflow: hidden; }
body[data-kn-page="moderation"] .toolbar,body[data-kn-page="moderation"] :where(th,td) { border-color: var(--kn-line) !important; }
body[data-kn-page="moderation"] th { color: var(--kn-muted) !important; background: var(--kn-mist) !important; }
body[data-kn-page="moderation"] .badge { color: var(--kn-brown) !important; background: var(--kn-mist) !important; }
body[data-kn-page="moderation"] .badge:is(.visible,.resolved) { color: var(--kn-teal) !important; background: var(--kn-positive-bg) !important; }
body[data-kn-page="moderation"] .badge:is(.flagged,.open) { color: #8a5708 !important; background: var(--kn-warning-bg) !important; }
body[data-kn-page="moderation"] .badge:is(.hidden,.removed,.dismissed) { color: var(--kn-urgent) !important; background: var(--kn-danger-bg) !important; }
body[data-kn-page="moderation"] dialog { border-radius: var(--kn-radius-lg) !important; }

/* Watchtower card texture and service icon language. */
body[data-kn-page] :where(.request-card,.quote,.review,.metric,.location-box,.choice,.card,.panel),
body[data-kn-page="notifications"] :where(.list,.item),
body[data-kn-page="moderation"] :where(.panel,.metric,tbody tr),
body[data-kn-page="home"] :where(.mission-cell,.step-card,.trust-card,.cat-chip) {
  background-color: var(--kn-surface) !important;
  background-image: var(--kn-texture) !important;
}
body[data-kn-page] .category[data-icon] { display: inline-flex !important; align-items: center; gap: 9px; }
body[data-kn-page] .category[data-icon]::before,
body[data-kn-page="request"] #category[data-icon]::before {
  width: 34px;
  height: 34px;
  display: inline-grid;
  flex: 0 0 34px;
  place-items: center;
  border-radius: 11px;
  background: rgba(14,165,233,.09);
  content: attr(data-icon);
  font-family: "Apple Color Emoji","Segoe UI Emoji",sans-serif;
  font-size: 16px;
  letter-spacing: 0;
}
body[data-kn-page="onboarding"] .category[data-icon] { min-height: 70px; font-family: var(--kn-body) !important; }
body[data-kn-page="onboarding"] .category[data-icon]::before { order: -1; }
body[data-kn-page="dashboard"] .category[data-icon],
body[data-kn-page="quotes"] .category[data-icon],
body[data-kn-page="request"] #category[data-icon] { color: var(--kn-ink) !important; font-family: var(--kn-display) !important; font-size: 12px !important; letter-spacing: 0 !important; text-transform: none !important; }
body[data-kn-page="request"] #category[data-icon] { display: inline-flex; align-items: center; gap: 10px; }
body[data-kn-page="request"] #category[data-icon]::before { vertical-align: middle; }
body[data-kn-page="join"] .nav { display: flex; align-items: center; gap: 10px; color: var(--kn-ink) !important; font-family: var(--kn-display) !important; font-weight: 700; }
body[data-kn-page="join"] .nav img { width: 46px; height: 46px; }

/* Complete Theme 10 translation: civic tones, watch-star details, and
   page-specific result states. This block intentionally sits after every
   inherited page rule so legacy inline themes cannot reappear. */
body[data-kn-page] {
  --accent: var(--kn-primary);
  --secondary: var(--kn-secondary);
  --signal: var(--kn-primary);
  --green: var(--kn-secondary);
  --paper: var(--kn-bg);
  --card: var(--kn-surface);
  --line: var(--kn-line);
  --muted: var(--kn-muted);
  --ink: var(--kn-ink);
  --kn-home-paper: var(--kn-bg);
  --kn-home-surface: var(--kn-surface);
  --kn-home-ink: var(--kn-ink);
  --kn-home-muted: var(--kn-muted);
  --kn-home-line: var(--kn-line);
  --kn-home-accent: var(--kn-primary);
  position: relative;
}
body[data-kn-page]::before {
  position: fixed;
  inset: 0 0 auto;
  z-index: 1000;
  height: 4px;
  background: linear-gradient(90deg,var(--kn-primary) 0 58%,var(--kn-secondary) 58% 88%,var(--kn-tertiary) 88% 100%);
  content: "";
  pointer-events: none;
}
body[data-kn-page] :where(.topbar,header:not(.hero)) {
  border-bottom: 1px solid var(--kn-line) !important;
}
body[data-kn-page] :where(.brand img),
body[data-kn-page="home"] .logo-crosswalk { width: 46px !important; height: 46px !important; }
body[data-kn-page] .kn-brand-accent { color: var(--kn-secondary) !important; }
body[data-kn-page] :where(.eyebrow) { color: var(--kn-primary) !important; }
body[data-kn-page] :focus-visible { outline-color: rgba(14,165,233,.35) !important; }
body[data-kn-page] :where(.primary,.submit,.post-top,.button.primary,.btn-primary,button[type="submit"],.account-signup,.mark):not(.secondary) {
  color: #fff !important;
  background: var(--kn-primary) !important;
  border-color: var(--kn-primary) !important;
}
body[data-kn-page] :where(.primary,.submit,.post-top,.button.primary,.btn-primary,button[type="submit"],.account-signup,.mark):not(.secondary):hover:not(:disabled) {
  background: var(--kn-primary-dark) !important;
}
body[data-kn-page] :where(.secondary,.btn-secondary,.back,.home,.account-login,.logout,.icon-btn) {
  color: var(--kn-ink) !important;
  background: var(--kn-surface) !important;
  border-color: var(--kn-line) !important;
}
body[data-kn-page] :where(.secondary,.btn-secondary,.back,.home,.account-login,.logout,.icon-btn):hover:not(:disabled) {
  color: var(--kn-primary) !important;
  border-color: var(--kn-primary) !important;
  background: rgba(14,165,233,.05) !important;
}
body[data-kn-page] :where(input:not([type="checkbox"]):not([type="radio"]),select,textarea,.text-input):focus {
  border-color: var(--kn-primary) !important;
  box-shadow: 0 0 0 3px rgba(14,165,233,.11) !important;
}
body[data-kn-page] :where(.card,.panel,.request-card,.quote,.review,.metric,.location-box,.choice,.category,.empty) {
  border-color: var(--kn-line) !important;
  border-radius: var(--kn-radius-lg) !important;
  background-color: var(--kn-surface) !important;
  background-image: var(--kn-texture) !important;
}
body[data-kn-page] :where(.card,.panel,.request-card,.quote,.review,.metric,.location-box,.choice):hover {
  border-color: rgba(14,165,233,.48) !important;
}
body[data-kn-page] .category[data-icon]::before,
body[data-kn-page="request"] #category[data-icon]::before,
body[data-kn-page="home"] .cat-chip::before {
  background: rgba(14,165,233,.11) !important;
  box-shadow: inset 0 0 0 1px rgba(14,165,233,.13);
}

/* Homepage: Watchtower brand composition and the requested three-color cards. */
body[data-kn-page="home"] .switcher { border-color: var(--kn-line) !important; }
body[data-kn-page="home"] .brand-name { font-family: var(--kn-display) !important; }
body[data-kn-page="home"] .hero { position: relative; isolation: isolate; overflow: hidden; }
body[data-kn-page="home"] .hero::before,
body[data-kn-page="home"] .hero::after {
  position: absolute;
  z-index: -1;
  top: 48px;
  width: clamp(95px,13vw,170px);
  height: clamp(155px,21vw,270px);
  border: 2px solid currentColor;
  border-bottom: 0;
  border-radius: 100px 100px 0 0;
  content: "";
  opacity: .10;
}
body[data-kn-page="home"] .hero::before { left: clamp(-72px,3vw,40px); color: var(--kn-primary); }
body[data-kn-page="home"] .hero::after { right: clamp(-72px,3vw,40px); color: var(--kn-secondary); }
body[data-kn-page="home"] .route-cell:nth-child(odd) { background: rgba(14,165,233,.045) !important; }
body[data-kn-page="home"] .route-cell:nth-child(even) { background: rgba(245,158,11,.06) !important; }
body[data-kn-page="home"] .route-cell b { color: var(--kn-primary) !important; }
body[data-kn-page="home"] .mission-cell:nth-child(1),
body[data-kn-page="home"] .trust-card:nth-child(1) { border-top: 3px solid var(--kn-primary) !important; }
body[data-kn-page="home"] .mission-cell:nth-child(2),
body[data-kn-page="home"] .trust-card:nth-child(2) { border-top: 3px solid var(--kn-secondary) !important; }
body[data-kn-page="home"] .mission-cell:nth-child(3),
body[data-kn-page="home"] .trust-card:nth-child(3) { border-top: 3px solid var(--kn-tertiary) !important; }
body[data-kn-page="home"] :where(.mission-cell,.trust-card):nth-child(1) h3 { color: var(--kn-primary) !important; }
body[data-kn-page="home"] :where(.mission-cell,.trust-card):nth-child(2) h3 { color: var(--kn-secondary-dark) !important; }
body[data-kn-page="home"] :where(.mission-cell,.trust-card):nth-child(3) h3 { color: #826522 !important; }
body[data-kn-page="home"] .mission-cell:nth-child(1) .tag { color: var(--kn-primary) !important; background: rgba(14,165,233,.11) !important; }
body[data-kn-page="home"] .mission-cell:nth-child(2) .tag { color: var(--kn-secondary-dark) !important; background: rgba(245,158,11,.14) !important; }
body[data-kn-page="home"] .mission-cell:nth-child(3) .tag { color: #826522 !important; background: rgba(245,158,11,.15) !important; }
body[data-kn-page="home"] .step-card:nth-child(3n+1) .plaque { color: #fff !important; background: var(--kn-primary) !important; }
body[data-kn-page="home"] .step-card:nth-child(3n+2) .plaque { color: #fff !important; background: var(--kn-secondary-dark) !important; }
body[data-kn-page="home"] .step-card:nth-child(3n+3) .plaque { color: var(--kn-ink) !important; background: var(--kn-tertiary) !important; }
body[data-kn-page="home"] .cat-chip:nth-child(3n+1)::before { background: rgba(14,165,233,.11) !important; box-shadow: inset 0 0 0 1px rgba(14,165,233,.13); }
body[data-kn-page="home"] .cat-chip:nth-child(3n+2)::before { background: rgba(245,158,11,.14) !important; box-shadow: inset 0 0 0 1px rgba(245,158,11,.17); }
body[data-kn-page="home"] .cat-chip:nth-child(3n+3)::before { background: rgba(245,158,11,.14) !important; box-shadow: inset 0 0 0 1px rgba(245,158,11,.17); }
body[data-kn-page="home"] .cat-toggle button.active { background: var(--kn-primary) !important; }
body[data-kn-page="home"] .footer-cta {
  background: linear-gradient(135deg,var(--kn-primary),var(--kn-primary-dark) 72%,var(--kn-tertiary)) !important;
}
body[data-kn-page="home"] .footer-cta .btn-primary { color: var(--kn-primary) !important; background: #fff !important; border-color: #fff !important; }
body[data-kn-page="home"] .footer-cta .btn-secondary { color: #fff !important; background: rgba(255,255,255,.10) !important; border-color: rgba(255,255,255,.55) !important; }

/* Authentication and onboarding. */
body:is([data-kn-page="login"],[data-kn-page="signup"]) {
  background: linear-gradient(135deg,var(--kn-bg) 0 50%,var(--kn-mist) 50% 100%) !important;
}
body:is([data-kn-page="login"],[data-kn-page="signup"]) .kn-auth-card,
body:is([data-kn-page="login"],[data-kn-page="signup"]) .card { border-top: 4px solid var(--kn-primary) !important; }
body:is([data-kn-page="login"],[data-kn-page="signup"]) .kn-auth-brand .kn-brand-accent { color: var(--kn-secondary) !important; }
body[data-kn-page="join"] .card { border-top: 4px solid var(--kn-primary) !important; }
body[data-kn-page="onboarding"] .progress span.done { background: var(--kn-secondary) !important; }
body[data-kn-page="onboarding"] .progress span.active { background: var(--kn-primary) !important; }
body[data-kn-page="onboarding"] .choice.selected,
body[data-kn-page="onboarding"] .category:has(input:checked) { border-color: var(--kn-primary) !important; background: rgba(14,165,233,.07) !important; }
body[data-kn-page="onboarding"] .choice .tick { background: var(--kn-primary) !important; }
body[data-kn-page="onboarding"] .status-icon.ok,
body[data-kn-page="onboarding"] .privacy::before { color: var(--kn-secondary-dark) !important; }

/* Account workspace and request/result flows. */
body[data-kn-page="dashboard"] .location-chip { color: var(--kn-secondary-dark) !important; background: rgba(245,158,11,.10) !important; }
body[data-kn-page="dashboard"] .location-chip strong { color: var(--kn-secondary-dark) !important; }
body[data-kn-page="dashboard"] .tab.active { background: var(--kn-primary) !important; }
body[data-kn-page="dashboard"] #nearbyTab.tab.active { background: var(--kn-secondary-dark) !important; }
body[data-kn-page="dashboard"] .count { color: var(--kn-primary) !important; background: rgba(14,165,233,.10) !important; }
body[data-kn-page="dashboard"] .request-card:nth-child(3n+1) { border-left: 4px solid var(--kn-primary) !important; }
body[data-kn-page="dashboard"] .request-card:nth-child(3n+2) { border-left: 4px solid var(--kn-secondary) !important; }
body[data-kn-page="dashboard"] .request-card:nth-child(3n+3) { border-left: 4px solid var(--kn-tertiary) !important; }
body[data-kn-page="dashboard"] .status { color: var(--kn-primary) !important; background: rgba(14,165,233,.10) !important; }
body[data-kn-page="dashboard"] .quotes { color: var(--kn-primary) !important; }
body[data-kn-page="request"] .request { border-top: 4px solid var(--kn-primary) !important; }
body[data-kn-page="request"] .side { border-top: 4px solid var(--kn-secondary) !important; }
body[data-kn-page="request"] .privacy { color: var(--kn-secondary-dark) !important; background: rgba(245,158,11,.12) !important; }
body[data-kn-page="request"] .quote:nth-child(3n+1) { border-left: 3px solid var(--kn-primary) !important; }
body[data-kn-page="request"] .quote:nth-child(3n+2) { border-left: 3px solid var(--kn-secondary) !important; }
body[data-kn-page="request"] .quote:nth-child(3n+3) { border-left: 3px solid var(--kn-tertiary) !important; }
body[data-kn-page="request"] .quote.selected { border-color: var(--kn-primary) !important; background: rgba(14,165,233,.07) !important; }
body[data-kn-page="quotes"] .card:nth-child(3n+1) { border-left: 4px solid var(--kn-primary) !important; }
body[data-kn-page="quotes"] .card:nth-child(3n+2) { border-left: 4px solid var(--kn-secondary) !important; }
body[data-kn-page="quotes"] .card:nth-child(3n+3) { border-left: 4px solid var(--kn-tertiary) !important; }
body[data-kn-page="quotes"] .card::after { background: var(--kn-tertiary) !important; }
body[data-kn-page="quotes"] .status { color: var(--kn-secondary-dark) !important; background: rgba(245,158,11,.13) !important; }
body[data-kn-page="quotes"] .amount { color: var(--kn-primary) !important; }
body[data-kn-page="notifications"] .item.unread { border-left-color: var(--kn-primary) !important; background: rgba(14,165,233,.035) !important; }
body[data-kn-page="notifications"] .dot { background: var(--kn-tertiary) !important; }
body[data-kn-page="notifications"] .mark { color: #fff !important; background: var(--kn-primary) !important; border-color: var(--kn-primary) !important; }

/* Job lifecycle uses the watchtower split for its two main participants. */
body[data-kn-page="job"] .grid > .panel:nth-child(1) { border-top: 4px solid var(--kn-primary) !important; }
body[data-kn-page="job"] .grid > .panel:nth-child(2) { border-top: 4px solid var(--kn-secondary) !important; }
body[data-kn-page="job"] .grid > .trust-panel { border-top: 4px solid var(--kn-tertiary) !important; }
body[data-kn-page="job"] .people .person:nth-child(1) { background: rgba(14,165,233,.07) !important; border-color: rgba(14,165,233,.25) !important; }
body[data-kn-page="job"] .people .person:nth-child(2) { background: rgba(245,158,11,.10) !important; border-color: rgba(245,158,11,.30) !important; }
body[data-kn-page="job"] .status { color: #826522 !important; background: rgba(245,158,11,.14) !important; }
body[data-kn-page="job"] .money { color: var(--kn-primary) !important; }
body[data-kn-page="job"] .notice.safe { color: var(--kn-secondary-dark) !important; background: rgba(245,158,11,.12) !important; }
body[data-kn-page="job"] .event::before { background: var(--kn-primary) !important; border-color: var(--kn-primary) !important; }
body[data-kn-page="job"] .event:nth-child(3n+2)::before { background: var(--kn-secondary) !important; border-color: var(--kn-secondary) !important; }
body[data-kn-page="job"] .event:nth-child(3n+3)::before { background: var(--kn-tertiary) !important; border-color: var(--kn-tertiary) !important; }
body[data-kn-page="job"] .bubble.mine { background: rgba(14,165,233,.08) !important; }
body[data-kn-page="job"] .stars { color: var(--kn-tertiary) !important; }

/* Owner moderation. */
body[data-kn-page="moderation"] .metric:nth-child(3n+1) { border-top: 3px solid var(--kn-primary) !important; }
body[data-kn-page="moderation"] .metric:nth-child(3n+2) { border-top: 3px solid var(--kn-secondary) !important; }
body[data-kn-page="moderation"] .metric:nth-child(3n+3) { border-top: 3px solid var(--kn-tertiary) !important; }
body[data-kn-page="moderation"] .metric strong { color: var(--kn-primary) !important; }
body[data-kn-page="moderation"] .tab[aria-selected="true"] { background: var(--kn-primary) !important; }
body[data-kn-page="moderation"] .badge:is(.visible,.resolved) { color: var(--kn-secondary-dark) !important; background: rgba(245,158,11,.13) !important; }
body[data-kn-page="moderation"] .badge:is(.flagged,.open) { color: #826522 !important; background: rgba(245,158,11,.14) !important; }

@media (max-width: 760px) {
  body[data-kn-page] :where(.brand span) { display: inline !important; }
  body[data-kn-page="home"] .brand-tag { display: none !important; }
  body[data-kn-page="home"] .account-pills { gap: 6px !important; }
  body[data-kn-page="home"] :where(.account-login,.account-signup) { min-height: 40px; padding: 8px 13px; }
  body[data-kn-page="home"] .route-bar { grid-template-columns: 1fr 1fr !important; }
  body[data-kn-page="home"] .cat-grid { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
  body[data-kn-page="home"] .mission-grid,body[data-kn-page="home"] .steps,body[data-kn-page="home"] .trust-grid { grid-template-columns: 1fr !important; }
  body[data-kn-page="dashboard"] .topbar { align-items: flex-start !important; flex-direction: column; }
  body[data-kn-page="dashboard"] .nav-actions { width: 100%; overflow-x: auto; padding-bottom: 2px; }
  body[data-kn-page="dashboard"] .nav-actions > * { flex: 0 0 auto; }
  body[data-kn-page="moderation"] .summary { grid-template-columns: 1fr 1fr !important; }
}

@media (max-width: 520px) {
  body[data-kn-page] :where(.brand span) { font-size: 17px !important; }
  body[data-kn-page="home"] .hero { padding-top: 52px !important; }
  body[data-kn-page="home"] .hero::before,body[data-kn-page="home"] .hero::after { opacity: .055; }
  body[data-kn-page="home"] .route-bar { grid-template-columns: 1fr !important; }
  body[data-kn-page="home"] .cat-grid { grid-template-columns: 1fr !important; }
  body[data-kn-page="home"] .route-cell { border-left: 0 !important; border-top: 1px solid var(--kn-line) !important; }
  body[data-kn-page="home"] .route-cell:first-child { border-top: 0 !important; }
  body[data-kn-page="onboarding"] .actions { gap: 8px !important; }
  body[data-kn-page="onboarding"] :where(.primary,.secondary) { padding-inline: 17px !important; }
  body[data-kn-page="moderation"] .summary { grid-template-columns: 1fr !important; }
}

/* KEYNEIGHBOR_AZURE_SAFFRON_GOSIGNAL_V5_FINAL
   Final cascade: v86 Azure Saffron surfaces, rhythm, connected-signal identity,
   and accent ordering. GoSignal's Verdana stack is used everywhere. */
body[data-kn-page],
body[data-kn-page] :where(button,input,select,textarea) {
  font-family: Verdana, Geneva, sans-serif !important;
}
body[data-kn-page] :where(h1,h2,h3,h4,legend,.brand,.brand-name,.eyebrow,.status,.badge,.category) {
  font-family: Verdana, Geneva, sans-serif !important;
}
body[data-kn-page] :where(h1,h2,h3,h4,legend) {
  letter-spacing: -.045em !important;
  line-height: 1.08 !important;
}
body[data-kn-page] :focus-visible {
  outline-color: rgba(14,165,233,.42) !important;
}
body[data-kn-page] :where(.topbar,header:not(.hero),.nav) {
  background: rgba(255,255,255,.97) !important;
  border-top: 4px solid var(--kn-primary) !important;
  border-bottom: 1px solid var(--kn-line) !important;
}
body[data-kn-page] :where(.brand img,.nav img),
body[data-kn-page="home"] .logo-crosswalk {
  width: 50px !important;
  height: 50px !important;
}
body[data-kn-page] .kn-brand-accent { color: var(--kn-primary) !important; }
body[data-kn-page] :where(.primary,.submit,.post-top,.button.primary,.btn-primary,button[type="submit"],.account-signup,.mark):not(.secondary) {
  color: #fff !important;
  background: var(--kn-primary) !important;
  border-color: var(--kn-primary) !important;
}
body[data-kn-page] :where(.primary,.submit,.post-top,.button.primary,.btn-primary,button[type="submit"],.account-signup,.mark):not(.secondary):hover:not(:disabled) {
  background: var(--kn-primary-dark) !important;
  border-color: var(--kn-primary-dark) !important;
}
body[data-kn-page] :where(.secondary,.btn-secondary,.back,.home,.account-login,.logout,.icon-btn) {
  color: var(--kn-ink) !important;
  background: #fff !important;
  border-color: var(--kn-line) !important;
}
body[data-kn-page] :where(.secondary,.btn-secondary,.back,.home,.account-login,.logout,.icon-btn):hover:not(:disabled) {
  color: var(--kn-primary-dark) !important;
  border-color: var(--kn-primary) !important;
}
body[data-kn-page] :where(.card,.panel,.request-card,.quote,.review,.metric,.location-box,.choice,.category,.empty) {
  background: #fff !important;
  border: 1px solid var(--kn-line) !important;
  border-top: 6px solid var(--kn-primary) !important;
  border-radius: 2px !important;
  box-shadow: none !important;
}
body[data-kn-page] :where(.grid,.request-grid,.review-grid,.metrics,.choices) > :nth-child(4n+2) { border-top-color: var(--kn-secondary) !important; }
body[data-kn-page] :where(.grid,.request-grid,.review-grid,.metrics,.choices) > :nth-child(4n+3) { border-top-color: var(--kn-tertiary) !important; }
body[data-kn-page] :where(.grid,.request-grid,.review-grid,.metrics,.choices) > :nth-child(4n+4) { border-top-color: var(--kn-quaternary) !important; }
body[data-kn-page] :where(.status,.badge,.tag,.count) {
  color: var(--kn-primary-dark) !important;
  background: rgba(14,165,233,.11) !important;
  border-color: rgba(14,165,233,.28) !important;
}
body[data-kn-page] :where(.safe,.success,.status.ok,.badge.ok) {
  color: #047857 !important;
  background: rgba(16,185,129,.12) !important;
}
body[data-kn-page] :where(.danger,.error,.status.danger,.badge.danger) {
  color: #BE185D !important;
  background: rgba(219,39,119,.1) !important;
}

/* Azure Saffron homepage: premium white utility hero with a connected-signal field. */
body[data-kn-page="home"] .switcher { border-top: 4px solid var(--kn-primary) !important; }
body[data-kn-page="home"] .hero {
  min-height: 520px !important;
  color: var(--kn-ink) !important;
  background: #fff !important;
  border: 0 !important;
  border-bottom: 8px solid var(--kn-quaternary) !important;
  box-shadow: none !important;
  text-align: left !important;
}
body[data-kn-page="home"] .hero::before {
  right: max(5vw,calc((100vw - var(--kn-shell))/2)) !important;
  width: clamp(250px,31vw,430px) !important;
  height: clamp(250px,31vw,430px) !important;
  opacity: .14 !important;
  background: url('/azure-saffron-logo.svg?v=20260822-51') center/contain no-repeat !important;
}
body[data-kn-page="home"] .hero :where(h1,p) { color: var(--kn-ink) !important; }
body[data-kn-page="home"] .hero .eyebrow { color: var(--kn-secondary) !important; }
body[data-kn-page="home"] .hero h1 {
  max-width: 720px !important;
  font-size: clamp(42px,5vw,66px) !important;
}
body[data-kn-page="home"] .hero > p {
  max-width: 610px !important;
  color: var(--kn-muted) !important;
  font-size: clamp(16px,1.4vw,19px) !important;
}
body[data-kn-page="home"] .hero .cta-row { justify-content: flex-start !important; }
body[data-kn-page="home"] .hero :where(.primary,.btn-primary,.account-signup) {
  color: #fff !important;
  background: var(--kn-primary) !important;
  border-color: var(--kn-primary) !important;
}
body[data-kn-page="home"] .hero :where(.secondary,.btn-secondary,.account-login) {
  color: var(--kn-ink) !important;
  background: #fff !important;
  border-color: var(--kn-line) !important;
}
body[data-kn-page="home"] .route-bar {
  border-top: 6px solid var(--kn-secondary) !important;
  border-radius: 2px !important;
}
body[data-kn-page="home"] :where(.mission-cell,.step-card,.trust-card,.cat-chip) {
  border-radius: 2px !important;
  box-shadow: none !important;
}
body[data-kn-page="home"] :where(.mission-grid,.steps,.trust-grid,.cat-grid) > :nth-child(4n+1) { border-top: 6px solid var(--kn-primary) !important; }
body[data-kn-page="home"] :where(.mission-grid,.steps,.trust-grid,.cat-grid) > :nth-child(4n+2) { border-top: 6px solid var(--kn-secondary) !important; }
body[data-kn-page="home"] :where(.mission-grid,.steps,.trust-grid,.cat-grid) > :nth-child(4n+3) { border-top: 6px solid var(--kn-tertiary) !important; }
body[data-kn-page="home"] :where(.mission-grid,.steps,.trust-grid,.cat-grid) > :nth-child(4n+4) { border-top: 6px solid var(--kn-quaternary) !important; }
body[data-kn-page="home"] .cat-chip::before { background: rgba(14,165,233,.1) !important; }
body[data-kn-page="home"] .footer-cta {
  color: #fff !important;
  background: var(--kn-ink) !important;
  border-bottom: 8px solid var(--kn-secondary) !important;
  border-radius: 2px !important;
}

/* Account, workspace, result, and moderation pages share the same utility rails. */
body:is([data-kn-page="login"],[data-kn-page="signup"],[data-kn-page="join"]) {
  background: linear-gradient(90deg,#fff 0 61%,var(--kn-primary) 61% 100%) !important;
}
body[data-kn-page="dashboard"] .welcome-row,
body[data-kn-page="notifications"] .head {
  background: var(--kn-primary) !important;
  border-radius: 2px !important;
  border-bottom: 8px solid var(--kn-secondary) !important;
}
body[data-kn-page="job"] .grid > .panel:nth-child(2),
body[data-kn-page="moderation"] .metric:nth-child(2) {
  background: var(--kn-ink) !important;
  border-top-color: var(--kn-secondary) !important;
}
body[data-kn-page="onboarding"] .progress span:is(.done,.active),
body[data-kn-page="dashboard"] .tab.active { background: var(--kn-primary) !important; }
body[data-kn-page="onboarding"] input[type="checkbox"],
body[data-kn-page="onboarding"] input[type="radio"] { accent-color: var(--kn-primary) !important; }

@media (max-width: 760px) {
  body[data-kn-page="home"] .hero {
    min-height: auto !important;
    padding-top: 58px !important;
    padding-bottom: 56px !important;
  }
  body[data-kn-page="home"] .hero::before {
    right: -36px !important;
    width: 210px !important;
    height: 210px !important;
    opacity: .08 !important;
  }
  body[data-kn-page="home"] .hero h1 {
    max-width: 13ch !important;
    font-size: clamp(34px,9.8vw,48px) !important;
  }
  body:is([data-kn-page="login"],[data-kn-page="signup"],[data-kn-page="join"]) {
    background: linear-gradient(180deg,var(--kn-primary) 0 150px,#fff 150px 100%) !important;
  }
}

@media (max-width: 520px) {
  body[data-kn-page] :where(.brand img,.nav img),
  body[data-kn-page="home"] .logo-crosswalk { width: 44px !important; height: 44px !important; }
  body[data-kn-page="home"] .hero { padding-top: 48px !important; padding-bottom: 46px !important; }
  body[data-kn-page="home"] .hero h1 { font-size: clamp(32px,10vw,41px) !important; }
}

@media (prefers-reduced-motion: reduce) {
  body[data-kn-page] * { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}

/* KEYNEIGHBOR_WATCHTOWER_RESPONSIVE_V4
   Responsive type correction for phone-first and tablet-first use. The Two
   Doors identity, three-tone palette, card system, icons, and application
   behavior remain unchanged. */
body[data-kn-page] {
  font-size: 16px;
  overflow-wrap: anywhere;
}
body[data-kn-page="home"] .hero {
  padding: clamp(48px,7vw,78px) 0 48px !important;
}
body[data-kn-page="home"] .hero h1 {
  max-width: 760px !important;
  margin: 10px auto 18px !important;
  font-size: clamp(36px,4.4vw,56px) !important;
  line-height: 1.07 !important;
}
body[data-kn-page="home"] .hero > p {
  max-width: 620px;
  font-size: clamp(15.5px,1.25vw,17px) !important;
  line-height: 1.6 !important;
}
body[data-kn-page="home"] .section-head h2,
body[data-kn-page="home"] .footer-cta h2 {
  font-size: clamp(28px,3.2vw,40px) !important;
}
body[data-kn-page="home"] :where(.mission-cell,.step-card,.trust-card) h3 {
  font-size: clamp(18px,1.8vw,22px) !important;
}
body:is([data-kn-page="dashboard"],[data-kn-page="onboarding"],[data-kn-page="request"],[data-kn-page="job"],[data-kn-page="quotes"],[data-kn-page="notifications"]) h1 {
  font-size: clamp(30px,4vw,46px) !important;
  line-height: 1.1 !important;
}
body:is([data-kn-page="dashboard"],[data-kn-page="onboarding"],[data-kn-page="request"],[data-kn-page="job"],[data-kn-page="quotes"],[data-kn-page="notifications"]) h2 {
  font-size: clamp(20px,2.3vw,27px) !important;
}
body:is([data-kn-page="login"],[data-kn-page="signup"],[data-kn-page="join"]) h1,
body[data-kn-page="moderation"] h1 {
  font-size: clamp(29px,4.2vw,38px) !important;
  line-height: 1.1 !important;
}
body[data-kn-page="moderation"] h2 { font-size: clamp(20px,2.2vw,27px) !important; }

@media (max-width: 1024px) {
  body[data-kn-page="home"] .hero { padding: 52px 0 44px !important; }
  body[data-kn-page="home"] .hero h1 { max-width: 680px !important; font-size: clamp(35px,5.4vw,48px) !important; }
  body[data-kn-page="home"] .section { padding-block: 46px !important; }
  body[data-kn-page="home"] .cat-chip { min-height: 138px; }
  body:is([data-kn-page="dashboard"],[data-kn-page="onboarding"],[data-kn-page="request"],[data-kn-page="job"],[data-kn-page="quotes"],[data-kn-page="notifications"]) h1 {
    font-size: clamp(30px,4.8vw,40px) !important;
  }
}

/* KEYNEIGHBOR_WATCHTOWER_LIGHT_DARK_V4_2
   Reference-faithful typography and a white/navy composition. Public Sans
   carries readable interface content; Bebas Neue is reserved for display
   moments; Chivo Mono is limited to labels and operational metadata. */
body[data-kn-page] {
  color: #1F2937;
  background: #FFFFFF !important;
  background-image: none !important;
  font-family: Verdana, Geneva, sans-serif !important;
  font-size: 16px;
  line-height: 1.65;
}
body[data-kn-page] :where(p,li,dd,td,.description,.terms,.notice,.bubble) {
  font-family: Verdana, Geneva, sans-serif !important;
  line-height: 1.68;
  letter-spacing: 0 !important;
}
body[data-kn-page] h1,
body[data-kn-page="home"] :where(.section-head h2,.footer-cta h2) {
  font-family: Verdana, Geneva, sans-serif !important;
  font-weight: 400 !important;
  letter-spacing: .025em !important;
  line-height: 1.08 !important;
}
body[data-kn-page] :where(h2,h3,h4,legend),
body[data-kn-page="home"] :where(.mission-cell h3,.step-card h3,.trust-card h3,.cat-chip strong),
body[data-kn-page] :where(.card h2,.panel h2,.request-card h2,.quote h2,.review h2) {
  font-family: Verdana, Geneva, sans-serif !important;
  font-weight: 700 !important;
  letter-spacing: -.012em !important;
  line-height: 1.3 !important;
  text-transform: none !important;
}
body[data-kn-page] :where(button,.button,.primary,.secondary,.action,.submit,.select,.post-top,.logout,.icon-btn,.back,.home,.account-login,.account-signup,.btn-primary,.btn-secondary) {
  font-family: Verdana, Geneva, sans-serif !important;
  font-weight: 700 !important;
  letter-spacing: 0 !important;
}
body[data-kn-page] :where(.eyebrow,.status,.badge,.category,.meta,small,time,.updated,.count) {
  font-family: Verdana, Geneva, sans-serif !important;
}
body[data-kn-page] :where(.brand,.brand-name,.kn-auth-brand),
body[data-kn-page] :where(.brand,.brand-name,.kn-auth-brand) span {
  font-family: Verdana, Geneva, sans-serif !important;
  font-weight: 400 !important;
  letter-spacing: .035em !important;
}
body[data-kn-page] :where(.topbar,header:not(.hero),.switcher) {
  color: #0EA5E9 !important;
  background: rgba(255,255,255,.98) !important;
  border-bottom: 1px solid #D6DEE8 !important;
  box-shadow: 0 4px 18px rgba(21,37,56,.05) !important;
}
body[data-kn-page] :where(.card,.panel,.request-card,.quote,.review,.metric,.location-box,.choice,.category,.empty),
body[data-kn-page="home"] :where(.mission-cell,.step-card,.trust-card,.cat-chip,.route-bar) {
  background: #FFFFFF !important;
  background-image: none !important;
  border-color: #D6DEE8 !important;
  border-radius: 6px !important;
  box-shadow: 0 9px 24px rgba(21,37,56,.07) !important;
}
body[data-kn-page] :where(.card,.panel,.request-card,.quote,.review,.metric,.location-box,.choice) {
  padding: clamp(20px,2.2vw,28px) !important;
}

/* Homepage: white navigation, dark watchtower hero, then spacious light work. */
body[data-kn-page="home"] > .wrap { width: min(100% - 36px,var(--kn-shell)) !important; }
body[data-kn-page="home"] .hero {
  width: 100vw;
  min-height: 440px !important;
  margin-left: calc(50% - 50vw) !important;
  padding: clamp(64px,8vw,92px) max(24px,calc((100vw - var(--kn-shell))/2)) 66px !important;
  overflow: hidden;
  color: #FFFFFF;
  background: #0EA5E9 !important;
  text-align: left !important;
}
body[data-kn-page="home"] .hero::before { display: none !important; }
body[data-kn-page="home"] .hero::after {
  top: 50% !important;
  right: max(32px,calc((100vw - var(--kn-shell))/2)) !important;
  width: clamp(190px,24vw,310px) !important;
  height: clamp(190px,24vw,310px) !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: url('/watchtower-logo-dark.svg?v=20260818-421') center/contain no-repeat !important;
  clip-path: none !important;
  transform: translateY(-50%);
  opacity: .95 !important;
}
body[data-kn-page="home"] .hero :where(.eyebrow,.default-eyebrow) { color: #F59E0B !important; }
body[data-kn-page="home"] .hero h1 {
  max-width: 16ch !important;
  margin: 12px 0 18px !important;
  color: #FFFFFF !important;
  font-size: clamp(38px,4.6vw,54px) !important;
}
body[data-kn-page="home"] .hero > p {
  max-width: 48ch !important;
  margin: 0 0 26px !important;
  color: #D7DCE6 !important;
  font-size: clamp(16px,1.35vw,18px) !important;
  line-height: 1.65 !important;
}
body[data-kn-page="home"] .hero .cta-row { justify-content: flex-start !important; }
body[data-kn-page="home"] .hero .btn-primary {
  color: #0369A1 !important;
  background: #F59E0B !important;
  border-color: #F59E0B !important;
}
body[data-kn-page="home"] .hero .btn-secondary {
  color: #F59E0B !important;
  background: transparent !important;
  border-color: #F59E0B !important;
}
body[data-kn-page="home"] .route-bar { margin-top: 38px !important; background: #F7F8FA !important; }
body[data-kn-page="home"] .section { padding-block: clamp(58px,7vw,82px) !important; }
body[data-kn-page="home"] :where(.mission-cell,.step-card,.trust-card) { padding: clamp(25px,2.6vw,32px) !important; }
body[data-kn-page="home"] :where(.mission-cell,.step-card,.trust-card) p { margin-top: 12px; color: #5F6B7A !important; }
body[data-kn-page="home"] .mission-cell:nth-child(2),
body[data-kn-page="home"] .trust-card:nth-child(2) {
  color: #FFFFFF !important;
  background: #0EA5E9 !important;
  border-color: #0EA5E9 !important;
}
body[data-kn-page="home"] :where(.mission-cell,.trust-card):nth-child(2) :where(h3,p) { color: #FFFFFF !important; }
body[data-kn-page="home"] :where(.mission-cell,.trust-card):nth-child(2) .tag { color: #0369A1 !important; background: #F59E0B !important; }
body[data-kn-page="home"] .footer-cta {
  padding: clamp(52px,7vw,76px) 30px !important;
  color: #FFFFFF !important;
  background: #0EA5E9 !important;
  border-bottom: 8px solid #F59E0B !important;
}

/* Account and child-page light/dark balance. */
body:is([data-kn-page="login"],[data-kn-page="signup"]) {
  background: linear-gradient(180deg,#FFFFFF 0 56%,#0EA5E9 56% 100%) !important;
}
body:is([data-kn-page="login"],[data-kn-page="signup"]) :where(.card,.kn-auth-card) {
  background: #FFFFFF !important;
  border-top: 5px solid #0EA5E9 !important;
}
body[data-kn-page="dashboard"] .welcome-row,
body[data-kn-page="notifications"] .head {
  margin-bottom: 30px !important;
  padding: clamp(24px,3vw,34px) !important;
  color: #FFFFFF !important;
  background: #0EA5E9 !important;
  border-bottom: 5px solid #F59E0B;
  border-radius: 6px;
}
body[data-kn-page="dashboard"] .welcome-row :where(h1,.sub),
body[data-kn-page="notifications"] .head :where(h1,.eyebrow) { color: #FFFFFF !important; }
body[data-kn-page="dashboard"] .welcome-row .location-chip { color: #0369A1 !important; background: #F59E0B !important; border-color: #F59E0B !important; }
body[data-kn-page="job"] .grid > .panel:nth-child(2) {
  color: #FFFFFF !important;
  background: #0EA5E9 !important;
  border-color: #0EA5E9 !important;
}
body[data-kn-page="job"] .grid > .panel:nth-child(2) :where(h2,strong) { color: #FFFFFF !important; }
body[data-kn-page="job"] .grid > .panel:nth-child(2) :where(span,p) { color: #D7DCE6 !important; }
body[data-kn-page="moderation"] .metric:nth-child(2) {
  color: #FFFFFF !important;
  background: #0EA5E9 !important;
  border-color: #0EA5E9 !important;
}
body[data-kn-page="moderation"] .metric:nth-child(2) :where(strong,span) { color: #FFFFFF !important; }
body:is([data-kn-page="dashboard"],[data-kn-page="onboarding"],[data-kn-page="request"],[data-kn-page="job"],[data-kn-page="quotes"],[data-kn-page="notifications"],[data-kn-page="moderation"]) main {
  margin-top: clamp(42px,5vw,62px) !important;
  margin-bottom: 100px !important;
}
body:is([data-kn-page="dashboard"],[data-kn-page="onboarding"],[data-kn-page="request"],[data-kn-page="job"],[data-kn-page="quotes"],[data-kn-page="notifications"],[data-kn-page="moderation"]) h1 {
  color: #0EA5E9;
  font-size: clamp(34px,4vw,48px) !important;
}

@media (max-width: 760px) {
  body[data-kn-page] { font-size: 15.5px; }
  body[data-kn-page="home"] .hero {
    min-height: auto !important;
    padding: 52px 22px 48px !important;
  }
  body[data-kn-page="home"] .hero::after {
    right: -34px !important;
    width: 170px !important;
    height: 170px !important;
    opacity: .18 !important;
  }
  body[data-kn-page="home"] .hero h1 { max-width: 12ch !important; font-size: clamp(34px,9vw,43px) !important; }
  body[data-kn-page="home"] .hero > p { max-width: 34ch !important; }
  body[data-kn-page="home"] .section { padding-block: 48px !important; }
}

@media (max-width: 520px) {
  body[data-kn-page="home"] > .wrap { width: min(100% - 24px,var(--kn-shell)) !important; }
  body[data-kn-page="home"] .hero { padding: 44px 18px 42px !important; }
  body[data-kn-page="home"] .hero h1 { font-size: clamp(32px,10.5vw,39px) !important; }
  body[data-kn-page="home"] .hero .cta-row > * { flex: 1 1 140px; }
  body[data-kn-page="dashboard"] .welcome-row,
  body[data-kn-page="notifications"] .head { padding: 22px 18px !important; }
}

@media (max-width: 760px) {
  body[data-kn-page] { font-size: 15.5px; }
  body[data-kn-page] :where(.topbar,header:not(.hero)) { min-height: 66px !important; }
  body[data-kn-page] :where(.brand img),
  body[data-kn-page="home"] .logo-crosswalk { width: 42px !important; height: 42px !important; }
  body[data-kn-page="home"] .switcher-inner { min-height: 66px; }
  body[data-kn-page="home"] .hero { padding: 44px 0 38px !important; }
  body[data-kn-page="home"] .hero h1 {
    max-width: 610px !important;
    font-size: clamp(32px,7vw,42px) !important;
    line-height: 1.08 !important;
  }
  body[data-kn-page="home"] .hero > p { font-size: 15.5px !important; }
  body[data-kn-page="home"] .section-head h2,
  body[data-kn-page="home"] .footer-cta h2 { font-size: clamp(26px,5.7vw,34px) !important; }
  body[data-kn-page="home"] :where(.mission-cell,.step-card,.trust-card) { padding: 21px !important; }
  body[data-kn-page="home"] .footer-cta { padding: 42px 22px !important; }
  body:is([data-kn-page="dashboard"],[data-kn-page="onboarding"],[data-kn-page="request"],[data-kn-page="job"],[data-kn-page="quotes"],[data-kn-page="notifications"]) main {
    width: min(var(--kn-shell),calc(100% - 24px)) !important;
  }
  body:is([data-kn-page="dashboard"],[data-kn-page="onboarding"],[data-kn-page="request"],[data-kn-page="job"],[data-kn-page="quotes"],[data-kn-page="notifications"]) h1 {
    font-size: clamp(29px,6.2vw,36px) !important;
  }
  body:is([data-kn-page="dashboard"],[data-kn-page="onboarding"],[data-kn-page="request"],[data-kn-page="job"],[data-kn-page="quotes"],[data-kn-page="notifications"]) h2 {
    font-size: clamp(19px,4.5vw,24px) !important;
  }
  body[data-kn-page="onboarding"] main { margin-top: 34px !important; }
  body[data-kn-page="onboarding"] .progress { margin-bottom: 30px !important; }
  body:is([data-kn-page="login"],[data-kn-page="signup"],[data-kn-page="join"]) h1,
  body[data-kn-page="moderation"] h1 { font-size: clamp(28px,6.7vw,34px) !important; }
}

@media (max-width: 520px) {
  body[data-kn-page] { font-size: 15px; }
  body[data-kn-page="home"] > .wrap { width: min(100% - 24px,var(--kn-shell)) !important; }
  body[data-kn-page="home"] .hero { padding: 38px 0 32px !important; }
  body[data-kn-page="home"] .hero h1 {
    max-width: 390px !important;
    font-size: clamp(29px,8.8vw,36px) !important;
    line-height: 1.09 !important;
  }
  body[data-kn-page="home"] .hero .cta-row { gap: 9px !important; }
  body[data-kn-page="home"] .hero .cta-row > * { flex: 1 1 145px; }
  body[data-kn-page="home"] .section { padding-block: 38px !important; }
  body[data-kn-page="home"] .cat-chip { min-height: 126px; }
  body[data-kn-page="login"],body[data-kn-page="signup"] { padding: 26px 12px !important; }
  body[data-kn-page="login"] .card,body[data-kn-page="signup"] .card { padding: 25px 20px !important; }
  body[data-kn-page="join"] .card { margin: 38px auto; padding: 25px 20px !important; }
  body[data-kn-page="onboarding"] .choice { min-height: 108px; padding: 18px !important; }
  body[data-kn-page="onboarding"] .choice strong { font-size: 18px !important; }
  body[data-kn-page="request"] .panel,body[data-kn-page="job"] .panel { padding: 19px !important; }
  body[data-kn-page="moderation"] .header-inner,body[data-kn-page="moderation"] main { width: min(var(--kn-shell),calc(100% - 20px)) !important; }
}

/* KEYNEIGHBOR_WATCHTOWER_VISUAL_RESET_V4
   Final cascade: the approved Watch Navy, civic paper, gold signal, badge,
   type, cards, parent pages, child pages, results, and protected moderation. */
body[data-kn-page] {
  background-color: #F7F8FA !important;
  background-image:
    linear-gradient(rgba(14,165,233,.022) 1px,transparent 1px),
    linear-gradient(90deg,rgba(14,165,233,.022) 1px,transparent 1px) !important;
  background-size: 28px 28px !important;
}
body[data-kn-page] :where(h1,h2,h3,h4,legend,.brand,.brand-name,.kn-auth-brand) {
  font-family: Verdana, Geneva, sans-serif !important;
}
body[data-kn-page] :where(.brand,.brand-name,.kn-auth-brand) {
  color: #0EA5E9 !important;
  letter-spacing: .035em !important;
  text-transform: uppercase !important;
}
body[data-kn-page] .kn-brand-accent { color: #F59E0B !important; }
body[data-kn-page] :where(.brand img),
body[data-kn-page="home"] .logo-crosswalk { width: 50px !important; height: 50px !important; }
body[data-kn-page] :where(.topbar,header:not(.hero),.switcher) {
  background: rgba(255,254,250,.96) !important;
  border-bottom-color: #C9C1AD !important;
}
body[data-kn-page] :where(.card,.panel,.request-card,.quote,.review,.metric,.location-box,.choice,.category,.empty),
body[data-kn-page="home"] :where(.mission-cell,.step-card,.trust-card,.cat-chip,.route-bar) {
  border-color: #C9C1AD !important;
  border-radius: 5px !important;
  background-color: #FFFEFA !important;
  box-shadow: 5px 5px 0 rgba(14,165,233,.055) !important;
}
body[data-kn-page] :where(.primary,.submit,.post-top,.button.primary,.btn-primary,button[type="submit"],.account-signup,.mark,.tab[aria-selected="true"]):not(.secondary) {
  color: #FFFEFA !important;
  background: #0EA5E9 !important;
  border-color: #0EA5E9 !important;
  border-radius: 3px !important;
}
body[data-kn-page] :where(.secondary,.btn-secondary,.back,.home,.account-login,.logout,.icon-btn) {
  color: #0EA5E9 !important;
  background: #FFFEFA !important;
  border-color: #C9C1AD !important;
  border-radius: 3px !important;
}
body[data-kn-page] :where(.eyebrow,.category,.status,.badge,.meta,small,time) {
  font-family: Verdana, Geneva, sans-serif !important;
}
body[data-kn-page="home"] .hero::before,
body[data-kn-page="home"] .hero::after {
  top: clamp(40px,7vw,76px);
  width: clamp(130px,17vw,230px);
  height: clamp(130px,17vw,230px);
  border: 0;
  border-radius: 0;
  background: currentColor;
  clip-path: polygon(50% 0,61% 34%,98% 35%,68% 56%,79% 92%,50% 70%,21% 92%,32% 56%,2% 35%,39% 34%);
  opacity: .055;
}
body[data-kn-page="home"] .hero::before { left: clamp(-64px,2vw,26px); color: #0EA5E9; }
body[data-kn-page="home"] .hero::after { right: clamp(-64px,2vw,26px); color: #F59E0B; }
body[data-kn-page="home"] .footer-cta {
  background: #0EA5E9 !important;
  border-bottom: 8px solid #F59E0B !important;
}
body[data-kn-page="home"] .cat-chip::before,
body[data-kn-page] .category[data-icon]::before,
body[data-kn-page="request"] #category[data-icon]::before {
  border-radius: 3px !important;
  color: #0EA5E9;
  background: rgba(245,158,11,.16) !important;
  box-shadow: inset 0 0 0 1px rgba(245,158,11,.30) !important;
}
@media (max-width: 760px) {
  body[data-kn-page] :where(.brand img),
  body[data-kn-page="home"] .logo-crosswalk { width: 44px !important; height: 44px !important; }
  body[data-kn-page] :where(.card,.panel,.request-card,.quote,.review,.metric,.location-box,.choice,.category,.empty),
  body[data-kn-page="home"] :where(.mission-cell,.step-card,.trust-card,.cat-chip,.route-bar) {
    box-shadow: 3px 3px 0 rgba(14,165,233,.05) !important;
  }
}

/* KEYNEIGHBOR_WATCHTOWER_LIGHT_DARK_FINAL_V4_2
   This intentionally follows every legacy V4/V4.1 rule. It is the final,
   authoritative light/dark cascade for all parent, child, result, and admin
   pages while leaving document structure and application behavior untouched. */
body[data-kn-page] {
  color: #1F2937 !important;
  background: #FFFFFF !important;
  background-image: none !important;
  font-family: Verdana, Geneva, sans-serif !important;
  font-size: 16px;
  line-height: 1.62;
}
body[data-kn-page] :where(p,li,label,input,select,textarea,button,a,td,th,.card,.panel,.request-card,.quote,.review,.metric,.location-box,.choice,.category,.empty) {
  font-family: Verdana, Geneva, sans-serif !important;
}
body[data-kn-page] :where(h1,.hero h1,.section-head > h2,.footer-cta h2,.brand,.brand-name,.kn-auth-brand) {
  font-family: Verdana, Geneva, sans-serif !important;
  font-weight: 400 !important;
  letter-spacing: .018em !important;
}
body[data-kn-page] :where(h2,h3,h4,legend,.card h2,.card h3,.panel h2,.panel h3,.request-card h2,.request-card h3,.quote h2,.quote h3,.review h2,.review h3) {
  font-family: Verdana, Geneva, sans-serif !important;
  font-weight: 750 !important;
  letter-spacing: -.018em !important;
}
body[data-kn-page] :where(.eyebrow,.status,.badge,.meta,small,time,.route-label,.step-label) {
  font-family: Verdana, Geneva, sans-serif !important;
  letter-spacing: .05em;
}
body[data-kn-page] :where(.topbar,header:not(.hero),.switcher) {
  background: #FFFFFF !important;
  border-bottom-color: #D6DEE8 !important;
}
body[data-kn-page] :where(.card,.panel,.request-card,.quote,.review,.metric,.location-box,.choice,.category,.empty),
body[data-kn-page="home"] :where(.mission-cell,.step-card,.trust-card,.cat-chip,.route-bar) {
  background: #FFFFFF !important;
  background-image: none !important;
  border: 1px solid #D6DEE8 !important;
  border-radius: 12px !important;
  box-shadow: 0 12px 30px rgba(14,165,233,.07) !important;
}
body[data-kn-page] :where(.primary,.submit,.post-top,.button.primary,.btn-primary,button[type="submit"],.account-signup,.mark,.tab[aria-selected="true"]):not(.secondary) {
  color: #FFFFFF !important;
  background: #0EA5E9 !important;
  border-color: #0EA5E9 !important;
  border-radius: 6px !important;
  font-family: Verdana, Geneva, sans-serif !important;
  font-weight: 750 !important;
}
body[data-kn-page] :where(.secondary,.btn-secondary,.back,.home,.account-login,.logout,.icon-btn) {
  color: #0EA5E9 !important;
  background: #FFFFFF !important;
  border-color: #AAB3C2 !important;
  border-radius: 6px !important;
  font-family: Verdana, Geneva, sans-serif !important;
  font-weight: 700 !important;
}

/* Homepage: a deliberate navy hero followed by quiet white and cream zones. */
body[data-kn-page="home"] .hero {
  position: relative;
  overflow: hidden;
  width: 100% !important;
  max-width: none !important;
  min-height: 500px !important;
  margin: 0 !important;
  padding: clamp(76px,8vw,112px) max(24px,calc((100vw - var(--kn-shell))/2)) clamp(72px,8vw,104px) !important;
  color: #FFFFFF !important;
  background: #0EA5E9 !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: inset 0 -8px 0 #F59E0B !important;
  text-align: left !important;
}
body[data-kn-page="home"] .hero::before {
  content: "" !important;
  position: absolute !important;
  top: 50% !important;
  right: max(5vw,52px) !important;
  left: auto !important;
  width: clamp(230px,29vw,430px) !important;
  height: clamp(230px,29vw,430px) !important;
  opacity: .13 !important;
  background: url('/watchtower-logo-dark.svg?v=20260818-421') center/contain no-repeat !important;
  clip-path: none !important;
  transform: translateY(-50%) !important;
  pointer-events: none;
}
body[data-kn-page="home"] .hero::after { content: none !important; display: none !important; }
body[data-kn-page="home"] .hero > * { position: relative; z-index: 1; margin-left: 0 !important; }
body[data-kn-page="home"] .hero :where(h1,p) { color: #FFFFFF !important; }
body[data-kn-page="home"] .hero .eyebrow { color: #E9BD56 !important; }
body[data-kn-page="home"] .hero h1 {
  max-width: 740px !important;
  margin-inline: 0 !important;
  font-size: clamp(45px,5.5vw,76px) !important;
  line-height: .98 !important;
  letter-spacing: .012em !important;
}
body[data-kn-page="home"] .hero > p {
  max-width: 650px !important;
  margin-inline: 0 !important;
  font-family: Verdana, Geneva, sans-serif !important;
  font-size: clamp(17px,1.45vw,21px) !important;
  line-height: 1.62 !important;
}
body[data-kn-page="home"] .hero .cta-row { justify-content: flex-start !important; }
body[data-kn-page="home"] .hero :where(.primary,.submit,.post-top,.button.primary,.btn-primary,.account-signup) {
  color: #0369A1 !important;
  background: #F59E0B !important;
  border-color: #F59E0B !important;
}
body[data-kn-page="home"] .hero :where(.secondary,.btn-secondary,.account-login) {
  color: #FFFFFF !important;
  background: transparent !important;
  border-color: rgba(255,255,255,.68) !important;
}
body[data-kn-page="home"] .section { background: #FFFFFF !important; }
body[data-kn-page="home"] .section:nth-of-type(even) { background: #F7F8FA !important; }
body[data-kn-page="home"] .footer-cta {
  color: #FFFFFF !important;
  background: #0369A1 !important;
  border-radius: 12px !important;
  border-bottom: 8px solid #F59E0B !important;
}
body[data-kn-page="home"] .footer-cta :where(h2,p) { color: #FFFFFF !important; }

/* Controlled dark surfaces on workspaces and results pages. */
body[data-kn-page="dashboard"] .welcome-row,
body[data-kn-page="notifications"] .head {
  color: #FFFFFF !important;
  background: #0EA5E9 !important;
  border: 0 !important;
  border-radius: 12px !important;
  padding: clamp(24px,4vw,42px) !important;
}
body[data-kn-page="dashboard"] .welcome-row :where(h1,h2,h3,p,span),
body[data-kn-page="notifications"] .head :where(h1,h2,h3,p,span) { color: #FFFFFF !important; }
body[data-kn-page="job"] .grid > .panel:nth-child(2),
body[data-kn-page="moderation"] .metric:nth-child(2) {
  color: #FFFFFF !important;
  background: #0EA5E9 !important;
  border-color: #0EA5E9 !important;
}
body[data-kn-page="job"] .grid > .panel:nth-child(2) :where(h1,h2,h3,h4,strong,span,p),
body[data-kn-page="moderation"] .metric:nth-child(2) :where(strong,span,p) { color: #FFFFFF !important; }
body:is([data-kn-page="login"],[data-kn-page="signup"],[data-kn-page="join"]) {
  background: linear-gradient(90deg,#FFFFFF 0 58%,#0EA5E9 58% 100%) !important;
}
body:is([data-kn-page="login"],[data-kn-page="signup"],[data-kn-page="join"]) :where(.card,.auth-card) {
  background: #FFFFFF !important;
}

@media (max-width: 760px) {
  body[data-kn-page] { font-size: 15.5px; }
  body[data-kn-page] :where(.brand img),
  body[data-kn-page="home"] .logo-crosswalk { width: 44px !important; height: 44px !important; }
  body[data-kn-page="home"] .hero {
    min-height: auto !important;
    padding: 54px 22px 52px !important;
  }
  body[data-kn-page="home"] .hero::before {
    right: -34px !important;
    width: 190px !important;
    height: 190px !important;
    opacity: .1 !important;
  }
  body[data-kn-page="home"] .hero h1 {
    max-width: 12ch !important;
    font-size: clamp(36px,10vw,48px) !important;
    line-height: 1.02 !important;
  }
  body[data-kn-page="home"] .hero > p { max-width: 32ch !important; font-size: 16px !important; }
  body[data-kn-page="home"] .section { padding-block: 48px !important; }
  body[data-kn-page] :where(.card,.panel,.request-card,.quote,.review,.metric,.location-box,.choice,.category,.empty),
  body[data-kn-page="home"] :where(.mission-cell,.step-card,.trust-card,.cat-chip,.route-bar) {
    border-radius: 10px !important;
    box-shadow: 0 8px 20px rgba(14,165,233,.06) !important;
  }
  body:is([data-kn-page="login"],[data-kn-page="signup"],[data-kn-page="join"]) {
    background: linear-gradient(180deg,#0EA5E9 0 150px,#FFFFFF 150px 100%) !important;
  }
}

@media (max-width: 520px) {
  body[data-kn-page] { font-size: 15px; }
  body[data-kn-page="home"] > .wrap { width: min(100% - 24px,var(--kn-shell)) !important; }
  body[data-kn-page="home"] .hero { padding: 46px 18px 44px !important; }
  body[data-kn-page="home"] .hero h1 { font-size: clamp(34px,10.8vw,42px) !important; }
  body[data-kn-page="home"] .hero .cta-row > * { flex: 1 1 140px; }
  body[data-kn-page="dashboard"] .welcome-row,
  body[data-kn-page="notifications"] .head { padding: 22px 18px !important; }
}

/* KEYNEIGHBOR_WATCHTOWER_LAYOUT_REPAIR_V4_2_1
   Layout-only correction. V4.2 accidentally changed the full-bleed hero from
   100vw with a centered breakout to 100% inside the old capped wrapper while
   retaining viewport-sized padding. This restores one shared alignment axis
   for navigation, hero content, cards, results, and footer at every zoom. */
body[data-kn-page="home"] { overflow-x: clip !important; }
body[data-kn-page="home"] .switcher-inner,
body[data-kn-page="home"] > .wrap {
  width: calc(100% - 48px) !important;
  max-width: var(--kn-shell) !important;
  margin-right: auto !important;
  margin-left: auto !important;
  padding-right: 0 !important;
  padding-left: 0 !important;
}
body[data-kn-page="home"] .hero {
  box-sizing: border-box !important;
  width: 100vw !important;
  max-width: none !important;
  margin-right: calc(50% - 50vw) !important;
  margin-left: calc(50% - 50vw) !important;
  padding-right: max(24px,calc((100vw - var(--kn-shell))/2)) !important;
  padding-left: max(24px,calc((100vw - var(--kn-shell))/2)) !important;
}
body[data-kn-page="home"] .hero > :not(.hero-ripple) {
  min-width: 0 !important;
}
body[data-kn-page="home"] .hero h1,
body[data-kn-page="home"] .hero > p {
  overflow-wrap: normal !important;
  word-break: normal !important;
}

@media (max-width: 760px) {
  body[data-kn-page="home"] .switcher-inner,
  body[data-kn-page="home"] > .wrap {
    width: calc(100% - 44px) !important;
  }
  body[data-kn-page="home"] .hero {
    margin-right: calc(50% - 50vw) !important;
    margin-left: calc(50% - 50vw) !important;
    padding-right: 22px !important;
    padding-left: 22px !important;
  }
}

@media (max-width: 520px) {
  body[data-kn-page="home"] .switcher-inner,
  body[data-kn-page="home"] > .wrap {
    width: calc(100% - 36px) !important;
  }
  body[data-kn-page="home"] .hero {
    padding-right: 18px !important;
    padding-left: 18px !important;
  }
}

/* KEYNEIGHBOR_AZURE_SAFFRON_GOSIGNAL_V5_CASCADE_LOCK */
body[data-kn-page],body[data-kn-page] :where(button,input,select,textarea,h1,h2,h3,h4,legend,.brand,.brand-name,.eyebrow,.status,.badge,.category) {
  font-family: Verdana, Geneva, sans-serif !important;
}
body[data-kn-page] :where(.topbar,header:not(.hero),.nav) {
  background: rgba(255,255,255,.97) !important;
  border-top: 4px solid #0EA5E9 !important;
}
body[data-kn-page] :where(.brand img,.nav img),body[data-kn-page="home"] .logo-crosswalk { width: 50px !important; height: 50px !important; }
body[data-kn-page] .kn-brand-accent { color: #0EA5E9 !important; }
body[data-kn-page] :where(.card,.panel,.request-card,.quote,.review,.metric,.location-box,.choice,.category,.empty) {
  background: #fff !important;
  border: 1px solid #D6DEE8 !important;
  border-top: 6px solid #0EA5E9 !important;
  border-radius: 2px !important;
  box-shadow: none !important;
}
body[data-kn-page] :where(.grid,.request-grid,.review-grid,.metrics,.choices) > :nth-child(4n+2) { border-top-color: #F59E0B !important; }
body[data-kn-page] :where(.grid,.request-grid,.review-grid,.metrics,.choices) > :nth-child(4n+3) { border-top-color: #DB2777 !important; }
body[data-kn-page] :where(.grid,.request-grid,.review-grid,.metrics,.choices) > :nth-child(4n+4) { border-top-color: #10B981 !important; }
body[data-kn-page="home"] .hero {
  min-height: 520px !important;
  color: #1F2937 !important;
  background: #fff !important;
  border: 0 !important;
  border-bottom: 8px solid #10B981 !important;
  box-shadow: none !important;
  text-align: left !important;
}
body[data-kn-page="home"] .hero::before {
  right: max(5vw,calc((100vw - var(--kn-shell))/2)) !important;
  width: clamp(250px,31vw,430px) !important;
  height: clamp(250px,31vw,430px) !important;
  opacity: .14 !important;
  background: url('/azure-saffron-logo.svg?v=20260822-51') center/contain no-repeat !important;
}
body[data-kn-page="home"] .hero :where(h1,p) { color: #1F2937 !important; }
body[data-kn-page="home"] .hero .eyebrow { color: #F59E0B !important; }
body[data-kn-page="home"] .hero h1 { max-width: 720px !important; margin-inline: 0 !important; font-size: clamp(42px,5vw,66px) !important; }
body[data-kn-page="home"] .hero > p { max-width: 610px !important; margin-inline: 0 !important; color: #5F6B7A !important; font-size: clamp(16px,1.4vw,19px) !important; }
body[data-kn-page="home"] .hero .cta-row { justify-content: flex-start !important; }
body[data-kn-page="home"] .hero :where(.primary,.btn-primary,.account-signup) { color: #fff !important; background: #0EA5E9 !important; border-color: #0EA5E9 !important; }
body[data-kn-page="home"] .hero :where(.secondary,.btn-secondary,.account-login) { color: #1F2937 !important; background: #fff !important; border-color: #D6DEE8 !important; }
body[data-kn-page="home"] .route-bar { border-top: 6px solid #F59E0B !important; border-radius: 2px !important; }
body[data-kn-page="home"] :where(.mission-cell,.step-card,.trust-card,.cat-chip) { border-radius: 2px !important; box-shadow: none !important; }
body[data-kn-page="home"] :where(.mission-grid,.steps,.trust-grid,.cat-grid) > :nth-child(4n+1) { border-top: 6px solid #0EA5E9 !important; }
body[data-kn-page="home"] :where(.mission-grid,.steps,.trust-grid,.cat-grid) > :nth-child(4n+2) { border-top: 6px solid #F59E0B !important; }
body[data-kn-page="home"] :where(.mission-grid,.steps,.trust-grid,.cat-grid) > :nth-child(4n+3) { border-top: 6px solid #DB2777 !important; }
body[data-kn-page="home"] :where(.mission-grid,.steps,.trust-grid,.cat-grid) > :nth-child(4n+4) { border-top: 6px solid #10B981 !important; }
body[data-kn-page="home"] .footer-cta { background: #1F2937 !important; border-bottom: 8px solid #F59E0B !important; border-radius: 2px !important; }
body:is([data-kn-page="login"],[data-kn-page="signup"],[data-kn-page="join"]) { background: linear-gradient(90deg,#fff 0 61%,#0EA5E9 61% 100%) !important; }
body[data-kn-page="dashboard"] .welcome-row,body[data-kn-page="notifications"] .head { background: #0EA5E9 !important; border-radius: 2px !important; border-bottom: 8px solid #F59E0B !important; }
body[data-kn-page="job"] .grid > .panel:nth-child(2),body[data-kn-page="moderation"] .metric:nth-child(2) { background: #1F2937 !important; border-top-color: #F59E0B !important; }
@media (max-width:760px) {
  body[data-kn-page="home"] .hero { min-height: auto !important; padding-top: 58px !important; padding-bottom: 56px !important; }
  body[data-kn-page="home"] .hero::before { right: -36px !important; width: 210px !important; height: 210px !important; opacity: .08 !important; }
  body[data-kn-page="home"] .hero h1 { max-width: 13ch !important; font-size: clamp(34px,9.8vw,48px) !important; }
  body:is([data-kn-page="login"],[data-kn-page="signup"],[data-kn-page="join"]) { background: linear-gradient(180deg,#0EA5E9 0 150px,#fff 150px 100%) !important; }
}
@media (max-width:520px) {
  body[data-kn-page] :where(.brand img,.nav img),body[data-kn-page="home"] .logo-crosswalk { width: 44px !important; height: 44px !important; }
  body[data-kn-page="home"] .hero { padding-top: 48px !important; padding-bottom: 46px !important; }
  body[data-kn-page="home"] .hero h1 { font-size: clamp(32px,10vw,41px) !important; }
}

/* KEYNEIGHBOR_AZURE_SAFFRON_CTA_FIX_V5_1
   Replaces the legacy oversized dark closing panel with a compact, balanced
   Azure Saffron conversion band. No content or behavior changes. */
body[data-kn-page="home"] .footer-cta {
  display: grid !important;
  grid-template-columns: minmax(0,1fr) auto !important;
  align-items: center !important;
  gap: clamp(28px,5vw,72px) !important;
  min-height: 0 !important;
  margin: 56px 0 42px !important;
  padding: clamp(30px,4vw,44px) clamp(28px,4.5vw,52px) !important;
  color: #1F2937 !important;
  background: linear-gradient(100deg,#F7F8FA 0 74%,rgba(14,165,233,.12) 74% 100%) !important;
  border: 1px solid #D6DEE8 !important;
  border-top: 7px solid #0EA5E9 !important;
  border-bottom: 7px solid #F59E0B !important;
  border-radius: 2px !important;
  box-shadow: none !important;
  text-align: left !important;
}
body[data-kn-page="home"] .footer-cta::before {
  content: "" !important;
  position: absolute !important;
  top: 50% !important;
  right: clamp(24px,4vw,54px) !important;
  width: 116px !important;
  height: 116px !important;
  opacity: .1 !important;
  background: url('/azure-saffron-logo.svg?v=20260822-51') center/contain no-repeat !important;
  transform: translateY(-50%) !important;
  pointer-events: none !important;
}
body[data-kn-page="home"] .footer-cta :where(h2,p) {
  max-width: 660px !important;
  color: #1F2937 !important;
  text-align: left !important;
}
body[data-kn-page="home"] .footer-cta h2 {
  grid-column: 1 !important;
  grid-row: 1 !important;
  margin: 0 0 10px !important;
  font-size: clamp(27px,3vw,38px) !important;
}
body[data-kn-page="home"] .footer-cta p {
  grid-column: 1 !important;
  grid-row: 2 !important;
  margin: 0 !important;
  color: #5F6B7A !important;
  opacity: 1 !important;
  line-height: 1.55 !important;
}
body[data-kn-page="home"] .footer-cta .signup-row {
  grid-column: 2 !important;
  grid-row: 1 / span 2 !important;
  z-index: 1 !important;
  display: flex !important;
  flex-wrap: nowrap !important;
  justify-content: flex-end !important;
  gap: 10px !important;
  min-width: 210px !important;
  max-width: none !important;
}
body[data-kn-page="home"] .footer-cta .btn-primary {
  color: #fff !important;
  background: #0EA5E9 !important;
  border-color: #0EA5E9 !important;
}
body[data-kn-page="home"] .footer-cta .btn-secondary {
  color: #1F2937 !important;
  background: #fff !important;
  border-color: #D6DEE8 !important;
}
body[data-kn-page="home"] .site-footer {
  padding-top: 24px !important;
  padding-bottom: 32px !important;
}
@media (max-width:760px) {
  body[data-kn-page="home"] .footer-cta {
    grid-template-columns: 1fr !important;
    gap: 24px !important;
    margin: 44px 0 32px !important;
    background: #F7F8FA !important;
  }
  body[data-kn-page="home"] .footer-cta::before {
    top: 22px !important;
    right: 20px !important;
    width: 86px !important;
    height: 86px !important;
    transform: none !important;
  }
  body[data-kn-page="home"] .footer-cta :where(h2,p) { max-width: calc(100% - 62px) !important; }
  body[data-kn-page="home"] .footer-cta .signup-row {
    grid-column: 1 !important;
    grid-row: 3 !important;
    justify-content: flex-start !important;
    min-width: 0 !important;
  }
}
@media (max-width:420px) {
  body[data-kn-page="home"] .footer-cta { padding: 26px 22px !important; }
  body[data-kn-page="home"] .footer-cta :where(h2,p) { max-width: 100% !important; }
  body[data-kn-page="home"] .footer-cta::before { display: none !important; }
  body[data-kn-page="home"] .footer-cta .signup-row { flex-wrap: wrap !important; }
  body[data-kn-page="home"] .footer-cta .signup-row > * { flex: 1 1 120px !important; }
}

/* KEYNEIGHBOR_LOGO_VIBRANCY_4K_V6
   The mark grows exactly 20% from the locked 50px desktop and 44px mobile
   sizes. The wordmark, header structure, page layout and behavior are unchanged. */
body[data-kn-page] :where(.brand img,.nav img),
body[data-kn-page="home"] .logo-crosswalk {
  width: 60px !important;
  height: 60px !important;
  filter: saturate(1.18) contrast(1.04) !important;
}
@media (max-width:520px) {
  body[data-kn-page] :where(.brand img,.nav img),
  body[data-kn-page="home"] .logo-crosswalk {
    width: 52.8px !important;
    height: 52.8px !important;
  }
}

/* KEYNEIGHBOR_HOMEPAGE_DENSITY_SEARCH_V1
   Restores the visible hero headline, compresses the oversized vertical gaps,
   adds a functional service finder, and turns the full brand into a home link. */
body[data-kn-page="home"] .brand-home-link {
  color: inherit !important;
  text-decoration: none !important;
  border-radius: 6px !important;
}
body[data-kn-page="home"] .brand-home-link:focus-visible {
  outline: 3px solid rgba(14,165,233,.35) !important;
  outline-offset: 5px !important;
}
html[data-theme="crosswalk"] body[data-kn-page="home"] .hero {
  min-height: 0 !important;
  padding-top: clamp(54px,6vw,76px) !important;
  padding-bottom: clamp(48px,5vw,64px) !important;
}
html[data-theme="crosswalk"] body[data-kn-page="home"] .hero h1 {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
  max-width: 740px !important;
  margin: 12px 0 16px !important;
  color: #1F2937 !important;
  font-size: clamp(40px,4.8vw,64px) !important;
  line-height: 1.03 !important;
}
body[data-kn-page="home"] .hero > p {
  margin: 0 0 24px !important;
  line-height: 1.55 !important;
}
body[data-kn-page="home"] .hero-search {
  width: min(100%,720px) !important;
  margin: 0 0 22px !important;
}
body[data-kn-page="home"] .hero-search-label {
  display: block !important;
  margin: 0 0 9px !important;
  color: #1F2937 !important;
  font-size: 14px !important;
  font-weight: 700 !important;
}
body[data-kn-page="home"] .hero-search-control {
  display: grid !important;
  grid-template-columns: 24px minmax(0,1fr) auto !important;
  align-items: center !important;
  gap: 10px !important;
  min-height: 58px !important;
  padding: 6px 7px 6px 17px !important;
  background: #FFFFFF !important;
  border: 1px solid #C7D2DF !important;
  border-radius: 8px !important;
  box-shadow: 0 12px 30px rgba(31,41,55,.09) !important;
}
body[data-kn-page="home"] .hero-search-control:focus-within {
  border-color: #0EA5E9 !important;
  box-shadow: 0 0 0 4px rgba(14,165,233,.14),0 12px 30px rgba(31,41,55,.09) !important;
}
body[data-kn-page="home"] .hero-search-control svg {
  width: 22px !important;
  height: 22px !important;
  fill: none !important;
  stroke: #64748B !important;
  stroke-width: 1.8 !important;
  stroke-linecap: round !important;
}
body[data-kn-page="home"] .hero-search-control input {
  min-width: 0 !important;
  height: 44px !important;
  padding: 0 !important;
  color: #1F2937 !important;
  background: transparent !important;
  border: 0 !important;
  outline: 0 !important;
  font-size: 15px !important;
}
body[data-kn-page="home"] .hero-search-control input::placeholder { color: #7A8797 !important; }
body[data-kn-page="home"] .hero-search-submit {
  min-height: 44px !important;
  padding: 0 20px !important;
  color: #FFFFFF !important;
  background: #0EA5E9 !important;
  border: 1px solid #0EA5E9 !important;
  border-radius: 6px !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  cursor: pointer !important;
}
body[data-kn-page="home"] .hero-search-submit:hover { background: #0284C7 !important; border-color: #0284C7 !important; }
body[data-kn-page="home"] .hero-search-meta {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: space-between !important;
  gap: 6px 18px !important;
  margin: 8px 2px 0 !important;
  color: #697586 !important;
  font-size: 12px !important;
}
/* KEYNEIGHBOR_INTENT_SEARCH_US_INDIA_V2 */
body[data-kn-page="home"] .hero-search-ideas {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 7px !important;
  margin: 10px 0 0 !important;
}
body[data-kn-page="home"] .hero-search-ideas button {
  min-height: 32px !important;
  padding: 5px 11px !important;
  color: #334155 !important;
  background: #F8FAFC !important;
  border: 1px solid #D8E1EA !important;
  border-radius: 999px !important;
  font: inherit !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  cursor: pointer !important;
}
body[data-kn-page="home"] .hero-search-ideas button:hover,
body[data-kn-page="home"] .hero-search-ideas button:focus-visible {
  color: #075985 !important;
  background: #EAF7FE !important;
  border-color: #38BDF8 !important;
  outline: none !important;
}
body[data-kn-page="home"] .hero-search-status { color: #0369A1 !important; font-weight: 700 !important; }
body[data-kn-page="home"] .hero .cta-row { margin: 0 !important; }
body[data-kn-page="home"] .route-bar { margin: 28px 0 40px !important; }
body[data-kn-page="home"] .section { padding-block: 38px !important; }
body[data-kn-page="home"] .mission-grid { margin-bottom: 40px !important; }
body[data-kn-page="home"] .section-head { margin-bottom: 28px !important; }
body[data-kn-page="home"] .cat-chip.search-hidden { display: none !important; }
body[data-kn-page="home"] #categories { scroll-margin-top: 24px !important; }
body[data-kn-page="home"] .search-custom {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 18px !important;
  margin-top: 18px !important;
  padding: 18px 20px !important;
  background: #F0F9FF !important;
  border: 1px solid #BAE6FD !important;
  border-radius: 10px !important;
}
body[data-kn-page="home"] .search-custom[hidden] { display: none !important; }
body[data-kn-page="home"] .search-custom div { display: grid !important; gap: 3px !important; }
body[data-kn-page="home"] .search-custom strong { color: #0C4A6E !important; }
body[data-kn-page="home"] .search-custom span { color: #475569 !important; font-size: 13px !important; }

@media (max-width:760px) {
  html[data-theme="crosswalk"] body[data-kn-page="home"] .hero {
    padding-top: 42px !important;
    padding-bottom: 42px !important;
  }
  html[data-theme="crosswalk"] body[data-kn-page="home"] .hero h1 {
    max-width: 13ch !important;
    font-size: clamp(34px,9.8vw,46px) !important;
  }
  body[data-kn-page="home"] .hero-search { width: 100% !important; }
  body[data-kn-page="home"] .route-bar { margin-top: 22px !important; margin-bottom: 30px !important; }
  body[data-kn-page="home"] .section { padding-block: 32px !important; }
}
@media (max-width:520px) {
  body[data-kn-page="home"] .hero-search-control {
    grid-template-columns: 22px minmax(0,1fr) !important;
    padding: 8px 10px 8px 14px !important;
  }
  body[data-kn-page="home"] .hero-search-submit {
    grid-column: 1 / -1 !important;
    width: 100% !important;
  }
  body[data-kn-page="home"] .hero-search-meta > :first-child { display: none !important; }
  body[data-kn-page="home"] .hero-search-ideas { gap: 6px !important; }
  body[data-kn-page="home"] .hero-search-ideas button { flex: 1 1 auto !important; }
  body[data-kn-page="home"] .search-custom { align-items: stretch !important; flex-direction: column !important; }
  body[data-kn-page="home"] .search-custom .btn-primary { text-align: center !important; }
  body[data-kn-page="home"] .hero .cta-row { gap: 9px !important; }
  body[data-kn-page="home"] .hero .cta-row > * { flex: 1 1 130px !important; }
}
