@import url('https://fonts.googleapis.com/css2?family=Montserrat:wght@300;400;500;600;700&display=swap');:root{--black:#0a0a0a;--cream:#f7f6f3;--sand:#d8d2c9;--red:#d32f2f;--gray:#6b6b6b}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--black);font-family:Montserrat,Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}img{max-width:100%;display:block}.skip{position:absolute;left:-9999px}.skip:focus{left:10px;top:10px;background:white;color:black;z-index:50;padding:10px}.nav{position:absolute;inset:0 0 auto;height:100px;padding:20px clamp(22px,5vw,94px);display:flex;align-items:center;justify-content:space-between;z-index:20;color:white;border-bottom:1px solid #ffffff24}.logo img{width:171px;height:auto;filter:brightness(0) invert(1)}.links{display:flex;gap:34px}.links a,.mobile-links a{font-size:10px;letter-spacing:.15em;text-transform:uppercase;transition:color .2s}.links a:hover{color:#eee}.nav-toggle{display:none;border:0;background:transparent;width:38px;height:28px;padding:4px}.nav-toggle span{display:block;background:white;height:1px;margin:7px 0}.mobile-links{position:absolute;z-index:30;top:82px;right:0;left:0;background:#0a0a0a;padding:20px 6vw;color:white}.mobile-links:not([hidden]){display:grid;gap:24px}.hero{min-height:790px;height:100vh;max-height:1100px;position:relative;overflow:hidden;background:#0b0b0b;color:white}.hero-img{position:absolute;inset:0;background:url('assets/img/Hero.jpg') center 48%/cover no-repeat;transform:scale(1.035);filter:brightness(.80)}.hero-tint{position:absolute;inset:0;background:linear-gradient(90deg,#070707ec 0%,#080808af 29%,#05050539 60%,#05050545 100%),linear-gradient(0deg,#0707079e,transparent 35%)}.hero-content{position:absolute;left:clamp(24px,9.5vw,165px);top:50%;transform:translateY(-43%);z-index:2}.eyebrow{font-size:10px;font-weight:500;letter-spacing:.29em;line-height:2;text-transform:uppercase}.eyebrow.light{color:#dedede}.hero h1{font-size:clamp(49px,7vw,118px);font-weight:500;letter-spacing:.055em;line-height:1.09;margin:28px 0 22px}.line,.rule{display:block;background:#fff;width:36px;height:2px}.hero-content p{font-size:12px;line-height:2;letter-spacing:.06em;margin:24px 0 30px}.red-link{display:inline-flex;gap:22px;align-items:center;justify-content:space-between;min-width:171px;background:var(--red);padding:16px 22px;color:white;font-size:10px;font-weight:600;letter-spacing:.14em;transition:background .2s}.red-link:hover{background:#a81919}.hero-footer{position:absolute;bottom:37px;left:clamp(24px,5vw,94px);right:clamp(24px,5vw,94px);display:flex;justify-content:space-between;gap:15px;font-size:9px;letter-spacing:.25em}.section{padding:115px clamp(22px,5vw,94px)}.cream{background:var(--cream)}.dark{background:#101010;color:white}.section-head{display:grid;grid-template-columns:1fr auto;gap:22px;align-items:end;margin:0 0 50px}.section-head .eyebrow{grid-column:1/-1}.section-head h2,.contact h2{font-size:clamp(34px,4.5vw,70px);font-weight:500;letter-spacing:-.04em;line-height:1.13;margin:0}.thin{font-weight:300}.section-head p,.contact p{color:#575757;max-width:360px;font-size:12px;line-height:2;margin:0}.project-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:11px}.project{height:410px;position:relative;overflow:hidden;background:#252525;color:white}.project img{width:100%;height:100%;object-fit:cover;filter:saturate(.65);transition:transform .5s}.project:hover img{transform:scale(1.04)}.shade{position:absolute;inset:0;background:linear-gradient(0deg,#000a,transparent 65%)}.project-title{position:absolute;bottom:28px;left:27px;right:16px}.project-title span{font-size:9px;letter-spacing:.22em}.project-title h3{font-size:clamp(22px,2.4vw,38px);font-weight:500;margin:12px 0}.project-title p{font-size:10px;letter-spacing:.05em}.editorial-note{font-size:10px!important;color:#777!important;line-height:1.8!important;margin-top:18px!important}.interlude{min-height:550px;display:grid;grid-template-columns:1.45fr 1fr;background:#111;color:#fff}.interlude-image{background:url('assets/img/hero.webp') center/cover;filter:grayscale(.2)}.interlude-words{padding:clamp(40px,7vw,105px) clamp(25px,6vw,90px);background:#101010}.interlude h2{font-size:clamp(30px,3.6vw,56px);font-weight:500;letter-spacing:.07em;line-height:1.3;margin:55px 0 20px}.interlude-words p{font-size:12px;letter-spacing:.26em;line-height:2.1;margin-top:25px}.photo-section{padding-bottom:105px}.filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:22px}.filters button{border:1px solid #cac9c6;background:transparent;cursor:pointer;color:#5c5c5c;padding:12px 17px;font-size:9px;letter-spacing:.17em}.filters button.active,.filters button:hover{background:#101010;color:#fff;border-color:#101010}.photo-grid{display:grid;grid-template-columns:1.35fr .8fr .8fr;grid-template-rows:235px 235px;gap:9px}.photo{position:relative;overflow:hidden;border:none;padding:0;cursor:zoom-in;background:#141414;color:#fff;text-align:left}.photo[hidden]{display:none}.photo img{width:100%;height:100%;object-fit:cover;filter:saturate(.68);transition:transform .35s}.photo:hover img{transform:scale(1.05)}.photo:after{content:"";position:absolute;inset:60% 0 0;background:linear-gradient(transparent,#0008)}.photo span{position:absolute;bottom:17px;left:18px;font-size:9px;letter-spacing:.2em;z-index:1}.p1{grid-row:1/3}.p4{grid-column:2/3}.p5{grid-column:3/4}.about{display:grid;grid-template-columns:1fr 1fr;min-height:580px}.about-photo img{width:100%;height:100%;object-fit:cover}.about-copy{padding:clamp(34px,5.8vw,100px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.about-logo{width:clamp(180px,23vw,285px);margin:30px 0 50px}.about-copy h2{font-size:clamp(27px,3.2vw,49px);font-weight:500;letter-spacing:.035em;line-height:1.22;margin:0 0 25px}.about-copy p{max-width:450px;color:#c0c0c0;line-height:2;font-size:12px}.underlink{font-size:10px;letter-spacing:.15em;margin-top:35px;border-bottom:1px solid #ddd;padding-bottom:8px}.contact{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:end}.contact>div:nth-child(2){max-width:410px}.contact .red-link{margin-top:30px}.footer{padding:65px clamp(22px,5vw,94px) 25px;background:#0a0a0a;color:white}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-bottom:76px}.footer-top img{width:240px}.footer-top p{font-size:10px;letter-spacing:.23em;line-height:2.2;color:#bbb}.footer-bottom{padding:26px 0;border-top:1px solid #333;display:flex;justify-content:space-between;gap:14px;font-size:9px;letter-spacing:.2em}.legal-note{font-size:10px;color:#8e8e8e}.lightbox{border:0;padding:28px;background:#090909;color:white;max-width:min(90vw,1040px);max-height:90vh}.lightbox::backdrop{background:#000c}.lightbox img{max-height:73vh;object-fit:contain;margin:auto}.lightbox p{text-align:center;font-size:11px;letter-spacing:.15em}.lightbox-close{position:absolute;top:0;right:0;color:white;background:#222;border:0;padding:12px;cursor:pointer}@media(max-width:900px){.hero{min-height:670px}.project-grid{grid-template-columns:1fr 1fr}.project.big{grid-column:1/-1}.project{height:350px}.section-head{grid-template-columns:1fr}.interlude{grid-template-columns:1fr 1fr}.photo-grid{grid-template-columns:1fr 1fr;grid-template-rows:repeat(3,215px)}.p1{grid-row:span 2}.p4,.p5{grid-column:auto}.about-copy{padding:40px}}@media(max-width:620px){.nav{height:78px;padding:14px 22px}.nav .logo img{width:138px}.links{display:none}.nav-toggle{display:block}.hero{height:88svh;min-height:590px}.hero-img{background-position:56% center}.hero-tint{background:linear-gradient(90deg,#000e,#0007 60%,#0004),linear-gradient(0deg,#0008,transparent 45%)}.hero-content{left:25px;right:20px}.hero h1{font-size:clamp(37px,10vw,60px);letter-spacing:.02em}.hero-footer{left:25px;right:25px;font-size:8px}.hero-footer span:nth-child(2){display:none}.section{padding:75px 22px}.section-head{margin-bottom:31px}.project-grid{grid-template-columns:1fr}.project.big{grid-column:auto}.project{height:315px}.interlude{grid-template-columns:1fr}.interlude-image{min-height:280px}.interlude-words{padding:56px 26px}.interlude h2{margin:24px 0}.photo-grid{grid-template-columns:1fr 1fr;grid-template-rows:repeat(3,155px)}.p1{grid-row:span 2}.photo span{font-size:7px}.about{grid-template-columns:1fr}.about-photo{max-height:360px;overflow:hidden}.about-copy{padding:70px 24px}.contact{grid-template-columns:1fr}.footer-top{align-items:flex-start;flex-direction:column}.footer-top img{width:200px}.footer-bottom{flex-wrap:wrap;font-size:8px;line-height:2}.eyebrow{font-size:9px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* MAHLICH Logo: das schwarze Original-SVG auf dunklem Hintergrund weiss darstellen. */
.logo-monochrome { filter: brightness(0) invert(1); }

/* MAHLICH SVG: weiß auf dunklen Flächen, auch im Header. */
.nav .logo img.logo-monochrome, .about-logo.logo-monochrome, .footer img.logo-monochrome { filter: brightness(0) invert(1); }

/* MAHLICH / Eventarchiv: Fortführung des bestehenden Brand Kits */
.event-home-preview{display:grid;grid-template-columns:1.25fr 1fr;background:#111;color:#fff;min-height:450px}.event-home-image img{height:100%;width:100%;object-fit:cover;filter:saturate(.58)}.event-home-copy{padding:clamp(35px,5vw,85px);display:flex;flex-direction:column;align-items:flex-start;justify-content:center}.event-home-copy h3{font-size:clamp(32px,4vw,59px);font-weight:500;line-height:1.15;margin:20px 0}.event-home-copy>p{font-size:12px;line-height:2;color:#c0c0c0;max-width:360px}.event-home-copy .red-link{margin-top:25px}.gallery-page .gallery-nav{background:#0a0a0a;position:relative}.gallery-page .links .current{border-bottom:1px solid #d32f2f;padding-bottom:6px}.archive-hero{background:#101010;color:white;min-height:420px;padding:65px clamp(22px,5vw,94px) 75px}.archive-kicker{display:flex;justify-content:space-between;align-items:center;gap:22px}.archive-meta{font-size:9px;letter-spacing:.24em;color:#9c9c9c}.archive-hero h1{font-weight:500;letter-spacing:.02em;font-size:clamp(57px,9vw,142px);line-height:.95;margin:48px 0 28px}.archive-hero h1 span{font-weight:300}.archive-hero p{font-size:12px;color:#bebebe;line-height:2;max-width:570px}.archive-body{min-height:45vh}.archive-toolbar{display:flex;justify-content:space-between;align-items:end;gap:32px;margin-bottom:45px}.archive-toolbar h2{font-size:clamp(32px,4vw,62px);font-weight:400;letter-spacing:-.04em;margin:16px 0 0}.archive-toolbar .filters{margin:0}.events-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.event-card{display:block;min-width:0}.event-cover{aspect-ratio:1.3;overflow:hidden;background:#181818;position:relative}.event-cover img{width:100%;height:100%;object-fit:cover;filter:saturate(.7);transition:transform .35s}.event-card:hover img{transform:scale(1.035)}.event-card-label{position:absolute;left:20px;bottom:20px;background:#0a0a0abb;color:white;padding:10px 12px;font-size:9px;letter-spacing:.17em}.event-card-bottom{padding:19px 2px 10px}.event-card h3{font-size:20px;font-weight:500;margin:0 0 12px}.event-card p{font-size:9px;letter-spacing:.11em;color:#777;margin:0;line-height:1.8}.archive-message{grid-column:1/-1;padding:32px 0;color:#777;font-size:12px;line-height:1.8}.event-detail-head{max-width:770px;margin-bottom:50px}.back-link{display:inline-block;font-size:10px;letter-spacing:.15em;border-bottom:1px solid #999;padding-bottom:10px;margin-bottom:56px}.event-detail-meta{font-size:10px;letter-spacing:.2em;color:#6b6b6b}.event-detail-head h2{font-size:clamp(39px,5vw,76px);font-weight:400;letter-spacing:-.04em;margin:17px 0 21px}.event-detail-head p{font-size:12px;line-height:2;color:#5c5c5c}.event-photos{columns:3 280px;column-gap:12px}.event-photo{display:block;width:100%;padding:0;border:0;background:#111;margin-bottom:12px;break-inside:avoid;cursor:zoom-in}.event-photo img{width:100%;height:auto;display:block}.event-photo:hover img{opacity:.85}.event-lightbox{background:#0a0a0a;color:#fff;border:0;padding:56px 64px 24px;max-width:96vw;max-height:96vh;overflow:visible}.event-lightbox::backdrop{background:rgba(0,0,0,.92)}.event-lightbox img{display:block;max-height:76vh;max-width:78vw;object-fit:contain}.event-lightbox p{text-align:center;letter-spacing:.2em;font-size:10px}.event-lightbox button{cursor:pointer}.event-lightbox .lightbox-close{position:absolute;top:10px;right:12px}.photo-arrow{position:absolute;top:50%;transform:translateY(-50%);background:#222;color:white;border:1px solid #444;padding:13px}.photo-arrow.prev{left:8px}.photo-arrow.next{right:8px}
@media(max-width:900px){.events-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.archive-toolbar{align-items:start;flex-direction:column}.event-home-preview{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.event-home-preview{grid-template-columns:1fr}.event-home-image{height:255px}.event-home-copy{padding:35px 26px 44px}.events-grid{grid-template-columns:1fr}.archive-hero{min-height:350px;padding:65px 22px}.archive-hero h1{margin-top:44px}.archive-meta{display:none}.event-lightbox{padding:49px 36px 22px}.event-lightbox img{max-width:78vw;max-height:73vh}.photo-arrow{padding:7px}.photo-arrow.prev{left:1px}.photo-arrow.next{right:1px}}

.archive-search{display:block;margin:20px 0 27px;max-width:540px;width:100%;padding:13px;border:1px solid #ccc9c2;background:#f7f6f3;color:#171717;font:inherit}
/* Einzelbild-Download in der öffentlichen Vollbildgalerie */
.public-download{position:absolute;bottom:15px;left:20px;display:inline-flex;align-items:center;justify-content:center;padding:11px 14px;background:#b5413b;color:#fff;text-decoration:none;border:1px solid #b5413b;font-size:11px;letter-spacing:.10em;font-weight:700;z-index:2}.public-download:hover,.public-download:focus-visible{background:#d45a51;color:#fff}@media(max-width:600px){.public-download{bottom:62px;left:50%;transform:translateX(-50%);white-space:nowrap}}

/* MAHLICH / gleicher dezenter Download-Link wie im privaten Viewer */
.event-lightbox .public-download,.event-lightbox .public-download:hover,.event-lightbox .public-download:focus-visible{
  position:absolute;bottom:12px;left:50%;transform:translateX(-50%);z-index:5;
  background:transparent;border:0;border-bottom:1px solid #efebe5;border-radius:0;
  color:#efebe5;display:inline-block;width:auto;padding:4px 0 7px;
  font-size:11px;font-weight:400;letter-spacing:.10em;text-decoration:none;white-space:nowrap;
}
.event-lightbox .public-download:hover{color:#fff;border-bottom-color:#fff}
@media(max-width:600px){.event-lightbox .public-download{bottom:12px;left:50%;transform:translateX(-50%)}}
