/* Nidino 2026 – Mini-Kita finder + profile (mobile-first). Scoped to html.nd26. */
.nd26 {
  --canvas: #FBF7F1; --surface: #FFFFFF; --ink: #163A35; --ink-soft: #4A6862; --accent: #245953;
  --mint: #86C8BC; --mint-soft: #E2F2EE; --peach: #FFD3B0; --peach-soft: #FFEEE1; --deep: #1C4842;
  --hair: rgba(22, 58, 53, .12); --r: 22px;
  --display: "Outfit", system-ui, sans-serif; --text: "Figtree", system-ui, sans-serif;
  --e1: 0 1px 2px rgba(22,58,53,.06), 0 4px 14px -6px rgba(22,58,53,.18);
  --e2: 0 2px 4px rgba(22,58,53,.06), 0 16px 36px -14px rgba(22,58,53,.32);
  scroll-behavior: auto;
}
/* hide the legacy Webflow page, keep only our root (+ chat widget) */
.nd26 body > *:not(#nd-root):not(script):not(style):not(link):not(noscript):not([id*="chatbase"]):not([class*="chatbase"]) { display: none !important; }
.nd26 body { margin: 0; background: var(--canvas) !important; color: var(--ink); overflow-x: clip; }
.nd26:not(.nd-ready) body { visibility: hidden; }
#nd-root { font-family: var(--text); font-size: 16px; line-height: 1.5; color: var(--ink); -webkit-font-smoothing: antialiased; }
#nd-root *, #nd-root *::before, #nd-root *::after { box-sizing: border-box; }
#nd-root h1, #nd-root h2, #nd-root h3, #nd-root h4 { font-family: var(--display); font-weight: 600; letter-spacing: -.015em; margin: 0; color: var(--ink); line-height: 1.1; }
#nd-root p { margin: 0; }
#nd-root :is(h1,h2,h3,h4,p,span,a,b,strong,small,button,li,label,dd,em) { text-transform: none; }
#nd-root a { color: inherit; font-family: inherit; }
#nd-root button { font-family: inherit; }
#nd-root ul, #nd-root ol { list-style: none; margin: 0; padding: 0; row-gap: normal; display: block; }
#nd-root li { background-image: none; }
#nd-root svg { width: 18px; height: 18px; flex: none; }
#nd-root :focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; border-radius: 10px; }
.nd-sr { position: absolute !important; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.nd-wrap { width: min(100% - 32px, 1240px); margin-inline: auto; }

/* bar */
.nd-bar { position: sticky; top: 0; z-index: 40; background: color-mix(in oklab, var(--canvas) 90%, transparent); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); border-bottom: 1px solid var(--hair); }
.nd-bar .nd-wrap { display: flex; align-items: center; justify-content: space-between; height: 58px; gap: 1rem; }
.nd-bar__logo img { display: block; height: 26px; width: auto; }
.nd-bar__link { display: inline-flex; align-items: center; gap: .35rem; font-weight: 600; font-size: .92rem; text-decoration: none; color: var(--ink-soft) !important; }

/* buttons, chips, badges */
.nd-btn { display: inline-flex; align-items: center; justify-content: center; gap: .5rem; min-height: 48px; padding: .8rem 1.3rem; border: 0; border-radius: 999px; font-weight: 700; font-size: 1rem; text-decoration: none; cursor: pointer; transition: transform .16s, box-shadow .16s, background-color .16s; }
.nd-btn--primary { background: var(--accent); color: #fff !important; box-shadow: var(--e1); }
.nd-btn--primary:hover { transform: translateY(-1px); box-shadow: var(--e2); }
.nd-btn--soft { background: var(--peach); color: #3B2414 !important; }
.nd-btn--ghost { background: transparent; color: var(--ink) !important; box-shadow: inset 0 0 0 1.5px rgba(22,58,53,.3); }
.nd-chip { flex: none; display: inline-flex; align-items: center; gap: .35rem; min-height: 40px; padding: .45rem .95rem; border-radius: 999px; border: 0; background: var(--surface); box-shadow: inset 0 0 0 1px var(--hair); font-size: .92rem; font-weight: 600; color: var(--ink); cursor: pointer; white-space: nowrap; transition: background-color .15s, box-shadow .15s; }
.nd-chip[aria-pressed="true"] { background: var(--accent); color: #fff; box-shadow: none; }
.nd-chip svg { width: 15px; height: 15px; }
.nd-badge { display: inline-flex; align-items: center; gap: .3rem; padding: .18rem .55rem; border-radius: 999px; font-size: .74rem; font-weight: 700; letter-spacing: .01em; white-space: nowrap; }
.nd-badge--free { background: #DDF2E6; color: #1D6B45; }
.nd-badge--free::before { content: ""; width: 7px; height: 7px; border-radius: 50%; background: #2E9A62; }
.nd-badge--wait { background: #F1EEE8; color: var(--ink-soft); }
.nd-badge--subv { background: var(--peach-soft); color: #7A4A22; }
.nd-badge--soft { background: var(--mint-soft); color: #1F4B45; }

/* hero + search */
.nd-hero { padding: 1.4rem 0 1rem; }
.nd-hero h1 { font-size: clamp(2rem, 8vw, 3.4rem); line-height: 1.02; }
.nd-hero h1 em { font-style: normal; color: var(--accent); }
.nd-hero p { margin-top: .5rem !important; color: var(--ink-soft); font-size: 1.02rem; }
.nd-search { position: relative; margin-top: 1rem; max-width: 640px; }
.nd-search__field { display: flex; align-items: center; gap: .5rem; height: 58px; padding: 0 .4rem 0 1rem; background: var(--surface); border-radius: 18px; box-shadow: var(--e1), inset 0 0 0 1.5px var(--hair); transition: box-shadow .15s; }
.nd-search__field:focus-within { box-shadow: var(--e2), inset 0 0 0 2px var(--accent); }
.nd-search__field > svg { color: var(--accent); }
.nd-search input { flex: 1; min-width: 0; height: 100%; border: 0; outline: 0; background: transparent; font: inherit; font-size: 1.05rem; color: var(--ink); }
.nd-search input::placeholder { color: #8BA19C; }
.nd-locate { flex: none; display: inline-flex; align-items: center; gap: .35rem; height: 44px; padding: 0 .85rem; border: 0; border-radius: 13px; background: var(--mint-soft); color: #1F4B45; font-weight: 700; font-size: .88rem; cursor: pointer; }
.nd-locate span { display: none; }
@media (min-width: 480px) { .nd-locate span { display: inline; } }
.nd-suggest { position: absolute; z-index: 60; left: 0; right: 0; top: calc(100% + 6px); padding: .35rem !important; background: var(--surface); border-radius: 16px; box-shadow: var(--e2), inset 0 0 0 1px var(--hair); }
.nd-suggest[hidden] { display: none !important; }
.nd-suggest li { padding: .7rem .8rem; border-radius: 10px; cursor: pointer; font-weight: 600; display: flex; justify-content: space-between; gap: .6rem; }
.nd-suggest li small { color: var(--ink-soft); font-weight: 500; }
.nd-suggest li[aria-selected="true"], .nd-suggest li:hover { background: var(--mint-soft); }

/* toolbar */
.nd-tools { position: sticky; top: 58px; z-index: 30; background: var(--canvas); padding: .55rem 0; border-bottom: 1px solid transparent; transition: border-color .2s; }
.nd-tools.is-stuck { border-bottom-color: var(--hair); }
.nd-chips { display: flex; gap: .45rem; overflow-x: auto; scrollbar-width: none; padding: 2px; margin: -2px; }
.nd-chips::-webkit-scrollbar { display: none; }
.nd-days { display: flex; gap: .35rem; flex-wrap: wrap; margin-top: .5rem; padding: .6rem; background: var(--surface); border-radius: 16px; box-shadow: inset 0 0 0 1px var(--hair); }
.nd-days[hidden] { display: none; }
.nd-days p { width: 100%; font-size: .82rem; color: var(--ink-soft); margin-bottom: .1rem !important; }
.nd-days .nd-chip { min-width: 46px; justify-content: center; box-shadow: inset 0 0 0 1px var(--hair); }

/* layout */
.nd-layout { display: block; padding-bottom: 6rem; }
.nd-head { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: .3rem 1rem; margin: 1rem 0 .7rem; }
.nd-head h2 { font-size: 1.15rem; font-family: var(--text) !important; font-weight: 600 !important; letter-spacing: 0 !important; }
.nd-head h2 b { font-family: var(--display); font-weight: 700; }
.nd-reset { border: 0; background: none; color: var(--accent); font-weight: 700; font-size: .9rem; cursor: pointer; padding: .3rem 0; text-decoration: underline; text-underline-offset: 3px; }
.nd-note { margin-bottom: .8rem; padding: .9rem 1rem; border-radius: 16px; background: var(--peach-soft); color: #5B3A1E; font-size: .95rem; }

/* cards */
.nd-list { display: grid; gap: .7rem; }
.nd-card { position: relative; display: grid; grid-template-columns: 64px 1fr; gap: .85rem; align-items: start; padding: .95rem; border-radius: var(--r); background: var(--surface); box-shadow: inset 0 0 0 1px var(--hair); text-decoration: none; color: var(--ink); transition: box-shadow .16s, transform .16s; }
.nd-card:hover, .nd-card.is-hot { box-shadow: var(--e2), inset 0 0 0 1.5px var(--mint); transform: translateY(-1px); }
.nd-card__img { width: 64px; height: 64px; border-radius: 50%; overflow: hidden; background: var(--mint-soft); box-shadow: 0 0 0 3px var(--peach); margin: 3px; }
.nd-card__img img { width: 100%; height: 100%; object-fit: cover; display: block; }
.nd-card__body { display: grid; gap: .38rem; align-content: start; min-width: 0; }
.nd-card__top { display: flex; align-items: flex-start; justify-content: space-between; gap: .5rem; }
.nd-card__top strong { font-family: var(--display); font-size: 1.14rem; font-weight: 600; line-height: 1.15; }
.nd-card__place { display: flex; align-items: center; gap: .3rem; font-size: .88rem; color: var(--ink-soft); }
.nd-card__place svg { width: 14px; height: 14px; color: var(--accent); }
.nd-card__place b { color: var(--ink); font-weight: 700; }
.nd-card__tag { font-size: .88rem; color: var(--ink-soft); font-style: italic; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.nd-dayrow { display: flex; gap: 3px; margin-top: .1rem; }
.nd-dayrow span { width: 27px; height: 22px; border-radius: 7px; display: grid; place-items: center; font-size: .68rem; font-weight: 700; background: #F1EEE8; color: #A5B3AF; }
.nd-dayrow span.on { background: var(--mint-soft); color: #1F4B45; }
.nd-card__meta { display: flex; flex-wrap: wrap; gap: .25rem .45rem; font-size: .84rem; color: var(--ink-soft); }
.nd-card__meta > span { white-space: nowrap; }
.nd-card__meta > span + span::before { content: "·"; margin-right: .45rem; color: #A5B3AF; }
.nd-card__meta b { color: var(--ink); }
.nd-card__badges { display: flex; flex-wrap: wrap; gap: .3rem; }
@media (min-width: 560px) { .nd-card { grid-template-columns: 76px 1fr; } .nd-card__img { width: 76px; height: 76px; } }

/* concierge */
.nd-concierge { margin-top: 1rem; padding: 1.3rem; border-radius: var(--r); background: var(--deep); color: #fff; display: grid; gap: .7rem; }
.nd-concierge h3 { color: #fff !important; font-size: 1.35rem; }
.nd-concierge > p { color: rgba(255,255,255,.8); }
.nd-concierge--top { margin: 0 0 1rem; }

/* webflow forms restyled (waitlist + profile request) */
.nd-form .w-form, .nd-form form { margin: 0 !important; }
.nd-form form { display: grid !important; gap: .6rem; grid-template-columns: 1fr; }
.nd-form label { display: block; margin: 0 0 .25rem; font-size: .85rem; font-weight: 600; font-family: var(--text); color: inherit; opacity: .9; }
.nd-form input.w-input, .nd-form select, .nd-form textarea { width: 100%; height: 50px; margin: 0; padding: .6rem .9rem; border-radius: 14px; border: 0; background: #fff; box-shadow: inset 0 0 0 1.5px var(--hair); font: inherit; font-size: 1rem; color: var(--ink); }
.nd-form select { appearance: auto; }
.nd-form input.w-input:focus, .nd-form select:focus { outline: 0; box-shadow: inset 0 0 0 2px var(--accent); }
.nd-form input[type="submit"], .nd-form .w-button { width: 100%; min-height: 52px; margin-top: .3rem; border: 0; border-radius: 999px; background: var(--peach); color: #3B2414; font: inherit; font-weight: 700; font-size: 1.02rem; cursor: pointer; }
.nd-form .w-form-done { padding: 1rem; border-radius: 14px; background: var(--mint-soft); color: #1F4B45; text-align: left; }
.nd-form .w-form-fail { padding: .8rem 1rem; border-radius: 12px; background: #FDE2E0; color: #8A2A22; }
.nd-concierge.nd-form label { color: #fff; }
@media (min-width: 640px) { .nd-concierge.nd-form form { grid-template-columns: 1fr 1fr; } .nd-concierge.nd-form form > *:last-child, .nd-concierge.nd-form form input[type="submit"] { grid-column: 1 / -1; } }

/* map: mobile overlay, desktop split */
.nd-mapbtn { position: fixed; z-index: 45; left: 50%; bottom: max(18px, env(safe-area-inset-bottom)); transform: translateX(-50%); display: inline-flex; align-items: center; gap: .45rem; height: 50px; padding: 0 1.3rem; border: 0; border-radius: 999px; background: var(--ink); color: #fff; font-weight: 700; font-size: .98rem; box-shadow: 0 12px 28px -10px rgba(0,0,0,.5); cursor: pointer; }
.nd-map { position: fixed; inset: 0; z-index: 70; background: var(--mint-soft); display: none; }
.nd-map.is-open { display: block; }
.nd-map__canvas { position: absolute; inset: 0; }
.nd-map__close { position: absolute; z-index: 500; top: max(14px, env(safe-area-inset-top)); left: 14px; display: inline-flex; align-items: center; gap: .35rem; height: 44px; padding: 0 1rem; border: 0; border-radius: 999px; background: #fff; color: var(--ink); font-weight: 700; box-shadow: var(--e2); cursor: pointer; }
.nd-map__peek { position: absolute; z-index: 500; left: 12px; right: 12px; bottom: max(14px, env(safe-area-inset-bottom)); }
.nd-map__peek:empty { display: none; }
.nd-map__peek .nd-card { box-shadow: var(--e2); }
.nd-pin { width: 44px; height: 44px; border-radius: 50%; border: 3px solid var(--accent); background: #fff center/cover no-repeat; box-shadow: 0 6px 14px -4px rgba(0,0,0,.4); transition: transform .15s; }
.nd-pin.wait { border-color: #A5B3AF; }
.nd-pin.is-hot { transform: scale(1.25); z-index: 1000 !important; }
.nd-me { width: 18px; height: 18px; border-radius: 50%; background: #2F6FEB; border: 3px solid #fff; box-shadow: 0 0 0 6px rgba(47,111,235,.22); }
.nd26 .leaflet-container { font-family: var(--text); }
@media (min-width: 1024px) {
  .nd-layout { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr); gap: 1.5rem; align-items: start; }
  .nd-mapbtn { display: none; }
  .nd-map { display: block; position: sticky; top: 132px; height: calc(100vh - 150px); border-radius: var(--r); overflow: hidden; box-shadow: inset 0 0 0 1px var(--hair); margin-top: 1rem; }
  .nd-map__close, .nd-map__peek { display: none; }
}

/* ---------- profile ---------- */
.nd-p { padding-bottom: 7rem; }
.nd-gallery { display: flex; gap: .5rem; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; margin: 0 -16px; padding: 0 16px; }
.nd-gallery::-webkit-scrollbar { display: none; }
.nd-gallery img { flex: 0 0 86%; height: 260px; object-fit: cover; border-radius: 20px; scroll-snap-align: center; background: var(--mint-soft); }
.nd-gallery-count { margin-top: .4rem !important; font-size: .8rem; color: var(--ink-soft); text-align: right; }
@media (min-width: 760px) { .nd-gallery { display: grid; grid-template-columns: 2fr 1fr 1fr; grid-auto-rows: 170px; margin: 0; padding: 0; overflow: visible; } .nd-gallery img { height: 100%; width: 100%; } .nd-gallery img:first-child { grid-row: span 2; } .nd-gallery img:nth-child(n+6) { display: none; } }
.nd-p__head { display: grid; grid-template-columns: 72px 1fr; gap: .9rem; align-items: center; margin-top: 1.1rem; }
.nd-p__avatar { width: 72px; height: 72px; border-radius: 50%; object-fit: cover; box-shadow: 0 0 0 4px var(--peach); }
.nd-p__head h1 { font-size: clamp(1.7rem, 6vw, 2.6rem); }
.nd-p__place { display: flex; flex-wrap: wrap; align-items: center; gap: .35rem .6rem; margin-top: .3rem !important; color: var(--ink-soft); font-size: .95rem; }
.nd-p__traits { display: flex; flex-wrap: wrap; gap: .4rem; margin-top: .9rem; }
.nd-p__grid { display: grid; gap: 1rem; margin-top: 1.2rem; }
@media (min-width: 1024px) { .nd-p__grid { grid-template-columns: minmax(0, 1fr) 380px; gap: 2rem; align-items: start; } .nd-p__side { position: sticky; top: 76px; } }
.nd-facts { display: grid; grid-template-columns: 1fr 1fr; gap: .6rem; }
.nd-fact { padding: .9rem; border-radius: 18px; background: var(--surface); box-shadow: inset 0 0 0 1px var(--hair); display: grid; gap: .3rem; align-content: start; }
.nd-fact dt { display: flex; align-items: center; gap: .4rem; font-size: .76rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: var(--ink-soft); }
.nd-fact dt svg { width: 16px; height: 16px; color: #C77A3A; }
.nd-fact dd { margin: 0; font-weight: 600; line-height: 1.35; }
.nd-fact dd small { display: block; font-weight: 500; color: var(--ink-soft); font-size: .84rem; }
.nd-fact a { color: var(--accent) !important; font-size: .84rem; font-weight: 700; }
.nd-block { padding: 1.2rem; border-radius: var(--r); background: var(--surface); box-shadow: inset 0 0 0 1px var(--hair); display: grid; gap: .7rem; }
.nd-block h2 { font-size: 1.3rem; }
.nd-block .rte, .nd-block .nd-rich { color: var(--ink-soft); font-size: 1rem; line-height: 1.6; }
.nd-block .nd-rich p + p { margin-top: .7rem !important; }
.nd-block.is-clamped .nd-rich { max-height: 9.6em; overflow: hidden; -webkit-mask-image: linear-gradient(#000 60%, transparent); mask-image: linear-gradient(#000 60%, transparent); }
.nd-more { justify-self: start; border: 0; background: none; padding: 0; color: var(--accent); font-weight: 700; cursor: pointer; }
.nd-hl { display: grid; gap: .6rem; }
.nd-hl div { padding: .8rem .9rem; border-radius: 16px; background: var(--mint-soft); }
.nd-hl b { display: block; font-family: var(--display); font-weight: 600; }
.nd-hl span { color: var(--ink-soft); font-size: .94rem; }
.nd-trust { display: grid; gap: .5rem; }
.nd-trust li { display: flex; gap: .6rem; align-items: flex-start; font-size: .95rem; color: var(--ink-soft); }
.nd-trust li b { color: var(--ink); }
.nd-trust svg { color: #2E9A62; margin-top: .15rem; }
.nd-req { padding: 1.2rem; border-radius: var(--r); background: var(--deep); color: #fff; display: grid; gap: .6rem; scroll-margin-top: 80px; }
.nd-req h2 { color: #fff !important; font-size: 1.35rem; }
.nd-req > p { color: rgba(255,255,255,.78); font-size: .95rem; }
.nd-req label { color: #fff !important; }
.nd-sticky { position: fixed; z-index: 45; left: 0; right: 0; bottom: 0; padding: .7rem 16px max(.7rem, env(safe-area-inset-bottom)); background: color-mix(in oklab, var(--canvas) 92%, transparent); backdrop-filter: blur(10px); -webkit-backdrop-filter: blur(10px); border-top: 1px solid var(--hair); display: flex; align-items: center; gap: .8rem; transition: transform .25s; }
.nd-sticky.is-hidden { transform: translateY(110%); }
.nd-sticky__info { flex: 1; min-width: 0; font-size: .86rem; color: var(--ink-soft); line-height: 1.3; }
.nd-sticky__info b { display: block; color: var(--ink); font-size: .98rem; }
@media (min-width: 1024px) { .nd-sticky { display: none; } }
@media (prefers-reduced-motion: reduce) { .nd-card, .nd-btn, .nd-pin, .nd-sticky { transition: none; } }

.nd-search input, .nd-search input:focus { outline: 0 !important; border: 0 !important; box-shadow: none !important; padding: 0 !important; margin: 0 !important; -webkit-appearance: none; appearance: none; }
.nd-search input::-webkit-search-cancel-button { -webkit-appearance: none; }
.nd-divider { margin: .8rem 0 .1rem; font-size: .78rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase !important; color: var(--ink-soft); }
.nd-map .leaflet-tile-pane { filter: saturate(.55) contrast(.85) brightness(1.08); }
.nd-map .leaflet-control-attribution { font-size: 10px; background: rgba(255,255,255,.75); }

/* v2: slimmer cards + reuse Nocodeflow map */
.nd-card { grid-template-columns: 56px 1fr; gap: .8rem; align-items: center; padding: .85rem .95rem; }
.nd-card__img { width: 56px; height: 56px; }
@media (min-width: 560px) { .nd-card { grid-template-columns: 60px 1fr; } .nd-card__img { width: 60px; height: 60px; } }
.nd-card__body { gap: .2rem; }
.nd-card__top strong { font-size: 1.08rem; }
.nd-card__line { font-size: .88rem; font-weight: 600; color: var(--ink); }
.nd-list { gap: .55rem; }
#nd-root [ncf="map"] { position: absolute !important; inset: 0 !important; width: 100% !important; height: 100% !important; margin: 0 !important; border-radius: 0 !important; display: block !important; }
.nd-map .mapboxgl-marker.nd-off { display: none !important; }
.nd-map .mapboxgl-marker > * { transition: transform .15s; }
.nd-map .mapboxgl-marker.nd-hot > * { transform: scale(1.3); }
.nd-map .mapboxgl-popup { display: none !important; }
.nd-map .mapboxgl-ctrl-bottom-right, .nd-map .mapboxgl-ctrl-bottom-left { opacity: .8; }
@media (min-width: 1024px) { .nd-layout { grid-template-columns: minmax(0, 1fr) minmax(0, 1.25fr); } .nd-map { top: 128px; height: calc(100vh - 146px); } }
#nd-root [ncf="map"] > .cru-ncf-map-filter, #nd-root .ncf-map-wrapper > .cru-ncf-map-items { display: none !important; }
#nd-root .ncf-map-wrapper { position: absolute !important; inset: 0 !important; display: block !important; width: 100% !important; height: 100% !important; margin: 0 !important; }
#nd-root .ncf-map-wrapper > :not(.cru-ncf-map-items) { position: absolute !important; inset: 0 !important; width: 100% !important; height: 100% !important; max-width: none !important; border-radius: 0 !important; }
.nd-fact a { display: block; margin-top: .15rem; }
.nd26 .nd-p ~ * #chatbase-bubble-button, .nd26 body:has(.nd-sticky) #chatbase-bubble-button { bottom: 86px !important; }
.nd26 body:has(.nd-sticky) [id*="chatbase-message"] { bottom: 150px !important; }
@media (min-width: 1024px) { .nd26 body:has(.nd-sticky) #chatbase-bubble-button { bottom: 20px !important; } }
.nd-sticky .nd-btn { flex: none; padding-inline: 1.1rem; }
@media (min-width: 760px) { .nd-gallery-count { display: none; } }

/* v5: notes, reviews, location map, sticky availability */
.nd-block--note { background: var(--peach-soft); box-shadow: none; }
.nd-block--note .nd-rich { color: #5B3A1E; font-size: .95rem; }
.nd-block--note a { color: #7A4A22 !important; font-weight: 700; }
.nd-block--review { background: var(--mint-soft); box-shadow: none; }
.nd-block--review .nd-rich { color: var(--ink); font-size: 1.02rem; }
.nd-block--review .nd-rich p:first-child::before { content: "«"; font-family: var(--display); font-size: 2.2rem; line-height: 0; vertical-align: -.35em; margin-right: .2rem; color: var(--mint); }
.nd-locmap { margin-top: .3rem; border-radius: 16px; overflow: hidden; box-shadow: inset 0 0 0 1px var(--hair); }
.nd-locmap #map { width: 100% !important; height: 220px !important; opacity: 1 !important; margin: 0 !important; }
.nd-fact__hint { margin-top: .3rem; color: #1D6B45 !important; font-weight: 600 !important; }
.nd-sticky__info b { display: flex; align-items: center; gap: .4rem; }
.nd-dot { width: 8px; height: 8px; border-radius: 50%; background: #2E9A62; flex: none; }
a.nd-badge { text-decoration: none; }

/* v6: compact map link instead of embedded map */
.nd-maplink { display: flex; align-items: center; gap: .7rem; margin-top: .6rem; padding: .75rem .9rem; border-radius: 14px; background: var(--mint-soft); color: var(--ink) !important; text-decoration: none !important; font-family: inherit !important; }
.nd-maplink svg { width: 22px; height: 22px; flex: none; color: #1D6B45; }
.nd-maplink span { display: flex; flex-direction: column; font-size: .88rem; color: #1D6B45; line-height: 1.3; }
.nd-maplink b { color: var(--ink); font-size: .95rem; }
.nd-maplink i { margin-left: auto; font-style: normal; color: #1D6B45; }
.nd-maplink:hover { filter: brightness(.97); }

/* v7: FAQ link under the request form */
.nd-req__faq { display: block; margin-top: .2rem; font-size: .88rem; line-height: 1.4; color: rgba(255,255,255,.75) !important; text-decoration: none !important; font-family: inherit !important; }
.nd-req__faq b { color: var(--peach); white-space: nowrap; }
.nd-req__faq:hover b { text-decoration: underline; }
