/* REV-296: editorial 2026 redesign for the founder page. */
        body.um-page {
            --um-ink: #0b0c0f;
            --um-paper: #f3f2ec;
            --um-accent: #dfff68;
            --um-line: rgba(11,12,15,.14);
            background: var(--um-paper);
        }
        .um-page main { overflow: clip; }
        .um-eyebrow {
            display: inline-flex;
            align-items: center;
            gap: 11px;
            font-size: .68rem;
            font-weight: 850;
            letter-spacing: .16em;
            text-transform: uppercase;
        }
        .um-eyebrow > span {
            display: inline-grid;
            place-items: center;
            width: 30px;
            height: 30px;
            border-radius: 50%;
            letter-spacing: 0;
        }

        .um-hero {
            position: relative;
            isolation: isolate;
            overflow: hidden;
            padding: clamp(62px, 8vw, 112px) 0 0;
            color: #fff;
            background:
                radial-gradient(circle at 85% 15%, rgba(223,255,104,.14), transparent 26%),
                radial-gradient(circle at 5% 82%, rgba(103,116,255,.12), transparent 27%),
                var(--um-ink);
        }
        .um-hero::before {
            content: "";
            position: absolute;
            z-index: -1;
            inset: 0;
            opacity: .16;
            background-image:
                linear-gradient(rgba(255,255,255,.12) 1px, transparent 1px),
                linear-gradient(90deg, rgba(255,255,255,.12) 1px, transparent 1px);
            background-size: 74px 74px;
            mask-image: linear-gradient(90deg, #000, transparent 62%, #000);
        }
        .um-hero::after {
            content: "JP";
            position: absolute;
            z-index: -1;
            left: -1.5vw;
            bottom: -8vw;
            color: transparent;
            font-size: clamp(13rem, 34vw, 37rem);
            font-weight: 900;
            line-height: .8;
            letter-spacing: -.13em;
            -webkit-text-stroke: 1px rgba(255,255,255,.055);
            pointer-events: none;
        }
        .um-hero-grid {
            display: grid;
            grid-template-columns: minmax(0, 1.05fr) minmax(340px, .85fr);
            gap: clamp(48px, 8vw, 116px);
            align-items: center;
        }
        .um-hero-copy { position: relative; z-index: 2; padding-bottom: clamp(54px, 8vw, 104px); }
        .um-hero .um-eyebrow { margin-bottom: clamp(34px, 5vw, 62px); color: rgba(255,255,255,.58); }
        .um-hero .um-eyebrow > span { color: var(--um-ink); background: var(--um-accent); }
        .um-hero h1 {
            max-width: 9.4ch;
            margin: 0;
            color: #fff;
            font-size: clamp(3.5rem, 7.5vw, 7.8rem);
            line-height: .84;
            letter-spacing: -.075em;
            text-wrap: balance;
        }
        .um-hero h1 span { color: var(--um-accent); }
        .um-hero-lede {
            max-width: 600px;
            margin: clamp(30px, 4vw, 48px) 0 0;
            color: rgba(255,255,255,.68);
            font-size: clamp(1.02rem, 1.6vw, 1.18rem);
            line-height: 1.75;
        }
        .um-hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 32px; }
        .um-hero .btn-primary { color: var(--um-ink); border-color: var(--um-accent); background: var(--um-accent); }
        .um-hero .btn-primary:hover { color: var(--um-ink); background: #eeffae; }
        .um-hero .btn-outline { color: #fff; border-color: rgba(255,255,255,.32); background: rgba(255,255,255,.04); }
        .um-hero .btn-outline:hover { color: var(--um-ink); border-color: #fff; background: #fff; }
        .um-availability {
            display: flex;
            align-items: center;
            gap: 10px;
            margin-top: 25px;
            color: rgba(255,255,255,.48);
            font-size: .78rem;
            font-weight: 650;
        }
        .um-availability i {
            position: relative;
            width: 8px;
            height: 8px;
            border-radius: 50%;
            background: var(--um-accent);
            box-shadow: 0 0 0 5px rgba(223,255,104,.1);
        }
        .um-availability i::after {
            content: "";
            position: absolute;
            inset: -6px;
            border: 1px solid rgba(223,255,104,.45);
            border-radius: 50%;
            animation: um-pulse 2.6s ease-out infinite;
        }
        @keyframes um-pulse { 0% { opacity: 1; transform: scale(.55); } 70%,100% { opacity: 0; transform: scale(1.45); } }

        .um-portrait-stage {
            position: relative;
            width: min(100%, 520px);
            justify-self: end;
            align-self: center;
            margin-top: 20px;
        }
        .um-portrait-frame {
            position: relative;
            overflow: hidden;
            aspect-ratio: 4 / 5;
            border: 1px solid rgba(255,255,255,.18);
            border-radius: 240px 240px 34px 34px;
            background: #24262b;
            box-shadow: 0 60px 90px -54px rgba(0,0,0,.9);
        }
        .um-portrait-frame::after {
            content: "";
            position: absolute;
            inset: 0;
            background: linear-gradient(180deg, transparent 54%, rgba(11,12,15,.88));
            pointer-events: none;
        }
        .um-portrait {
            width: 100%;
            height: 100%;
            object-fit: cover;
            object-position: center;
            filter: saturate(.78) contrast(1.04);
            transform: scale(1.015);
        }
        .um-portrait-caption {
            position: absolute;
            z-index: 2;
            right: 28px;
            bottom: 26px;
            left: 28px;
            display: flex;
            align-items: flex-end;
            justify-content: space-between;
            gap: 18px;
        }
        .um-portrait-caption strong { display: block; color: #fff; font-size: 1.15rem; }
        .um-portrait-caption span { color: rgba(255,255,255,.58); font-size: .78rem; }
        .um-portrait-caption b { color: var(--um-accent); font-size: .68rem; letter-spacing: .12em; text-transform: uppercase; }
        .um-signature-card {
            position: absolute;
            z-index: 3;
            left: -58px;
            bottom: 76px;
            width: min(230px, 54%);
            padding: 18px 20px;
            color: var(--um-ink);
            border: 1px solid rgba(255,255,255,.64);
            border-radius: 19px;
            background: rgba(255,255,255,.88);
            box-shadow: 0 24px 60px -30px rgba(0,0,0,.82);
            backdrop-filter: blur(16px);
            animation: um-float 6s ease-in-out infinite;
        }
        .um-signature-card span { display: block; color: rgba(11,12,15,.5); font-size: .62rem; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
        .um-signature-card strong { display: block; margin-top: 8px; font-size: .92rem; line-height: 1.25; }
        .um-signature-card small { display: block; margin-top: 11px; color: rgba(11,12,15,.58); font-size: .69rem; }
        .um-monogram {
            position: absolute;
            z-index: 3;
            top: 25px;
            right: -25px;
            display: grid;
            place-items: center;
            width: 88px;
            height: 88px;
            color: var(--um-ink);
            border-radius: 50%;
            background: var(--um-accent);
            font-size: .72rem;
            font-weight: 900;
            letter-spacing: .08em;
            transform: rotate(8deg);
        }
        @keyframes um-float { 50% { transform: translateY(-8px) rotate(-1deg); } }
        .um-hero-rail {
            display: grid;
            grid-template-columns: repeat(4, minmax(0, 1fr));
            border-top: 1px solid rgba(255,255,255,.18);
        }
        .um-hero-rail li {
            display: grid;
            grid-template-columns: auto 1fr;
            column-gap: 13px;
            padding: clamp(22px, 2.7vw, 34px) clamp(14px, 2.4vw, 28px);
            border-right: 1px solid rgba(255,255,255,.18);
        }
        .um-hero-rail li:last-child { border-right: 0; }
        .um-hero-rail span { grid-row: 1 / span 2; color: var(--um-accent); font-size: .63rem; font-weight: 850; }
        .um-hero-rail strong { color: #fff; font-size: .9rem; }
        .um-hero-rail small { margin-top: 3px; color: rgba(255,255,255,.44); font-size: .69rem; }

        .um-story {
            position: relative;
            padding: clamp(92px, 12vw, 170px) 0;
            background: #fff;
        }
        .um-story::after {
            content: "";
            position: absolute;
            top: 0;
            right: 5vw;
            width: 1px;
            height: 100%;
            background: linear-gradient(transparent, var(--um-line) 15%, var(--um-line) 85%, transparent);
        }
        .um-story-header { display: grid; grid-template-columns: .72fr 1.28fr; gap: clamp(40px, 8vw, 110px); align-items: start; }
        .um-story .um-eyebrow { color: rgba(11,12,15,.5); }
        .um-story .um-eyebrow > span { color: #fff; background: var(--um-ink); }
        .um-story h2 {
            max-width: 13ch;
            margin: 0;
            font-size: clamp(2.8rem, 5.6vw, 6.1rem);
            line-height: .93;
            letter-spacing: -.065em;
            text-wrap: balance;
        }
        .um-story h2 em { position: relative; color: var(--um-ink); font-style: normal; white-space: nowrap; }
        .um-story h2 em::after {
            content: "";
            position: absolute;
            z-index: -1;
            right: -.08em;
            bottom: .05em;
            left: -.04em;
            height: .23em;
            background: var(--um-accent);
            transform: rotate(-1.5deg);
        }
        .um-story-grid {
            display: grid;
            grid-template-columns: .72fr 1.28fr;
            gap: clamp(40px, 8vw, 110px);
            margin-top: clamp(60px, 9vw, 118px);
            align-items: start;
        }
        .um-story-aside {
            position: sticky;
            top: 118px;
            padding-top: 24px;
            border-top: 1px solid var(--um-line);
        }
        .um-story-aside blockquote {
            max-width: 17ch;
            color: var(--um-ink);
            font-size: clamp(1.25rem, 2.2vw, 1.75rem);
            font-weight: 760;
            line-height: 1.25;
            letter-spacing: -.035em;
        }
        .um-story-aside span { display: block; margin-top: 28px; color: rgba(11,12,15,.45); font-size: .68rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
        .um-story-copy { max-width: 760px; }
        .um-story-copy p {
            margin-bottom: 26px;
            color: #535861;
            font-size: clamp(1rem, 1.45vw, 1.12rem);
            line-height: 1.82;
        }
        .um-story-copy p:first-child { color: var(--um-ink); font-size: clamp(1.18rem, 2vw, 1.48rem); font-weight: 680; line-height: 1.55; letter-spacing: -.025em; }
        .um-story-copy a { color: var(--um-ink); font-weight: 750; text-decoration: underline; text-underline-offset: 4px; }

        .um-method { padding: clamp(86px, 11vw, 150px) 0; background: var(--um-paper); }
        .um-method-layout { display: grid; grid-template-columns: .72fr 1.28fr; gap: clamp(50px, 8vw, 110px); align-items: start; }
        .um-method-header { position: sticky; top: 118px; }
        .um-method .um-eyebrow { margin-bottom: 34px; color: rgba(11,12,15,.5); }
        .um-method .um-eyebrow > span { color: #fff; background: var(--um-ink); }
        .um-method h2 { max-width: 10ch; font-size: clamp(2.55rem, 4.7vw, 4.8rem); line-height: .95; letter-spacing: -.06em; text-wrap: balance; }
        .um-method-header p { max-width: 340px; margin-top: 24px; color: #61666e; line-height: 1.7; }
        .um-method-list { border-top: 1px solid var(--um-line); }
        .um-method-list li {
            display: grid;
            grid-template-columns: 70px minmax(0, 1fr);
            gap: clamp(20px, 3vw, 38px);
            padding: clamp(30px, 4vw, 48px) 0;
            border-bottom: 1px solid var(--um-line);
        }
        .um-method-index { color: rgba(11,12,15,.32); font-size: .72rem; font-weight: 850; letter-spacing: .12em; }
        .um-method-list h3 { margin: 0 0 10px; font-size: clamp(1.25rem, 2vw, 1.65rem); letter-spacing: -.035em; }
        .um-method-list p { max-width: 650px; margin: 0; color: #646971; font-size: .96rem; line-height: 1.7; }
        .um-method-list a { color: var(--um-ink); font-weight: 740; text-decoration: underline; text-underline-offset: 3px; }
        .um-method-list li::after {
            content: "↗";
            grid-column: 2;
            justify-self: end;
            margin-top: -34px;
            font-size: 1.1rem;
            transition: transform .25s ease;
        }
        .um-method-list li:hover::after { transform: translate(4px,-4px); }

        .um-standard {
            position: relative;
            isolation: isolate;
            overflow: hidden;
            padding: clamp(90px, 12vw, 164px) 0;
            color: #fff;
            background: var(--um-ink);
        }
        .um-standard::after {
            content: "EHRLICH";
            position: absolute;
            z-index: -1;
            right: -1vw;
            bottom: -3.5vw;
            color: transparent;
            font-size: clamp(7rem, 20vw, 19rem);
            font-weight: 900;
            line-height: .8;
            letter-spacing: -.09em;
            -webkit-text-stroke: 1px rgba(255,255,255,.065);
        }
        .um-standard-grid { display: grid; grid-template-columns: .72fr 1.28fr; gap: clamp(50px, 8vw, 110px); align-items: start; }
        .um-standard .um-eyebrow { margin-bottom: 34px; color: rgba(255,255,255,.5); }
        .um-standard .um-eyebrow > span { color: var(--um-ink); background: var(--um-accent); }
        .um-standard h2 { max-width: 9ch; color: #fff; font-size: clamp(2.7rem, 5vw, 5.1rem); line-height: .93; letter-spacing: -.06em; }
        .um-standard h2 span { color: var(--um-accent); }
        .um-values { border-top: 1px solid rgba(255,255,255,.2); }
        .um-values li {
            display: grid;
            grid-template-columns: 48px 1fr;
            gap: 20px;
            padding: clamp(28px, 4vw, 44px) 0;
            border-bottom: 1px solid rgba(255,255,255,.2);
        }
        .um-values strong { color: var(--um-accent); font-size: .68rem; letter-spacing: .12em; }
        .um-values span { color: rgba(255,255,255,.67); font-size: clamp(.98rem, 1.4vw, 1.1rem); line-height: 1.7; }
        .um-values a { color: #fff; font-weight: 750; text-decoration: underline; text-underline-offset: 4px; }

        .um-cta { padding: clamp(92px, 12vw, 160px) 0; color: var(--um-ink); background: var(--um-accent); }
        .um-cta-inner { display: grid; grid-template-columns: 1.25fr .75fr; gap: clamp(40px, 8vw, 110px); align-items: end; }
        .um-cta .um-eyebrow { margin-bottom: 34px; color: rgba(11,12,15,.54); }
        .um-cta .um-eyebrow > span { color: #fff; background: var(--um-ink); }
        .um-cta h2 { max-width: 12ch; margin: 0; font-size: clamp(3rem, 6.4vw, 6.9rem); line-height: .89; letter-spacing: -.07em; text-wrap: balance; }
        .um-cta-side { padding-bottom: 9px; }
        .um-cta-side > p { max-width: 450px; color: rgba(11,12,15,.65); font-size: 1rem; line-height: 1.7; }
        .um-cta .btn-row { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 28px; }
        .um-cta .btn-primary { color: #fff; border-color: var(--um-ink); background: var(--um-ink); }
        .um-cta .btn-primary:hover { color: var(--um-ink); background: #fff; }
        .um-cta .btn-outline { color: var(--um-ink); border-color: rgba(11,12,15,.38); background: transparent; }
        .um-cta .btn-outline:hover { color: #fff; border-color: var(--um-ink); background: var(--um-ink); }
        .um-cta-trust {
            display: flex;
            flex-wrap: wrap;
            gap: 8px 18px;
            margin-top: 25px;
            color: rgba(11,12,15,.6);
            font-size: .73rem;
            font-weight: 700;
        }
        .um-cta-trust li::before { content: "✓"; margin-right: 7px; color: var(--um-ink); font-weight: 900; }

        @media (max-width: 980px) {
            .um-hero-grid { grid-template-columns: 1fr; }
            .um-hero-copy { padding-bottom: 0; }
            .um-hero h1 { max-width: 8.8ch; }
            .um-portrait-stage { width: min(88%, 520px); justify-self: center; margin-top: 24px; }
            .um-signature-card {
                position: relative;
                left: auto;
                bottom: auto;
                width: 100%;
                margin-top: 14px;
                animation: none;
            }
            .um-story-header,
            .um-story-grid,
            .um-method-layout,
            .um-standard-grid,
            .um-cta-inner { grid-template-columns: 1fr; }
            .um-story-header,
            .um-story-grid,
            .um-method-layout,
            .um-standard-grid { gap: 45px; }
            .um-story-aside,
            .um-method-header { position: static; }
            .um-story-aside blockquote { max-width: 26ch; }
            .um-method h2,
            .um-standard h2 { max-width: 13ch; }
            .um-cta-side { max-width: 620px; }
        }
        @media (max-width: 720px) {
            .um-hero { padding-top: 112px; }
            .um-hero h1 { font-size: clamp(3.25rem, 15vw, 5rem); }
            .um-hero-actions .btn { width: 100%; }
            .um-portrait-stage { width: 92%; }
            .um-monogram { right: -4%; width: 74px; height: 74px; }
            .um-hero-rail { grid-template-columns: repeat(2, minmax(0, 1fr)); }
            .um-hero-rail li:nth-child(2) { border-right: 0; }
            .um-hero-rail li:nth-child(-n+2) { border-bottom: 1px solid rgba(255,255,255,.18); }
            .um-story h2 { font-size: clamp(2.65rem, 13vw, 4.35rem); }
            .um-story h2 em { white-space: normal; }
            .um-method-list li { grid-template-columns: 38px minmax(0,1fr); gap: 14px; }
            .um-method-list li::after { display: none; }
            .um-values li { grid-template-columns: 34px 1fr; gap: 12px; }
            .um-cta h2 { font-size: clamp(3rem, 14vw, 4.7rem); }
            .um-cta .btn { width: 100%; }
        }
        @media (max-width: 420px) {
            .um-signature-card { width: 100%; padding: 16px; }
            .um-portrait-caption { right: 20px; bottom: 21px; left: 20px; }
            .um-portrait-caption b { display: none; }
            .um-hero-rail { grid-template-columns: 1fr; }
            .um-hero-rail li { border-right: 0; border-bottom: 1px solid rgba(255,255,255,.18); }
            .um-hero-rail li:nth-child(3) { border-bottom: 1px solid rgba(255,255,255,.18); }
            .um-hero-rail li:last-child { border-bottom: 0; }
        }
        @media (prefers-reduced-motion: reduce) {
            .um-availability i::after,
            .um-signature-card { animation: none; }
            .um-method-list li::after { transition: none; }
        }
