@font-face{font-family:DollyScript;src:url('assets/schrift.otf') format('opentype');font-display:swap}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{margin:0;color:#f0e6d5;background:#151310;font-family:Georgia,'Times New Roman',serif;background-image:radial-gradient(ellipse at 90% 10%,#39232155,transparent 48%)}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid #efd089;outline-offset:5px}button{cursor:pointer}.skip{position:absolute;left:10px;top:-100px}.skip:focus{top:5px;z-index:9;background:#17130f;padding:15px}header{max-width:1320px;margin:auto;display:flex;align-items:center;justify-content:space-between;padding:24px 48px;border-bottom:1px solid #9c7b3b44}.brand{color:#e3c47f;font-family:DollyScript,cursive;font-size:43px;line-height:.8;display:flex;align-items:center;gap:17px}.brand span{font:10px Arial,sans-serif;letter-spacing:3px;border-left:1px solid #927342;padding:8px 0 8px 18px}nav{display:flex;align-items:center;gap:34px;font:12px Arial,sans-serif;color:#d5c6ae}nav a:hover{color:#f4d595}.nav-contact{border:1px solid #8e723d;padding:13px 18px}.nav-contact span{margin-left:16px}.hero{max-width:1240px;margin:auto;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:85px;padding:66px 58px 48px}.portrait-wrap{max-width:490px;position:relative}.frame{display:block;padding:9px;border:1px solid #a78543;background:linear-gradient(135deg,#4a3219,#cead61 12%,#534022 25%,#d4b571 40%,#4d351d 52%,#bd9654 72%,#3b2919);box-shadow:0 15px 45px #0007;position:relative}.frame:after{content:'';position:absolute;inset:5px;border:1px solid #ecd093aa;pointer-events:none}.hero-frame{padding:13px}.hero-frame:before{content:'';position:absolute;inset:0;border:3px double #dfbd70;pointer-events:none}.frame img{display:block;width:100%;object-fit:cover}.hero-frame img{height:575px;object-position:50% 60%}.corner{position:absolute;color:#ffe3a1;text-shadow:0 2px 2px #36250d;font-size:42px;line-height:1;z-index:2}.tl{top:-14px;left:-15px;transform:rotate(-45deg)}.tr{top:-14px;right:-15px;transform:rotate(45deg)}.bl{bottom:-14px;left:-15px;transform:rotate(-135deg)}.br{bottom:-14px;right:-15px;transform:rotate(135deg)}.photo-label{font:9px Arial,sans-serif;letter-spacing:3px;color:#b7a17b;text-align:center;margin-top:22px}.hero-copy{text-align:center;padding-bottom:10px}.eyebrow{font:10px/1.7 Arial,sans-serif;letter-spacing:2.9px;color:#c3a567}.flourish{color:#bd9852;letter-spacing:4px;font-size:22px;margin:23px 0}h1{font:normal 132px/.83 DollyScript,cursive;color:#e8c783;text-shadow:0 2px 25px #d2ab4e18;margin:36px 0 28px}h1 span{display:block;font:12px Arial,sans-serif;letter-spacing:8px;text-transform:uppercase;margin:20px 0 0 10px}.tagline{font-size:32px;line-height:1.3;margin:28px 0 18px;font-style:italic}.intro{color:#bcae98;font-size:16px;line-height:1.8;max-width:350px;margin:0 auto 28px}.button{background:linear-gradient(110deg,#b18b46,#ebd095 52%,#c09a53);color:#231b10;display:inline-flex;align-items:center;justify-content:center;gap:30px;padding:17px 23px;border:1px solid #e0bf7d;font:12px Arial,sans-serif;letter-spacing:.5px;min-height:48px}.button:hover{filter:brightness(1.12)}.quiet-link{display:block;margin-top:23px;font:11px Arial,sans-serif;color:#c6bca9}.ribbon{border-block:1px solid #a5833e55;display:flex;justify-content:center;gap:60px;padding:23px 20px;color:#c9b080;font-style:italic;font-size:17px;background:#241d1540}.ribbon b{font-size:13px;color:#967337;font-weight:normal}.section{max-width:1240px;padding:100px 58px;margin:auto}.about{display:grid;grid-template-columns:1fr 1.1fr;gap:100px}h2{font-weight:normal;font-size:43px;line-height:1.2;letter-spacing:-.6px;margin:20px 0}h2 em{color:#d4b172;font-weight:normal}.small-rule{width:75px;height:1px;background:#a48247;margin:30px 0}.about-copy p,.booking-intro>p{font-size:16px;color:#baae9c;line-height:1.9;margin-top:0}.about-copy .lead{color:#e0d3bc;font-size:21px;line-height:1.5}.about-copy .signature{font-family:DollyScript,cursive;font-size:34px;color:#d2b16f;margin-bottom:0}.gallery-section{border-top:1px solid #a5833e33;padding-top:75px}.section-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:32px}.section-top h2{font-size:37px}.section-top p{color:#aa9a82;line-height:1.7;font-style:italic}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.gallery-card{padding:0;background:none;color:inherit;border:0;text-align:left}.gallery .frame{padding:7px;transition:transform .25s}.gallery-card:hover .frame{transform:translateY(-5px)}.gallery img{height:365px;object-position:center}.gallery img.pink{object-position:68% center}.caption{display:flex;justify-content:space-between;color:#cfb37e;margin-top:19px;font-style:italic;font-size:18px}.caption span{font-style:normal}.booking{display:grid;grid-template-columns:1fr 1.12fr;gap:95px;border-top:1px solid #a5833e33}.booking-intro h2{font-size:54px;margin-bottom:27px}.contact-line{border-top:1px solid #94763b66;padding-top:26px;margin-top:32px}.contact-line span{display:block;font:9px Arial,sans-serif;color:#bda778;letter-spacing:1.8px;margin-bottom:12px}.contact-line a{color:#e0c38a;font-size:17px}.request-box{border:1px solid #8f713c;padding:28px;background:#201b15;box-shadow:inset 0 0 0 5px #201b15,inset 0 0 0 6px #8f713c44}.calendar-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:15px}.calendar-head button{border:1px solid #8d713f88;color:#e0c38a;background:none;width:34px;height:34px;font-size:24px}.calendar-head h3{font-size:21px;font-weight:normal;margin:0;color:#e4c890}.weekdays,.days{display:grid;grid-template-columns:repeat(7,1fr);gap:5px;text-align:center}.weekdays{font:10px Arial,sans-serif;color:#a89b83;margin-bottom:12px}.days button{border:1px solid transparent;background:none;color:#e1d6c4;min-height:36px;font:12px Arial,sans-serif}.days button:hover:not(:disabled){border-color:#b28f4f}.days button:disabled{color:#655b4d;cursor:default}.days .selected{background:#d4b374;color:#20190f;border-color:#e1c590}.days .today{border-color:#806c47}.calendar-note{font:10px/1.6 Arial,sans-serif;color:#b7a686;margin:14px 0 22px;padding-bottom:20px;border-bottom:1px solid #8b703b55}label{display:block;font:10px Arial,sans-serif;letter-spacing:.5px;color:#d4c3a6;margin:15px 0 8px}input,textarea{background:#171410;border:1px solid #6a5838;color:#eee0c9;width:100%;padding:12px;font:12px Arial,sans-serif;border-radius:0;color-scheme:dark}input::placeholder,textarea::placeholder{color:#958877}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}textarea{resize:vertical}.submit{width:100%;margin-top:18px}.form-note,#form-status{font:10px/1.7 Arial,sans-serif;color:#b6a88e;margin:12px 0 0}.closing{padding:25px 20px 70px;text-align:center}.closing p{font-family:DollyScript,cursive;color:#dec28c;font-size:43px;line-height:1.15}.closing p span{font-size:35px}footer{display:flex;justify-content:space-between;align-items:center;border-top:1px solid #92733d55;padding:33px 6%;gap:20px}footer p,footer>a:last-child{color:#b8a78a;font:11px Arial,sans-serif}dialog{border:1px solid #b28e4a;background:#171310;color:#dec28c;padding:20px;max-width:90vw;max-height:94vh;text-align:center}dialog::backdrop{background:#000d}dialog img{max-width:80vw;max-height:78vh;display:block;object-fit:contain}dialog p{margin:16px 0 0;font-style:italic}#close-lightbox{position:absolute;right:24px;top:24px;width:40px;height:40px;color:#f2dca9;background:#171310dd;border:1px solid #c6a15c;font-size:28px}@media(min-width:1500px){.hero{padding-top:80px;padding-bottom:70px}}@media(max-width:900px){header{padding:24px}nav{gap:20px}.hero{gap:35px;padding:50px 35px}.hero-frame img{height:520px}h1{font-size:110px}.tagline{font-size:27px}.section{padding:70px 35px}.about,.booking{gap:45px}h2{font-size:35px}.gallery img{height:290px}.section-top h2{font-size:30px}.section-top p{display:none}.ribbon{gap:28px}.contact-line a{font-size:14px}}@media(max-width:620px){header{padding:23px 20px}.brand{font-size:37px;gap:10px}.brand span{font-size:8px;padding-left:10px;letter-spacing:2px}nav a:not(.nav-contact){display:none}.nav-contact{font-size:10px;padding:11px}.nav-contact span{margin-left:7px}.hero{grid-template-columns:1fr;padding:38px 30px 40px;gap:30px}.portrait-wrap{max-width:390px;width:100%;margin:auto}.hero-frame img{height:460px}.photo-label{font-size:8px;letter-spacing:2px}.hero-copy{padding-top:10px}.hero-copy .flourish{margin:12px 0}h1{font-size:116px;margin-top:28px}.tagline{font-size:31px}.intro{font-size:15px}.ribbon{gap:13px;padding:20px 10px;font-size:12px}.ribbon b{font-size:8px}.section{padding:60px 25px}.about,.booking{grid-template-columns:1fr;gap:20px}h2{font-size:38px}.about-copy .signature{font-size:31px}.gallery{grid-template-columns:1fr;gap:35px;max-width:390px;margin:auto}.gallery img{height:440px}.section-top h2{font-size:34px}.gallery-section{padding-top:50px}.booking-intro h2{font-size:47px}.request-box{padding:21px}.contact-line{margin-bottom:20px}.contact-line a{font-size:17px}.form-row{grid-template-columns:1fr;gap:0}.closing p{font-size:36px}.closing p span{font-size:29px}footer{flex-wrap:wrap;padding:28px 25px}footer p{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.gallery .frame{transition:none}}

/* Freigestellte Bühnenfigur; Schrift direkt auf dem Seitenhintergrund. */
body{background:#151310;background-image:none}
.hero{position:relative;display:block;max-width:none;min-height:930px;padding:0;overflow:hidden;isolation:isolate;background:transparent}
.hero .cutout-wrap{position:absolute;top:20px;left:calc(15vw - 520px);width:1000px;max-width:none;margin:0;z-index:0;pointer-events:none}
.hero .hero-cutout{display:block;width:100%;height:auto;max-height:none;object-fit:contain;filter:none;-webkit-mask-image:linear-gradient(to bottom,#000 80%,transparent 100%);mask-image:linear-gradient(to bottom,#000 80%,transparent 100%)}
.hero .cutout-wrap:before,.hero .photo-label{display:none}
.hero .hero-copy{position:relative;z-index:1;width:calc(85vw - 320px);max-width:610px;margin-left:calc(15vw + 280px);padding:270px 25px 65px 0;text-align:left;background:transparent;border:0;box-shadow:none;backdrop-filter:none}
.hero .hero-copy>*{background:transparent;box-shadow:none}
.hero .hero-copy .flourish{margin:16px 0;color:#b99b64;letter-spacing:2px}
.hero h1{font-size:124px;margin:25px 0 28px;color:#e6c68b;text-shadow:none}
.hero h1 span{margin-left:8px}.hero .tagline{font-size:31px;line-height:1.4;margin:28px 0 22px -85px}
.hero .intro{font-size:16px;line-height:1.85;max-width:420px;margin:0 0 24px -65px;color:#d2c6b3}
.hero .hero-story{font-size:16px;line-height:1.85;max-width:430px;margin:0 0 30px -30px;color:#c6b8a2}
.hero .hero-copy>.button{background:transparent;border:1px solid #ba985b;color:#e2c58e;padding:16px 23px;transition:background .2s,color .2s}
.hero .hero-copy>.button:hover{background:#c7a56b18;color:#f3dba9}.hero .quiet-link{margin-left:3px}
.ribbon{background:transparent}
@media(min-width:1700px){.hero .cutout-wrap{left:calc(25vw - 700px);width:1120px}.hero .hero-copy{margin-left:calc(25vw + 195px);width:590px;padding-top:310px}}
@media(max-width:900px){.hero{min-height:880px}.hero .cutout-wrap{left:-340px;width:860px;top:25px}.hero .hero-copy{margin-left:350px;width:calc(100% - 375px);padding:250px 0 45px}.hero h1{font-size:92px}.hero .tagline{font-size:26px;margin-left:-45px}.hero .intro{margin-left:-30px}.hero .hero-story{font-size:14px;margin-left:0}.hero .eyebrow{font-size:9px;letter-spacing:1.8px}}
@media(max-width:620px){.hero{min-height:850px}.hero .cutout-wrap{width:680px;left:calc(24vw - 345px);top:5px}.hero .hero-copy{margin-left:50%;width:50%;padding:210px 16px 35px 0}.hero h1{font-size:72px;margin:20px 0 25px}.hero h1 span{font-size:9px;letter-spacing:4px;margin-top:15px;margin-left:3px}.hero .tagline{font-size:22px;line-height:1.35;margin-left:-25px}.hero .intro{margin-left:-16px}.hero .intro,.hero .hero-story{font-size:13px;line-height:1.75}.hero .hero-copy .flourish{font-size:15px;letter-spacing:1px;margin:12px 0}.hero .eyebrow{font-size:8px;letter-spacing:1px}.hero .hero-copy>.button{padding:13px 12px;gap:10px;font-size:10px;line-height:1.5}.hero .quiet-link{font-size:10px;line-height:1.5}}
@media(max-width:360px){.hero .hero-copy{padding-right:12px}.hero h1{font-size:63px}.hero .tagline{font-size:20px}}

/* Rosa Hauptmotiv: Gesicht und Hut vollständig im sichtbaren Bereich. */
.hero .cutout-wrap{left:calc(15vw - 410px);width:900px;top:15px}
@media(min-width:1700px){.hero .cutout-wrap{left:calc(25vw - 560px);width:1000px}}
@media(max-width:900px){.hero .cutout-wrap{left:-225px;width:800px}}
@media(max-width:620px){.hero .cutout-wrap{left:-135px;width:600px;top:15px}.hero .hero-cutout{-webkit-mask-image:linear-gradient(to right,#000 48%,transparent 62%);mask-image:linear-gradient(to right,#000 48%,transparent 62%)}.hero .hero-copy{padding-top:230px}}

@media(max-width:620px){.hero .hero-cutout{-webkit-mask-image:linear-gradient(to bottom,#000 20%,transparent 26%),linear-gradient(to right,#000 41%,transparent 52%);mask-image:linear-gradient(to bottom,#000 20%,transparent 26%),linear-gradient(to right,#000 41%,transparent 52%);-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-size:100% 100%;mask-size:100% 100%}.hero .tagline,.hero .intro{margin-left:0}.hero .hero-story{margin-left:8px;max-width:calc(100% - 8px)}}

/* Echter zeilenweiser Konturumfluss mit durchscheinender Goldschrift. */
.hero{min-height:1000px;padding-bottom:45px}
.hero .hero-copy{padding-bottom:0;opacity:.82}
.hero .contour-copy{position:relative;z-index:1;width:calc(100% - 80px);max-width:900px;margin:5px 0 0;padding:0;background:transparent;border:0;box-shadow:none;color:rgb(235 216 181 / .82)}
.contour-spacer{display:block;float:left;width:370px;height:650px;shape-outside:polygon(0 0,80% 0,50% 35%,100% 100%,0 100%);pointer-events:none}
.hero .contour-copy .tagline,.hero .contour-copy .intro,.hero .contour-copy .hero-story{max-width:none;margin:0 0 24px;background:transparent;color:inherit;text-align:left}
.hero .contour-copy .tagline{font-size:29px;line-height:1.55;margin-top:18px;color:rgb(241 221 187 / .83)}
.hero .contour-copy .intro,.hero .contour-copy .hero-story{font-size:17px;line-height:1.95}
.hero .contour-copy>.button{display:inline-flex;background:transparent;color:rgb(232 202 145 / .84);border:1px solid #ba985b77;margin-top:3px}
.hero .contour-copy>.quiet-link{display:block;font:11px/2 Arial,sans-serif;margin:15px 0 0;color:rgb(211 192 157 / .8)}
@media(max-width:900px){.hero .contour-copy{width:calc(100% - 35px);max-width:750px}.hero .contour-copy .tagline{font-size:25px}.hero .contour-copy .intro,.hero .contour-copy .hero-story{font-size:15px}}
@media(max-width:620px){.hero{min-height:900px}.hero .cutout-wrap{width:500px;left:-130px;top:15px}.hero .hero-cutout{-webkit-mask-image:linear-gradient(to bottom,#000 88%,transparent);mask-image:linear-gradient(to bottom,#000 88%,transparent)}.hero .hero-copy{padding-top:215px;margin-left:48%;width:52%}.hero .contour-copy{width:calc(100% - 15px);margin-top:10px}.hero .contour-copy .tagline{font-size:20px;line-height:1.55}.hero .contour-copy .intro,.hero .contour-copy .hero-story{font-size:13px;line-height:1.9}.hero .contour-copy>.button{font-size:10px;padding:13px 11px;gap:8px;line-height:1.5}.hero .contour-copy>.quiet-link{font-size:10px}}

@media(max-width:620px){.hero .cutout-wrap{width:480px;left:-95px}.hero .hero-cutout{-webkit-mask-image:none;mask-image:none}}

/* Unter der Figur öffnet sich der Text über die gesamte Seitenbreite. */
.hero .contour-copy{width:calc(100% - 48px);max-width:none;margin-left:24px;margin-right:24px}
.about.section{max-width:none;width:100%;grid-template-columns:1fr;gap:16px;padding:65px 40px 75px}
.about h2{font:normal 62px/1.25 DollyScript,cursive;letter-spacing:0;margin-bottom:15px}
.about h2 br{display:none}.about h2 em{font-style:normal}
.about .small-rule{margin:18px 0 8px}
.about-copy{width:100%;max-width:none}
.about .about-copy p{font:normal 32px/1.65 DollyScript,cursive;color:rgb(229 207 169 / .83);max-width:none;margin:0 0 24px}
.about .about-copy .lead{font-size:38px;line-height:1.5;color:rgb(239 216 178 / .86)}
.about .about-copy .signature{font-size:39px;margin-bottom:0}
@media(max-width:620px){.hero .contour-copy{width:calc(100% - 28px);margin-left:14px;margin-right:14px}.about.section{padding:45px 20px 55px;gap:12px}.about h2{font-size:44px}.about .about-copy p{font-size:27px;line-height:1.65}.about .about-copy .lead{font-size:31px}.about .about-copy .signature{font-size:33px}}

footer .footer-links{display:flex;gap:24px;align-items:center;font:12px Arial,sans-serif;color:#d5c6ae}footer .footer-links a:hover{color:#f4d595}@media(max-width:620px){footer .footer-links a{display:inline-block}}
