/* Blog posts + blog index — "Editorial Lime" (extends homepage.css) */

/* ---------- dark editorial header ---------- */
.mm-posthero{position:relative;padding:clamp(40px,5vw,64px) 0 clamp(120px,12vw,170px);background:var(--onyx);color:var(--fog);overflow-x:clip}
.mm-posthero::before{content:"";position:absolute;inset:0;pointer-events:none;background:
  radial-gradient(min(620px,90vw) 420px at 85% 0,rgba(124,214,81,.18),transparent 70%),
  repeating-linear-gradient(-45deg,rgba(201,209,195,.025) 0 1px,transparent 1px 12px)}
.mm-posthero .mm-wrap{position:relative}
.mm-posthero__grid{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(36px,5vw,72px);align-items:start}
.mm-posthero .mm-crumbs ol{color:var(--fog-2)}
.mm-posthero .mm-crumbs a{color:var(--lime)}
.mm-posthero .mm-crumbs [aria-current]{color:#fff}
.mm-posthero__meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;margin:0 0 18px;font-size:13.5px;font-weight:600;color:var(--fog-2)}
.mm-posthero__meta>span:not(.mm-chip)+span:not(.mm-chip)::before{content:"";display:inline-block;width:4px;height:4px;margin:0 12px 2px 0;border-radius:50%;background:var(--lime)}
.mm-chip{display:inline-flex;align-items:center;padding:5px 12px;border-radius:999px;background:rgba(124,214,81,.14);box-shadow:inset 0 0 0 1px rgba(124,214,81,.4);color:var(--lime);font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}
.mm-chip--lime{background:var(--lime);box-shadow:none;color:var(--onyx)}
.mm-posthero__h1{margin:0 0 22px;color:#fff;font-size:clamp(32px,3.8vw,52px);font-weight:800;line-height:1.08;letter-spacing:-.03em;text-wrap:balance}
.mm-posthero__h1 em{font-family:var(--serif);font-style:italic;font-weight:400;color:var(--lime);font-size:1.12em}
.mm-posthero__lede{font-size:17px;line-height:1.75;color:var(--fog);max-width:62ch}
.mm-posthero__lede a{color:var(--lime)}
.mm-posthero__call{display:inline-flex;align-items:center;gap:12px;margin-top:10px;padding:8px 22px 8px 8px;border-radius:999px;background:var(--lime);color:var(--onyx);font-size:17px;font-weight:800;letter-spacing:-.01em;transition:transform .45s var(--ease)}
.mm-posthero__ic{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:var(--onyx)}
.mm-posthero__ic svg{width:18px;height:18px;fill:var(--lime)}
@media (hover:hover){.mm-posthero__call:hover{transform:translateY(-2px)}}
.mm-posthero__form .mm-form{color:var(--ink-soft);box-shadow:0 40px 80px -40px rgba(0,0,0,.7)}
.mm-posthero--index{padding-bottom:clamp(150px,14vw,200px)}

/* ---------- featured image as the header background ---------- */
.mm-posthero--img{padding-bottom:clamp(56px,6vw,88px)}
.mm-posthero__bg{position:absolute;inset:0;margin:0}
.mm-posthero__bg img{width:100%;height:100%;object-fit:cover;object-position:center 40%}
.mm-posthero--img::before{z-index:1;background:
  radial-gradient(min(620px,90vw) 420px at 85% 0,rgba(124,214,81,.16),transparent 70%),
  linear-gradient(90deg,rgba(12,14,11,.95) 0%,rgba(12,14,11,.88) 50%,rgba(12,14,11,.66) 100%),
  linear-gradient(0deg,rgba(12,14,11,.6),transparent 40%)}
.mm-posthero--img .mm-wrap{z-index:2}
@media (max-width:1020px){.mm-posthero--img::before{background:rgba(12,14,11,.88)}}

/* ---------- featured image breaking the header edge ---------- */
.mm-postfig{position:relative;z-index:2;max-width:920px;margin:calc(-1 * clamp(90px,9vw,130px)) auto 0;border-radius:28px;overflow:hidden;background:var(--paper-2);box-shadow:0 40px 80px -40px rgba(12,14,11,.5)}
.mm-postfig img{width:100%;height:auto;max-height:620px;object-fit:cover}
.mm-postfig::after{content:"";position:absolute;inset:0;border-radius:inherit;box-shadow:inset 0 0 0 1px rgba(255,255,255,.12);pointer-events:none}

/* ---------- article ---------- */
.mm-art{padding-top:clamp(48px,6vw,80px)}
.mm-art__grid{display:grid;grid-template-columns:260px minmax(0,1fr);gap:clamp(32px,5vw,80px);align-items:start}
.mm-art__toc{position:sticky;top:160px;display:flex;flex-direction:column;gap:14px}
.mm-art__toc details{padding:20px 18px 14px;border-radius:var(--r-lg);background:var(--paper-2);box-shadow:0 0 0 1px var(--line-soft)}
.mm-art__toc summary{list-style:none;cursor:pointer;margin-bottom:10px;font-size:12px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--green)}
.mm-art__toc summary::-webkit-details-marker{display:none}
.mm-art__toc details a{display:flex;gap:10px;padding:7px 6px;border-radius:10px;font-size:14px;font-weight:600;line-height:1.35;color:var(--ink);transition:background .2s var(--ease),color .2s var(--ease)}
.mm-art__toc details a span{flex:0 0 auto;font-family:var(--serif);font-style:italic;font-size:15px;color:var(--green)}
@media (hover:hover){.mm-art__toc details a:hover{background:var(--wash);color:var(--green)}}
.mm-art__tocall{display:flex;flex-direction:column;gap:2px;padding:16px 18px;border-radius:var(--r-lg);background:var(--onyx);color:#fff;font-size:20px;font-weight:800;letter-spacing:-.02em}
.mm-art__tocall small{font-size:11px;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:var(--lime)}
.mm-art__tocall span{white-space:nowrap}

.mm-art__body{max-width:740px}
.mm-art__body p{font-size:17px;line-height:1.85;color:var(--ink-soft);margin-bottom:1.15em}
.mm-art__body a:not(.mm-btn):not(.mm-callcard){color:var(--green);font-weight:600;border-bottom:1.5px solid rgba(46,122,30,.3);transition:border-color .2s var(--ease)}
@media (hover:hover){.mm-art__body a:not(.mm-btn):not(.mm-callcard):hover{border-color:var(--green)}}
.mm-art__first{font-size:19px!important;color:var(--ink)!important}
/* the post's own photo, set into the article after the opening paragraph */
.mm-artfig{position:relative;max-width:600px;margin:10px auto 2.2em;padding:0 18px 18px 0}
.mm-artfig::before{content:"";position:absolute;inset:18px 0 0 18px;border:1.5px solid var(--lime);border-radius:26px}
.mm-artfig img{position:relative;display:block;width:100%;height:auto;max-height:560px;object-fit:cover;border-radius:24px;box-shadow:0 34px 60px -34px rgba(12,14,11,.45)}
.mm-art__first::first-letter{float:left;margin:.08em .12em 0 0;font-family:var(--serif);font-style:italic;font-size:4.4em;line-height:.8;color:var(--green)}
.mm-art__h2{position:relative;margin:56px 0 16px;padding-top:28px;border-top:1px solid var(--line);font-size:clamp(24px,2.4vw,32px);font-weight:800;letter-spacing:-.022em;line-height:1.2;scroll-margin-top:170px}
.mm-art__h2:first-child{margin-top:0;padding-top:0;border-top:0}
.mm-art__n{display:block;margin-bottom:8px;font-family:var(--serif);font-style:italic;font-weight:400;font-size:22px;color:var(--green)}
.mm-art__h3{margin:30px 0 10px;font-size:21px;font-weight:800;letter-spacing:-.015em;line-height:1.3}
.mm-art__h4{margin:22px 0 8px;font-size:17.5px;font-weight:800}
.mm-bullets{display:grid;gap:10px;margin:6px 0 24px;padding:20px 22px;border-radius:var(--r-md);background:var(--paper-2)}
.mm-bullets li{position:relative;padding-left:26px;font-size:16.5px;line-height:1.65;color:var(--ink-soft)}
.mm-bullets li::before{content:"";position:absolute;left:4px;top:.66em;width:8px;height:8px;border-radius:50%;background:var(--lime);box-shadow:0 0 0 3px rgba(124,214,81,.22)}
.mm-bullets--ol{counter-reset:mmol}
.mm-bullets--ol li{counter-increment:mmol;padding-left:36px}
.mm-bullets--ol li::before{content:counter(mmol);top:.12em;width:24px;height:24px;display:grid;place-items:center;font-size:12px;font-weight:800;color:var(--onyx);box-shadow:none}

/* audio players */
.mm-listen{margin:40px 0 0;padding:24px;border-radius:var(--r-lg);background:var(--onyx);color:var(--fog)}
.mm-listen__h{display:flex;align-items:center;gap:12px;margin:0 0 14px!important;color:#fff!important;font-size:15px!important;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.mm-listen__h span{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:var(--lime)}
.mm-listen__h svg{width:18px;height:18px;fill:none;stroke:var(--onyx);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.mm-embed{margin:0 0 10px;border-radius:var(--r-md);overflow:hidden;background:#fff}
.mm-embed iframe{display:block;width:100%;border:0}
.mm-embedcap{margin:0 0 6px;font-size:12px;color:var(--fog-2)}
.mm-embedcap a{color:var(--fog)!important;border:0!important}
.mm-art__cta{margin-top:44px}

/* ---------- cards: related + index grid ---------- */
.mm-related .mm-head--split{align-items:center}
.mm-related .mm-head--split .mm-link{justify-self:end}
.mm-sec--tight{padding-top:clamp(40px,5vw,64px)}
.mm-bgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.mm-bcard{display:flex;flex-direction:column;border-radius:var(--r-lg);background:#fff;box-shadow:0 0 0 1px var(--line);overflow:hidden;transition:transform .5s var(--ease),box-shadow .35s var(--ease)}
.mm-bcard__img{display:block;aspect-ratio:16/10;overflow:hidden;background:var(--paper-2)}
.mm-bcard__img img{width:100%;height:100%;object-fit:cover;object-position:center 30%;transition:transform .8s var(--ease)}
.mm-bcard__t{padding:20px 22px 10px;font-size:17px;font-weight:800;letter-spacing:-.015em;line-height:1.35;color:var(--ink)}
.mm-bcard__more{display:inline-flex;align-items:center;gap:8px;margin:auto 22px 20px;font-size:14px;font-weight:700;color:var(--green)}
.mm-bcard__more svg{width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform .45s var(--ease)}
@media (hover:hover){.mm-bcard:hover{transform:translateY(-5px);box-shadow:0 0 0 1px rgba(46,122,30,.4),var(--shadow)}.mm-bcard:hover img{transform:scale(1.05)}.mm-bcard:hover .mm-bcard__more svg{transform:translateX(4px)}}

/* featured story (index) */
.mm-feature{position:relative;z-index:2;display:grid;grid-template-columns:1.2fr .8fr;margin-top:calc(-1 * clamp(110px,11vw,150px));border-radius:28px;background:#fff;box-shadow:0 0 0 1px var(--line-soft),0 40px 80px -40px rgba(12,14,11,.45);overflow:hidden;transition:transform .5s var(--ease)}
.mm-feature__img{display:block;min-height:340px;overflow:hidden}
.mm-feature__img img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}
.mm-feature__copy{display:flex;flex-direction:column;align-items:flex-start;gap:14px;padding:clamp(28px,4vw,48px)}
.mm-feature__t{font-size:clamp(24px,2.4vw,32px);font-weight:800;letter-spacing:-.025em;line-height:1.15;color:var(--ink)}
.mm-feature__x{font-size:15.5px;line-height:1.7;color:var(--ink-soft)}
.mm-feature .mm-bcard__more{margin:6px 0 0}
@media (hover:hover){.mm-feature:hover{transform:translateY(-4px)}.mm-feature:hover img{transform:scale(1.04)}}

/* ---------- business card + second form ---------- */
.mm-postnap__grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(32px,5vw,72px);align-items:center}
.mm-kv{display:grid;gap:10px;margin:20px 0 0;max-width:560px}
.mm-kv li{display:grid;grid-template-columns:140px 1fr;gap:12px;align-items:baseline;padding:12px 16px;border-radius:var(--r-sm);background:#fff;box-shadow:0 0 0 1px rgba(46,122,30,.16)}
.mm-kv small{font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--green)}
.mm-kv span{font-weight:600;color:var(--ink)}
.mm-kv a{color:var(--ink);font-weight:700}
.mm-kv li.mm-kv--addr{display:none}   /* street address is published in the footer only */

@media (max-width:1020px){
  .mm-posthero__grid,.mm-art__grid,.mm-postnap__grid{grid-template-columns:1fr}
  .mm-art__toc{position:static}
  .mm-art__toc details:not([open]){padding-bottom:6px}
  .mm-art__toc .mm-art__tocall{display:none}
  .mm-bgrid{grid-template-columns:repeat(2,1fr)}
  .mm-feature{grid-template-columns:1fr}
  .mm-feature__img{min-height:0;aspect-ratio:16/9}
}
@media (max-width:760px){
  .mm-bgrid{grid-template-columns:1fr}
  .mm-kv li{grid-template-columns:1fr;gap:2px}
  .mm-postfig{border-radius:20px}
  .mm-artfig{padding:0 12px 12px 0}
  .mm-artfig::before{inset:12px 0 0 12px;border-radius:20px}
  .mm-artfig img{border-radius:18px}
  .mm-art__first::first-letter{font-size:3.6em}
  .mm-bullets{padding:16px}
}
