:root{--color-ink:#faf6ef;--color-ink-2:#f6ece6;--color-panel:#fffdf9;--color-panel-2:#f1e6de;--color-line:#ded1c9;--color-line-2:#d6c3bb;--color-fg:#381c26;--color-fg-2:#665059;--color-fg-3:#665059;--color-brand:#9c1536;--color-brand-bright:#b10034;--color-on-brand:#fff;--color-accent:#e2854a;--color-accent-bright:#edaa7c;--radius:12px;--font-display:Georgia,'Times New Roman',serif;--font-sans:Arial,Helvetica,sans-serif}
*{box-sizing:border-box}body{margin:0;background:var(--color-ink);color:var(--color-fg);font:17px/1.65 var(--font-sans)}a{color:inherit;text-underline-offset:.24em}button{font:inherit;cursor:pointer}img{max-width:100%;display:block;height:auto}figure{margin:0}p{margin:0 0 1em}h1,h2,h3{overflow-wrap:break-word}h1,h2{font-family:var(--font-display);font-weight:400;line-height:1.12;letter-spacing:-.035em;margin:0 0 24px}h1{font-size:clamp(36px,4.4vw,64px)}h2{font-size:clamp(30px,3.1vw,44px)}h3{font-size:23px;line-height:1.3;margin:0 0 12px}::selection{background:#e2854a;color:#381c26}:focus-visible{outline:3px solid #9c1536;outline-offset:5px}a,button,summary{touch-action:manipulation}button:disabled{cursor:default} .wrap{max-width:1240px;margin:auto;padding-inline:40px}.reading{max-width:850px}.section{padding-block:88px}.eyebrow{font-size:13px;font-weight:bold;letter-spacing:.1em;text-transform:uppercase;color:var(--color-brand);margin:0 0 20px}.draft{text-align:center;background:#f1dfce;color:#533425;font-size:13px;padding:6px 18px}.skip{position:absolute;left:12px;top:-80px;z-index:999;background:white;padding:12px}.skip:focus{top:12px}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.nav3{padding:0;background:transparent}.brandbar{background:#b10034;color:#fff}.brand-inner{display:flex;justify-content:space-between;align-items:center;padding-block:17px}.brand-inner img{width:238px}.brand-inner span{text-align:right;font-size:14px;line-height:1.5}.brand-inner a{color:#fff}.nav3__bar{position:relative;top:0;max-width:none;margin:0;padding:9px 24px;border:0;border-bottom:1px solid var(--color-line);border-radius:0;background:var(--color-panel);box-shadow:none;backdrop-filter:none;animation:none;justify-content:center}.nav3__link{color:var(--color-fg);font:15px/1.4 var(--font-sans);padding:13px 16px;border-radius:5px}.nav3__link[aria-current]{background:#f4e5e8;color:var(--color-brand);font-weight:bold}.mobile-nav{display:none;width:100%}.mobile-nav summary{padding:11px 4px;font-weight:bold;list-style:none;display:flex;justify-content:space-between;cursor:pointer}.mobile-nav ul{list-style:none;margin:0;padding:10px 0}.mobile-nav a{display:block}
.hero6{padding:58px 40px 70px;background:var(--color-ink)}.hero6__inner{max-width:1160px;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:52px}.hero6__h1{font:400 clamp(38px,4.35vw,64px)/1.08 var(--font-display);letter-spacing:-.04em}.intro{font-size:18px;line-height:1.65;margin-top:24px;max-width:520px}.hero-photo img{width:100%;height:450px;object-fit:cover;border-radius:92px 12px 12px 12px}.hero-photo figcaption{font-size:13px;color:var(--color-fg-2);margin-top:10px}.sub-hero .hero-photo img{height:380px}.sub-hero .hero6__h1{font-size:clamp(36px,3.8vw,52px)}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}.button{display:inline-flex;gap:12px;align-items:center;justify-content:center;padding:13px 20px;background:var(--color-brand);color:#fff;text-decoration:none;border:1px solid var(--color-brand);border-radius:5px;font-size:16px;line-height:1.4;min-height:48px;font-weight:bold;white-space:nowrap}.button.secondary{background:transparent;color:var(--color-brand)}.textlink{display:inline-flex;align-items:center;gap:12px;color:var(--color-brand);font-weight:bold;margin-top:10px}.writing{display:block;width:75%;height:30px;color:var(--color-accent);margin:12px 0 0;transform-origin:left center}.motion .writing{animation:write-stroke 1.1s cubic-bezier(.23,1,.32,1) both}@keyframes write-stroke{from{clip-path:inset(0 100% 0 0)}to{clip-path:inset(0)}}
.biz-work{padding:64px 40px 80px;background:var(--color-panel)}.section-heading{display:flex;gap:70px;align-items:start;justify-content:space-between;margin-bottom:35px}.section-heading h2{max-width:420px}.section-heading p{max-width:470px;margin:0}.biz-work__grid{gap:32px;grid-template-columns:repeat(3,minmax(0,1fr))}.biz-work__card{gap:23px}.biz-work__thumb{border-radius:12px;aspect-ratio:1.48;box-shadow:none}.biz-work__card p{font-size:16px;color:var(--color-fg-2)}.biz-work__card:hover .biz-work__thumb,.biz-work__card:focus-visible .biz-work__thumb{transform:none;box-shadow:none}.biz-work__card:hover .biz-work__thumb img{transform:none}
.gift-stage{padding:100px 0;background:#f3e8dd}.gift-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:68px;align-items:center}.gift-gallery img{width:100%;height:500px;object-fit:cover;border-radius:12px}.gift-view[hidden]{display:none}.gift-view figcaption{margin-top:10px;font-size:14px;color:var(--color-fg-2)}.gift-copy{position:relative}.gift-art{width:70px;color:var(--color-brand);margin-bottom:22px}.gift-controls{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.gift-controls[hidden]{display:none}.gift-controls button{border:1px solid #ad8b7d;background:transparent;border-radius:5px;min-height:46px;padding:10px 14px;color:var(--color-fg);font-size:15px}.gift-controls button[aria-pressed=true]{background:var(--color-brand);color:white;border-color:var(--color-brand)}.motion .gift-view.changed{animation:gift-fade .75s cubic-bezier(.22,.61,.36,1)}.motion .gift-lid.opening{animation:lid .8s cubic-bezier(.23,1,.32,1)}@keyframes gift-fade{from{opacity:.25;transform:translateX(var(--gift-x,105%))}to{opacity:1;transform:translateX(0)}}@keyframes lid{50%{transform:translateY(-8px) rotate(-5deg)}to{transform:none}}
.split{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center}.split figure img{width:100%;height:390px;object-fit:cover;border-radius:12px}.owner-section .split{grid-template-columns:.7fr 1fr;max-width:1060px}.owner-section figure img{height:440px;object-position:50% 20%}.soft-section{background:#fffdf9}.more-band{background:#f2e9e2}.more-band .reading{max-width:950px}.smoke-art{width:95px;height:106px;float:right;color:var(--color-brand);margin:0 0 15px 22px}.motion .smoke-art.animate .smoke-lines{animation:smoke 3s ease-out}@keyframes smoke{0%{opacity:.25;transform:translateY(6px)}65%{opacity:1;transform:translateY(-4px)}100%{transform:none}}.more-list{display:grid;grid-template-columns:repeat(2,1fr);gap:36px;margin-top:38px}.more-list article{border-top:1px solid var(--color-line);padding-top:25px}.book-photo{margin-top:28px;width:50%}.book-photo img{max-height:320px;width:100%;object-fit:cover;border-radius:12px}
.visit-band{padding:70px 0;background:var(--color-brand);color:white}.visit-band .wrap{display:flex;align-items:center;gap:70px;justify-content:space-between}.visit-band .wrap>div{max-width:750px}.visit-band .eyebrow{color:#ffd8bd}.visit-band h2{font-weight:400;letter-spacing:-.02em;line-height:1.15}.visit-band p{color:#fff;line-height:1.7}.visit-band .button{background:white;color:var(--color-brand);border-color:white;flex:none}.visit-band :focus-visible{outline-color:#ffd8bd}
.contact-grid{display:grid;grid-template-columns:.75fr 1.4fr;gap:60px}.contact-grid address{font-style:normal;line-height:2}.hours table{width:100%;border-collapse:collapse;font-size:15px;font-variant-numeric:tabular-nums}.hours th,.hours td{padding:11px 7px;border-bottom:1px solid var(--color-line);text-align:left}.hours th{font-weight:bold}.hours thead{font-size:13px}.hours+p{font-size:15px;margin-top:20px}.foot3{padding:54px 0 30px;background:var(--color-panel)}.foot3__inner{max-width:1240px;grid-template-columns:220px 1fr;gap:48px}.foot3__brand,.foot3__col{animation:none}.foot3__brand{gap:15px}.foot3__brand img{border-radius:5px}.foot3__brand p,.foot3__cols p,.foot3__cols a{font-size:14px;line-height:1.7}.foot3__cols{grid-template-columns:1fr 1.15fr 1fr;gap:28px}.foot3__title{font-family:var(--font-sans);font-size:16px}.smallprint{font-size:13px;color:var(--color-fg-2);margin-top:35px;padding-top:24px;border-top:1px solid var(--color-line)}.motion-toggle{border:1px solid var(--color-line-2);border-radius:5px;background:transparent;color:var(--color-fg);padding:10px;font-size:13px;min-height:44px}.motion-toggle[hidden]{display:none}
@media(hover:hover) and (pointer:fine){.button:hover{background:#77102a;border-color:#77102a;color:white}.button.secondary:hover{background:#f1e2e5;color:#77102a}.textlink:hover{color:#77102a}.visit-band .button:hover{background:#f3e8dd;color:#77102a}.gift-controls button:hover{border-color:var(--color-brand)}}
@media(max-width:1050px){.nav3__link{padding:12px 10px;font-size:14px}.hero6__inner{gap:32px}.gift-grid{gap:36px}.hero-photo img{height:400px}.foot3__inner{grid-template-columns:1fr}.foot3__brand{max-width:280px}.hero6__h1{font-size:50px}.split{gap:40px}.contact-grid{grid-template-columns:1fr 1.6fr;gap:25px}}
@media(max-width:760px){body{font-size:16px}.wrap{padding-inline:22px}.section{padding-block:56px}.brand-inner{padding-block:14px}.brand-inner img{width:205px}.brand-inner span{display:none}.nav3__bar{padding:0 22px}.desktop-nav{display:none}.mobile-nav{display:block}.hero6{padding:36px 22px 45px}.hero6__inner{grid-template-columns:1fr;gap:32px}.hero6__h1{font-size:46px;max-width:540px}.sub-hero .hero6__h1{font-size:38px}.hero-photo img,.sub-hero .hero-photo img{height:350px;border-top-left-radius:65px}.intro{font-size:17px;margin-top:20px}.hero-photo figcaption{font-size:12px}.eyebrow{font-size:12px}.biz-work{padding:50px 22px}.section-heading{display:block;margin-bottom:30px}.section-heading h2{margin-bottom:18px}.biz-work__grid{grid-template-columns:1fr;gap:38px}.biz-work__thumb{aspect-ratio:1.6}.gift-stage{padding:58px 0}.gift-grid{grid-template-columns:1fr;gap:32px}.gift-copy{grid-row:1}.gift-art{float:right;width:55px;margin-left:18px}.gift-gallery img{height:360px}.split,.owner-section .split{grid-template-columns:1fr;gap:30px}.split figure img{height:330px}.owner-section figure{max-width:340px}.owner-section figure img{height:380px}.more-list{grid-template-columns:1fr;gap:22px}.book-photo{width:100%}.visit-band{padding:50px 0}.visit-band .wrap{display:block}.visit-band .button{margin-top:12px}.contact-grid{grid-template-columns:1fr;gap:40px}.hours table{font-size:14px}.hours th,.hours td{padding:10px 4px}.foot3__inner{padding-inline:22px;gap:30px}.foot3__cols{grid-template-columns:1fr 1fr;gap:30px}.foot3__cols>div:last-child{grid-column:1/-1}.button{font-size:15px;padding:12px 16px}.actions{gap:10px}}
@media(max-width:400px){.hero6__h1{font-size:40px}.hero-photo img,.sub-hero .hero-photo img{height:305px}.hours table{font-size:14px}.gift-controls button{padding:9px 10px;font-size:14px}.foot3__cols{grid-template-columns:1fr}.foot3__cols>div:last-child{grid-column:auto}}
.hero-photo img.portrait{object-fit:contain;background:#f1e6de;object-position:center}.split figure img.portrait{height:460px;object-fit:contain;background:#f1e6de}.owner-section .split figure img.portrait{object-fit:cover;object-position:50% 20%;height:440px}
@media(max-width:760px){.hero-photo img.portrait{height:400px}.split figure img.portrait{height:420px}.owner-section .split figure img.portrait{height:380px}}
@media(prefers-reduced-motion:reduce){body:not(.motion-opt-in) *,body:not(.motion-opt-in) *::before,body:not(.motion-opt-in) *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}body.motion-off *,body.motion-off *::before,body.motion-off *::after{animation:none!important;transition:none!important}

/* Kompakte Foto-Galerien: ohne JavaScript horizontal scrollbar. */
.photo-gallery{min-width:0}.photo-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;border-radius:12px;background:#f1e6de;touch-action:pan-y pinch-zoom}.photo-slide{flex:0 0 100%;min-width:0;scroll-snap-align:start}.photo-gallery .photo-track .photo-slide img,.split .photo-gallery .photo-track img.portrait,.book-photo .photo-gallery img{width:100%;height:390px;max-height:none;object-fit:contain;background:#f1e6de;border-radius:0}.photo-slide figcaption{padding:10px 14px;font-size:14px;line-height:1.5;background:#faf6ef}.photo-gallery.enhanced .photo-track{overflow:hidden;display:block}.photo-gallery.enhanced .photo-slide figcaption{display:none}.photo-slide[hidden],.photo-controls[hidden]{display:none}.photo-controls{display:flex;align-items:center;gap:12px;margin-top:14px}.photo-controls button{flex:none;width:48px;height:48px;border:1px solid #ad8b7d;border-radius:50%;background:#fffdf9;color:#9c1536;font-size:24px;line-height:1}.photo-status{flex:1;min-width:0;text-align:center;font-size:14px;line-height:1.4;margin:0;color:#665059}.photo-hint{font-size:12px;margin:8px 0 0;color:#665059}.photo-gallery .photo-track:focus-visible{outline-offset:5px}.photo-controls button:active{background:#f4e5e8}.book-photo .photo-gallery img{height:320px}
@media(hover:hover) and (pointer:fine){.photo-controls button:hover{background:#9c1536;border-color:#9c1536;color:#fff}}
@media(max-width:760px){.photo-gallery .photo-track .photo-slide img,.split .photo-gallery .photo-track img.portrait,.book-photo .photo-gallery img{height:350px}.photo-controls{gap:10px}.photo-status{font-size:13px}}
@media(max-width:400px){.photo-gallery .photo-track .photo-slide img,.split .photo-gallery .photo-track img.portrait,.book-photo .photo-gallery img{height:320px}}
.photo-track{touch-action:auto}.photo-gallery.enhanced .photo-track{touch-action:pan-y pinch-zoom}
/* Runde Bildkanten auf der tatsächlichen Bildfläche, ohne beige Letterbox. */
.hero-photo img,.sub-hero .hero-photo img,.hero-photo img.portrait,.split>figure img,.split>figure img.portrait,.owner-section .split>figure img,.owner-section .split>figure img.portrait,.gift-gallery img{width:100%;height:auto;max-height:none;object-fit:initial;background:transparent;border-radius:16px}
.owner-section .split{grid-template-columns:1fr 1fr;max-width:1240px}.owner-section figure{max-width:none}
.photo-track,.photo-gallery.enhanced .photo-track{background:transparent;border-radius:0}.photo-gallery.enhanced .photo-track{display:grid;place-items:center;height:390px}.photo-slide{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%}.photo-gallery .photo-track .photo-slide img,.split .photo-gallery .photo-track img.portrait,.book-photo .photo-gallery img{width:auto;height:auto;max-width:100%;max-height:390px;object-fit:initial;background:transparent;border-radius:16px}.photo-slide[hidden]{display:none}.book-photo .photo-gallery.enhanced .photo-track{height:320px}.book-photo .photo-gallery img{max-height:320px}
@media(max-width:760px){.owner-section .split{grid-template-columns:1fr}.photo-gallery.enhanced .photo-track,.book-photo .photo-gallery.enhanced .photo-track{height:350px}.photo-gallery .photo-track .photo-slide img,.split .photo-gallery .photo-track img.portrait,.book-photo .photo-gallery img{max-height:350px}}
@media(max-width:400px){.photo-gallery.enhanced .photo-track,.book-photo .photo-gallery.enhanced .photo-track{height:320px}.photo-gallery .photo-track .photo-slide img,.split .photo-gallery .photo-track img.portrait,.book-photo .photo-gallery img{max-height:320px}}
.motion .photo-slide.changed{animation:photo-fly-in .75s cubic-bezier(.22,.61,.36,1)}
@keyframes photo-fly-in{from{opacity:.25;transform:translateX(var(--slide-x,105%))}to{opacity:1;transform:translateX(0)}}
.legal-doc h2{font-family:var(--font-sans);font-size:25px;font-weight:bold;line-height:1.3;letter-spacing:0;margin:38px 0 16px}.legal-doc h3{font-size:19px;margin:25px 0 12px}.legal-doc address{font-style:normal;margin-bottom:24px}.legal-doc a{overflow-wrap:anywhere}.legal-doc ul{padding-left:24px}.legal-note{padding:18px 22px;border-left:3px solid var(--color-brand);border-radius:0 10px 10px 0;background:#f2e9e2;font-size:15px;margin:26px 0}.legal-note p{margin:8px 0 0}
.legal-doc h1{font-size:clamp(30px,4.4vw,52px);hyphens:auto}
/* Wiederkehrende asymmetrische Bildform: eine große Ecke, drei kleine. */
:root{--photo-corners:72px 16px 16px 16px}
.hero-photo img,.sub-hero .hero-photo img,.hero-photo img.portrait,.split>figure img,.split>figure img.portrait,.owner-section .split>figure img,.owner-section .split>figure img.portrait,.gift-gallery img,.photo-gallery .photo-track .photo-slide img,.split .photo-gallery .photo-track img.portrait,.book-photo .photo-gallery img,.biz-work__thumb{border-radius:var(--photo-corners)}
.biz-work__thumb img{border-radius:inherit}
@media(max-width:760px){:root{--photo-corners:48px 12px 12px 12px}}

/* Bewegungssteuerung auch ohne Scrollen zum Footer erreichbar. */
.motion-toggle{position:fixed;right:16px;bottom:16px;z-index:50;background:#fffdf9;border:1px solid #9c1536;border-radius:24px;padding:10px 16px;color:#76132c;box-shadow:0 3px 15px #381c2620;font:600 13px Arial,sans-serif;cursor:pointer}
.motion-toggle[hidden]{display:none}
@media(max-width:760px){.foot3{padding-bottom:65px}.motion-toggle{right:10px;bottom:10px}}

/* Zwei Fotos teilen sich beim Blättern dieselbe feste Bühne. */
.photo-gallery.enhanced .photo-track{overflow:hidden;isolation:isolate}
.photo-gallery.enhanced .photo-slide{grid-area:1 / 1;min-width:0}
.photo-gallery.enhanced .photo-slide.changed{z-index:2}

.gift-gallery{overflow:hidden}

/* Animierte Bühne darf kein Scrollcontainer sein: Scroll-Snap verschiebt sonst positive Eingangstransforms. */
.photo-gallery.enhanced .photo-track{overflow:clip;scroll-snap-type:none;scroll-behavior:auto;grid-template-columns:minmax(0,1fr)}
.photo-gallery.enhanced .photo-slide{scroll-snap-align:none;scroll-snap-stop:normal}
