/*
Theme Name: Michael Flexig Official 0.18.15 MENU
Theme URI: https://michaelflexig.com/
Author: Michael Flexig / custom build
Description: Minimal, cinematic artist theme for the official Michael Flexig website.
Version: 0.18.15
Requires at least: 6.5
Tested up to: 7.1
Requires PHP: 7.4
Text Domain: michael-flexig-official-01810-clean
*/

:root {
  --mf-bg: #05070b;
  --mf-text: #f7f2e8;
  --mf-muted: rgba(247, 242, 232, .72);
  --mf-line: rgba(247, 242, 232, .20);
  --mf-gold: #d9bd7a;
  --mf-display: "Bodoni MT", "Bodoni 72", Didot, "Times New Roman", serif;
  --mf-sans: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, Arial, sans-serif;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; background: var(--mf-bg); }
body {
  margin: 0;
  color: var(--mf-text);
  background: var(--mf-bg);
  font-family: var(--mf-sans);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

a { color: inherit; text-decoration: none; }
a:focus-visible, button:focus-visible {
  outline: 2px solid var(--mf-gold);
  outline-offset: 5px;
}

.mf-site-header {
  position: fixed;
  inset: 0 0 auto 0;
  z-index: 30;
  padding: 28px clamp(24px, 4vw, 70px);
  background: linear-gradient(to bottom, rgba(2,4,8,.56), rgba(2,4,8,0));
  pointer-events: none;
}

.mf-header-inner {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 28px;
  max-width: 1800px;
  margin: 0 auto;
  pointer-events: auto;
}

.mf-header-phi {
  margin-right: auto;
  font-family: var(--mf-display);
  font-size: 28px;
  line-height: 1;
  font-weight: 400;
  color: var(--mf-gold);
  opacity: .94;
  text-shadow: 0 2px 18px rgba(0,0,0,.26);
}

.mf-nav { display: flex; align-items: center; gap: clamp(18px, 2.2vw, 38px); }
.mf-nav-list {
  display: flex;
  align-items: center;
  gap: clamp(18px, 2.2vw, 38px);
  margin: 0;
  padding: 0;
  list-style: none;
}
.mf-nav-list li { margin: 0; padding: 0; }
.mf-nav a {
  position: relative;
  font-size: 12px;
  font-weight: 500;
  letter-spacing: .18em;
  text-transform: uppercase;
  color: rgba(255,255,255,.90);
  transition: color .22s ease;
}
.mf-nav a::after {
  content: "";
  position: absolute;
  left: 0; right: .18em; bottom: -9px;
  height: 1px;
  background: currentColor;
  transform: scaleX(0);
  transform-origin: right;
  transition: transform .25s ease;
}
.mf-nav a:hover { color: #fff; }
.mf-nav a:hover::after,
.mf-nav a[aria-current="page"]::after { transform: scaleX(1); transform-origin: left; }

.mf-language {
  padding-left: 22px;
  border-left: 1px solid var(--mf-line);
  font-size: 11px;
  letter-spacing: .16em;
  white-space: nowrap;
  color: rgba(255,255,255,.82);
}
.mf-language .active { color: #fff; }
.mf-language .inactive { color: rgba(255,255,255,.38); cursor: default; }

.mf-hero {
  position: relative;
  width: 100%;
  aspect-ratio: 1672 / 941;
  min-height: 0;
  overflow: hidden;
  isolation: isolate;
  background: #05070b;
}
.mf-hero-picture,
.mf-hero-picture img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
}
/* The approved desktop artwork is never cropped or distorted. */
.mf-hero-picture img { object-fit: contain; object-position: 50% 50%; }

.mf-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background:
    linear-gradient(90deg, rgba(2,4,8,.05) 0%, rgba(2,4,8,0) 44%, rgba(2,4,8,.10) 70%, rgba(2,4,8,.24) 100%),
    linear-gradient(0deg, rgba(2,4,8,.10), transparent 28%);
  pointer-events: none;
}

/* Desktop master: centered on the architectural/light cross axis in the approved hero. */
.mf-hero-copy {
  position: absolute;
  z-index: 2;
  left: 73.9%;
  top: 52.0%;
  width: min(43vw, 700px);
  transform: translate(-50%, -50%);
  text-align: center;
  color: #fff;
  filter: drop-shadow(0 3px 16px rgba(0,0,0,.22));
}

.mf-hero-phi {
  margin: 0 0 13px;
  font-family: var(--mf-display);
  font-size: clamp(46px, 4.4vw, 74px);
  font-weight: 400;
  line-height: .88;
  color: var(--mf-gold);
}

.mf-hero h1 {
  margin: 0;
  font-family: var(--mf-display);
  font-size: clamp(32px, 3.35vw, 58px);
  font-weight: 400;
  line-height: 1;
  letter-spacing: .12em;
  text-transform: uppercase;
  white-space: nowrap;
  text-shadow: 0 2px 22px rgba(0,0,0,.20);
}
.mf-hero-kicker {
  margin: 19px 0 0;
  font-size: clamp(9px, .72vw, 12px);
  font-weight: 500;
  letter-spacing: .39em;
  text-transform: uppercase;
  color: rgba(255,255,255,.76);
}

.mf-page {
  min-height: 100svh;
  padding: 160px clamp(24px, 7vw, 120px) 80px;
  background:
    radial-gradient(circle at 80% 10%, rgba(88,74,129,.15), transparent 35%),
    linear-gradient(180deg, #090b12 0%, #05070b 100%);
}
.mf-page-inner { max-width: 1100px; margin: 0 auto; }
.mf-page h1 {
  margin: 0 0 42px;
  font-family: var(--mf-display);
  font-size: clamp(42px, 6vw, 86px);
  font-weight: 400;
  line-height: 1;
  letter-spacing: .055em;
  text-transform: uppercase;
}
.mf-page-content { max-width: 760px; font-size: 18px; line-height: 1.75; color: rgba(255,255,255,.78); }
.mf-page-content p:first-child { margin-top: 0; }
.mf-empty-note {
  font-family: var(--mf-display);
  font-size: clamp(22px, 3vw, 36px);
  color: rgba(255,255,255,.60);
}

.mf-mobile-menu-button { display: none; }


/* v0.6 desktop master: the approved artwork already contains the Phi/title composition.
   Keep the semantic HTML copy available for mobile, but do not double-render it on desktop. */
@media (min-width: 821px) {
  /* Desktop: keep the entire approved master inside the visible browser height.
     This avoids the slight width-driven zoom that pushed the feet below the viewport. */
  .mf-hero {
    height: 100svh;
    aspect-ratio: auto;
  }
  .mf-hero-picture img {
    object-fit: contain;
    object-position: 50% 50%;
    /* v0.11: subtle optical balance correction. Master artwork remains untouched. */
    transform: translateY(12px) scale(.99);
    transform-origin: 50% 50%;
  }
  .mf-hero-copy { display: none; }
}

@media (min-width: 821px) {
  body.admin-bar .mf-hero { height: calc(100svh - 32px); }
}

@media (max-width: 820px) {
  .mf-site-header { padding: 19px 20px; }
  .mf-header-inner { justify-content: space-between; gap: 16px; }
  .mf-header-phi { font-size: 25px; }
  .mf-mobile-menu-button {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    border: 0;
    padding: 9px 0;
    color: #fff;
    background: transparent;
    font: inherit;
    font-size: 11px;
    letter-spacing: .18em;
    text-transform: uppercase;
    cursor: pointer;
  }
  .mf-mobile-menu-button::before {
    content: "";
    width: 21px;
    height: 12px;
    border-top: 1px solid currentColor;
    border-bottom: 1px solid currentColor;
  }
  .mf-nav {
    position: fixed;
    inset: 0;
    z-index: -1;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    justify-content: center;
    gap: 30px;
    padding: 90px 38px;
    background: rgba(4,6,10,.97);
    opacity: 0;
    visibility: hidden;
    transform: translateY(-8px);
    transition: opacity .22s ease, visibility .22s ease, transform .22s ease;
  }
  body.mf-menu-open { overflow: hidden; }
  body.mf-menu-open .mf-nav { opacity: 1; visibility: visible; transform: translateY(0); }
  .mf-nav-list { flex-direction: column; align-items: flex-start; gap: 30px; }
  .mf-nav a { font-size: 17px; letter-spacing: .13em; }
  .mf-language { margin-left: 0; padding-left: 14px; }

  .mf-hero { min-height: 100svh; aspect-ratio: auto; }
  .mf-hero-picture img { object-fit: cover; object-position: 50% 50%; }
  .mf-hero::before {
    background:
      linear-gradient(0deg, rgba(3,5,9,.48) 0%, rgba(3,5,9,.07) 45%, rgba(3,5,9,.03) 74%),
      linear-gradient(90deg, rgba(3,5,9,.12), transparent 58%);
  }
  .mf-hero-copy {
    top: auto;
    left: 50%;
    right: auto;
    bottom: 7.2vh;
    width: calc(100% - 38px);
    transform: translateX(-50%);
    text-align: center;
  }
  .mf-hero-phi {
    margin-bottom: 11px;
    font-size: clamp(44px, 13vw, 66px);
  }
  .mf-hero h1 {
    font-size: clamp(31px, 9.2vw, 48px);
    line-height: 1;
    letter-spacing: .09em;
    white-space: nowrap;
  }
  .mf-hero-kicker {
    margin-top: 14px;
    font-size: 9px;
    letter-spacing: .32em;
  }
  .mf-page { padding-top: 120px; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition: none !important; }
}


.mf-story {
  position: relative;
  min-height: 100svh;
  overflow: hidden;
  isolation: isolate;
  background:
    radial-gradient(circle at 50% 0%, rgba(60, 49, 95, .11), transparent 34%),
    linear-gradient(180deg, #070910 0%, #05070b 42%, #06070c 100%);
}
.mf-story::before {
  content: "";
  position: absolute;
  z-index: 0;
  top: 0;
  bottom: 0;
  left: 50%;
  width: 1px;
  background: linear-gradient(180deg,
    rgba(217,189,122,0) 0%,
    rgba(217,189,122,.34) 13%,
    rgba(217,189,122,.13) 40%,
    rgba(217,189,122,.07) 78%,
    rgba(217,189,122,0) 100%);
  pointer-events: none;
}

.mf-story-hero {
  position: relative;
  z-index: 1;
  min-height: 88svh;
  display: flex;
  align-items: flex-end;
  overflow: hidden;
  padding: 170px clamp(24px, 7vw, 118px) clamp(88px, 9vw, 142px);
  background:
    radial-gradient(ellipse at 50% 40%, rgba(217,189,122,.055), transparent 23%),
    radial-gradient(ellipse at 50% 46%, rgba(64,53,102,.24), transparent 42%),
    linear-gradient(180deg, rgba(5,7,12,.18), rgba(5,7,12,.78));
}
.mf-story-hero::after {
  content: "";
  position: absolute;
  left: 50%;
  top: 15%;
  width: min(70vw, 1050px);
  height: min(70vw, 1050px);
  transform: translate(-50%, -50%);
  border-radius: 50%;
  background: radial-gradient(circle, rgba(217,189,122,.095) 0%, rgba(217,189,122,.02) 34%, transparent 68%);
  filter: blur(2px);
  pointer-events: none;
}
.mf-story-hero-glow {
  position: absolute;
  z-index: 0;
  left: 50%;
  top: 10%;
  bottom: 10%;
  width: 1px;
  background: linear-gradient(180deg, transparent 0%, rgba(255,232,172,.58) 28%, rgba(217,189,122,.34) 68%, transparent 100%);
  box-shadow: 0 0 42px rgba(217,189,122,.22);
}
.mf-story-hero-phi {
  position: absolute;
  z-index: 0;
  left: 50%;
  top: 47%;
  transform: translate(-50%, -50%);
  font-family: var(--mf-display);
  font-size: clamp(260px, 42vw, 660px);
  font-weight: 400;
  line-height: .8;
  color: rgba(217,189,122,.085);
  text-shadow: 0 0 90px rgba(217,189,122,.05);
  user-select: none;
}
.mf-story-hero-inner {
  position: relative;
  z-index: 2;
  width: min(1220px, 100%);
  margin: 0 auto;
}
.mf-story-kicker {
  margin: 0 0 24px;
  color: var(--mf-gold);
  font-size: 10px;
  font-weight: 600;
  letter-spacing: .34em;
  text-transform: uppercase;
}
.mf-story-hero h1 {
  margin: 0;
  font-family: var(--mf-display);
  font-size: clamp(78px, 13.2vw, 202px);
  font-weight: 400;
  line-height: .77;
  letter-spacing: .015em;
  text-transform: uppercase;
}
.mf-story-lede {
  margin: clamp(34px, 4vw, 54px) 0 0;
  max-width: 720px;
  font-family: var(--mf-display);
  font-size: clamp(24px, 2.7vw, 40px);
  font-weight: 400;
  line-height: 1.28;
  color: rgba(247,242,232,.66);
}

.mf-story-gallery {
  position: relative;
  z-index: 1;
  width: min(1380px, 100%);
  margin: 0 auto;
  padding: clamp(80px, 11vw, 170px) clamp(24px, 6vw, 90px) clamp(130px, 16vw, 240px);
}
.mf-story-piece {
  width: 100%;
  margin: 0 auto clamp(150px, 18vw, 280px);
}
.mf-story-piece:last-child { margin-bottom: 0; }
.mf-story-figure {
  position: relative;
  width: min(1120px, 100%);
  aspect-ratio: 4 / 3;
  margin: 0 auto;
  overflow: hidden;
  background: #0b0d12;
  box-shadow: 0 44px 130px rgba(0,0,0,.34);
}
.mf-story-figure::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.045);
}
.mf-story-figure img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: 50% 50%;
  filter: saturate(.94) contrast(1.01);
}
.mf-story-figure--zeno img { object-position: 50% 48%; }
.mf-story-figure--uli img { object-position: 50% 42%; }
.mf-story-figure--portrait {
  width: min(760px, 72vw);
  aspect-ratio: 4 / 5;
}
.mf-story-figure--portrait img { object-position: 50% 26%; }

