:root {
  --mim-ink:#050505;
  --mim-paper:#fffdf8;
  --mim-muted:#5f5f5f;
  --mim-line:#e8e2d6;
  --mim-soft:#f4efe6;
  --mim-accent:#f4d35e;
}

body {
  margin:0;
  padding-top:0 !important;
  background:var(--mim-paper);
}

.mim-site {
  min-height:100vh;
  color:var(--mim-ink);
  font-family:Arial, Helvetica, sans-serif;
  line-height:1.5;
  background:radial-gradient(circle at 10% 0%, rgba(244,211,94,.18), transparent 30rem), linear-gradient(180deg,#fffdf8 0%,#f7f2e9 100%);
}

.mim-site * {
  box-sizing:border-box;
}

.mim-wrap {
  width:min(1180px, calc(100% - 40px));
  margin:0 auto;
}

.mim-nav {
  position:sticky;
  top:0;
  z-index:20;
  border-bottom:1px solid var(--mim-line);
  background:rgba(255,253,248,.94);
  backdrop-filter:blur(14px);
  transition:background 160ms ease, box-shadow 160ms ease;
}

.mim-nav__inner {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:22px;
  min-height:142px;
  padding:20px 0;
  transition:min-height 160ms ease, padding 160ms ease;
}

.mim-logo {
  display:flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  align-self:center;
  line-height:0;
}

.mim-logo img {
  display:block;
  width:min(260px,48vw);
  max-height:102px;
  height:auto;
  object-fit:contain;
  object-position:center;
  transition:width 160ms ease, height 160ms ease, max-height 160ms ease, padding 160ms ease;
}

.mim-nav--compact {
  background:rgba(255,253,248,.98);
  box-shadow:0 8px 18px rgba(0,0,0,.06);
}

.mim-nav--compact .mim-nav__inner {
  min-height:118px;
  padding:20px 0;
}

.mim-nav--compact .mim-logo img {
  width:min(220px,42vw);
  height:96px;
  max-height:none;
  padding:22px 0 0;
}

.mim-nav--compact .mim-menu {
  align-self:center;
  transform:translateY(12px);
}

.mim-nav-toggle {
  position:absolute;
  opacity:0;
  pointer-events:none;
}

.mim-hamburger {
  display:none;
  width:48px;
  height:44px;
  align-items:center;
  justify-content:center;
  border:2px solid var(--mim-ink);
  border-radius:6px;
  background:#fff;
  cursor:pointer;
  box-shadow:4px 4px 0 var(--mim-accent);
}

.mim-hamburger span,
.mim-hamburger::before,
.mim-hamburger::after {
  content:"";
  display:block;
  width:24px;
  height:3px;
  border-radius:999px;
  background:var(--mim-ink);
  transition:transform 160ms ease, opacity 160ms ease;
}

.mim-hamburger span {
  position:relative;
}

.mim-hamburger::before {
  position:absolute;
  transform:translateY(-8px);
}

.mim-hamburger::after {
  position:absolute;
  transform:translateY(8px);
}

.mim-menu,
.mim-footer__links {
  display:flex;
  align-items:center;
  gap:14px 18px;
  flex-wrap:wrap;
  justify-content:flex-end;
  font-size:14px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.04em;
}

.mim-menu {
  align-self:center;
}

.mim-nav-item {
  position:relative;
  display:flex;
  align-items:center;
}

.mim-nav-link,
.mim-menu > a {
  display:inline-flex;
  align-items:center;
  min-height:30px;
}

.mim-nav-link--has-sub::after {
  content:"";
  width:0;
  height:0;
  margin-left:7px;
  border-left:4px solid transparent;
  border-right:4px solid transparent;
  border-top:5px solid currentColor;
}

.mim-submenu {
  position:absolute;
  top:100%;
  left:0;
  z-index:30;
  display:grid;
  min-width:190px;
  gap:0;
  padding:10px;
  border:2px solid var(--mim-ink);
  border-radius:6px;
  background:#fffdf8;
  box-shadow:6px 6px 0 var(--mim-accent);
  opacity:0;
  pointer-events:none;
  transform:translateY(-4px);
  transition:opacity 140ms ease, transform 140ms ease;
}

.mim-submenu a {
  display:block;
  padding:9px 10px;
  white-space:nowrap;
}

.mim-nav-item:hover .mim-submenu,
.mim-nav-item:focus-within .mim-submenu {
  opacity:1;
  pointer-events:auto;
  transform:translateY(0);
}

.mim-menu a,
.mim-footer a,
.mim-card a {
  color:inherit;
}

.mim-menu a,
.mim-footer a {
  text-decoration:none;
}

.mim-menu a:hover,
.mim-footer a:hover {
  text-decoration:underline;
}

.mim-hero {
  padding:clamp(56px,9vw,112px) 0 72px;
}

.mim-hero__grid {
  display:grid;
  grid-template-columns:minmax(0,1.05fr) minmax(260px,.95fr);
  gap:clamp(32px,7vw,84px);
  align-items:center;
}

.mim-kicker {
  display:inline-flex;
  align-items:center;
  padding:7px 12px;
  border:2px solid var(--mim-ink);
  border-radius:999px;
  background:var(--mim-accent);
  font-size:13px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.06em;
}

h1,
h2,
h3,
p {
  overflow-wrap:anywhere;
}

.mim-hero h1 {
  margin:22px 0 18px;
  font-size:clamp(44px,7.6vw,104px);
  line-height:.92;
  letter-spacing:0;
  max-width:900px;
  font-weight:950;
}

.mim-lede {
  max-width:760px;
  color:#222;
  font-size:clamp(18px,2.2vw,24px);
}

.mim-actions {
  display:flex;
  gap:14px;
  flex-wrap:wrap;
  margin-top:30px;
}

.mim-btn,
.mim-form button {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:48px;
  padding:13px 18px;
  border:2px solid var(--mim-ink);
  border-radius:6px;
  background:var(--mim-ink);
  color:#fff;
  font-weight:900;
  text-decoration:none;
  box-shadow:6px 6px 0 var(--mim-accent);
  transition:transform 160ms ease, box-shadow 160ms ease;
  cursor:pointer;
}

.mim-btn:hover,
.mim-form button:hover {
  transform:translate(3px,3px);
  box-shadow:3px 3px 0 var(--mim-accent);
}

.mim-btn--light {
  background:#fff;
  color:var(--mim-ink);
}

.mim-hero-card,
.mim-panel {
  border:3px solid var(--mim-ink);
  border-radius:8px;
  background:#fff;
  padding:clamp(22px,4vw,42px);
  box-shadow:14px 14px 0 var(--mim-ink);
}

.mim-hero-card img {
  width:min(360px,100%);
  display:block;
  margin:0 auto 28px;
}

.mim-hero-card p {
  margin:0;
  font-size:20px;
  font-weight:850;
}

.mim-section {
  padding:72px 0;
  border-top:1px solid var(--mim-line);
}

.mim-section--dark {
  color:#fff;
  background:var(--mim-ink);
}

.mim-section__head {
  display:grid;
  grid-template-columns:minmax(0,.85fr) minmax(260px,1fr);
  gap:26px;
  align-items:end;
  margin-bottom:30px;
}

.mim-section h2 {
  margin:0;
  font-size:clamp(34px,5vw,64px);
  line-height:.98;
  letter-spacing:0;
}

.mim-section__head p,
.mim-submit p,
.mim-newsletter p,
.mim-panel p {
  margin:0;
  color:var(--mim-muted);
  font-size:19px;
}

.mim-section--dark .mim-section__head p,
.mim-section--dark .mim-card p,
.mim-section--dark .mim-panel p {
  color:#d8d8d8;
}

.mim-section--dark .mim-panel,
.mim-section--dark .mim-panel p {
  color:var(--mim-ink);
}

.mim-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}

