/* Recommendations page only (recommendations.html). Uses brand variables from styles.css. */
.recs2 { background: var(--soft-white); }
.recs2-hero { padding: 1.75rem 0 0.75rem; text-align: center; }
.recs2-hero .container { position: relative; }
.recs2-hero .ui-label { color: var(--sage-text); }
.recs2-hero__stamp { position: absolute; top: -0.6rem; right: 0.6rem; width: auto; height: auto; max-width: 60px; max-height: 44px; transform: rotate(7deg); filter: drop-shadow(0 4px 8px rgba(42, 38, 34, 0.18)); pointer-events: none; }
@media (min-width: 760px) { .recs2-hero__stamp { max-width: 76px; max-height: 52px; right: 4%; top: 0.2rem; } }
.recs2-hero h1 { font-family: var(--font-display); font-weight: 500; font-size: clamp(2rem, 6vw, 3rem); line-height: 1.1; margin: 0.35rem 0 0.5rem; color: var(--espresso); }
.recs2-hero p { color: var(--espresso-soft); max-width: 34rem; margin: 0 auto; }
.recs2-hero__meta { font-family: var(--font-ui); font-size: 0.8rem; letter-spacing: 0.04em; margin-top: 0.4rem !important; color: var(--espresso-muted) !important; }

/* Filters */
.rfilters { background: var(--cream); border-radius: var(--radius-lg); padding: 0.85rem; margin: 0.75rem 0 0.9rem; }
.rfilters__geo { display: grid; grid-template-columns: 1fr 1fr; gap: 0.5rem; }
@media (min-width: 760px) { .rfilters__geo { grid-template-columns: repeat(4, 1fr); } }
.rsel { display: flex; flex-direction: column; gap: 0.2rem; min-width: 0; }
.rsel__label { font-family: var(--font-ui); font-size: 0.68rem; letter-spacing: 0.12em; text-transform: uppercase; color: var(--espresso-muted); padding-left: 0.2rem; }
.rsel select {
  appearance: none; -webkit-appearance: none; width: 100%; min-height: 44px; padding: 0.5rem 2rem 0.5rem 0.75rem;
  font-family: var(--font-ui); font-size: 0.95rem; color: var(--espresso); background-color: var(--card);
  border: 1px solid rgba(61, 74, 51, 0.18); border-radius: 10px; text-overflow: ellipsis;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%2335251F' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
  background-repeat: no-repeat; background-position: right 0.6rem center; background-size: 16px;
}
.rsel select:disabled { opacity: 0.45; background-color: rgba(249, 244, 233, 0.6); }
.rsel select:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }
.rfilters__row { display: flex; gap: 0.4rem; overflow-x: auto; padding: 0.6rem 0.1rem 0.1rem; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
.rfilters__row::-webkit-scrollbar { display: none; }
.rfilters__row--feat { padding-top: 0.35rem; }
.rchip {
  flex: 0 0 auto; min-height: 34px; padding: 0.3rem 0.8rem; border-radius: 999px; cursor: pointer;
  font-family: var(--font-ui); font-size: 0.82rem; color: var(--espresso); background: var(--card);
  border: 1px solid rgba(61, 74, 51, 0.16); white-space: nowrap;
}
.rchip__n { color: var(--espresso-muted); font-size: 0.75rem; }
.rchip[aria-pressed="true"] { background: var(--sage-tint); border-color: var(--olive); color: var(--olive); font-weight: 600; }
.rchip[aria-pressed="true"] .rchip__n { color: var(--olive); }
.rchip--feat { font-size: 0.76rem; min-height: 30px; padding: 0.2rem 0.7rem; background: transparent; border-style: dashed; }
.rchip--feat[aria-pressed="true"] { background: var(--pink-tint); border-color: var(--olive); border-style: solid; }
.rchip:focus-visible, .rclear:focus-visible, .rtoggle:focus-visible, .rbtn:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; }
.rfilters__bar { display: flex; align-items: center; gap: 0.6rem; flex-wrap: wrap; padding-top: 0.55rem; }
.rfilters__status { font-family: var(--font-ui); font-size: 0.8rem; color: var(--espresso-soft); margin: 0 auto 0 0.2rem; }
.rclear, .rtoggle { font-family: var(--font-ui); font-size: 0.8rem; min-height: 34px; padding: 0.25rem 0.8rem; border-radius: 999px; cursor: pointer; }
.rclear { background: var(--accent-soft); color: var(--forest-green); border: 1px solid var(--accent-line); }
.rclear--inline { margin-left: 0.4rem; }
.rtoggle { background: transparent; border: 1px solid rgba(61, 74, 51, 0.2); color: var(--espresso); }