.mf-story-caption {
  width: min(1120px, 100%);
  margin: clamp(38px, 4vw, 62px) auto 0;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  gap: 42px;
}
.mf-story-piece--portrait .mf-story-caption { width: min(760px, 72vw); }
.mf-story-caption h2 {
  margin: 0;
  font-family: var(--mf-display);
  font-size: clamp(48px, 6.6vw, 102px);
  font-weight: 400;
  line-height: .9;
  letter-spacing: .012em;
  text-transform: uppercase;
}
.mf-story-caption p {
  margin: 24px 0 0;
  max-width: 610px;
  font-family: var(--mf-display);
  font-size: clamp(20px, 1.9vw, 28px);
  line-height: 1.45;
  color: rgba(247,242,232,.62);
}
.mf-story-link {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  gap: 12px;
  padding-bottom: 9px;
  border-bottom: 1px solid rgba(217,189,122,.45);
  color: rgba(247,242,232,.88);
  font-size: 10px;
  font-weight: 600;
  letter-spacing: .25em;
  text-transform: uppercase;
  white-space: nowrap;
  transition: color .2s ease, border-color .2s ease;
}
.mf-story-link:hover {
  color: var(--mf-gold);
  border-color: var(--mf-gold);
}

@media (max-width: 820px) {
  .mf-story::before { left: 50%; opacity: .7; }
  .mf-story-hero {
    min-height: 76svh;
    padding: 128px 22px 68px;
  }
  .mf-story-hero-phi {
    top: 43%;
    font-size: clamp(220px, 78vw, 370px);
  }
  .mf-story-hero h1 { font-size: clamp(72px, 25vw, 112px); }
  .mf-story-lede { max-width: 500px; font-size: clamp(22px, 6vw, 29px); }
  .mf-story-gallery { padding: 76px 20px 120px; }
  .mf-story-piece { margin-bottom: 120px; }
  .mf-story-figure { width: 100%; aspect-ratio: 4 / 3; }
  .mf-story-figure--portrait { width: min(86vw, 620px); aspect-ratio: 4 / 5; }
  .mf-story-caption,
  .mf-story-piece--portrait .mf-story-caption {
    width: 100%;
    margin-top: 30px;
    display: block;
  }
  .mf-story-caption h2 { font-size: clamp(43px, 14vw, 68px); }
  .mf-story-caption p { font-size: clamp(19px, 5.3vw, 25px); }
  .mf-story-link { margin-top: 30px; }
}