.mim-grid--two {
  grid-template-columns:repeat(2,minmax(0,1fr));
}

.mim-grid--four {
  grid-template-columns:repeat(4,minmax(0,1fr));
}

.mim-card {
  min-height:210px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:20px;
  border:2px solid var(--mim-ink);
  border-radius:8px;
  background:#fff;
  padding:22px;
}

.mim-card--clickable {
  color:inherit;
  text-decoration:none;
  transition:transform 160ms ease, box-shadow 160ms ease;
}

.mim-card--clickable:hover {
  transform:scale(1.018);
  box-shadow:10px 10px 0 var(--mim-accent);
}

.mim-card--image {
  padding:0;
  overflow:hidden;
}

.mim-card--compact {
  min-height:150px;
}

.mim-section--dark .mim-card {
  background:#151515;
  border-color:#fff;
}

.mim-card__media {
  position:relative;
  min-height:190px;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  border-bottom:2px solid var(--mim-ink);
  background:linear-gradient(135deg,#f4d35e 0%,#fffdf8 46%,#050505 46%,#050505 100%);
}

.mim-card__media::before {
  content:"";
  position:absolute;
  inset:18px;
  border:2px solid currentColor;
  border-radius:8px;
  opacity:.25;
}

.mim-card__media img {
  position:relative;
  z-index:1;
  width:min(150px,48%);
  height:auto;
  padding:18px;
  border:2px solid var(--mim-ink);
  border-radius:999px;
  background:#fff;
}

.mim-card--playlist .mim-card__media {
  min-height:auto;
  aspect-ratio:1;
  background:#fff;
}

.mim-card--playlist .mim-card__media::before {
  display:none;
}

.mim-card--playlist .mim-card__media img {
  width:100%;
  height:100%;
  padding:0;
  border:0;
  border-radius:0;
  object-fit:cover;
  background:var(--mim-accent);
}

.mim-card__label {
  position:absolute;
  left:18px;
  bottom:16px;
  z-index:2;
  max-width:calc(100% - 36px);
  padding:6px 10px;
  border:2px solid var(--mim-ink);
  border-radius:999px;
  background:#fff;
  color:var(--mim-ink);
  font-size:12px;
  font-weight:950;
  text-transform:uppercase;
  letter-spacing:.06em;
}

.mim-card__body {
  flex:1;
  display:flex;
  min-height:210px;
  flex-direction:column;
  justify-content:space-between;
  gap:20px;
  padding:22px;
}

.mim-card__top {
  display:block;
}

.mim-card--playlist .mim-card__body {
  min-height:270px;
}

.mim-card--playlist .mim-card__top {
  min-height:72px;
}

.mim-card--playlist .mim-card__top p {
  margin:0;
}

.mim-card__footer {
  margin-top:auto;
  color:var(--mim-muted);
}

.mim-card__footer strong {
  display:block;
  margin-bottom:8px;
  color:var(--mim-ink);
}

.mim-section--dark .mim-card__footer strong {
  color:#fff;
}

.mim-card__cta {
  display:inline-flex;
  width:max-content;
  max-width:100%;
  margin-top:auto;
  font-weight:900;
  text-transform:uppercase;
  text-decoration:underline;
  text-decoration-thickness:2px;
}

.mim-feature {
  display:grid;
  grid-template-columns:minmax(260px,.85fr) minmax(0,1fr);
  gap:28px;
  align-items:center;
  border:3px solid var(--mim-ink);
  border-radius:8px;
  background:#fff;
  padding:clamp(20px,4vw,36px);
  box-shadow:12px 12px 0 var(--mim-accent);
}

.mim-feature__image {
  min-height:310px;
  display:flex;
  align-items:center;
  justify-content:center;
  border:2px solid var(--mim-ink);
  border-radius:8px;
  background:linear-gradient(135deg,#f4d35e 0%,#fffdf8 48%,#050505 48%,#050505 100%);
  overflow:hidden;
}

.mim-feature__image img {
  width:min(220px,54%);
  padding:22px;
  border:2px solid var(--mim-ink);
  border-radius:999px;
  background:#fff;
}

.mim-feature h2 {
  margin:0 0 16px;
  font-size:clamp(32px,4vw,56px);
  line-height:1;
}

.mim-feature p {
  margin:0;
  color:var(--mim-muted);
  font-size:19px;
}

.mim-card h3 {
  margin:0;
  font-size:26px;
  line-height:1.03;
}

.mim-card p,
.mim-card ul {
  margin:12px 0 0;
  color:var(--mim-muted);
}

.mim-card a {
  font-weight:900;
  text-transform:uppercase;
  text-decoration-thickness:2px;
}

.mim-submit,
.mim-newsletter {
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:24px;
  align-items:center;
  border:3px solid var(--mim-ink);
  border-radius:8px;
  background:var(--mim-accent);
  padding:clamp(24px,5vw,46px);
}

.mim-newsletter {
  grid-template-columns:minmax(0,.9fr) minmax(260px,1fr);
  background:#fff;
}

.mim-form,
.mim-track-list {
  display:grid;
  gap:12px;
}

.mim-form--fields {
  grid-template-columns:repeat(2,minmax(0,1fr));
}

.mim-form input,
.mim-form textarea,
.mim-form select,
.mim-site .wpcf7 input,
.mim-site .wpcf7 textarea,
.mim-site .wpcf7 select {
  width:100%;
  min-height:52px;
  border:2px solid var(--mim-ink);
  border-radius:6px;
  padding:0 14px;
  font:inherit;
  background:#fff;
}

.mim-form textarea,
.mim-site .wpcf7 textarea {
  min-height:150px;
  padding:14px;
  resize:vertical;
}

.mim-form .full {
  grid-column:1 / -1;
}

.mim-site .wpcf7 {
  border:3px solid var(--mim-ink);
  border-radius:8px;
  background:#fff;
  padding:clamp(22px,4vw,42px);
  box-shadow:10px 10px 0 var(--mim-accent);
}

.mim-site .wpcf7 form {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px 18px;
}

.mim-site .wpcf7 h3,
.mim-site .wpcf7 p,
.mim-site .wpcf7 .wpcf7-acceptance,
.mim-site .wpcf7 .wpcf7-submit,
.mim-site .wpcf7 .wpcf7-response-output {
  grid-column:1 / -1;
}

.mim-site .wpcf7 label {
  display:grid;
  gap:8px;
  font-weight:900;
}

.mim-platforms {
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:24px;
}

.mim-platforms .mim-btn {
  min-height:44px;
  padding:10px 14px;
  box-shadow:4px 4px 0 var(--mim-accent);
}

.mim-track {
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  gap:12px;
  align-items:center;
  padding:12px;
  border:2px solid var(--mim-ink);
  border-radius:8px;
  background:#fff;
}

.mim-track img {
  width:58px;
  height:58px;
  object-fit:cover;
  border:2px solid var(--mim-ink);
  border-radius:6px;
  background:var(--mim-soft);
}

.mim-track strong {
  display:block;
  line-height:1.15;
}

.mim-track span {
  color:var(--mim-muted);
  font-size:14px;
}

.mim-show-review,
.mim-review-grid {
  display:grid;
  grid-template-columns:minmax(280px,.8fr) minmax(0,1.2fr);
  gap:28px;
  align-items:start;
}

.mim-gallery-strip {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
}

.mim-gallery-strip div {
  min-height:150px;
  border:2px solid var(--mim-ink);
  border-radius:8px;
  background:linear-gradient(135deg,#f4d35e 0%,#fffdf8 52%,#050505 52%,#050505 100%);
}

.mim-setlist {
  display:grid;
  gap:12px;
  counter-reset:setlist;
}

.mim-setlist details {
  border:2px solid var(--mim-ink);
  border-radius:8px;
  background:#fff;
  overflow:hidden;
}

.mim-setlist summary {
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  gap:12px;
  align-items:center;
  padding:14px 16px;
  cursor:pointer;
  font-weight:900;
  list-style:none;
}

.mim-setlist summary::-webkit-details-marker {
  display:none;
}

.mim-setlist summary::before {
  counter-increment:setlist;
  content:counter(setlist);
  display:inline-flex;
  width:30px;
  height:30px;
  align-items:center;
  justify-content:center;
  border:2px solid var(--mim-ink);
  border-radius:999px;
  background:var(--mim-accent);
  font-size:13px;
}

.mim-setlist summary::after {
  content:"+";
  font-size:22px;
  line-height:1;
}

.mim-setlist details[open] summary::after {
  content:"-";
}

.mim-song-additions {
  display:grid;
  gap:10px;
  padding:0 16px 16px 58px;
  color:var(--mim-muted);
}

.mim-song-addition {
  border-left:4px solid var(--mim-accent);
  padding-left:12px;
}

.mim-song-addition strong {
  display:block;
  color:var(--mim-ink);
}

.mim-post-feed__grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
}

.mim-post-feed__card {
  display:flex;
  min-height:260px;
  flex-direction:column;
  overflow:hidden;
  border:2px solid var(--mim-ink);
  border-radius:8px;
  background:#fff;
  color:inherit;
  text-decoration:none;
  transition:transform 160ms ease, box-shadow 160ms ease;
}

.mim-post-feed__card:hover {
  transform:scale(1.018);
  box-shadow:10px 10px 0 var(--mim-accent);
}

.mim-post-feed__card img {
  width:100%;
  aspect-ratio:16/10;
  object-fit:cover;
  border-bottom:2px solid var(--mim-ink);
  background:var(--mim-soft);
}

.mim-post-feed__body {
  display:flex;
  flex:1;
  flex-direction:column;
  gap:12px;
  padding:20px;
}

.mim-post-feed__body h3 {
  margin:0;
  font-size:24px;
  line-height:1.05;
}

.mim-post-feed__body p {
  margin:0;
  color:var(--mim-muted);
}

.mim-post-feed__body span {
  margin-top:auto;
  font-weight:900;
  text-transform:uppercase;
  text-decoration:underline;
  text-decoration-thickness:2px;
}

.mim-playlist-focus {
  display:grid;
  grid-template-columns:minmax(280px,.65fr) minmax(0,1.35fr);
  gap:clamp(24px,5vw,54px);
  align-items:stretch;
  border:3px solid var(--mim-ink);
  border-radius:8px;
  background:#fff;
  padding:clamp(20px,4vw,38px);
  box-shadow:14px 14px 0 var(--mim-ink);
}

.mim-playlist-cover {
  display:flex;
  flex-direction:column;
  gap:18px;
}

.mim-playlist-cover img {
  width:100%;
  aspect-ratio:1;
  object-fit:cover;
  border:3px solid var(--mim-ink);
  border-radius:8px;
  box-shadow:8px 8px 0 var(--mim-accent);
  background:var(--mim-accent);
}

.mim-playlist-cover p {
  margin:0;
  color:var(--mim-muted);
  font-size:18px;
}

.mim-playlist-player {
  display:flex;
  min-height:100%;
  flex-direction:column;
  gap:18px;
}

.mim-embed {
  overflow:hidden;
  border:3px solid var(--mim-ink);
  border-radius:8px;
  background:#fff;
  box-shadow:10px 10px 0 var(--mim-accent);
}

.mim-embed iframe {
  display:block;
  width:100%;
  border:0;
}

.mim-embed--tall iframe {
  min-height:760px;
}

.mim-note {
  color:var(--mim-muted);
  font-size:14px;
  margin-top:16px;
}

.mim-review-post {
  padding:0 0 70px;
}

.mim-review-hero {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(280px,.75fr);
  gap:34px;
  align-items:center;
  padding:70px 0;
}

.mim-review-hero h1 {
  margin:14px 0;
  font-size:clamp(42px,6vw,84px);
  line-height:.95;
}

.mim-review-hero img {
  width:100%;
  border:3px solid var(--mim-ink);
  border-radius:8px;
  box-shadow:12px 12px 0 var(--mim-ink);
}

.mim-review-section {
  padding:42px 0;
  border-top:1px solid var(--mim-line);
}

.mim-review-gallery {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
}

.mim-review-gallery--full {
  grid-template-columns:repeat(4,minmax(0,1fr));
}

.mim-review-gallery figure {
  position:relative;
  margin:0;
  border:2px solid var(--mim-ink);
  border-radius:8px;
  overflow:hidden;
  background:#fff;
}

.mim-review-gallery a {
  display:block;
  color:inherit;
  text-decoration:none;
}

.mim-review-gallery img {
  display:block;
  width:100%;
  aspect-ratio:4/5;
  object-fit:cover;
  background:var(--mim-soft);
  transition:transform 180ms ease, filter 180ms ease;
}

.mim-review-gallery a:hover img {
  transform:scale(1.025);
  filter:contrast(1.04);
}

.mim-review-gallery figcaption {
  padding:8px 10px;
  color:var(--mim-muted);
  font-size:12px;
}

.mim-featured-badge {
  position:absolute;
  top:10px;
  left:10px;
  padding:5px 8px;
  border:2px solid var(--mim-ink);
  border-radius:999px;
  background:var(--mim-accent);
  color:var(--mim-ink);
  font-size:11px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.05em;
}

.mim-lightbox-is-open {
  overflow:hidden;
}

.mim-lightbox {
  position:fixed;
  inset:0;
  z-index:9999;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:clamp(56px,6vw,82px) clamp(18px,4vw,72px);
  background:rgba(5,5,5,.92);
  opacity:0;
  pointer-events:none;
  transition:opacity 160ms ease;
}

.mim-lightbox--open {
  opacity:1;
  pointer-events:auto;
}

.mim-lightbox__figure {
  display:grid;
  gap:14px;
  justify-items:center;
  min-width:0;
  max-width:min(100%,1400px);
  margin:0;
}

.mim-lightbox__image {
  display:block;
  max-width:min(100%,1400px);
  max-height:82vh;
  border:3px solid #fff;
  border-radius:8px;
  object-fit:contain;
  background:#111;
  box-shadow:14px 14px 0 var(--mim-accent);
}

.mim-lightbox__caption {
  max-width:min(900px,100%);
  color:#fff;
  font-size:15px;
  font-weight:800;
  text-align:center;
}

.mim-lightbox__close,
.mim-lightbox__nav {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border:2px solid #fff;
  border-radius:999px;
  background:var(--mim-accent);
  color:var(--mim-ink);
  box-shadow:5px 5px 0 rgba(255,255,255,.25);
  font-weight:950;
  cursor:pointer;
  z-index:10000;
  transition:transform 140ms ease, box-shadow 140ms ease, background 140ms ease;
}

.mim-lightbox__close:hover,
.mim-lightbox__nav:hover,
.mim-lightbox__close:focus-visible,
.mim-lightbox__nav:focus-visible {
  background:#fff;
  box-shadow:3px 3px 0 var(--mim-accent);
  transform:translate(2px,2px);
  outline:none;
}

.mim-lightbox__close {
  position:absolute;
  top:22px;
  right:22px;
  width:54px;
  height:54px;
  font-size:24px;
  line-height:1;
}

.mim-lightbox__nav {
  position:absolute;
  top:50%;
  width:58px;
  height:58px;
  font-size:34px;
  line-height:1;
  transform:translateY(-50%);
}

.mim-lightbox__nav:hover,
.mim-lightbox__nav:focus-visible {
  transform:translate(2px, calc(-50% + 2px));
}

.mim-lightbox__nav--prev {
  left:22px;
}

.mim-lightbox__nav--next {
  right:22px;
}

.mim-footer {
  padding:42px 0;
  background:var(--mim-ink);
  color:#fff;
}

.mim-footer__inner {
  display:grid;
  grid-template-columns:1fr auto;
  gap:24px;
  align-items:center;
}

.mim-footer img {
  width:min(220px,54vw);
  display:block;
  filter:invert(1);
}

@media (max-width:980px) {
  .mim-grid,
  .mim-grid--two,
  .mim-grid--four {
    grid-template-columns:1fr 1fr;
  }
}

@media (max-width:860px) {
  .mim-hero__grid,
  .mim-section__head,
  .mim-submit,
  .mim-newsletter,
  .mim-footer__inner,
  .mim-form--fields,
  .mim-site .wpcf7 form,
  .mim-feature,
  .mim-playlist-focus,
  .mim-show-review,
  .mim-review-hero,
  .mim-review-grid {
    grid-template-columns:1fr;
  }

  .mim-nav__inner {
    min-height:88px;
    padding:12px 0;
  }

  .mim-logo img {
    width:min(210px,58vw);
    max-height:64px;
  }

  .mim-nav--compact .mim-nav__inner {
    min-height:86px;
    padding:12px 0;
  }

  .mim-nav--compact .mim-logo img {
    width:min(185px,52vw);
    height:72px;
    max-height:none;
    padding:18px 0 0;
  }

  .mim-nav--compact .mim-menu {
    transform:scaleY(0);
  }

  .mim-hamburger {
    display:flex;
  }

  .mim-menu {
    position:absolute;
    top:100%;
    left:0;
    right:0;
    display:grid;
    gap:0;
    justify-content:stretch;
    padding:0 20px 18px;
    border-bottom:2px solid var(--mim-ink);
    background:rgba(255,253,248,.98);
    box-shadow:0 12px 20px rgba(0,0,0,.12);
    transform-origin:top;
    transform:scaleY(0);
    opacity:0;
    pointer-events:none;
    transition:transform 160ms ease, opacity 160ms ease;
  }

  .mim-nav-item {
    display:block;
  }

  .mim-nav-link,
  .mim-menu > a {
    display:block;
    min-height:0;
    padding:14px 0;
    border-top:1px solid var(--mim-line);
  }

  .mim-nav-link--has-sub::after {
    display:none;
  }

  .mim-submenu {
    position:static;
    min-width:0;
    padding:0 0 0 18px;
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
    opacity:1;
    pointer-events:auto;
    transform:none;
  }

  .mim-submenu a {
    padding:10px 0;
    border-top:1px solid var(--mim-line);
    font-size:13px;
  }

  .mim-nav-toggle:checked ~ .mim-hamburger span {
    opacity:0;
  }

  .mim-nav-toggle:checked ~ .mim-hamburger::before {
    transform:rotate(45deg);
  }

  .mim-nav-toggle:checked ~ .mim-hamburger::after {
    transform:rotate(-45deg);
  }

  .mim-nav-toggle:checked ~ .mim-menu {
    transform:scaleY(1);
    opacity:1;
    pointer-events:auto;
  }

  .mim-footer__links {
    justify-content:flex-start;
  }

  .mim-grid,
  .mim-grid--two,
  .mim-grid--four,
  .mim-post-feed__grid,
  .mim-review-gallery,
  .mim-review-gallery--full {
    grid-template-columns:1fr;
  }

  .mim-hero-card,
  .mim-panel,
  .mim-feature,
  .mim-playlist-focus {
    box-shadow:8px 8px 0 var(--mim-ink);
  }

  .mim-card__media {
    min-height:170px;
  }

  .mim-feature__image {
    min-height:240px;
  }

  .mim-gallery-strip {
    grid-template-columns:1fr;
  }

  .mim-song-additions {
    padding-left:16px;
  }

  .mim-embed--tall iframe {
    min-height:620px;
  }

  .mim-lightbox {
    padding:64px 14px 28px;
  }

  .mim-lightbox__nav {
    width:44px;
    height:44px;
    font-size:26px;
  }

  .mim-lightbox__nav--prev {
    left:12px;
  }

  .mim-lightbox__nav--next {
    right:12px;
  }

  .mim-lightbox__image {
    max-height:78vh;
    box-shadow:8px 8px 0 var(--mim-accent);
  }
}
