:root{--bg:#f4f1ec;--ink:#111;--mute:#6b6661;--line:rgba(17,17,17,.14);--ac:#9c7b56;--serif:'Cinzel',Georgia,serif;--sans:'Josefin Sans',system-ui,sans-serif;--btn-bg:#111;--btn-ink:#f4f1ec}
body{font-family:var(--sans)}h1,h2,h3,h4{font-family:var(--serif);font-weight:400}em{font-style:normal;color:var(--ac)}.kicker{color:var(--ac);font-weight:600;letter-spacing:.28em}.h1{font-size:clamp(40px,5.4vw,84px);line-height:1.08;letter-spacing:.01em}.h2{font-size:clamp(30px,3.6vw,52px);line-height:1.12}.sec-p{color:var(--mute);line-height:1.8;margin-top:16px;font-size:17px}
.intro{background:#111;align-items:center;justify-content:center;flex-direction:column;gap:18px}.in-z{width:min(40vmin,220px)}.zl{fill:none;stroke:#f4f1ec;stroke-width:3}.in-k{color:#bba68a;letter-spacing:.4em;text-transform:uppercase;font-size:12px;margin:0}
.nav{position:fixed;top:0;left:0;right:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px clamp(20px,4vw,48px);color:#fff;transition:background .3s,color .3s}.nav.scrolled{background:rgba(244,241,236,.95);color:var(--ink);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.nav .btn{--btn-bg:#fff;--btn-ink:#111}.nav.scrolled .btn{--btn-bg:#111;--btn-ink:#fff}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;color:inherit}.b-z{font-family:var(--serif);font-size:30px;font-weight:500;letter-spacing:-.04em}.b-t{font-size:11px;letter-spacing:.36em;text-transform:uppercase;border-left:1px solid currentColor;padding-left:12px}.nav nav{display:flex;gap:30px}.nav nav a{text-decoration:none;font-size:14px;letter-spacing:.14em;text-transform:uppercase;color:inherit}
.hero{position:relative;min-height:100vh;display:flex;align-items:flex-end;padding:140px 0 90px;color:#fff;overflow:hidden}.h-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 30%}.h-sh{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.72),rgba(0,0,0,.25) 65%,rgba(0,0,0,.1))}.h-c{position:relative}.hero .kicker{color:#d9c3a5}.hero em{color:#d9c3a5}.lead{font-size:19px;line-height:1.7;color:#e6e0d8;max-width:46ch;margin-top:22px}.h-b{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.hero .btn{--btn-bg:#fff;--btn-ink:#111}.hero .btn-ghost{color:#fff}
.marquee{background:#111;color:#d9c3a5;padding:20px 0;overflow:hidden}.marquee-track{display:flex;width:max-content;font-family:var(--serif);font-size:24px;letter-spacing:.08em;white-space:nowrap}.marquee-track span{padding-right:.6em}
.services{padding:clamp(90px,10vw,140px) 0}.svg{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:70px;align-items:center}.svl{margin-top:34px;border-top:1px solid var(--line)}.svl li{border-bottom:1px solid var(--line)}.sv{width:100%;display:flex;gap:22px;align-items:baseline;background:none;border:0;padding:18px 0;cursor:pointer;text-align:left;color:inherit;font:inherit}.sv-n{font-size:13px;color:var(--ac);font-weight:600;letter-spacing:.1em}.sv-t{font-family:var(--serif);font-size:clamp(22px,2.2vw,32px);transition:transform .4s,color .3s}.sv.on .sv-t,.sv:hover .sv-t{transform:translateX(10px);color:var(--ac)}.sv-d{display:none;color:var(--mute);line-height:1.7;margin:0;padding:0 0 20px 46px}.sv.on+.sv-d{display:block;animation:svd .45s ease both}@keyframes svd{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}.sv:focus-visible,.tb:focus-visible,.swb:focus-visible{outline:2px solid var(--ac);outline-offset:3px}.sv-f{position:relative;margin:0;aspect-ratio:4/5;overflow:hidden;background:#ddd5ca}.sv-f img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;filter:grayscale(.3);transform:scale(1.06);transition:opacity .6s,transform 1.2s cubic-bezier(.2,.8,.2,1)}.sv-f img.on{opacity:1;transform:scale(1)}
.about{padding:clamp(90px,10vw,140px) 0;background:#111;color:#eee8df}.about .sec-p{color:#b9b1a6}.about em,.about .kicker{color:#d9c3a5}.ag{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:70px;align-items:center}.ag img{width:100%;aspect-ratio:1;object-fit:cover}
.preise{padding:clamp(90px,10vw,140px) 0}.p-h{margin-bottom:30px}.tbs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:22px}.tb{display:inline-flex;flex-direction:column;align-items:flex-start;gap:4px;border:1px solid var(--line);background:#fff;padding:12px 18px;font:600 14px var(--sans);letter-spacing:.04em;cursor:pointer;color:var(--ink);transition:background .3s,color .3s}.tb small{font-weight:400;color:var(--ac);font-size:12.5px}.tb.on{background:#111;color:#fff;border-color:#111}.tb.on small{color:#d9c3a5}
.pp{background:#fff;border:1px solid var(--line);padding:clamp(22px,3vw,40px)}.pp[hidden],.lp[hidden]{display:none}.pp-h{display:flex;flex-wrap:wrap;align-items:center;gap:14px 24px;margin-bottom:22px}.pp-h h3{font-size:clamp(26px,2.6vw,36px)}.pp-h p{margin:0;color:var(--mute)}.lp-ab{margin:0 0 18px!important;font-family:var(--serif);font-size:20px;color:var(--ac)!important}.pp-h .lp-ab{margin:0 0 0 auto!important}.sw{display:inline-flex;flex-wrap:wrap;border:1px solid var(--line);padding:4px;gap:4px}.swb{border:0;background:none;padding:10px 20px;font:600 14px var(--sans);letter-spacing:.06em;cursor:pointer;color:var(--mute)}.swb.on{background:#111;color:#fff}
.lcs{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}.lc{border:1px solid var(--line);padding:20px;display:flex;flex-direction:column;gap:10px;background:var(--bg);transition:border-color .3s,transform .3s}.lc:hover{border-color:var(--ac);transform:translateY(-3px)}.lc h4{font-size:19px}.lc p{margin:0;color:var(--mute);font-size:14.5px;line-height:1.6;flex:1}.lc-m{display:flex;justify-content:space-between;align-items:baseline;border-top:1px solid var(--line);padding-top:12px}.lc-d{color:var(--mute);font-size:13.5px}.lc strong{font-family:var(--serif);font-weight:500;font-size:20px}
.orl li{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:20px;align-items:baseline;padding:16px 0;border-top:1px solid var(--line)}.orl b{font-weight:600;font-size:16.5px}.orl small{display:block;color:var(--mute);font-size:14px;line-height:1.55;margin-top:4px;max-width:70ch}.orl em{color:var(--mute);font-size:14px;white-space:nowrap}.orl strong{font-family:var(--serif);font-weight:500;font-size:19px;white-space:nowrap}.ac-n{color:var(--mute);font-size:14.5px;margin:16px 0 0}.p-n{color:var(--mute);font-size:14.5px;margin:22px 0 0}
.ablauf{padding:clamp(90px,10vw,140px) 0;background:#fff}.st{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin-top:40px;list-style:none;padding:0}.st li{border-top:2px solid #111;padding-top:20px}.st span{font-size:12px;letter-spacing:.24em;text-transform:uppercase;color:var(--ac);font-weight:600}.st h3{font-size:22px;margin:10px 0}.st p{color:var(--mute);line-height:1.7;margin:0}
.kontakt{position:relative;padding:clamp(100px,11vw,160px) 0;color:#fff;overflow:hidden}.k-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:brightness(.4)}.kg{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:60px;align-items:end}.kontakt .kicker,.kontakt em{color:#d9c3a5}.kontakt address{font-style:normal;font-family:var(--serif);font-size:24px;line-height:1.5;margin-top:22px}.kontakt .sec-p{color:#d6d0c8}.kc{display:grid;grid-template-columns:1fr 1fr;gap:10px}.kb{display:flex;flex-direction:column;gap:6px;padding:22px;border:1px solid rgba(255,255,255,.3);text-decoration:none;color:#fff;font-size:18px;font-weight:600;background:rgba(0,0,0,.25);backdrop-filter:blur(6px);transition:background .3s}.kb span{font-size:11px;letter-spacing:.28em;text-transform:uppercase;color:#d9c3a5;font-weight:400}.kb:hover{background:rgba(0,0,0,.5)}
.tnv-cta{--cta-sec:#f4f1ec;--cta-bg:#111;--cta-ink:#eee8df;--cta-line:rgba(217,195,165,.3);--cta-accent:#d9c3a5;--cta-r:0px}.tnv-cta .btn:not(.btn-ghost){--btn-bg:#d9c3a5;--btn-ink:#111}.tnv-cta .btn-ghost{color:#eee8df}
@media(max-width:900px){.svg,.ag,.kg{grid-template-columns:1fr}.nav nav{display:none}.sv-f{display:none}.st{grid-template-columns:1fr 1fr}.orl li{grid-template-columns:minmax(0,1fr) auto}.orl em{grid-column:1;grid-row:2}.pp-h .lp-ab{margin:0!important}}
.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}
