/* Lokaler Entwurf v1. Farben und Maße sind hier zentral anpassbar. */
:root{--bg:#0d0e14;--surface:#14151d;--text:#f1f1eb;--muted:#a7a8b5;--faint:#77798b;--accent:#ff416d;--accent-solid:#d81747;--accent-hover:#c8103f;--body-size:18px;--copy-small:16px;--intro-size:20px;--caption-size:14px;--nav-arrow-size:36px;--violet:#8473df;--line:rgba(224,224,244,.13);--max:1184px;--gutter:48px;--radius:24px;color-scheme:dark;font-family:Arial,Helvetica,sans-serif;font-synthesis:none}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:0}body{margin:0;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;font-size:var(--body-size)}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button,a{touch-action:manipulation}a{color:inherit;text-decoration:none}button{color:inherit}button:not(:disabled),a{cursor:pointer}button{border:0}::selection{background:var(--accent);color:#fff}img{display:block;width:100%;height:auto}h1,h2,h3,p{margin:0}button:focus-visible,a:focus-visible{outline:2px solid var(--accent);outline-offset:6px}input:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.wrap{width:min(var(--max),calc(100% - var(--gutter)*2));margin-inline:auto}.skip-link{position:fixed;top:12px;left:12px;z-index:100;background:var(--accent);color:var(--bg);padding:14px 22px;border-radius:30px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.muted{color:var(--faint)}
.site-header{position:fixed;top:24px;left:50%;transform:translateX(-50%);width:min(var(--max),calc(100% - var(--gutter)*2));height:72px;z-index:30;border:1px solid rgba(255,255,255,.12);border-radius:48px;padding:9px 10px 9px 24px;display:flex;align-items:center;justify-content:space-between;gap:30px;background:rgba(22,23,32,.8);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px);box-shadow:0 8px 40px rgba(0,0,0,.12);transition:background .2s,box-shadow .2s}.site-header.scrolled{background:rgba(22,23,32,.94);box-shadow:0 12px 36px rgba(0,0,0,.25)}.brand{display:flex;align-items:center;gap:14px;white-space:nowrap;font-size:14px;font-weight:500;letter-spacing:-.25px}.monogram{display:block;font-size:32px;font-weight:800;letter-spacing:-4px;position:relative;width:36px;padding-right:9px}.monogram>span{position:absolute;top:0;right:0;color:var(--accent);font-size:13px;letter-spacing:0}.site-header nav{display:flex;align-items:center;gap:30px;font-size:16px;color:#b8b8c3}.site-header nav a{transition:color .2s}.site-header nav a:hover,.site-header nav a[aria-current=true]{color:var(--text)}.nav-contact{display:flex;align-items:center;gap:18px;font-size:14px;padding-left:22px;height:50px;background:var(--text);color:#15161b;border-radius:30px;font-weight:600}.round-arrow{width:var(--nav-arrow-size);height:var(--nav-arrow-size);margin-right:5px;background:var(--accent-solid);border-radius:50%;display:grid;place-items:center;font-size:17px;font-weight:400;transition:transform .2s;color:#fff}.nav-contact:hover .round-arrow{transform:rotate(45deg)}
.hero{min-height:850px;min-height:max(810px,100svh);position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;justify-content:center}.ambient{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden;background:#0d0e14}.ambient-wash{position:absolute;inset:0;background:radial-gradient(ellipse 72% 62% at 8% 100%,rgba(118,61,180,.46),transparent 82%),radial-gradient(ellipse 80% 65% at 100% 100%,rgba(80,76,177,.42),transparent 85%),linear-gradient(180deg,#0d0e14 8%,#151121 55%,#211936 100%);mask-image:linear-gradient(180deg,#000 0%,#000 60%,rgba(0,0,0,.98) 70%,rgba(0,0,0,.85) 80%,rgba(0,0,0,.55) 90%,rgba(0,0,0,.2) 97%,transparent 100%)}.pointer-glow{position:absolute;inset:0;background:radial-gradient(290px circle at var(--pointer-x,73%) var(--pointer-y,67%),rgba(196,174,255,.42) 0%,rgba(163,135,244,.28) 16%,rgba(125,98,214,.14) 38%,rgba(101,79,180,.045) 62%,transparent 86%);opacity:calc(var(--hover-active,0)*.9);transition:opacity .5s}.ambient canvas{position:absolute;inset:0;width:100%;height:100%;opacity:.8;mask-image:linear-gradient(180deg,transparent 0%,#000 18%,#000 92%,transparent 100%)}.hero-grain{position:absolute;inset:0;z-index:4;opacity:.045;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23fff' filter='url(%23n)' opacity='.8' d='M0 0h160v160H0z'/%3E%3C/svg%3E")}.hero-content{padding:175px 0 180px;position:relative;text-align:center}.eyebrow{display:inline-flex;align-items:center;gap:9px;padding:9px 14px;font-size:12px;letter-spacing:.4px;border:1px solid rgba(237,28,78,.3);background:rgba(45,22,35,.58);border-radius:30px;color:#f0d2dd;margin-bottom:33px}.status-dot{width:6px;height:6px;border-radius:50%;background:var(--accent);box-shadow:0 0 12px rgba(237,28,78,.35)}h1{font-size:clamp(64px,7.5vw,108px);font-weight:600;line-height:1.035;letter-spacing:-.065em}h1>span{color:var(--accent)}.hero-intro{max-width:540px;margin:30px auto 0;color:#b6b4c4;font-size:var(--intro-size);line-height:1.65;letter-spacing:-.1px}.hero-actions{display:flex;justify-content:center;align-items:center;gap:18px;margin-top:34px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:20px;min-height:52px;padding:16px 22px;border-radius:30px;font-size:15px;font-weight:600;line-height:1.3;transition:background .2s,transform .2s}.button>span{font-size:16px;line-height:16px;font-weight:400}.button-primary{background:var(--accent-solid);color:#fff;box-shadow:0 4px 32px rgba(237,28,78,.1)}.button-primary:hover{background:var(--accent-hover);transform:translateY(-2px)}.button-text{color:#d4d2de;font-weight:400;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.1);gap:22px}.button-text:hover{background:rgba(255,255,255,.08)}
.section{padding-block:112px}.section-heading{display:grid;grid-template-columns:1fr 2.55fr;gap:32px;margin-bottom:64px}.section-index{font-size:11px;line-height:1.5;letter-spacing:1.6px;text-transform:uppercase;color:#c4c4ce;padding-top:12px}.section-index>span{margin:0 11px;color:#636475}.section-heading h2{font-size:clamp(34px,3.5vw,49px);font-weight:500;line-height:1.11;letter-spacing:-.045em}.section-intro{font-size:var(--body-size);line-height:1.7;color:var(--muted);margin-top:23px;max-width:560px}.services{border-top:1px solid var(--line)}.service{display:grid;grid-template-columns:65px 1.1fr 1.5fr 32px;align-items:center;gap:29px;padding:36px 0 38px;border-bottom:1px solid var(--line)}.service-symbol{width:46px;height:46px;border:1px solid #343740;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,rgba(211,244,154,.055),transparent)}.service-symbol svg{width:23px;height:23px;color:var(--accent)}.service h3{font-size:23px;line-height:1.15;letter-spacing:-.7px;font-weight:500;max-width:260px}.service-copy>p{color:var(--muted);font-size:var(--body-size);line-height:1.65;max-width:440px}.service-number{color:#555767;font-size:12px;justify-self:end;padding-top:4px}
.examples-section{background:#13141b;border-top:1px solid #1e1f28;border-bottom:1px solid #1e1f28}.examples{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.example-image{background:#27232e;border-radius:13px;overflow:hidden;position:relative;aspect-ratio:1.35;border:1px solid rgba(255,255,255,.1);isolation:isolate}.example-image img{width:100%;height:100%;object-fit:cover;object-position:center top;transition:transform .5s cubic-bezier(.2,.7,.3,1)}.example-open{position:absolute;bottom:12px;right:12px;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;font-size:18px;line-height:1;background:var(--text);color:#15161c;box-shadow:0 4px 20px #0003;transition:background .2s,transform .2s}.example-link:hover .example-image img{transform:scale(1.035)}.example-link:hover .example-open{background:var(--accent);transform:rotate(45deg)}.example-link{display:block;border-radius:13px}.example-meta{display:flex;justify-content:space-between;align-items:center;margin-top:23px;font-size:12px;color:var(--muted);letter-spacing:.3px}.example-meta>span:first-child{color:var(--accent);text-transform:uppercase;letter-spacing:1.5px}.example h3{font-size:20px;line-height:1.25;letter-spacing:-.5px;font-weight:500;margin-top:12px}.example p{color:var(--muted);font-size:var(--copy-small);line-height:1.7;margin-top:11px;max-width:300px}.demo-caption{display:flex;align-items:baseline;gap:9px;font-size:var(--caption-size);color:#90919f;line-height:1.6;margin-top:39px}.little-dot{display:inline-block;width:5px;height:5px;flex:0 0 5px;background:#aaa0c9;border-radius:50%}
.about-section>.section-index{margin-bottom:40px}.about-layout{display:grid;grid-template-columns:1fr 2.55fr;gap:32px;align-items:center}.about-mark{background:radial-gradient(ellipse at 90% 10%,rgba(134,110,210,.15),transparent 70%),linear-gradient(150deg,#1b1d27,#111219);border:1px solid #2a2b37;width:190px;height:190px;border-radius:40px;font-size:100px;line-height:1;font-weight:700;letter-spacing:-16px;display:flex;justify-content:center;align-items:center;position:relative;padding-right:15px;color:#d7d6e4;transform:rotate(-6deg)}.about-mark>span{position:absolute;top:13px;right:20px;color:var(--accent);font-size:35px;font-weight:400;letter-spacing:0}.about-layout h2{max-width:650px;font-size:clamp(34px,3.5vw,49px);line-height:1.13;font-weight:500;letter-spacing:-.045em}.about-layout p{font-size:var(--body-size);line-height:1.8;color:var(--muted);max-width:570px;margin-top:23px}.signature{display:flex;gap:12px;align-items:center;margin-top:30px;font-size:14px;color:#d4d4db}.signature-line{width:24px;height:1px;background:var(--accent)}.signature-location{padding-left:12px;border-left:1px solid #444550;color:#9193a2;font-size:13px}
.contact-layout{display:grid;grid-template-columns:1fr 1.08fr;gap:100px;padding-block:88px}.contact-copy h2{font-size:clamp(37px,4vw,57px);line-height:1.05;letter-spacing:-.05em;font-weight:500;max-width:390px;margin-top:25px}.contact-copy>p:not(.section-index){font-size:var(--body-size);line-height:1.8;color:var(--muted);max-width:340px;margin-top:23px}.contact-layout form{align-self:center}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:22px}.field{display:flex;flex-direction:column;gap:13px;margin-bottom:30px;min-width:0}.field label{font-size:14px;color:#dfdfe7}.field input,.field textarea{background:transparent;border:0;border-bottom:1px solid #484755;color:var(--text);border-radius:0;padding:0 0 13px;font-size:16px;min-width:0;width:100%;line-height:1.65}.field input::placeholder,.field textarea::placeholder{color:#90919f;opacity:1}.field textarea{min-height:111px;resize:vertical}.field input[aria-invalid=true],.field textarea[aria-invalid=true]{border-color:#eea7a7}.form-bottom{display:flex;justify-content:space-between;gap:20px;align-items:center}.form-bottom p{font-size:12px;line-height:1.7;color:#9d9dad}.form-bottom .button{font-size:14px;gap:16px;min-height:49px}.form-status{font-size:14px;line-height:1.7;color:var(--accent);min-height:42px;padding-top:16px;max-width:440px}.form-status.error{color:#f2b5b5}.site-footer{padding-block:34px;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:12px;color:#9393a1}.footer-name{color:var(--text);font-size:14px}.footer-name>span{color:var(--accent);margin-left:10px;font-size:14px}.draft-label{color:#808191;font-size:11px}.noscript-note{padding:20px;text-align:center;font-size:12px;color:var(--muted);border-top:1px solid var(--line)}
@media(min-width:1600px){.hero-content{padding-block:210px}.hero{min-height:900px}}
@media(max-width:1100px){:root{--gutter:36px}.site-header{gap:20px}.site-header nav{gap:22px}.service{grid-template-columns:50px 1fr 1.5fr 20px;gap:22px;align-items:center}.contact-layout{gap:60px}.example h3{font-size:18px}.section-heading,.about-layout{grid-template-columns:1fr 2.8fr}.about-mark{width:160px;height:160px;font-size:88px;border-radius:33px}.example-image{aspect-ratio:1.17}}
@media(max-width:800px){:root{--gutter:28px;--body-size:16px;--copy-small:15px;--intro-size:18px;--caption-size:12px;--nav-arrow-size:34px}.site-header{top:17px;height:66px;padding:8px 8px 8px 18px}.site-header nav{gap:19px;font-size:13px}.brand{gap:12px;font-size:12px}.monogram{font-size:28px;width:31px}.nav-contact{height:46px;gap:18px;padding-left:18px;font-size:12px}.round-arrow{width:var(--nav-arrow-size);height:var(--nav-arrow-size);font-size:17px;margin-right:5px;background:var(--accent-solid);color:#fff}.hero{min-height:790px}.hero-content{padding:180px 0 190px}h1{font-size:clamp(60px,8.5vw,75px)}.hero-intro{font-size:var(--intro-size);max-width:470px}.section{padding-block:84px}.section-heading{grid-template-columns:1fr;gap:24px;margin-bottom:45px}.section-index{padding-top:0;font-size:11px}.section-heading h2,.about-layout h2{font-size:40px}.section-intro{font-size:var(--body-size)}.service{grid-template-columns:44px 1fr 1.2fr;gap:20px;padding-block:30px;align-items:center}.service h3{font-size:21px}.service-number{display:none;font-size:12px}.service-copy>p{font-size:var(--body-size);line-height:1.65}.examples{gap:18px}.example-image{aspect-ratio:.95}.example h3{font-size:17px}.example p{font-size:var(--copy-small)}.example-meta{font-size:12px}.about-layout{grid-template-columns:160px 1fr;gap:40px}.about-layout h2{font-size:32px}.about-layout p{font-size:var(--body-size)}.about-mark{width:150px;height:150px}.signature{font-size:14px}.signature-location{font-size:13px}.contact-layout{gap:40px;padding-block:70px}.contact-copy h2{font-size:43px}.contact-copy>p:not(.section-index){font-size:var(--body-size)}.form-row{grid-template-columns:1fr;gap:0}.field{margin-bottom:25px}.field label{font-size:14px}.field input,.field textarea{font-size:16px}.form-bottom{align-items:start;flex-direction:column;gap:16px}.form-bottom p br{display:none}.site-footer{flex-wrap:wrap;row-gap:15px;font-size:12px}.site-footer>p{display:none}}
@media(max-width:600px){:root{--gutter:22px;--copy-small:16px;--intro-size:17px;--nav-arrow-size:32px}.site-header{top:14px;height:62px;padding-left:17px;gap:10px}.site-header nav{display:none;font-size:13px}.brand{gap:11px;font-size:12px}.nav-contact{gap:18px;height:44px;padding-left:17px}.round-arrow{width:var(--nav-arrow-size);height:var(--nav-arrow-size);font-size:17px;margin-right:5px;background:var(--accent-solid);color:#fff}.hero{min-height:760px;min-height:max(730px,100svh)}.hero-content{padding:158px 0 160px}.eyebrow{font-size:10px;margin-bottom:31px;padding:8px 12px;gap:8px}h1{font-size:clamp(43px,10.7vw,66px);letter-spacing:-.06em;line-height:1.08}.hero-intro{max-width:345px;margin-top:24px;font-size:var(--intro-size);line-height:1.75}.hero-actions{flex-direction:column;gap:12px;margin-top:28px}.button{min-height:49px;padding:15px 21px;font-size:15px;gap:20px}.button-text{min-height:43px;padding:12px 18px;border-color:transparent;background:transparent}.ambient-wash{background:radial-gradient(ellipse 140% 65% at 5% 100%,rgba(118,61,180,.36),transparent 85%),radial-gradient(ellipse 130% 65% at 100% 100%,rgba(80,76,177,.32),transparent 85%),linear-gradient(180deg,#0d0e14 8%,#151121 55%,#211936 100%)}.pointer-glow{opacity:calc(var(--hover-active,0)*.3)}.section{padding-block:68px}.section-heading{gap:22px;margin-bottom:34px}.section-index{font-size:11px;letter-spacing:1.3px}.section-heading h2{font-size:35px}.section-intro{font-size:var(--body-size);line-height:1.75;margin-top:18px}.desktop-break{display:none}.service{grid-template-columns:38px 1fr;gap:0 18px;padding-block:28px;align-items:center}.service-symbol{width:36px;height:36px;border-radius:11px}.service-symbol svg{width:20px;height:20px}.service-heading{padding-top:1px}.service h3{font-size:23px;max-width:none}.service-copy{grid-column:2;margin-top:15px}.service-copy>p{font-size:var(--body-size);line-height:1.65}.examples{grid-template-columns:1fr;gap:35px}.example-image{aspect-ratio:1.38;border-radius:12px}.example-meta{margin-top:17px;font-size:12px}.example h3{font-size:23px;margin-top:9px}.example p{font-size:var(--copy-small);max-width:320px;margin-top:9px}.demo-caption{margin-top:30px;font-size:var(--caption-size);line-height:1.75}.about-section>.section-index{margin-bottom:28px}.about-layout{grid-template-columns:1fr;gap:31px}.about-mark{width:95px;height:95px;border-radius:23px;font-size:57px;letter-spacing:-9px;padding-right:11px}.about-mark>span{font-size:20px;top:8px;right:11px}.about-layout h2{font-size:35px;max-width:420px}.about-layout p{font-size:var(--body-size);line-height:1.85;margin-top:18px}.signature{margin-top:23px;font-size:14px}.contact-layout{grid-template-columns:1fr;gap:35px;padding-block:65px 43px}.contact-copy h2{font-size:46px;max-width:350px;margin-top:23px}.contact-copy>p:not(.section-index){font-size:var(--body-size);max-width:340px;margin-top:20px}.form-row{grid-template-columns:1fr 1fr;gap:17px}.field{gap:13px;margin-bottom:27px}.field input,.field textarea{font-size:16px}.form-bottom{flex-direction:row;align-items:center;gap:15px}.form-bottom p{font-size:12px;max-width:135px}.form-bottom p br{display:block}.form-bottom .button{font-size:14px;gap:16px;min-height:46px;padding:14px 16px}.form-status{font-size:14px;min-height:34px}.site-footer{padding-block:25px;font-size:12px;row-gap:14px}.footer-name{font-size:14px}.draft-label{font-size:11px}}
@media(max-width:360px){:root{--gutter:18px}.brand>span:last-child{font-size:11px}.brand{gap:8px}.nav-contact{padding-left:14px;gap:18px}.site-header{padding-left:13px}.hero-intro{font-size:var(--intro-size)}.hero-content{padding-top:154px}.form-row{grid-template-columns:1fr;gap:0}.form-bottom{flex-direction:column;align-items:stretch}.form-bottom p{max-width:none;font-size:12px}.form-bottom p br{display:none}.section-heading h2,.about-layout h2{font-size:32px}.contact-copy h2{font-size:42px}.signature{gap:9px;font-size:14px}.signature-location{padding-left:9px;font-size:13px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.pointer-glow{display:none}}

.hero-actions .button{width:204px;max-width:100%;justify-content:center}
/* Optionaler Profil-Link im Kontaktbereich; nur bei gesetzter Profiladresse. */
.social-links{margin-top:28px}
.social-link{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:8px 0;color:var(--accent);font-size:16px;text-underline-offset:5px}
.social-link svg{width:20px;height:20px;flex:0 0 auto}
.social-link>span:last-child{font-size:14px}
.social-link:hover{text-decoration:underline;color:var(--text)}

/* Ankersprünge: Abschnitt an den oberen Rand, Inhalt unter den festen Header. */
:root{--section-top:128px}
.section,.contact-layout{padding-top:var(--section-top)}
@media(max-width:800px){:root{--section-top:108px}}
@media(max-width:600px){:root{--section-top:100px}}

/* Abdunklung nur über der Grundzeichnung; aktive Beleuchtung bleibt darüber. */
.ambient::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(180deg,rgba(13,14,20,.94) 0%,rgba(13,14,20,.93) 20%,rgba(13,14,20,.84) 30%,rgba(13,14,20,.54) 43%,rgba(13,14,20,.2) 58%,transparent 75%),radial-gradient(ellipse 48% 33% at 50% 50%,rgba(13,14,20,.92) 0%,rgba(13,14,20,.88) 20%,rgba(13,14,20,.62) 48%,rgba(13,14,20,.25) 73%,transparent 100%)}

.ambient .field-base{z-index:0}
.pointer-glow{z-index:2}
.ambient .field-active{z-index:3}
/* Nur hinter der Schrift wird die aktive Beleuchtung sanft reduziert. */
.ambient .field-active,.pointer-glow{mask-image:radial-gradient(ellipse 42% 28% at 50% 50%,rgba(0,0,0,.45) 0%,rgba(0,0,0,.7) 45%,#000 100%)}

/* Gemeinsamer Abschluss: Kontakt und Footer teilen die Hintergrund-Komponente. */
.contact-ending{position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;min-height:100svh;border-top:1px solid var(--line)}
.contact-ending .contact-layout{flex:1;align-content:start;padding-bottom:48px}
.contact-ending .site-footer{flex-shrink:0;border-top:1px solid var(--line)}
@media(max-width:600px){.contact-ending .contact-layout{padding-bottom:32px}}

@media(min-width:801px){.contact-ending .contact-layout{padding-bottom:32px}}
@media(min-width:801px) and (max-height:660px){.contact-ending .contact-layout{padding-top:104px}}
/* Ruhiger Abschluss: statische Motive ohne aktive Licht- oder Konturebene. */
[data-ambient-static] .pointer-glow,[data-ambient-static] .field-active{visibility:hidden}