/* THE VOICE OF ZENO — v0.13 */
.mf-voice {
  min-height: 100svh;
  overflow: hidden;
  background:
    radial-gradient(circle at 74% 8%, rgba(63, 57, 106, .18), transparent 30%),
    radial-gradient(circle at 28% 78%, rgba(84, 52, 111, .10), transparent 34%),
    linear-gradient(180deg, #080a10 0%, #05070b 56%, #090a10 100%);
}
.mf-voice-intro {
  min-height: 82svh;
  display: flex;
  align-items: flex-end;
  padding: 180px clamp(24px, 7vw, 118px) clamp(86px, 10vw, 150px);
  border-bottom: 1px solid rgba(217, 189, 122, .12);
}
.mf-voice-intro-inner { width: min(1180px, 100%); margin: 0 auto; }
.mf-voice-eyebrow,
.mf-voice-index,
.mf-form-number,
.mf-form-umbrella,
.mf-form-type {
  text-transform: uppercase;
  letter-spacing: .27em;
}
.mf-voice-eyebrow,
.mf-voice-index {
  margin: 0 0 20px;
  color: var(--mf-gold);
  font-size: 10px;
  font-weight: 600;
}
.mf-voice-intro h1 {
  margin: 0;
  font-family: var(--mf-display);
  font-size: clamp(66px, 10vw, 156px);
  font-weight: 400;
  line-height: .82;
  letter-spacing: .015em;
  text-transform: uppercase;
}
.mf-voice-lede {
  margin: clamp(30px, 4vw, 52px) 0 0;
  font-family: var(--mf-display);
  font-size: clamp(23px, 3vw, 42px);
  line-height: 1.25;
  color: rgba(247, 242, 232, .68);
}

.mf-keeper {
  width: min(1320px, 100%);
  margin: 0 auto;
  padding: clamp(95px, 12vw, 178px) clamp(24px, 6vw, 92px);
  display: grid;
  grid-template-columns: minmax(300px, .9fr) minmax(320px, 1.1fr);
  gap: clamp(52px, 9vw, 142px);
  align-items: center;
}
.mf-keeper-art {
  position: relative;
  width: min(100%, 580px);
  aspect-ratio: 1 / 1;
  box-shadow: 0 34px 110px rgba(0,0,0,.38);
}
.mf-keeper-art::after {
  content: "";
  position: absolute;
  inset: 0;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.07);
  pointer-events: none;
}
.mf-keeper-art img { width: 100%; height: 100%; object-fit: cover; display: block; }
.mf-keeper-copy { max-width: 600px; }
.mf-keeper-copy h2,
.mf-transcendence-head h2 {
  margin: 0;
  font-family: var(--mf-display);
  font-weight: 400;
  text-transform: uppercase;
}
.mf-keeper-copy h2 {
  font-size: clamp(49px, 7vw, 102px);
  line-height: .93;
}
.mf-keeper-copy > p:last-child {
  margin: clamp(28px, 4vw, 46px) 0 0;
  max-width: 520px;
  font-family: var(--mf-display);
  font-size: clamp(20px, 2vw, 29px);
  line-height: 1.5;
  color: rgba(247, 242, 232, .66);
}

.mf-transcendence {
  border-top: 1px solid rgba(247, 242, 232, .09);
  padding: clamp(100px, 13vw, 190px) clamp(24px, 7vw, 118px) clamp(110px, 14vw, 210px);
}
.mf-transcendence-head {
  width: min(1180px, 100%);
  margin: 0 auto clamp(76px, 9vw, 132px);
}
.mf-transcendence-head h2 {
  font-size: clamp(55px, 8.4vw, 132px);
  line-height: .9;
  letter-spacing: .01em;
}
.mf-transcendence-head h2 span { color: rgba(247, 242, 232, .52); }
.mf-transcendence-head > p:last-child {
  margin: clamp(28px, 4vw, 48px) 0 0;
  font-family: var(--mf-display);
  font-size: clamp(25px, 3.2vw, 46px);
  color: rgba(247, 242, 232, .72);
}
.mf-transcendence-forms {
  width: min(1180px, 100%);
  margin: 0 auto;
  border-top: 1px solid rgba(217, 189, 122, .22);
}
.mf-form {
  position: relative;
  display: grid;
  grid-template-columns: 90px minmax(0, 1fr);
  column-gap: clamp(22px, 4vw, 58px);
  padding: clamp(40px, 5vw, 70px) 0;
  border-bottom: 1px solid rgba(247, 242, 232, .09);
}
.mf-form-number {
  grid-row: 1 / span 3;
  margin: 4px 0 0;
  color: var(--mf-gold);
  font-size: 10px;
}
.mf-form-umbrella,
.mf-form-type {
  margin: 0;
  font-size: 9px;
  font-weight: 600;
  color: rgba(247, 242, 232, .42);
}
.mf-form h3 {
  margin: 13px 0 0;
  font-family: var(--mf-display);
  font-size: clamp(37px, 5.4vw, 78px);
  font-weight: 400;
  line-height: 1;
  text-transform: uppercase;
}
.mf-form-type { margin-top: 14px; color: rgba(217, 189, 122, .72); }

