:root{--paper:#eee7db;--ink:#28231e;--muted:#6A5F53;--accent:#964b35;--line:rgba(50,39,28,.24);--sans:'DM Sans',Arial,sans-serif;--serif:'Newsreader',Georgia,serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;-webkit-font-smoothing:antialiased}body.panel-open{overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:6px}::selection{background:#a8573c;color:#fff}img{display:block;width:100%;height:auto}p,h1,h2,h3,figure{margin:0}button{background:none;border:0}.eyebrow{font-size:10px;font-weight:500;line-height:1.5;letter-spacing:.15em;text-transform:uppercase}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip{position:fixed;top:10px;left:12px;padding:12px;background:var(--paper);z-index:100;transform:translateY(-160%)}.skip:focus{transform:none}.index{position:relative;isolation:isolate;min-height:100svh}.index-ui{position:relative;z-index:2;padding:26px 4vw 20px;min-height:100svh;display:flex;flex-direction:column;pointer-events:none}.index-ui a{pointer-events:auto}.masthead{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:start;font-size:11px;line-height:1.45}.masthead p{justify-self:center}.wordmark{font-size:24px;letter-spacing:-.08em;font-weight:600;line-height:1}.wordmark span{font-size:9px;vertical-align:top;margin-left:4px;letter-spacing:0}.about-link{justify-self:end;border-bottom:1px solid var(--ink);padding-bottom:3px}.about-link span{margin-left:24px}.intro{display:flex;justify-content:space-between;align-items:flex-end;padding:30px 0 30px;gap:20px}.intro h1{font-family:var(--serif);font-size:clamp(90px,12vw,194px);line-height:.9;letter-spacing:-.065em;font-weight:400;margin:16px 0 0}.name-dot{color:var(--accent)}.intro-line{font-size:14px;line-height:1.5;margin-bottom:6px;max-width:240px}.intro-line em{font-family:var(--serif);font-size:20px;font-weight:400}.work{margin-top:auto}.work-heading{display:flex;justify-content:space-between;align-items:center;padding:0 0 15px}.work-heading sup{font-size:9px;margin-left:9px}.hover-hint{color:var(--muted);font-size:9px;letter-spacing:.09em}.touch-hint{display:none}.project{display:grid;grid-template-columns:45px minmax(0,1fr) 200px 24px;gap:12px;align-items:center;position:relative;min-height:clamp(54px,8vh,82px);border-top:1px solid var(--line);transition:opacity .25s}.project:last-child{border-bottom:1px solid var(--line)}.project-number{align-self:center;font-size:9px;letter-spacing:.08em}.project-name{font-family:var(--serif);font-size:clamp(29px,3.2vw,48px);line-height:1.1;letter-spacing:-.025em;transition:transform .35s cubic-bezier(.2,.7,.2,1)}.project-type{font-size:10px;letter-spacing:.03em;justify-self:start}.project-arrow{font-size:22px;justify-self:end;transition:transform .25s}.project.is-active .project-name{transform:translateX(10px)}.project.is-active .project-arrow{transform:translate(3px,-3px)}.projects.has-active .project:not(.is-active){opacity:.6}.index-footer{display:flex;justify-content:space-between;gap:20px;padding-top:22px;font-size:10px}.index-footer a{border-bottom:1px solid var(--line);padding-bottom:4px}.index-footer span{color:var(--muted)}.index-footer a span{margin-left:18px;color:var(--ink)}.preview-stage{position:absolute;inset:0;z-index:3;overflow:hidden;pointer-events:none}.preview{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transform:translateY(12px) scale(.985);transition:opacity .32s ease,transform .65s cubic-bezier(.2,.7,.2,1),visibility .32s}.preview.is-active{opacity:1;visibility:visible;transform:none}.preview>img,.preview>.art{position:absolute;width:clamp(420px,48vw,760px);max-height:69vh;object-fit:contain;box-shadow:0 18px 65px #30211116;left:42%;top:16%;}.preview-2lady>img{width:61vw;left:31%;top:23%}.preview-mey-edlich>img{width:61vw;left:31%;top:24%}.preview-quickfix>img{width:35vw;left:48%;top:9%;max-height:82vh}.preview-wollenhaupt>img{width:60vw;left:30%;top:24%}.preview-poetschke>.art{width:53vw;left:38%;top:19%}.mobile-art{display:none}.art{position:relative;width:100%;overflow:hidden;background:#f4ecdc}.art iframe{position:absolute;inset:0;width:100%;height:100%;border:0;pointer-events:none}dialog{position:fixed;inset:0;width:100%;height:100%;max-width:none;max-height:none;margin:0;border:0;padding:0;overflow-y:auto;background:var(--paper);color:var(--ink);overscroll-behavior:contain}dialog[open]{animation:enter .3s ease}dialog::backdrop{background:var(--paper)}.case-top{position:sticky;top:0;z-index:3;display:flex;justify-content:space-between;align-items:center;gap:16px;padding:18px 4vw;background:rgba(238,231,219,.97);border-bottom:1px solid var(--line);font-size:10px}.case-top>span{color:var(--muted)}.close{padding:6px 0 6px 12px}.close span{font-size:17px;margin-left:18px}.case-wrap{max-width:1440px;padding:0 4vw;margin:auto}.case-heading{padding:70px 0 46px}.case-heading>.eyebrow{color:var(--accent)}.case-heading h1{font-family:var(--serif);font-size:clamp(48px,6.7vw,102px);font-weight:400;letter-spacing:-.045em;line-height:1.02;margin-top:24px}.case-heading h1 em{font-weight:400}.case-hook{font-size:18px;margin-top:28px;line-height:1.5}.brief{display:grid;grid-template-columns:1fr 2fr;gap:35px;border-top:1px solid var(--line);padding-top:22px;margin-top:42px}.brief p{font-size:15px;line-height:1.7;max-width:650px}.case-hero{background:#e4dbce;padding:clamp(12px,4vw,60px)}.case-hero>img,.case-hero>.art{max-height:82vh;object-fit:contain;width:100%;margin:auto}.case-hero:has(.art){padding:0}.case-hero>.art{max-height:none}.case-hero figcaption{font-size:9px;letter-spacing:.06em;text-transform:uppercase;padding:16px 0 0;color:var(--muted)}.case-hero:has(.art) figcaption{padding:16px}.idea{padding:90px 0 80px;border-bottom:1px solid var(--line)}.idea>.eyebrow{color:var(--accent)}.idea h2{font-family:var(--serif);font-size:clamp(38px,5.5vw,76px);line-height:1.08;font-weight:400;letter-spacing:-.035em;max-width:950px;margin:24px 0 42px}.principle{display:grid;grid-template-columns:1fr 2fr;gap:35px}.principle p{line-height:1.8;max-width:620px}.application{padding:60px 0;border-bottom:1px solid var(--line)}.app-intro{display:grid;grid-template-columns:1fr 1.5fr 1.5fr;gap:35px;margin-bottom:32px;align-items:start}.app-intro>.eyebrow{color:var(--accent)}.app-intro h3{font-family:var(--serif);font-size:33px;font-weight:400;line-height:1.12;letter-spacing:-.025em}.app-intro>p:last-child{font-size:14px;line-height:1.75}.app-art{display:grid;gap:22px;background:#e4dbce;padding:clamp(12px,3vw,42px);align-items:center;justify-items:center}.app-art>img{max-height:850px;object-fit:contain}.app-art>.art{max-width:100%}.app-art>.art[style*="1110"]{max-width:540px}.app-art.paired{grid-template-columns:1fr 1fr}.project-note{display:grid;grid-template-columns:1fr 2fr;gap:35px;padding:36px 0;font-size:11px;line-height:1.8;color:var(--muted)}.project-note p{max-width:690px}.next-project{display:block;border-top:1px solid var(--line);padding:45px 0 60px}.next-project>.eyebrow{display:block;margin-bottom:20px;color:var(--accent)}.next-project>span:last-child{font-family:var(--serif);font-size:clamp(34px,6vw,80px);letter-spacing:-.04em;display:flex;justify-content:space-between}.next-project i{font-style:normal;transition:transform .2s}.next-project:hover i{transform:translate(6px,-6px)}.about-panel{background:var(--ink);color:var(--paper);min-height:100svh}.about-panel .case-top{background:var(--ink);border-color:#ffffff30}.about-panel .case-top>span{color:#c3b7a7}.about-wrap{max-width:1320px;margin:auto;padding:70px 5vw}.about-wrap h1{font-family:var(--serif);font-size:clamp(55px,8vw,110px);font-weight:400;line-height:1.02;letter-spacing:-.04em;margin:25px 0 55px}.about-copy{max-width:640px;margin-left:auto}.about-copy p{font-size:17px;line-height:1.8;margin-bottom:20px}.contact{display:inline-block;margin:20px 0 30px;border-bottom:1px solid #ffffff80;padding-bottom:6px}.about-disciplines{display:flex;gap:25px;flex-wrap:wrap;border-top:1px solid #ffffff30;margin-top:45px;padding-top:26px;font-size:11px}.about-note{font-size:11px;color:#c3b7a7;margin-top:35px;line-height:1.7}.no-js{padding:20px}.panel-open .preview-stage{visibility:hidden}@keyframes enter{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
@media(min-width:1500px){.index-ui{padding-left:5vw;padding-right:5vw}.intro{padding-top:4vh;padding-bottom:5vh}}
@media(max-width:800px),(hover:none){.preview-stage{display:none}.index-ui{padding:24px 5vw}.masthead{grid-template-columns:1fr auto}.masthead p{display:none}.intro{padding:48px 0 42px;display:block}.intro h1{font-size:clamp(68px,15vw,120px);margin-top:18px}.intro-line{margin-top:26px}.intro-line br{display:none}.intro-line em{margin-left:4px}.hover-hint{display:none}.touch-hint{display:block;font-size:8px}.project{grid-template-columns:25px 1fr 22px;gap:12px;padding:20px 0}.project-name{font-size:clamp(26px,5vw,40px)}.project-type{grid-column:2;grid-row:2;font-size:10px;color:var(--muted)}.project-arrow{grid-column:3;grid-row:1}.mobile-art{display:block;grid-column:1/-1;pointer-events:none;margin-top:6px;background:#e4dbce}.mobile-art>img{max-height:440px;object-fit:contain}.projects.has-active .project:not(.is-active){opacity:1}.index-footer{flex-direction:column;align-items:flex-start;padding:28px 0 4px;gap:16px}.case-top{padding:14px 5vw}.case-top>span{display:none}.case-wrap{padding:0 5vw}.case-heading{padding:45px 0 30px}.case-heading h1{font-size:clamp(37px,7.8vw,68px);overflow-wrap:anywhere}.case-hook{font-size:16px}.brief,.principle,.project-note{grid-template-columns:1fr;gap:14px}.brief{margin-top:28px}.idea{padding:55px 0}.idea h2{font-size:40px}.app-intro{grid-template-columns:1fr;gap:16px}.app-intro h3{font-size:30px}.application{padding:38px 0}.app-art.paired{grid-template-columns:1fr}.app-art{padding:12px;gap:12px}.about-wrap{padding:50px 6vw}.about-copy p{font-size:16px}.about-disciplines{gap:16px 25px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.preview{transform:none}.project.is-active .project-name,.project.is-active .project-arrow{transform:none}}

/* Welcome: a quiet typographic introduction before the project index. */
.welcome-active{background:var(--ink);color:var(--paper)}
.welcome-active #index{display:none}
.welcome[hidden]{display:none}
.welcome{min-height:100svh;padding:30px 5vw 24px;display:flex;flex-direction:column;background:var(--ink);color:var(--paper)}
.welcome-header{display:grid;grid-template-columns:1fr 1fr 1fr;align-items:start;gap:20px}
.welcome-monogram{font-size:29px;font-weight:600;letter-spacing:-.08em;line-height:1}
.welcome-monogram span{font-size:15px;color:#c88c71;margin-left:5px}
.welcome-header p{font-size:13px;line-height:1.6;justify-self:center}
.welcome-location{font-size:12px;justify-self:end;color:#bcb0a0}
.welcome-content{width:100%;max-width:1400px;margin:auto;padding:65px 0 58px}
.welcome-kicker{font-size:12px;letter-spacing:.13em;text-transform:uppercase;color:#c7b9a7;margin-bottom:26px}
.welcome h1{font-family:var(--serif);font-size:clamp(84px,12.2vw,190px);font-weight:400;line-height:.91;letter-spacing:-.055em}
.welcome h1 em{font-weight:400;color:#d5ac94;display:inline-block;margin-left:10vw}
.welcome-invitation{display:flex;justify-content:space-between;align-items:end;gap:30px;margin:40px 0 0 10vw}
.welcome-invitation>p{font-size:15px;line-height:1.6;color:#d6cbbb}
.enter-portfolio{display:flex;align-items:center;gap:44px;font-size:14px;border-bottom:1px solid #c7b9a766;padding:10px 0 14px;min-height:60px}
.enter-arrow{font-size:34px;line-height:1;transition:transform .25s,color .25s}
.enter-portfolio:hover .enter-arrow{transform:translate(5px,-5px);color:#d5ac94}
.enter-portfolio:focus-visible{outline-color:#d5ac94}
.welcome-footer{display:flex;justify-content:space-between;gap:20px;border-top:1px solid #c7b9a733;padding-top:20px;color:#bcb0a0;font-size:12px;line-height:1.5}
.welcome-footer sup{font-size:10px;margin-left:12px}
.welcome-active .skip{background:var(--paper);color:var(--ink)}
@media(max-width:800px){.welcome{padding:24px 6vw;min-height:100svh}.welcome-header{grid-template-columns:1fr auto}.welcome-header p{justify-self:end;font-size:12px}.welcome-location{display:none}.welcome-content{padding:65px 0}.welcome h1{font-size:clamp(64px,13.6vw,110px);line-height:1}.welcome h1 em{margin-left:0}.welcome-kicker{font-size:11px;letter-spacing:.09em}.welcome-invitation{margin:30px 0 0;align-items:start;flex-direction:column;gap:30px}.enter-portfolio{width:100%;justify-content:space-between}.welcome-footer{font-size:11px;flex-direction:column;gap:10px}}
@media(prefers-reduced-motion:reduce){.enter-portfolio:hover .enter-arrow{transform:none}}

/* Eight-second welcome sequence; routing remains independent of motion settings. */
.welcome{position:relative;isolation:isolate;overflow:hidden}
.welcome::before{content:'';position:absolute;inset:-35%;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 24% 44%,#c88c7120,transparent 49%);opacity:.8}
.welcome-title-line{display:block}
.welcome h1 em.welcome-title-line{display:block}
.welcome-kicker{display:flex;align-items:center;justify-content:space-between;gap:20px}
.welcome-discipline{position:relative;width:110px;height:18px;text-align:right;color:#d5ac94}
.welcome-discipline>span{position:absolute;inset:0;opacity:0}
.welcome-timing{display:flex;align-items:center;gap:22px;margin-top:18px;font-size:11px;color:#bcb0a0;font-variant-numeric:tabular-nums}
.welcome-timing>span{min-width:155px}
.welcome-progress{height:1px;flex:1;background:#c7b9a733;overflow:hidden}
.welcome-progress>span{display:block;height:100%;background:#d5ac94;transform:scaleX(0);transform-origin:left}
.welcome.is-running::before{animation:welcome-light 8s ease-in-out both}
.welcome.is-running .welcome-title-line{animation:none}
.welcome.is-running em.welcome-title-line{animation:none}
.welcome.is-running .welcome-invitation{animation:welcome-type-in 1.3s .8s both}
.welcome.is-running .welcome-discipline>span{animation:welcome-word 2.5s both}
.welcome.is-running .welcome-discipline>span:nth-child(2){animation-delay:2.5s}
.welcome.is-running .welcome-discipline>span:nth-child(3){animation-delay:5s}
.welcome.is-running .welcome-discipline>span:nth-child(4){animation-delay:7.5s}
.welcome.is-running .welcome-progress>span{animation:welcome-progress 8s linear forwards}
#index{color:var(--ink);background:var(--paper)}
.welcome-active.welcome-opening #index{display:block}
.welcome-opening .welcome{position:fixed;inset:0;z-index:80;animation:welcome-curtain .8s cubic-bezier(.76,0,.24,1) both;pointer-events:none}
@keyframes welcome-type-in{from{opacity:0;transform:translateY(45px);filter:blur(8px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}
@keyframes welcome-float{0%,100%{transform:translateX(0)}50%{transform:translateX(18px)}}
@keyframes welcome-light{0%{transform:translate(-6%,-3%)}50%{transform:translate(18%,8%);opacity:1}100%{transform:translate(-6%,-3%)}}
@keyframes welcome-word{0%{opacity:0;transform:translateY(8px)}12%,85%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(-8px)}}
@keyframes welcome-progress{to{transform:scaleX(1)}}
@keyframes welcome-curtain{from{clip-path:inset(0 0 0 0)}to{clip-path:inset(0 0 100% 0)}}
@media(max-width:800px){.welcome-discipline{width:80px;font-size:10px}.welcome-timing{gap:12px}.welcome-content{padding-top:50px;padding-bottom:45px}}
@media(prefers-reduced-motion:reduce){.welcome-title-line,.welcome-invitation{opacity:1;transform:none;filter:none}.welcome-discipline>span{display:none}.welcome-discipline>span:first-child{display:block;opacity:1}.welcome-progress>span{transform:scaleX(1)}.welcome-opening .welcome{clip-path:none}}

/* Masked, staggered letter reveal inspired by the reference introduction. */
.welcome-title-line{overflow:hidden;padding:.12em .03em .2em;margin-block:-.12em -.2em;perspective:900px}
.welcome-character{display:inline-block;white-space:pre}
.welcome.is-running .welcome-character{animation:welcome-letter-in 1.15s cubic-bezier(.16,1,.3,1) both;animation-delay:var(--character-delay)}
.welcome.is-running .welcome-invitation{animation-delay:1.5s}
@keyframes welcome-letter-in{from{opacity:0;transform:translateY(115%) rotateX(-45deg) rotateZ(5deg)}to{opacity:1;transform:translateY(0) rotateX(0) rotateZ(0)}}
@media(prefers-reduced-motion:reduce){.welcome-character{opacity:1;transform:none}}

/* Hover artwork sits above the right-hand labels; pointer input still reaches the index. */
@media(min-width:801px) and (hover:hover){
  .preview>img,.preview>.art{left:auto;right:4vw}
  .preview>img{object-position:right center;background:var(--paper)}
}

/* Pötschke: a product-led brand modernisation case study. */
.poetschke-case{--p-green:#34513b;--p-rule:#34513b40;--p-surface:#e6e1d4}
.poetschke-case .eyebrow{font-size:12px;letter-spacing:.1em}
.poetschke-case .case-wrap{max-width:1500px}
.p-opening{padding:45px 0 0}.p-category{color:var(--p-green);border-bottom:1px solid var(--p-rule);padding-bottom:18px}
.p-lead{display:grid;grid-template-columns:1fr 1.12fr;gap:5vw;align-items:center;padding:45px 0}
.p-lead-copy>.eyebrow{color:var(--muted)}
.p-lead h1{font-family:var(--serif);font-weight:400;letter-spacing:-.045em;line-height:1.02;font-size:clamp(48px,6.5vw,94px);margin:22px 0}
.p-lead h1 em{color:var(--p-green);font-weight:400}.p-deck{font-size:17px;line-height:1.7;max-width:440px}
.p-cover{padding:18px;background:#e1d8c7;transform:rotate(1deg)}
.poetschke-case figcaption{font-size:12px;line-height:1.6;color:var(--muted);margin-top:13px}
.p-brief{display:grid;grid-template-columns:1fr 2fr;gap:35px;padding:25px 0 42px;border-top:1px solid var(--p-rule)}
.p-brief>p:last-child{max-width:730px;font-size:16px;line-height:1.75}
.p-insight{display:grid;grid-template-columns:1.2fr 1fr;gap:5vw;background:var(--p-green);color:#f4eee1;padding:clamp(28px,4vw,60px);margin:8px 0 70px}
.p-insight h2{font-family:var(--serif);font-weight:400;font-size:clamp(34px,4vw,58px);letter-spacing:-.025em;line-height:1.12;margin-top:25px}
.p-insight h2 em{font-weight:400;color:#d6d0a9}.p-insight-copy p{font-size:16px;line-height:1.75;margin-bottom:20px}
.p-insight-copy p:last-child{margin-bottom:0}.p-insight-takeaway{padding-top:20px;border-top:1px solid #f4eee144}
.p-section-heading{display:grid;grid-template-columns:.8fr 1.3fr 1.2fr;gap:35px;align-items:start;margin-bottom:34px}
.p-section-heading .eyebrow{color:var(--p-green)}
.p-section-heading h2{font-family:var(--serif);font-size:clamp(30px,3.4vw,47px);line-height:1.08;font-weight:400;letter-spacing:-.025em}
.p-section-heading>p:last-child:not(.eyebrow){font-size:16px;line-height:1.75}
.p-object-pair{display:grid;grid-template-columns:1.35fr 1fr;gap:28px}
.p-object-pair .application{padding:24px 0 0;border-top:1px solid var(--p-rule);border-bottom:0}
.p-object-label{display:flex;align-items:center;gap:18px;margin-bottom:25px}
.p-letter{font-family:var(--serif);font-size:50px;line-height:1;color:var(--p-green)}
.p-object-label h3{font-family:var(--serif);font-size:30px;font-weight:400;margin-top:6px;letter-spacing:-.02em}
.p-object-label .eyebrow{font-size:11px}
.p-object-stage{--object-height:clamp(240px,29vw,370px);height:var(--object-height);padding:16px;display:flex;align-items:center;justify-content:center;background:var(--p-surface)}
.p-calendar .art{width:calc((var(--object-height) - 32px)*2160/1540);max-width:100%}
.p-seed .art{width:calc((var(--object-height) - 32px)*1110/1540);max-width:100%}
.p-object-facts{margin:20px 0 0;font-size:14px;line-height:1.65}
.p-object-facts>div{display:grid;grid-template-columns:90px 1fr;gap:12px;border-bottom:1px solid var(--p-rule);padding:11px 0}
.p-object-facts dt{color:var(--muted)}.p-object-facts dd{margin:0}
.p-journey,.p-language{margin-top:70px;padding-top:45px;border-top:1px solid var(--p-rule)}
.p-steps{display:grid;grid-template-columns:repeat(4,1fr);list-style:none;padding:0;margin:0;background:var(--p-surface)}
.p-steps li{padding:28px;border-right:1px solid var(--p-rule)}.p-steps li:last-child{border:0}
.p-steps li>span{font-size:12px;color:var(--p-green)}.p-steps h3{font-family:var(--serif);font-size:29px;font-weight:400;margin:20px 0 12px}
.p-steps p{font-size:15px;line-height:1.65}
.p-decisions{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}
.p-decisions>div{border-top:1px solid var(--p-rule);padding-top:24px}
.p-decisions h3{font-family:var(--serif);font-weight:400;font-size:29px;letter-spacing:-.02em;margin:14px 0}
.p-decisions p{font-size:16px;line-height:1.7}
.p-range{margin-top:65px}.p-range figure{padding:22px;background:var(--p-surface)}
.p-closing{padding:45px 0;border-bottom:1px solid var(--p-rule);display:grid;grid-template-columns:1fr 2fr;gap:35px}
.p-closing>p:last-child{font-family:var(--serif);font-size:clamp(29px,3.5vw,46px);line-height:1.15;letter-spacing:-.025em;color:var(--p-green)}
.poetschke-case .project-note{font-size:13px}
@media(max-width:800px){
 .p-opening{padding-top:30px}.p-lead{grid-template-columns:1fr;gap:30px;padding:30px 0}
 .p-lead h1{font-size:clamp(46px,10vw,75px)}.p-cover{transform:none;padding:12px}.p-deck{max-width:none}
 .p-brief,.p-insight,.p-section-heading,.p-closing{grid-template-columns:1fr;gap:20px}
 .p-insight{margin-bottom:45px}.p-insight h2{margin-top:15px}.p-insight-copy p{font-size:16px}
 .p-object-pair{grid-template-columns:1fr;gap:35px}.p-object-stage{--object-height:320px}
 .p-journey,.p-language{margin-top:45px;padding-top:30px}.p-steps{grid-template-columns:1fr 1fr}
 .p-steps li{border-bottom:1px solid var(--p-rule);padding:20px}.p-steps li:nth-child(even){border-right:0}
 .p-steps h3{font-size:26px}.p-decisions{grid-template-columns:1fr;gap:24px}
 .p-range{margin-top:25px}.p-range figure{padding:10px}.p-closing{padding:30px 0}
}

/* A full-height image panel beside the front-page index. */
.image-rail[hidden]{display:none}
.image-rail{position:fixed;inset:0 auto 0 0;width:var(--rail-width);height:100svh;z-index:1;overflow:hidden;background:#fff}
.rail-images,.rail-slide,.rail-media{position:absolute;inset:0}
.rail-images{left:12px;border-top-left-radius:0;overflow:hidden}
.rail-slide{opacity:0;transition:opacity 1.6s ease-in-out;pointer-events:none}
.rail-slide.is-active{opacity:1}
.rail-media{animation:rail-drift 24s ease-in-out infinite alternate;animation-play-state:paused;will-change:transform}
.image-rail.is-playing .rail-slide.is-active .rail-media{animation-play-state:running}
.rail-media>img{width:100%;height:100%;object-fit:cover;object-position:50% 50%}
.rail-product{display:block;width:100%;height:100%;overflow:hidden}
.rail-media>.art{position:absolute;left:50%;top:0;width:calc(100svh * 2160 / 1540);height:100%;transform:translateX(-50%);max-width:none}
.rail-toggle{position:absolute;bottom:24px;left:50%;transform:translateX(-50%);z-index:2;display:grid;place-items:center;width:44px;height:44px;border:1px solid #ffffff70;border-radius:50%;background:#28231e99;color:#fff;font-size:15px;backdrop-filter:blur(8px)}
.rail-toggle:hover{background:#28231edd}.rail-toggle:focus-visible{outline-color:white;outline-offset:4px}
@keyframes rail-drift{from{transform:scale(1.04) translateY(-1%)}to{transform:scale(1.17) translateY(1%)}}
/* Full-width ruled index inspired by the reference's two-column project grid. */
@media(min-width:801px){
 #index{--rail-width:35vw;--index-rule:rgba(50,39,28,.28)}
 :is(#index,.about-front) .index-ui{margin:0 0 0 var(--rail-width);padding:0;min-height:100svh;background:var(--paper);border-left:1px solid var(--index-rule)}
 :is(#index,.about-front) .index-ui::before{content:"";position:absolute;top:76px;bottom:0;right:100%;width:clamp(64px,5vw,88px);background:var(--ink);pointer-events:none}
 :is(#index,.about-front) .masthead{grid-template-columns:1fr auto;align-items:center;gap:22px;min-height:76px;padding:20px 2.8vw;border-bottom:1px solid var(--index-rule)}
 :is(#index,.about-front) .masthead p{justify-self:start;font-size:10px;line-height:1.3}
 :is(#index,.about-front) .logo-tab{position:absolute;top:76px;right:100%;display:flex;align-items:center;justify-content:center;width:clamp(64px,5vw,88px);height:clamp(88px,7vw,116px);background:var(--ink);color:var(--paper);font-size:clamp(24px,2.1vw,34px);border:1px solid var(--ink);border-right:0;z-index:1;transition:background .25s,color .25s}
 :is(#index,.about-front) .logo-tab>span{align-self:center;margin-top:-20px}
 :is(#index,.about-front) .logo-tab:hover{background:var(--accent);border-color:var(--accent)}
 :is(#index,.about-front) .logo-tab:focus-visible{outline:2px solid var(--paper);outline-offset:-6px}
 :is(#index,.about-front) .about-link{display:flex;align-items:center;justify-content:center;min-width:90px;padding:9px 20px;border:1px solid var(--line);border-radius:50%;font-size:10px;text-transform:uppercase;transition:background .2s,color .2s}
 :is(#index,.about-front) .about-link:hover{background:var(--ink);color:var(--paper)}
 :is(#index,.about-front) .about-link span{display:none}
 :is(#index,.about-front) .intro{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;flex:1;min-height:clamp(300px,43svh,580px);padding:40px 3vw;text-align:center}
 :is(#index,.about-front) .intro .eyebrow{font-size:9px;letter-spacing:.12em;color:var(--muted);margin-bottom:18px}
 :is(#index,.about-front) .intro h1{font-family:var(--sans);font-size:clamp(68px,7.1vw,136px);font-weight:400;line-height:.86;letter-spacing:-.075em;text-transform:uppercase;margin:0}
 :is(#index,.about-front) .name-line{display:block}
 :is(#index,.about-front) .name-dot{color:var(--ink)}
 :is(#index,.about-front) .intro-line{max-width:none;margin:0;font-size:12px;line-height:1.5}
 :is(#index,.about-front) .intro-line br{display:none}
 :is(#index,.about-front) .intro-line em{margin-left:.3em;font-family:var(--sans);font-style:normal;font-size:12px}
 :is(#index,.about-front) .work{margin-top:0;padding:0;background:transparent;border:0;box-shadow:none}
 :is(#index,.about-front) .work-heading{min-height:44px;padding:12px 2.8vw;border-top:1px solid var(--index-rule);border-bottom:1px solid var(--index-rule);gap:20px}
 :is(#index,.about-front) .work-heading .eyebrow{font-size:9px;letter-spacing:.05em;font-weight:400}
 :is(#index,.about-front) .projects{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}
 :is(#index,.about-front) .project{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:8px;min-width:0;min-height:clamp(96px,11.2svh,140px);padding:23px 2.8vw;border:0;border-bottom:1px solid var(--index-rule)}
 :is(#index,.about-front) .project:nth-child(odd){border-right:1px solid var(--index-rule)}
 :is(#index,.about-front) .project-number{display:none}
 :is(#index,.about-front) .project-name{font-family:var(--sans);font-weight:400;font-size:clamp(21px,2.1vw,38px);line-height:1.12;letter-spacing:-.055em;padding-right:12px}
 :is(#index,.about-front) .project-type{font-size:9px;letter-spacing:.025em;color:var(--muted)}
 :is(#index,.about-front) .project-arrow{position:absolute;top:12px;right:14px;font-size:14px;line-height:1;color:var(--muted)}
 :is(#index,.about-front) .project.is-active .project-name{transform:translateX(5px)}
 :is(#index,.about-front) .index-footer{display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px 24px;padding:20px 2.8vw;min-height:65px;font-size:9px;line-height:1.5}
 :is(#index,.about-front) .index-footer a{border:0;padding:0}
 :is(#index,.about-front) .index-footer a span{margin-left:8px}
 :is(#index,.about-front) .preview>img,:is(#index,.about-front) .preview>.art{right:3vw;left:auto;top:50%;width:56vw;max-height:80svh;transform:translateY(-50%)}
 :is(#index,.about-front) .preview-poetschke>.art{width:min(56vw,105svh);max-height:none}
 .rail-toggle{left:auto;right:calc(clamp(64px,5vw,88px) + 16px);bottom:24px;transform:none}
}
@media(min-width:801px) and (max-width:1100px){
 :is(#index,.about-front) .masthead{gap:14px}
 :is(#index,.about-front) .intro{min-height:320px}
 :is(#index,.about-front) .project{padding:24px 2.3vw;min-height:104px}
 :is(#index,.about-front) .project-name{font-size:clamp(20px,2.3vw,25px)}
 :is(#index,.about-front) .work-heading{gap:12px}
 :is(#index,.about-front) .hover-hint{max-width:130px;text-align:right;font-size:8px}
 :is(#index,.about-front) .index-footer{gap:10px 18px}
}
@media(max-width:800px){.image-rail{display:none}}
@media(prefers-reduced-motion:reduce){.rail-media{animation:none!important;transform:none;will-change:auto}.rail-slide{transition:none}}
/* Supplied personal identity; preserve the original SVG letterforms. */
.home-wordmark svg{display:block;width:min(300px,65vw);height:auto;overflow:visible}
:is(#index,.about-front) .intro .home-wordmark{line-height:1;margin:0;text-transform:none}
.welcome-wordmark{display:block;width:clamp(130px,18vw,230px);color:var(--paper)}
.welcome-wordmark svg,.about-wordmark svg{display:block;width:100%;height:auto;overflow:visible}
.about-wordmark{width:min(660px,100%);color:var(--paper)}
.logo-tab svg,.about-spine svg{display:block;width:32px;height:auto;flex:none}
:is(#index,.about-front) .logo-tab{color:var(--paper)}
:is(#index,.about-front) .logo-tab svg{margin:20px auto 0;align-self:flex-start}
@media(min-width:801px){
 :is(#index,.about-front) .logo-tab{height:auto;bottom:0;align-items:flex-start}
 :is(#index,.about-front) .intro .home-wordmark svg{width:clamp(235px,23vw,360px)}
 .rail-images{inset:0;background:var(--paper)}
 .rail-media{animation:none!important;transform:none!important;inset:0}
 .rail-media>img{object-fit:cover;object-position:var(--rail-position,50% 0%)}
}
/* The name tab pulls left, exposing the About sheet behind it. */
#project-panel.about-mode{--tab-width:clamp(64px,5vw,88px);top:76px;height:calc(100svh - 76px);background:var(--ink);color:var(--paper);overflow:hidden;animation:none}
#project-panel.about-mode::backdrop{background:transparent}
.about-mode .about-panel{height:100%;min-height:0;overflow-y:auto;padding-left:var(--tab-width);overscroll-behavior:contain}
.about-spine{position:absolute;inset:0 auto 0 0;width:var(--tab-width);display:flex;align-items:flex-start;justify-content:center;padding:20px 0;background:var(--ink);color:var(--paper);border-right:1px solid #ffffff30;z-index:5}
.about-spine:hover{background:var(--accent)}
.about-spine:focus-visible{outline:2px solid var(--paper);outline-offset:-6px}
.about-mode .about-wrap{padding:45px 6vw 70px}
.about-mode .about-wrap h1{margin:24px 0 48px}
.about-mode .about-copy{max-width:720px}
.about-mode .case-top{font-size:12px;min-height:65px}
@media(max-width:800px){
 :is(#index,.about-front) .logo-tab{display:flex;align-items:center;justify-content:center;background:var(--ink);width:52px;min-height:86px}
 :is(#index,.about-front) .logo-tab svg{width:25px;margin:12px auto}
 .home-wordmark svg{width:min(280px,65vw)}
 #project-panel.about-mode{--tab-width:52px;top:0;height:100svh}
 .about-mode .case-top{padding:16px 5vw}
 .about-mode .about-wrap{padding:32px 6vw 50px}
 .about-mode .about-copy p{font-size:16px}
 .about-spine svg{width:25px}
}

/* Two coordinated sheets: the index exits right as the About tab pulls left. */
#project-panel.about-mode{top:0;height:100svh;background:transparent}
.about-mode .about-panel{position:absolute;inset:76px 0 0;height:auto;background:var(--ink)}
.about-front{--rail-width:35vw;--index-rule:rgba(50,39,28,.28);position:absolute;inset:0;width:100%;height:100%;overflow:hidden;pointer-events:none;z-index:6}
.about-front .index-ui{pointer-events:none}
.about-front .index-ui::before{display:none!important}
body.about-active #index .index-ui{visibility:hidden}
@media(max-width:800px){.about-mode .about-panel{inset:0}.about-front .index-ui{background:var(--paper)}}

.showcase-case{--show-bg:#f5f2ec;--show-ink:#28231e;--show-accent:#735e4a;background:var(--show-bg);color:var(--show-ink)}
.showcase-case.case-galeria{--show-bg:#faf1ed;--show-accent:#99523e}
.showcase-case.case-2lady{--show-bg:#f5f3ed;--show-accent:#555747}
.showcase-case.case-mey-edlich{--show-bg:#f6f5f5;--show-accent:#7b4038}
.showcase-case.case-poetschke{--show-bg:#f5f0e6;--show-accent:#34513b}
.showcase-case.case-quickfix{--show-bg:#e7eff2;--show-ink:#0a2b4c;--show-accent:#255975}
.showcase-case.case-wollenhaupt{--show-bg:#faf6ed;--show-accent:#745729}
.showcase-case .case-top{background:var(--show-bg)}
.showcase-wrap{max-width:1560px;margin:auto;padding:0 4vw}
.showcase-opening{display:grid;grid-template-columns:.8fr 1.2fr;gap:5vw;align-items:center;padding:48px 0 60px}
.showcase-opening h1{font-family:var(--serif);font-size:clamp(50px,6.2vw,96px);font-weight:400;line-height:1.02;letter-spacing:-.045em;margin:26px 0 38px}
.showcase-opening h1 em{font-weight:400;color:var(--show-accent)}
.showcase-opening>.showcase-image img{max-height:78svh;object-fit:contain}
.showcase-idea{max-width:390px}.showcase-idea>.eyebrow{margin-bottom:12px;color:var(--show-accent)}
.showcase-idea>p:last-child{font-size:19px;line-height:1.55}
.showcase-image{min-width:0;width:100%;margin:0}
.showcase-image img,.showcase-image svg{display:block;width:100%;height:auto}
.showcase-image svg{overflow:hidden}
.showcase-image figcaption{font-size:11px;line-height:1.6;padding-top:12px;color:var(--show-accent)}
.showcase-image figcaption:empty{display:none}
.showcase-concept{padding:45px 0 58px;border-top:1px solid var(--line)}
.showcase-concept h2{font-family:var(--serif);font-size:clamp(38px,5.6vw,82px);font-weight:400;line-height:1.08;letter-spacing:-.035em;margin:24px 0}
.showcase-tags{font-size:13px;line-height:1.6;color:var(--show-accent)}
.showcase-stage{padding:0 0 62px}
.showcase-stage>header{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line);padding:22px 0 28px}
.showcase-stage>header h2{font-size:12px;letter-spacing:.08em;text-transform:uppercase;font-weight:500}
.showcase-stage>header span{font-size:11px;color:var(--show-accent)}
.showcase-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;align-items:start}
.showcase-gallery>.showcase-image:only-child{grid-column:1/-1}
.showcase-gallery.four-up{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.showcase-gallery.direction-gallery>.showcase-image:first-child:nth-last-child(3){grid-column:1/-1}
.showcase-application{border:0;padding:0 0 48px}
.showcase-application:last-child{padding-bottom:0}
.showcase-application h3{font-family:var(--serif);font-size:30px;font-weight:400;margin:0 0 22px}
.showcase-notes{border-top:1px solid var(--line);padding:20px 0;font-size:11px;line-height:1.7;color:var(--show-accent)}
.showcase-notes summary{cursor:pointer;width:fit-content}.showcase-notes p{max-width:720px;margin-top:16px;font-size:12px}
.showcase-case .next-project{padding-top:32px}
.showcase-case .next-project>.eyebrow{color:var(--show-accent)}
.case-mey-edlich.showcase-case .mood-gallery img{height:58vw;max-height:760px;object-fit:contain;background:#eeeae3}
.case-mey-edlich.showcase-case .showcase-application:first-of-type .showcase-gallery{grid-template-columns:1fr .32fr}
.case-mey-edlich.showcase-case .showcase-application:last-child .showcase-image{max-width:650px;margin:auto}
.case-poetschke.showcase-case .showcase-application:nth-of-type(2) .showcase-image{max-width:430px;margin:auto}
.case-poetschke.showcase-case .showcase-opening .art{background:#e6dfcf}
.case-wollenhaupt.showcase-case .mood-gallery img{aspect-ratio:1;object-fit:cover}
@media(max-width:800px){
 .showcase-wrap{padding:0 5vw}.showcase-opening{grid-template-columns:1fr;gap:28px;padding:32px 0 40px}
 .showcase-opening h1{font-size:clamp(46px,10vw,76px);margin:22px 0 28px}
 .showcase-opening>.showcase-image img{max-height:none}.showcase-idea>p:last-child{font-size:17px}
 .showcase-concept{padding:30px 0 38px}.showcase-concept h2{font-size:clamp(36px,8vw,56px)}
 .showcase-stage{padding-bottom:40px}.showcase-stage>header{align-items:flex-start;padding:20px 0;gap:16px}
 .showcase-stage>header span{max-width:120px;text-align:right;font-size:10px}
 .showcase-gallery{grid-template-columns:1fr;gap:24px}.showcase-gallery.four-up{grid-template-columns:1fr 1fr;gap:22px 14px}
 .showcase-application{padding-bottom:34px}.showcase-application h3{font-size:27px}
 .case-mey-edlich.showcase-case .showcase-application:first-of-type .showcase-gallery{grid-template-columns:1fr}
 .case-mey-edlich.showcase-case .showcase-application:first-of-type .showcase-image:last-child{max-width:340px;margin:auto}
 .case-mey-edlich.showcase-case .mood-gallery{grid-template-columns:1fr 1fr;gap:16px}
 .case-mey-edlich.showcase-case .mood-gallery img{height:65vw}
}

@media(min-width:801px){
 #index::before{content:"";position:absolute;inset:0 0 0 var(--rail-width);background:var(--ink);z-index:0;pointer-events:none}
 #index .index-ui{border-top-left-radius:0}
 #index .index-ui::before,#index .logo-tab{border-top-left-radius:0}
}
/* Brand context stays concise; the work carries the story. */
.case-context{display:grid;grid-template-columns:1.5fr 1fr;gap:8vw;padding:36px 0 58px;border-top:1px solid var(--line);margin-bottom:18px}
.case-story>p:not(.eyebrow){max-width:670px;font-size:17px;line-height:1.65;margin:15px 0 0}
.case-role>p:not(.eyebrow){font-size:14px;line-height:1.9;max-width:390px;margin:15px 0 24px}
.case-status{display:inline-block;border-top:1px solid var(--line);padding-top:12px;font-size:11px;letter-spacing:.04em;color:var(--show-accent)}
.showcase-opening{grid-template-columns:1fr;gap:32px;padding:40px 0 38px}
.showcase-opening>div{display:grid;grid-template-columns:1.5fr 1fr;gap:0 8vw;align-items:end}
.showcase-opening>div>.eyebrow{grid-column:1/-1}
.showcase-opening h1{font-size:clamp(54px,7vw,112px);margin:24px 0 0}
.case-one-line{font-size:19px;line-height:1.6;max-width:350px;margin:0 0 6px}
.showcase-opening>.showcase-image img{width:100%;max-height:85svh;object-fit:contain}
.showcase-stage{padding:30px 0 50px}
.showcase-stage>header{display:block;padding:24px 0 32px}
.showcase-stage>header>.eyebrow{color:var(--show-accent);margin:0 0 20px}
.showcase-stage>header h2{font:400 clamp(32px,4.6vw,65px)/1.08 var(--serif);letter-spacing:-.035em;text-transform:none;max-width:920px;margin:0}
.case-2lady .identity-direction .showcase-gallery{grid-template-columns:1.35fr 1fr;align-items:center}
.case-poetschke .showcase-application:nth-of-type(2) .showcase-image{max-width:none}
.case-poetschke .showcase-application:nth-of-type(2) .showcase-gallery{grid-template-columns:1.5fr .75fr;align-items:center}
.case-poetschke .showcase-application:nth-of-type(2) .showcase-image:last-child{width:90%;margin:auto}
.mey-catalogues{display:grid;grid-template-columns:1fr 1fr;gap:38px 28px;align-items:start}
.mey-catalogues .mey-figure img{background:#efede8;object-fit:contain}
.mey-more-catalogues{margin-top:35px;border-top:1px solid var(--line)}
.mey-more-catalogues summary{cursor:pointer;font-size:14px;padding:20px 0;width:fit-content}
.mey-more-catalogues summary span{margin-left:20px}
.mey-more-catalogues[open] summary{margin-bottom:20px}
.case-media-track{transition:opacity .7s cubic-bezier(.2,.7,.2,1)}
.case-media-track:not(.is-in-view){opacity:.42}
.case-media-track.is-in-view{opacity:1}
@media(max-width:800px){
 .case-context{grid-template-columns:1fr;gap:28px;padding:28px 0 35px}
 .case-story>p:not(.eyebrow){font-size:16px}.case-role>p:not(.eyebrow){max-width:none;margin-bottom:16px}
 .showcase-opening>div{display:block}.showcase-opening h1{font-size:clamp(48px,10vw,78px);margin:22px 0}
 .case-one-line{font-size:17px;max-width:440px}.showcase-stage{padding:16px 0 28px}
 .showcase-stage>header h2{font-size:clamp(31px,7vw,48px)}
 .showcase-opening>.showcase-image img{max-height:none}
 .case-2lady .identity-direction .showcase-gallery{grid-template-columns:1fr}
 .case-poetschke .showcase-application:nth-of-type(2) .showcase-gallery{grid-template-columns:1fr}
 .case-poetschke .showcase-application:nth-of-type(2) .showcase-image:last-child{max-width:400px}
 .mey-catalogues{grid-template-columns:1fr;gap:26px}
 .case-media-track:not(.is-in-view){opacity:.7}
}
@media(prefers-reduced-motion:reduce){.case-media-track,.case-media-track:not(.is-in-view){transition:none;opacity:1}}

.mey-redesign{--show-bg:#f6f5f5;--show-ink:#231f20;--show-accent:#706252}.mey-wrap{width:min(1480px,100%);padding:0 5vw;margin:auto}.mey-opening{padding:62px 0 0}.mey-opening h1{font-family:var(--serif);font-size:clamp(62px,8.9vw,140px);font-weight:400;line-height:.95;letter-spacing:-.055em;margin:28px 0 28px}.mey-opening h1 em,.mey-section h2 em{font-weight:400;color:#776956}.mey-lead{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-bottom:36px}.mey-lead p{font-size:20px}.mey-lead>span{font-size:13px;color:#6e6761}.mey-cover{display:grid;grid-template-columns:1.45fr 1fr;gap:24px}.mey-cover>.mey-figure img{aspect-ratio:4/5;object-fit:cover}.mey-cover-side{display:flex;flex-direction:column;justify-content:space-between}.mey-cover-side>.mey-figure img{aspect-ratio:auto;height:auto;object-fit:contain;object-position:center top}.mey-cover-note{padding:30px 0 12px}.mey-cover-note>span{font-size:12px;letter-spacing:.16em}.mey-cover-note p{font-family:var(--serif);font-size:clamp(30px,4vw,60px);line-height:1.05;letter-spacing:-.025em;margin:22px 0}.mey-figure{margin:0;min-width:0}.mey-figure img,.mey-figure svg{display:block;width:100%;height:auto}.mey-figure figcaption{font-size:12px;color:#71695f;margin-top:13px}.mey-figure figcaption:empty{display:none}.mey-context{display:grid;grid-template-columns:1fr 1.4fr 1.1fr;gap:40px;border-bottom:1px solid var(--line);padding:35px 0 48px}.mey-context p{font-size:16px;line-height:1.65;margin-top:12px;max-width:360px}.mey-section{padding:70px 0;border-bottom:1px solid var(--line)}.mey-section>header{margin-bottom:36px}.mey-section h2{font-family:var(--serif);font-weight:400;font-size:clamp(38px,5.6vw,82px);line-height:1.04;letter-spacing:-.04em;margin:25px 0}.mey-caption{max-width:650px;font-size:15px;line-height:1.7;color:#70685f}.mey-principles{display:flex;gap:36px;flex-wrap:wrap;border-top:1px solid var(--line);padding:20px 0 32px;font-size:14px}.mey-principles p{margin:0}.mey-details{display:grid;grid-template-columns:1fr 1fr;gap:28px;background:#eeece7;padding:25px}.mey-scenes{display:grid;grid-template-columns:1fr 1fr;gap:50px 30px;align-items:start}.mey-scenes>.mey-figure:nth-child(2){margin-top:130px}.mey-scenes>.mey-figure:nth-child(3){grid-column:1/-1;width:70%;margin:0 auto}.mey-scenes>.mey-figure img{aspect-ratio:4/5;object-fit:cover}.mey-scenes>.mey-figure:nth-child(3) img{aspect-ratio:auto;height:auto;object-fit:contain;object-position:center top}.mey-products{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:38px 22px}.mey-piece{margin:0}.mey-piece>img{width:100%;height:auto;aspect-ratio:3/4;object-fit:contain;background:#e8e5de}.mey-piece figcaption{padding-top:14px;display:grid;gap:5px}.mey-piece strong{font-weight:500;font-size:14px}.mey-piece span{font-size:12px;color:#71695f}.mey-web-toolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 20px;background:#231f20;color:#fff;font-size:14px}.mey-web-toolbar button{font:inherit;cursor:pointer;background:transparent;color:#fff;border:1px solid #888;padding:9px 15px;margin-left:6px}.mey-web-toolbar button[aria-pressed=true]{background:#e8decd;color:#231f20;border-color:#e8decd}.mey-web-stage{background:#dedbd5;padding:24px;overflow:hidden}.mey-web-device{width:100%;margin:auto;transition:width .45s ease;box-shadow:0 12px 45px #231f2015}.mey-web-device.is-mobile{width:min(390px,100%)}.mey-web-device iframe{display:block;width:100%;height:800px;max-height:85svh;border:0;background:#f6f5f5}.mey-redesign .application{padding:20px 0 45px;border:0}.mey-redesign .application h3{font-family:var(--serif);font-size:28px;font-weight:400;margin:0 0 25px}.mey-social>div{display:grid;grid-template-columns:1fr 1fr .65fr;gap:24px;align-items:center}.mey-print>div{display:grid;grid-template-columns:1fr .66fr;gap:7vw;align-items:start}.mey-system{max-width:1100px;margin:auto}.mey-credits{max-width:790px;padding:30px 0;color:#70685f;font-size:13px;line-height:1.75}.mey-redesign .next-project{padding:25px 0 60px}.mey-redesign button:focus-visible{outline:3px solid #ac191e;outline-offset:4px}
@media(max-width:800px){.mey-wrap{padding:0 6vw}.mey-opening{padding-top:35px}.mey-opening h1{font-size:clamp(55px,12vw,86px)}.mey-lead{display:block;padding-bottom:25px}.mey-lead p{font-size:17px}.mey-lead>span{display:block;margin-top:14px;font-size:12px}.mey-cover{gap:14px;grid-template-columns:1.2fr 1fr}.mey-cover-note{padding:15px 0 0}.mey-cover-note p{font-size:clamp(22px,4.8vw,38px);margin:13px 0}.mey-cover-note>span{font-size:11px}.mey-context{grid-template-columns:1fr;gap:20px;padding:30px 0}.mey-context p{max-width:none;margin-top:6px;font-size:15px}.mey-section{padding:42px 0}.mey-section h2{font-size:clamp(35px,8vw,57px)}.mey-details{grid-template-columns:1fr;padding:15px;gap:30px}.mey-principles{gap:12px;display:grid}.mey-scenes{gap:28px 14px}.mey-scenes>.mey-figure:nth-child(2){margin-top:55px}.mey-scenes>.mey-figure:nth-child(3){width:100%}.mey-products{grid-template-columns:1fr 1fr;gap:27px 15px}.mey-piece strong{font-size:14px}.mey-web-toolbar{padding:12px;font-size:12px}.mey-web-toolbar button{padding:8px 10px}.mey-web-stage{padding:10px}.mey-web-device iframe{height:700px;max-height:80svh}.mey-social>div{grid-template-columns:1fr 1fr;gap:20px}.mey-social>div>.mey-figure:last-child{grid-column:1/-1;max-width:300px;margin:auto}.mey-print>div{grid-template-columns:1fr;gap:40px}.mey-print>div>.mey-figure:last-child{width:min(420px,100%);margin:auto}.mey-credits{font-size:12px}}
@media(prefers-reduced-motion:reduce){.mey-web-device{transition:none}}

/* Match the concise numbered section titles used across the portfolio. */
.mey-section>header h2{font:400 clamp(32px,4.6vw,65px)/1.08 var(--serif);letter-spacing:-.035em;margin:0}
@media(max-width:800px){.mey-section>header h2{font-size:clamp(31px,7vw,48px)}}
