:root{--cream:#f5f3ed;--olive:#818e55;--olive-dark:#505b37;--sage:#b3b99c;--rose:#b8999c;--wine:#6b3842;--ink:#30342a;--line:#d7d8cb;--serif:Georgia,'Times New Roman',serif;--sans:'Segoe UI',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.7}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--wine);outline-offset:6px}input:focus,select:focus,textarea:focus{outline:2px solid var(--olive-dark);outline-offset:3px}img{display:block;width:100%;height:auto}button{cursor:pointer}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.14}em{font-weight:400;color:var(--wine)}p+p{margin-top:18px}.skip-link{position:absolute;top:-100px;background:white;padding:12px;z-index:100}.skip-link:focus{top:0}.header{display:flex;align-items:center;justify-content:space-between;padding:20px 5%;border-bottom:1px solid var(--line);gap:25px;position:sticky;top:0;background:rgba(245,243,237,.97);z-index:20}.brand{display:flex;flex-direction:column;line-height:1.2;flex-shrink:0}.brand-name{font-family:var(--serif);font-size:34px;letter-spacing:-1.4px;font-style:italic}.brand-dot{color:var(--wine)}.brand-sub{font-size:8.5px;letter-spacing:1.8px;margin-top:7px}.header nav{display:flex;align-items:center;gap:32px;font-size:13px}.header nav>a:not(.nav-cta):hover{color:var(--wine)}.nav-cta{border:1px solid var(--olive-dark);padding:12px 20px;display:flex;gap:22px;align-items:center}.nav-cta:hover{background:var(--olive-dark);color:var(--cream)}.menu-toggle{display:none}.hero{max-width:1440px;margin:auto;padding:66px 7% 62px;display:grid;grid-template-columns:1.12fr 1fr;gap:65px;align-items:center}.eyebrow{font-size:10px;font-weight:650;letter-spacing:2px;line-height:1.5}.hero .eyebrow{display:flex;align-items:center;gap:12px;font-size:9px;letter-spacing:1.6px}.tiny-flower{color:var(--wine);font-size:25px;line-height:1}h1{font-size:clamp(58px,5.8vw,88px);letter-spacing:-3px;margin:25px 0 25px;line-height:1.03}.hero-intro{font-size:15px;line-height:1.85;color:#55584e;max-width:430px}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:30px;padding:16px 23px;border:1px solid transparent;font-size:13px;font-weight:600;min-height:53px;transition:background .2s,transform .2s}.primary{background:var(--olive-dark);color:var(--cream)}.primary:hover{background:var(--wine);transform:translateY(-2px)}.hero .button{margin-top:29px}.text-link{font-size:13px;font-weight:600;border-bottom:1px solid currentColor;padding-bottom:5px;display:inline-flex;align-items:center;gap:24px}.hero-link{display:flex;width:max-content;margin-top:19px;color:var(--olive-dark);border:0;font-size:12px}.hero-note{display:flex;align-items:center;gap:12px;margin-top:42px;font:italic 18px var(--serif);color:var(--olive-dark)}.note-line{height:1px;width:39px;background:var(--olive)}.hero-visual{position:relative;padding:0 0 30px}.photo-arch{border-radius:230px 230px 4px 4px;overflow:hidden;height:570px;background:var(--sage)}.photo-arch img{height:100%;object-fit:cover;object-position:center 45%}.photo-caption{position:absolute;bottom:0;left:-33px;right:27px;background:var(--rose);padding:23px 24px;display:flex;gap:20px;align-items:center;transform:rotate(-3deg);box-shadow:0 10px 25px #30342a0a}.photo-caption div{display:flex;flex-direction:column}.photo-caption div>span:last-child{font-size:10px;margin-top:6px}.handwritten{font:italic 27px var(--serif)}.small-spark{font-size:45px;color:var(--wine);line-height:1}.image-edge-label{position:absolute;writing-mode:vertical-rl;right:-30px;top:145px;font-size:8px;letter-spacing:2px}.intro-strip{background:#e6e8db;border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:center;gap:52px;padding:23px 5%;font:italic 19px var(--serif);color:var(--olive-dark)}.intro-strip>span:nth-child(even){font-size:20px;color:var(--wine)}.section{max-width:1280px;margin:auto;padding:94px 6%}h2{font-size:clamp(37px,3.6vw,55px);letter-spacing:-1.7px}h3{font-size:27px;letter-spacing:-.5px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:50px;margin-bottom:45px}.section-heading .eyebrow,.about .eyebrow,.values .eyebrow,.process .eyebrow,.contact .eyebrow{margin-bottom:18px}.section-heading>p{max-width:340px;font-size:14px;color:#616458;margin-bottom:5px}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.service-image{height:315px;position:relative;overflow:hidden}.service-image img{height:100%;object-fit:cover;transition:transform .5s}.service:hover .service-image img{transform:scale(1.035)}.image-tag{position:absolute;bottom:19px;left:0;padding:10px 18px;background:var(--cream);font:italic 19px var(--serif)}.service-copy{padding-top:24px}.service-copy .eyebrow{font-size:9px;letter-spacing:1.7px;color:var(--olive-dark);margin-bottom:10px}.service h3{font-size:25px}.service-copy>p:not(.eyebrow){font-size:13px;line-height:1.85;margin-top:14px;min-height:97px;color:#5b5e53}details{border-bottom:1px solid var(--line)}summary{font-size:11px;font-weight:600;list-style:none;cursor:pointer;padding:15px 0;display:flex;align-items:center;justify-content:space-between;gap:15px}summary::-webkit-details-marker{display:none}summary span{font-size:20px;font-weight:400;transition:transform .2s}details[open] summary span{transform:rotate(45deg)}.detail-content{font-size:13px;padding-bottom:20px}.detail-content a{display:inline-block;margin-top:15px;border-bottom:1px solid var(--olive-dark);color:var(--olive-dark)}.anniversary{display:flex;align-items:center;gap:26px;padding:32px;margin-top:45px;background:#e9e2df}.anniversary-flower{font-size:49px;color:var(--wine);line-height:1}.anniversary h3{font-size:27px;font-style:italic}.anniversary p{font-size:12px;margin-top:9px;max-width:550px}.anniversary>a{margin-left:auto;white-space:nowrap;color:var(--wine)}.about{padding-top:35px;padding-bottom:100px;display:grid;grid-template-columns:.9fr 1fr;gap:100px;align-items:center}.about-visual{position:relative;padding:15px 0 28px 20px}.about-visual:before{content:'';position:absolute;inset:0 25px 6px 0;background:var(--sage);transform:rotate(-4deg);z-index:-1}.about-photo{height:550px;object-fit:cover;object-position:center 40%}.about-sticker{position:absolute;bottom:0;right:-25px;background:var(--cream);border:1px solid var(--line);padding:19px 28px;font:italic 22px/1.25 var(--serif);transform:rotate(4deg);color:var(--wine)}.about h2{font-size:44px}.about-copy>p:not(.eyebrow){font-size:14px}.about-copy .lead{font-size:18px!important;line-height:1.5;margin-top:24px}.about-emphasis{font:italic 23px/1.5 var(--serif)!important;color:var(--wine);margin:24px 0!important}.values{background:var(--olive);color:var(--cream)}.values-inner{padding-top:68px;padding-bottom:70px}.values-heading{text-align:center}.values h2{font-size:44px}.values em{color:var(--cream)}.values-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:35px;margin-top:50px}.values-grid>div{border-top:1px solid #e6e8db77;padding-top:18px}.values-grid span{font-size:10px;letter-spacing:2px}.values h3{margin:16px 0 12px;font-size:25px}.values-grid p{font-size:13px;line-height:1.75}.process{display:grid;grid-template-columns:1fr 1fr;gap:95px;align-items:start}.process-intro>p:not(.eyebrow){font-size:14px;max-width:420px;margin-top:23px}.process img{margin-top:32px;height:245px;object-fit:cover;object-position:center 44%}.steps{list-style:none;padding:0;margin:15px 0 0}.steps li{display:flex;gap:24px;padding:25px 0;border-bottom:1px solid var(--line)}.steps li:first-child{padding-top:0}.step-number{font:italic 32px var(--serif);color:var(--olive);flex-shrink:0}.steps h3{font-size:24px;margin:3px 0 12px}.steps p{font-size:13px;color:#5b5e53}.contact{background:#e6e8db}.contact-inner{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px}.contact h2{font-size:65px;line-height:1.06}.contact-copy>p:not(.eyebrow){font-size:14px;max-width:350px;margin-top:25px}.email-link{font-size:18px;border-bottom:1px solid #787b69;display:inline-flex;gap:25px;margin-top:30px;padding-bottom:5px}.contact-signature{font:italic 30px var(--serif);color:var(--wine);margin-top:50px;transform:rotate(-5deg);display:inline-block}form{padding-top:6px}label{display:block;font-size:11px;font-weight:600;margin-bottom:20px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}input,select,textarea{display:block;width:100%;border:0;border-bottom:1px solid #9ca18b;border-radius:0;background:#f5f3ed99;padding:12px 13px;margin-top:7px;color:var(--ink);font-size:13px;min-height:45px}textarea{resize:vertical;min-height:120px}input::placeholder,textarea::placeholder{color:#686b60;opacity:1}.optional{font-weight:400}.form-note{font-size:10px;color:#555b4a;line-height:1.7;margin-bottom:20px}.form-status{font-size:12px;margin-top:15px}.form-status:empty{display:none}#mail-fallback{font-size:12px;margin-top:15px}#copy-message{background:none;border:0;border-bottom:1px solid;color:var(--wine);padding:0 0 5px;margin-bottom:10px}.footer{max-width:1280px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:30px;padding:30px 6%}.footer-brand{display:flex;align-items:center;gap:15px}.footer-brand img{width:88px;height:88px;mix-blend-mode:multiply}.footer-brand .brand-name{font-size:29px}.footer p{font-size:10px;line-height:1.6}.footer>p{font:italic 18px/1.4 var(--serif);color:var(--olive-dark)}.footer>.text-link{font-size:10px}
@media(min-width:1500px){.hero{padding-left:80px;padding-right:80px}.section{padding-left:60px;padding-right:60px}}
@media(max-width:1100px){.header nav{gap:20px}.header{padding-left:4%;padding-right:4%}.hero{gap:45px;padding-left:6%;padding-right:6%}.photo-arch{height:525px}h1{font-size:65px}.service-grid{gap:20px}.service h3{font-size:22px}.service-image{height:270px}.about{gap:60px}.about h2{font-size:37px}.contact-inner{gap:45px}.contact h2{font-size:58px}.process{gap:50px}.anniversary{padding:26px;gap:20px}.anniversary p{max-width:420px}}
@media(max-width:800px){html{scroll-padding-top:85px}.header{padding:16px 6%;flex-wrap:wrap;gap:0}.brand-name{font-size:29px}.brand-sub{font-size:7px}.menu-toggle{display:flex;align-items:center;gap:12px;border:0;background:none;color:var(--ink);font-size:13px;padding:10px 0 10px 15px}.header nav{display:none;flex-direction:column;align-items:stretch;width:100%;gap:0;padding-top:20px}.header nav.open{display:flex}.header nav>a{padding:13px 0}.header .nav-cta{padding:13px 15px;margin-top:8px;justify-content:space-between}.hero{padding:44px 7% 55px;gap:35px;grid-template-columns:1fr 1fr}.hero .eyebrow{font-size:8px;letter-spacing:1px;gap:6px}.tiny-flower{font-size:18px}h1{font-size:49px;letter-spacing:-2px}.hero-intro{font-size:13px}.desktop-break{display:none}.hero .button{font-size:11px;padding:13px 14px;gap:15px}.hero-note{font-size:14px;margin-top:30px}.photo-arch{height:440px}.photo-caption{left:-15px;right:10px;padding:18px 14px;gap:10px}.small-spark{font-size:30px}.handwritten{font-size:20px}.photo-caption div>span:last-child{font-size:8px}.image-edge-label{right:-23px}.intro-strip{gap:22px;font-size:15px}.section{padding-top:66px;padding-bottom:66px}.section-heading{gap:30px}.section-heading>p{max-width:250px;font-size:13px}.service-grid{gap:18px}.service-image{height:225px}.image-tag{font-size:15px;padding:9px 11px;bottom:14px}.service h3{font-size:22px;overflow-wrap:anywhere}.service-copy>p:not(.eyebrow){font-size:12px;min-height:130px}.service summary{font-size:10px}.anniversary{flex-wrap:wrap}.anniversary div{flex:1}.anniversary>a{margin-left:69px}.about{gap:40px}.about-photo{height:480px}.about h2{font-size:34px}.about-sticker{font-size:18px;padding:15px;right:-8px}.about-copy>p:not(.eyebrow){font-size:13px}.values h2{font-size:35px}.values-grid{gap:20px}.values h3{font-size:21px}.values-grid p{font-size:12px}.process{gap:35px}.steps h3{font-size:21px}.steps li{gap:17px}.process h2{font-size:35px}.contact-inner{grid-template-columns:1fr;gap:45px}.contact h2 br{display:none}.contact h2{font-size:48px;max-width:580px}.contact-copy>p:not(.eyebrow){max-width:530px}.contact-signature{display:none}.contact .email-link{font-size:16px;margin-top:20px}.footer>p{display:none}}
@media(max-width:560px){.hero{grid-template-columns:1fr;padding-top:35px;gap:35px}.hero .eyebrow{font-size:8px;letter-spacing:1.5px}h1{font-size:62px;margin-top:19px;line-height:1.01}.hero-intro{font-size:14px;max-width:360px}.hero .button{font-size:12px;padding:16px 20px}.hero-note{display:none}.hero-visual{margin-left:20px;margin-right:14px}.photo-arch{height:420px;border-radius:200px 200px 3px 3px}.photo-arch img{object-position:center 34%}.photo-caption{padding:20px;left:-20px;right:0}.handwritten{font-size:25px}.photo-caption div>span:last-child{font-size:9px}.intro-strip{gap:15px;flex-wrap:wrap;padding:19px 7%;font-size:15px}.intro-strip>span:nth-child(4),.intro-strip>span:nth-child(5){display:none}.intro-strip>span:nth-child(even){font-size:15px}.section{padding:58px 7%}.section-heading{display:block;margin-bottom:30px}.section-heading>p{max-width:none;margin-top:22px}.eyebrow{font-size:9px;letter-spacing:1.5px}h2{font-size:39px}.service-grid{grid-template-columns:1fr;gap:35px}.service-image{height:310px}.service:nth-child(2) .service-image img{object-position:center 60%}.service:nth-child(3) .service-image img{object-position:center 56%}.image-tag{font-size:22px;padding:12px 20px}.service-copy{padding-top:21px}.service h3{font-size:30px}.service-copy>p:not(.eyebrow){min-height:0;font-size:14px;margin-top:14px}.service summary{font-size:12px;margin-top:5px}.anniversary{margin-top:32px;padding:23px;gap:16px}.anniversary-flower{font-size:34px;align-self:flex-start}.anniversary h3{font-size:24px}.anniversary p{font-size:12px}.anniversary>a{margin-left:50px;font-size:12px}.about{grid-template-columns:1fr;gap:42px;padding-top:15px}.about-visual{margin-right:15px}.about-photo{height:455px}.about h2{font-size:39px}.about-copy>p:not(.eyebrow){font-size:14px}.values h2{font-size:35px}.values-grid{grid-template-columns:1fr 1fr;gap:25px;margin-top:35px}.values h3{font-size:24px}.values-grid p{font-size:13px}.process{grid-template-columns:1fr;gap:15px}.process h2{font-size:39px}.process img{height:230px}.steps{margin-top:15px}.steps h3{font-size:25px}.steps li{padding:25px 0;gap:23px}.steps li:first-child{padding-top:15px}.steps p{font-size:14px}.step-number{font-size:35px}.contact-inner{gap:35px}.contact h2{font-size:49px}.contact h2 br{display:initial}.form-row{grid-template-columns:1fr;gap:0}.form-note{font-size:11px}input,select,textarea{font-size:16px}label{font-size:12px}.footer{padding:22px 7%;align-items:flex-start;flex-wrap:wrap;gap:14px}.footer-brand img{width:72px;height:72px}.footer-brand{gap:8px}.footer-brand .brand-name{font-size:27px}.footer>.text-link{margin-left:80px}.email-link{overflow-wrap:anywhere;font-size:16px}.hero-link{font-size:12px}}
.photo-arch img,.about-photo{object-position:center top}.about-visual{isolation:isolate}.service h3{overflow-wrap:normal;hyphens:manual}
.values-grid,.values .eyebrow{color:#202617}.values-grid>div{border-color:#35412477}.values-grid p{font-weight:450}
@media(max-width:560px){h1{font-size:clamp(40px,11.5vw,60px);letter-spacing:-1.8px}.hero .eyebrow{letter-spacing:1px}.about-photo{height:450px}}
.header nav{gap:24px}.nav-dropdown{position:relative}.services-toggle{border:0;background:none;color:inherit;padding:12px 0;display:flex;align-items:center;gap:8px;font-size:inherit}.services-toggle:hover,.services-toggle[aria-expanded="true"]{color:var(--wine)}.services-toggle span{transition:transform .2s}.services-toggle[aria-expanded="true"] span{transform:rotate(180deg)}.services-menu{list-style:none;position:absolute;top:100%;left:-18px;min-width:250px;margin:0;padding:8px;background:var(--cream);border:1px solid var(--line);box-shadow:0 12px 24px #30342a15}.services-menu[hidden]{display:none}.services-menu a{display:block;padding:12px 14px;white-space:nowrap}.services-menu a:hover,.services-menu a:focus-visible{background:#e6e8db;color:var(--olive-dark)}
@media(min-width:801px) and (max-width:1100px){.header nav{gap:13px;font-size:12px}.header .nav-cta{padding:12px;gap:12px}.brand-name{font-size:30px}.brand-sub{letter-spacing:1px}}
@media(max-width:800px){.header nav{gap:0}.services-toggle{width:100%;justify-content:space-between;padding:13px 0}.services-menu{position:static;min-width:0;box-shadow:none;border:0;border-left:2px solid var(--sage);margin:0 0 8px;padding:0 0 0 12px}.services-menu a{white-space:normal;padding:12px}.header nav.open{max-height:calc(100dvh - 100px);overflow-y:auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Leistungen als einzelne Zeilen; ruhiger Einstieg und vollständiger Vorstellungstext. */
.hero-note{line-height:1.4}.note-line{flex-shrink:0}
.services-menu{width:310px}.services-menu a{white-space:normal}
.service-grid{grid-template-columns:1fr;gap:54px}
.service{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:48px;align-items:center}
.service-image{height:350px}.service-copy{padding-top:0}.service h3{font-size:32px}
.service-copy>p:not(.eyebrow){min-height:0;font-size:15px}.service summary{font-size:13px}
.image-tag{font-size:20px}.section-heading>div{max-width:620px}
.about{grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:65px;align-items:start}
.about-visual{max-width:350px;margin-top:12px}.about-photo{height:auto;object-fit:contain}
.about-copy>p:not(.eyebrow){font-size:15px}.about-copy>.text-link{margin-top:25px}
.values-inner{padding-top:50px;padding-bottom:50px}
@media(max-width:800px){.service{gap:28px}.service h3{font-size:27px}.image-tag{font-size:17px;padding:10px 12px}.about{gap:35px;grid-template-columns:minmax(0,.65fr) minmax(0,1.35fr)}.about-sticker{font-size:16px;padding:12px}.services-menu{width:auto}}
@media(max-width:560px){.hero-note{display:flex;font-size:16px;margin-top:24px}.intro-strip{flex-direction:column;gap:10px}.intro-strip>span:nth-child(5){display:inline}.intro-strip>span:nth-child(even){display:none}.service{grid-template-columns:1fr;gap:22px}.service-grid{gap:45px}.service-image{height:330px}.service h3{font-size:29px}.image-tag{font-size:19px}.about{grid-template-columns:1fr;gap:38px}.about-visual{width:80%;max-width:300px;margin:0 auto}.about-photo{height:auto}.about-sticker{font-size:18px}.values-inner{padding-top:40px;padding-bottom:40px}}