.mf-voice-end {
  min-height: 55svh;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 20px;
  text-align: center;
  border-top: 1px solid rgba(217, 189, 122, .10);
}
.mf-voice-phi {
  font-family: var(--mf-display);
  font-size: clamp(62px, 8vw, 110px);
  color: var(--mf-gold);
  line-height: 1;
}
.mf-voice-end p {
  margin: 0;
  font-family: var(--mf-display);
  font-size: clamp(22px, 3vw, 39px);
  color: rgba(247, 242, 232, .66);
}

@media (max-width: 820px) {
  .mf-voice-intro { min-height: 70svh; padding: 132px 22px 72px; }
  .mf-voice-intro h1 { font-size: clamp(62px, 21vw, 104px); }
  .mf-keeper {
    grid-template-columns: 1fr;
    gap: 52px;
    padding: 76px 20px 92px;
  }
  .mf-keeper-art { width: 100%; max-width: 580px; }
  .mf-transcendence { padding: 84px 20px 112px; }
  .mf-transcendence-head { margin-bottom: 64px; }
  .mf-form { grid-template-columns: 46px minmax(0, 1fr); column-gap: 17px; }
  .mf-form h3 { font-size: clamp(35px, 12vw, 58px); }
  .mf-form-umbrella { line-height: 1.6; }
}

.mf-story-v16 {
  --story-gold: #d8bd7b;
  --story-ink: #05070b;
  min-height: 100svh;
  background: var(--story-ink);
  color: #f5f0e6;
}
.mf-story16-hero {
  position: relative;
  min-height: clamp(390px, 43svh, 560px);
  overflow: hidden;
  display: flex;
  align-items: flex-end;
  isolation: isolate;
}
.mf-story16-hero-image {
  position: absolute;
  inset: 0;
  z-index: -3;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center 43%;
  transform: scale(1.015);
  filter: saturate(.86) contrast(1.03) brightness(.84);
}
.mf-story16-hero-shade {
  position: absolute;
  inset: 0;
  z-index: -2;
  background:
    linear-gradient(90deg, rgba(3,5,9,.84) 0%, rgba(3,5,9,.55) 35%, rgba(3,5,9,.15) 70%, rgba(3,5,9,.26) 100%),
    linear-gradient(0deg, rgba(4,6,10,.64) 0%, rgba(4,6,10,.05) 48%, rgba(4,6,10,.10) 100%);
}
.mf-story16-hero-line {
  position: absolute;
  left: clamp(24px, 7vw, 118px);
  bottom: 0;
  width: clamp(90px, 12vw, 190px);
  height: 1px;
  background: linear-gradient(90deg, var(--story-gold), transparent);
  box-shadow: 0 0 22px rgba(216,189,123,.25);
}
.mf-story16-hero-copy {
  width: min(1380px, 100%);
  margin: 0 auto;
  padding: 120px clamp(24px, 7vw, 118px) clamp(50px, 5vw, 76px);
}
.mf-story16-kicker {
  margin: 0 0 12px;
  color: var(--story-gold);
  font-size: 9px;
  font-weight: 600;
  letter-spacing: .34em;
  text-transform: uppercase;
}
.mf-story16-hero h1 {
  margin: 0;
  font-family: var(--mf-display);
  font-size: clamp(70px, 9.2vw, 144px);
  font-weight: 400;
  line-height: .82;
  letter-spacing: .015em;
  text-transform: uppercase;
  text-shadow: 0 4px 30px rgba(0,0,0,.34);
}
.mf-story16-hero-copy > p:last-child {
  margin: 24px 0 0;
  max-width: 680px;
  font-family: var(--mf-display);
  font-size: clamp(21px, 2.1vw, 31px);
  line-height: 1.35;
  color: rgba(247,242,232,.78);
}

.mf-story16-stage {
  min-height: 57svh;
  display: flex;
  align-items: center;
  background:
    radial-gradient(circle at 82% 16%, rgba(58,50,94,.16), transparent 34%),
    linear-gradient(180deg, #07090e 0%, #05070b 100%);
}
.mf-story16-stage-inner {
  width: min(1380px, 100%);
  margin: 0 auto;
  padding: clamp(28px, 3.2vw, 48px) clamp(24px, 7vw, 118px) clamp(42px, 4vw, 64px);
}
.mf-story16-tabs {
  display: flex;
  align-items: center;
  gap: clamp(20px, 3.4vw, 52px);
  padding-bottom: clamp(22px, 2.6vw, 36px);
  border-bottom: 1px solid rgba(216,189,123,.13);
  overflow-x: auto;
  scrollbar-width: none;
}
.mf-story16-tabs::-webkit-scrollbar { display:none; }
.mf-story16-tab {
  appearance: none;
  border: 0;
  padding: 0 0 9px;
  background: transparent;
  color: rgba(247,242,232,.44);
  font: inherit;
  font-size: clamp(10px, .95vw, 13px);
  font-weight: 600;
  letter-spacing: .18em;
  text-transform: uppercase;
  white-space: nowrap;
  cursor: pointer;
  border-bottom: 1px solid transparent;
  transition: color .2s ease, border-color .2s ease;
}
.mf-story16-tab:hover,
.mf-story16-tab.is-active {
  color: #f5f0e6;
  border-color: var(--story-gold);
}
.mf-story16-panels { padding-top: clamp(28px, 3vw, 44px); }
.mf-story16-panel {
  display: grid;
  grid-template-columns: minmax(280px, .78fr) minmax(430px, 1.22fr);
  gap: clamp(44px, 7vw, 110px);
  align-items: center;
  animation: mfStoryFade .35s ease both;
}
.mf-story16-panel[hidden] { display:none !important; }
@keyframes mfStoryFade {
  from { opacity: 0; transform: translateY(7px); }
  to { opacity: 1; transform: translateY(0); }
}
.mf-story16-copy { align-self: start; padding-top: clamp(4px, 1vw, 14px); }
.mf-story16-copy h2 {
  margin: 0;
  font-family: var(--mf-display);
  font-size: clamp(44px, 5.1vw, 80px);
  font-weight: 400;
  line-height: .91;
  letter-spacing: .012em;
  text-transform: uppercase;
}
.mf-story16-copy p {
  margin: clamp(18px, 2vw, 28px) 0 0;
  max-width: 520px;
  font-family: var(--mf-display);
  font-size: clamp(19px, 1.7vw, 25px);
  line-height: 1.42;
  color: rgba(247,242,232,.62);
}
.mf-story16-copy a {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  margin-top: clamp(22px, 2.6vw, 38px);
  padding-bottom: 8px;
  border-bottom: 1px solid rgba(216,189,123,.42);
  color: rgba(247,242,232,.88);
  font-size: 9px;
  font-weight: 600;
  letter-spacing: .22em;
  text-transform: uppercase;
}
.mf-story16-copy a:hover { color: var(--story-gold); border-color: var(--story-gold); }
.mf-story16-image {
  position: relative;
  width: 100%;
  height: clamp(300px, 35svh, 470px);
  margin: 0;
  overflow: hidden;
  background: #0a0c11;
  box-shadow: 0 24px 78px rgba(0,0,0,.30);
}
.mf-story16-image::after {
  content:"";
  position:absolute;
  inset:0;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.05);
  pointer-events:none;
}
.mf-story16-image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  filter: saturate(.93) contrast(1.015);
}
.mf-story16-image--portrait img { object-position: 50% 27%; }