/* Map */
.rmap-wrap { position: relative; margin-bottom: 1.25rem; }
.rmap { height: 58vh; min-height: 320px; max-height: 620px; border-radius: var(--radius-lg); overflow: hidden; background: var(--cream-deep); box-shadow: var(--shadow-card); z-index: 0; }
@media (min-width: 900px) { .rmap { height: 480px; } }
.rmap__unlock {
  position: absolute; left: 50%; bottom: 3.4rem; transform: translateX(-50%); z-index: 500;
  font-family: var(--font-ui); font-size: 0.85rem; padding: 0.55rem 1rem; border-radius: 999px; border: 0;
  background: rgba(42, 38, 34, 0.86); color: var(--soft-white); cursor: pointer; box-shadow: var(--shadow-soft);
}
.rmap-wrap.is-live .rmap__unlock { display: none; }
.rlegend { list-style: none; display: flex; flex-wrap: wrap; gap: 0.3rem 0.85rem; padding: 0.55rem 0.3rem 0; margin: 0; font-family: var(--font-ui); font-size: 0.74rem; color: var(--espresso-soft); }
.rlegend li { display: inline-flex; align-items: center; gap: 0.3rem; }
.rlegend__dot { width: 10px; height: 10px; border-radius: 50%; display: inline-block; }
/* Category colors (Emily, 2026-10-04): Coffee espresso, Food sage, Bakery dusty pink, Stays burgundy,
   Things to do olive. Shops (not in her list) take ochre so no two categories share a color.
   On sage, pink and ochre the icon/text is ink; on the dark ones it is cream. Sage/pink are never text. */
