@import url('https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;600;700&family=Anton&display=swap');
:root{--bg:#fafafa;--ink:#111;--accent:#e10600;--alt:#efefef;--line:#ddd}
body{font-family:"Space Grotesk",sans-serif}h1,h2,h3,.ki-name{font-family:Anton,sans-serif;letter-spacing:.01em}

*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--ink);line-height:1.55}
img{max-width:100%;display:block;height:auto;object-fit:cover;background:var(--alt)}
a{color:var(--accent)}
nav{display:flex;gap:1.2rem;flex-wrap:wrap}
nav a{color:var(--ink);font-weight:600;font-size:.92rem;text-decoration:none}
.btn{display:inline-block;background:var(--accent);color:var(--bg);padding:.8rem 1.2rem;font-weight:700;border:none;cursor:pointer;text-decoration:none}
.wrap{width:min(1120px,92%);margin:0 auto}
.cookie-banner{position:fixed;bottom:0;left:0;right:0;z-index:9999;background:var(--ink);color:var(--bg);padding:1rem 1.25rem}
.cookie-inner{max-width:1100px;margin:0 auto;display:flex;flex-wrap:wrap;gap:1rem;align-items:center;justify-content:space-between}
.cookie-banner a{color:var(--accent)}
.btn-cookie{cursor:pointer;font:inherit;padding:.55rem 1rem;border:none}
.btn-cookie.accept{background:var(--accent);color:var(--bg)}
.btn-cookie.reject{background:transparent;color:inherit;border:1px solid currentColor}
.contact-form{max-width:34rem;display:grid;gap:1rem}
.form-row{display:grid;gap:.35rem}
.form-row input,.form-row textarea{width:100%;padding:.75rem 1rem;border:1px solid var(--line);background:var(--bg);color:var(--ink);font:inherit}
.hp-field{position:absolute;left:-9999px;opacity:0;height:0;width:0}
.field-error{color:#c62828;font-size:.875rem}
.form-success{padding:1.2rem;border:1px solid var(--accent);background:var(--alt)}


.ki-wall{{display:flex;justify-content:space-between;align-items:center;padding:1rem 4%;border-bottom:4px solid var(--accent);position:sticky;top:0;background:#fff;z-index:40}}.ki-name{{font-size:1.5rem;text-decoration:none;color:var(--ink);text-transform:uppercase}}.ki-open{{display:none;border:2px solid var(--ink);background:#fff;padding:.4rem .55rem}}
.ki-stark-hero{{padding:12vh 4%;border-bottom:1px solid var(--line)}}.ki-stark-hero h1{{font-size:clamp(3rem,10vw,6rem);margin:0;text-transform:uppercase;line-height:.95}}.ki-sm{{padding:4vh 4%}}
.ki-works{{padding:0}}.ki-cap{{display:flex;justify-content:space-between;padding:1.2rem 4%;border-bottom:1px solid var(--line);font-size:1.1rem;text-transform:uppercase}}
.ki-process{{padding:3rem 4%}}.ki-process-grid{{display:grid;grid-template-columns:repeat(3,1fr);gap:.25rem;margin-top:1rem}}.ki-process-grid img{{width:100%;aspect-ratio:1;object-fit:cover}}
.ki-studio{{padding:3rem 4%;background:var(--alt)}}.ki-studio-split{{display:grid;grid-template-columns:1fr 1fr;gap:2rem;align-items:center}}.ki-studio-split img{{width:100%;min-height:260px;object-fit:cover}}
.ki-quote{{padding:3rem 4%;text-align:center;font-size:1.5rem;font-family:Anton,sans-serif}}.ki-cta{{padding:3rem 4%;text-align:center;border-top:1px solid var(--line)}}.ki-plinth{{padding:2rem 4%;border-top:4px solid var(--accent);display:flex;flex-wrap:wrap;justify-content:space-between;gap:1rem;margin-top:2rem}}.ki-plinth a{{margin-left:1rem;color:var(--accent)}}
@media(max-width:860px){{.ki-open{{display:block}}nav{{display:none;position:absolute;right:4%;top:3.5rem;flex-direction:column;background:#fff;border:1px solid var(--line);padding:1rem}}nav.is-open{{display:flex}}.ki-wall{{position:relative}}.ki-process-grid,.ki-studio-split{{grid-template-columns:1fr}}}}


.kunstimpuls-contact-hero,.kunstimpuls-legal-hero{padding:clamp(2.5rem,7vw,5rem) 4% 1.5rem}
.kunstimpuls-contact-form,.kunstimpuls-contact-hours,.kunstimpuls-contact-topics,.kunstimpuls-contact-legal,.kunstimpuls-contact-alt,.kunstimpuls-legal-1,.kunstimpuls-legal-2,.kunstimpuls-legal-3,.kunstimpuls-legal-4,.kunstimpuls-legal-5{padding:2.25rem 4%}
.kunstimpuls-contact-hours,.kunstimpuls-legal-2,.kunstimpuls-legal-4{background:var(--alt)}
.contact-topics{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:1rem}
.contact-topics article{border:1px solid var(--line);padding:1rem;background:var(--alt)}
@media(max-width:860px){.contact-topics{grid-template-columns:1fr}}

