/* Keller bright kitchen editorial treatment; site-scoped. */
.home .kny-hero__scrim { background: none; }
.home .kny-wwl__overlay,
.home .kny-podcast__ep-vignette,
.home .kny-podcast__ep:hover .kny-podcast__ep-vignette { background: none; }
.home .kny-wwl__img-label { background: rgba(29,27,25,.72); padding: 1rem 1.25rem; }
.home .kny-wwl__img-label { right: auto; width: max-content; max-width: calc(100% - 2rem); }
.home .kny-listing--small .kny-listing__body { display: flex; flex-direction: column; gap: .35rem; }
.home .kny-listing--small .kny-listing__title,
.home .kny-listing--small .kny-listing__location,
.home .kny-listing--small .kny-listing__price { margin: 0; line-height: 1.3; }
.home .kny-hero__copy { color: #231f1c; }
/* Hero headline + search sit on a busy, bright photo: give each its own solid
   warm-white backing. Never rely on text-shadow halos for legibility; the
   rendered-contrast QA check (tools/qa/visual/lib/rendered-contrast.mjs) measures
   with shadows removed. 2026-10-09: the transparent hairline search shipped in
   !518 measured 1.74:1 on mobile. */
.home .kny-hero__title { color: #231f1c; max-width: none; width: fit-content; padding: .5rem 1rem .625rem; margin-left: -1rem; background: rgba(250,248,244,.84); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); text-shadow: none; }
.home .kny-hero__search { width: min(34rem, calc(100% - 3rem)); padding: .375rem .375rem .375rem 1.125rem; background: rgba(250,248,244,.95); border: 1px solid rgba(35,31,28,.22); border-radius: 999px; color: #181512; box-shadow: 0 10px 30px rgba(35,31,28,.18); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); }
.home .kny-hero__search:focus-within { background: #fbfaf7; border-color: #231f1c; box-shadow: 0 10px 30px rgba(35,31,28,.24); }
.home .kny-hero__search-input { color: #181512; font-weight: 500; font-size: 1.0625rem; text-shadow: none; }
.home .kny-hero__search-input::placeholder { color: #5a5249; font-weight: 400; text-shadow: none; opacity: 1; }
.home .kny-hero__search-input:focus-visible { box-shadow: none; outline: none; }
.home .kny-hero__search-btn { color: #fff; background: #231f1c; border: 0; border-radius: 999px; filter: none; }
.home .kny-hero__search-btn:hover, .home .kny-hero__search-btn:focus-visible { background: #000; color: #fff; border-color: #000; outline: 2px solid #231f1c; outline-offset: 2px; }
@media (max-width: 767px) {
  .home .kny-hero__photo-bg { background-position: 45% center !important; }
  .home .kny-hero__title { max-width: 100%; font-size: clamp(2rem, 8vw, 2.75rem); padding: .5rem .875rem .625rem; margin-left: -.875rem; }
  .home .kny-hero__search { width: calc(100% - 3rem); padding-left: .875rem; }
  .home .kny-hero__search-input, .home .kny-hero__search-input::placeholder { font-size: .9375rem; }
}
@media (max-width: 380px) {
  .home .kny-hero__search { width: calc(100% - 2rem); padding-left: .75rem; }
  .home .kny-hero__search-input, .home .kny-hero__search-input::placeholder { font-size: .8125rem; letter-spacing: 0; }
}
.home .kny-hero .kny-header:not(.is-fixed) .kny-nav__link,
.home .kny-hero .kny-header:not(.is-fixed) .kny-wordmark,
.home .kny-hero .kny-header:not(.is-fixed) .kny-menu-toggle { color: #231f1c; }
.home .kny-hero__search-rule { display: none; }
.home .kny-hero__search-rule-fill { background: #6f5f4b; }
.home .kny-hero__search-suggestions { background: rgba(255,255,255,.98); border-color: rgba(43,37,32,.25); }
.home .kny-hero__search-suggestions a { color: #231f1c; }
.home .kny-hero__search-suggestions-label { color: #6c645b; }
/* Desktop hero nav links sat directly on the photo (CONTACT measured 3.43:1, min 1.62:1 over the
   brass pendant lamp). Same warm-white translucent plate as the hero title; only while the header
   is not the fixed white bar. Nav links are display:none below 1024px. */
@media (min-width: 1024px) {
  .home .kny-hero .kny-header:not(.is-fixed) .kny-nav__link { padding: .4rem .8rem; background: rgba(250,248,244,.9); backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px); border-radius: 999px; }
}
