/* River Core front-end: event cards, location filter, event details. Brand values come from theme.json vars. */
.river-events--cards { display: grid; gap: 1.5rem; grid-template-columns: repeat(auto-fit, minmax(min(100%, 14.5rem), 16.5rem)); justify-content: center; }  /* four across at wide width, the same size as message cards */
.river-card { background: #fff; color: #000; border-radius: var(--wp--custom--radius--card, 18px); overflow: hidden; box-shadow: 0 6px 22px rgba(0,0,0,.08); transition: transform .2s ease, box-shadow .2s ease; text-align: left; }
.river-card:hover, .river-card:focus-within { transform: translateY(-3px); box-shadow: 0 14px 34px rgba(0,0,0,.14); }
.river-card__link { display: flex; flex-direction: column; height: 100%; color: inherit !important; text-decoration: none !important; }
.river-card__link:focus-visible { outline: 3px solid var(--wp--preset--color--river-green); outline-offset: -3px; }
.river-card__art { position: relative; aspect-ratio: 16 / 9; overflow: hidden; background: var(--wp--preset--color--deep-water, #033); }
.river-card__art.is-contain::before { content: ""; position: absolute; inset: -20px; background: var(--river-art) center / cover; filter: blur(18px) brightness(.85); }
.river-card__img { position: relative; width: 100%; height: 100%; display: block; object-fit: cover; }
.river-card__art.is-contain .river-card__img { object-fit: contain; }
.river-card__art--none { background: var(--wp--preset--gradient--river, #38bba2); }
.river-card__body { padding: 1rem 1.2rem 1.25rem; display: flex; flex-direction: column; gap: .3rem; flex: 1; }
.river-card__eyebrow { margin: 0; font-size: .75rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--wp--preset--color--pine, #1d5d51); }
.river-card__title { font-size: 1.125rem; line-height: 1.25; margin: 0 0 .15rem; font-weight: 700; }
.river-card__meta { margin: 0; font-size: .9375rem; line-height: 1.4; color: #5c5c5c; }
.river-card__meta.is-primary { color: #2b2b2b; font-weight: 500; }
.river-events--list .river-card { box-shadow: none; border-radius: 0; border-bottom: 1px solid var(--wp--preset--color--light-gray, #eee); background: transparent; }
.river-events--list .river-card:hover { transform: none; }
.river-events--list .river-card__link { flex-direction: row; gap: 1rem; align-items: center; padding: .75rem 0; }
.river-events--list .river-card__art { width: 8rem; flex: none; border-radius: 10px; }
.river-events__empty { text-align: center; }
.river-location-filter { display: flex; gap: .6rem; align-items: center; justify-content: center; flex-wrap: wrap; font-weight: 700; }
/* Site dropdowns — ONE look for every filter control (Events "Show me", Messages Series / Speaker / Location and its
   search box): same height, border, font and the same chevron. Native arrows are switched off (appearance:none) and the
   Speaker type-ahead (an input + datalist) hides Chrome's datalist arrow, so every dropdown shows only this chevron. */
.river-location-filter select, .river-media-filters select, .river-media-filters input[type=search] { box-sizing: border-box; height: 2.75rem; font: inherit; font-size: 1rem; font-weight: 500; line-height: 1.25; padding: 0 .9rem; border-radius: var(--wp--custom--radius--button, 8px); border: 2px solid var(--wp--preset--color--sage, #93d3c5); background-color: #fff; color: #000; }
.river-location-filter select, .river-media-filters select, .river-media-filters input.river-typeahead-input { -webkit-appearance: none; appearance: none; padding-right: 2.5rem; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231d5d51' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: right .8rem center; background-size: 1rem; cursor: pointer; }
.river-media-filters input.river-typeahead-input { cursor: text; }
.river-media-filters input.river-typeahead-input::placeholder { color: #000; opacity: 1; }  /* reads like the other dropdowns' "All …" choice */
.river-media-filters input.river-typeahead-input::-webkit-calendar-picker-indicator { display: none !important; opacity: 0; }
.river-location-filter select:disabled, .river-media-filters select:disabled { opacity: .6; cursor: not-allowed; }
.river-event-details { background: var(--wp--preset--color--mist, #f8f8f8); border-radius: var(--wp--custom--radius--card, 18px); padding: 1.25rem 1.5rem; }
.river-event-details__facts { margin: 0 0 1rem; display: grid; gap: .6rem; }
.river-event-details__facts div { display: grid; grid-template-columns: 6.5rem 1fr; gap: .75rem; }
.river-event-details__facts dt { font-weight: 700; }
.river-event-details__facts dd { margin: 0; }
/* Messages browser */
.river-media-filters { display: flex; flex-wrap: wrap; gap: .6rem; justify-content: center; margin-bottom: 1.5rem; }
.river-media-filters select { min-width: 10rem; }
.river-media-filters input[type=search] { flex: 1 1 16rem; max-width: 26rem; }
.river-media-filters button { box-sizing: border-box; min-height: 2.75rem; padding: 0 1.4rem; }
.river-media-filters__clear { align-self: center; }
.river-media-grid { display: grid; gap: 1.5rem; grid-template-columns: repeat(auto-fill, minmax(min(100%, 15.5rem), 1fr)); }
.river-pager ul { list-style: none; display: flex; gap: .4rem; justify-content: center; padding: 0; margin-top: 2rem; flex-wrap: wrap; }
.river-pager a, .river-pager span { display: inline-block; padding: .45rem .8rem; border-radius: 6px; }
.river-pager .current { background: var(--wp--preset--color--river-green, #38bba2); color: #fff; }
/* Episode player */
.river-episode-player { display: grid; gap: 1rem; }
.river-video { position: relative; aspect-ratio: 16 / 9; border-radius: var(--wp--custom--radius--card, 18px); overflow: hidden; background: #000; }
.river-video iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.river-episode-art { width: 100%; height: auto; border-radius: var(--wp--custom--radius--card, 18px); }
.river-audio { background: var(--wp--preset--color--mist, #f8f8f8); border-radius: 14px; padding: .9rem 1.1rem; }
.river-audio__label { margin: 0 0 .4rem; font-weight: 700; }
.river-audio audio { width: 100%; }
/* Staff */
.river-staff { display: grid; gap: 2rem 1.25rem; grid-template-columns: repeat(auto-fill, minmax(min(100%, 13rem), 1fr)); text-align: center; }
.river-person__img { width: 9rem; height: 9rem; border-radius: 50%; object-fit: cover; display: block; margin: 0 auto .75rem; box-shadow: var(--wp--preset--shadow--soft, 0 4px 14px rgba(0,0,0,.12)); }
.river-person__img--none { background: var(--wp--preset--color--foam, #b8e1d9); }
.river-person__name { font-size: 1.125rem; margin: 0 0 .25rem; }
.river-person__role { margin: 0; font-size: .95rem; }
.river-person__email { margin: .25rem 0 0; font-size: .9rem; }
.river-card__art.is-banner { background: #fff; }
/* Detail pages (message, event): main column + a details card that stays in view */
.river-crumbs { font-size: .9375rem; margin-bottom: .5rem; }
.river-crumbs a { text-decoration: none; font-weight: 700; color: var(--wp--preset--color--pine); }
.river-crumbs a:hover { color: var(--wp--preset--color--river-green); }
@media (min-width: 782px) { .river-detail-aside > * { position: sticky; top: calc(var(--wp-admin--admin-bar--height, 0px) + 6rem); } }
.river-detail-actions { display: flex; flex-direction: column; gap: .6rem; margin-top: 1rem; }
.river-detail-actions .wp-block-button__link { text-align: center; width: 100%; box-sizing: border-box; }
.river-btn-primary { font-size: 1.125rem !important; padding-block: 1rem !important; }
.river-btn-outline { background: #fff !important; color: var(--wp--preset--color--pine) !important; border: 2px solid var(--wp--preset--color--sage) !important; }
.river-btn-outline:hover { border-color: var(--wp--preset--color--river-green) !important; color: var(--wp--preset--color--river-green) !important; }
.river-detail-links { display: flex; flex-direction: column; gap: .15rem; margin-top: 1rem; padding-top: 1rem; border-top: 1px solid rgba(0,0,0,.08); }
.river-detail-links a { font-weight: 700; text-decoration: none; padding: .4rem 0; color: var(--wp--preset--color--pine); }
.river-detail-links a::before { content: "+ "; color: var(--wp--preset--color--river-green); }
.river-detail-links a:hover { color: var(--wp--preset--color--river-green); }
.river-event-banner img { width: 100%; height: auto; aspect-ratio: auto !important; }
.river-speaker { display: flex; gap: .9rem; align-items: center; margin-bottom: 1rem; padding-bottom: 1rem; border-bottom: 1px solid rgba(0,0,0,.08); }
.river-speaker__img { width: 3.75rem; height: 3.75rem; border-radius: 50%; object-fit: cover; flex: none; display: block; }
.river-speaker__img--none { background: var(--wp--preset--color--foam); }
.river-speaker p { margin: 0; line-height: 1.3; }
.river-speaker__label { font-size: .75rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--wp--preset--color--muted); }
.river-speaker__name { font-weight: 700; font-size: 1.0625rem; }
.river-speaker__name a { text-decoration: none; color: inherit; }
.river-speaker__role { font-size: .9rem; color: #5c5c5c; }
.river-elsewhere { margin-top: 1.25rem; padding-top: 1rem; border-top: 1px solid rgba(0,0,0,.08); }
.river-elsewhere__label { margin: 0 0 .5rem; font-weight: 700; font-size: .9375rem; }
.river-elsewhere ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: .4rem; }
.river-elsewhere a { display: inline-block; padding: .35rem .8rem; border-radius: 999px; background: #fff; border: 1px solid var(--wp--preset--color--sage); text-decoration: none; font-size: .9rem; font-weight: 500; color: var(--wp--preset--color--pine); }
.river-elsewhere a:hover { border-color: var(--wp--preset--color--river-green); background: var(--wp--preset--color--river-green); color: #fff; }
.river-series-banner { margin: 0 0 1.5rem; }
.river-series-banner img { width: 100%; height: auto; border-radius: var(--wp--custom--radius--card, 18px); display: block; }
.river-event-details { padding: 1.5rem; }
/* Study-guide lesson navigation */
.river-guide-nav { display: grid; grid-template-columns: 1fr auto 1fr; gap: 1rem; align-items: stretch; margin: var(--wp--preset--spacing--50) auto var(--wp--preset--spacing--40) !important; padding: 0 var(--wp--preset--spacing--20); max-width: 1140px; }
.river-guide-nav__cell { display: flex; flex-direction: column; gap: .2rem; padding: 1rem 1.2rem; border-radius: 14px; background: var(--wp--preset--color--mist); text-decoration: none; color: inherit; }
a.river-guide-nav__cell:hover { background: var(--wp--preset--color--foam); }
.river-guide-nav__cell.is-next { text-align: right; }
.river-guide-nav__dir { font-size: .75rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; color: var(--wp--preset--color--pine); }
.river-guide-nav__title { font-weight: 700; line-height: 1.3; }
.river-guide-nav__toc { display: flex; flex-direction: column; justify-content: center; align-items: center; padding: .75rem 1.25rem; border-radius: 14px; border: 2px solid var(--wp--preset--color--sage); font-weight: 700; text-decoration: none; color: var(--wp--preset--color--pine); }
.river-guide-nav__toc span { font-size: .8rem; font-weight: 500; color: var(--wp--preset--color--muted); }
.river-guide-nav__toc:hover { border-color: var(--wp--preset--color--river-green); }
@media (max-width: 640px) { .river-guide-nav { grid-template-columns: 1fr 1fr; } .river-guide-nav__toc { grid-column: 1 / -1; grid-row: 1; flex-direction: row; gap: .5rem; } }
/* Podcast directory */
.river-pods { display: grid; gap: 1.5rem; }
.river-pod { display: grid; grid-template-columns: 11rem 1fr; gap: 1.5rem; align-items: start; background: #fff; color: #000; border-radius: var(--wp--custom--radius--card, 18px); padding: 1.25rem; box-shadow: 0 6px 22px rgba(0,0,0,.08); text-align: left; }
.river-pod__art { width: 100%; height: auto; aspect-ratio: 1; object-fit: cover; border-radius: 12px; display: block; }
.river-pod__art--none { background: var(--wp--preset--gradient--river); }
.river-pod__title { margin: 0 0 .35rem; font-size: 1.375rem; }
.river-pod__summary { margin: 0 0 1rem; color: #444; }
.river-pod__buttons { display: flex; flex-wrap: wrap; gap: .5rem; }
.river-pod__buttons .wp-block-button__link { font-size: .9375rem; padding: .6rem 1.1rem; cursor: pointer; border: 0; }
.river-pod__buttons .river-btn-outline { border: 2px solid var(--wp--preset--color--sage) !important; }
.river-pod__hint { font-size: .8125rem; color: #666; margin: .6rem 0 0; }
.river-pod__locs { margin-top: 1rem; padding-top: .9rem; border-top: 1px solid rgba(0,0,0,.08); }
.river-pod__locs p { margin: 0 0 .5rem; font-size: .9rem; font-weight: 700; }
.river-pod__locs ul { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: .4rem; }
.river-pod__loc { font: inherit; font-size: .875rem; padding: .35rem .8rem; border-radius: 999px; border: 1px solid var(--wp--preset--color--sage); background: #fff; color: var(--wp--preset--color--pine); cursor: pointer; }
.river-pod__loc:hover { background: var(--wp--preset--color--river-green); border-color: var(--wp--preset--color--river-green); color: #fff; }
@media (max-width: 600px) { .river-pod { grid-template-columns: 1fr; } .river-pod__art { max-width: 10rem; } }
/* Phones: card lists become compact rows (picture left, words right) so six events are one screen, not six */
@media (max-width: 600px) {
  .river-events--cards, .river-media-grid { gap: .75rem; }
  .river-events--cards .river-card__link, .river-media-grid .river-card__link { flex-direction: row; align-items: stretch; }
  .river-events--cards .river-card__art, .river-media-grid .river-card__art { width: 40%; flex: none; aspect-ratio: auto; min-height: 5.5rem; }
  .river-media-grid .river-card__art.is-banner { aspect-ratio: auto !important; background: #f3f3f3; display: flex; align-items: center; }
  .river-media-grid .river-card__art.is-banner .river-card__img { height: auto; }
  .river-events--cards .river-card__body, .river-media-grid .river-card__body { padding: .7rem .85rem; gap: .15rem; justify-content: center; }
  .river-card__title { font-size: 1rem; }
  .river-card__meta { font-size: .8125rem; }
  .river-card:hover { transform: none; }
}
@media (max-width: 600px) {
  .river-media-grid .river-card__link:has(.is-banner) { flex-direction: column; }
  .river-media-grid .river-card__link:has(.is-banner) .river-card__art { width: 100%; min-height: 0; }
  .river-media-grid .river-card__art.is-banner { display: block; background: #fff; }
  /* A wide event banner (1920×450) cropped into the row's small box became a sliver ("ENIO LUNCHEO"): show it whole
     across the top of the card instead. */
  .river-events--cards .river-card__link:has(.is-wide) { flex-direction: column; }
  .river-events--cards .river-card__art.is-wide { width: 100%; min-height: 0; aspect-ratio: var(--river-ratio); }
}
/* Staff: readable on any section colour */
.river-person__email a { color: inherit; text-decoration: underline; text-decoration-color: currentColor; text-underline-offset: 3px; word-break: break-word; opacity: .9; }
.river-person__email a:hover { opacity: 1; }
.river-person__role { opacity: .85; }
.river-person__name { margin-top: .25rem; }
.river-staff { gap: 2.25rem 1.25rem; }
.river-staff { display: flex; flex-wrap: wrap; justify-content: center; }
.river-staff > * { flex: 0 1 13.5rem; min-width: 0; }
.river-person__email { font-size: .8125rem; }
.river-person__email a { word-break: normal; overflow-wrap: anywhere; }
@media (max-width: 600px) { .river-staff > * { flex-basis: calc(50% - .75rem); } .river-person__img { width: 7rem; height: 7rem; } }
/* Hero slideshow */
.river-slideshow { position: relative; min-height: var(--river-ss-min, 88vh); display: flex; align-items: center; justify-content: center; overflow: hidden; background: var(--wp--preset--color--deep-water, #033); color: #fff; margin-block: 0 !important; }
.river-slideshow__slides { position: absolute; inset: 0; z-index: 0; }
.river-slide { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; opacity: 0; transition: opacity var(--river-ss-fade, 1.2s) ease-in-out; }
.river-slide.is-active { opacity: 1; z-index: 1; }
.river-slide.is-leaving { opacity: 1; z-index: 0; }  /* stays fully visible underneath while the new photo fades in on top */
/* the outgoing photo keeps zooming while it fades out (is-leaving), so it never snaps back to full size on screen */
.river-slideshow.has-zoom .river-slide.is-active, .river-slideshow.has-zoom .river-slide.is-leaving { animation: river-ss-zoom calc(var(--river-ss-interval, 6s) + 2.5s) ease-out both; }
@keyframes river-ss-zoom { from { transform: scale(1.0); } to { transform: scale(1.07); } }
.river-slideshow.is-paused .river-slide.is-active, .river-slideshow.is-paused .river-slide.is-leaving { animation-play-state: paused; }
@media (prefers-reduced-motion: reduce) { .river-slideshow .river-slide.is-active { animation: none !important; } .river-slide { transition: none; } }
.river-slideshow__dim { position: absolute; inset: 0; background: linear-gradient(rgba(0,0,0,calc(var(--river-ss-dim) + .1)), rgba(0,0,0,var(--river-ss-dim)) 45%, rgba(0,0,0,calc(var(--river-ss-dim) + .05))); pointer-events: none; }
.river-slideshow__inner { position: relative; z-index: 2; width: 100%; max-width: 1140px; padding: calc(110px + 2rem) var(--wp--preset--spacing--20, 1.25rem) 4rem; text-align: center; }
.river-slideshow__inner > * + * { margin-top: 1.25rem; }
.river-slideshow__inner h1, .river-slideshow__inner h2, .river-slideshow__inner p { color: #fff; text-shadow: 0 2px 18px rgba(0,0,0,.35); }
.river-slideshow__pause { position: absolute; z-index: 3; right: 1.25rem; bottom: 1.25rem; width: 2.75rem; height: 2.75rem; border-radius: 50%; border: 2px solid rgba(255,255,255,.7); background: rgba(0,0,0,.25); cursor: pointer; display: grid; place-items: center; padding: 0; }
.river-slideshow__pause:hover { background: rgba(0,0,0,.45); }
.river-slideshow__pause span { width: 12px; height: 14px; border-left: 4px solid #fff; border-right: 4px solid #fff; box-sizing: border-box; }
.river-slideshow.is-paused .river-slideshow__pause span { width: 0; height: 0; border-style: solid; border-width: 8px 0 8px 13px; border-color: transparent transparent transparent #fff; margin-left: 3px; }
@media (max-width: 781px) { .river-slideshow { min-height: min(var(--river-ss-min, 88vh), 640px); } .river-slideshow__inner { padding-top: calc(90px + 1.5rem); padding-bottom: 4.5rem; } }
/* Location finder (Locations page) */
.river-finder__search { display: grid; gap: .5rem; justify-items: center; margin-bottom: .5rem; }
.river-finder__label { font-weight: 700; font-size: 1.15rem; }
.river-finder__row { display: flex; flex-wrap: wrap; gap: .6rem; justify-content: center; width: 100%; }
.river-finder__row input { font: inherit; width: 9.5rem; padding: .7rem 1rem; border-radius: var(--wp--custom--radius--button, 8px); border: 2px solid var(--wp--preset--color--sage, #93d3c5); background: #fff; color: #000; text-align: center; letter-spacing: .08em; }
.river-finder__row input:focus { outline: 3px solid var(--wp--preset--color--river-green, #38bba2); outline-offset: 1px; }
.river-finder__row button { font: inherit; font-weight: 700; cursor: pointer; padding: .7rem 1.4rem; border-radius: var(--wp--custom--radius--button, 8px); }
.river-finder__geo { background: #fff; color: var(--wp--preset--color--pine, #1d5d51); border: 2px solid currentColor; display: inline-flex; align-items: center; gap: .5rem; }
.river-finder__geo:hover { background: var(--wp--preset--color--mist, #f6f8f7); }
.river-finder__geo-icon { width: 1rem; height: 1rem; border-radius: 50%; border: 2px solid currentColor; position: relative; }
.river-finder__geo-icon::after { content: ""; position: absolute; inset: 3px; border-radius: 50%; background: currentColor; }
.river-finder__status { text-align: center; min-height: 1.5em; margin: .25rem 0 1rem; font-weight: 500; }
.river-finder__body { display: grid; gap: 1.5rem; }
.river-finder.has-map .river-finder__body { grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr); align-items: start; }
.river-finder__map { order: 2; position: sticky; top: 100px; height: min(78vh, 680px); border-radius: var(--wp--custom--radius--card, 18px); overflow: hidden; box-shadow: 0 6px 22px rgba(0,0,0,.1); background: #e8eeec; z-index: 0; }
.river-finder__list { order: 1; list-style: none; margin: 0; padding: 0; display: grid; gap: .9rem; }
.river-loc { display: grid; grid-template-columns: 11rem 1fr; gap: 1rem; align-items: start; background: #fff; border-radius: 14px; padding: .75rem; box-shadow: 0 3px 14px rgba(0,0,0,.07); border: 2px solid transparent; transition: border-color .15s ease, box-shadow .15s ease; text-align: left; }
.river-loc.is-current { border-color: var(--wp--preset--color--sage, #93d3c5); }
.river-loc.is-nearest { border-color: var(--wp--preset--color--river-green, #38bba2); box-shadow: 0 8px 26px rgba(56,187,162,.25); }
.river-loc__photo { display: block; border-radius: 10px; overflow: hidden; aspect-ratio: 4 / 3; background: var(--wp--preset--gradient--river, #38bba2); }
.river-loc__img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .3s ease; }
.river-loc__photo:hover .river-loc__img { transform: scale(1.04); }
.river-loc__body > * { margin: 0; }
.river-loc__body > * + * { margin-top: .3rem; }
.river-loc__dist { font-size: .78rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--wp--preset--color--pine, #1d5d51); }
.river-loc__name { font-size: 1.2rem; line-height: 1.2; }
.river-loc__name a { color: inherit; text-decoration: none; }
.river-loc__name a:hover { color: var(--wp--preset--color--pine, #1d5d51); text-decoration: underline; }
.river-loc__times { font-weight: 700; font-size: .95rem; }
.river-loc__addr { font-size: .93rem; color: #4a4a4a; }
.river-loc__links { display: flex; flex-wrap: wrap; gap: .4rem 1rem; margin-top: .55rem !important; font-weight: 700; font-size: .93rem; }
.river-loc__links a { color: var(--wp--preset--color--pine, #1d5d51); }
.river-loc__visit { background: var(--wp--preset--color--river-green, #38bba2); color: #fff !important; text-decoration: none; padding: .35rem .85rem; border-radius: 6px; }
.river-loc__visit:hover { background: var(--wp--preset--color--pine, #1d5d51); }
.river-loc__dir { align-self: center; }
.river-pin { background: none; border: 0; }
.river-pin span { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 50% 50% 50% 0; transform: rotate(-45deg); background: var(--wp--preset--color--pine, #1d5d51); border: 3px solid #fff; box-shadow: 0 2px 8px rgba(0,0,0,.35); color: #fff; font: 700 14px/1 var(--wp--preset--font-family--gotham, sans-serif); transition: background .15s ease, transform .15s ease; }
.river-pin b { transform: rotate(45deg); font-weight: 700; }
.river-pin.is-current span { background: var(--wp--preset--color--river-green, #38bba2); transform: rotate(-45deg) scale(1.15); }
.leaflet-container { font: inherit; }
.leaflet-popup-content { font-size: .95rem; line-height: 1.45; }
.leaflet-popup-content a { color: var(--wp--preset--color--pine, #1d5d51); }
@media (max-width: 900px) {
  .river-finder.has-map .river-finder__body { grid-template-columns: 1fr; }
  .river-finder__map { order: 0; position: relative; top: 0; height: 300px; }
}
@media (max-width: 480px) { .river-loc { grid-template-columns: 7.5rem 1fr; gap: .75rem; } .river-loc__name { font-size: 1.05rem; } }
/* Share buttons (event pages) */
.river-share { margin-top: 1.25rem; background: var(--wp--preset--color--mist, #f6f8f7); border-radius: var(--wp--custom--radius--card, 18px); padding: 1rem 1.25rem 1.2rem; }
.river-share__heading { margin: 0 0 .6rem; font-weight: 700; }
.river-share__buttons { display: flex; flex-wrap: wrap; gap: .5rem; }
.river-share__btn { display: inline-flex; align-items: center; gap: .45rem; font: inherit; font-size: .9rem; font-weight: 700; padding: .5rem .85rem; border-radius: 999px; border: 2px solid var(--wp--preset--color--sage, #93d3c5); background: #fff; color: var(--wp--preset--color--pine, #1d5d51) !important; text-decoration: none !important; cursor: pointer; line-height: 1.2; }
.river-share__btn:hover { background: var(--wp--preset--color--pine, #1d5d51); border-color: var(--wp--preset--color--pine, #1d5d51); color: #fff !important; }
.river-share__native { background: var(--wp--preset--color--pine, #1d5d51); border-color: var(--wp--preset--color--pine, #1d5d51); color: #fff !important; }
.river-share__icon { width: 1rem; height: 1rem; background: currentColor; -webkit-mask: var(--i) center / contain no-repeat; mask: var(--i) center / contain no-repeat; flex: none; }
.river-share__icon.is-share { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M4 12v8a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-8'/%3E%3Cpath d='M16 6l-4-4-4 4'/%3E%3Cpath d='M12 2v13'/%3E%3C/svg%3E"); }
.river-share__icon.is-facebook { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M14 8h3V4h-3c-2.8 0-5 2.2-5 5v2H7v4h2v9h4v-9h3l1-4h-4V9c0-.6.4-1 1-1z'/%3E%3C/svg%3E"); }
.river-share__icon.is-sms { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M4 3h16a2 2 0 0 1 2 2v11a2 2 0 0 1-2 2H9l-5 4v-4a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2z'/%3E%3C/svg%3E"); }
.river-share__icon.is-email { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linejoin='round'%3E%3Crect x='2.5' y='4.5' width='19' height='15' rx='2'/%3E%3Cpath d='M3 6l9 7 9-7'/%3E%3C/svg%3E"); }
.river-share__icon.is-link { --i: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='M10 13a5 5 0 0 0 7.5.5l3-3a5 5 0 0 0-7-7l-1.7 1.7'/%3E%3Cpath d='M14 11a5 5 0 0 0-7.5-.5l-3 3a5 5 0 0 0 7 7l1.7-1.7'/%3E%3C/svg%3E"); }
/* Staff search */
.river-staff-search { position: relative; max-width: 30rem !important; margin: 1.25rem auto 0 !important; text-align: left; }
.river-staff-search__label { display: block; font-weight: 700; margin-bottom: .4rem; text-align: center; color: inherit; }
.river-staff-search input { width: 100%; box-sizing: border-box; font: inherit; padding: .8rem 1rem .8rem 2.6rem; border-radius: 999px; border: 2px solid rgba(255,255,255,.6); background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%231d5d51' stroke-width='2.5' stroke-linecap='round'%3E%3Ccircle cx='11' cy='11' r='7'/%3E%3Cpath d='M20 20l-3.5-3.5'/%3E%3C/svg%3E") .9rem 50% / 1.1rem no-repeat; color: #000; }
.river-staff-search input:focus { outline: 3px solid var(--wp--preset--color--river-green, #38bba2); outline-offset: 2px; }
.river-staff-search__list { position: absolute; z-index: 20; left: 0; right: 0; top: 100%; margin: .35rem 0 0; padding: .35rem; list-style: none; background: #fff; color: #000; border-radius: 14px; box-shadow: 0 14px 34px rgba(0,0,0,.2); max-height: 22rem; overflow: auto; }
.river-staff-search__list li { padding: .55rem .75rem; border-radius: 9px; cursor: pointer; display: grid; gap: .1rem; }
.river-staff-search__list li span { font-size: .85rem; color: #555; }
.river-staff-search__list li:hover, .river-staff-search__list li.is-active { background: var(--wp--preset--color--mist, #f6f8f7); }
.river-staff-search__list li.is-empty { cursor: default; color: #555; }
.river-person { scroll-margin-top: 120px; border-radius: 16px; }
.river-person.is-found { animation: river-found 2.4s ease-out; }
@keyframes river-found { 0%, 40% { box-shadow: 0 0 0 4px var(--wp--preset--color--river-green, #38bba2), 0 0 0 12px rgba(56,187,162,.25); background: rgba(56,187,162,.12); } 100% { box-shadow: 0 0 0 0 rgba(56,187,162,0); } }
@media (prefers-reduced-motion: reduce) { .river-person.is-found { animation: none; box-shadow: 0 0 0 4px var(--wp--preset--color--river-green, #38bba2); } }
.river-media-filters input.river-typeahead-input { flex: 0 1 13rem; min-width: 11rem; }
@media (max-width: 600px) { .river-media-filters > input, .river-media-filters > select { flex: 1 1 100%; max-width: none; } .river-media-filters input.river-typeahead-input { flex-basis: 100%; min-width: 0; } }
.river-staff--featured > * { flex-basis: 100% !important; max-width: 22rem; margin-inline: auto; }  /* the featured Location Pastor never shares a row */
