:root{--bg:#050608;--ink:#ecebe6;--dim:#a29f96;--line:#2a2c30;--accent:#d9812e;--serif:Georgia,"Iowan Old Style","Palatino Linotype",Palatino,serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:4rem}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--bg);color:var(--ink);font:1.125rem/1.7 var(--serif)}
img{max-width:100%;height:auto;display:block}
a{color:var(--ink);text-decoration-color:var(--accent);text-underline-offset:.2em}
a:hover{color:var(--accent)}
a:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
header.top{position:sticky;top:0;z-index:5;background:rgba(5,6,8,.92);border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:.6rem 1.25rem}
header.top img{height:1.6rem;width:auto;filter:invert(1)}
nav a{margin-left:1.25rem;text-decoration:none;font-size:1rem}
.banner{width:100%;max-height:22rem;object-fit:cover;object-position:center}
main{max-width:62rem;margin:0 auto;padding:0 1.25rem}
section{padding:4.5rem 0;border-bottom:1px solid var(--line)}
section:last-of-type{border-bottom:0}
h1{font-size:clamp(2.6rem,8vw,5rem);line-height:1.05;margin:0 0 1.5rem;font-weight:700;letter-spacing:-.01em}
h2{font-size:clamp(1.6rem,4vw,2.2rem);margin:0 0 1.25rem;font-weight:700;line-height:1.2}
p{margin:0 0 1.1em;max-width:38rem}
.dim{color:var(--dim)}
.intro{display:grid;grid-template-columns:1fr 17rem;gap:3rem;align-items:center}
.intro img,.about img{border-radius:.4rem}
.btn{display:inline-block;margin-top:.5rem;padding:.7rem 1.4rem;border:2px solid var(--accent);color:var(--ink);text-decoration:none;font-weight:700}
.btn:hover{background:var(--accent);color:var(--bg)}
.process{display:grid;grid-template-columns:1fr 20rem;gap:3rem;align-items:center}
.about{display:grid;grid-template-columns:18rem 1fr;gap:3rem;align-items:start}
.about img{position:sticky;top:5rem}
.now h3{margin:0 0 .3rem;font-size:1.2rem}
.now div{max-width:38rem;margin-bottom:1.6rem}
#imprint p{font-size:.95rem;color:var(--dim)}
footer{max-width:62rem;margin:0 auto;padding:2rem 1.25rem 3rem;color:var(--dim);font-size:.95rem}
@media (max-width:48rem){.intro,.process,.about{grid-template-columns:1fr;gap:2rem}.about img{position:static}nav a{margin-left:.9rem;font-size:.95rem}section{padding:3rem 0}}
nav a[aria-current="page"]{color:var(--accent)}
.page{padding:4rem 0 5rem}
.page h1{font-size:clamp(2rem,6vw,3.2rem);margin-bottom:2.5rem}
.footer-links a{margin-left:1rem}