@media (min-width: 1024px) and (min-height: 760px) {
  .mf-story16-hero { min-height: 42svh; }
  .mf-story16-stage { min-height: 58svh; }
}
@media (max-width: 820px) {
  .mf-story16-hero { min-height: 53svh; }
  .mf-story16-hero-image { object-position: 60% 50%; }
  .mf-story16-hero-shade {
    background:
      linear-gradient(0deg, rgba(3,5,9,.82), rgba(3,5,9,.14) 58%, rgba(3,5,9,.15)),
      linear-gradient(90deg, rgba(3,5,9,.55), rgba(3,5,9,.10));
  }
  .mf-story16-hero-copy { padding: 130px 22px 52px; }
  .mf-story16-hero h1 { font-size: clamp(65px, 22vw, 100px); }
  .mf-story16-stage { min-height: auto; }
  .mf-story16-stage-inner { padding: 30px 20px 72px; }
  .mf-story16-tabs { gap: 26px; padding-bottom: 22px; }
  .mf-story16-panel { grid-template-columns: 1fr; gap: 28px; }
  .mf-story16-copy { order: 1; padding-top: 0; }
  .mf-story16-image { order: 2; height: auto; aspect-ratio: 4 / 3; }
  .mf-story16-image--portrait { aspect-ratio: 4 / 5; }
  .mf-story16-copy h2 { font-size: clamp(42px, 13vw, 64px); }
  .mf-story16-copy p { font-size: clamp(19px, 5vw, 23px); }
}

.mf-story-v17 {
  --story17-gold: #d8bd7b;
  position: relative;
  min-height: 100svh;
  overflow: clip;
  isolation: isolate;
  color: #f7f2e8;
  background: #05070b;
}
@keyframes mfStory17Fade { from {opacity:0; transform:translateY(6px)} to {opacity:1; transform:translateY(0)} }
/* Voice portrait: never crop off the head. */
@media (max-width: 820px) {
}

/* STORY v0.18.6 — one viewport, one scene, light-born media by expansion */
body.page-id-11 .mf-site-header { display: none !important; }

