/* Shared editorial details for the homepage and the verified review page. */
.mh-hero .mh-eyebrow { color: var(--mh-gold); }
.mh-hero-figure::before { content: ''; position: absolute; inset: -10px 10px 31px -10px; border: 1px solid var(--mh-gold-light); pointer-events: none; }
.mh-therapist .mh-eyebrow, .mh-portrait figcaption, .mh-signature > span { color: var(--mh-gold-light); }
.mh-therapist { border-block: 1px solid var(--mh-gold); }
.mh-signature { border-top-color: var(--mh-gold) !important; }
.mh-footer-brand { font-family: 'Cormorant Garamond', Georgia, serif; letter-spacing: .025em; }
.mh-community { background: #f2efe7; border-block: 1px solid #e0d8c8; }
.mh-community-grid { display: grid; gap: 24px; }
.mh-review-preview, .mh-instagram { padding: 30px 24px; min-width: 0; }
.mh-review-preview { border-top: 1px solid var(--mh-gold); background: var(--mh-paper); }
.mh-editorial-label { font: italic 400 clamp(36px, 5vw, 52px)/1.2 'Cormorant Garamond', Georgia, serif; letter-spacing: -.015em; color: var(--mh-gold); margin-bottom: 22px !important; }
.mh-community h3 { font-size: 21px; font-weight: 500; }
.mh-community-description { font-size: var(--mh-text-size); margin-top: 16px !important; max-width: 34em; }
.mh-review-score { display: flex; align-items: center; gap: 24px; margin-top: 22px; }
.mh-review-score > strong { font: 400 68px/1.2 'Cormorant Garamond', Georgia, serif; }
.mh-review-score p { font-size: var(--mh-secondary-size); }
.mh-review-stars { color: var(--mh-gold); font: 18px/1.6 Arial, sans-serif; letter-spacing: .12em; }
.mh-review-date { max-width: 36em; font-size: var(--mh-caption-size); color: var(--mh-muted); margin-block: 8px 18px !important; }
.mh-instagram { background: var(--mh-ink); color: #f8f6f0; display: flex; flex-direction: column; }
.mh-instagram-profile { display: flex; gap: 14px; align-items: center; padding-bottom: 28px; }
.mh-instagram-profile img { width: 50px; height: 50px; object-fit: cover; object-position: center 24%; border-radius: 50%; }
.mh-instagram-profile p { font: var(--mh-caption-size)/1.5 Arial, sans-serif; letter-spacing: .1em; }
.mh-instagram-profile span { display: block; font-size: var(--mh-caption-size); margin-top: 3px; color: #c4d2d1; }
.mh-instagram-profile svg { width: 24px; height: 24px; flex-shrink: 0; margin-left: auto; color: var(--mh-gold-light); }
.mh-instagram .mh-editorial-label { color: var(--mh-gold-light); margin-bottom: 16px !important; }
.mh-instagram .mh-community-description { color: #d3ddda; margin-bottom: 28px !important; }
.mh-instagram-link { display: flex; align-items: center; justify-content: space-between; gap: 16px; border-top: 1px solid #9e8c6e; padding-top: 18px; margin-top: auto; }
.mh-instagram-link strong { font: 500 18px/1.6 Arial, sans-serif; letter-spacing: .01em; }
.mh-instagram-link small { display: block; font-size: var(--mh-caption-size); color: #d3ddda; margin-top: 4px; }
.mh-instagram-link > span:last-child { font-size: 26px; color: var(--mh-gold-light); }
.mh-instagram-link:hover strong { text-decoration: underline; text-underline-offset: 5px; }
.mh-instagram :focus-visible { outline-color: var(--mh-mint); }
.mv-breadcrumbs { display: flex; flex-wrap: wrap; gap: 12px; font-size: var(--mh-caption-size); color: var(--mh-muted); padding-block: 24px; }
.mv-breadcrumbs a { text-decoration: underline; text-underline-offset: 4px; }
.mv-hero { padding-bottom: 64px; }
.mv-hero-grid { display: grid; gap: 28px; padding-top: 18px; }
.mv-hero-grid > * { min-width: 0; }
.mv-hero h1 { font-size: clamp(28px, 8vw, 38px); font-weight: 500; line-height: 1.6; }
.mv-hero-copy > p:not(.mh-eyebrow) { max-width: 34em; margin-top: 22px; font-size: var(--mh-text-size); color: var(--mh-muted); }
.mv-hero-copy > p.mh-editorial-label { font-size: clamp(34px, 4.3vw, 62px); color: var(--mh-gold); margin-top: 24px !important; }
.mv-summary { background: #eee9df; padding: 28px; border-top: 1px solid var(--mh-gold); align-self: center; }
.mv-summary > p:first-child { font-size: var(--mh-secondary-size); font-weight: 700; }
.mv-summary .mh-review-score { margin-top: 10px; }
.mv-summary .mh-review-score > strong { font-size: 88px; }
.mv-summary .mh-text-link { font-size: var(--mh-secondary-size); }
.mv-voices { background: #fff; }
.mv-intro { max-width: 48em; color: var(--mh-muted); font-size: var(--mh-text-size); margin-bottom: 40px !important; }
.mv-review { display: grid; gap: 24px; padding-block: 34px; border-top: 1px solid #d9d3c6; }
.mv-review-topic > span { font: italic 400 28px/1.4 'Cormorant Garamond', Georgia, serif; color: var(--mh-gold); }
.mv-review-topic h3 { font-size: 17px; margin-top: 8px; font-weight: 500; }
.mv-review blockquote { padding: 0; margin: 0; font-size: 20px; font-weight: 500; line-height: 1.9; letter-spacing: .01em; }
.mv-review figcaption { margin-top: 18px; font-size: var(--mh-caption-size); color: var(--mh-muted); }
.mv-review cite { font-style: normal; }
.mv-review figcaption a { text-decoration: underline; text-underline-offset: 3px; }
.mv-disclaimer { font-size: var(--mh-caption-size); color: var(--mh-muted); border-top: 1px solid #d9d3c6; padding-top: 24px; }
.mv-bridge { display: grid; gap: 32px; align-items: center; }
.mv-bridge-photo img { width: 100%; aspect-ratio: 4/3; object-fit: cover; border-radius: 2px; }
.mv-bridge-photo figcaption { font-size: var(--mh-caption-size); color: var(--mh-muted); padding-top: 10px; }
.mv-bridge-copy > p { margin-top: 20px; color: var(--mh-muted); font-size: var(--mh-text-size); }
.mv-bridge-actions { display: flex; flex-wrap: wrap; gap: 16px 24px; margin-top: 24px; align-items: center; }
@media (min-width: 700px) {
    .mh-hero-figure::before { inset: -12px 12px 12px -12px; }
    .mh-community-grid { grid-template-columns: 1fr 1fr; gap: 24px; }
    .mh-review-preview, .mh-instagram { padding: 36px 28px; }
    .mh-community h3 { font-size: 23px; }
    .mv-hero-grid { grid-template-columns: 1.25fr 1fr; gap: 48px; align-items: center; padding-top: 36px; }
    .mv-hero h1 { font-size: clamp(32px, 5.2vw, 58px); }
    .mv-hero { padding-bottom: 88px; }
    .mv-review { grid-template-columns: 220px 1fr; gap: 48px; padding-block: 48px; }
    .mv-review blockquote { font-size: 23px; }
    .mv-bridge { grid-template-columns: 1fr 1.1fr; gap: 48px; }
}
@media (min-width: 1100px) {
    .mh-nav { gap: 20px; }
    .mh-review-preview, .mh-instagram { padding: 48px; }
    .mh-community-grid { gap: 32px; }
    .mv-summary { padding: 42px; }
    .mv-review { grid-template-columns: 280px 1fr; gap: 70px; }
    .mv-review blockquote { font-size: 26px; max-width: 29em; }
}
