:root{--bg:#f6f4ee;--ink:#1f1e1a;--mute:#6b675c;--line:rgba(31,30,26,.13);--ac:#8b7d2a;--gold:#a39233;--serif:'EB Garamond',Georgia,serif;--sans:'Inter Tight',system-ui,sans-serif;--btn-bg:#1f1e1a;--btn-ink:#f6f4ee}
h1,h2,h3,h4{font-family:var(--serif);font-weight:400}em{font-style:italic;color:var(--ac)}.kicker{color:var(--ac);font-weight:600;letter-spacing:.2em}.h1{font-size:clamp(50px,6.4vw,100px);line-height:1;letter-spacing:-.02em}.h2{font-size:clamp(38px,4.4vw,66px);line-height:1.05;letter-spacing:-.015em}.sec-p{color:var(--mute);line-height:1.8;margin-top:16px;font-size:17px}
.frame{margin:0;position:relative;padding:12px;background:#fff;box-shadow:0 0 0 1px var(--line),0 30px 60px -30px rgba(31,30,26,.35)}.frame::after{content:'';position:absolute;inset:5px;border:1px solid rgba(163,146,51,.45);pointer-events:none}
.intro{background:var(--bg);align-items:center;justify-content:center;flex-direction:column}.in-s{width:min(70vw,400px)}.st{fill:var(--gold)}.in-t{font-family:var(--serif);font-size:clamp(34px,5vw,58px);margin:0}.in-t em{font-size:1.3em}
.nav{position:fixed;top:0;left:0;right:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:10px clamp(20px,4vw,48px);transition:background .3s}.nav.scrolled{background:rgba(246,244,238,.95);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.brand img{width:150px;height:auto;display:block}.nav nav{display:flex;gap:26px}.nav nav a{text-decoration:none;font-size:14.5px;font-weight:500}
.hero{padding:130px 0 90px;min-height:100vh;display:flex;align-items:center}.hg{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:60px;align-items:center}.lead{font-size:18px;line-height:1.75;color:var(--mute);margin-top:24px;max-width:48ch}.h-b{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.h-f img{width:100%;aspect-ratio:1378/684;object-fit:cover;object-position:30% 50%}.h-f figcaption{display:flex;gap:14px;align-items:baseline;font-family:var(--serif);font-style:italic;font-size:17px;padding:14px 4px 2px;color:var(--mute)}.h-f figcaption span{font-family:var(--sans);font-style:normal;font-size:12px;letter-spacing:.2em;color:var(--ac);font-weight:600}
.welcome{padding:clamp(80px,9vw,130px) 0;border-top:1px solid var(--line)}.wg{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:60px}
.signature{padding:clamp(80px,9vw,130px) 0;background:#1f1e1a;color:#f2efe4}.signature .kicker,.signature em{color:#cbbb5c}.sgg{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.85fr);gap:70px;align-items:center}.sgs{margin-top:34px;border-top:1px solid rgba(255,255,255,.14)}.sg{display:grid;grid-template-columns:56px minmax(0,1fr);gap:4px 16px;padding:18px 0;border-bottom:1px solid rgba(255,255,255,.14);text-decoration:none;color:inherit}.sg-n{font-family:var(--serif);font-style:italic;color:#cbbb5c;font-size:20px;grid-row:span 2}.sg-t{font-family:var(--serif);font-size:clamp(26px,2.6vw,38px);line-height:1.1;transition:transform .4s,color .3s}.sg-d{color:#b4ae9c;font-size:15px;display:none}.sg.on .sg-t,.sg:hover .sg-t{transform:translateX(10px);color:#cbbb5c}.sg.on .sg-d{display:block;animation:sgd .45s ease both}@keyframes sgd{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}.sg:focus-visible,.tb:focus-visible{outline:2px solid #cbbb5c;outline-offset:3px}.sg-f{background:#2a2924;box-shadow:none}.sg-f::after{border-color:rgba(203,187,92,.5)}.sg-f{aspect-ratio:5/6}.sg-f img{position:absolute;inset:12px;width:calc(100% - 24px);height:calc(100% - 24px);object-fit:cover;opacity:0;transform:scale(1.05);transition:opacity .6s,transform 1.2s cubic-bezier(.2,.8,.2,1)}.sg-f img.on{opacity:1;transform:scale(1)}
.katalog{padding:clamp(90px,10vw,140px) 0}.k-h{margin-bottom:34px}.tbg{display:grid;grid-template-columns:110px minmax(0,1fr);gap:12px 20px;align-items:start;margin-bottom:30px}.tb-l{margin:10px 0 0;font-size:12px;letter-spacing:.2em;text-transform:uppercase;font-weight:600;color:var(--mute)}.tbs{display:flex;flex-wrap:wrap;gap:8px}.tb{display:inline-flex;align-items:baseline;gap:8px;border:1px solid var(--line);background:#fff;padding:10px 16px;border-radius:999px;font:500 14.5px var(--sans);cursor:pointer;color:var(--ink);transition:background .3s,color .3s}.tb small{color:var(--ac);font-weight:600;font-size:12px}.tb.on{background:var(--ink);color:#fff;border-color:var(--ink)}.tb.on small{color:#cbbb5c}.tb:focus-visible{outline-color:var(--ac)}
.pn{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:50px;align-items:start}.pn[hidden]{display:none}.pn-f{margin:0;position:sticky;top:100px}.pn-f img{width:100%;aspect-ratio:5/6;object-fit:cover;border-radius:999px 999px 0 0}.pn-f figcaption{margin-top:12px;font-family:var(--serif);font-size:24px;font-style:italic;color:var(--ac)}.pn-b h3{font-size:clamp(32px,3.2vw,48px)}.pn-i{color:var(--mute);line-height:1.75;margin:12px 0 22px}.rl{border-top:1px solid var(--line)}.rl li{border-bottom:1px solid var(--line)}.rl summary{display:grid;grid-template-columns:minmax(0,1fr) auto auto 18px;gap:16px;align-items:baseline;padding:15px 0;cursor:pointer}.rl summary::after{content:'+';color:var(--ac);transition:transform .3s;text-align:right}.rl details[open] summary::after{transform:rotate(45deg)}.r-n{font-family:var(--serif);font-size:20px;line-height:1.25}.r-d{color:var(--mute);font-size:13.5px;white-space:nowrap}.r-p{font-weight:600;white-space:nowrap;font-size:15px}.rl details p{margin:0 0 16px;color:var(--mute);line-height:1.7;max-width:62ch}.tel{display:inline-block;margin-left:10px;font-size:12px;font-weight:600;color:var(--ac);border:1px solid rgba(139,125,42,.4);border-radius:999px;padding:2px 10px}.za{margin-top:26px;background:#fff;padding:6px 22px 8px;border:1px solid var(--line)}.za h4{font-size:24px;margin:14px 0 8px;color:var(--ac);font-style:italic}.k-n{color:var(--mute);font-size:14.5px;line-height:1.7;margin-top:34px;max-width:90ch}
.marken{padding:clamp(90px,10vw,140px) 0;background:#fff}.mg{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:60px;align-items:start}.bds{display:grid;gap:10px}.bd{border:1px solid var(--line);background:var(--bg);padding:0 22px}.bd summary{display:flex;align-items:center;gap:20px;padding:14px 0;cursor:pointer}.bd summary img{width:110px;height:44px;object-fit:contain;mix-blend-mode:multiply}.bd summary span{font-family:var(--serif);font-size:22px}.bd summary::after{content:'+';margin-left:auto;color:var(--ac);transition:transform .3s}.bd[open] summary::after{transform:rotate(45deg)}.bd p{margin:0 0 18px;color:var(--mute);line-height:1.7}
.institut{padding:clamp(90px,10vw,140px) 0}.ig{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:40px;align-items:start}.ig img{width:100%;display:block;object-fit:cover;aspect-ratio:2/1}.ig .frame:nth-child(even){margin-top:40px}
.kontakt{padding:clamp(90px,10vw,140px) 0;background:#fff;border-top:1px solid var(--line)}.kg{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:60px;align-items:start}.kc address{font-style:normal;font-family:var(--serif);font-size:26px;line-height:1.4}.kl{display:flex;flex-direction:column;gap:4px;font-weight:600;font-size:17px;margin-top:18px}.kl a{text-decoration:none}.soc{display:flex;gap:18px;flex-wrap:wrap}.soc a{color:var(--ac);font-weight:600}.note{color:var(--mute);font-size:14.5px;line-height:1.7;border-top:1px solid var(--line);padding-top:16px}
.tnv-cta{--cta-sec:#fff;--cta-bg:#1f1e1a;--cta-ink:#f2efe4;--cta-line:rgba(203,187,92,.3);--cta-accent:#cbbb5c;--cta-r:4px}.tnv-cta .btn:not(.btn-ghost){--btn-bg:#cbbb5c;--btn-ink:#1f1e1a}.tnv-cta .btn-ghost{color:#f2efe4}
@media(max-width:900px){.hg,.wg,.sgg,.pn,.mg,.kg{grid-template-columns:1fr}.nav nav{display:none}.sg-f{display:none}.sg-d{display:block}.pn-f{position:static}.pn-f img{aspect-ratio:16/9;border-radius:200px 200px 0 0}.tbg{grid-template-columns:1fr}.ig{grid-template-columns:1fr}.ig .frame:nth-child(even){margin-top:0}.rl summary{grid-template-columns:minmax(0,1fr) auto 18px}.r-d{grid-column:1;grid-row:2}}
.foot{display:flex;justify-content:space-between;flex-wrap:wrap;gap:16px;padding:30px clamp(20px,5vw,80px);font-size:14px;border-top:1px solid var(--line);color:var(--mute)}
.foot p{margin:0;display:flex;gap:22px;flex-wrap:wrap;line-height:1.5}.foot a{text-decoration:none}
main{overflow-x:clip}