.rlegend__dot--coffee, .rpin--coffee, .rcat--coffee { --pin: #2A2622; --pin-ink: #F9F4E9; }
.rlegend__dot--food, .rpin--food, .rcat--food { --pin: #A3B298; --pin-ink: #2A2622; }
.rlegend__dot--bakery, .rpin--bakery, .rcat--bakery { --pin: #CBA29C; --pin-ink: #2A2622; }
.rlegend__dot--stay, .rpin--stay, .rcat--stay { --pin: #703439; --pin-ink: #F9F4E9; }
.rlegend__dot--experience, .rpin--experience, .rcat--experience { --pin: #3D4A33; --pin-ink: #F9F4E9; }
.rlegend__dot--shop, .rpin--shop, .rcat--shop { --pin: #BE9150; --pin-ink: #2A2622; }
.rlegend__dot--floral, .rpin--floral { --pin: #F9F4E9; --pin-ink: #703439; }
.rlegend__dot { background: var(--pin); }
.rpin { background: none; border: 0; }
.rpin svg { display: block; filter: drop-shadow(0 2px 2px rgba(42, 38, 34, 0.3)); }
.rpin .rpin__body { fill: var(--pin); stroke: #3D4A33; stroke-width: 1.2; }
.rpin g { stroke: var(--pin-ink, #F9F4E9); }
.rpin.is-active svg { transform: scale(1.18); transform-origin: 50% 100%; }
.leaflet-container { font-family: var(--font-ui); }
.leaflet-popup-content-wrapper { border-radius: 14px; box-shadow: var(--shadow-soft); }
.leaflet-popup-content { margin: 10px; width: 236px !important; }
.rpop { display: grid; grid-template-columns: 64px 1fr; gap: 0.6rem; align-items: start; }
.rpop__img { width: 64px; height: 85px; border-radius: 8px; object-fit: cover; display: block; background: var(--cream-deep); }
.rpop__cat { font-family: var(--font-ui); font-size: 0.6rem; letter-spacing: 0.12em; text-transform: uppercase; color: var(--accent); margin: 0 0 0.1rem !important; }
.rpop__addr { font-size: 0.72rem; line-height: 1.35; color: var(--espresso-soft); margin: 0 0 0.2rem !important; }
.rpop__name { font-family: var(--font-display); font-size: 1.1rem; line-height: 1.15; color: var(--espresso); margin: 0; }
.rpop__town { font-size: 0.75rem; color: var(--espresso-muted); margin: 0.1rem 0 0.3rem !important; }
.rpop .rtags { margin: 0 0 0.3rem; }
.rpop .rcard__actions { grid-column: 1 / -1; }
.rpop__see { grid-column: 1 / -1; font-size: 0.8rem; color: var(--accent); text-decoration: underline; background: none; border: 0; padding: 0; cursor: pointer; justify-self: start; font-family: var(--font-ui); }

/* List */
.rsec { margin: 0 0 1.75rem; }
.rsec[hidden] { display: none; }
.rsec__title { font-family: var(--font-display); font-weight: 500; font-size: 1.6rem; color: var(--espresso); margin: 0 0 0.6rem; padding-bottom: 0.35rem; border-bottom: 1px solid rgba(61, 74, 51, 0.1); }
.rsec__pre { font-family: var(--font-ui); font-size: 0.7rem; letter-spacing: 0.14em; text-transform: uppercase; color: var(--accent); vertical-align: middle; margin-right: 0.2rem; }
.rsec__n { font-family: var(--font-ui); font-size: 0.75rem; color: var(--espresso-muted); vertical-align: middle; }
.rgrid { list-style: none; margin: 0; padding: 0; display: grid; gap: 0.75rem; grid-template-columns: 1fr; }
@media (min-width: 760px) { .rgrid { grid-template-columns: 1fr 1fr; } }
@media (min-width: 1100px) { .rgrid { grid-template-columns: 1fr 1fr 1fr; } }
.rcard[hidden] { display: none; }
.rcard article {
  display: grid; grid-template-columns: 96px 1fr; grid-template-rows: 1fr auto; gap: 0.6rem 0.8rem; height: 100%;
  background: var(--card); border: 1px solid rgba(42, 38, 34, 0.08); border-radius: var(--radius); box-shadow: var(--shadow-card); padding: 0.65rem;
}
.rcard.is-flash article { box-shadow: 0 0 0 3px var(--accent-line), var(--shadow-card); }
.rcard__thumb { position: relative; display: block; width: 96px; aspect-ratio: 3 / 4; border-radius: 9px; overflow: hidden; background: var(--cream-deep); align-self: start; }
.rcard__thumb img { width: 100%; height: 100%; object-fit: cover; display: block; }
.rcard__play {
  position: absolute; left: 5px; bottom: 5px; display: inline-flex; align-items: center; gap: 2px;
  font-family: var(--font-ui); font-size: 0.62rem; letter-spacing: 0.03em; color: var(--warm-cream);
  background: rgba(61, 74, 51, 0.88); border-radius: 999px; padding: 2px 6px 2px 3px;
}
.rcard__thumb--empty { display: flex; align-items: center; justify-content: center; text-align: center; background: linear-gradient(160deg, var(--cream) 0%, var(--accent-soft) 100%); }
.rcard__thumb--empty span { font-family: var(--font-display); font-size: 0.85rem; color: var(--espresso-soft); line-height: 1.1; padding: 0.3rem; }
.rcard__thumb--empty em { font-family: var(--font-script); font-style: normal; color: var(--accent); font-size: 1.2rem; display: block; }
.rcard__body { min-width: 0; display: flex; flex-direction: column; }
.rcard__meta { display: flex; gap: 0.35rem; align-items: center; margin: 0 0 0.15rem; }
.rcard__cat, .rcard__disc { font-family: var(--font-ui); font-size: 0.64rem; letter-spacing: 0.12em; text-transform: uppercase; }
.rcard__cat { color: var(--accent); }
.rcard__disc { color: var(--espresso-muted); border: 1px solid rgba(61, 74, 51, 0.2); border-radius: 999px; padding: 0 0.4rem; }
.rcard__name { font-family: var(--font-display); font-weight: 600; font-size: 1.22rem; line-height: 1.15; color: var(--espresso); margin: 0; }
.rcard__crumb { font-family: var(--font-ui); font-size: 0.7rem; line-height: 1.35; color: var(--espresso-muted); margin: 0 0 0.2rem; }
.rcard__crumb span[aria-hidden] { color: var(--sage-text); }
.rcard__addr { font-family: var(--font-ui); font-size: 0.74rem; line-height: 1.35; color: var(--espresso-soft); margin: 0.3rem 0 0; }
.rcard__addr a { color: inherit; text-decoration: underline; text-decoration-color: rgba(112, 52, 57, 0.35); text-underline-offset: 2px; }
.rcard__addr a:hover { color: var(--accent); text-decoration-color: currentColor; }
.rcard__note {
  font-size: 0.88rem; line-height: 1.35; color: var(--espresso-soft); font-style: italic; margin: 0.3rem 0 0;
  display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden;
}
.rcard__also { font-family: var(--font-ui); font-size: 0.74rem; color: var(--espresso-muted); margin: 0.25rem 0 0; }
.rcard__also a { color: var(--accent); }
.rtags { list-style: none; display: flex; flex-wrap: wrap; gap: 0.25rem; margin: 0.3rem 0 0; padding: 0; }
.rtag { font-family: var(--font-ui); font-size: 0.66rem; letter-spacing: 0.02em; line-height: 1; padding: 0.28rem 0.5rem; border-radius: 999px; background: var(--sage-soft); color: var(--olive); }
.rtag--free { background: var(--pink-tint); color: var(--burgundy); font-weight: 600; }
.rtag--byob, .rtag--adults { background: rgba(61, 74, 51, 0.08); color: var(--espresso); }
.rtag--family { background: rgba(190, 145, 80, 0.2); color: var(--olive); }
.rtag--syrups { background: var(--caramel-soft); color: var(--olive); }
.rtag--seasonal, .rtag--limited { background: var(--accent-soft); color: var(--forest-green); }
.rcard__actions { grid-column: 1 / -1; display: flex; flex-wrap: wrap; gap: 0.3rem; align-self: end; padding-top: 0.1rem; }
.rbtn {
  display: inline-flex; align-items: center; gap: 0.25rem; height: 30px; padding: 0 0.55rem;
  border-radius: 8px; background: var(--cream); color: var(--espresso); text-decoration: none;
  font-family: var(--font-ui); font-size: 0.74rem; line-height: 1; white-space: nowrap;
}
.rbtn:hover { background: var(--cream-deep); }
.rbtn .ri { flex: 0 0 auto; color: var(--accent); }
.rempty { text-align: center; padding: 1.5rem 0; color: var(--espresso-soft); }
.rfine { max-width: 40rem; margin: 0.5rem auto 2rem; text-align: center; font-size: 0.8rem; color: var(--espresso-muted); }
@media (max-width: 380px) { .rcard article { grid-template-columns: 84px 1fr; } .rcard__thumb { width: 84px; } }
.rpop p { margin: 0; }
.rpop__town { margin: 0.1rem 0 0.15rem !important; }
.leaflet-container .rpop a.rbtn { color: var(--espresso); }
.leaflet-container .rpop a.rbtn:hover { color: var(--espresso); }

/* "What are we doing?" decision row */
.rwants { margin: 0.6rem 0 0.9rem; }
.rwants__title { font-family: var(--font-display); font-weight: 500; font-size: 1.45rem; text-align: center; margin: 0 0 0.6rem; color: var(--espresso); }
.rwants__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 0.5rem; }
@media (min-width: 760px) { .rwants__grid { grid-template-columns: repeat(4, 1fr); } }
.rwant {
  display: grid; grid-template-columns: auto 1fr auto; align-items: center; gap: 0.5rem; min-height: 60px; padding: 0.6rem 0.75rem;
  border-radius: 14px; border: 1px solid var(--accent-line); background: var(--card); color: var(--espresso); cursor: pointer; text-align: left;
  font-family: var(--font-ui); font-size: 0.95rem; font-weight: 500; line-height: 1.15; box-shadow: var(--shadow-card);
  transition: background var(--transition), border-color var(--transition), color var(--transition); -webkit-tap-highlight-color: transparent;
}
/* Decision-row icons sit in a small badge in the matching category color */
.rwant__ic { box-sizing: border-box; width: 30px; height: 30px; padding: 5px; border-radius: 50%; flex: 0 0 auto;
  background: var(--want-bg, var(--card)); color: var(--want-ink, var(--olive)); box-shadow: inset 0 0 0 1px rgba(61, 74, 51, 0.35); }
.rwant[data-want="coffee"] { --want-bg: #2A2622; --want-ink: #F9F4E9; }
.rwant[data-want="date-night"] { --want-bg: #A3B298; --want-ink: #2A2622; }
.rwant[data-want="something-to-do"] { --want-bg: #3D4A33; --want-ink: #F9F4E9; }
.rwant[data-want="weekend-away"] { --want-bg: #703439; --want-ink: #F9F4E9; }
.rwant__n { font-size: 0.75rem; font-weight: 400; color: var(--espresso-muted); }
.rwant:hover { border-color: var(--forest-green); }
.rwant[aria-pressed="true"] { background: var(--pink-tint); border-color: var(--olive); color: var(--olive); box-shadow: inset 0 0 0 1px var(--olive); }
.rwant[aria-pressed="true"] .rwant__n { color: var(--olive); }
.rwant.is-zero:not([aria-pressed="true"]) { opacity: 0.55; box-shadow: none; }
.rwant:focus-visible { outline: 2px solid var(--forest-green); outline-offset: 2px; }
.rwants__rule { font-family: var(--font-ui); font-size: 0.82rem; line-height: 1.4; color: var(--espresso-soft); text-align: center; margin: 0.6rem auto 0; max-width: 40rem; }
.rwants__rule .rclear--inline { margin-left: 0.25rem; }

/* Email signup card */
.signup-card { position: relative; background: var(--cream); border: 1px dashed var(--accent-line); border-radius: var(--radius-lg); padding: 1rem 1rem 0.9rem; margin: 0 0 0.6rem; text-align: center; overflow: hidden; }
.signup-card__stamp { position: absolute; top: 0.55rem; left: 0.6rem; width: auto; height: auto; max-width: 44px; max-height: 34px; transform: rotate(-8deg); opacity: 0.95; pointer-events: none; }
.signup-card__title { font-family: var(--font-display); font-weight: 500; font-size: 1.35rem; margin: 0; color: var(--espresso); }
.signup-card__line { font-size: 0.92rem; color: var(--espresso-soft); margin: 0.2rem auto 0; max-width: 30rem; line-height: 1.4; }
.signup-card__promise { font-family: var(--font-ui); font-size: 0.72rem; letter-spacing: 0.12em; text-transform: uppercase; color: var(--sage-text); margin: 0.45rem 0 0.6rem; }
.signup { max-width: 30rem; margin: 0 auto; }
.signup__row { display: flex; gap: 0.4rem; }
.signup__input { flex: 1 1 auto; min-width: 0; min-height: 46px; padding: 0.55rem 0.85rem; border-radius: 999px; border: 1px solid rgba(61, 74, 51, 0.22); background: var(--card); font-family: var(--font-ui); font-size: 1rem; color: var(--espresso); }
.signup__input:focus-visible { outline: 2px solid var(--forest-green); outline-offset: 1px; border-color: var(--forest-green); }
.signup__input[aria-invalid="true"] { border-color: var(--burgundy); }
.signup__btn { flex: 0 0 auto; min-height: 46px; padding: 0 1.1rem; border-radius: 999px; border: 0; background: var(--olive); color: var(--warm-cream); font-family: var(--font-ui); font-size: 0.82rem; font-weight: 500; letter-spacing: 0.08em; text-transform: uppercase; cursor: pointer; }
.signup__btn:hover { background: var(--forest-hover); }
.signup__btn:disabled { opacity: 0.7; cursor: wait; }
.signup__btn:focus-visible { outline: 2px solid var(--espresso); outline-offset: 2px; }
.signup__hp { position: absolute !important; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.signup__msg { font-family: var(--font-ui); font-size: 0.85rem; line-height: 1.4; margin: 0.45rem 0 0; min-height: 0; }
.signup__msg:empty { display: none; }
.signup__msg.is-ok { color: var(--forest-green); }
.signup__msg.is-error { color: var(--burgundy); }

/* Stamp divider */
.stamp-divider { display: flex; align-items: center; gap: 0.8rem; margin: 1rem 0 0.6rem; }
.stamp-divider::before, .stamp-divider::after { content: ""; flex: 1; border-top: 1px dashed var(--accent-line); }
.stamp-divider img { width: auto; height: auto; max-width: 58px; max-height: 42px; transform: rotate(-4deg); filter: drop-shadow(0 3px 6px rgba(42, 38, 34, 0.15)); }

/* Place stamps: real vintage postage stamps in brand colors (images/stamps/brand-*.png, list in tools/stamps.py).
   Small accents only: max-width/max-height keep every stamp well under 75% of its real size
   (largest cap is 76x52px), whatever its shape; drop-shadow follows the perforated edge. */
.rcard article { position: relative; }
.rcard__stamp { position: absolute; top: -7px; left: -6px; z-index: 2; width: auto; height: auto; max-width: 40px; max-height: 32px; transform: rotate(-8deg); filter: drop-shadow(0 2px 3px rgba(42, 38, 34, 0.22)); pointer-events: none; }
.rcard:nth-child(3n+2) .rcard__stamp { transform: rotate(5deg); }
.rcard:nth-child(3n) .rcard__stamp { transform: rotate(-3deg); }
.rsec__stamp { display: inline-block; width: auto; height: auto; max-width: 34px; max-height: 26px; margin: -6px 0.55rem 0 0; vertical-align: middle; transform: rotate(-5deg); filter: drop-shadow(0 2px 3px rgba(42, 38, 34, 0.2)); }
.rfilters__geo { position: relative; }
.rfilters__stamp { position: absolute; top: -30px; right: -2px; width: auto; height: auto; max-width: 44px; max-height: 34px; transform: rotate(7deg); filter: drop-shadow(0 2px 4px rgba(42, 38, 34, 0.22)); pointer-events: none; z-index: 1; }
.recs2-hero__stamp, .signup-card__stamp, .stamp-divider img { filter: drop-shadow(0 3px 6px rgba(42, 38, 34, 0.2)); }
.rlegend__dot { box-shadow: inset 0 0 0 1px rgba(61, 74, 51, 0.55); }

/* Category color marks: chips, card labels, map popups (colors set by .rcat--* above) */
.rchip[class*="rcat--"]::before, .rcard__cat[class*="rcat--"]::before, .rpop__cat[class*="rcat--"]::before {
  content: ""; display: inline-block; width: 0.62em; height: 0.62em; border-radius: 50%; margin-right: 0.4em; vertical-align: 0.02em;
  background: var(--pin); box-shadow: inset 0 0 0 1px rgba(61, 74, 51, 0.55);
}
.rcard__cat[class*="rcat--"]::before, .rpop__cat[class*="rcat--"]::before { width: 0.8em; height: 0.8em; vertical-align: -0.08em; }

/* 2026-10-13 (Emily): compact mobile top so filters, map and cards show sooner.
   Order: hero, decision buttons (2x2), filters, map, cards. */
@media (max-width: 759px) {
  .recs2-hero { padding: 0.9rem 0 0.2rem; }
  .recs2-hero h1 { font-size: 1.75rem; margin: 0.2rem 0 0.3rem; }
  .recs2-hero p { font-size: 0.92rem; line-height: 1.4; }
  .recs2-hero__meta { margin-top: 0.2rem !important; }
  .recs2-hero__stamp { top: -0.4rem; max-width: 46px; max-height: 36px; }
  .rwants { margin: 0.4rem 0 0.5rem; }
  .rwants__title { font-size: 1.2rem; margin-bottom: 0.4rem; }
  .rwants__grid { gap: 0.4rem; }
  .rwant { min-height: 46px; padding: 0.4rem 0.6rem; font-size: 0.88rem; }
  .rwant__ic { width: 26px; height: 26px; padding: 4px; }
  .rfilters { margin: 0.75rem 0 0.7rem; padding: 0.7rem; }
  .rfilters__stamp { top: -16px; right: -2px; max-width: 38px; max-height: 28px; }
  .rmap { height: 46vh; min-height: 280px; }
}