@media (min-width: 821px) {
  html:has(body.page-id-11),
  body.page-id-11 { height: 100%; overflow: hidden !important; }

  .mf-story-v18 {
    --story18-gold: #d9bd7a;
    position: relative;
    isolation: isolate;
    width: 100%;
    height: 100dvh;
    min-height: 0;
    overflow: hidden;
    display: grid;
    grid-template-rows: minmax(0, 1fr) auto;
    color: var(--mf-text);
    background: #090a0d;
  }

  .mf-story18-motherland {
    position: absolute;
    z-index: -3;
    inset: 0;
    background:
      linear-gradient(180deg, rgba(4,4,5,.06) 0%, rgba(4,4,5,.10) 55%, rgba(4,4,5,.20) 100%),
      url("assets/images/story/motherland-phi.png") 50% 50% / cover no-repeat;
  }

  .mf-story-v18::before {
    content: "";
    position: absolute;
    z-index: -2;
    inset: 0;
    pointer-events: none;
    background:
      radial-gradient(ellipse at 20% 48%, rgba(3,4,8,.56) 0%, rgba(3,4,8,.28) 34%, transparent 60%),
      radial-gradient(ellipse at 80% 48%, rgba(3,4,8,.22) 0%, transparent 55%),
      linear-gradient(90deg, rgba(2,3,6,.28), transparent 36%, transparent 64%, rgba(2,3,6,.16));
  }

  .mf-story18-scene-area {
    position: relative;
    min-height: 0;
    overflow: hidden;
  }

  .mf-story18-scene {
    position: absolute;
    inset: 0;
    width: min(1480px, 100%);
    margin: 0 auto;
    padding: clamp(34px, 4vh, 58px) clamp(42px, 6vw, 92px) clamp(20px, 2.2vh, 32px);
    min-height: 0;
  }

  .mf-story18-scene[hidden] { display: none !important; }

  .mf-story18-intro,
  .mf-story18-chapter {
    display: grid;
    grid-template-columns: minmax(330px, .88fr) minmax(560px, 1.12fr);
    gap: clamp(42px, 5vw, 82px);
    align-items: center;
  }

  .mf-story18-intro-copy,
  .mf-story18-copy,
  .mf-story18-larry-copy {
    position: relative;
    z-index: 4;
  }

  .mf-story18-intro-copy::before,
  .mf-story18-copy::before,
  .mf-story18-larry-copy::before {
    content: "";
    position: absolute;
    z-index: -1;
    inset: -22px -28px;
    background: radial-gradient(ellipse at 28% 50%, rgba(3,4,7,.72) 0%, rgba(3,4,7,.42) 52%, transparent 78%);
    filter: blur(18px);
    pointer-events: none;
  }

  .mf-story18-eyebrow {
    margin: 0 0 13px;
    font-family: var(--mf-sans);
    font-size: clamp(9px, .68vw, 11px);
    font-weight: 500;
    letter-spacing: .39em;
    text-transform: uppercase;
    color: rgba(255,255,255,.82);
  }

  .mf-story18-intro h1,
  .mf-story18-larry h2,
  .mf-story18-copy h2 {
    margin: 0;
    font-family: var(--mf-display);
    font-weight: 400;
    line-height: .98;
    letter-spacing: .12em;
    text-transform: uppercase;
    color: #fff;
    text-shadow: 0 2px 20px rgba(0,0,0,.44);
  }

  .mf-story18-intro h1 { font-size: clamp(34px, 3.2vw, 56px); }
  .mf-story18-larry h2,
  .mf-story18-copy h2 { font-size: clamp(27px, 2.3vw, 40px); }

  .mf-story18-lede,
  .mf-story18-copy p {
    margin: 18px 0 0;
    max-width: 610px;
    font-family: var(--mf-sans);
    font-size: clamp(14px, .93vw, 16px);
    font-weight: 400;
    line-height: 1.72;
    color: rgba(251,248,241,.94);
    text-shadow: 0 2px 18px rgba(0,0,0,.54);
  }

  .mf-story18-larry {
    display: grid;
    grid-template-rows: auto minmax(0,1fr);
    align-items: center;
    gap: 12px;
    min-height: 0;
  }

  .mf-story18-larry-copy {
    width: min(40vw, 640px);
    justify-self: end;
  }

  .mf-story18-copy { max-width: 570px; }
  .mf-story18-copy a {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    margin-top: 20px;
    padding-bottom: 6px;
    border-bottom: 1px solid rgba(217,189,122,.54);
    font-family: var(--mf-sans);
    font-size: 9px;
    font-weight: 500;
    letter-spacing: .29em;
    text-transform: uppercase;
    color: rgba(255,255,255,.91);
  }

  .mf-story18-media {
    position: relative;
    isolation: isolate;
    width: min(40vw, 650px);
    height: clamp(330px, 46vh, 470px);
    margin: 0;
    justify-self: end;
    overflow: visible;
  }

  .mf-story18-video-wrap {
    width: min(40vw, 650px);
    height: auto;
    aspect-ratio: 16 / 9;
  }

  .mf-story18-media--portrait {
    width: min(31vw, 480px);
    height: clamp(350px, 48vh, 500px);
  }

  .mf-story18-media--wide {
    width: min(42vw, 690px);
    height: clamp(330px, 44vh, 450px);
  }

  /* The aura is the same image enlarged and blurred behind the intact subject. */
  .mf-story18-aura {
    position: absolute;
    z-index: -1;
    left: 50%;
    top: 50%;
    width: 122%;
    height: 122%;
    transform: translate(-50%, -50%) scale(1.04);
    object-fit: cover;
    opacity: .56;
    filter: blur(34px) saturate(1.22) brightness(1.34) contrast(.92);
    mix-blend-mode: screen;
    -webkit-mask-image: radial-gradient(ellipse 68% 64% at 50% 50%, #000 0%, rgba(0,0,0,.90) 48%, rgba(0,0,0,.46) 70%, transparent 100%);
    mask-image: radial-gradient(ellipse 68% 64% at 50% 50%, #000 0%, rgba(0,0,0,.90) 48%, rgba(0,0,0,.46) 70%, transparent 100%);
    pointer-events: none;
  }

  .mf-story18-media::before {
    content: "";
    position: absolute;
    z-index: 0;
    inset: -14%;
    pointer-events: none;
    background:
      radial-gradient(ellipse at 50% 50%, rgba(255,247,224,.22) 0%, rgba(246,211,139,.13) 34%, rgba(225,178,87,.05) 56%, transparent 78%);
    filter: blur(20px);
    mix-blend-mode: screen;
  }

  .mf-story18-main-media {
    position: relative;
    z-index: 1;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    border: 0;
    background: transparent;
    filter: saturate(.99) contrast(1.01) brightness(1.04) drop-shadow(0 0 16px rgba(255,231,178,.15));
    /* Only a narrow 3% feather: substance stays intact while the rectangle disappears. */
    -webkit-mask-image:
      linear-gradient(to right, transparent 0%, rgba(0,0,0,.68) 2%, #000 4%, #000 96%, rgba(0,0,0,.68) 98%, transparent 100%),
      linear-gradient(to bottom, transparent 0%, rgba(0,0,0,.68) 2%, #000 4%, #000 96%, rgba(0,0,0,.68) 98%, transparent 100%);
    -webkit-mask-composite: source-in;
    mask-image:
      linear-gradient(to right, transparent 0%, rgba(0,0,0,.68) 2%, #000 4%, #000 96%, rgba(0,0,0,.68) 98%, transparent 100%),
      linear-gradient(to bottom, transparent 0%, rgba(0,0,0,.68) 2%, #000 4%, #000 96%, rgba(0,0,0,.68) 98%, transparent 100%);
    mask-composite: intersect;
  }

  .mf-story18-video { object-fit: cover; }
  .mf-story18-media--portrait .mf-story18-main-media,
  .mf-story18-media--portrait .mf-story18-aura { object-fit: contain; }

  .mf-story18-chapter--reverse .mf-story18-copy {
    grid-column: 2;
    grid-row: 1;
    justify-self: start;
  }
  .mf-story18-chapter--reverse .mf-story18-media {
    grid-column: 1;
    grid-row: 1;
    justify-self: end;
  }

  /* Deliberate placements around the Phi/light axis. */
  .mf-story18-chapter[data-story18-content="voice"] .mf-story18-media { transform: translate(-1.5vw, -.8vh); }
  .mf-story18-chapter[data-story18-content="zeno"] .mf-story18-media { transform: translate(-.6vw, .5vh); }
  .mf-story18-chapter[data-story18-content="uli"] .mf-story18-media { transform: translate(1.4vw, -.4vh); }
  .mf-story18-chapter[data-story18-content="combo"] .mf-story18-media { transform: translate(1.1vw, .5vh); }

  .mf-story18-tabs {
    position: relative;
    z-index: 7;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: clamp(24px, 4vw, 64px);
    min-height: 66px;
    padding: 10px clamp(30px, 5vw, 80px) 14px;
    border-top: 1px solid rgba(217,189,122,.18);
    background: linear-gradient(180deg, rgba(5,6,8,.08), rgba(5,6,8,.34));
  }

  .mf-story18-tab {
    appearance: none;
    border: 0;
    border-bottom: 1px solid transparent;
    padding: 0 0 8px;
    background: transparent;
    font-family: var(--mf-sans);
    font-size: clamp(10px, .78vw, 12px);
    font-weight: 500;
    letter-spacing: .23em;
    text-transform: uppercase;
    white-space: nowrap;
    color: rgba(255,255,255,.68);
    cursor: pointer;
  }

  .mf-story18-tab:hover,
  .mf-story18-tab.is-active {
    color: #fff;
    border-bottom-color: var(--story18-gold);
  }
}

@media (max-width: 820px) {
  .mf-story-v18 {
    position: relative;
    min-height: 100svh;
    overflow: hidden;
    color: var(--mf-text);
    background: #090a0d;
  }
  .mf-story18-motherland {
    position: fixed;
    z-index: -2;
    inset: 0;
    background: linear-gradient(rgba(4,4,5,.12), rgba(4,4,5,.32)), url("assets/images/story/motherland-phi.png") 50% 50% / cover no-repeat;
  }
  .mf-story18-scene-area { padding: 92px 20px 16px; }
  .mf-story18-scene { position: relative; }
  .mf-story18-scene[hidden] { display:none !important; }
  .mf-story18-intro,
  .mf-story18-chapter { display:grid; gap:32px; }
  .mf-story18-eyebrow { font-size:9px; letter-spacing:.32em; text-transform:uppercase; }
  .mf-story18-intro h1,
  .mf-story18-larry h2,
  .mf-story18-copy h2 { font-family:var(--mf-display); font-weight:400; text-transform:uppercase; }
  .mf-story18-intro h1 { font-size:clamp(38px,12vw,58px); }
  .mf-story18-larry h2,
  .mf-story18-copy h2 { font-size:clamp(32px,10vw,48px); }
  .mf-story18-lede,
  .mf-story18-copy p { font-size:16px; line-height:1.65; color:rgba(255,255,255,.9); }
  .mf-story18-media { position:relative; width:100%; aspect-ratio:4/3; }
  .mf-story18-video-wrap { aspect-ratio:16/9; }
  .mf-story18-aura { position:absolute; inset:-10%; width:120%; height:120%; object-fit:cover; opacity:.5; filter:blur(28px) brightness(1.25); }
  .mf-story18-main-media { position:relative; width:100%; height:100%; object-fit:cover; border:0; }
  .mf-story18-tabs { display:flex; gap:24px; padding:20px; overflow-x:auto; border-top:1px solid rgba(217,189,122,.18); }
  .mf-story18-tab { flex:0 0 auto; border:0; background:none; color:#fff; font-size:10px; letter-spacing:.18em; text-transform:uppercase; }
}

/* STORY v0.18.7 — hard one-screen reset + true image-born aura */
@media (min-width: 821px) {
  body:has(.mf-story-v18) {
    height: 100dvh !important;
    min-height: 100dvh !important;
    overflow: hidden !important;
  }

  body:has(.mf-story-v18) .mf-site-header,
  body:has(.mf-story-v18) .mf-site-footer,
  body:has(.mf-story-v18) footer {
    display: none !important;
  }

  .mf-story-v18 {
    position: fixed !important;
    inset: 0 !important;
    width: 100vw !important;
    height: 100dvh !important;
    min-height: 0 !important;
    max-height: 100dvh !important;
    overflow: hidden !important;
    grid-template-rows: minmax(0, 1fr) 64px !important;
  }

  .mf-story18-scene-area {
    min-height: 0 !important;
    height: auto !important;
    overflow: hidden !important;
  }

  .mf-story18-scene {
    inset: 0 !important;
    width: min(1360px, 100%) !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: 100% !important;
    padding: clamp(30px, 4.2vh, 48px) clamp(72px, 9vw, 150px) clamp(18px, 2vh, 28px) !important;
    overflow: hidden !important;
  }

  .mf-story18-intro,
  .mf-story18-chapter {
    grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr) !important;
    gap: clamp(54px, 6vw, 96px) !important;
    align-items: center !important;
  }

  .mf-story18-intro-copy,
  .mf-story18-copy {
    width: min(34vw, 520px) !important;
    max-width: 520px !important;
    justify-self: center !important;
    align-self: center !important;
  }

  .mf-story18-larry {
    width: 100% !important;
    max-width: 650px !important;
    justify-self: center !important;
    align-self: center !important;
    grid-template-rows: auto auto !important;
    gap: 12px !important;
  }

  .mf-story18-larry-copy {
    width: min(36vw, 590px) !important;
    justify-self: center !important;
    text-align: left !important;
  }

  .mf-story18-copy h2,
  .mf-story18-larry h2 {
    font-size: clamp(28px, 2.15vw, 38px) !important;
  }

  .mf-story18-copy p {
    max-width: 500px !important;
    margin-top: 16px !important;
    line-height: 1.62 !important;
  }

  .mf-story18-copy a {
    margin-top: 16px !important;
  }

  .mf-story18-media {
    width: min(41vw, 650px) !important;
    height: clamp(300px, 41vh, 420px) !important;
    justify-self: center !important;
    align-self: center !important;
    overflow: visible !important;
  }

  .mf-story18-video-wrap {
    width: min(39vw, 620px) !important;
    height: auto !important;
    aspect-ratio: 16 / 9 !important;
  }

  .mf-story18-media--portrait {
    width: min(31vw, 470px) !important;
    height: clamp(320px, 43vh, 445px) !important;
  }

  .mf-story18-media--wide {
    width: min(43vw, 690px) !important;
    height: clamp(300px, 40vh, 410px) !important;
  }

  /* The image itself radiates outward. */
  .mf-story18-aura {
    z-index: -2 !important;
    width: 150% !important;
    height: 150% !important;
    opacity: .82 !important;
    transform: translate(-50%, -50%) scale(1.08) !important;
    filter: blur(52px) saturate(1.34) brightness(1.62) contrast(.88) !important;
    mix-blend-mode: screen !important;
    -webkit-mask-image: radial-gradient(ellipse 76% 72% at 50% 50%, #000 0%, rgba(0,0,0,.98) 48%, rgba(0,0,0,.72) 67%, rgba(0,0,0,.20) 88%, transparent 100%) !important;
    mask-image: radial-gradient(ellipse 76% 72% at 50% 50%, #000 0%, rgba(0,0,0,.98) 48%, rgba(0,0,0,.72) 67%, rgba(0,0,0,.20) 88%, transparent 100%) !important;
  }

  .mf-story18-media::before {
    z-index: -1 !important;
    inset: -24% !important;
    background:
      radial-gradient(ellipse at 50% 50%, rgba(255,251,235,.34) 0%, rgba(249,221,159,.22) 30%, rgba(236,191,101,.10) 52%, transparent 78%) !important;
    filter: blur(30px) !important;
    mix-blend-mode: screen !important;
  }

  .mf-story18-media::after {
    content: "" !important;
    position: absolute !important;
    z-index: 3 !important;
    inset: -7% !important;
    pointer-events: none !important;
    background:
      linear-gradient(90deg, rgba(255,240,203,.20) 0%, transparent 10%, transparent 90%, rgba(255,240,203,.20) 100%),
      linear-gradient(180deg, rgba(255,246,222,.18) 0%, transparent 10%, transparent 90%, rgba(255,246,222,.18) 100%),
      radial-gradient(ellipse at 50% 50%, transparent 60%, rgba(255,234,184,.10) 76%, rgba(255,248,225,.24) 94%, transparent 100%) !important;
    filter: blur(10px) !important;
    mix-blend-mode: screen !important;
  }

  .mf-story18-main-media {
    -webkit-mask-image:
      linear-gradient(to right, transparent 0%, rgba(0,0,0,.72) 3%, #000 7%, #000 93%, rgba(0,0,0,.72) 97%, transparent 100%),
      linear-gradient(to bottom, transparent 0%, rgba(0,0,0,.72) 3%, #000 7%, #000 93%, rgba(0,0,0,.72) 97%, transparent 100%) !important;
    -webkit-mask-composite: source-in !important;
    mask-image:
      linear-gradient(to right, transparent 0%, rgba(0,0,0,.72) 3%, #000 7%, #000 93%, rgba(0,0,0,.72) 97%, transparent 100%),
      linear-gradient(to bottom, transparent 0%, rgba(0,0,0,.72) 3%, #000 7%, #000 93%, rgba(0,0,0,.72) 97%, transparent 100%) !important;
    mask-composite: intersect !important;
    filter: saturate(1.01) contrast(1.015) brightness(1.06) drop-shadow(0 0 20px rgba(255,230,169,.22)) !important;
  }

  .mf-story18-video {
    transform: scale(1.015) !important;
    transform-origin: center !important;
  }

  .mf-story18-chapter--reverse .mf-story18-copy {
    grid-column: 2 !important;
    grid-row: 1 !important;
    justify-self: center !important;
  }

  .mf-story18-chapter--reverse .mf-story18-media {
    grid-column: 1 !important;
    grid-row: 1 !important;
    justify-self: center !important;
  }

  .mf-story18-chapter[data-story18-content="voice"] .mf-story18-media,
  .mf-story18-chapter[data-story18-content="zeno"] .mf-story18-media,
  .mf-story18-chapter[data-story18-content="uli"] .mf-story18-media,
  .mf-story18-chapter[data-story18-content="combo"] .mf-story18-media {
    transform: none !important;
  }

  .mf-story18-tabs {
    height: 64px !important;
    min-height: 64px !important;
    padding: 8px clamp(28px, 4vw, 68px) 10px !important;
    gap: clamp(22px, 3.4vw, 54px) !important;
  }
}



/* STORY v0.18.8 — restore global menu + single light-born contour */
@media (min-width: 821px) {
  body:has(.mf-story-v18) {
    height: 100dvh !important;
    min-height: 100dvh !important;
    max-height: 100dvh !important;
    overflow: hidden !important;
  }

  body:has(.mf-story-v18) .mf-site-header {
    display: block !important;
  }

  body:has(.mf-story-v18) .mf-site-footer,
  body:has(.mf-story-v18) footer {
    display: none !important;
  }

  .mf-story-v18 {
    position: fixed !important;
    inset: 0 !important;
    width: 100vw !important;
    height: 100dvh !important;
    min-height: 0 !important;
    max-height: 100dvh !important;
    overflow: hidden !important;
    display: grid !important;
    grid-template-rows: minmax(0, 1fr) 62px !important;
  }

  .mf-story18-scene-area {
    min-height: 0 !important;
    height: 100% !important;
    overflow: hidden !important;
  }

  .mf-story18-scene {
    inset: 0 !important;
    width: min(1420px, 100%) !important;
    height: 100% !important;
    min-height: 0 !important;
    max-height: 100% !important;
    margin: 0 auto !important;
    padding: clamp(96px, 10vh, 112px) clamp(58px, 7vw, 118px) clamp(18px, 2vh, 26px) !important;
    overflow: hidden !important;
  }

  .mf-story18-intro,
  .mf-story18-chapter {
    grid-template-columns: minmax(0, .92fr) minmax(0, 1.08fr) !important;
    gap: clamp(48px, 5.5vw, 88px) !important;
    align-items: center !important;
  }

  .mf-story18-intro-copy,
  .mf-story18-copy {
    width: min(36vw, 540px) !important;
    max-width: 540px !important;
    justify-self: center !important;
    align-self: center !important;
    text-align: left !important;
  }

  .mf-story18-larry,
  .mf-story18-media {
    justify-self: center !important;
    align-self: center !important;
  }

  .mf-story18-media {
    width: min(42vw, 670px) !important;
    height: clamp(305px, 41vh, 430px) !important;
    overflow: visible !important;
    isolation: isolate !important;
  }

  .mf-story18-video-wrap {
    width: min(40vw, 635px) !important;
    height: auto !important;
    aspect-ratio: 16 / 9 !important;
  }

  .mf-story18-media--portrait {
    width: min(32vw, 485px) !important;
    height: clamp(325px, 43vh, 455px) !important;
  }

  .mf-story18-media--wide {
    width: min(44vw, 710px) !important;
    height: clamp(305px, 40vh, 420px) !important;
  }

  /* Aura has no readable frame: it begins inside the image and dies far outside it. */
  .mf-story18-aura {
    z-index: -3 !important;
    left: 50% !important;
    top: 50% !important;
    width: 182% !important;
    height: 182% !important;
    opacity: .68 !important;
    transform: translate(-50%, -50%) scale(1.04) !important;
    object-fit: cover !important;
    filter: blur(64px) saturate(1.32) brightness(1.58) contrast(.86) !important;
    mix-blend-mode: screen !important;
    -webkit-mask-image: radial-gradient(ellipse 58% 56% at 50% 50%, #000 0%, rgba(0,0,0,.96) 42%, rgba(0,0,0,.68) 62%, rgba(0,0,0,.24) 76%, transparent 88%) !important;
    mask-image: radial-gradient(ellipse 58% 56% at 50% 50%, #000 0%, rgba(0,0,0,.96) 42%, rgba(0,0,0,.68) 62%, rgba(0,0,0,.24) 76%, transparent 88%) !important;
  }

  /* No second frame layer. */
  .mf-story18-media::before,
  .mf-story18-media::after {
    display: none !important;
    content: none !important;
  }

  /* One image body, only the last few percent dissolve into the radiating copy. */
  .mf-story18-main-media {
    transform: scale(1.025) !important;
    transform-origin: center !important;
    -webkit-mask-image:
      linear-gradient(to right, transparent 0%, rgba(0,0,0,.46) 1.4%, rgba(0,0,0,.90) 3.2%, #000 5%, #000 95%, rgba(0,0,0,.90) 96.8%, rgba(0,0,0,.46) 98.6%, transparent 100%),
      linear-gradient(to bottom, transparent 0%, rgba(0,0,0,.46) 1.4%, rgba(0,0,0,.90) 3.2%, #000 5%, #000 95%, rgba(0,0,0,.90) 96.8%, rgba(0,0,0,.46) 98.6%, transparent 100%) !important;
    -webkit-mask-composite: source-in !important;
    mask-image:
      linear-gradient(to right, transparent 0%, rgba(0,0,0,.46) 1.4%, rgba(0,0,0,.90) 3.2%, #000 5%, #000 95%, rgba(0,0,0,.90) 96.8%, rgba(0,0,0,.46) 98.6%, transparent 100%),
      linear-gradient(to bottom, transparent 0%, rgba(0,0,0,.46) 1.4%, rgba(0,0,0,.90) 3.2%, #000 5%, #000 95%, rgba(0,0,0,.90) 96.8%, rgba(0,0,0,.46) 98.6%, transparent 100%) !important;
    mask-composite: intersect !important;
    filter: saturate(1.01) contrast(1.015) brightness(1.055) drop-shadow(0 0 26px rgba(255,228,164,.18)) !important;
  }

  .mf-story18-video {
    transform: scale(1.025) !important;
  }

  .mf-story18-tabs {
    height: 62px !important;
    min-height: 62px !important;
    padding: 8px clamp(28px, 4vw, 68px) 10px !important;
    gap: clamp(22px, 3.2vw, 52px) !important;
  }
}

/* v0.18.9 — image corrections only */
.mf-story18-scene[data-story18-content="zeno"] .mf-story18-main-media {
  filter: none !important;
}

/* 0.18.10 CLEAN: legacy STORY v17 selectors removed; current v18 appearance preserved. */
