@font-face{font-family:"Source Serif 4";font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/source-serif-4-latin-600-normal.woff2) format("woff2")}@font-face{font-family:"Source Serif 4";font-style:italic;font-weight:400;font-display:swap;src:url(/fonts/source-serif-4-latin-400-italic.woff2) format("woff2")}@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/source-sans-3-latin-400-normal.woff2) format("woff2")}@font-face{font-family:"Source Sans 3";font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/source-sans-3-latin-600-normal.woff2) format("woff2")}:root{--bg: #fbfaf7;--surface: #f1eee8;--ink: #0f1b26;--on-ink: #f4f1ea;--text: #1e2329;--text-muted: #5a6470;--primary: #2e3a6b;--primary-hover: #243058;--gold: #b08a3e;--line: #e3ded6;--ink-soft: #15222c;--mist: var(--surface);--paper: var(--bg);--brass: var(--gold);--brass-light: #c4a574;--muted: var(--text-muted);--white: #ffffff;--font-display: "Source Serif 4", "Times New Roman", serif;--font-body: "Source Sans 3", system-ui, sans-serif;--space: clamp(1.25rem, 3vw, 2.5rem);--max: 72rem;--ease: cubic-bezier(.22, 1, .36, 1)}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}html,body{max-width:100%;overflow-x:clip}body{margin:0;font-family:var(--font-body);font-size:1.0625rem;font-weight:400;color:var(--text);background:var(--bg);line-height:1.7;-webkit-font-smoothing:antialiased}h1,h2{font-family:var(--font-display);font-weight:600;color:var(--ink);line-height:1.15}h1{font-size:clamp(2.2rem,4.5vw,3.4rem)}h2{font-size:clamp(1.7rem,3vw,2.3rem)}img{max-width:100%;display:block}a{color:inherit;text-decoration-thickness:1px;text-underline-offset:.2em}a:hover{color:var(--primary)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}.site-header{position:fixed;inset:0 0 auto;z-index:40;padding:.85rem var(--space) .7rem;background:var(--ink);color:var(--on-ink)}.site-header__inner{max-width:var(--max);margin:0 auto;display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1.25rem}.brand{font-family:var(--font-display);font-size:clamp(1.2rem,2.4vw,1.75rem);font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--on-ink);text-decoration:none}.brand span{color:var(--on-ink)}.nav{display:none;gap:1.75rem;align-items:center}.nav a{color:var(--on-ink);text-decoration:none;font-size:.9rem;letter-spacing:.02em}.nav a:hover{color:var(--on-ink);text-decoration:underline;text-underline-offset:.2em}.header-tools{display:flex;align-items:center;gap:.65rem;margin-left:auto}.header-phone{display:flex;align-items:center;justify-content:center;width:100%;flex:1 0 100%;order:3;min-height:2.75rem;margin:0;padding:.55rem 0 .15rem;border-top:1px solid color-mix(in srgb,var(--on-ink) 28%,transparent);color:var(--on-ink);font-weight:600;font-size:1.05rem;letter-spacing:.01em;text-decoration:underline;text-underline-offset:.22em}.header-phone:hover{color:var(--on-ink)}@media(max-width:859px){.header-tools .btn{min-height:2.6rem;padding:.55rem .75rem;font-size:.84rem}}.nav-toggle{display:inline-flex;width:2.5rem;height:2.5rem;border:1px solid color-mix(in srgb,var(--white) 35%,transparent);background:transparent;color:var(--white);border-radius:0;cursor:pointer;align-items:center;justify-content:center}.nav-toggle span{display:block;width:1.1rem;height:1px;background:currentColor;box-shadow:0 5px 0 currentColor,0 -5px 0 currentColor}@media(min-width:860px){.nav{display:flex;margin-left:auto}.nav-toggle,.header-phone{display:none}.header-tools{margin-left:0}}.nav.is-open{display:flex;position:absolute;top:100%;right:var(--space);left:var(--space);flex-direction:column;align-items:flex-start;padding:1.25rem;background:var(--ink);border:1px solid color-mix(in srgb,var(--white) 12%,transparent)}.hero{position:relative;min-height:100svh;display:grid;align-items:end;color:var(--white);overflow:hidden}.hero__media{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;background:radial-gradient(ellipse at 30% 20%,color-mix(in srgb,var(--brass) 35%,transparent),transparent 55%),linear-gradient(145deg,#1a2a35,#0a1218 55%,#15222c)}.hero__media img{width:100%;height:100%;object-fit:cover;transform:scale(1.08);animation:heroDrift 22s var(--ease) infinite alternate}.hero__media img[hidden]{display:none}.hero__shade{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(105deg,color-mix(in srgb,var(--ink) 88%,transparent),color-mix(in srgb,var(--ink) 55%,transparent) 48%,color-mix(in srgb,var(--ink) 35%,transparent)),linear-gradient(to top,color-mix(in srgb,var(--ink) 70%,transparent),transparent 45%)}.hero__content{position:relative;z-index:1;max-width:var(--max);width:100%;margin:0 auto;padding:7.5rem var(--space) 4.5rem}.hero__brand{font-family:var(--font-display);font-weight:600;line-height:1.05;letter-spacing:.04em;text-transform:uppercase;margin:0 0 1.25rem;color:var(--white);opacity:0;animation:riseIn 1.1s var(--ease) .15s forwards}.hero__brand em{font-style:italic;font-weight:400;color:var(--on-ink);letter-spacing:.02em;text-transform:none;display:block;font-size:.42em;margin-top:.35em}.hero__lead{max-width:68ch;color:color-mix(in srgb,var(--white) 86%,transparent);margin:0 0 2rem;opacity:0;animation:riseIn 1.1s var(--ease) .35s forwards}.cta-row{display:flex;flex-wrap:wrap;gap:.85rem;opacity:0;animation:riseIn 1.1s var(--ease) .5s forwards}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:3rem;padding:.75rem 1.4rem;font-family:var(--font-body);font-size:.92rem;letter-spacing:.03em;border:1px solid transparent;text-decoration:none;cursor:pointer;transition:background .3s var(--ease),color .3s var(--ease),border-color .3s var(--ease),transform .3s var(--ease)}.btn:hover{transform:translateY(-1px)}.btn--primary{background:var(--primary);color:var(--white)}.btn--primary:hover{background:var(--primary-hover);color:var(--white)}.hero .btn--primary,.section--ink .btn--primary,.cookie-banner .btn--primary{background:var(--on-ink);color:var(--ink)}.hero .btn--primary:hover,.section--ink .btn--primary:hover,.cookie-banner .btn--primary:hover{background:var(--white);color:var(--ink)}.btn--ghost{background:transparent;color:var(--white);border-color:color-mix(in srgb,var(--white) 45%,transparent)}.btn--ghost:hover{color:var(--white);border-color:var(--white)}.btn--dark{background:var(--ink);color:var(--white)}.btn--dark:hover{background:var(--ink-soft);color:var(--white)}.btn--on-ink{background:var(--on-ink);color:var(--ink);white-space:nowrap}.btn--on-ink:hover{background:var(--white);color:var(--ink)}.section{padding:56px var(--space);scroll-margin-top:7.5rem}@media(min-width:900px){.section{padding-block:88px;scroll-margin-top:5.5rem}}.section__inner{max-width:var(--max);margin:0 auto}.section__eyebrow{font-size:.78rem;letter-spacing:.16em;text-transform:uppercase;color:var(--text-muted);margin:0 0 .85rem}.section__title{margin:0 0 1rem;max-width:16ch}.section__text{max-width:68ch;color:var(--muted);margin:0 0 2rem}.section--ink{background:radial-gradient(ellipse at 20% 0%,color-mix(in srgb,var(--brass) 18%,transparent),transparent 50%),linear-gradient(160deg,var(--ink),var(--ink-soft));color:var(--white)}.section--ink .section__eyebrow,.section--ink h2{color:var(--on-ink)}.section--ink .section__text{color:color-mix(in srgb,var(--white) 72%,transparent)}.section--mist{background:linear-gradient(180deg,var(--mist),var(--paper))}.reveal{opacity:0;transform:translateY(1.4rem);transition:opacity .9s var(--ease),transform .9s var(--ease)}.reveal.is-visible{opacity:1;transform:none}.service-grid{list-style:none;display:grid;grid-template-columns:minmax(0,1fr);gap:1rem;margin:0;padding:0}@media(min-width:700px){.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:1100px){.service-grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:1fr}}.service-card{min-width:0;min-height:14rem;height:100%;display:flex;flex-direction:column;margin:0;padding:1.15rem 1.15rem 1.35rem;border:1px solid var(--line);box-shadow:none;background:var(--bg)}.service-card:before{content:"";display:block;width:40px;height:2px;margin-bottom:.9rem;background:var(--gold)}.service-card h3{margin:0 0 .55rem;font-family:var(--font-display);font-size:1.25rem;font-weight:600;line-height:1.25;color:var(--ink);-webkit-hyphens:auto;hyphens:auto;overflow-wrap:break-word}.service-card p{margin:0;max-width:68ch;color:var(--text-muted)}.service-card__link{display:inline-flex;align-items:center;min-height:48px;margin-top:.75rem;font-weight:600}.steps{list-style:none;display:grid;grid-template-columns:minmax(0,1fr);gap:2.25rem;margin:2rem 0 0;padding:0;counter-reset:none}@media(min-width:800px){.steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem 2.5rem}}.steps li{min-width:0}.steps__num{display:block;margin:0 0 .65rem;font-family:var(--font-display);font-size:clamp(2.75rem,4vw,3.75rem);font-weight:600;line-height:1;color:var(--gold)}.steps h3{margin:0 0 .45rem;font-family:var(--font-display);font-size:1.25rem;font-weight:600;line-height:1.25;color:var(--ink)}.steps p{margin:0;max-width:68ch;color:var(--text-muted)}#ablauf .section__title{max-width:16em}.about-grid{display:grid;gap:2.5rem}@media(min-width:900px){.about-grid{grid-template-columns:1.05fr .95fr;align-items:center;gap:4rem}}.about-media{position:relative;margin:0;overflow:hidden;background:var(--mist);aspect-ratio:4 / 5;max-height:36rem}.about-media img{width:100%;height:100%;object-fit:cover;object-position:center 18%;display:block}.about-portrait{margin:0;display:grid;gap:.85rem;justify-items:stretch;width:100%;max-width:100%;min-width:0}.about-caption{margin:0;width:100%;max-width:100%;min-width:0;box-sizing:border-box;font-size:.82rem;font-weight:600;line-height:1.45;color:var(--text);text-align:left;overflow-wrap:anywhere;word-break:break-word;-webkit-hyphens:auto;hyphens:auto}#kanzlei.section{background:var(--ink);color:var(--on-ink);overflow-x:clip}#kanzlei h2,#kanzlei .section__eyebrow,#kanzlei .section__text,#kanzlei .about-caption,#kanzlei a:hover,.section--ink a:hover{color:var(--on-ink)}#kanzlei .about-grid{min-width:0}#kanzlei .about-grid>*{min-width:0}#kanzlei .about-media{width:100%;max-width:100%;height:auto;aspect-ratio:3 / 4;max-height:none}#kanzlei .about-media img{object-position:center 20%}@media(min-width:900px){#kanzlei .about-grid{gap:1.25rem;align-items:center;grid-template-columns:1fr 1.05fr}#kanzlei .about-portrait{width:max-content;justify-self:center}#kanzlei .about-caption{width:0;min-width:100%;overflow-wrap:break-word;word-break:normal;-webkit-hyphens:manual;hyphens:manual}#kanzlei .about-media{aspect-ratio:4 / 4.15;height:min(24rem,52vh);width:auto;max-height:none;max-width:100%}#kanzlei .about-media img{object-position:center 12%}}.contact-grid{display:grid;gap:2.5rem}@media(min-width:880px){.contact-grid{grid-template-columns:.9fr 1.1fr;gap:4rem}}.contact-meta{list-style:none;margin:0;padding:0;display:grid;gap:1.1rem}.contact-meta li{display:grid;gap:.2rem}.contact-meta span{font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--brass-light)}.contact-meta address{margin:0;font-style:normal}.contact-meta a{color:var(--white);text-decoration:none;font-size:1.1rem}.contact-meta a:hover{color:var(--brass-light)}.form{display:grid;gap:1rem}.form label{display:grid;gap:.4rem;font-size:.85rem;letter-spacing:.04em}.form input,.form textarea,.form select{width:100%;border:1px solid color-mix(in srgb,var(--white) 22%,transparent);background:color-mix(in srgb,var(--white) 6%,transparent);color:var(--white);padding:.85rem .95rem;font:inherit;border-radius:0}.form input:focus,.form textarea:focus,.form select:focus{outline:1px solid var(--brass-light);border-color:var(--brass-light)}.form textarea{min-height:8rem;resize:vertical}.form__note{margin:0;max-width:68ch;font-size:.85rem;color:color-mix(in srgb,var(--white) 60%,transparent)}.form__note a{color:color-mix(in srgb,var(--white) 82%,transparent);text-underline-offset:.2em}.form__note a:hover{color:var(--brass-light)}.form__status{min-height:1.25rem;font-size:.9rem;color:var(--brass-light)}.site-footer{background:var(--ink);color:color-mix(in srgb,var(--white) 70%,transparent);padding:2.5rem var(--space)}.site-footer__inner{max-width:var(--max);margin:0 auto;display:flex;flex-wrap:wrap;gap:1rem 2rem;justify-content:space-between;align-items:baseline}.site-footer a,.site-footer button{color:color-mix(in srgb,var(--white) 78%,transparent);text-decoration:none;background:none;border:0;padding:0;font:inherit;cursor:pointer}.site-footer a:hover,.site-footer button:hover{color:var(--brass-light)}.site-footer__legal{display:flex;flex-wrap:wrap;gap:.35rem 1.1rem;align-items:center}.legal-page{padding:8rem var(--space) 4rem;max-width:48rem;margin:0 auto}.legal-page h1{margin:0 0 1.5rem}.legal-page h2{margin:2rem 0 .75rem;scroll-margin-top:6rem}.legal-page h3{font-family:var(--font-body);font-size:1.05rem;font-weight:600;margin:1.5rem 0 .6rem}.legal-page p,.legal-page li{max-width:68ch;color:var(--muted)}.legal-page a,.legal-page .linkish{color:var(--ink)}.legal-page .linkish{background:none;border:0;padding:0;font:inherit;text-decoration:underline;text-underline-offset:.2em;cursor:pointer}.legal-page .linkish:hover{color:var(--brass)}.legal-toc{padding-left:1.2rem;margin:0 0 2rem}.legal-toc a{text-decoration:none}.legal-toc a:hover{text-decoration:underline}.legal-enum{padding-left:1.35rem;margin:.75rem 0 1.25rem}.legal-enum li{margin:.55rem 0}.cookie-banner{position:fixed;inset:auto 0 0;z-index:60;padding:1rem var(--space) 1.25rem;background:color-mix(in srgb,var(--ink) 94%,transparent);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-top:1px solid color-mix(in srgb,var(--white) 12%,transparent);color:color-mix(in srgb,var(--white) 88%,transparent)}.cookie-banner__inner{max-width:var(--max);margin:0 auto;display:grid;gap:1rem 1.5rem;align-items:center}@media(min-width:880px){.cookie-banner__inner{grid-template-columns:1fr auto}}.cookie-banner__title{margin:0 0 .35rem;font-family:var(--font-display);font-size:1.15rem;color:var(--white)}.cookie-banner p{margin:0;font-size:.92rem;line-height:1.5}.cookie-banner a{color:var(--brass-light)}.cookie-banner__actions{display:flex;flex-wrap:wrap;gap:.6rem;justify-content:flex-end}.cookie-banner .btn--ghost{color:var(--white);border-color:color-mix(in srgb,var(--white) 35%,transparent)}.cookie-banner .btn--ghost:hover{border-color:var(--brass-light);color:var(--brass-light)}.cookie-modal[hidden],.cookie-banner[hidden]{display:none!important}.cookie-modal{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;display:grid;place-items:center;padding:1.25rem}.cookie-modal__backdrop{position:absolute;top:0;right:0;bottom:0;left:0;background:color-mix(in srgb,var(--ink) 55%,transparent)}.cookie-modal__dialog{position:relative;width:min(36rem,100%);max-height:min(90vh,40rem);overflow:auto;background:var(--paper);color:var(--text);border:1px solid color-mix(in srgb,var(--ink) 8%,transparent);box-shadow:0 24px 60px color-mix(in srgb,var(--ink) 28%,transparent)}.cookie-modal__header,.cookie-modal__footer{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.1rem 1.25rem;border-bottom:1px solid color-mix(in srgb,var(--ink) 8%,transparent)}.cookie-modal__footer{border-bottom:0;border-top:1px solid color-mix(in srgb,var(--ink) 8%,transparent);justify-content:flex-end;flex-wrap:wrap}.cookie-modal__header h2{margin:0}.cookie-modal__x{width:2.25rem;height:2.25rem;border:0;background:transparent;font-size:1.6rem;line-height:1;cursor:pointer;color:var(--muted)}.cookie-modal__body{padding:1rem 1.25rem 1.25rem}.cookie-modal__body>p{margin:0 0 1rem;color:var(--muted);font-size:.95rem}.cookie-row{display:grid;grid-template-columns:1fr auto;gap:1rem;align-items:start;padding:.9rem 0;border-top:1px solid color-mix(in srgb,var(--ink) 8%,transparent);cursor:pointer}.cookie-row strong{display:block;font-weight:600}.cookie-row small{display:block;margin-top:.25rem;color:var(--muted);font-size:.85rem;line-height:1.45}.cookie-row input{width:1.15rem;height:1.15rem;margin-top:.15rem;accent-color:var(--brass)}.cookie-modal .btn--ghost{color:var(--ink);border-color:color-mix(in srgb,var(--ink) 18%,transparent)}.cookie-modal .btn--ghost:hover{border-color:var(--brass);color:var(--brass)}body.cookie-modal-open{overflow:hidden}@keyframes riseIn{0%{opacity:0;transform:translateY(1.25rem)}to{opacity:1;transform:none}}@keyframes heroDrift{0%{transform:scale(1.08) translateZ(0)}to{transform:scale(1.14) translate3d(-1.5%,-1%,0)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero__media img,.hero__brand,.hero__lead,.cta-row,.reveal{animation:none!important;opacity:1;transform:none;transition:none}}
