/* Redesigned memorial page. Every rule is scoped under .mv2 so nothing else
   on the site is affected. Palette and type follow the approved canvas
   "Memorial Page Redesign". */
.mv2 {
  --mv2-ivory: #FBF8F2;
  --mv2-ink: #2B2622;
  --mv2-ink-2: #4A423B;
  --mv2-muted: #6B625A;
  --mv2-line: #EDE5D8;
  --mv2-sand: #F3EBDD;
  --mv2-gold: #8A6416;
  --mv2-gold-2: #B8862B;
  --mv2-gold-line: #D9C7A6;
  --mv2-navy: #1F2F4D;
  max-width: 720px;
  margin: 0 auto 48px;
  background: var(--mv2-ivory);
  color: var(--mv2-ink);
  font-family: 'Source Sans 3', system-ui, -apple-system, 'Segoe UI', sans-serif;
  font-size: 16px;
  line-height: 1.5;
  border-radius: 0 0 24px 24px;
  overflow: hidden;
  padding-bottom: 32px;
}
.mv2 * { box-sizing: border-box; }
.mv2 a { color: #7E5A12; }
.mv2 a:hover { color: #5C410B; }
.mv2 .mv2-serif { font-family: 'Cormorant Garamond', Georgia, serif; }

.mv2-cover { position: relative; height: 260px; background: var(--mv2-sand); }
.mv2-cover img { width: 100%; height: 260px; object-fit: cover; object-position: 50% 45%; display: block; }
.mv2-cover::after { content: ''; position: absolute; left: 0; right: 0; bottom: 0; height: 100px;
  background: linear-gradient(to bottom, rgba(251,248,242,0), var(--mv2-ivory)); }

.mv2-head { margin-top: -70px; position: relative; z-index: 1; padding: 0 24px; display: flex; flex-direction: column; align-items: center; text-align: center; gap: 6px; }
.mv2-portrait { width: 124px; height: 124px; border-radius: 50%; object-fit: cover; border: 4px solid #fff; box-shadow: 0 6px 20px rgba(60,40,10,.18); background: var(--mv2-sand); display: block; }
.mv2-monogram { width: 124px; height: 124px; border-radius: 50%; border: 4px solid #fff; box-shadow: 0 6px 20px rgba(60,40,10,.18); background: var(--mv2-sand);
  display: flex; align-items: center; justify-content: center; font-family: 'Cormorant Garamond', Georgia, serif; font-size: 46px; font-weight: 600; color: var(--mv2-gold); }
.mv2-eyebrow { margin-top: 10px; font-size: 12px; letter-spacing: 2.5px; color: var(--mv2-muted); font-weight: 700; text-transform: uppercase; }
.mv2-headline { margin-top: 10px; font-family: 'Cormorant Garamond', Georgia, serif; font-style: italic; font-size: 21px; color: var(--mv2-muted); }
.mv2-vet-badge { margin-top: 10px; display: inline-flex; align-items: center; gap: 6px; padding: 5px 12px; border-radius: 999px; background: var(--mv2-navy); color: #fff; font-size: 12px; letter-spacing: 2px; font-weight: 700; }
.mv2 h1.mv2-name { margin: 2px 0 0; font-family: 'Cormorant Garamond', Georgia, serif; font-size: 42px; line-height: 1.05; font-weight: 600; color: var(--mv2-ink); }
.mv2-faith { margin-top: 6px; font-size: 15px; color: var(--mv2-muted); letter-spacing: .3px; }
.mv2 .mv2-titleline { margin: 4px 0 0; font-family: 'Cormorant Garamond', Georgia, serif; font-style: italic; font-size: 22px; line-height: 1.2; color: var(--mv2-muted); }
.mv2-dates { font-size: 17px; }
.mv2-lived { font-size: 14px; color: var(--mv2-muted); }
.mv2-pill { margin-top: 10px; display: inline-flex; align-items: center; gap: 6px; padding: 8px 14px; border-radius: 999px; background: #fff; border: 1px solid var(--mv2-line); font-size: 14px; color: var(--mv2-ink); }

.mv2-actions { padding: 20px 24px 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 10px; max-width: 520px; margin: 0 auto; }
.mv2-btn { height: 48px; border-radius: 12px; border: 1px solid var(--mv2-gold-line); background: #fff; color: var(--mv2-ink); font: 600 15px 'Source Sans 3', sans-serif;
  display: inline-flex; align-items: center; justify-content: center; gap: 8px; padding: 0 18px; text-decoration: none; cursor: pointer; }
.mv2-btn:hover { border-color: var(--mv2-gold-2); color: var(--mv2-ink); }
.mv2-btn.is-primary { background: var(--mv2-gold); border-color: var(--mv2-gold); color: #fff; }
.mv2-btn.is-primary:hover { background: #75540F; color: #fff; }
.mv2-btn.is-light { background: var(--mv2-ivory); border: none; color: var(--mv2-ink); font-weight: 700; }
.mv2-btn.is-block { width: 100%; }
.mv2-btn.active, .mv2-btn.is-favorite { background: var(--mv2-sand); border-color: var(--mv2-gold-2); }

.mv2-ownerbar { margin: 16px 16px 0; padding: 16px 18px; border-radius: 16px; background: #fff; border: 1px solid var(--mv2-gold-line); border-left: 4px solid var(--mv2-gold-2); display: flex; flex-direction: column; gap: 12px; }
.mv2-ownerbar-top { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; justify-content: space-between; }
.mv2-ownerbar .mv2-label { color: var(--mv2-gold); font-size: 11px; }
.mv2-ownerbar-title { font-family: 'Cormorant Garamond', Georgia, serif; font-size: 22px; font-weight: 600; color: var(--mv2-ink); line-height: 1.2; }
.mv2-ownerbar-actions { display: flex; gap: 8px; flex-wrap: wrap; }
.mv2-ownerbar-actions .mv2-btn { height: 42px; padding: 0 14px; font-size: 14px; display: inline-flex; align-items: center; gap: 8px; text-decoration: none; }
.mv2-count { display: inline-flex; align-items: center; justify-content: center; min-width: 22px; height: 22px; padding: 0 6px; border-radius: 11px; background: #fff; color: var(--mv2-gold); font-size: 13px; font-weight: 700; }
.mv2-waiting { display: flex; gap: 10px; align-items: center; padding: 10px 14px; border-radius: 12px; background: #FBF1DC; border: 1px solid #E8CF9A; color: var(--mv2-ink) !important; text-decoration: none; font-size: 15px; }
.mv2-waiting:hover { background: #F7E8C8; }
.mv2-waiting.is-setup { background: var(--mv2-sand); border-color: var(--mv2-gold-line); }
.mv2-waiting.is-setup .mv2-waiting-dot { background: var(--mv2-gold-2); box-shadow: 0 0 0 4px rgba(184,134,43,.18); }
.mv2-welcome { padding: 14px 16px; border-radius: 12px; background: var(--mv2-sand); border: 1px solid var(--mv2-gold-line); }
.mv2-welcome-title { font-family: 'Cormorant Garamond', Georgia, serif; font-size: 24px; font-weight: 600; color: var(--mv2-ink); }
.mv2-welcome .mv2-p { margin: 2px 0 10px; }
.mv2-welcome-steps { display: flex; flex-wrap: wrap; gap: 8px; }
.mv2-waiting-dot { width: 10px; height: 10px; border-radius: 50%; background: #C0392B; flex: 0 0 auto; box-shadow: 0 0 0 4px rgba(192,57,43,.15); }

.mv2-quote { margin: 30px 28px 0; text-align: center; font-family: 'Cormorant Garamond', Georgia, serif; font-style: italic; font-size: 24px; line-height: 1.3; color: var(--mv2-ink-2); }
.mv2-quote .mv2-quote-mark { display: block; font-size: 52px; line-height: .6; color: var(--mv2-gold-2); margin-bottom: 8px; }

.mv2-card { margin: 16px 16px 0; padding: 24px 20px; background: #fff; border: 1px solid var(--mv2-line); border-radius: 18px; display: flex; flex-direction: column; gap: 12px; align-items: stretch; }
.mv2-card.is-first { margin-top: 28px; }
.mv2-label { font-size: 12px; letter-spacing: 2.5px; color: var(--mv2-muted); font-weight: 700; text-transform: uppercase; }
.mv2 h2.mv2-h2 { margin: 0; font-family: 'Cormorant Garamond', Georgia, serif; font-size: 27px; font-weight: 600; line-height: 1.15; color: var(--mv2-ink); }
.mv2-sub { margin: 0; font-size: 14px; color: var(--mv2-muted); }
.mv2-p { margin: 0; font-size: 16px; line-height: 1.6; color: var(--mv2-ink); white-space: pre-line; }
.mv2-p.is-muted { color: var(--mv2-ink-2); }
.mv2-story-more { display: none; }
.mv2-story.is-open .mv2-story-more { display: block; }

.mv2-photos { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; }
.mv2-photos button { padding: 0; border: 0; background: none; cursor: zoom-in; display: block; position: relative; border-radius: 12px; overflow: hidden; }
.mv2-photos img { width: 100%; height: 118px; object-fit: cover; display: block; }
.mv2-photos .is-feature { grid-column: span 2; grid-row: span 2; }
.mv2-photos .is-feature img { height: 242px; }
.mv2-photos .is-hidden { display: none; }
.mv2-photos.is-all .is-hidden { display: block; }
.mv2-photos .mv2-more-overlay { position: absolute; inset: 0; background: rgba(43,38,34,.55); color: #fff; font-weight: 700; font-size: 20px; display: flex; align-items: center; justify-content: center; }
.mv2-photos.is-all .mv2-more-overlay { display: none; }
/* Album chips (only when the family has made albums) */
.mv2-albums { display: flex; flex-wrap: wrap; gap: 8px; margin: 4px 0 14px; }
.mv2-albums button { border: 1px solid #d9cfc3; background: #fff; color: #4a4038; border-radius: 999px; padding: 6px 14px; font-size: 14px; font-weight: 600; line-height: 1.2; cursor: pointer; }
.mv2-albums button:hover { border-color: #b08d57; }
.mv2-albums button.is-on { background: #2b2622; border-color: #2b2622; color: #fff; }
.mv2-photos .is-out { display: none !important; }
.mv2-photos.is-album .is-hidden { display: block; }
.mv2-photos.is-album .is-feature { grid-column: auto; grid-row: auto; }
.mv2-photos.is-album .is-feature img { height: 118px; }
.mv2-photos.is-album .mv2-more-overlay { display: none; }
.mv2-photos.is-album ~ .mv2-photo-toggle { display: none; }

.mv2-videos { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.mv2-videos a { display: block; text-decoration: none; color: var(--mv2-ink); font-size: 14px; font-weight: 600; }
.mv2-videos img { width: 100%; height: 110px; object-fit: cover; border-radius: 12px; display: block; margin-bottom: 6px; }
.mv2-video-ph { width: 100%; height: 110px; border-radius: 12px; margin-bottom: 6px; background: var(--mv2-ink); color: #fff; font-size: 30px; display: flex; align-items: center; justify-content: center; }

.mv2-tl { display: flex; flex-direction: column; }
.mv2-tl-row { display: flex; gap: 14px; align-items: stretch; }
.mv2-tl-year { width: 58px; flex-shrink: 0; text-align: right; font-family: 'Cormorant Garamond', Georgia, serif; font-size: 20px; font-weight: 700; color: var(--mv2-gold); padding-top: 1px; }
.mv2-tl-rail { width: 14px; flex-shrink: 0; display: flex; flex-direction: column; align-items: center; }
.mv2-tl-dot { width: 11px; height: 11px; border-radius: 50%; margin-top: 7px; border: 2px solid var(--mv2-gold-2); background: #fff; }
.mv2-tl-row.is-life .mv2-tl-dot { background: var(--mv2-gold-2); }
.mv2-tl-line { flex-grow: 1; width: 2px; background: var(--mv2-line); }
.mv2-tl-row:last-child .mv2-tl-line { background: transparent; }
.mv2-tl-text { padding-bottom: 16px; font-size: 15px; line-height: 1.45; color: var(--mv2-ink-2); }
.mv2-tl-row.is-life .mv2-tl-text { color: var(--mv2-ink); font-weight: 600; }

.mv2-vet { margin: 16px 16px 0; border-radius: 18px; overflow: hidden; background: var(--mv2-navy); color: #fff; }
.mv2-vet-stripe { height: 8px; display: grid; grid-template-columns: repeat(3, 1fr); }
.mv2-vet-stripe span:nth-child(1) { background: var(--vs1, #9E2B25); }
.mv2-vet-stripe span:nth-child(2) { background: var(--vs2, #fff); }
.mv2-vet-stripe span:nth-child(3) { background: var(--vs3, #9E2B25); }
.mv2-vet-body { padding: 22px 20px; display: flex; flex-direction: column; gap: 10px; }
.mv2-vet .mv2-label { color: #C9D3E6; }
.mv2-vet h2.mv2-h2 { color: #fff; }
.mv2-vet p { margin: 0; font-size: 15px; line-height: 1.5; color: #E4E9F3; }
.mv2-vet-facts { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
.mv2-vet-fact { padding: 12px; border-radius: 12px; background: rgba(255,255,255,.08); display: flex; flex-direction: column; gap: 2px; }
.mv2-vet-fact span:first-child { font-size: 12px; color: #C9D3E6; }
.mv2-vet-fact span:last-child { font-size: 15px; font-weight: 600; }

.mv2-person { display: flex; align-items: center; gap: 12px; padding: 10px; border-radius: 12px; background: var(--mv2-ivory); text-decoration: none; color: var(--mv2-ink); }
.mv2-person:hover { background: var(--mv2-sand); color: var(--mv2-ink); }
.mv2-person-mono { width: 48px; height: 48px; flex-shrink: 0; border-radius: 50%; background: var(--mv2-sand); color: var(--mv2-gold); display: flex; align-items: center; justify-content: center; font-family: 'Cormorant Garamond', Georgia, serif; font-size: 20px; font-weight: 700; overflow: hidden; }
.mv2-person-mono img { width: 100%; height: 100%; object-fit: cover; }

.mv2-tribute { padding: 16px 0; border-top: 1px solid var(--mv2-line); display: flex; flex-direction: column; gap: 8px; }
.mv2-tribute:first-of-type { border-top: 0; padding-top: 4px; }
.mv2-tribute-head { display: flex; align-items: center; gap: 10px; }
.mv2-tribute-head .account_avatar { width: 40px; height: 40px; border-radius: 50%; object-fit: cover; }
.mv2-tribute-who { display: flex; flex-direction: column; line-height: 1.25; }
.mv2-tribute-who strong { font-size: 15px; }
.mv2-tribute-who span { font-size: 13px; color: var(--mv2-muted); }
.mv2-tribute-title { font-weight: 700; font-size: 16px; margin: 0; }
.mv2-tribute-imgs { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 6px; }
.mv2-tribute-imgs img { width: 100%; height: 96px; object-fit: cover; border-radius: 10px; }
.mv2-tribute-meta { display: flex; gap: 16px; font-size: 14px; color: var(--mv2-muted); }
.mv2-tribute-meta a { color: var(--mv2-muted); text-decoration: none; cursor: pointer; }
.mv2-tribute-meta a.golden-color { color: var(--mv2-gold); }
.mv2-tribute-remove-form { margin: 0 0 0 auto; }
.mv2-tribute-remove { background: none; border: 0; padding: 0; font: inherit; font-size: 14px; color: var(--mv2-muted); text-decoration: underline; cursor: pointer; }
.mv2-tribute-remove:hover { color: var(--mv2-ink); }
.mv2-comment { margin-left: 16px; padding: 10px 12px; border-radius: 12px; background: var(--mv2-ivory); font-size: 14px; }
.mv2-comment strong { display: block; font-size: 13px; }
.mv2-comment-form { display: flex; gap: 8px; }
.mv2-comment-form textarea { flex-grow: 1; min-height: 44px; padding: 10px 12px; border-radius: 12px; border: 1px solid var(--mv2-gold-line); font: 15px 'Source Sans 3', sans-serif; resize: vertical; }

.mv2-note { padding: 14px 16px; border-radius: 12px; background: var(--mv2-sand); display: flex; gap: 10px; font-size: 15px; line-height: 1.45; color: var(--mv2-ink-2); }
.mv2-result { padding: 14px 16px; border-radius: 12px; font-weight: 600; font-size: 16px; line-height: 1.45; text-align: center; outline: none; }
.mv2-result.is-pending, .mv2-result.is-posted { background: #eef6ee; border: 1px solid #b9d8b9; color: #24492a; }
.mv2-result.is-error { background: #fdf0ee; border: 1px solid #e8b9b0; color: #7a2a1d; }
.mv2-result.is-care { margin-top: 10px; background: #F3EBDD; border: 1px solid #D9C7A6; color: #2B2622; font-weight: 400; text-align: left; }
.mv2-result.is-share { margin-top: 10px; background: #fff; border: 1px solid #D9C7A6; color: #2B2622; font-weight: 600; display: flex; flex-direction: column; align-items: center; }
.mv2-result.is-share .mv2-btn { align-self: center !important; }
.mv2-closed { padding: 14px 16px; border-radius: 12px; background: #fbf5e8; border: 1px solid #e8d3a3; color: #3a3a3a; font-weight: 500; text-align: center; }

.mv2-form { display: none; flex-direction: column; gap: 18px; padding-top: 6px; }
.mv2-form.is-open { display: flex; }
.mv2-form label.mv2-field { display: flex; flex-direction: column; gap: 6px; font-size: 14px; font-weight: 600; margin: 0; }
.mv2-form input[type=text], .mv2-form textarea { height: 48px; padding: 0 14px; border-radius: 12px; border: 1px solid var(--mv2-gold-line); background: #fff; font: 16px 'Source Sans 3', sans-serif; color: var(--mv2-ink); }
.mv2-form textarea { height: 160px; padding: 12px 14px; line-height: 1.5; resize: vertical; }
.mv2-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.mv2-chips input { position: absolute; opacity: 0; pointer-events: none; }
.mv2-chips label { height: 40px; padding: 0 16px; border-radius: 20px; border: 1px solid var(--mv2-gold-line); background: #fff; font: 600 14px 'Source Sans 3', sans-serif; display: inline-flex; align-items: center; cursor: pointer; margin: 0; }
.mv2-chips input:checked + label { background: var(--mv2-ink); border-color: var(--mv2-ink); color: #fff; }
.mv2-chips input:focus-visible + label { outline: 2px solid var(--mv2-gold-2); outline-offset: 2px; }
.mv2-file { padding: 14px; border-radius: 12px; border: 2px dashed var(--mv2-gold-line); background: #fff; font-size: 14px; }
.mv2-check { display: flex; gap: 10px; align-items: flex-start; font-size: 14px; line-height: 1.4; color: var(--mv2-ink-2); margin: 0; }
.mv2-check input { width: 22px; height: 22px; margin: 0; flex-shrink: 0; accent-color: var(--mv2-gold); }

.mv2-links { display: flex; flex-direction: column; gap: 8px; }
.mv2-links a { display: flex; align-items: center; gap: 10px; padding: 12px 14px; border-radius: 12px; background: var(--mv2-ivory); text-decoration: none; color: var(--mv2-ink); font-weight: 600; font-size: 15px; word-break: break-word; }
.mv2-link-text { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.mv2-link-title { font-weight: 700; font-size: 16px; }
.mv2-link-url { font-weight: 400; font-size: 14px; color: var(--mv2-muted); overflow-wrap: anywhere; }

.mv2-visit { margin: 16px 16px 0; border-radius: 18px; overflow: hidden; background: var(--mv2-ink); color: var(--mv2-ivory); }
.mv2-visit img { width: 100%; height: 160px; object-fit: cover; display: block; opacity: .92; }
.mv2-visit-body { padding: 20px; display: flex; flex-direction: column; gap: 8px; }
.mv2-visit .mv2-label { color: var(--mv2-gold-line); }
.mv2-visit-name { font-family: 'Cormorant Garamond', Georgia, serif; font-size: 27px; font-weight: 600; }
.mv2-visit-line { font-size: 14px; line-height: 1.5; color: #E8DFD0; }

.mv2-footer { margin: 28px 24px 0; padding-top: 20px; border-top: 1px solid var(--mv2-line); display: flex; flex-direction: column; align-items: center; gap: 6px; text-align: center; }
.mv2-footer span { font-size: 13px; color: var(--mv2-muted); }
.mv2-footer a { font-size: 15px; font-weight: 600; }

.mv2-audio { width: 100%; }

.mv2-lightbox { position: fixed; inset: 0; z-index: 2000; background: rgba(20,17,15,.94); display: none; align-items: center; justify-content: center; flex-direction: column; gap: 12px; padding: 16px; }
.mv2-lightbox.is-open { display: flex; }
.mv2-lightbox img { max-width: 100%; max-height: 80vh; object-fit: contain; border-radius: 8px; }
.mv2-lightbox-bar { display: flex; gap: 12px; align-items: center; color: #fff; font-size: 15px; }
.mv2-lightbox button { width: 48px; height: 48px; border-radius: 24px; border: 0; background: rgba(255,255,255,.14); color: #fff; font-size: 22px; cursor: pointer; }
.mv2-lightbox .mv2-lb-close { position: absolute; top: 16px; right: 16px; }
.mv2-lb-caption { color: #E8DFD0; font-size: 14px; max-width: 640px; text-align: center; }

@media (min-width: 768px) {
  .mv2 { margin-top: 8px; border-radius: 24px; box-shadow: 0 8px 30px rgba(60,40,10,.08); }
  .mv2-cover, .mv2-cover img { height: 300px; }
  .mv2 h1.mv2-name { font-size: 50px; }
  .mv2-card, .mv2-vet, .mv2-visit, .mv2-ownerbar { margin-left: 32px; margin-right: 32px; }
  .mv2-photos img { height: 150px; }
  .mv2-photos .is-feature img { height: 306px; }
  .mv2-photos.is-album .is-feature img { height: 150px; }
}


/* Favorite: readable when on (the old site rule made the text white) */
.mv2-btn.favorite-button.active { background: var(--mv2-sand); border-color: var(--mv2-gold-2); color: var(--mv2-ink); }
.mv2-btn.favorite-button.active svg path { fill: #B8862B; stroke: #B8862B; }
/* Messages such as "added to your favorites" sit at the bottom of the screen, where people are looking */
#alert_about { position: fixed; left: 50%; bottom: 24px; transform: translateX(-50%); z-index: 1060; margin: 0 !important; max-width: calc(100% - 32px); width: max-content; border-radius: 12px; box-shadow: 0 10px 30px rgba(43,38,34,.18); font: 600 15px 'Source Sans 3', sans-serif; }

/* Share window */
/* The site's older styles pin dialogs near the top; centre this one. */
.mv2-share { position: fixed; inset: 0; margin: auto; height: fit-content; max-height: calc(100% - 32px); overflow: auto; border: 0; border-radius: 18px; padding: 22px; width: min(460px, calc(100% - 32px)); box-shadow: 0 20px 60px rgba(43,38,34,.3); color: #2B2622; }
.mv2-share::backdrop { background: rgba(43,38,34,.45); }
.mv2-share-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.mv2-share-title { font-family: 'Cormorant Garamond', Georgia, serif; font-size: 26px; font-weight: 600; margin: 0; }
.mv2-share-close { border: 0; background: none; font-size: 28px; line-height: 1; cursor: pointer; color: #6B625A; padding: 4px 8px; }
.mv2-share-sub { margin: 6px 0 14px; color: #4A423B; font-size: 15px; }
.mv2-share-link { display: flex; gap: 8px; margin-bottom: 14px; }
.mv2-share-link input { flex: 1 1 auto; min-width: 0; height: 48px; border: 1px solid #D9C7A6; border-radius: 12px; padding: 0 12px; font: 400 15px 'Source Sans 3', sans-serif; color: #2B2622; }
.mv2-share-link .mv2-btn { padding: 0 16px; white-space: nowrap; }
.mv2-share-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
.mv2-share-opt { display: flex; align-items: center; justify-content: center; height: 46px; border: 1px solid #D9C7A6; border-radius: 12px; color: #2B2622; font-weight: 600; text-decoration: none; }
.mv2-share-opt:hover { border-color: #B8862B; color: #2B2622; }
.mv2-share .mv2-btn.is-primary { background: #8A6416; border: 1px solid #8A6416; color: #fff; height: 48px; border-radius: 12px; font: 600 15px 'Source Sans 3', sans-serif; cursor: pointer; }
.mv2-share .mv2-btn.is-primary:hover { background: #75540F; }
.mv2-share, .mv2-share * { box-sizing: border-box; font-family: 'Source Sans 3', system-ui, sans-serif; }
.mv2-share .mv2-share-title { font-family: 'Cormorant Garamond', Georgia, serif; }

/* "Back to Discover" on the cover, shown when the visitor came from Discover */
.mv2-cover { position: relative; }
.mv2-back { position: absolute; top: 14px; left: 14px; z-index: 3; display: inline-flex; align-items: center; gap: 6px; min-height: 40px; padding: 0 16px 0 12px; border-radius: 999px; background: rgba(255, 255, 255, .95); color: #2B2622 !important; font: 700 15px 'Source Sans 3', system-ui, sans-serif; text-decoration: none !important; box-shadow: 0 4px 14px rgba(43, 38, 34, .18); }
.mv2-back[hidden] { display: none; }
.mv2-back:hover { background: #fff; color: #8A6416 !important; }

/* Headstone photo in the Visit section: show the whole stone, not a crop. */
.mv2-visit img.mv2-visit-stone { height: auto; max-height: 420px; object-fit: contain; background: #1E1A16; opacity: 1; }
.mv2-portrait-row { display: flex; gap: 16px; align-items: center; flex-wrap: wrap; }
.mv2-portrait-crop { width: 120px; height: 150px; object-fit: cover; border-radius: 60px / 75px; border: 3px solid #fff; box-shadow: 0 2px 10px rgba(43,38,34,.18); background: #EDE5D8; }
.mv2-portrait-text { flex: 1 1 240px; min-width: 0; display: flex; flex-direction: column; gap: 10px; }
.mv2-portrait-actions { display: flex; gap: 10px; flex-wrap: wrap; }
.mv2-preview-note { margin: 16px 16px 0; padding: 12px 16px; border-radius: 12px; background: #F3EBDD; border: 1px solid #D9C7A6; color: #2B2622; font-size: 15px; line-height: 1.45; }
