/*
 * Member Hub — page-scoped composition.
 * Ports prototypes/7/15-member-hub.html @ 8704838 (v6-to-v7 fidelity pass,
 * Brief 2026-06-01). Reserve-cool register, lifted from the 05-wine-club +
 * 28-foundation-our-impact peer surfaces. The prototype's demo toggle and
 * the `body.is-logged-*` JS visibility helpers are intentionally NOT ported
 * — gating is server-side (winery_for_wp_is_authenticated_customer) and the
 * `mh-only-*` toggle was SEO-leaky, replaced by PHP. The reveal system,
 * hero parallax, and scroll-progress hairline ARE ported (Pass-2 slice 1);
 * their markup + driving JS land in blocks/member-hub/view.js (slice 4).
 */

/* v7 token alignment (scoped -- Brief 2026-06-01 D1). v7's prototypes/7/styles.css
 * globally lightened rhino-grey #6E6A62 -> #9C968A for muted/secondary text and
 * soft rules. Scope the lift to member-hub only; the global theme.json `rhino`
 * token stays #6E6A62 pending the separate v7-token-alignment brief. One override
 * closes every muted-text drift across all four states. */
.rhinory-member-hub{ --rhino:#9C968A; }

.rhinory-member-hub .wrap{ max-width:var(--rhinory-max-w); margin:0 auto; padding:0 var(--rhinory-px); }

/* ===== STATE BANNER ===== */
.mh-state-banner{
  background:rgba(8,16,12,0.92);
  border-bottom:1px solid var(--rule);
  padding:10px 0;
}
.mh-state-banner .wrap{
  display:flex; align-items:center; justify-content:space-between; gap:24px;
  flex-wrap:wrap;
}
.mh-state-banner .sb-left{
  display:flex; align-items:center; gap:14px;
  font-family:"JetBrains Mono",monospace; font-size:10.5px; letter-spacing:0.20em;
  text-transform:uppercase; color:var(--rhino);
}
.mh-state-banner .sb-left .dot{
  width:8px; height:8px; border-radius:50%; background:var(--acacia);
  box-shadow:0 0 0 4px rgba(212,162,76,0.18);
}
.mh-state-banner.is-logged-out .sb-left .dot{
  background:var(--acacia); box-shadow:0 0 0 4px rgba(184,91,44,0.18);
}
.mh-state-banner.is-inactive .sb-left .dot{
  background:var(--bone); box-shadow:0 0 0 4px rgba(217,205,180,0.16);
}
/* prospect dot keeps default acacia */
.mh-state-banner .sb-left strong{
  color:var(--ivory); font-weight:500; font-family:"Inter Tight",sans-serif;
  text-transform:none; letter-spacing:0.02em; font-size:14px;
}
.mh-state-banner .sb-left em{ color:var(--acacia); font-style:normal; }
.mh-state-banner .sb-right{
  display:flex; align-items:center; gap:18px;
  font-family:"JetBrains Mono",monospace; font-size:10px; letter-spacing:0.18em;
  text-transform:uppercase; color:var(--rhino);
}
.mh-state-banner .sb-right a{
  color:var(--ivory); transition:color .2s;
  border-bottom:1px solid transparent; padding-bottom:1px;
}
.mh-state-banner .sb-right a:hover{ color:var(--acacia); border-bottom-color:var(--acacia); }
.mh-state-banner .sb-right .sep{ color:var(--rhino); opacity:.5; }

/* ===== SEASONAL HERO (logged-in) ===== */
.mh-hero{
  position:relative; min-height:72vh; background:#000; color:var(--ivory);
  overflow:hidden; border-bottom:1px solid var(--rule);
}
.mh-hero-img{
  position:absolute; left:0; right:0; top:-40px; bottom:-180px;
  background-color:#0d1611;
  /* Bundled default (members-banner); an operator hero image, when set, wins via
     the inline style emitted in render.php. ::after carries the legibility wash. */
  background-image:url('/app/themes/rhinory-v4/assets/images/member-banner.jpg');
  background-image:-webkit-image-set(url('/app/themes/rhinory-v4/assets/images/member-banner.webp') type('image/webp'), url('/app/themes/rhinory-v4/assets/images/member-banner.jpg') type('image/jpeg'));
  background-image:image-set(url('/app/themes/rhinory-v4/assets/images/member-banner.webp') type('image/webp'), url('/app/themes/rhinory-v4/assets/images/member-banner.jpg') type('image/jpeg'));
  background-size:cover; background-position:center 45%;
  filter:saturate(0.94) contrast(1.06);
}
.mh-hero-img::after{
  content:""; position:absolute; inset:0;
  background:
    linear-gradient(180deg, rgba(15,26,20,0.78) 0%, rgba(15,26,20,0.42) 32%, rgba(15,26,20,0.94) 100%),
    radial-gradient(82% 68% at 22% 78%, rgba(15,26,20,0.72) 0%, rgba(15,26,20,0) 70%);
}
.mh-hero-grain{
  position:absolute; inset:0; pointer-events:none; opacity:.10;
  background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='140' height='140'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2'/></filter><rect width='100%25' height='100%25' filter='url(%23n)' opacity='0.6'/></svg>");
  mix-blend-mode:overlay;
}
.mh-hero-inner{
  position:relative; z-index:2;
  padding:96px 0 80px 0;
  display:grid; grid-template-columns:1.4fr 1fr; gap:80px; align-items:end;
}
.mh-eyebrow{
  font-family:"JetBrains Mono",monospace; font-size:11px; letter-spacing:0.28em;
  text-transform:uppercase; color:var(--acacia); margin-bottom:14px;
  display:flex; align-items:center; gap:14px; flex-wrap:wrap;
}
.mh-eyebrow::before{ content:""; width:32px; height:1px; background:var(--acacia) }
.mh-eyebrow .slot-tag{
  display:inline-flex; align-items:center; gap:6px;
  padding:3px 8px; border:1px dashed rgba(212,162,76,0.45);
  color:var(--acacia); opacity:.85;
  font-size:9.5px; letter-spacing:0.18em;
}
.mh-sub-eyebrow{
  font-family:"JetBrains Mono",monospace; font-size:10px; letter-spacing:0.24em;
  text-transform:uppercase; color:rgba(241,232,214,0.66);
  margin-bottom:18px;
}
.mh-greeting{
  font-family:"Cormorant Garamond",serif; font-style:italic; font-weight:300;
  font-size:20px; line-height:1.4; color:rgba(241,232,214,0.8);
  margin:0 0 18px 0;
}
.mh-greeting em{ color:var(--acacia); font-style:italic; font-weight:400; }
.mh-headline{
  font-family:"Cormorant Garamond",Georgia,serif; font-weight:400;
  font-size:clamp(50px,6.6vw,96px); line-height:0.98; letter-spacing:-0.014em;
  margin:0 0 24px 0; text-wrap:pretty;
}
.mh-headline em{ font-style:italic; font-weight:300; color:var(--acacia) }
.mh-welcome{
  font-size:17px; line-height:1.66; max-width:54ch;
  color:rgba(241,232,214,0.92); margin:0 0 22px 0;
}
.mh-hero-ctas{ display:flex; gap:14px; flex-wrap:wrap }
.mh-btn{
  display:inline-flex; align-items:center; gap:10px; padding:14px 22px;
  font-family:"JetBrains Mono",monospace; font-size:11px; letter-spacing:0.20em;
  text-transform:uppercase; font-weight:500;
  transition:background .25s, transform .2s, letter-spacing .25s;
  text-decoration:none;
}
.mh-btn.primary{ background:var(--acacia); color:var(--reserve); }
.mh-btn.primary:hover{ background:var(--ivory); transform:translateY(-1px); letter-spacing:0.22em; }
.mh-btn.ghost{ background:transparent; border:1px solid var(--rule); color:var(--ivory); }
.mh-btn.ghost:hover{ border-color:var(--acacia); color:var(--acacia); }
.mh-btn .arrow{ width:14px; height:1px; background:currentColor; position:relative; display:inline-block; }
.mh-btn .arrow::after{
  content:""; position:absolute; right:-1px; top:-3px;
  width:7px; height:7px; border-top:1px solid currentColor; border-right:1px solid currentColor;
  transform:rotate(45deg);
}
.mh-btn:hover .arrow{ transform:translateX(4px); transition:transform .3s cubic-bezier(.2,.7,.2,1); }

/* Member glance card */
.mh-glance{
  background:rgba(8,16,12,0.86);
  backdrop-filter:blur(18px) saturate(140%);
  -webkit-backdrop-filter:blur(18px) saturate(140%);
  border:1px solid var(--rule); padding:28px 30px;
}
.mh-glance .gl-head{
  display:flex; justify-content:space-between; align-items:baseline;
  border-bottom:1px solid var(--rule); padding-bottom:14px; margin-bottom:8px;
}
.mh-glance .gl-head .lbl{
  font-family:"JetBrains Mono",monospace; font-size:10px; letter-spacing:0.22em;
  text-transform:uppercase; color:var(--acacia);
}
.mh-glance .gl-head .id{
  font-family:"JetBrains Mono",monospace; font-size:10px; letter-spacing:0.18em;
  text-transform:uppercase; color:var(--rhino);
}
.mh-glance .gl-row{
  display:flex; justify-content:space-between; align-items:flex-start; gap:18px;
  padding:14px 0; border-bottom:1px solid var(--rule-soft);
}
.mh-glance .gl-row:last-child{ border-bottom:0 }
.mh-glance .gl-k{
  font-family:"JetBrains Mono",monospace; font-size:10px; letter-spacing:0.22em;
  text-transform:uppercase; color:#C9B98A; opacity:.95; max-width:14ch;
}
.mh-glance .gl-v{
  font-family:"Cormorant Garamond",serif; font-size:22px; line-height:1.15;
  color:var(--ivory); text-align:right;
}
.mh-glance .gl-v em{ color:var(--acacia); font-style:italic; font-weight:400; }
.mh-glance .gl-v small{
  display:block; font-family:"Inter Tight",sans-serif; font-size:11.5px; letter-spacing:0.05em;
  color:rgba(241,232,214,0.72); margin-top:4px; font-style:normal; line-height:1.45;
}
.mh-glance .gl-row.gl-lead{ padding:18px 0 16px 0; }
.mh-glance .gl-row.gl-lead .gl-v{
  font-family:"Cormorant Garamond",serif; font-style:italic; font-weight:300;
  font-size:32px; line-height:1; color:var(--acacia); letter-spacing:-0.012em;
}
.mh-glance .gl-foot{
  margin-top:6px; padding-top:14px; border-top:1px solid var(--rule);
  display:flex; gap:10px; flex-wrap:wrap;
}
.mh-glance .gl-foot a{
  font-family:"JetBrains Mono",monospace; font-size:9.5px; letter-spacing:0.20em;
  text-transform:uppercase; color:rgba(241,232,214,0.78);
  padding:6px 10px; border:1px solid var(--rule); transition:all .2s;
  text-decoration:none;
}
.mh-glance .gl-foot a:hover{ border-color:var(--acacia); color:var(--acacia); }

/* ===== KEY-DATES STRIP ===== */
.mh-keydates{
  border-top:1px solid var(--rule); border-bottom:1px solid var(--rule);
  background:#000;
}
.mh-keydates-grid{ display:grid; grid-template-columns:repeat(4,1fr); }
.mh-keydates-cell{
  padding:26px 28px; border-right:1px solid var(--rule);
  display:flex; flex-direction:column; gap:6px;
}
.mh-keydates-cell:last-child{ border-right:0 }
.mh-keydates-cell .kd-tag{
  font-family:"JetBrains Mono",monospace; font-size:10px; letter-spacing:0.22em;
  text-transform:uppercase; color:var(--acacia);
}
.mh-keydates-cell .kd-val{
  font-family:"Cormorant Garamond",serif; font-size:32px; line-height:1.04;
  color:var(--ivory); font-weight:400; margin-top:2px;
}
.mh-keydates-cell .kd-val em{ font-style:italic; color:var(--acacia); font-weight:300; }
.mh-keydates-cell .kd-meta{
  font-family:"JetBrains Mono",monospace; font-size:9.5px; letter-spacing:0.18em;
  text-transform:uppercase; color:var(--rhino); margin-top:4px;
}

/* ===== SECTION FRAMING ===== */
.mh-section{ padding:96px 0; border-top:1px solid var(--rule); color:var(--ivory); }
.mh-section.tight{ padding:72px 0; }
.mh-section.green{ background:var(--reserve-2); }
.mh-section.charcoal{ background:#0A0807; }
.mh-section-head{
  display:grid; grid-template-columns:240px 1fr; gap:60px;
  align-items:end; margin-bottom:48px;
}
.mh-section-head .eye-col .eyebrow{
  font-family:"JetBrains Mono",monospace; font-size:11px; letter-spacing:0.28em;
  text-transform:uppercase; color:var(--acacia); display:inline-flex; align-items:center; gap:14px;
}
.mh-section-head .eye-col .eyebrow::before{ content:""; width:32px; height:1px; background:currentColor; }
.mh-section-head h2{
  font-family:"Cormorant Garamond",serif; font-weight:400;
  font-size:clamp(36px,4.4vw,60px); line-height:1.02; letter-spacing:-0.014em;
  margin:0 0 12px 0;
}
.mh-section-head h2 em{ font-style:italic; font-weight:300; color:var(--acacia); }
.mh-section-head .lede{
  font-size:16px; line-height:1.62; opacity:.86; margin:0; max-width:64ch;
}
.mh-section-head .lede em{ font-style:italic; color:var(--acacia); }
@media (max-width:900px){
  .mh-section-head{ grid-template-columns:1fr; gap:24px; }
}

/* ===== ALLOCATION ===== */
.mh-alloc{
  display:grid; grid-template-columns:1fr 1.15fr; gap:0;
  border:1px solid var(--rule); background:var(--reserve-2);
}
.mh-alloc-img{
  background-color:#1a2820;
  background-image:url('/app/themes/rhinory-v4/assets/images/member-membership-pack.jpg');
  background-image:-webkit-image-set(url('/app/themes/rhinory-v4/assets/images/member-membership-pack.webp') type('image/webp'), url('/app/themes/rhinory-v4/assets/images/member-membership-pack.jpg') type('image/jpeg'));
  background-image:image-set(url('/app/themes/rhinory-v4/assets/images/member-membership-pack.webp') type('image/webp'), url('/app/themes/rhinory-v4/assets/images/member-membership-pack.jpg') type('image/jpeg'));
  background-size:cover; background-position:center 38%;
  min-height:520px; border-right:1px solid var(--rule);
  position:relative; overflow:hidden;
}
.mh-alloc-img::after{
  content:""; position:absolute; inset:0;
  background:linear-gradient(180deg, rgba(15,26,20,0) 40%, rgba(15,26,20,0.55) 100%);
}
.mh-alloc-img .stand-in{
  position:absolute; left:18px; bottom:18px; z-index:2;
  font-family:"JetBrains Mono",monospace; font-size:9.5px; letter-spacing:0.20em;
  text-transform:uppercase; color:rgba(241,232,214,0.78);
  padding:6px 10px; border:1px dashed rgba(241,232,214,0.32);
  background:rgba(15,26,20,0.55);
}
.mh-alloc-body{
  padding:42px 40px; display:flex; flex-direction:column; gap:18px;
  background:linear-gradient(180deg, rgba(212,162,76,0.05), rgba(15,26,20,0.4));
}
.mh-alloc-body .ab-eyebrow{
  font-family:"JetBrains Mono",monospace; font-size:10.5px; letter-spacing:0.22em;
  text-transform:uppercase; color:var(--acacia);
  display:inline-flex; align-items:center; gap:14px;
}
.mh-alloc-body .ab-eyebrow::before{ content:""; width:24px; height:1px; background:currentColor; }
.mh-alloc-body h3{
  font-family:"Cormorant Garamond",serif; font-weight:400;
  font-size:clamp(32px,3.6vw,52px); line-height:1.04; margin:0; letter-spacing:-0.014em;
}
.mh-alloc-body h3 em{ font-style:italic; font-weight:300; color:var(--acacia); }
.mh-alloc-body p.lede{ font-size:15px; line-height:1.66; opacity:.88; margin:0; }
.mh-alloc-bullets{
  list-style:none; padding:0; margin:0;
  display:flex; flex-direction:column; gap:14px;
  border-top:1px solid var(--rule); padding-top:18px;
}
.mh-alloc-bullets li{
  display:grid; grid-template-columns:auto 1fr; gap:16px; align-items:flex-start;
  font-size:14.5px; line-height:1.55;
}
.mh-alloc-bullets li .pip{
  font-family:"JetBrains Mono",monospace; font-size:10px; letter-spacing:0.18em;
  text-transform:uppercase; color:var(--acacia); padding-top:2px; min-width:88px;
}
.mh-alloc-bullets li strong{ font-weight:500; color:var(--ivory); }
.mh-alloc-bullets li em{ font-style:italic; color:var(--acacia); font-weight:400; }
.mh-alloc-close{
  font-family:"Cormorant Garamond",serif; font-style:italic; font-weight:300;
  font-size:17px; line-height:1.55; color:rgba(241,232,214,0.88);
  margin:0; padding-top:12px; border-top:1px solid var(--rule-soft);
}
.mh-alloc-close strong{ color:var(--acacia); font-weight:400; font-style:italic; }
.mh-alloc-foot{
  display:flex; justify-content:space-between; align-items:flex-end; gap:18px; flex-wrap:wrap;
  border-top:1px solid var(--rule); padding-top:20px; margin-top:6px;
}
.mh-alloc-foot .meta{
  font-family:"JetBrains Mono",monospace; font-size:10px; letter-spacing:0.20em;
  text-transform:uppercase; color:var(--rhino);
}
.mh-alloc-foot .ctas{ display:flex; gap:10px; flex-wrap:wrap; }

.mh-alloc-wines{
  margin-top:28px;
  display:grid; grid-template-columns:repeat(3,1fr); gap:0;
  border:1px solid var(--rule); background:var(--reserve-2);
}
.mh-alloc-wine{
  padding:24px 24px; border-right:1px solid var(--rule);
  display:flex; flex-direction:column; gap:8px;
}
.mh-alloc-wine:last-child{ border-right:0 }
.mh-alloc-wine.is-rare{ background:linear-gradient(180deg, rgba(212,162,76,0.08), rgba(15,26,20,0.3)); }
.mh-alloc-wine .yr{
  font-family:"JetBrains Mono",monospace; font-size:10px; letter-spacing:0.20em;
  text-transform:uppercase; color:var(--acacia);
}
.mh-alloc-wine .nm{
  font-family:"Cormorant Garamond",serif; font-size:24px; line-height:1.15;
  color:var(--ivory); font-weight:400;
}
.mh-alloc-wine .nm em{ font-style:italic; color:var(--acacia); font-weight:300; }
.mh-alloc-wine .meta{ font-size:13px; line-height:1.5; opacity:.78; margin:0; }
.mh-alloc-wine .tag{
  margin-top:auto; padding-top:10px;
  font-family:"JetBrains Mono",monospace; font-size:9.5px; letter-spacing:0.20em;
  text-transform:uppercase; color:var(--rhino);
  border-top:1px solid var(--rule-soft);
}
.mh-alloc-wine.is-rare .tag{ color:var(--acacia); }

/* ===== SUMMER SOIRÉE ===== */
.mh-soiree{
  margin-top:48px;
  display:grid; grid-template-columns:1fr 1.1fr; gap:0;
  border:1px solid var(--rule);
  background:linear-gradient(180deg, rgba(212,162,76,0.07), rgba(15,26,20,0.4));
}
.mh-soiree .ss-art{
  background-color:#0d1611;
  background-image:url('/app/themes/rhinory-v4/assets/images/member-soiree.jpg');
  background-image:-webkit-image-set(url('/app/themes/rhinory-v4/assets/images/member-soiree.webp') type('image/webp'), url('/app/themes/rhinory-v4/assets/images/member-soiree.jpg') type('image/jpeg'));
  background-image:image-set(url('/app/themes/rhinory-v4/assets/images/member-soiree.webp') type('image/webp'), url('/app/themes/rhinory-v4/assets/images/member-soiree.jpg') type('image/jpeg'));
  background-size:cover; background-position:center 40%;
  min-height:380px; border-right:1px solid var(--rule);
  position:relative; overflow:hidden;
}
.mh-soiree .ss-art::after{
  content:""; position:absolute; inset:0;
  background:linear-gradient(135deg, rgba(15,26,20,0.4) 0%, rgba(15,26,20,0.1) 50%, rgba(15,26,20,0.5) 100%);
}
.mh-soiree .ss-body{ padding:40px 36px; display:flex; flex-direction:column; gap:16px; }
.mh-soiree .ss-eyebrow{
  font-family:"JetBrains Mono",monospace; font-size:10.5px; letter-spacing:0.22em;
  text-transform:uppercase; color:var(--acacia);
}
.mh-soiree h3{
  font-family:"Cormorant Garamond",serif; font-weight:400;
  font-size:clamp(40px,4.6vw,68px); line-height:1; margin:0; letter-spacing:-0.014em;
}
.mh-soiree h3 em{ font-style:italic; font-weight:300; color:var(--acacia); }
.mh-soiree .ss-meta{
  display:grid; grid-template-columns:repeat(3,1fr); gap:0;
  border:1px solid var(--rule);
}
.mh-soiree .ss-meta .m{
  padding:14px 18px; border-right:1px solid var(--rule);
  display:flex; flex-direction:column; gap:4px;
}
.mh-soiree .ss-meta .m:last-child{ border-right:0; }
.mh-soiree .ss-meta .m .mk{
  font-family:"JetBrains Mono",monospace; font-size:9.5px; letter-spacing:0.20em;
  text-transform:uppercase; color:var(--rhino);
}
.mh-soiree .ss-meta .m .mv{
  font-family:"Cormorant Garamond",serif; font-size:22px; line-height:1.1; color:var(--ivory);
  font-weight:400;
}
.mh-soiree .ss-meta .m .mv em{ font-style:italic; color:var(--acacia); font-weight:300; }
.mh-soiree p{ font-size:15px; line-height:1.62; opacity:.9; margin:0; }
.mh-soiree .ss-foot{
  display:flex; justify-content:space-between; align-items:center; gap:18px; flex-wrap:wrap;
  border-top:1px solid var(--rule); padding-top:18px; margin-top:6px;
}
.mh-soiree .ss-foot .rsvp{
  font-family:"JetBrains Mono",monospace; font-size:10px; letter-spacing:0.20em;
  text-transform:uppercase; color:var(--acacia);
}

/* ===== CALENDAR ===== */
.mh-cal{ border:1px solid var(--rule); background:var(--reserve-2); }
.mh-cal-head{
  display:grid;
  grid-template-columns:200px repeat(5, 1fr) 110px;
  background:rgba(15,26,20,0.6); border-bottom:1px solid var(--rule);
}
.mh-cal-head .hk{
  padding:14px 18px; border-right:1px solid var(--rule);
  font-family:"JetBrains Mono",monospace; font-size:10px; letter-spacing:0.22em;
  text-transform:uppercase; color:var(--acacia);
}
.mh-cal-head .hk:last-child{ border-right:0; }
.mh-cal-row{
  display:grid;
  grid-template-columns:200px repeat(5, 1fr) 110px;
  border-bottom:1px solid var(--rule);
  transition:background .2s;
}
.mh-cal-row:last-child{ border-bottom:0; }
.mh-cal-row:hover{ background:rgba(212,162,76,0.04); }
.mh-cal-row.is-optional{ background:rgba(15,26,20,0.5); }
.mh-cal-row .cell{
  padding:18px 18px; border-right:1px solid var(--rule-soft);
  display:flex; flex-direction:column; gap:4px;
}
.mh-cal-row .cell:last-child{ border-right:0; }
.mh-cal-row .cell.cycle{
  border-right:1px solid var(--rule);
  background:rgba(15,26,20,0.45);
}
.mh-cal-row .cell.cycle .cy{
  font-family:"JetBrains Mono",monospace; font-size:11px; letter-spacing:0.18em;
  text-transform:uppercase; color:var(--acacia); font-weight:500;
}
.mh-cal-row.is-optional .cell.cycle .cy{ color:var(--acacia); }
.mh-cal-row .cell.cycle .cylabel{
  font-family:"Cormorant Garamond",serif; font-size:18px; line-height:1.2; color:var(--ivory);
  font-weight:400; margin-top:2px;
}
.mh-cal-row .cell.cycle .cylabel em{ font-style:italic; color:var(--acacia); font-weight:300; }
.mh-cal-row .cell.date .dn{
  font-family:"Cormorant Garamond",serif; font-size:22px; line-height:1; color:var(--ivory);
  font-weight:400;
}
.mh-cal-row .cell.date .dn em{ font-style:italic; color:var(--acacia); font-weight:300; }
.mh-cal-row .cell.date .dlbl{
  font-family:"JetBrains Mono",monospace; font-size:9px; letter-spacing:0.18em;
  text-transform:uppercase; color:var(--rhino); margin-top:4px;
}
.mh-cal-row .cell.flag{ border-right:0; align-items:flex-end; justify-content:center; }
.mh-cal-row .cell.flag .chip{
  font-family:"JetBrains Mono",monospace; font-size:9.5px; letter-spacing:0.20em;
  text-transform:uppercase; padding:6px 12px;
  border:1px solid var(--acacia); color:var(--acacia);
}
.mh-cal-row.is-optional .cell.flag .chip{ border-color:var(--acacia); color:var(--acacia); }
.mh-cal-note{
  margin-top:24px;
  display:grid; grid-template-columns:1fr 1fr; gap:24px;
  font-size:13.5px; line-height:1.62; opacity:.86;
}
.mh-cal-note .nk{
  font-family:"JetBrains Mono",monospace; font-size:10px; letter-spacing:0.20em;
  text-transform:uppercase; color:var(--acacia); display:block; margin-bottom:8px;
}
.mh-cal-note p em{ font-style:italic; color:var(--acacia); }
@media (max-width:1100px){
  .mh-cal-head, .mh-cal-row{ grid-template-columns:1fr; }
  .mh-cal-head .hk{ display:none; }
  .mh-cal-row .cell.cycle{ border-bottom:1px solid var(--rule-soft); }
  .mh-cal-row .cell.date::before{
    content:attr(data-label); font-family:"JetBrains Mono",monospace; font-size:9.5px;
    letter-spacing:0.20em; text-transform:uppercase; color:var(--acacia);
    display:block; margin-bottom:4px;
  }
  .mh-cal-row .cell.flag{ align-items:flex-start; padding-top:0; }
}

/* ===== EVENTS ===== */
.mh-events{
  display:grid; grid-template-columns:repeat(3,1fr); gap:0;
  border:1px solid var(--rule);
}
.mh-event{
  padding:0; border-right:1px solid var(--rule);
  background:var(--reserve-2);
  display:flex; flex-direction:column;
  transition:background .35s, transform .35s;
}
.mh-event:last-child{ border-right:0; }
.mh-event:hover{ background:rgba(212,162,76,0.04); transform:translateY(-2px); }
.mh-event.is-flagship{ background:linear-gradient(180deg, rgba(212,162,76,0.08), rgba(15,26,20,0.3)); }
.mh-event-art{
  background-size:cover; background-position:center;
  min-height:200px; border-bottom:1px solid var(--rule);
  position:relative; overflow:hidden;
}
.mh-event-art::after{
  content:""; position:absolute; inset:0;
  background:linear-gradient(180deg, rgba(15,26,20,0) 50%, rgba(15,26,20,0.6) 100%);
}
.mh-event-body{
  padding:28px 28px; display:flex; flex-direction:column; gap:12px; flex:1;
}
.mh-event-body .ev-eye{
  font-family:"JetBrains Mono",monospace; font-size:10px; letter-spacing:0.22em;
  text-transform:uppercase; color:var(--acacia);
}
.mh-event-body h4{
  font-family:"Cormorant Garamond",serif; font-weight:400;
  font-size:28px; line-height:1.08; margin:0; letter-spacing:-0.012em;
}
.mh-event-body h4 em{ font-style:italic; font-weight:300; color:var(--acacia); }
.mh-event-body .ev-sub{
  font-family:"Cormorant Garamond",serif; font-style:italic; font-weight:300;
  font-size:15px; line-height:1.45; color:rgba(241,232,214,0.78); margin:0;
}
.mh-event-body .ev-meta{
  display:flex; flex-direction:column; gap:6px;
  padding:14px 0; border-top:1px solid var(--rule); border-bottom:1px solid var(--rule);
}
.mh-event-body .ev-meta .m{
  display:grid; grid-template-columns:80px 1fr; gap:14px; align-items:baseline;
  font-size:13px; line-height:1.4;
}
.mh-event-body .ev-meta .mk{
  font-family:"JetBrains Mono",monospace; font-size:9.5px; letter-spacing:0.20em;
  text-transform:uppercase; color:var(--rhino);
}
.mh-event-body .ev-meta .mv{ color:var(--ivory); }
.mh-event-body .ev-meta .mv em{ color:var(--acacia); font-style:italic; }
.mh-event-body p{ font-size:13.5px; line-height:1.6; opacity:.86; margin:0; flex:1; }
.mh-event-body .ev-cta{
  margin-top:auto; padding-top:14px;
  display:inline-flex; align-items:center; gap:10px;
  font-family:"JetBrains Mono",monospace; font-size:10.5px; letter-spacing:0.20em;
  text-transform:uppercase; color:var(--acacia); align-self:flex-start;
  border-top:1px solid var(--rule-soft);
  width:100%; text-decoration:none;
}
.mh-event-body .ev-cta:hover{ color:var(--ivory); }
.mh-event-body .ev-cta .arrow{ width:14px; height:1px; background:currentColor; position:relative; }
.mh-event-body .ev-cta .arrow::after{
  content:""; position:absolute; right:-1px; top:-3px;
  width:7px; height:7px; border-top:1px solid currentColor; border-right:1px solid currentColor;
  transform:rotate(45deg);
}
@media (max-width:1100px){
  .mh-events{ grid-template-columns:1fr; }
  .mh-event{ border-right:0; border-bottom:1px solid var(--rule); }
  .mh-event:last-child{ border-bottom:0; }
}

/* ===== EXPERIENCES ===== */
.mh-exp-grid{
  display:grid; grid-template-columns:repeat(3,1fr); gap:0;
  border:1px solid var(--rule); margin-top:48px;
}
.mh-exp{
  padding:32px 30px; border-right:1px solid var(--rule);
  display:flex; flex-direction:column; gap:14px;
  background:var(--reserve-2); transition:background .3s;
}
.mh-exp:last-child{ border-right:0; }
.mh-exp:hover{ background:rgba(212,162,76,0.04); }
.mh-exp .ex-eye{
  font-family:"JetBrains Mono",monospace; font-size:10px; letter-spacing:0.22em;
  text-transform:uppercase; color:var(--acacia);
}
.mh-exp h4{
  font-family:"Cormorant Garamond",serif; font-weight:400;
  font-size:30px; line-height:1.04; margin:0; letter-spacing:-0.012em;
}
.mh-exp h4 em{ font-style:italic; font-weight:300; color:var(--acacia); }
.mh-exp .ex-host{
  font-family:"Cormorant Garamond",serif; font-style:italic; font-weight:300;
  font-size:16.5px; color:rgba(241,232,214,0.78); margin:0;
}
.mh-exp .ex-host strong{ color:var(--acacia); font-weight:400; font-style:italic; }
.mh-exp p{ font-size:13.5px; line-height:1.6; opacity:.86; margin:0; }
.mh-exp .ex-cta{
  margin-top:auto; padding-top:14px; border-top:1px solid var(--rule-soft);
  font-family:"JetBrains Mono",monospace; font-size:10px; letter-spacing:0.20em;
  text-transform:uppercase; color:var(--acacia); align-self:flex-start;
}
@media (max-width:900px){
  .mh-exp-grid{ grid-template-columns:1fr; }
  .mh-exp{ border-right:0; border-bottom:1px solid var(--rule); }
  .mh-exp:last-child{ border-bottom:0; }
}

/* ===== BLAKE ANCHORS ===== */
.mh-anchors{
  margin-top:36px;
  display:grid; grid-template-columns:1fr 1fr; gap:0;
  border:1px dashed rgba(217,205,180,0.30);
  background:rgba(15,26,20,0.42);
}
.mh-anchor{
  padding:24px 26px;
  display:grid; grid-template-columns:auto 1fr auto; gap:22px; align-items:center;
  border-right:1px dashed rgba(217,205,180,0.22);
}
.mh-anchor:last-child{ border-right:0; }
.mh-anchor .an-date{
  display:flex; flex-direction:column; align-items:flex-start;
  padding:10px 14px; border:1px dashed rgba(217,205,180,0.36);
  background:rgba(8,16,12,0.55); min-width:88px;
}
.mh-anchor .an-date .mo{
  font-family:"JetBrains Mono",monospace; font-size:9.5px; letter-spacing:0.22em;
  text-transform:uppercase; color:var(--bone); opacity:.88;
}
.mh-anchor .an-date .dy{
  font-family:"Cormorant Garamond",serif; font-size:30px; line-height:1; color:var(--ivory);
  font-weight:400; margin-top:3px;
}
.mh-anchor .an-date .dy em{ font-style:italic; color:var(--bone); font-weight:300; }
.mh-anchor .an-body{ display:flex; flex-direction:column; gap:6px; min-width:0; }
.mh-anchor .an-eye{
  font-family:"JetBrains Mono",monospace; font-size:9.5px; letter-spacing:0.22em;
  text-transform:uppercase; color:var(--bone); opacity:.92;
  display:inline-flex; align-items:center; gap:10px;
}
.mh-anchor .an-eye::before{ content:""; width:14px; height:1px; background:currentColor; }
.mh-anchor h5{
  font-family:"Cormorant Garamond",serif; font-weight:400;
  font-size:22px; line-height:1.15; margin:0; letter-spacing:-0.008em;
  color:var(--ivory);
}
.mh-anchor h5 em{ font-style:italic; color:var(--bone); font-weight:300; }
.mh-anchor .an-note{
  font-family:"Cormorant Garamond",serif; font-style:italic; font-weight:300;
  font-size:14.5px; line-height:1.45; color:rgba(241,232,214,0.74); margin:0;
  text-wrap:pretty;
}
.mh-anchor .an-note em{ font-style:italic; color:var(--bone); }
.mh-anchor .an-chip{
  font-family:"JetBrains Mono",monospace; font-size:9px; letter-spacing:0.20em;
  text-transform:uppercase; padding:5px 10px;
  border:1px dashed rgba(217,205,180,0.48); color:var(--bone);
  white-space:nowrap; align-self:center;
}
@media (max-width:1100px){
  .mh-anchors{ grid-template-columns:1fr; }
  .mh-anchor{ border-right:0; border-bottom:1px dashed rgba(217,205,180,0.22); }
  .mh-anchor:last-child{ border-bottom:0; }
}
@media (max-width:640px){
  .mh-anchor{ grid-template-columns:auto 1fr; gap:16px; }
  .mh-anchor .an-chip{ grid-column:1 / -1; justify-self:flex-start; }
}

/* ===== BASH QUOTE ===== */
.mh-bash-quote{
  margin-top:48px; padding:42px 40px;
  background:var(--reserve-3); border:1px solid var(--rule);
  display:grid; grid-template-columns:80px 1fr; gap:36px; align-items:center;
}
.mh-bash-quote .qm{
  font-family:"Cormorant Garamond",serif; font-size:96px; line-height:0.7;
  color:var(--acacia); font-weight:400;
}
.mh-bash-quote .qb{
  font-family:"Cormorant Garamond",serif; font-size:24px; line-height:1.4;
  font-style:italic; font-weight:300; margin:0 0 12px 0;
}
.mh-bash-quote .qb em{ color:var(--acacia); font-style:italic; }
.mh-bash-quote .qa{
  font-family:"JetBrains Mono",monospace; font-size:10.5px; letter-spacing:0.20em;
  text-transform:uppercase; color:var(--rhino); margin:0;
}
@media (max-width:760px){
  .mh-bash-quote{ grid-template-columns:1fr; gap:14px; padding:28px 22px; }
  .mh-bash-quote .qm{ font-size:64px; }
}

/* ===== CROSSLINK STRIP ===== */
.mh-xlink{
  margin-top:36px; padding:22px 28px;
  border:1px dashed rgba(212,162,76,0.32);
  display:flex; justify-content:space-between; align-items:center; gap:18px; flex-wrap:wrap;
  background:rgba(15,26,20,0.4);
}
.mh-xlink .xl-text{
  font-family:"Cormorant Garamond",serif; font-style:italic; font-weight:300;
  font-size:18px; line-height:1.4; color:rgba(241,232,214,0.86); margin:0;
}
.mh-xlink .xl-text strong{ color:var(--acacia); font-style:italic; font-weight:400; }
.mh-xlink a.xl-cta{
  font-family:"JetBrains Mono",monospace; font-size:10.5px; letter-spacing:0.22em;
  text-transform:uppercase; color:var(--acacia);
  border:1px solid var(--acacia); padding:11px 18px; transition:all .2s; text-decoration:none;
}
.mh-xlink a.xl-cta:hover{ background:var(--acacia); color:var(--reserve); }

/* ===== RHINO RESERVE ===== */
.mh-reserve{
  display:grid; grid-template-columns:1.1fr 1fr; gap:0;
  border:1px solid var(--rule);
  background:linear-gradient(180deg, rgba(212,162,76,0.06), rgba(15,26,20,0.4));
}
.mh-reserve-img{
  background-color:#0d1611;
  background-image:url('/app/themes/rhinory-v4/assets/images/member-estate-block-mockup.jpg');
  background-image:-webkit-image-set(url('/app/themes/rhinory-v4/assets/images/member-estate-block-mockup.webp') type('image/webp'), url('/app/themes/rhinory-v4/assets/images/member-estate-block-mockup.jpg') type('image/jpeg'));
  background-image:image-set(url('/app/themes/rhinory-v4/assets/images/member-estate-block-mockup.webp') type('image/webp'), url('/app/themes/rhinory-v4/assets/images/member-estate-block-mockup.jpg') type('image/jpeg'));
  background-size:cover; background-position:center;
  min-height:540px; border-right:1px solid var(--rule);
  position:relative; overflow:hidden;
}
.mh-reserve-img::after{
  content:""; position:absolute; inset:0;
  background:linear-gradient(180deg, rgba(15,26,20,0) 40%, rgba(15,26,20,0.55) 100%);
}
.mh-reserve-body{
  padding:42px 40px; display:flex; flex-direction:column; gap:16px;
}
.mh-reserve-body .rb-eyebrow{
  font-family:"JetBrains Mono",monospace; font-size:10.5px; letter-spacing:0.22em;
  text-transform:uppercase; color:var(--acacia);
  display:inline-flex; align-items:center; gap:14px;
}
.mh-reserve-body .rb-eyebrow::before{ content:""; width:24px; height:1px; background:currentColor; }
.mh-reserve-body h3{
  font-family:"Cormorant Garamond",serif; font-weight:400;
  font-size:clamp(32px,3.6vw,52px); line-height:1.04; margin:0; letter-spacing:-0.014em;
}
.mh-reserve-body h3 em{ font-style:italic; font-weight:300; color:var(--acacia); }
.mh-reserve-body .rb-elig{
  font-family:"Cormorant Garamond",serif; font-style:italic; font-weight:300;
  font-size:16px; line-height:1.5; color:rgba(241,232,214,0.78); margin:0;
}
.mh-reserve-body p{ font-size:15px; line-height:1.66; opacity:.9; margin:0; }
.mh-reserve-body p em{ font-style:italic; color:var(--acacia); }
.mh-reserve-skus{
  list-style:none; margin:0; padding:0;
  display:flex; flex-direction:column; gap:0;
  border-top:1px solid var(--rule);
}
.mh-reserve-skus li{
  display:grid; grid-template-columns:96px 1fr; gap:18px;
  padding:14px 0; border-bottom:1px solid var(--rule-soft);
  font-size:14px; line-height:1.45;
}
.mh-reserve-skus li:last-child{ border-bottom:0; }
.mh-reserve-skus .yr{
  font-family:"JetBrains Mono",monospace; font-size:10px; letter-spacing:0.18em;
  text-transform:uppercase; color:var(--acacia);
}
.mh-reserve-skus strong{
  display:block; font-family:"Cormorant Garamond",serif; font-size:20px; font-weight:400;
  color:var(--ivory);
}
.mh-reserve-skus strong em{ font-style:italic; color:var(--acacia); font-weight:300; }
.mh-reserve-skus small{
  display:block; font-size:13px; color:var(--ivory); opacity:.74; margin-top:3px;
  font-family:"Inter Tight",sans-serif; letter-spacing:0;
}
.mh-reserve-bonus{
  padding:14px 18px;
  border:1px solid rgba(212,162,76,0.32); background:rgba(212,162,76,0.05);
  font-size:13.5px; line-height:1.55;
}
.mh-reserve-bonus strong{
  display:block; font-family:"JetBrains Mono",monospace; font-size:10px; letter-spacing:0.22em;
  text-transform:uppercase; color:var(--acacia); margin-bottom:6px; font-weight:500;
}
.mh-reserve-bonus em{ font-style:italic; color:var(--acacia); }
.mh-reserve-foot{
  display:flex; justify-content:space-between; align-items:center; gap:18px; flex-wrap:wrap;
  border-top:1px solid var(--rule); padding-top:18px; margin-top:6px;
}
.mh-reserve-foot .meta{
  font-family:"JetBrains Mono",monospace; font-size:10px; letter-spacing:0.20em;
  text-transform:uppercase; color:var(--rhino);
}
@media (max-width:1100px){
  .mh-reserve, .mh-alloc, .mh-soiree{ grid-template-columns:1fr; }
  .mh-reserve-img, .mh-alloc-img, .mh-soiree .ss-art{
    border-right:0; border-bottom:1px solid var(--rule); min-height:320px;
  }
}

/* ===== IMPACT ===== */
.mh-impact-lead{
  display:grid; grid-template-columns:1.1fr 1fr; gap:60px; align-items:start;
  margin-bottom:48px;
}
.mh-impact-lead h2{
  font-family:"Cormorant Garamond",serif; font-weight:400;
  font-size:clamp(34px,4.2vw,56px); line-height:1.04; letter-spacing:-0.014em;
  margin:0 0 18px 0;
}
.mh-impact-lead h2 em{ font-style:italic; font-weight:300; color:var(--acacia); }
.mh-impact-lead p{ font-size:16px; line-height:1.66; opacity:.92; margin:0 0 14px 0; }
.mh-impact-lead p strong em{ font-style:italic; color:var(--acacia); }
.mh-impact-tenure{
  background:rgba(8,16,12,0.86); border:1px solid var(--rule);
  padding:30px 32px; display:flex; flex-direction:column; gap:14px;
}
.mh-impact-tenure .te-eye{
  font-family:"JetBrains Mono",monospace; font-size:10px; letter-spacing:0.22em;
  text-transform:uppercase; color:var(--acacia);
}
.mh-impact-tenure .te-row{
  display:flex; justify-content:space-between; align-items:baseline;
  padding:12px 0; border-top:1px solid var(--rule-soft);
}
.mh-impact-tenure .te-row:first-of-type{ border-top:1px solid var(--rule); }
.mh-impact-tenure .te-k{
  font-family:"JetBrains Mono",monospace; font-size:10px; letter-spacing:0.20em;
  text-transform:uppercase; color:var(--rhino);
}
.mh-impact-tenure .te-v{
  font-family:"Cormorant Garamond",serif; font-size:22px; line-height:1; color:var(--ivory);
  font-weight:400;
}
.mh-impact-tenure .te-v em{ font-style:italic; color:var(--acacia); font-weight:300; }
.mh-impact-tenure .te-foot{
  font-family:"JetBrains Mono",monospace; font-size:9.5px; letter-spacing:0.20em;
  text-transform:uppercase; color:rgba(241,232,214,0.66);
  border-top:1px solid var(--rule-soft); padding-top:14px; margin-top:6px;
}
@media (max-width:900px){
  .mh-impact-lead{ grid-template-columns:1fr; gap:28px; }
}

/* Named-calf cards */
.mh-calves{ display:grid; grid-template-columns:1fr 1fr; gap:0; border:1px solid var(--rule); }
.mh-calf{ display:grid; grid-template-columns:200px 1fr; gap:0; background:var(--reserve-2); transition:background .35s; }
.mh-calf:first-child{ border-right:1px solid var(--rule); }
.mh-calf:hover{ background:rgba(212,162,76,0.04); }
.mh-calf-img{
  background-color:#1a2820;
  background-image:linear-gradient(165deg, rgba(212,162,76,0.15), rgba(15,26,20,0.7));
  background-size:cover; background-position:center;
  position:relative; overflow:hidden;
  transition:transform 1.2s cubic-bezier(.2,.7,.2,1);
}
.mh-calf:hover .mh-calf-img{ transform:scale(1.04); }
/* Bundled, fact-bearing calf portraits (named animals) — not operator-swappable. */
.mh-calf-img.is-liora{
  background-image:url('/app/themes/rhinory-v4/assets/images/member-liora.jpg');
  background-image:-webkit-image-set(url('/app/themes/rhinory-v4/assets/images/member-liora.webp') type('image/webp'), url('/app/themes/rhinory-v4/assets/images/member-liora.jpg') type('image/jpeg'));
  background-image:image-set(url('/app/themes/rhinory-v4/assets/images/member-liora.webp') type('image/webp'), url('/app/themes/rhinory-v4/assets/images/member-liora.jpg') type('image/jpeg'));
}
.mh-calf-img.is-hercules{
  background-image:url('/app/themes/rhinory-v4/assets/images/member-hercules.jpg');
  background-image:-webkit-image-set(url('/app/themes/rhinory-v4/assets/images/member-hercules.webp') type('image/webp'), url('/app/themes/rhinory-v4/assets/images/member-hercules.jpg') type('image/jpeg'));
  background-image:image-set(url('/app/themes/rhinory-v4/assets/images/member-hercules.webp') type('image/webp'), url('/app/themes/rhinory-v4/assets/images/member-hercules.jpg') type('image/jpeg'));
}
.mh-calf-body{
  padding:30px 28px; display:flex; flex-direction:column; gap:12px;
}
.mh-calf-body .cf-eye{
  font-family:"JetBrains Mono",monospace; font-size:10px; letter-spacing:0.22em;
  text-transform:uppercase; color:var(--acacia);
}
.mh-calf-body h4{
  font-family:"Cormorant Garamond",serif; font-weight:400;
  font-size:32px; line-height:1.05; margin:0; letter-spacing:-0.012em;
}
.mh-calf-body h4 em{ font-style:italic; color:var(--acacia); font-weight:300; }
.mh-calf-body p{ font-size:13.5px; line-height:1.6; opacity:.88; margin:0; }
.mh-calf-body p em{ font-style:italic; color:var(--acacia); }
.mh-calf-body .cf-foot{
  margin-top:auto; padding-top:12px; border-top:1px solid var(--rule-soft);
  font-family:"JetBrains Mono",monospace; font-size:9.5px; letter-spacing:0.18em;
  text-transform:uppercase; color:var(--rhino);
}
@media (max-width:900px){
  .mh-calves{ grid-template-columns:1fr; }
  .mh-calf{ grid-template-columns:1fr; }
  .mh-calf:first-child{ border-right:0; border-bottom:1px solid var(--rule); }
  .mh-calf-img{ min-height:240px; }
}

/* ===== IMPACT REPORTS ===== */
.mh-reports{
  margin-top:48px; border:1px solid var(--rule); background:var(--reserve-2);
}
.mh-reports-head{
  padding:26px 30px; border-bottom:1px solid var(--rule);
  display:flex; align-items:baseline; justify-content:space-between; gap:24px; flex-wrap:wrap;
}
.mh-reports-head .rh-eye{
  font-family:"JetBrains Mono",monospace; font-size:10px; letter-spacing:0.22em;
  text-transform:uppercase; color:var(--acacia);
}
.mh-reports-head h4{
  font-family:"Cormorant Garamond",serif; font-weight:400;
  font-size:clamp(24px,2.6vw,34px); line-height:1.06; margin:8px 0 0; letter-spacing:-0.012em;
  color:var(--ivory); max-width:22ch;
}
.mh-reports-head h4 em{ font-style:italic; font-weight:300; color:var(--acacia); }
.mh-reports-head .rh-note{
  font-size:13.5px; line-height:1.62; color:rgba(241,232,214,0.78); margin:0; max-width:36ch;
}
.mh-reports-grid{ display:grid; grid-template-columns:1fr 1fr; gap:0; }
.mh-report{
  display:grid; grid-template-columns:auto 1fr auto; gap:22px; align-items:center;
  padding:26px 30px; border-right:1px solid var(--rule);
  text-decoration:none; color:var(--ivory);
  transition:background .25s;
}
.mh-report:last-child{ border-right:0; }
.mh-report:hover{ background:rgba(212,162,76,0.05); }
.mh-report .rp-ic{
  width:44px; height:44px; flex:0 0 44px; display:grid; place-items:center;
  border:1px solid var(--rule); color:var(--acacia);
}
.mh-report .rp-ic svg{ width:22px; height:22px; }
.mh-report:hover .rp-ic{ border-color:var(--acacia); }
.mh-report .rp-body{ display:flex; flex-direction:column; gap:5px; min-width:0; }
.mh-report .rp-year{
  font-family:"JetBrains Mono",monospace; font-size:10px; letter-spacing:0.22em;
  text-transform:uppercase; color:var(--acacia);
}
.mh-report .rp-title{
  font-family:"Cormorant Garamond",serif; font-weight:400;
  font-size:24px; line-height:1.1; color:var(--ivory); margin:0;
}
.mh-report .rp-meta{
  font-family:"JetBrains Mono",monospace; font-size:9.5px; letter-spacing:0.16em;
  text-transform:uppercase; color:var(--rhino);
}
.mh-report .rp-dl{
  display:inline-flex; align-items:center; gap:9px; flex:0 0 auto;
  padding:11px 17px; background:var(--acacia); color:var(--reserve);
  font-family:"JetBrains Mono",monospace; font-size:10px; letter-spacing:0.20em;
  text-transform:uppercase; font-weight:500;
  border:1px solid var(--acacia); transition:background .2s, color .2s;
}
.mh-report .rp-dl svg{ width:14px; height:14px; }
.mh-report:hover .rp-dl{ background:var(--ivory); color:var(--reserve); }
@media (max-width:900px){
  .mh-reports-grid{ grid-template-columns:1fr; }
  .mh-report{ border-right:0; border-bottom:1px solid var(--rule); }
  .mh-report:last-child{ border-bottom:0; }
}
@media (max-width:560px){
  .mh-report{ grid-template-columns:auto 1fr; gap:16px; }
  .mh-report .rp-dl{ grid-column:1 / -1; justify-content:center; margin-top:4px; }
}

/* ===== MEMBER BENEFITS (perks) ===== */
.mh-perk-featured{
  display:grid; grid-template-columns:0.82fr 1.18fr; gap:0;
  border:1px solid var(--rule);
  background:linear-gradient(180deg, rgba(212,162,76,0.07), rgba(15,26,20,0.4));
}
.mh-perk-art{
  background-size:cover; background-position:center 30%;
  min-height:520px; border-right:1px solid var(--rule);
  position:relative; overflow:hidden;
  background-color:#1a2820;
  /* Bundled, fact-bearing partner art (the four Bending Branch brands) — not swappable. */
  background-image:url('/app/themes/rhinory-v4/assets/images/member-bending-branch.jpg');
  background-image:-webkit-image-set(url('/app/themes/rhinory-v4/assets/images/member-bending-branch.webp') type('image/webp'), url('/app/themes/rhinory-v4/assets/images/member-bending-branch.jpg') type('image/jpeg'));
  background-image:image-set(url('/app/themes/rhinory-v4/assets/images/member-bending-branch.webp') type('image/webp'), url('/app/themes/rhinory-v4/assets/images/member-bending-branch.jpg') type('image/jpeg'));
}
.mh-perk-art::after{
  content:""; position:absolute; inset:0;
  background:linear-gradient(180deg, rgba(15,26,20,0) 45%, rgba(15,26,20,0.55) 100%);
}
.mh-perk-body{ padding:42px 40px; display:flex; flex-direction:column; gap:16px; }
.mh-perk-body .pk-eye{
  font-family:"JetBrains Mono",monospace; font-size:10.5px; letter-spacing:0.22em;
  text-transform:uppercase; color:var(--acacia);
  display:inline-flex; align-items:center; gap:14px;
}
.mh-perk-body .pk-eye::before{ content:""; width:24px; height:1px; background:currentColor; }
.mh-perk-body h3{
  font-family:"Cormorant Garamond",serif; font-weight:400;
  font-size:clamp(32px,3.6vw,52px); line-height:1.04; margin:0; letter-spacing:-0.014em;
}
.mh-perk-body h3 em{ font-style:italic; font-weight:300; color:var(--acacia); }
.mh-perk-body .pk-tag{
  font-family:"Cormorant Garamond",serif; font-style:italic; font-weight:300;
  font-size:18px; line-height:1.45; color:rgba(241,232,214,0.8); margin:0;
}
.mh-perk-body .pk-tag em{ color:var(--acacia); font-style:italic; }
.mh-perk-terms{
  list-style:none; margin:0; padding:18px 20px;
  border:1px solid var(--rule); background:rgba(15,26,20,0.42);
  display:flex; flex-direction:column; gap:13px;
}
.mh-perk-terms li{
  display:grid; grid-template-columns:84px 1fr; gap:16px; align-items:baseline;
  font-size:14.5px; line-height:1.55;
}
.mh-perk-terms li .pip{
  font-family:"JetBrains Mono",monospace; font-size:10px; letter-spacing:0.18em;
  text-transform:uppercase; color:var(--acacia);
}
.mh-perk-terms li em{ font-style:italic; color:var(--acacia); font-weight:400; }
.mh-perk-terms.is-confirmed li strong{ color:var(--acacia); font-weight:500; }
.mh-perk-foot{
  display:grid; grid-template-columns:repeat(3,1fr); gap:0;
  border:1px solid var(--rule); margin-top:2px;
}
.mh-perk-foot .meta{
  padding:14px 18px; border-right:1px solid var(--rule);
  display:flex; flex-direction:column; gap:5px;
}
.mh-perk-foot .meta:last-child{ border-right:0; }
.mh-perk-foot .meta .mk{
  font-family:"JetBrains Mono",monospace; font-size:9.5px; letter-spacing:0.20em;
  text-transform:uppercase; color:var(--rhino);
}
.mh-perk-foot .meta .mv{
  font-family:"Cormorant Garamond",serif; font-size:22px; line-height:1.1; color:var(--ivory);
  font-weight:400;
}
.mh-perk-foot .meta .mv em{ font-style:italic; color:var(--acacia); font-weight:300; }

.mh-perk-grid{
  margin-top:0; display:grid; grid-template-columns:repeat(2,1fr); gap:0;
  border:1px solid var(--rule); border-top:0;
}
.mh-perk-card{
  padding:32px 30px; border-right:1px solid var(--rule);
  display:flex; flex-direction:column; gap:13px;
  background:var(--reserve-2); transition:background .3s;
}
.mh-perk-card:last-child{ border-right:0; }
.mh-perk-card:hover{ background:rgba(212,162,76,0.04); }
.mh-perk-card .pk-eye{
  font-family:"JetBrains Mono",monospace; font-size:10px; letter-spacing:0.22em;
  text-transform:uppercase; color:var(--acacia);
}
.mh-perk-card h4{
  font-family:"Cormorant Garamond",serif; font-weight:400;
  font-size:30px; line-height:1.06; margin:0; letter-spacing:-0.012em;
}
.mh-perk-card h4 em{ font-style:italic; color:var(--acacia); font-weight:300; }
.mh-perk-card p{ font-size:13.5px; line-height:1.62; opacity:.86; margin:0; }
.mh-perk-card p em{ font-style:italic; color:var(--acacia); font-weight:400; }
.mh-perk-card p strong{ color:var(--acacia); font-weight:500; }
.mh-perk-card .pk-cta{
  margin-top:auto; padding-top:14px; border-top:1px solid var(--rule-soft);
  display:inline-flex; align-items:center; gap:10px; align-self:flex-start;
  font-family:"JetBrains Mono",monospace; font-size:10px; letter-spacing:0.18em;
  text-transform:uppercase; color:var(--acacia); transition:color .2s; text-decoration:none;
}
.mh-perk-card .pk-cta:hover{ color:var(--ivory); }
.mh-perk-card .pk-cta .arrow{ width:14px; height:1px; background:currentColor; position:relative; }
.mh-perk-card .pk-cta .arrow::after{
  content:""; position:absolute; right:-1px; top:-3px;
  width:7px; height:7px; border-top:1px solid currentColor; border-right:1px solid currentColor;
  transform:rotate(45deg);
}
.mh-perk-card.is-slot{
  background:rgba(15,26,20,0.42);
  border-left:1px dashed rgba(217,205,180,0.26);
}
.mh-perk-card.is-slot .pk-eye{ color:var(--bone); opacity:.9; }
.mh-perk-card.is-slot h4{ color:rgba(241,232,214,0.82); }
.mh-perk-card.is-slot h4 em{ color:var(--bone); }
@media (max-width:1100px){
  .mh-perk-featured{ grid-template-columns:1fr; }
  .mh-perk-art{ border-right:0; border-bottom:1px solid var(--rule); min-height:340px; }
  .mh-perk-grid{ grid-template-columns:1fr; }
  .mh-perk-card{ border-right:0; border-bottom:1px solid var(--rule); }
  .mh-perk-card:last-child{ border-bottom:0; }
  .mh-perk-card.is-slot{ border-left:0; }
}

/* ===== QUICK LINKS ===== */
.mh-quick{
  display:grid; grid-template-columns:repeat(3,1fr); gap:0;
  border:1px solid var(--rule);
}
.mh-quick a{
  padding:26px 28px; border-right:1px solid var(--rule); border-bottom:1px solid var(--rule);
  display:flex; flex-direction:column; gap:8px;
  background:var(--reserve-2); transition:background .25s, padding-left .25s;
  text-decoration:none;
}
.mh-quick a:nth-child(3n){ border-right:0; }
.mh-quick a:nth-last-child(-n+3){ border-bottom:0; }
.mh-quick a:hover{ background:rgba(212,162,76,0.05); padding-left:36px; }
.mh-quick a .ql-eye{
  font-family:"JetBrains Mono",monospace; font-size:9.5px; letter-spacing:0.22em;
  text-transform:uppercase; color:var(--acacia);
}
.mh-quick a .ql-label{
  font-family:"Cormorant Garamond",serif; font-size:24px; line-height:1.1; color:var(--ivory);
  font-weight:400;
}
.mh-quick a .ql-label em{ font-style:italic; color:var(--acacia); font-weight:300; }
.mh-quick a .ql-meta{
  font-family:"JetBrains Mono",monospace; font-size:9.5px; letter-spacing:0.18em;
  text-transform:uppercase; color:var(--rhino); margin-top:6px;
}
.mh-quick a.is-danger .ql-label{ color:var(--rhino); }
@media (max-width:900px){
  .mh-quick{ grid-template-columns:1fr; }
  .mh-quick a{ border-right:0; }
}

/* ===== FINAL CTA ===== */
.mh-final{
  background:var(--reserve); color:var(--ivory); padding:96px 0;
  border-top:1px solid var(--rule); position:relative; overflow:hidden;
}
.mh-final::before{
  content:""; position:absolute; inset:0;
  background-image:url('/app/themes/rhinory-v4/assets/images/member-wine-pour-pov.jpg');
  background-image:-webkit-image-set(url('/app/themes/rhinory-v4/assets/images/member-wine-pour-pov.webp') type('image/webp'), url('/app/themes/rhinory-v4/assets/images/member-wine-pour-pov.jpg') type('image/jpeg'));
  background-image:image-set(url('/app/themes/rhinory-v4/assets/images/member-wine-pour-pov.webp') type('image/webp'), url('/app/themes/rhinory-v4/assets/images/member-wine-pour-pov.jpg') type('image/jpeg'));
  background-size:cover; background-position:center;
  opacity:.18; filter:saturate(0.7);
}
.mh-final .wrap{ position:relative; z-index:2; }
.mh-final-grid{
  display:grid; grid-template-columns:1.3fr 1fr; gap:60px; align-items:center;
}
.mh-final h2{
  font-family:"Cormorant Garamond",serif; font-weight:400;
  font-size:clamp(38px,4.6vw,68px); line-height:1.04; margin:0 0 18px 0; letter-spacing:-0.014em;
}
.mh-final h2 em{ font-style:italic; font-weight:300; color:var(--acacia); }
.mh-final p{ font-size:17px; line-height:1.62; opacity:.92; margin:0; max-width:54ch; }
.mh-rally{
  font-family:"Cormorant Garamond",serif; font-weight:400; font-size:clamp(28px,3vw,42px);
  line-height:1; letter-spacing:-0.012em; margin:22px 0 0 0;
  display:flex; gap:18px; flex-wrap:wrap; align-items:baseline;
}
.mh-rally em{ font-style:italic; font-weight:300; color:var(--acacia); }
.mh-rally em + em{ color:var(--ivory); }
.mh-final .actions{ display:flex; flex-direction:column; gap:14px; align-items:flex-end; }
.mh-final .phone{
  font-family:"Cormorant Garamond",serif; font-size:36px; color:var(--acacia);
  text-align:right; line-height:1;
}
.mh-final .phone small{
  display:block; font-family:"JetBrains Mono",monospace; font-size:10px; letter-spacing:0.22em;
  text-transform:uppercase; color:var(--rhino); margin-top:8px;
}
@media (max-width:900px){
  .mh-final-grid{ grid-template-columns:1fr; gap:30px; }
  .mh-final .actions{ align-items:flex-start; }
  .mh-final .phone{ text-align:left; }
}

/* ===== LOGGED-OUT TEASER ===== */
.mh-teaser{
  position:relative; min-height:88vh; background:#000; color:var(--ivory);
  overflow:hidden; border-bottom:1px solid var(--rule);
}
.mh-teaser-img{
  position:absolute; left:0; right:0; top:-40px; bottom:-180px;
  background-color:#0d1611;
  /* Bundled default (tasting-warm); an operator hero image, when set, wins via
     the inline style emitted in render.php. ::after carries the legibility wash. */
  background-image:url('/app/themes/rhinory-v4/assets/images/member-tasting-warm.jpg');
  background-image:-webkit-image-set(url('/app/themes/rhinory-v4/assets/images/member-tasting-warm.webp') type('image/webp'), url('/app/themes/rhinory-v4/assets/images/member-tasting-warm.jpg') type('image/jpeg'));
  background-image:image-set(url('/app/themes/rhinory-v4/assets/images/member-tasting-warm.webp') type('image/webp'), url('/app/themes/rhinory-v4/assets/images/member-tasting-warm.jpg') type('image/jpeg'));
  background-size:cover; background-position:center 50%;
  filter:saturate(0.94) contrast(1.06);
}
.mh-teaser-img::after{
  content:""; position:absolute; inset:0;
  background:
    linear-gradient(180deg, rgba(15,26,20,0.72) 0%, rgba(15,26,20,0.5) 40%, rgba(15,26,20,0.92) 100%),
    radial-gradient(80% 70% at 18% 75%, rgba(15,26,20,0.7) 0%, rgba(15,26,20,0) 70%);
}
.mh-teaser-inner{ position:relative; z-index:2; padding:130px 0 90px 0; }
.mh-teaser-head{ max-width:780px; }
.mh-teaser-eye{
  font-family:"JetBrains Mono",monospace; font-size:11px; letter-spacing:0.28em;
  text-transform:uppercase; color:var(--acacia); display:flex; align-items:center; gap:14px;
  margin-bottom:22px;
}
.mh-teaser-eye::before{ content:""; width:32px; height:1px; background:currentColor; }
.mh-teaser h1{
  font-family:"Cormorant Garamond",serif; font-weight:400;
  font-size:clamp(56px,7.6vw,116px); line-height:0.96; letter-spacing:-0.014em;
  margin:0 0 24px 0; text-wrap:pretty;
}
.mh-teaser h1 em{ font-style:italic; font-weight:300; color:var(--acacia); }
.mh-teaser-sub{
  font-size:18px; line-height:1.62; max-width:62ch; color:rgba(241,232,214,0.94);
  margin:0 0 30px 0;
}
.mh-teaser-sub strong{ font-weight:500; color:var(--ivory); }
.mh-teaser-ctas{ display:flex; gap:14px; flex-wrap:wrap; margin-bottom:60px; }
.mh-benefits{
  display:grid; grid-template-columns:repeat(4,1fr); gap:0;
  border:1px solid var(--rule); background:rgba(8,16,12,0.7);
  backdrop-filter:blur(14px) saturate(140%);
  -webkit-backdrop-filter:blur(14px) saturate(140%);
}
.mh-benefit{
  padding:30px 28px; border-right:1px solid var(--rule);
  display:flex; flex-direction:column; gap:12px;
}
.mh-benefit:last-child{ border-right:0; }
.mh-benefit .b-num{
  font-family:"Cormorant Garamond",serif; font-size:36px; line-height:1; color:var(--acacia);
  font-weight:300; font-style:italic;
}
.mh-benefit h3{
  font-family:"Cormorant Garamond",serif; font-weight:400;
  font-size:22px; line-height:1.2; margin:0; color:var(--ivory);
}
.mh-benefit h3 em{ font-style:italic; color:var(--acacia); font-weight:300; }
.mh-benefit p{ font-size:13px; line-height:1.55; opacity:.82; margin:0; }
@media (max-width:1100px){
  .mh-benefits{ grid-template-columns:1fr 1fr; }
  .mh-benefit:nth-child(2){ border-right:0; }
  .mh-benefit:nth-child(1), .mh-benefit:nth-child(2){ border-bottom:1px solid var(--rule); }
}
@media (max-width:600px){
  .mh-benefits{ grid-template-columns:1fr; }
  .mh-benefit{ border-right:0; border-bottom:1px solid var(--rule); }
  .mh-benefit:last-child{ border-bottom:0; }
}

/* Locked preview */
.mh-locked{
  margin-top:60px;
  display:grid; grid-template-columns:1.1fr 1fr; gap:0;
  border:1px dashed rgba(212,162,76,0.42);
  background:rgba(15,26,20,0.6);
}
.mh-locked > div:first-child{ padding:36px 38px; border-right:1px dashed rgba(212,162,76,0.32); }
.mh-locked .lk-eye{
  font-family:"JetBrains Mono",monospace; font-size:10.5px; letter-spacing:0.22em;
  text-transform:uppercase; color:var(--acacia); display:inline-flex; align-items:center; gap:14px;
}
.mh-locked .lk-eye::before{ content:""; width:24px; height:1px; background:currentColor; }
.mh-locked h3{
  font-family:"Cormorant Garamond",serif; font-weight:400;
  font-size:clamp(28px,3.2vw,44px); line-height:1.06; margin:18px 0 14px; letter-spacing:-0.012em;
}
.mh-locked h3 em{ font-style:italic; font-weight:300; color:var(--acacia); }
.mh-locked p{ font-size:14.5px; line-height:1.62; opacity:.88; margin:0 0 12px; }
.mh-locked .lk-list{
  list-style:none; margin:0; padding:32px 34px;
  display:flex; flex-direction:column; gap:18px;
}
.mh-locked .lk-list li{
  display:grid; grid-template-columns:60px 1fr; gap:18px; align-items:baseline;
  font-size:14px; line-height:1.5;
}
.mh-locked .lk-list .lock{
  font-family:"JetBrains Mono",monospace; font-size:10px; letter-spacing:0.20em;
  text-transform:uppercase; color:var(--acacia);
}
.mh-locked .lk-list strong{ color:var(--ivory); font-weight:500; }
@media (max-width:900px){
  .mh-locked{ grid-template-columns:1fr; }
  .mh-locked > div:first-child{ border-right:0; border-bottom:1px dashed rgba(212,162,76,0.32); }
}

/* ===== VERIFIED FOOTER LINE ===== */
.mh-verified{ padding:36px 0; background:var(--reserve-3); border-top:1px solid var(--rule); color:var(--ivory); }
.mh-verified .wrap{ display:flex; flex-direction:column; gap:12px; }
.mh-verified .vf-line{
  display:flex; align-items:center; gap:14px;
  font-family:"JetBrains Mono",monospace; font-size:10.5px; letter-spacing:0.18em;
  text-transform:uppercase; color:rgba(241,232,214,0.82);
}
.mh-verified .vf-line .tick{ color:var(--acacia); font-size:14px; }
.mh-verified .vf-line strong{ color:var(--ivory); font-weight:500; }
.mh-verified .vf-line em{ color:var(--acacia); font-style:normal; }

/* ===== HERO — INACTIVE GLANCE VARIANTS ===== */
.mh-glance .gl-v small{ display:block; }
.mh-glance .gl-v small.mh-paused{
  color:var(--bone);
}

/* ===== HERO — PROSPECT GLANCE (signed-in non-member) ===== */
.mh-glance.is-prospect{}
.mh-glance.is-prospect .gl-v em{ color:var(--acacia); font-style:italic; font-weight:400; }

/* ===== JOIN-PUSH CARD (prospect) ===== */
.mh-section.tight{ padding:60px 0; }
.mh-join{
  display:grid; grid-template-columns:1fr 1.18fr; gap:0;
  border:1px solid var(--rule);
  background:linear-gradient(180deg, rgba(212,162,76,0.08), rgba(15,26,20,0.42));
}
.mh-join-art{
  background-color:#0d1611;
  background-image:url('/app/themes/rhinory-v4/assets/images/member-banner.jpg');
  background-image:-webkit-image-set(url('/app/themes/rhinory-v4/assets/images/member-banner.webp') type('image/webp'), url('/app/themes/rhinory-v4/assets/images/member-banner.jpg') type('image/jpeg'));
  background-image:image-set(url('/app/themes/rhinory-v4/assets/images/member-banner.webp') type('image/webp'), url('/app/themes/rhinory-v4/assets/images/member-banner.jpg') type('image/jpeg'));
  background-size:cover; background-position:center 40%;
  min-height:580px; border-right:1px solid var(--rule);
  position:relative; overflow:hidden;
}
.mh-join-art::after{
  content:""; position:absolute; inset:0;
  background:linear-gradient(180deg, rgba(15,26,20,0.18) 0%, rgba(15,26,20,0.12) 46%, rgba(15,26,20,0.72) 100%);
}
.mh-join-art .ribbon{
  position:absolute; left:18px; top:18px; z-index:2;
  font-family:"JetBrains Mono",monospace; font-size:9.5px; letter-spacing:0.22em;
  text-transform:uppercase; color:var(--acacia);
  padding:7px 12px; border:1px solid rgba(212,162,76,0.5);
  background:rgba(8,16,12,0.62);
}
.mh-join-body{
  padding:52px 46px; display:flex; flex-direction:column; gap:20px;
}
.mh-join-body .jn-eye{
  font-family:"JetBrains Mono",monospace; font-size:10.5px; letter-spacing:0.24em;
  text-transform:uppercase; color:var(--acacia);
  display:inline-flex; align-items:center; gap:14px;
}
.mh-join-body .jn-eye::before{ content:""; width:26px; height:1px; background:currentColor; }
.mh-join-body h2{
  font-family:"Cormorant Garamond",serif; font-weight:400;
  font-size:clamp(36px,4.2vw,62px); line-height:1.01; margin:0; letter-spacing:-0.014em;
  text-wrap:pretty; color:var(--ivory);
}
.mh-join-body h2 em{ font-style:italic; font-weight:300; color:var(--acacia); }
.mh-join-body .jn-lede{
  font-size:16.5px; line-height:1.66; color:rgba(241,232,214,0.9); margin:0; max-width:52ch;
}
.mh-join-body .jn-lede em{ font-style:italic; color:var(--acacia); }

.mh-join .jn-grid{
  display:grid; grid-template-columns:1fr 1fr; gap:0;
  border:1px solid var(--rule); background:rgba(8,16,12,0.5);
}
.mh-join .jn-cell{
  padding:22px 22px; border-right:1px solid var(--rule); border-bottom:1px solid var(--rule);
  display:flex; flex-direction:column; gap:7px;
}
.mh-join .jn-cell:nth-child(2n){ border-right:0; }
.mh-join .jn-cell:nth-last-child(-n+2){ border-bottom:0; }
.mh-join .jn-cell .jc-eye{
  font-family:"JetBrains Mono",monospace; font-size:9.5px; letter-spacing:0.20em;
  text-transform:uppercase; color:var(--rhino);
}
.mh-join .jn-cell h4{
  font-family:"Cormorant Garamond",serif; font-weight:400;
  font-size:25px; line-height:1.08; margin:0; letter-spacing:-0.01em; color:var(--ivory);
}
.mh-join .jn-cell h4 em{ font-style:italic; color:var(--acacia); font-weight:300; }
.mh-join .jn-cell p{ font-size:13px; line-height:1.55; opacity:.82; margin:0; }
.mh-join .jn-cell.is-mission{ background:linear-gradient(180deg, rgba(212,162,76,0.1), rgba(15,26,20,0.3)); }

.mh-join .jn-foot{
  display:flex; gap:12px; flex-wrap:wrap;
  border-top:1px solid var(--rule); padding-top:22px; margin-top:2px;
}
.mh-join .jn-note{
  font-family:"JetBrains Mono",monospace; font-size:10px; letter-spacing:0.16em;
  text-transform:uppercase; color:var(--rhino); margin:0;
}
.mh-join .jn-note a{ color:var(--acacia); border-bottom:1px solid transparent; transition:border-color .2s; }
.mh-join .jn-note a:hover{ border-bottom-color:var(--acacia); }

@media (max-width:1100px){
  .mh-join{ grid-template-columns:1fr; }
  .mh-join-art{ border-right:0; border-bottom:1px solid var(--rule); min-height:300px; }
  .mh-join-body{ padding:38px 26px; }
}
@media (max-width:560px){
  .mh-join .jn-grid{ grid-template-columns:1fr; }
  .mh-join .jn-cell{ border-right:0; }
  .mh-join .jn-cell:nth-last-child(-n+2):not(:last-child){ border-bottom:1px solid var(--rule); }
}

/* ===== REACTIVATE / WIN-BACK CARD (inactive) ===== */
.mh-react{
  display:grid; grid-template-columns:1fr 1.18fr; gap:0;
  border:1px solid var(--rule);
  background:linear-gradient(180deg, rgba(212,162,76,0.08), rgba(15,26,20,0.42));
}
.mh-react-art{
  background-color:#0d1611;
  background-image:url('/app/themes/rhinory-v4/assets/images/member-circle-banner.jpg');
  background-image:-webkit-image-set(url('/app/themes/rhinory-v4/assets/images/member-circle-banner.webp') type('image/webp'), url('/app/themes/rhinory-v4/assets/images/member-circle-banner.jpg') type('image/jpeg'));
  background-image:image-set(url('/app/themes/rhinory-v4/assets/images/member-circle-banner.webp') type('image/webp'), url('/app/themes/rhinory-v4/assets/images/member-circle-banner.jpg') type('image/jpeg'));
  background-size:cover; background-position:center 42%;
  min-height:560px; border-right:1px solid var(--rule);
  position:relative; overflow:hidden;
}
.mh-react-art::after{
  content:""; position:absolute; inset:0;
  background:linear-gradient(180deg, rgba(15,26,20,0.18) 0%, rgba(15,26,20,0.12) 46%, rgba(15,26,20,0.72) 100%);
}
.mh-react-art .ribbon{
  position:absolute; left:18px; top:18px; z-index:2;
  font-family:"JetBrains Mono",monospace; font-size:9.5px; letter-spacing:0.22em;
  text-transform:uppercase; color:var(--bone);
  padding:7px 12px; border:1px dashed rgba(217,205,180,0.5);
  background:rgba(8,16,12,0.62);
}
.mh-react-body{
  padding:52px 46px; display:flex; flex-direction:column; gap:20px;
}
.mh-react-body .rx-eye{
  font-family:"JetBrains Mono",monospace; font-size:10.5px; letter-spacing:0.24em;
  text-transform:uppercase; color:var(--bone);
  display:inline-flex; align-items:center; gap:14px;
}
.mh-react-body .rx-eye::before{ content:""; width:26px; height:1px; background:currentColor; }
.mh-react-body h2{
  font-family:"Cormorant Garamond",serif; font-weight:400;
  font-size:clamp(36px,4.2vw,62px); line-height:1.01; margin:0; letter-spacing:-0.014em;
  text-wrap:pretty; color:var(--ivory);
}
.mh-react-body h2 em{ font-style:italic; font-weight:300; color:var(--acacia); }
.mh-react-body .rx-lede{
  font-size:16.5px; line-height:1.66; color:rgba(241,232,214,0.9); margin:0; max-width:52ch;
}
.mh-react-body .rx-lede em{ font-style:italic; color:var(--acacia); }

.mh-react .rx-tenure{
  border:1px solid var(--rule); background:rgba(8,16,12,0.5);
  padding:24px 26px 22px;
  display:flex; flex-direction:column; gap:18px;
}
.mh-react .rx-tenure-eye{
  font-family:"JetBrains Mono",monospace; font-size:10px; letter-spacing:0.22em;
  text-transform:uppercase; color:var(--acacia);
}
.mh-react .rx-tenure-grid{
  display:grid; grid-template-columns:repeat(3,1fr); gap:0;
  border-top:1px solid var(--rule); border-bottom:1px solid var(--rule);
}
.mh-react .rx-stat{
  padding:16px 18px 14px; border-right:1px solid var(--rule);
  display:flex; flex-direction:column; gap:6px;
}
.mh-react .rx-stat:last-child{ border-right:0; }
.mh-react .rx-stat .rx-k{
  font-family:"JetBrains Mono",monospace; font-size:9.5px; letter-spacing:0.18em;
  text-transform:uppercase; color:var(--rhino);
}
.mh-react .rx-stat .rx-v{
  font-family:"Cormorant Garamond",serif; font-size:46px; line-height:0.9;
  color:var(--ivory); font-weight:400;
}
.mh-react .rx-stat .rx-v em{ font-style:italic; color:var(--acacia); font-weight:300; }
.mh-react .rx-tenure-foot{
  font-family:"Cormorant Garamond",serif; font-style:italic; font-weight:300;
  font-size:17px; line-height:1.5; color:rgba(241,232,214,0.82); margin:0;
}
.mh-react .rx-tenure-foot em{ font-style:italic; color:var(--acacia); }

.mh-react .rx-foot{
  display:flex; gap:12px; flex-wrap:wrap;
  border-top:1px solid var(--rule); padding-top:22px; margin-top:2px;
}
.mh-react .rx-note{
  font-family:"JetBrains Mono",monospace; font-size:10px; letter-spacing:0.16em;
  text-transform:uppercase; color:var(--rhino); margin:0;
}
.mh-react .rx-note a{ color:var(--bone); border-bottom:1px solid transparent; transition:border-color .2s; }
.mh-react .rx-note a:hover{ border-bottom-color:var(--bone); }

@media (max-width:1100px){
  .mh-react{ grid-template-columns:1fr; }
  .mh-react-art{ border-right:0; border-bottom:1px solid var(--rule); min-height:300px; }
  .mh-react-body{ padding:38px 26px; }
}
@media (max-width:560px){
  .mh-react .rx-tenure-grid{ grid-template-columns:1fr; }
  .mh-react .rx-stat{ border-right:0; border-bottom:1px solid var(--rule);
    flex-direction:row; align-items:baseline; justify-content:space-between; }
  .mh-react .rx-stat:last-child{ border-bottom:0; }
  .mh-react .rx-stat .rx-v{ font-size:38px; }
}

/* ===== REVEAL SYSTEM (ported from 7/15 — driven by view.js, slice 4) =====
 * Elements tagged .mhv start hidden and animate in when view.js adds .is-in.
 * view.js falls back to showing everything if IntersectionObserver is absent
 * (mirrors the site-wide .reveal contract in rhinory-scroll.js). */
.mhv{
  opacity:0; transform:translate3d(0,28px,0);
  transition:opacity .9s cubic-bezier(.2,.7,.2,1), transform 1s cubic-bezier(.2,.7,.2,1);
}
.mhv.is-in{ opacity:1; transform:translate3d(0,0,0); }
@media (prefers-reduced-motion:reduce){
  .mhv{ opacity:1 !important; transform:none !important; transition:none; }
}

/* ===== HERO PARALLAX (ported from 7/15 — --hero-py/--hero-kb set by view.js) =====
 * Defaults (translate 0, scale 1.06) give the ken-burns base frame with no JS;
 * view.js animates --hero-py / --hero-kb on scroll. Layered after the base
 * .mh-hero-img positioning rule so only transform/will-change are added. */
.mh-hero-img{
  transform:translate3d(0, var(--hero-py, 0px), 0) scale(var(--hero-kb, 1.06));
  transition:transform .12s linear;
  will-change:transform;
}
@media (prefers-reduced-motion:reduce){
  .mh-hero-img{ transform:none !important; }
}

/* ===== SCROLL-PROGRESS HAIRLINE (ported from 7/15 — width driven by view.js) ===== */
.mh-scroll-progress{
  position:fixed; left:0; right:0; top:0; z-index:200; height:2px;
  background:transparent; pointer-events:none;
}
.mh-scroll-progress::before{
  content:""; display:block; height:100%; width:var(--p, 0%);
  background:linear-gradient(90deg, var(--acacia), var(--acacia));
  transition:width .08s linear;
  box-shadow:0 0 12px rgba(212,162,76,0.55);
}
