:root{--bg:#fbfaf7;--ink:#1a1a1a;--ink2:#767672;--red:#e2231a;--line:#e6e4df}
*{box-sizing:border-box}
[hidden]{display:none!important}
body{margin:0;background:var(--bg);color:var(--ink);font-family:"Archivo",system-ui,sans-serif;font-size:17px;line-height:1.6}
a{color:inherit}
img{max-width:100%}
.exp{font-family:"Manrope",system-ui,sans-serif}
.mono{font-family:"Archivo",system-ui,sans-serif}
.lnk{text-decoration:none;border-bottom:2px solid var(--red)}

/* ---------- Header / Nav (Pills) ---------- */
header{display:flex;align-items:center;gap:16px;padding:13px 36px 13px 18px;border-bottom:1px solid var(--line);position:sticky;top:0;background:var(--bg);z-index:50;transition:transform .28s ease}
header .logo{display:flex;align-items:center}header .logo img{height:38px;display:block}
.nav{margin-left:auto;display:flex;align-items:center;gap:5px;font-family:"Archivo",system-ui,sans-serif;font-weight:600;font-size:.78rem;text-transform:uppercase;letter-spacing:.07em}
.nav>a,.grp>.top{display:inline-block;padding:8px 14px;border-radius:999px;background:#f0ede6;text-decoration:none;color:var(--ink);white-space:nowrap;cursor:pointer;transition:background .12s,color .12s}
.nav>a:hover,.grp>.top:hover,.grp:hover>.top{background:#e6e1d8;color:var(--red)}
.nav>a.on,.grp>.top.on{background:var(--ink);color:#fff}
.grp{position:relative}.grp>.top .ar{font-size:.85em;margin-left:5px;opacity:.55}
.drop{position:absolute;top:100%;right:0;margin-top:6px;min-width:200px;background:var(--bg);border:1px solid var(--line);border-radius:12px;box-shadow:0 14px 34px rgba(0,0,0,.10);padding:6px 0;opacity:0;visibility:hidden;transform:translateY(5px);transition:.12s;z-index:60}
.grp:hover .drop,.grp:focus-within .drop{opacity:1;visibility:visible;transform:none}
.drop a{display:block;padding:8px 16px;background:none;text-decoration:none;color:var(--ink);letter-spacing:.05em;font-size:.68rem;text-transform:uppercase;white-space:nowrap}
.drop a:hover{color:var(--red);background:#f4f2ec}
.navcta{display:flex;align-items:center;gap:9px;margin-left:8px;font-family:"Archivo",system-ui,sans-serif;font-weight:600;font-size:.74rem;text-transform:uppercase;letter-spacing:.05em}
.ic{width:36px;height:36px;border-radius:999px;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;color:var(--ink);text-decoration:none;flex:none}
.ic:hover{border-color:var(--red);color:var(--red)}
.mp{padding:9px 16px;border-radius:999px;border:1.5px solid var(--red);color:var(--red);text-decoration:none;white-space:nowrap}
.mp:hover{background:var(--red);color:#fff}
.apply{padding:10px 18px;border-radius:999px;background:var(--red);color:#fff;text-decoration:none;white-space:nowrap}
.apply:hover{background:#b3121a}
@media(max-width:1040px){header{flex-wrap:wrap;gap:8px}.grp>.top .ar{display:none}.navcta{margin-left:0}}

/* ---------- Newsbar ---------- */
.newsbar{background:#f4f2ec;color:var(--ink);font-family:"Archivo",system-ui,sans-serif;font-size:.68rem;letter-spacing:.02em;padding:9px 40px;display:flex;gap:14px;align-items:center;border-bottom:1px solid var(--line)}
.newsbar .nk{color:var(--red);text-transform:uppercase;letter-spacing:.1em}.newsbar .nt{color:var(--ink2)}
.newsbar a{color:var(--ink);text-decoration:none;border-bottom:2px solid var(--red);margin-left:auto;white-space:nowrap}

/* ---------- Footer ---------- */
.foot{border-top:1px solid var(--line);margin-top:80px;background:#f4f2ec}
.fin{max-width:1180px;margin:0 auto;padding:34px 44px}
.frow{display:flex;flex-wrap:wrap;gap:26px}
.frow.ftop{justify-content:space-between;align-items:flex-start}
.frow.fbottom{justify-content:flex-end;margin-top:26px}
.fb{font-family:"Manrope",system-ui,sans-serif;font-weight:700;font-size:1.1rem;margin-bottom:6px}
.fl{font-family:"Archivo",system-ui,sans-serif;font-size:.68rem;color:var(--ink2);text-transform:uppercase;letter-spacing:.04em;line-height:1.9}
.flegal{font-family:"Archivo",system-ui,sans-serif;font-size:.66rem;color:var(--ink2);text-transform:uppercase;letter-spacing:.05em}
.flegal a{text-decoration:none;border-bottom:2px solid var(--red);color:var(--ink2)}.flegal a:hover{color:var(--red)}
.finfo{max-width:520px}
.fright{display:flex;flex-direction:column;align-items:flex-end;gap:18px;margin-left:auto}  /* G3: rechte Spalte, 2 Reihen */
.flogos{display:flex;align-items:center;gap:24px}
.flogos .foglogo img{height:46px;width:auto}
.fas-logo img{height:40px}
@media(max-width:640px){.frow.ftop{flex-direction:column;align-items:flex-start}.frow.fbottom{justify-content:flex-start;margin-top:18px}.flogos .foglogo img{height:36px}.fas-logo img{height:32px}}
.foglogo{display:inline-block;line-height:0}
.foglogo img{display:block;height:54px;width:auto}
.foglogo:hover{opacity:.82}

/* ---------- Shared cards / grids / detail ---------- */
.wrap{max-width:1180px;margin:0 auto;padding:0 44px 20px}
.grid{display:grid;grid-template-columns:repeat(4,1fr);gap:26px}@media(max-width:820px){.grid{grid-template-columns:1fr 1fr}}
.card{text-decoration:none;color:inherit}.card .ph{position:relative;display:block;background:#e7e4dd}.card img{width:100%;height:auto;display:block}
.pill{position:absolute;top:10px;left:10px;background:rgba(26,26,26,.72);color:#fff;font-family:"Archivo",system-ui,sans-serif;font-size:.63rem;letter-spacing:.05em;text-transform:uppercase;padding:7px 13px;line-height:1;border-radius:999px;backdrop-filter:blur(3px)}
.card .t{font-weight:600;margin-top:11px;line-height:1.14}
.card .m{font-family:"Archivo",system-ui,sans-serif;font-size:.74rem;color:#55534e;margin-top:4px}
.two{display:grid;grid-template-columns:1fr 300px;gap:56px;align-items:start;margin-top:40px}
@media(max-width:820px){.two{grid-template-columns:1fr;gap:28px}}
.body{font-size:1.18rem;max-width:58ch;color:#2a2a28}
.body p:first-child{margin-top:0}
.facts{border-top:2px solid var(--ink)}
.facts .r{display:grid;grid-template-columns:96px 1fr;gap:14px;padding:9px 0;border-bottom:1px solid var(--line)}
.facts .k{font-family:"Archivo",system-ui,sans-serif;font-size:.66rem;text-transform:uppercase;letter-spacing:.07em;color:var(--ink2);padding-top:3px}
.facts .v a{text-decoration:none;border-bottom:2px solid var(--red)}
.facts .role{color:var(--ink2)}
.sech{font-family:"Manrope",system-ui,sans-serif;font-weight:700;font-size:1.3rem;border-bottom:2px solid var(--ink);padding-bottom:8px;margin:56px 0 0;display:flex;justify-content:space-between;align-items:baseline}
.sech .n{font-family:"Archivo",system-ui,sans-serif;font-weight:400;font-size:.7rem;color:var(--ink2)}
.crumb{font-family:"Archivo",system-ui,sans-serif;font-size:.7rem;text-transform:uppercase;letter-spacing:.06em;color:var(--ink2);margin:26px 0 22px}
.crumb a{text-decoration:none;border-bottom:2px solid var(--red)}
.kick{font-family:"Archivo",system-ui,sans-serif;font-size:.72rem;text-transform:uppercase;letter-spacing:.14em;color:var(--red);margin:22px 0 12px}
.empty{color:var(--ink2);padding:22px 0}

/* ---------- HOME ---------- */
.hero{position:relative;min-height:64vh;display:flex;align-items:flex-end;color:#fff;background:#1a1a1a center/cover no-repeat}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(18,16,14,.85),rgba(18,16,14,.12) 58%,rgba(18,16,14,.4))}
.hin{position:relative;z-index:2;max-width:1180px;margin:0 auto;padding:0 44px 7vh;width:100%}
.eye{font-family:"Archivo",system-ui,sans-serif;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;opacity:.92;margin:0 0 16px}
.hero h1{font-family:"Manrope",system-ui,sans-serif;font-weight:800;font-size:clamp(2.6rem,7.5vw,5.8rem);line-height:.95;letter-spacing:-.01em;margin:0}
.cta{margin-top:30px;display:flex;gap:12px;flex-wrap:wrap}
.cta a{font-family:"Archivo",system-ui,sans-serif;font-size:.72rem;text-transform:uppercase;letter-spacing:.06em;padding:13px 22px;text-decoration:none;border-radius:999px}
.cta .p{background:#fff;color:#1a1a1a}.cta .s{border:1px solid rgba(255,255,255,.55);color:#fff}
.recent{max-width:1180px;margin:0 auto;padding:clamp(40px,5vw,64px) 44px 0}
.eyebrow{font-family:"Archivo",system-ui,sans-serif;font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--ink2);margin:0 0 20px;border-bottom:1px solid var(--line);padding-bottom:14px;display:flex;justify-content:space-between;align-items:baseline}
.eyebrow a{text-decoration:none;color:var(--red);border-bottom:2px solid var(--red)}
.stories{max-width:1180px;margin:0 auto;padding:clamp(48px,6vw,84px) 44px 0}
.sh{font-family:"Manrope",system-ui,sans-serif;font-weight:700;font-size:1.6rem;margin:0 0 26px}
.feat{display:grid;grid-template-columns:1fr 1fr;gap:36px}@media(max-width:820px){.feat{grid-template-columns:1fr}}
.fc{display:block;text-decoration:none;color:inherit}
.fc .im{aspect-ratio:16/10;overflow:hidden;background:#e7e4dd}
.fc .im img{width:100%;height:100%;object-fit:cover;display:block}
.fk{font-family:"Archivo",system-ui,sans-serif;font-size:.68rem;text-transform:uppercase;letter-spacing:.05em;color:var(--red);margin:16px 0 8px}
.fc h3{font-family:"Manrope",system-ui,sans-serif;font-weight:700;font-size:1.5rem;line-height:1.12;margin:0 0 8px}
.fc p{color:#2c2a27;max-width:48ch;margin:0 0 12px}
.go{font-family:"Archivo",system-ui,sans-serif;font-size:.68rem;text-transform:uppercase;letter-spacing:.05em;color:var(--red);border-bottom:2px solid var(--red);padding-bottom:2px}
.fc:hover h3{color:var(--red)}

/* ---------- PROJECTS (Liste) ---------- */
.t-list h1{font-family:"Manrope",system-ui,sans-serif;font-weight:800;font-size:clamp(2.2rem,5vw,3.6rem);margin:30px 0 6px}
.t-list .sub{color:var(--ink2);max-width:62ch;margin:0 0 26px}
.chips{display:flex;flex-wrap:wrap;gap:7px;margin:4px 0 26px}
.chip{font-family:"Archivo",system-ui,sans-serif;font-weight:600;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;border:1px solid var(--line);background:#fff;padding:8px 14px;cursor:pointer;text-decoration:none;color:var(--ink);border-radius:999px;white-space:nowrap;flex:0 0 auto}
.chip:hover{border-color:var(--ink)}.chip.on{background:var(--red);color:#fff;border-color:var(--red)}
.hint{font-size:.8rem;color:var(--ink2);margin:12px 0 30px}
.agrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0 26px;grid-auto-rows:auto}
@media(max-width:1150px){.agrid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:820px){.agrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.agrid{grid-template-columns:1fr}}
.ac{text-decoration:none;color:inherit;min-width:0;content-visibility:auto;contain-intrinsic-size:auto 300px}
.acw{display:block;padding-bottom:30px}
.ac .im{position:relative;display:block;overflow:hidden;background:#e7e4dd;line-height:0}
.ac .im.noimg{aspect-ratio:4/3;box-shadow:inset 0 0 0 1px rgba(26,26,26,.06)}
.ac .im img{width:100%;height:100%;object-fit:cover;display:block}
.ak{font-family:"Archivo",system-ui,sans-serif;font-size:.66rem;text-transform:uppercase;letter-spacing:.04em;color:var(--red);margin:13px 0 5px}
.ac h3{font-weight:600;font-size:1.12rem;line-height:1.18;margin:0}
.al{font-family:"Archivo",system-ui,sans-serif;font-size:.75rem;color:#55534e;margin-top:6px}
.ac .by{font-family:"Archivo",system-ui,sans-serif;font-size:.75rem;color:var(--ink);margin-top:5px;line-height:1.3}
.ac .by a{display:inline;color:inherit;text-decoration:none;border-bottom:1px solid transparent}
.ac .by a:hover{color:var(--red);border-bottom-color:var(--red)}
.ac .sub2{font-family:"Archivo",system-ui,sans-serif;font-size:.72rem;color:var(--ink2);margin-top:3px;line-height:1.35}
.ac:hover h3{color:var(--red)}

/* ---------- WORK (Detail) ---------- */
.t-work .wrap{max-width:1000px}
.t-work h1.title{font-family:"Manrope",system-ui,sans-serif;font-weight:800;font-size:clamp(2rem,5.6vw,4.1rem);line-height:.95;letter-spacing:-.01em;margin:0}
.byline{font-size:1.35rem;margin:20px 0 0;color:var(--ink)}
.byline a{text-decoration:none;border-bottom:2px solid var(--red);padding-bottom:2px}
.lead-fig{margin:30px 0 6px}.lead-fig img{width:auto;height:auto;max-width:100%;max-height:66vh;object-fit:contain;display:block}
.cap{font-family:"Archivo",system-ui,sans-serif;font-size:.74rem;color:var(--ink2);margin:8px 0 32px}
.lead{font-size:1.4rem;line-height:1.42;max-width:46ch;margin:0 0 8px}
.lead a{text-decoration:none;border-bottom:2px solid var(--red)}
.more{margin-top:48px}
.more .h{font-family:"Manrope",system-ui,sans-serif;font-weight:600;font-size:1.5rem;margin:0 0 4px}
.more .h a{color:var(--red);text-decoration:none;border-bottom:2px solid var(--red)}
.more .subm{font-family:"Archivo",system-ui,sans-serif;font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;color:var(--ink2);margin:0 0 18px}
.strip{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}
.strip a{text-decoration:none;color:inherit}.strip img{width:100%;height:auto;display:block;background:#e7e4dd}
.strip .t{font-weight:600;margin-top:12px;line-height:1.12}
.strip .m{font-family:"Archivo",system-ui,sans-serif;font-size:.72rem;color:#55534e;margin-top:4px}
@media(max-width:800px){.strip{grid-template-columns:1fr 1fr}}

/* ---------- ACTIVITY (Detail) ---------- */
.t-activity .wrap{max-width:1100px}
.t-activity h1{font-family:"Manrope",system-ui,sans-serif;font-weight:800;font-size:clamp(2rem,5.2vw,3.9rem);line-height:.96;letter-spacing:-.01em;margin:0}
.poster{margin:28px 0 6px}.poster img{width:100%;height:auto;display:block;background:#e7e4dd}
.pcap{font-family:"Archivo",system-ui,sans-serif;font-size:.74rem;color:var(--ink2);margin:8px 0 36px}

/* ---------- PERSON (Detail) ---------- */
.t-person .wrap{max-width:1000px}
.phead{display:grid;grid-template-columns:150px 1fr;gap:36px;align-items:start;margin:24px 0 0}
.portrait{width:150px;height:150px;border-radius:50%;overflow:hidden;background:#efece5}
.portrait img{width:100%;height:100%;object-fit:cover;display:block}
.portrait .mono-ph{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-family:"Manrope",system-ui,sans-serif;font-weight:700;font-size:3rem;color:#c3bdb0}
.t-person h1{font-family:"Manrope",system-ui,sans-serif;font-weight:700;font-size:clamp(1.9rem,4.6vw,3.1rem);line-height:.98;letter-spacing:-.01em;margin:0}
.t-person .role{font-family:"Archivo",system-ui,sans-serif;font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:var(--ink2);margin-top:12px}
.bio{font-size:1.12rem;max-width:72ch;color:#2c2a27;margin:18px 0 0}
.tl a{display:grid;grid-template-columns:120px 150px 1fr;gap:22px;align-items:center;padding:16px 0;border-bottom:1px solid var(--line);text-decoration:none;color:inherit}
.tl a:hover .tt{border-bottom:2px solid var(--red);display:inline}
.tl img{width:150px;height:100px;object-fit:cover;display:block;background:#e7e4dd}
.ty{font-family:"Archivo",system-ui,sans-serif;font-size:.8rem;color:var(--ink2)}
.tt{font-weight:600;font-size:1.15rem;line-height:1.15}
.tm{font-family:"Archivo",system-ui,sans-serif;font-size:.72rem;color:#55534e;text-transform:uppercase;margin-top:4px}
@media(max-width:700px){.phead{grid-template-columns:1fr}.tl a{grid-template-columns:70px 1fr;gap:14px}.tl img{display:none}}

/* ---------- PEOPLE (Liste) ---------- */
.jump{display:flex;flex-wrap:wrap;gap:7px;margin:4px 0 18px}
.jump a{font-family:"Archivo",system-ui,sans-serif;font-weight:600;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;border:1px solid var(--line);background:#fff;padding:9px 18px;border-radius:999px;text-decoration:none;color:var(--ink);white-space:nowrap}.jump a:hover{border-color:var(--ink)}
.rh{font-family:"Manrope",system-ui,sans-serif;font-weight:700;font-size:1.15rem;letter-spacing:-.01em;color:var(--red);border-bottom:2px solid var(--red);padding-bottom:8px;margin:46px 0 0;display:flex;align-items:baseline;justify-content:space-between;scroll-margin-top:96px}
.rh .n{font-family:"Archivo",system-ui,sans-serif;font-weight:400;font-size:.7rem;color:var(--ink2);letter-spacing:.06em}
.pgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:26px 22px;margin:22px 0 0}
.pcard{display:block;text-decoration:none;color:inherit;content-visibility:auto;contain-intrinsic-size:auto 240px}
.pimg{aspect-ratio:1;border-radius:50%;overflow:hidden;background:#efece5;margin-bottom:12px}
.pimg img{width:100%;height:100%;object-fit:cover;display:block;filter:grayscale(.1)}
.pimg .mono-ph{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-family:"Manrope",system-ui,sans-serif;font-weight:700;font-size:2rem;color:#c3bdb0}
.pn{font-weight:600;font-size:.98rem;line-height:1.18;display:inline;border-bottom:2px solid transparent}
.pcard:hover .pn{border-bottom-color:var(--red)}
.pr{font-family:"Archivo",system-ui,sans-serif;font-size:.7rem;color:#55534e;letter-spacing:.04em;margin-top:5px}
.pr .yarr{color:var(--red);font-weight:700}
.pph{width:100%;height:100%;display:block}
@media(max-width:600px){.pgrid{grid-template-columns:repeat(auto-fill,minmax(110px,1fr));gap:22px 16px}}

/* ---------- generischer Textinhalt (statische Seiten) ---------- */
.prose{max-width:74ch;font-size:1.1rem}
.prose h1{font-family:"Manrope",system-ui,sans-serif;font-weight:800;font-size:clamp(2rem,4.5vw,3.2rem);margin:30px 0 14px}
.prose h2{font-family:"Manrope",system-ui,sans-serif;font-weight:700;font-size:1.5rem;margin:48px 0 10px;scroll-margin-top:90px}
.prose p{max-width:74ch}
.prose a{border-bottom:2px solid var(--red);text-decoration:none}
.prose h3{font-family:"Manrope",system-ui,sans-serif;font-weight:600;font-size:1.15rem;margin:28px 0 8px}
.prose ul{list-style:none;padding:0;margin:14px 0}
.prose li{max-width:76ch;padding:7px 0 7px 18px;border-bottom:1px solid var(--line);position:relative}
.prose li:before{content:"";position:absolute;left:0;top:16px;width:6px;height:6px;background:var(--red)}
.prose strong{font-weight:600}
.prose em{font-style:italic}
.prose>h1:first-child{margin-top:20px}
.prose h2{border-bottom:2px solid var(--ink);padding-bottom:8px}
.newslist a{display:grid;grid-template-columns:70px 1fr;gap:20px;padding:15px 0;border-bottom:1px solid var(--line);text-decoration:none;color:inherit;align-items:baseline}
.newslist .y{font-family:"Archivo",system-ui,sans-serif;font-size:.82rem;color:var(--ink2)}
.newslist .t{font-weight:600;font-size:1.15rem;line-height:1.2}
.newslist a:hover .t{color:var(--red)}
.newslist .m{font-family:"Archivo",system-ui,sans-serif;font-size:.72rem;color:#55534e;text-transform:uppercase;margin-top:4px;display:block}
.searchform{display:flex;gap:10px;margin:6px 0 26px;max-width:560px}
.searchform input{flex:1;padding:12px 16px;border:1px solid var(--line);border-radius:999px;font:inherit;background:#fff}
.searchform input:focus{outline:none;border-color:var(--red)}
.searchform button{padding:12px 22px;border:0;border-radius:999px;background:var(--ink);color:#fff;font:inherit;cursor:pointer}
.searchform button:hover{background:var(--red)}

/* ===== Home-Review-Fixes ===== */
.hero{background-color:#d7d2c8}                 /* kein Schwarz vor Bildladen */
.herolink{position:absolute;inset:0;z-index:1}  /* Klick ins Hero -> Projekt */
.cta a{font-family:"Archivo",system-ui,sans-serif;font-weight:600;text-transform:uppercase;letter-spacing:.05em}
.drop{left:0;right:auto}                         /* Dropdown unter die eigene Pill */
a.newsbar{text-decoration:none;color:var(--ink)}
.newsbar .nt{margin-left:0}
/* Bildunterzeilen lesbarer */
.card .m{font-size:.82rem;color:#4a4844}
.al{font-size:.8rem;color:#4a4844}
.foot .fl,.foot .flegal{font-size:.72rem}

/* ===== Home Runde 2: Hero-Layout, Caption, Kacheln ===== */
.hero{align-items:stretch}
.hin{display:flex;flex-direction:column;justify-content:space-between;padding-top:26px}
.hin .eye{margin:0}
.herocap{position:absolute;right:0;bottom:0;z-index:2;pointer-events:none;padding:0 44px 16px;max-width:62%;text-align:right;color:#fff;font-family:"Archivo",system-ui,sans-serif;font-size:.7rem;line-height:1.4;letter-spacing:.02em;text-shadow:0 1px 10px rgba(0,0,0,.6)}
.tiles{max-width:1180px;margin:0 auto;padding:clamp(26px,3.5vw,40px) 44px 0;display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
@media(max-width:900px){.tiles{grid-template-columns:1fr 1fr}}
@media(max-width:520px){.tiles{grid-template-columns:1fr}}
.tile{position:relative;min-height:260px;display:flex;align-items:flex-end;color:#fff;text-decoration:none;overflow:hidden;background:#2a2a28 center/cover no-repeat}
.tile::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.8),rgba(0,0,0,.05) 62%);transition:background .15s}
.tile:hover::after{background:linear-gradient(0deg,rgba(0,0,0,.86),rgba(0,0,0,.12) 62%)}
.tile .tt{position:relative;z-index:2;padding:18px}
.tile .tk{display:inline-block;font-family:"Archivo",system-ui,sans-serif;font-size:.62rem;letter-spacing:.12em;text-transform:uppercase;opacity:.92;margin-bottom:7px}
.tile h3{font-family:"Manrope",system-ui,sans-serif;font-weight:700;font-size:1.5rem;line-height:1.04;margin:0;letter-spacing:-.01em}
.tile.onnow .tk{background:var(--red);opacity:1;padding:3px 9px;border-radius:999px}
.recent{padding-top:clamp(30px,4vw,48px)}

/* ===== Home Runde 3: Hero-Gruppe unten, On-now-Banner ===== */
.hin{justify-content:flex-end;padding-bottom:6vh}   /* Eyebrow+Titel+CTA als Gruppe unten */
.hin .eye{margin:0 0 16px}
.herocap{padding-bottom:14px}                        /* Caption knapp unter der Gruppe */
.onnow-b{display:block;max-width:1180px;margin:clamp(26px,3.5vw,40px) auto 0;padding:0 44px;text-decoration:none;color:inherit}
.onnow-b .in{position:relative;overflow:hidden;min-height:300px;display:flex;align-items:flex-end;color:#fff;background:#222 center/cover no-repeat}
.onnow-b .in::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(0,0,0,.8),rgba(0,0,0,.08) 66%)}
.onnow-b .c{position:relative;z-index:2;padding:22px 26px}
.onnow-b .k{display:inline-block;background:var(--red);color:#fff;font-family:"Archivo",system-ui,sans-serif;font-size:.64rem;letter-spacing:.1em;text-transform:uppercase;padding:4px 10px;border-radius:999px;margin-bottom:10px}
.onnow-b h2{font-family:"Manrope",system-ui,sans-serif;font-weight:800;font-size:clamp(1.7rem,3.6vw,2.8rem);margin:0;line-height:1.02}
.onnow-b .m{font-family:"Archivo",system-ui,sans-serif;font-size:.74rem;color:#e6e6e6;margin-top:8px}
.onnow-b:hover h2{color:#fff}
.stories{padding-top:clamp(32px,4vw,52px)}

/* ===== Home Runde 4 ===== */
.stories .sh{color:var(--ink)}                       /* "Stories from the programme" schwarz (Ivonne H2) */

/* Mobile-Nav: Hamburger, kompakt (Untermenüs am Handy aus) */
.navtoggle{display:none}
.burger{display:none}
@media(max-width:1040px){
  header{flex-wrap:wrap;align-items:center}
  .burger{display:inline-flex;flex-direction:column;justify-content:center;gap:5px;margin-left:auto;padding:9px 6px;cursor:pointer}
  .burger span{width:24px;height:2px;background:var(--ink);display:block;border-radius:2px;transition:transform .22s,opacity .2s}
  .navtoggle:checked ~ .burger span:nth-child(1){transform:translateY(7px) rotate(45deg)}
  .navtoggle:checked ~ .burger span:nth-child(2){opacity:0}
  .navtoggle:checked ~ .burger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
  .nav,.navcta{display:none;flex-basis:100%;width:100%;margin-left:0}
  .navtoggle:checked ~ .nav{display:flex;flex-direction:column;align-items:stretch;gap:0;margin-top:10px;border-top:1px solid var(--line)}
  .navtoggle:checked ~ .navcta{display:flex;gap:8px;padding:14px 0 4px;flex-wrap:wrap;align-items:center}
  .nav>a,.grp{display:block;width:100%;border-bottom:1px solid var(--line)}
  .nav>a,.grp>.top{background:none!important;border-radius:0!important;padding:14px 2px;font-size:1rem;letter-spacing:.05em;width:100%;color:var(--ink)}
  .nav>a:hover,.grp>.top:hover,.nav>a.on,.grp>.top.on{background:none!important;color:var(--red)}
  .grp>.top{border-bottom:none;display:flex;align-items:center;justify-content:space-between}
  .grp>.top .ar{display:inline-block;font-size:1.35em;opacity:.6;margin-left:10px;padding:2px 4px;transition:transform .2s}
  .grp.open>.top .ar{transform:rotate(180deg);opacity:.9;color:var(--red)}
  .drop{display:none!important}
  .grp.open>.drop{display:block!important;padding:2px 0 12px 12px;margin:0}
  .grp.open>.drop a{display:block;padding:8px 0;font-size:.82rem;text-transform:uppercase;letter-spacing:.05em;color:var(--ink);border:0;white-space:normal}
  .grp.open>.drop a:hover{color:var(--red)}
  .grp.open>.drop a.sub{padding-left:14px;color:var(--ink2)}
}

/* ===== Karten: getrennte Klick-Ziele (Bild/Titel->Werk, Name->Person) ===== */
.ac a, .card a.ph, .card a.tl2{text-decoration:none;color:inherit;display:block}
.ac .ttl h3{margin:0}
.ac .ttl:hover h3{color:var(--red)}
.card a.tl2:hover .t{color:var(--red)}
.al a, .card .m a{display:inline;color:inherit;text-decoration:none;border-bottom:1px solid transparent}
.al a:hover, .card .m a:hover{color:var(--red);border-bottom-color:var(--red)}

/* Hero-Klick: Textblock durchlässig, nur Links aktiv -> Klick aufs Bild führt zum Werk */
.hin{pointer-events:none}
.hin a{pointer-events:auto}
.hero::after{pointer-events:none}

/* ===== Werkseite: More-from = große Einer-Spalte unter Credits ===== */
.t-work .two{grid-template-columns:1fr 340px;align-items:start}
.t-work .side{display:flex;flex-direction:column}
.morelist{display:flex;flex-direction:column;gap:20px;margin-top:14px}
.mcard{display:block;text-decoration:none;color:inherit}
.mcard .mimg{display:block;aspect-ratio:3/2;overflow:hidden;background:#e7e4dd}
.mcard .mimg img{width:100%;height:100%;object-fit:cover;display:block}
.mcard .mt{display:block;font-weight:600;line-height:1.16;margin-top:9px}
.mcard .mm{display:block;font-family:"Archivo",system-ui,sans-serif;font-size:.72rem;color:#55534e;text-transform:uppercase;margin-top:3px}
.mcard:hover .mt{color:var(--red)}
/* Werk-Galerie (weitere Bilder) — Masonry, Seitenverhältnis erhalten */
.wgallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 18px;grid-auto-rows:1px;margin:40px 0 6px}
@media(max-width:900px){.wgallery{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.wgallery{grid-template-columns:1fr}}
.gcell{min-width:0}
.gcw{display:block;padding-bottom:22px}
.gim{display:block;overflow:hidden;background:#e7e4dd}
.gim img{width:100%;height:100%;object-fit:cover;display:block}
.wgallery figcaption{font-family:"Archivo",system-ui,sans-serif;font-size:.7rem;line-height:1.4;color:var(--ink2);margin-top:7px}

/* More-from: mehr Abstand zur Credit-Box + Überlauf mehrspaltig unter den Text */
.wmore{margin-top:44px}
.wmore .h,.moreextra .h{font-family:"Manrope",system-ui,sans-serif;font-weight:600;font-size:1.15rem;margin:0 0 8px;line-height:1.15}
.wmore .h a,.moreextra .h a{color:var(--red);text-decoration:none;border-bottom:2px solid var(--red)}
.moreextra .h{grid-column:1/-1;margin:16px 0 2px}
.moreextra{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:24px;margin:26px 0 0}
.moreextra:empty{display:none;margin:0}

/* ===== Werkseite: einheitliche Kartengröße (3-Spalten) + dezente Auto-Links ===== */
.t-work .two{grid-template-columns:repeat(3,1fr);gap:30px;align-items:start}
.t-work .body{grid-column:span 2}
.t-work .side{grid-column:span 1;display:flex;flex-direction:column}
.moreextra{grid-template-columns:repeat(3,1fr);gap:30px}
@media(max-width:820px){
  .t-work .two{grid-template-columns:1fr}
  .t-work .body,.t-work .side{grid-column:auto}
  .moreextra{grid-template-columns:1fr 1fr}
}
/* automatische Namenslinks im Fließtext: dezent grau gepunktet, Hover rot */
.body a,.bio a{color:inherit;text-decoration:none;border-bottom:1px dotted rgba(26,26,26,.42)}
.body a:hover,.bio a:hover{color:var(--red);border-bottom-color:var(--red)}

/* erhaltene Textausrichtung aus dem Original */
.body .align-right{text-align:right;margin:0 0 1em}
.body .align-center{text-align:center;margin:0 0 1em}

/* Credits/Team: saubere Umbrüche, Rolle als Einheit */
.facts .cr{display:block;margin:.5em 0;line-height:1.35}
.facts .crole{display:block;color:var(--ink2);font-size:.92em}
.facts .cnames{display:block}
.facts .cglab{display:block}
.facts .nm{display:block;white-space:nowrap}
.facts .cr:has(.cglab){margin-top:1em}
.facts .v>.cr:first-child{margin-top:0}
.yearchips{display:flex;align-items:center;gap:7px}
.yearsgrid{display:contents}
.yearchips>.chip,.yearchips .chip{flex:0 0 auto;min-width:64px;padding:8px 12px;font-size:.72rem;justify-content:center;text-align:center;color:var(--ink2)}
.yearchips .chip.on{color:#fff}
.yarr{letter-spacing:-1px}

/* ===== Prose pages: work-hero + curriculum route ===== */
.phero{margin:22px 0 6px;line-height:0}
.phero>a{display:block;aspect-ratio:21/10;max-height:520px;overflow:hidden;background:#e9e3d8}
.phero>a img{width:100%;height:100%;object-fit:cover;display:block}
.phero .pcap{line-height:1.3;font-family:"Archivo",system-ui,sans-serif;font-size:.72rem;color:var(--ink2);margin-top:8px}
.phero .pcap a{color:inherit;text-decoration:none;border-bottom:1px dotted rgba(26,26,26,.35)}
.t-prose .phead{display:block}
.t-prose .phead h1{font-family:"Manrope",system-ui,sans-serif;font-weight:800;font-size:clamp(1.9rem,4.5vw,3rem);margin:18px 0 14px}
.curric{max-width:62rem}
.curric .ectsline{font-family:"Archivo",system-ui,sans-serif;font-size:.75rem;color:var(--ink2);line-height:1.45}
.curric .byline{font-size:.9rem;color:var(--ink2);line-height:1.55;max-width:56rem;margin:2px 0 6px}
.curric .byline a{color:var(--ink2)}
.curric h2{font-family:"Manrope",system-ui,sans-serif;font-weight:700;font-size:1.3rem;margin:40px 0 4px}
.curric .sem h3{font-family:"Manrope",system-ui,sans-serif;font-weight:700;font-size:1.15rem;text-transform:uppercase;letter-spacing:.02em;border-bottom:2px solid var(--ink);padding-bottom:7px;margin:34px 0 2px}
.curric .crow{display:flex;justify-content:space-between;gap:24px;padding:9px 0;border-bottom:1px solid var(--line)}
.curric .ctitle{font-size:.98rem;line-height:1.35}
.curric .cteach{color:var(--ink2)}
.curric .cmeta{display:grid;grid-template-columns:2.4em 1.7em 2.6em 2.2em 3.4em;column-gap:.5em;justify-content:end;align-items:baseline;font-family:"Archivo",system-ui,sans-serif;font-size:.72rem;letter-spacing:.02em;text-transform:uppercase;color:var(--ink2);white-space:nowrap;padding-top:3px}
.curric .cmeta .ctype{text-align:left}
.curric .cmeta .cnum{text-align:right;font-variant-numeric:tabular-nums}
.curric .cmeta .cunit{text-align:left}
.curric .total{border-bottom:2px solid var(--ink)}
.curric .total .ctitle{font-weight:700}
.curric .total .cmeta{color:var(--ink);font-weight:700}
.curric .total .cmeta{display:flex;justify-content:flex-end}  /* Summe rechtsbündig unter ECTS statt in der Zahlenspalte */
.curric .tags{white-space:nowrap}
.curric .tl{display:inline-block;background:var(--red);color:#fff;font-family:"Archivo",system-ui,sans-serif;font-size:.6rem;font-weight:600;letter-spacing:.03em;text-transform:uppercase;padding:2px 8px;border-radius:999px;text-decoration:none;margin-left:5px;border-bottom:0;vertical-align:middle}
.curric .tl:hover{background:var(--ink);color:#fff}
.curric .ctitle a:not(.tl){color:inherit;text-decoration:none;border-bottom:1px dotted rgba(26,26,26,.4)}
.curric .ctitle a:not(.tl):hover{border-bottom-color:var(--ink)}
.curric .tl,.curric .tl:hover{border-bottom:0}
.curric .cnote{color:var(--ink2)}
.curric .byline{max-width:none;line-height:1.5}
.curric p{max-width:52rem}
.curric .sem,.curric .crow,.curric h2,.curric .byline{max-width:none}
.curric .legend{font-family:"Archivo",system-ui,sans-serif;font-size:.72rem;color:var(--ink2);margin:26px 0 4px;line-height:1.5}

/* ---- About: collaboration partners (two columns) ---- */
.about .partners{list-style:none;padding:0;margin:12px 0 0;columns:2;column-gap:44px}
.about .partners li{font-size:.95rem;line-height:1.5;color:var(--ink2);break-inside:avoid;margin:0 0 7px;padding:0;border:0;max-width:none}
.about .partners li:before{display:none}
.about .partners a{color:var(--red);border-bottom:0;text-decoration:none}
.about .partners a:hover{text-decoration:underline}
@media(max-width:640px){.about .partners{columns:1}}

/* ---- Contact ---- */
.contactgrid{display:grid;grid-template-columns:1fr 1fr;gap:48px;margin:8px 0 40px;align-items:start;border-top:3px solid var(--red);padding-top:30px}
.contactgrid h2{font-family:"Manrope",system-ui,sans-serif;font-weight:700;font-size:1.2rem;margin:30px 0 8px;border-bottom:2px solid var(--red);padding-bottom:7px}
.cinfo>h2:first-child,.cteamcol>h2:first-child{margin-top:0}
.contactgrid p{margin:0 0 10px;line-height:1.55}
.contactgrid .cmuted{color:var(--ink2);font-size:.92rem}
.contactgrid a{border-bottom:1px dotted rgba(26,26,26,.4);text-decoration:none;color:var(--ink)}
.contactgrid a:hover{border-bottom-color:var(--ink)}
.soc{display:flex;gap:18px;flex-wrap:wrap}
.team{display:grid;grid-template-columns:1fr 1fr;gap:2px 24px}
.tm{padding:9px 0;border-bottom:1px solid var(--line)}
.team .tn{font-family:"Archivo",system-ui,sans-serif;font-size:1.05rem;font-weight:600;text-transform:none;letter-spacing:normal;color:var(--ink);line-height:1.25}
.tn a{border-bottom:1px dotted rgba(26,26,26,.4);text-decoration:none;color:inherit}
.tn a:hover{border-bottom-color:var(--red);color:var(--red)}
.tr{font-family:"Archivo",system-ui,sans-serif;font-size:.72rem;color:var(--ink2);margin-top:2px}
@media(max-width:760px){.contactgrid{grid-template-columns:1fr;gap:24px}.team{grid-template-columns:1fr}}

.admission h3.ph{color:var(--red);margin-top:34px}

.phead h1.nowrap{white-space:nowrap}
@media(max-width:560px){.phead h1.nowrap{white-space:normal}}

/* ===== MASTER PORTRAITS — Editorial-Restyle (Ivonne Review 5, 29.9.2026) ===== */
.t-mag{--head:"Manrope",system-ui,sans-serif;--text:"Archivo",system-ui,sans-serif;--label:"Archivo",system-ui,sans-serif;--serif:"Source Serif 4",Georgia,serif;--serif-head:var(--serif);--serif-body:var(--serif);--serif-size:1;--mute:#767672;--tint:#f1efea}
.t-mag{padding-bottom:80px}

/* cover */
.mpcover{position:relative;min-height:clamp(380px,62vh,640px);background-size:cover;background-position:center;display:flex;align-items:flex-end}
.mpcover.mpc-contain{display:flex;align-items:flex-end}
.mpcover.mpc-contain .mphimg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;margin:0;max-width:none;max-height:none;box-shadow:none;z-index:0}
.mpcin{position:relative;z-index:1;max-width:760px;margin:0 0 0 max(20px,calc((100vw - 1180px)/2));padding:26px 30px 24px;background:#f5f0e6;transform:translateY(40px)}
.mpc-contain .mpcin{justify-self:start;transform:translateY(40px)}
.mpkick{margin:0 0 10px;font-family:var(--label);font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--red);font-weight:600}
.mptitle{margin:0;font-family:var(--serif-head);font-weight:400;font-size:clamp(34px,5vw,60px);line-height:1.04;letter-spacing:-.01em;font-synthesis-weight:none}
.mpwith{margin:14px 0 0;font-family:var(--serif-head);font-style:italic;font-size:clamp(18px,2vw,22px);line-height:1.3;color:#3a3733}
.mpcredit-int{margin:12px 0 0;font-family:var(--label);font-size:12px;text-transform:uppercase;letter-spacing:.05em;color:var(--mute)}
.mpcredit-int a{color:var(--ink);text-decoration:none;border-bottom:1.5px solid var(--red)}
.mpcredit-int a:hover{color:var(--red)}
.mpcredit{position:absolute;right:16px;bottom:12px;max-width:min(420px,45vw);padding:6px 9px;background:rgba(250,249,246,.9);font-family:var(--label);font-size:10.5px;line-height:1.45;color:var(--mute)}
.mpcredit a{color:inherit}
.mpcredit a:hover{color:var(--red)}

/* layout */
.mpwrap{max-width:1180px;margin:0 auto;padding:88px 20px 0;display:grid;grid-template-columns:260px minmax(0,1fr);gap:56px;align-items:start}

/* sidebar */
.mpchapters{position:static}
.mpct{display:block;font-family:var(--label);font-weight:700;font-size:12px;text-transform:uppercase;letter-spacing:.08em;color:var(--red);margin:0 0 12px}
.mplist{display:flex;flex-direction:column;border-top:1px solid var(--line)}
.mpitem{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding:7px 0;border-bottom:1px solid var(--line);text-decoration:none;color:inherit}
.mpitem:hover .mpi-n{color:var(--red)}
.mpi-n{font-family:var(--serif-body);font-size:15.5px;line-height:1.25}
.mpi-d{flex:0 0 auto;font-family:var(--label);font-size:10.5px;text-transform:uppercase;letter-spacing:.04em;color:var(--mute)}
.mpitem.cur .mpi-n{color:var(--red)}
.mpitem.cur{border-bottom-color:var(--red)}
.mpall{display:inline-block;margin-top:12px;font-family:var(--label);font-size:11.5px;text-transform:uppercase;letter-spacing:.05em;font-weight:700;color:var(--red);text-decoration:none;border-bottom:1.5px solid var(--red)}
.mpall:hover{color:var(--ink);border-bottom-color:var(--ink)}
.mpbio{margin-top:30px}
.mpbio-ph{margin:0 0 12px}
.mpbio-ph img{width:100%;height:auto;cursor:zoom-in}
.mpbio-ph figcaption{margin-top:6px;font-family:var(--label);font-size:10.5px;color:var(--mute);line-height:1.45}
.mpbio-t{font-family:var(--text);font-size:14px;line-height:1.55;color:#3a3733}
.mpbio-t a{color:inherit}
.mpbio-t a:hover{color:var(--red)}

/* body */
.mpbody{max-width:68ch;font-family:var(--serif-body);font-size:calc(1.13rem * var(--serif-size));line-height:1.6;color:#221f1c}
.mpbody p{margin:0 0 1em}
.mpbody a{color:inherit;text-decoration:none;border-bottom:1.5px solid var(--red);overflow-wrap:anywhere}
.mpbody a:hover{color:var(--red)}
.mpbody .q{font-family:var(--serif-head);font-weight:600;font-synthesis-weight:none;font-size:calc(1.5rem * var(--serif-size));line-height:1.25;margin:2.1em 0 .7em;color:var(--ink)}
.mpbody .q:first-child{margin-top:0}
.mpbody .pull{margin:1.6em 0;padding:0 0 0 22px;border-left:3px solid var(--red);font-family:var(--serif-head);font-style:italic;font-size:calc(1.6rem * var(--serif-size));line-height:1.3;color:var(--ink)}
.mpbody .mpsay{font-style:italic;color:#4a4640}
.mpfig{margin:1.6em 0}
.mpfig img{width:100%;height:auto;cursor:zoom-in;background:var(--tint)}
.mpfig.lead{margin:2em 0}
.mpgal{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:1.6em 0 .8em;align-items:start}
.mpgal .mpfig{margin:0}
.mpgal .mpfig img{aspect-ratio:4/3;object-fit:cover}
.mpbody .mpcap{margin:0 0 .5em;font-family:var(--label);font-size:11.5px;line-height:1.5;color:var(--mute)}
.mpbody .mpcap a{border-bottom-width:1px}
.mpbody .mpdl a{display:inline-block;padding:9px 14px;border:1.5px solid var(--red);border-bottom-width:1.5px;border-radius:999px;font-family:var(--label);font-size:12px;text-transform:uppercase;letter-spacing:.05em;font-weight:700;color:var(--red)}
.mpbody .mpdl a:hover{background:var(--red);color:#fff}
.mpbody hr{border:0;border-top:1px solid var(--line);margin:2em 0}

/* portrait lightbox */
.mplb{position:fixed;inset:0;z-index:300;display:none;align-items:center;justify-content:center;background:rgba(20,20,20,.94)}
.mplb.on{display:flex}
.mplb-fig{margin:0;max-width:88vw;text-align:center;overflow:hidden}
.mplb-imgwrap{position:relative;display:inline-block}
.mplb-fig img{max-height:80vh;max-width:88vw;display:block}
.mplb-fig figcaption{margin-top:10px;color:#cfcbc3;font-family:var(--label);font-size:12px;line-height:1.5;max-width:70ch;margin-inline:auto}
.mplb button{background:none;border:0;color:#fff;font-size:42px;line-height:1;cursor:pointer;padding:10px}
.mplb-prev{position:absolute;left:10px;top:50%;transform:translateY(-50%)}
.mplb-next{position:absolute;right:10px;top:50%;transform:translateY(-50%)}
.mplb-x{position:absolute;top:-6px;right:-44px;font-size:34px!important}

@media (max-width:900px){
  .mpwrap{grid-template-columns:1fr;gap:36px;padding-top:70px}
  .mpchapters{position:static;order:2}
  .mpbody{order:1}
  .mpcin{margin:0 16px;padding:20px 18px}
  .mpcredit{position:static;max-width:none;background:none;padding:10px 16px 0}
  .mpcover{flex-direction:column;align-items:stretch;justify-content:flex-end}
  .mplb-x{right:0;top:-44px}
}
/* --- index / selection grid --- */
.mp-index .mpx-head{padding:26px 0 6px}
.mp-index .mpx-head h1{font-family:var(--serif);font-weight:600;font-size:clamp(2rem,5vw,3.4rem);margin:0 0 12px}
.mpx-intro{font-family:var(--serif);font-size:1.12rem;line-height:1.58;color:#413c36;max-width:none}
.mpx-intro a{color:var(--red);text-decoration:none;border-bottom:1px solid rgba(226,35,26,.4)}
.mpx-intro a:hover{color:var(--ink);border-bottom-color:var(--ink)}
.mpgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 30px;grid-auto-rows:1px;margin:30px 0 54px}
@media(max-width:900px){.mpgrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.mpgrid{grid-template-columns:1fr;grid-auto-rows:auto}}  /* MO4: keine 1px-Rows bei einer Spalte */
.mpcard{min-width:0;text-decoration:none;color:inherit;display:block}
.mpcard .acw{padding-bottom:36px}
.mpcard-img{background:#e7e4dd;overflow:hidden;margin-bottom:12px}
.mpcard-img img{width:100%;height:100%;object-fit:cover;display:block}
.mpcard:hover .mpcard-img img{opacity:.92}
.mpcard-kick{font-family:"Archivo",system-ui,sans-serif;font-size:.63rem;letter-spacing:.12em;text-transform:uppercase;color:var(--red);margin:0 0 5px}
.mpcard-title{font-family:var(--serif);font-weight:600;font-size:1.3rem;line-height:1.16;margin:0 0 4px;color:var(--ink)}
.mpcard-person{font-family:"Archivo",system-ui,sans-serif;font-size:.7rem;color:var(--ink2);margin:0}

body.t-master-portrait,body.t-master-portraits{background:#f5f0e6}
#q{width:100%;padding:15px 20px;border:1px solid var(--line);border-radius:999px;font:inherit;font-size:1.05rem;background:#fff}
#q:focus{outline:none;border-color:var(--red)}
.rmid{min-width:0}
.rmeta{display:block;font-family:"Archivo",system-ui,sans-serif;font-size:.66rem;color:var(--ink2);margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rt{font-weight:600;font-size:1.05rem;line-height:1.25}
.nores,.morem{color:var(--ink2);padding:20px 2px;font-size:.9rem}

/* Filter-Stalaktiten: Balken haengt unter dem Chip, Hoehe ~ Trefferzahl */

/* ============ PERSON: role-adaptive journey ============ */
.sechsub{color:var(--ink2);max-width:62ch;margin:8px 0 0;font-size:.95rem;line-height:1.5}
.jtl{position:relative;margin:20px 0 0;padding-left:34px}
.jtl:before{content:"";position:absolute;left:8px;top:10px;bottom:10px;width:2px;background:linear-gradient(to bottom,var(--red),rgba(226,35,26,.35))}
.jyear{position:relative;font-family:"Manrope",system-ui,sans-serif;font-weight:700;font-size:1.25rem;color:var(--ink);margin:34px 0 12px}
.jyear:first-child{margin-top:6px}
.jarr{position:absolute;left:-35px;top:50%;transform:translateY(-50%);width:20px;height:26px;display:flex;align-items:center;justify-content:center;background:var(--band);color:var(--red);font-family:"Manrope",system-ui,sans-serif;font-weight:700;font-size:.95rem;letter-spacing:-3px}
.jcard{position:relative;display:grid;grid-template-columns:minmax(0,1.05fr) 1fr;gap:22px;align-items:stretch;border:1px solid var(--line);overflow:hidden;margin:0 0 16px;text-decoration:none;color:inherit;background:#fff;transition:border-color .12s,box-shadow .12s}
.jcard:hover{border-color:var(--red);box-shadow:0 6px 20px rgba(0,0,0,.06)}
.jcard .jph{display:block;background:#e7e4dd center/cover no-repeat;min-height:210px}
.jcard .jci{display:flex;flex-direction:column;justify-content:center;padding:20px 24px 20px 2px;gap:6px}
.jcard .jt{font-family:"Manrope",system-ui,sans-serif;font-weight:700;font-size:1.25rem;line-height:1.14;color:var(--ink)}
.jcard:hover .jt{color:var(--red)}
.jcard .jmeta{font-family:"Archivo",system-ui,sans-serif;font-size:.67rem;letter-spacing:.05em;text-transform:uppercase;color:var(--ink2)}
.jcard .jexc{font-size:.95rem;line-height:1.5;color:#3a3630;margin-top:4px}
.jcard.master{border:1px solid var(--line)}
.jbig{display:block;border:1px solid var(--line);overflow:hidden;margin:0 0 20px;text-decoration:none;color:inherit;background:#fff;transition:border-color .12s,box-shadow .12s}
.jbig:hover{border-color:var(--red);box-shadow:0 6px 20px rgba(0,0,0,.06)}
.jbig .jph2{display:block;width:100%;background:#e7e4dd;line-height:0}
.jbig .jph2 img{width:100%;height:auto;display:block;max-height:600px;object-fit:cover}
.jbig .jci{display:flex;flex-direction:column;gap:6px;padding:18px 24px 22px}
.jbig .jt{font-family:"Manrope",system-ui,sans-serif;font-weight:700;font-size:1.45rem;line-height:1.12;color:var(--ink)}
.jbig:hover .jt{color:var(--red)}
.jbig .jmeta{font-family:"Archivo",system-ui,sans-serif;font-size:.67rem;letter-spacing:.05em;text-transform:uppercase;color:var(--ink2)}
.jbig .jexc{font-size:.95rem;line-height:1.5;color:#3a3630;margin-top:2px}
.jbig .jtag{margin-bottom:4px}
.jtag{align-self:flex-start;background:var(--red);color:#fff;font-family:"Archivo",system-ui,sans-serif;font-size:.6rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;padding:3px 9px;border-radius:999px;margin-bottom:2px}
.jmini{position:relative;display:flex;gap:14px;align-items:baseline;padding:9px 12px 9px 14px;border-left:2px solid var(--line);margin:0 0 7px 0;text-decoration:none;color:inherit;background:#f4f2ec}
.jmini:hover{border-left-color:var(--red);background:#efece4}
.jmini .jd2{flex:none;min-width:96px;font-family:"Archivo",system-ui,sans-serif;font-size:.72rem;letter-spacing:.04em;text-transform:uppercase;color:var(--ink)}
.jmini .jd2:before{content:"\2192";color:var(--red);font-weight:400;font-size:1.05rem;line-height:1;vertical-align:-1px;margin-right:9px}
.jmini .jt2{flex:1 1 auto;font-weight:400;font-size:.98rem;line-height:1.3;color:var(--ink)}
.jmini:hover .jt2{color:var(--red)}
.jmini .jmeta2{flex:none;font-family:"Archivo",system-ui,sans-serif;font-size:.66rem;text-transform:uppercase;color:var(--ink2);white-space:nowrap;align-self:baseline}
.showall{margin:6px 0 0 34px;padding:10px 20px;border:1px solid var(--line);background:#fff;border-radius:999px;font:inherit;font-size:.82rem;color:var(--ink);cursor:pointer;transition:background .12s,border-color .12s}
.showall:hover{border-color:var(--red);color:var(--red)}
@media(max-width:640px){.jcard{grid-template-columns:1fr}.jcard .jph{min-height:190px}.jcard .jci{padding:16px}.jmini{flex-wrap:wrap}.jmini .jd2{min-width:100%}}
/* Works gallery */
.pgal{columns:3;column-gap:20px;margin:18px 0 0}
@media(max-width:900px){.pgal{columns:2}}
@media(max-width:560px){.pgal{columns:1}}
.pgc{display:block;break-inside:avoid;margin:0 0 20px;text-decoration:none;color:inherit}
.pgc figure{margin:0}
.pgc img{width:100%;height:auto;display:block;background:#e7e4dd;border-radius:2px}
.pgc figcaption{padding:8px 2px 0}
.pgc .gt{font-weight:600;font-size:.98rem;line-height:1.22;display:block}
.pgc:hover .gt{color:var(--red)}
.pgc .gm{font-family:"Archivo",system-ui,sans-serif;font-size:.68rem;color:var(--ink2);text-transform:uppercase;margin-top:3px;display:block}

.bio.clamped{max-height:460px;overflow:hidden;position:relative}
.bio.clamped:after{content:"";position:absolute;left:0;right:0;bottom:0;height:90px;background:linear-gradient(rgba(251,250,247,0),var(--bg))}
.biomore{margin:12px 0 0;padding:7px 18px;border:1px solid var(--line);background:#fff;border-radius:999px;font:inherit;font-size:.8rem;color:var(--red);cursor:pointer}
.biomore:hover{border-color:var(--red)}

/* Person header: bigger portrait, name beside, bio full-width below */
.phead-person{grid-template-columns:238px 1fr;align-items:center;gap:36px}
.phead-person .portrait{width:210px;height:210px}
.phead-person .kick{margin-top:0}
.pbio{margin:30px 0 0}
.pbio .bio{max-width:82ch;margin:0}
@media(max-width:700px){.phead-person{grid-template-columns:1fr}.phead-person .portrait{width:200px;height:200px}}

/* ---- Work: portrait cover → fact box beside image ---- */
.wtop{display:grid;grid-template-columns:420px 1fr;gap:48px;align-items:start;margin:24px 0 0}
.wtop .lead-fig{margin:0}
.wtop .lead-fig img{width:100%;height:auto;display:block;background:#e7e4dd}
.wtop .lead-fig .cap{font-family:"Archivo",system-ui,sans-serif;font-size:.7rem;color:var(--ink2);margin-top:8px;max-width:40ch}
.wtop-side{padding-top:4px}
.wtop-side .facts{border-top:2px solid var(--ink)}
.wtop-side .lead{margin-top:26px;max-width:38ch}
.t-work .wbody{max-width:72ch;margin:44px 0 0}
.moreblock{margin-top:44px}
@media(max-width:820px){.wtop{grid-template-columns:1fr;gap:18px}.t-work .wbody{max-width:none}}

/* ---- Work: unified secondary flow (gallery / more-from wrap the text) ---- */
.flowcol{margin-top:16px}
.flowcol .flowitem{display:block;margin:0 0 22px}
.flowhead{font-family:"Manrope",system-ui,sans-serif;font-weight:600;font-size:1.15rem;line-height:1.15;margin:34px 0 6px}
.flowhead a{color:var(--red);text-decoration:none;border-bottom:2px solid var(--red)}
.flowrow{columns:3;column-gap:20px;margin-top:38px}
.flowrow .flowitem{break-inside:avoid;display:block;margin:0 0 22px;width:100%}
@media(max-width:900px){.flowrow{columns:2}}
@media(max-width:560px){.flowrow{columns:1}}
.secleft{columns:2;column-gap:20px}
@media(max-width:560px){.secleft{columns:1}}
.secleft .flowitem{break-inside:avoid;display:block;margin:0 0 22px}
.fi-gal{margin:0}
.fi-gal .gim{display:block;overflow:hidden;background:#e7e4dd}
.fi-gal .gim img{width:100%;height:100%;object-fit:cover;display:block}
.fi-gal figcaption{font-family:"Archivo",system-ui,sans-serif;font-size:.7rem;line-height:1.4;color:var(--ink2);margin-top:7px}
.two-notext{margin-top:30px}
.moreblockx{margin-top:44px}
.moreblockx .h{font-family:"Manrope",system-ui,sans-serif;font-weight:600;font-size:1.15rem;margin:0 0 12px}
.moreblockx .h a{color:var(--red);text-decoration:none;border-bottom:2px solid var(--red)}

/* Work: More-from sub-heading inside the secondary flow */
.flowsub{font-family:"Manrope",system-ui,sans-serif;font-weight:600;font-size:1.1rem;line-height:1.15;margin:46px 0 14px;padding-top:24px;border-top:1px solid var(--line);column-span:all;break-inside:avoid}  /* CO4: klare Trennung Galerie/More-from */
.flowsub a{color:var(--red);text-decoration:none;border-bottom:2px solid var(--red)}
.actside{display:flex;flex-direction:column}
.flowhead .fhn{font-family:"Archivo",system-ui,sans-serif;font-weight:400;font-size:.7rem;color:var(--ink2);text-transform:uppercase;letter-spacing:.05em;margin-left:8px;white-space:nowrap}

.flowhead{column-span:all}
.curformats{margin:48px 0 0;border-top:2px solid var(--red);padding-top:18px}
.curformats h2{font-family:var(--serif);font-size:1.5rem;margin:0 0 12px}
.fmtlist{list-style:none;margin:0;padding:0;display:grid;gap:2px}
.fmtlist li a{display:block;padding:10px 0;border-bottom:1px solid var(--line);font-family:var(--serif);font-size:1.15rem;text-decoration:none;color:inherit}
.fmtlist li a:hover{color:var(--red)}
.eventlist{margin:48px 0 0;border-top:2px solid var(--red);padding-top:16px}
.eventlist h2{font-family:var(--serif);font-size:1.3rem;margin:0 0 10px}
.evlist{list-style:none;margin:0;padding:0}
.evlist li a{display:flex;justify-content:space-between;gap:16px;align-items:baseline;padding:9px 0;border-bottom:1px solid var(--line);text-decoration:none;color:inherit}
.evlist li a:hover .evt{color:var(--red)}
.evlist .evt{font-family:var(--serif);font-size:1.02rem}
.evlist .evd{font-family:"Archivo",system-ui,sans-serif;font-size:.72rem;color:var(--ink2);white-space:nowrap}
.drop a.sub{padding-left:32px;padding-top:4px;padding-bottom:4px;font-size:.68rem;text-transform:uppercase;letter-spacing:.05em;opacity:.62}  /* G4: gleiche Schrift/Größe wie Mutter, grau + Hover */
.drop a.sub:first-of-type{margin-top:3px}
.drop a.sub:last-of-type{margin-bottom:3px}
/* sichtbare Body-Links */
.bio a,.prose a,.about a{color:inherit;text-decoration:none;border-bottom:1px solid rgba(198,40,40,.5)}
.bio a:hover,.prose a:hover,.about a:hover{color:var(--red);border-bottom-color:var(--red)}
.evmore .evlist{margin-top:0}
.examgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:6px}
@media(max-width:760px){.examgrid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:480px){.examgrid{grid-template-columns:1fr}}
.examgrid.evmore{margin-top:18px}
.examcard{display:block;text-decoration:none;color:inherit;border:0}
.examcard .ec-img{display:block;aspect-ratio:4/3;background:#e9e3d8 center/cover no-repeat}
.examcard .ec-t{display:block;font-family:var(--serif);font-size:1.02rem;line-height:1.2;margin-top:8px}
.examcard:hover .ec-t{color:var(--red)}
.examcard .ec-d{display:block;font-family:"Archivo",system-ui,sans-serif;font-size:.64rem;color:var(--ink2);margin-top:3px}
.allworks{margin-top:24px;font-family:"Archivo",system-ui,sans-serif;font-size:.78rem}

/* Topic-Filter (ausklappbar, zweite Ebene neben Kategorie-Chips) */
.topicfilter{margin:-14px 0 24px;border:0}
.topicfilter>summary{font-family:"Archivo",system-ui,sans-serif;font-weight:600;font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;color:var(--ink);cursor:pointer;list-style:none;display:inline-flex;align-items:center;gap:6px;padding:6px 0;opacity:.72}
.topicfilter>summary:hover{opacity:1}
.topicfilter>summary::-webkit-details-marker{display:none}
.topicfilter>summary::before{content:"+";font-weight:700;font-size:.9rem;line-height:1}
.topicfilter[open]>summary::before{content:"–"}
.topicfilter .tfhint{opacity:.5;font-weight:500}
.tchips{display:flex;flex-wrap:wrap;gap:6px;margin:10px 0 4px}
.tchip{font-family:"Archivo",system-ui,sans-serif;font-weight:600;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;border:1px solid var(--line);background:#fff;padding:7px 13px;cursor:pointer;color:var(--ink2);border-radius:999px;display:inline-flex;align-items:center;gap:6px}
.tchip:hover{border-color:var(--ink);color:var(--ink)}
.tchip.on{background:var(--ink);color:#fff;border-color:var(--ink)}
.tchip .tn{font-size:.7rem;opacity:.6;font-variant-numeric:tabular-nums}
.tchip.on .tn{opacity:.8}

/* Institutions: Logos (contained auf weiss) */
.instlogo{display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid var(--line);border-radius:8px;padding:20px;margin:0 0 24px;max-width:360px}
.instlogo img{max-height:120px;width:auto;object-fit:contain}
.t-institutions .agrid{grid-template-columns:repeat(auto-fill,minmax(210px,1fr));grid-auto-rows:auto;gap:18px}
.t-institutions .ac{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:10px;overflow:hidden;text-decoration:none;color:var(--ink);background:#fff}
.t-institutions .ac:hover{border-color:var(--ink)}
.il-tile{display:flex;align-items:center;justify-content:center;height:128px;background:#fff;border-bottom:1px solid var(--line);padding:18px;overflow:hidden}
.il-tile img{max-height:92px;max-width:82%;object-fit:contain}
.il-ph{font-family:"Manrope",system-ui,sans-serif;font-weight:700;font-size:2.2rem;color:var(--line)}
.t-institutions .ac .ak{padding:12px 14px 0;font-family:"Archivo",system-ui,sans-serif;font-size:.62rem;text-transform:uppercase;letter-spacing:.05em;color:var(--ink2)}
.t-institutions .ac h3{padding:2px 14px 0;margin:0;font-size:1rem;line-height:1.25}
.t-institutions .ac .al{padding:4px 14px 16px;font-family:"Archivo",system-ui,sans-serif;font-size:.66rem;color:var(--ink2)}

/* Institution-Einzelseite: Logo rechts vom Namen, Projekte rechts runter (oder horizontal) */
.t-institution h1.title{font-family:"Manrope",system-ui,sans-serif;font-weight:800;font-size:clamp(1.7rem,4vw,3rem);line-height:.98;letter-spacing:-.01em;margin:0}
.ihkick{margin-bottom:2px}
.insthead{display:flex;align-items:flex-end;justify-content:flex-start;gap:18px;flex-wrap:wrap;margin:0}
.insthead h1.title{margin:0}
.insthead .instlogo{flex:0 0 auto;display:block;margin:0;padding:0;border:0;background:none;max-width:200px}
.insthead .instlogo img{max-height:58px;width:auto;display:block}
.ihbyline{margin-top:8px}
.insttwo{display:grid;grid-template-columns:1fr 300px;gap:38px;margin-top:22px;align-items:start}
.instside .sech{margin-top:0}
.sidecard{display:flex;gap:12px;align-items:center;text-decoration:none;color:var(--ink);padding:8px 0;border-bottom:1px solid var(--line)}
.sidecard:hover .sc-t{color:var(--red)}
.sc-ph{flex:0 0 auto;width:74px;height:56px;background:#eee;border-radius:4px;overflow:hidden;display:block}
.sc-ph img{width:100%;height:100%;object-fit:cover}
.sc-t{font-size:.9rem;line-height:1.3}
.sc-y{color:var(--ink2);font-size:.8rem}
@media(max-width:760px){.insttwo{grid-template-columns:1fr}.insthead{flex-direction:column-reverse;align-items:flex-start}.insthead .instlogo{max-width:200px}}

/* Ausstellungs-Galerie: Masonry + Lightbox */
.galmason{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:12px;align-items:start}
@media(max-width:900px){.galmason{grid-template-columns:repeat(3,1fr)}}
@media(max-width:560px){.galmason{grid-template-columns:repeat(2,1fr)}}
.galtile{margin:0;cursor:zoom-in;background:transparent}  /* SE3: kein weißer Kasten hinter Bild+Text */
.galmason-justified{display:flex;flex-wrap:wrap;gap:10px 10px;margin-top:12px;align-items:flex-start}
.galmason-justified .galtile{margin:0}
.galmason-justified .galtile img{width:100%;aspect-ratio:auto;object-fit:cover;border-radius:4px;display:block;background:#e7e4dd}
@media(max-width:560px){.galmason-justified{display:grid;grid-template-columns:repeat(2,1fr);align-items:start}.galmason-justified .galtile{width:auto!important}.galmason-justified .galtile img{height:auto!important;aspect-ratio:3/2}}
.galtile img{width:100%;aspect-ratio:3/2;object-fit:cover;display:block;border-radius:4px}
.galtile figcaption{font-family:"Archivo",system-ui,sans-serif;font-size:.68rem;line-height:1.4;color:var(--ink2);padding:6px 2px 0}
.galtile figcaption a{color:var(--ink);border-bottom:1px solid rgba(198,40,40,.5)}
.lightbox{position:fixed;inset:0;z-index:1000;background:rgba(16,14,12,.94);display:flex;align-items:center;justify-content:center;flex-direction:column;padding:32px;cursor:zoom-out}
.lightbox .lb-img{max-width:92vw;max-height:82vh;object-fit:contain;border-radius:4px}
.lightbox .lb-cap{color:#fff;font-family:"Archivo",system-ui,sans-serif;font-size:.8rem;margin-top:16px;max-width:80ch;text-align:center;line-height:1.5}
.lightbox .lb-close{position:absolute;top:18px;right:24px;background:none;border:none;color:#fff;font-size:2.2rem;line-height:1;cursor:pointer;opacity:.8}
.lightbox .lb-close:hover{opacity:1}

/* Lightbox: Vor/Zurück-Pfeile */
.lightbox .lb-prev,.lightbox .lb-next{position:absolute;top:50%;transform:translateY(-50%);background:none;border:none;color:#fff;font-size:3rem;line-height:1;cursor:pointer;opacity:.7;padding:12px 20px;user-select:none}
.lightbox .lb-prev{left:8px}.lightbox .lb-next{right:8px}
.lightbox .lb-prev:hover,.lightbox .lb-next:hover{opacity:1}
.lightbox .lb-img{cursor:pointer}
@media(max-width:560px){.lightbox .lb-prev,.lightbox .lb-next{font-size:2.2rem;padding:8px 12px}}

.pr .gueststud{opacity:.6;display:block;margin-top:-4px}

.feat .feat-all{display:inline-block;margin-top:10px;font-family:"Archivo",system-ui,sans-serif;font-size:.8rem;color:var(--red)}
/* People: obere Leiste (Rollen-Pills + Jahre) sticky */
.t-people .pfilters{position:sticky;top:var(--headh,63px);z-index:40;background:var(--bg);margin:0 0 22px;padding:8px 0 10px;border-bottom:1px solid var(--line)}
.t-people .pfilters .jump{margin:0 0 8px}
.t-people .pfilters .yearchips{margin:0}
.t-people .rh{scroll-margin-top:calc(var(--headh,63px) + var(--pfh,92px) + 12px)}
@media(max-width:1040px){.t-people .pfilters{position:static}}
.fi-gal figcaption .imgcr{opacity:.82}

.stories .sh-row{display:flex;justify-content:space-between;align-items:baseline;gap:20px;flex-wrap:wrap}
.stories .sh-row .feat-all{margin:0;white-space:nowrap;color:var(--red);text-decoration:none}

/* Personen-Foto-Galerien (Referenz auf Projektseiten) */
.photolist{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:18px;margin:16px 0 0}
.photolist .photocard{display:block;border:1px solid var(--line);background:#fff;text-decoration:none;color:inherit;overflow:hidden;transition:border-color .12s,box-shadow .12s}
.photolist .photocard:hover{border-color:var(--red);box-shadow:0 6px 20px rgba(0,0,0,.06)}
.photolist .phimg{display:block;height:155px;background:#e7e4dd center/cover no-repeat}
.photolist .phtx{display:block;padding:12px 14px 14px}
.photolist .pht{display:block;font-family:"Manrope",system-ui,sans-serif;font-weight:700;font-size:.95rem;line-height:1.18;color:var(--ink)}
.photolist .photocard:hover .pht{color:var(--red)}
.photolist .phm{display:block;font-family:"Archivo",system-ui,sans-serif;font-size:.66rem;letter-spacing:.02em;color:var(--ink2);margin-top:6px}

/* Personenseite: zwei Spalten – Projects links, Photos rechts */
.person-body.has-side{margin-top:36px}
.person-body.has-side:after{content:"";display:table;clear:both}
.person-body.has-side .person-side{float:right;width:300px;margin:73px 0 2rem 46px;position:relative;z-index:2}
.person-body.has-side .person-main{position:relative;z-index:1}
.person-body.has-side .sech{margin-top:0}
.person-side .photolist{grid-template-columns:1fr;gap:16px;margin-top:65px}
.person-side .photocard .phimg{height:170px}
.lb .lb-cap{text-align:center;color:rgba(255,255,255,.92);font-family:"Archivo",system-ui,sans-serif;font-size:.72rem;letter-spacing:.05em;margin:12px 0 0;padding:0 20px}
@media(max-width:900px){.person-body.has-side .person-side{float:none;width:auto;margin:30px 0 0}}

/* Foto-Galerie Lightbox */
.photolist .photocard{cursor:pointer}
.photolist .phlink{color:var(--ink2);border-bottom:1px dotted rgba(26,26,26,.4);text-decoration:none}
.photolist .phlink:hover{color:var(--red);border-bottom-color:var(--red)}
.lb{position:fixed;inset:0;background:rgba(20,18,15,.93);z-index:200;display:flex;align-items:center;justify-content:center}
.lb[hidden]{display:none}
.lb .lb-fig{margin:0;display:flex;flex-direction:column;align-items:center;max-width:90vw}
.lb .lb-title{color:rgba(255,255,255,.95);font-family:"Archivo",system-ui,sans-serif;font-weight:500;font-size:.9rem;letter-spacing:.03em;line-height:1.3;text-align:center;margin:0 0 12px;max-width:70ch;padding:0 20px}
.lb .lb-img{max-width:90vw;max-height:80vh;object-fit:contain;box-shadow:0 12px 44px rgba(0,0,0,.45);background:#000}
.lb .lb-x{position:absolute;top:14px;right:20px;background:none;border:0;color:#fff;font-size:2.1rem;line-height:1;cursor:pointer;opacity:.85}
.lb .lb-x:hover{opacity:1;color:var(--red)}
.lb .lb-prev,.lb .lb-next{position:absolute;top:50%;transform:translateY(-50%);background:none;border:0;color:#fff;font-size:3rem;line-height:1;cursor:pointer;padding:0 22px;opacity:.75}
.lb .lb-prev{left:6px}.lb .lb-next{right:6px}
.lb .lb-prev:hover,.lb .lb-next:hover{opacity:1;color:var(--red)}
.lb .lb-count{text-align:center;color:rgba(255,255,255,.6);font-family:"Archivo",system-ui,sans-serif;font-size:.66rem;letter-spacing:.12em;margin:5px 0 0}
@media(max-width:640px){.lb .lb-prev,.lb .lb-next{font-size:2.2rem;padding:0 10px}}

/* portrait poster floats, text wraps */
.poster--portrait{float:right;max-width:396px;margin:4px 0 14px 30px}
.poster--portrait img{width:100%;height:auto;display:block;background:#e7e4dd}
.poster--portrait .pcap{margin:6px 0 0}
@media(max-width:640px){.poster--portrait{float:none;max-width:100%;margin:0 0 16px}}
.poster--pillar{margin:28px 0 6px}
.poster--pillar .pillbg{position:relative;display:flex;align-items:center;justify-content:center;background:var(--bg);height:min(64vh,560px);overflow:hidden}
.poster--pillar .pillbg::before{content:"";position:absolute;inset:-30px;background-image:var(--pill);background-size:cover;background-position:center;filter:blur(32px) saturate(1.05);opacity:.4;z-index:0}
.poster--pillar .pillbg::after{content:"";position:absolute;inset:0;background:rgba(251,250,247,.32);z-index:0}
.poster--pillar .pillbg img{position:relative;z-index:1;height:100%;width:auto;max-width:100%;object-fit:contain;display:block;background:transparent}
.poster--pillar .pcap{margin:6px 0 0}
@media(max-width:640px){.poster--pillar .pillbg{height:auto;padding:0}.poster--pillar .pillbg img{width:auto;height:auto;max-height:70vh;max-width:100%}}
/* linked person galleries on event/work pages */
.photolist-linked{margin-top:12px}
.jrole{color:var(--red);font-weight:600}
.pre-layout{opacity:0}
.laid-out{opacity:1;transition:opacity .18s ease}

.phead-person .pcol{display:flex;flex-direction:column;align-items:center;gap:9px}
.phead-person .pcredit{font-family:"Archivo",system-ui,sans-serif;font-size:.62rem;letter-spacing:.02em;color:var(--ink2);text-align:center;line-height:1.4;max-width:210px}

.redrule{border-bottom:2px solid var(--red);padding-bottom:8px;position:relative}
.redprose h2{border-bottom-color:var(--red);position:relative}
.redprose p.rolesub{margin:2px 0 18px;color:var(--ink2);font-size:1.02rem;line-height:1.5;max-width:74ch}
.redprose p.rolesub a{color:var(--ink)}
.redhead h1{border-bottom:2px solid var(--red);padding-bottom:.28em;position:relative}

/* Handy: schmalerer Seitenrand für die Inhaltsspalte */
@media(max-width:640px){
  .wrap,.hin,.recent,.stories,.tiles,.fin,.onnow-b{padding-left:22px;padding-right:22px}
}

/* Handy: kein horizontales Wegschieben (Gummi-Scroll) auf allen Seiten */
@media(max-width:1040px){html,body{overflow-x:clip}}
/* lange Links/URLs im Fließtext umbrechen */
.prose,.t-prose,.body,.mpbody,.wbody{overflow-wrap:break-word;word-break:break-word}
.prose a,.body a,.mpbody a,.wbody a{overflow-wrap:anywhere}
.prose table,.body table{display:block;max-width:100%;overflow-x:auto}
.prose pre,.body pre{max-width:100%;overflow-x:auto}

/* Home-Hero: Apply am Handy prominent (voll breit, rot); Desktop nutzt den Header-Button */
.cta .apply-hero{display:none}
@media(max-width:1040px){
  .cta .apply-hero{display:block;flex-basis:100%;text-align:center;background:var(--red);color:#fff;font-weight:700;border-radius:999px}
  .cta .apply-hero:hover{background:#b3121a}
}
.hrmark{position:absolute;bottom:-1px;transform:translate(-50%,50%);background:var(--bg);color:var(--red);font-family:"Archivo",system-ui,sans-serif;font-size:.95rem;line-height:1;padding:0 6px;pointer-events:none;user-select:none}
.jump a{flex:1 1 auto;text-align:center}

/* ---------- Thesis pill (Master thesis link: Phaidra / local PDF) ---------- */
.tpill{display:inline-flex;align-items:center;gap:8px;font-family:"Archivo",sans-serif;font-weight:600;font-size:.86rem;letter-spacing:.01em;line-height:1;padding:8px 15px;border:1.5px solid var(--ink);border-radius:999px;color:var(--ink);background:transparent;text-decoration:none;vertical-align:middle;transition:border-color .13s,color .13s,background .13s}
.tpill:hover{border-color:var(--red);color:var(--red)}
.tpill .tpill-ic{width:17px;height:17px;flex:none;display:block}
.tpill--local .tpill-ic{width:15px;height:15px}
.tpill .tpill-arr{flex:none;margin-left:1px}
.tpill span{white-space:nowrap}
/* Master-thesis-PDF-Pill oben rechts auf dem Hero-Bild (Ivonne) */
.lead-fig{position:relative}
.byline-row{display:flex;align-items:center;gap:8px 20px;flex-wrap:wrap;margin:20px 0 0}
.byline-row .byline{margin:0}
.byline-row .tpill{flex:none;margin-left:auto}
.t-work.has-leadcap .lead-fig,.t-work.has-leadcap .byline-row{max-width:min(100%,calc(66vh*var(--leadar,1)))}
@media(max-width:640px){.byline-row .tpill{font-size:.8rem;padding:7px 13px}}
.pmeta .tpill{margin-top:14px}
.wtitle-row{display:flex;align-items:center;gap:16px;flex-wrap:wrap}

/* --- Ivonne Font-Freeze 26.9.2026: Titel Manrope +4%, Body-Grau #191919 --- */
.exp,.fb,.sech,.sh,.hero h1,.fc h3,.t-list h1,.t-work h1.title,.more .h,.t-activity h1,.t-person h1,.rh,.prose h1,.prose h2,.prose h3,.tile h3,.onnow-b h2,.wmore .h,.moreextra .h,.t-prose .phead h1,.curric h2,.curric .sem h3,.contactgrid h2,.t-institution h1.title,.jyear,.jcard .jt,.jbig .jt,.flowhead,.flowsub,.moreblockx .h,.photolist .pht,.il-ph,.portrait .mono-ph,.pimg .mono-ph,.slab h1,.slab .mihead strong{zoom:1.04}
body{color:#191919}

/* --- Ivonne G1/G2/H1 26.9.2026: einheitlicher Textlink-Stil (rot, Caps, unterstrichen) + Hover --- */
/* H1: 'Read the portraits' wie die anderen Textlinks */
.feat .feat-all,.stories .sh-row .feat-all{font-size:.68rem;text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid var(--red);padding-bottom:2px;font-weight:600}
/* G2: Back-Links (z. B. Curriculum) im selben Stil */
.backlink a{font-family:"Archivo",system-ui,sans-serif;font-size:.68rem;text-transform:uppercase;letter-spacing:.05em;color:var(--red);border-bottom:2px solid var(--red);padding-bottom:2px;text-decoration:none;display:inline-block}
/* G1: Hover-Feedback auf Sekundaer-Textlinks (rot -> schwarz) */
.eyebrow a:hover,.backlink a:hover,.feat .feat-all:hover,.stories .sh-row .feat-all:hover{color:var(--ink);border-color:var(--ink)}
.fc:hover .go{color:var(--ink);border-color:var(--ink)}
/* G1: Hover auf Hero-Hauptbuttons */
.cta .p:hover{background:#ece8e0}
.cta .s:hover{background:rgba(255,255,255,.14);border-color:#fff}


/* --- Ivonne P1/P3 26.9.2026: Timeline-Hintergrund, Roundtable-Zeilen, Master-Portrait-Link --- */
/* P1: Timeline-Sektion getoent (#E8E4DA), beginnt direkt unter der schwarzen Titel-Linie; Karten bleiben weiss */
.jtl{margin-top:0;padding:22px 20px 26px 34px}
.jtl:before{top:32px;bottom:26px}
/* P1: Roundtable-Zeilen zur besseren Abhebung heller */
.jmini-rt{background:#f3f1ea}
.jmini-rt:hover{background:#ece7dc}
/* P3: Master-Portrait-Link oben in der Photo-Gallery-Spalte */
.mp-side-link{display:block;text-decoration:none;color:inherit;border:2px solid var(--red);background:#fff;padding:14px 16px;margin:0 0 22px;transition:box-shadow .12s}
.mp-side-link:hover{box-shadow:0 6px 20px rgba(0,0,0,.06)}
.mp-side-link .mpsl-k{display:block;font-family:"Archivo",system-ui,sans-serif;font-size:.62rem;text-transform:uppercase;letter-spacing:.08em;color:var(--red);margin-bottom:5px}
.mp-side-link .mpsl-t{display:block;font-family:"Manrope",system-ui,sans-serif;font-weight:700;font-size:1.05rem;line-height:1.15;color:var(--ink);margin-bottom:8px}
.mp-side-link:hover .mpsl-t{color:var(--red)}
.mp-side-link .mpsl-go{display:inline-block;font-family:"Archivo",system-ui,sans-serif;font-size:.64rem;text-transform:uppercase;letter-spacing:.05em;color:var(--red);border-bottom:2px solid var(--red);padding-bottom:1px}
/* Wenn MP-Link oben steht, die grosse Ausrichtungs-Luecke der Galerie reduzieren */
.person-side .mp-side-link ~ .sech{margin-top:0}
.person-side .mp-side-link ~ .photolist{margin-top:16px}

/* --- Ivonne IN2 26.9.2026: Projekt-Item Hover (Titel rot beim Hover uebers ganze Item) --- */
.t-institution .card{cursor:pointer}
.t-institution .card:hover .t{color:var(--red)}  /* IN2: Karten-Hover */
/* IN2 Related works: Bild- oder Titel-Hover faerbt Titel rot, Kuenstlername bleibt eigener Link */
.t-activity .card .ph:hover ~ .tl2 .t,.t-activity .card .tl2:hover .t{color:var(--red)}

/* --- Ivonne MO1-3 26.9.2026: Mobile Topbar-Apply, Menu-Slide, Hero-Credit --- */
.apply-top{display:none}
header.hdr-hidden{transform:translateY(-100%)}
.cta .apply-hero{display:none}   /* MO1: Apply nicht mehr im Hero */
@media(max-width:1040px){
  .apply-top{display:inline-flex;margin-left:auto;padding:9px 15px;font-size:.72rem;font-family:"Archivo",system-ui,sans-serif;font-weight:600;text-transform:uppercase;letter-spacing:.06em}
  .burger{margin-left:10px}
  .navtoggle:checked ~ .navcta .apply{display:none}   /* MO1: Apply nicht mehr im Menue */
  .navtoggle:checked ~ .navcta{justify-content:flex-end}
  .navtoggle:checked ~ .navcta .mp{margin-left:auto}  /* MO1: Master Portraits nach rechts */
}
@media(max-width:640px){ .herocap{padding-right:16px} }   /* MO3: Abstand Credit zum rechten Rand halbiert */

/* --- Ivonne AD1 26.9.2026: Admissions 3-Phasen als Timeline + Highlight --- */
.adm-timeline{position:relative;padding-left:34px;margin:26px 0 10px}
.adm-timeline:before{content:"";position:absolute;left:8px;top:14px;bottom:14px;width:2px;background:linear-gradient(to bottom,var(--red),rgba(226,35,26,.35))}
.adm-timeline .ph{position:relative;font-family:"Manrope",system-ui,sans-serif;font-weight:700;font-size:1.15rem;color:var(--ink);margin:30px 0 4px;text-transform:none;letter-spacing:0}
.adm-timeline .ph:first-child{margin-top:4px}
.adm-timeline .ph:before{content:"";position:absolute;left:-34px;top:.2em;width:16px;height:16px;border-radius:50%;background:#fff;border:3px solid var(--red)}
.adm-pass{background:#E8E4DA;border-left:3px solid var(--red);padding:16px 22px;margin:26px 0}
.adm-pass h3{margin:0 0 6px;font-family:"Manrope",system-ui,sans-serif;font-weight:700}
.adm-pass p{margin:0}

.agrid-more{height:1px;grid-column:1/-1}

/* P23: More-from als eigener Block, klar getrennt von der Bild-Galerie */
.morefrom{margin-top:48px;padding-top:26px;border-top:1px solid var(--line)}
.morefrom .flowhead{margin-top:0}
.moregrid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:14px}
@media(max-width:820px){.moregrid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.moregrid{grid-template-columns:1fr}}

/* P11: Timeline-Band, volle Viewport-Breite hinter der Timeline */
body{position:relative}
/* #tlband removed: timeline now uses .tlsec full-bleed background */


/* P14: Admissions-Timeline im People-Stil */
.t-admission .admission-body>.prose{max-width:74ch}
.t-admission .asec{margin-top:56px}
.t-admission .alead{max-width:74ch;margin:0 0 24px;font-size:1.05rem;line-height:1.55}
.t-admission .jyear.aph{font-size:1.3rem}
.adm-jtl{margin-top:10px}
.acard{background:#fff;border:1px solid var(--line);margin:0}
.acard .ain{padding:22px 24px 20px}
.acard .ad{font-family:"Archivo",system-ui,sans-serif;font-size:.72rem;text-transform:uppercase;letter-spacing:.04em;color:var(--red);font-weight:700}
.acard .at{margin:6px 0 12px;font-family:"Manrope",system-ui,sans-serif;font-size:1.35rem;font-weight:600;line-height:1.15;color:var(--ink)}
.acard p,.acard li{font-size:.98rem;line-height:1.55;color:#2c2a27}
.acard p{margin:0 0 .8em}
.acard p:last-child{margin:0}
.acard a{color:var(--red);text-decoration:none;border-bottom:1px solid rgba(226,35,26,.4)}
.anotice{display:flex;gap:12px;align-items:baseline;padding:13px 24px 14px;background:#f3f1ea;border:1px solid var(--line);border-top:0;margin:0 0 14px;font-size:.95rem;line-height:1.5}
.anotice::before{content:"\2192";color:var(--red);flex:0 0 auto}
.anotice .when{flex:0 0 auto;font-family:"Archivo",system-ui,sans-serif;font-size:.72rem;text-transform:uppercase;letter-spacing:.03em;font-weight:700;color:var(--red);padding-top:2px}
.anotice p{margin:0 0 .4em}
.anotice p:last-child{margin:0}
.ahl{background:#fff;border:2px solid var(--red);padding:26px;margin:22px 0 42px}
.ahl .big{margin:0;font-family:"Manrope",system-ui,sans-serif;font-size:clamp(1.4rem,3vw,1.7rem);font-weight:600;line-height:1.18}
.ahl .sub{margin:12px 0 0;color:var(--red);font-size:1.05rem}
.t-admission .prose.after{margin-top:40px}
/* P1b: 'Next Entrance Exam' voller Trenner in Rot, gleiche Breite wie 'Application Procedure' */
.asecred{border-bottom-color:var(--red)}
/* Admission: Trenner, Lead, Box und Prosa buendig mit den Phasen-Karten (Schiene im linken Gutter) */
/* P2: 'Their path'-Trenner ueber beide Spalten (nicht vom Float verkuerzt) */
.person-body.has-side .person-main>.sech{display:block;position:relative}
.person-body.has-side .person-main>.sech>.n{position:absolute;right:0;bottom:8px}
@media(max-width:760px){.anotice{flex-direction:column;gap:4px;padding:12px 16px}.anotice::before{display:none}.acard .ain{padding:18px 16px}}

/* Ivonne review 4: Home Stories mobil */
@media(max-width:640px){.stories .sh{line-height:1.7rem}.stories .sh-row .feat-all{margin-bottom:1rem}}

/* ============================================================
   Ivonne review 3/4: Timeline as its own section (person + admission)
   Replaces the JS-positioned #tlband. Full-bleed background via
   box-shadow so it always covers the exact section height — no
   measurement lag, no white gap, extends cleanly to the footer.
   ============================================================ */
:root{--band:#e8e4da;--mini:#f3f1ea;--tl-gap:40px}
@media(max-width:760px){:root{--tl-gap:32px}}
.sech:has(+ .tlsec){margin-bottom:0}
.tlsec{position:relative;isolation:isolate;background:var(--band);box-shadow:0 0 0 100vmax var(--band);clip-path:inset(0 -100vmax);padding:var(--tl-gap) 0 40px;margin-top:0}
.tlsec>*{position:relative;z-index:1}
.tlsec > :first-child,.tlsec .person-main > :first-child,.tlsec .jtl > .jyear:first-child,.tlsec .person-side > :first-child{margin-top:0}
.tlsec .jtl,.tlsec .person-body,.tlsec .person-main{background:none;box-shadow:none}
.sech.tlhead{margin:56px 0 0}
body.t-person .wrap{padding-bottom:0}
body.t-person .foot{margin-top:0}
body.t-person .tlsec{padding-bottom:72px}
.t-admission .admission-body>.prose.admafter{margin-top:34px}

/* Ivonne 4: single-row, horizontally-scrollable filter bars with right-edge fade
   (People year filters + Projects main filters). Fade hides once scrolled to the end. */
.filterscroll{position:relative}
.filterscroll>.chips{flex-wrap:nowrap;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-ms-overflow-style:none;margin:4px 0 26px;padding-bottom:2px}
.filterscroll>.chips::-webkit-scrollbar{display:none}
.filterscroll>.chips>*{flex:0 0 auto}
.filterscroll:after{content:"";position:absolute;top:0;right:0;bottom:0;width:46px;background:linear-gradient(to right,rgba(251,250,247,0),var(--bg));pointer-events:none;opacity:1;transition:opacity .18s}
.filterscroll.at-end:after{opacity:0}
.t-people .pfilters .filterscroll{margin:0}
.t-people .pfilters .filterscroll>.chips.yearchips{margin:0}

/* Ivonne 4: Home mobile only — clamp Selected-works headlines to 3 lines with ellipsis,
   and hide the technique pills (full title stays in the HTML). */
@media(max-width:640px){
  body.t-home .recent .card .t{display:-webkit-box;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
  body.t-home .recent .card .ph .pill{display:none}
}

/* Kontakt-Zeile unter Portrait (Parität zur alten Seite, dezent) */
.pcontact{margin-top:.35em;font-size:.8rem;line-height:1.45;color:#767672}
.pcontact p{margin:0}
.pcontact a{color:inherit;text-decoration:underline}
.pcontact a:hover{color:var(--red)}
