@charset "UTF-8";
:root{--cream:#f8f5ef;--paper:#fffdf8;--plum:#76374f;--berry:#914567;--ink:#342c2f;--muted:#6c625f;--line:#d8cdc5;--taupe:#eae2d9;--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.65}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}button{cursor:pointer}img{display:block;width:100%;height:auto}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #ba813c;outline-offset:5px}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.08;letter-spacing:-.045em}h1{font-size:clamp(52px,6vw,91px)}h2{font-size:clamp(38px,4.2vw,59px)}h3{font-size:36px}em{font-weight:400;color:var(--plum)}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:11px;font-weight:650;margin-bottom:22px;line-height:1.5}.skip{position:fixed;left:16px;top:-80px;background:var(--plum);color:white;padding:12px;z-index:99}.skip:focus{top:12px}.header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:12px 5.3%;background:var(--cream);min-height:110px;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.brand{display:block;width:134px}.header nav{display:flex;align-items:center;gap:38px;font-size:14px}.header nav a{padding:12px 0}.header nav a:hover{color:var(--berry)}.header nav .nav-contact{border-bottom:1px solid var(--plum);color:var(--plum)}.nav-contact span{margin-left:30px}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:46% 54%;position:relative;padding:0 5.3% 0 0}.hero-copy{padding:65px 10% 62px 11.5%;align-self:center}.hero-intro{max-width:365px;margin:27px 0 29px;color:var(--muted);font-size:16px}.hero-image{position:relative;min-height:650px}.hero-image>img{width:100%;height:100%;object-fit:cover;position:absolute;object-position:52% center}.image-caption{position:absolute;bottom:24px;left:27px;background:var(--paper);color:var(--ink);font-family:var(--serif);font-size:17px;padding:9px 16px}.hero-side{position:absolute;right:16px;top:50%;writing-mode:vertical-rl;text-transform:uppercase;letter-spacing:.24em;font-size:10px}.button{background:var(--plum);color:#fff;display:inline-flex;gap:30px;align-items:center;justify-content:space-between;padding:15px 22px;font-size:13px;line-height:1.5;transition:background .2s}.button:hover{background:#57253a}.button span{font-size:21px}.quiet-link{display:block;font-size:12px;margin-top:21px;color:var(--muted)}.quiet-link span{margin-left:12px}.facts{margin:0 5.3%;display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--line);padding:27px 0;gap:20px;font-size:13px}.facts span{font-family:var(--serif);color:var(--berry);font-style:italic;margin-right:16px}.section{padding:95px 7.3%}.section-heading{display:grid;grid-template-columns:1fr 1fr;gap:0 12%;align-items:end;margin-bottom:45px}.section-heading>.eyebrow{grid-column:1/-1}.section-heading>p:last-child{color:var(--muted);max-width:425px}.living-layout{display:grid;grid-template-columns:1.15fr 1fr;gap:8%;align-items:center}.photo{border:0;padding:0;background:var(--taupe);position:relative;overflow:hidden;text-align:left}.photo>img{height:100%;width:100%;object-fit:cover;transition:transform .5s}.photo:hover>img{transform:scale(1.025)}.large-photo{height:510px}.photo-expand{position:absolute;bottom:17px;right:17px;background:var(--paper);width:38px;height:38px;display:grid;place-items:center}.living-copy>.eyebrow{margin-bottom:15px;color:var(--plum)}.living-copy>p:not(.eyebrow){color:var(--muted);margin:23px 0}.feature-list{list-style:none;padding:0;margin:26px 0 30px;font-size:14px}.feature-list li{padding:11px 0 11px 20px;border-bottom:1px solid var(--line);position:relative}.feature-list li:before{content:'+';position:absolute;left:0;color:var(--berry)}.text-link{display:inline-flex;align-items:center;gap:20px;border-bottom:1px solid currentColor;padding-bottom:6px;color:var(--plum);font-size:13px}.text-link:hover{color:#402031}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:25px}.gallery .photo{height:265px}.photo-label{display:flex;justify-content:space-between;position:absolute;bottom:0;left:0;right:0;padding:40px 18px 16px;color:white;background:linear-gradient(transparent,rgba(25,20,20,.78));font-size:14px}.practice{background:var(--taupe);padding:85px 7.3%;display:grid;grid-template-columns:1fr 1fr;gap:12%}.practice-intro>p:not(.eyebrow){margin-top:24px;color:var(--muted);max-width:460px}.practice-intro>.text-link{margin-top:27px}.prices{padding-top:10px}.prices>.eyebrow{margin-bottom:17px}.price-row{padding:29px 0;display:flex;justify-content:space-between;gap:22px;border-top:1px solid #c5b5aa}.price-row h3{font-size:27px;letter-spacing:-.02em}.price-row>div>p{color:var(--muted);font-size:13px;margin-top:9px}.price{font-size:39px;font-family:var(--serif);line-height:1.15;white-space:nowrap;color:var(--plum)}.price span{display:block;font:12px var(--sans);text-align:right;color:var(--muted);margin-top:7px}.price-note{border-top:1px solid #c5b5aa;padding-top:21px;font-size:13px;color:var(--muted);margin-bottom:23px}.school{padding-top:80px;padding-bottom:80px}.school-content{display:grid;grid-template-columns:1.1fr 1fr;gap:10%;align-items:center}.school h2{font-size:clamp(34px,3.5vw,49px)}.school-content p{color:var(--muted);margin-bottom:23px}.history{display:grid;grid-template-columns:1fr 1fr;background:#eee8e1}.history-image{min-height:565px;position:relative}.history-image img{position:absolute;height:100%;object-fit:cover;object-position:center}.history-copy{padding:70px 13%}.history-copy>p:not(.eyebrow){margin-top:25px;color:var(--muted)}.history-dates{display:flex;gap:40px;margin-top:34px;padding-top:22px;border-top:1px solid #cdbfb5}.history-dates strong{font-family:var(--serif);font-weight:400;font-size:34px;color:var(--plum)}.history-dates span{display:block;font-size:11px;color:var(--muted)}.faq{display:grid;grid-template-columns:1fr 1.4fr;gap:12%}.faq-list details{border-top:1px solid var(--line);padding:22px 0}.faq-list details:last-child{border-bottom:1px solid var(--line)}summary{cursor:pointer;list-style:none;position:relative;padding-right:30px;font-size:15px}summary::-webkit-details-marker{display:none}summary:after{content:'+';position:absolute;right:2px;font-size:23px;line-height:1}details[open] summary:after{content:'−'}details p{margin-top:17px;color:var(--muted);font-size:14px;max-width:570px}.contact{background:var(--plum);color:var(--cream);padding:80px 7.3%;display:grid;grid-template-columns:1.6fr 1fr;gap:10%}.contact em{color:#e4bdc9}.contact h2{font-size:clamp(36px,4vw,56px)}.contact>div>p:not(.eyebrow){font-size:14px;margin:24px 0;color:#ede0e4}.contact-email{display:inline-flex;gap:25px;font-size:clamp(17px,2vw,26px);border-bottom:1px solid #b78c9d;padding-bottom:9px;overflow-wrap:anywhere}.contact-details{align-self:center}.contact-details>p{margin:0 0 28px!important;font-size:16px!important}.contact-details p>span{display:block;text-transform:uppercase;letter-spacing:.16em;font-size:10px;margin-bottom:9px;color:#e4bdc9}.contact-details p>a{font-size:27px;font-family:var(--serif)}.contact-details .text-link{color:var(--cream)}footer{padding:35px 5.3% 22px}.footer-top,.footer-bottom{display:flex;justify-content:space-between;gap:25px}.footer-top{align-items:center;padding-bottom:28px}.footer-top>p{font:25px var(--serif)}.footer-top>p>span{display:block;font:11px var(--sans);letter-spacing:.12em;margin-top:9px}.footer-top>div{display:flex;gap:22px;align-items:center;font-size:13px}.footer-top>div>span{font-size:11px;color:var(--muted);margin-right:10px}.footer-bottom{border-top:1px solid var(--line);padding-top:18px;font-size:11px;color:var(--muted)}.footer-bottom>div{display:flex;gap:24px}footer a:hover{text-decoration:underline}dialog{border:0;background:var(--paper);padding:55px 18px 15px;max-width:min(960px,94vw);max-height:94vh;color:var(--ink)}dialog::backdrop{background:rgba(30,20,25,.85)}dialog>img{max-height:72vh;width:auto;max-width:100%;object-fit:contain;margin:auto}dialog>p{font-size:13px;text-align:center;padding-top:10px}.dialog-close{position:absolute;right:18px;top:12px;border:0;background:none;padding:5px;font-size:14px}.legal{max-width:850px;margin:auto;padding:70px 30px 90px}.legal h1{font-size:55px;margin-bottom:35px}.legal h2{font-size:27px;letter-spacing:-.02em;margin:32px 0 12px}.legal p,.legal ul{margin-bottom:18px}.legal a{color:var(--plum);text-decoration:underline;overflow-wrap:anywhere}.legal .eyebrow a{text-decoration:none}.legal header{margin-bottom:35px}
@media(min-width:1600px){body{max-width:1680px;margin:auto}.hero-copy{padding-top:90px;padding-bottom:90px}.hero-image{min-height:720px}}
@media(max-width:1050px){.header nav{gap:24px}.hero-copy{padding-top:50px;padding-bottom:50px}.hero-image{min-height:590px}.hero-intro{font-size:15px}.hero-copy .button{gap:12px;padding:14px 15px}.hero-side{right:12px}.section{padding:70px 6%}.living-layout{gap:5%;grid-template-columns:1fr 1fr}.large-photo{height:470px}.living-copy h3{font-size:31px}.living-copy p{font-size:14px}.gallery .photo{height:220px}.practice{gap:7%;padding:70px 6%}.history-copy{padding:55px 10%}.contact{padding:65px 6%;gap:6%}.footer-top>div>span{display:none}}
@media(max-width:740px){html{scroll-padding-top:90px}.header{min-height:87px;padding:8px 6%}.brand{width:108px}.menu-toggle{display:flex;gap:15px;align-items:center;border:0;background:transparent;font-size:14px;padding:12px 0 12px 16px}.menu-toggle span{font-size:20px}.header nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--cream);padding:20px 6% 28px;border-bottom:1px solid var(--line);gap:4px;box-shadow:0 12px 15px #342c2f0a}.header nav.open{display:flex;flex-direction:column;align-items:stretch}.header nav a{padding:12px}.header nav .nav-contact{align-self:flex-start;padding-left:12px}.hero{display:flex;flex-direction:column;padding:0}.hero-copy{padding:42px 6% 34px;position:relative}.hero h1{font-size:60px;line-height:1.03}.hero h1 br:nth-child(2){display:none}.hero-intro{max-width:450px;margin:24px 0;font-size:15px}.hero .eyebrow{font-size:10px;margin-bottom:20px}.hero-copy .button{padding:14px 19px}.quiet-link{margin-top:17px}.hero-image{height:385px;min-height:0;margin:0 6%}.image-caption{font-size:14px;left:15px;bottom:17px;padding:8px 12px}.hero-side{display:none}.facts{margin:0 6%;grid-template-columns:1fr;padding:24px 0;gap:11px;font-size:12px}.facts span{margin-right:20px}.section{padding:59px 6%}.section-heading{display:block;margin-bottom:30px}.section-heading>p:last-child{margin-top:25px;font-size:15px}.eyebrow{font-size:10px;margin-bottom:18px}h2{font-size:39px}.living-layout{display:flex;flex-direction:column;gap:30px}.large-photo{height:380px;width:100%}.living-copy h3{font-size:34px}.living-copy h3 br{display:none}.living-copy>p:not(.eyebrow){font-size:15px}.feature-list{font-size:13px;margin-top:20px}.gallery{gap:12px;grid-template-columns:1fr 1fr;margin-top:32px}.gallery .photo{height:210px}.gallery .photo:last-child{display:none}.photo-label{font-size:12px;padding:35px 12px 12px}.practice{display:block;padding:57px 6%}.practice-intro>p:not(.eyebrow){font-size:15px;margin-top:23px}.prices{margin-top:46px}.price-row{padding:25px 0}.price-row h3{font-size:26px}.price{font-size:37px}.school-content{display:block}.school h2{font-size:36px}.school-content>div{margin-top:25px;font-size:15px}.history{display:flex;flex-direction:column}.history-image{min-height:0;height:320px}.history-image img{object-position:center 55%}.history-copy{padding:45px 6%}.history-copy>p:not(.eyebrow){font-size:15px}.history-dates{gap:45px}.faq{display:block}.faq h2 br{display:none}.faq-list{margin-top:30px}.faq-list summary{font-size:14px}.contact{display:block;padding:54px 6%}.contact h2{font-size:37px}.contact-email{font-size:18px;gap:12px}.contact-details{margin-top:42px}.contact-details>p{margin-bottom:24px!important}.footer-top{align-items:flex-start}.footer-top>p{font-size:21px}.footer-top>div{flex-direction:column;align-items:flex-start;gap:8px}.footer-bottom{display:block;font-size:10px}.footer-bottom>div{margin-top:15px;gap:20px}.legal{padding:40px 6% 65px}.legal h1{font-size:40px}.legal h2{font-size:25px}dialog{padding-left:10px;padding-right:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Gaestezimmer: vorhandene Aufnahmen aus dem Schloss-Bildarchiv. */
.guest-copy p{color:var(--muted);margin-bottom:20px}.guest-gallery{display:grid;grid-template-columns:1fr 1fr;gap:24px}.guest-gallery .photo{aspect-ratio:4/3;width:100%}
@media(min-width:741px) and (max-width:950px){.header nav{gap:17px;font-size:13px}.nav-contact span{margin-left:12px}.brand{width:115px}}
@media(max-width:740px){.guest-copy{margin-top:25px;font-size:15px}.guest-gallery{grid-template-columns:1fr;gap:18px}}
