:root{--paper:#f7f6f1;--green:#285340}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:190px}body{margin:0;background:#252c26;color:white;font:16px/1.75 Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}a:focus-visible,button:focus-visible{outline:3px solid #e7bf72;outline-offset:5px}.backdrop{position:fixed;inset:0;z-index:-2;background:#3c433b url('assets/video-poster.jpg') center/cover}.backdrop:after{content:'';position:absolute;inset:0;background:#090e0c66}.backdrop video{width:100%;height:100%;object-fit:cover;transform:scale(1.035);filter:brightness(.82)}header{position:fixed;z-index:10;top:40px;left:3.7%;right:3.7%;background:#050505;color:#fff;display:flex;align-items:center;padding:22px clamp(24px,3vw,48px);gap:clamp(30px,4vw,70px);min-height:105px}.brand{width:200px;flex-shrink:0;text-align:center}.brand img{width:100%;display:block;filter:invert(1);mix-blend-mode:screen}.brand span{display:block;font-size:7px;letter-spacing:2px;margin-top:7px}.header-right{margin-left:auto;flex:1;min-width:0}.contact{display:flex;justify-content:flex-end;gap:32px;font-size:9px;letter-spacing:2px;margin-bottom:13px}header nav{display:flex;justify-content:space-between;align-items:center;gap:clamp(16px,2vw,40px)}header nav a{white-space:nowrap;padding:6px 0}nav a{font-size:11px;letter-spacing:2px;text-transform:uppercase}.menu{display:none}.round{position:fixed;z-index:11;top:135px;right:6.5%;width:102px;height:102px;border-radius:50%;background:var(--green);display:flex;flex-direction:column;align-items:center;justify-content:center;outline:1px solid #ffffff80;outline-offset:-10px;transform:rotate(12deg);font-size:9px;letter-spacing:3px;line-height:1.5}.round b{font:30px Georgia}.hero{min-height:760px;height:100svh;display:flex;align-items:center;justify-content:center;text-align:center;padding:170px 25px 90px}.hero .eyebrow{margin-bottom:25px}.eyebrow{font-size:10px;letter-spacing:3px}.hero h1{font:400 clamp(45px,5.9vw,90px)/1.25 Georgia,serif;margin:0;text-shadow:0 3px 30px #0005}.discover{display:inline-flex;gap:28px;align-items:center;margin-top:50px;font-size:9px;letter-spacing:2px}.discover span{font-size:24px}.intro{text-align:center;max-width:850px;margin:0 auto;padding:65px 35px 110px}.intro h2{font-size:24px;letter-spacing:4px;font-weight:400;margin-bottom:30px}.intro p{font-size:16px;line-height:1.9}.gallery{margin:0 3.7%;display:grid;grid-template-columns:1fr 1fr;gap:100px 4%;padding:20px 0 90px}.tile{position:relative;display:block;background:transparent;border:0;padding:0;min-width:0;text-align:left;aspect-ratio:4/3;isolation:isolate;box-shadow:0 18px 55px #0002}.tile img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .7s,filter .7s}.tile h2{position:absolute;top:-25px;left:-24px;background:#050505;color:white;padding:13px 25px;margin:0;font-size:clamp(20px,2.5vw,36px);line-height:1.3;font-weight:500;letter-spacing:.3px;z-index:2}.tile:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 65%,#0008);pointer-events:none}.tile-link{position:absolute;bottom:23px;left:26px;right:26px;font-size:10px;letter-spacing:2px;z-index:2;display:flex;justify-content:space-between;align-items:center}.card-arrow{display:block}.tile:hover img{transform:scale(1.015);filter:brightness(1.08)}.outro{text-align:center;padding:80px 20px 130px}.outro h2{font:400 clamp(50px,5.5vw,80px)/1.15 Georgia,serif;margin:25px 0}.light-button{display:inline-block;background:var(--paper);color:#222;padding:17px 28px;font-size:10px;letter-spacing:2px;margin-top:25px}.booking{position:fixed;bottom:0;left:0;right:0;background:var(--paper);color:#222;z-index:12;height:57px;display:flex;align-items:center;justify-content:space-around;padding:0 5%;gap:35px;font-size:11px;letter-spacing:2.2px}.booking b{margin-left:25px}.book-now{font-weight:600}:is(.video-toggle,.site-back){position:fixed;bottom:76px;left:20px;border:1px solid #fff8;border-radius:50%;width:38px;height:38px;background:#0005;z-index:9;font-size:17px}footer{background:#f7f6f1;color:#242924;padding:65px 6% 110px;display:grid;grid-template-columns:1.4fr 1fr .7fr;gap:30px;font-size:13px}footer h2{font-size:22px;letter-spacing:3px;font-weight:400;margin:0}footer a{display:block}footer small{grid-column:1/-1;border-top:1px solid #ccc;padding-top:20px;color:#72746e;font-size:10px}dialog{border:0;padding:0;background:var(--paper);color:#29352e;width:min(900px,90vw);max-height:88svh;overflow:auto}dialog::backdrop{background:#000b;backdrop-filter:blur(7px)}.close{position:absolute;right:15px;top:15px;border:0;background:var(--paper);color:#222;width:42px;height:42px;font-size:30px;z-index:2}.detail-img{width:100%;height:340px;object-fit:cover;display:block}.detail-copy{padding:35px 50px 50px}.detail-copy h2{font:40px/1.2 Georgia,serif;margin:18px 0}.detail-text{max-width:650px}.detail-action{background:var(--green);color:white}body.modal-open{overflow:hidden}[hidden]{display:none!important}
@media(max-width:1000px){header{gap:20px;padding:20px}.brand{width:170px}nav{gap:20px}nav a{font-size:10px}.contact{font-size:8px}.round{top:135px;width:90px;height:90px}.gallery{gap:80px 5%}.tile h2{font-size:25px;left:-12px}.booking{font-size:9px}}
@media(max-width:700px){html{scroll-padding-top:135px}header{top:18px;left:18px;right:18px;min-height:82px;padding:17px 20px}.brand{width:170px}.header-right{display:none}.menu{display:block;margin-left:auto;border:0;background:transparent;color:#fff;font-size:11px;letter-spacing:1px}#mobile-nav{position:fixed;top:110px;left:18px;right:18px;background:#050505;color:#fff;z-index:14;display:flex;flex-direction:column;align-items:flex-start;padding:25px;gap:20px}.round{top:113px;right:28px;width:78px;height:78px;font-size:7px;letter-spacing:2px;outline-offset:-7px}.round b{font-size:22px}.hero{height:94svh;min-height:580px;padding:190px 25px 100px}.hero h1{font-size:clamp(39px,8.5vw,60px)}.hero .eyebrow{font-size:8px;letter-spacing:2px}.discover{font-size:8px;margin-top:30px;gap:15px}.intro{padding:15px 8% 75px}.intro h2{font-size:19px;letter-spacing:2px}.intro p{font-size:14px}.gallery{grid-template-columns:1fr;gap:68px;margin:0 7%;padding-bottom:30px}.tile h2{top:-20px;left:-12px;font-size:25px;padding:10px 19px}.tile{aspect-ratio:1.15}.tile-link{font-size:8px;letter-spacing:1.5px;left:18px;right:18px;bottom:15px}.outro{padding:55px 25px 80px}.outro h2{font-size:47px}.booking{height:62px;padding-bottom:env(safe-area-inset-bottom);gap:15px;font-size:9px;letter-spacing:1px}.booking>span{display:none}.booking b{margin-left:8px}.book-now{background:var(--green);color:white;padding:12px 15px}:is(.video-toggle,.site-back){bottom:77px;left:12px;width:32px;height:32px}footer{padding:45px 8% 100px;grid-template-columns:1fr;gap:20px}.legal{display:flex;gap:20px}.detail-img{height:240px}.detail-copy{padding:25px}.detail-copy h2{font-size:32px}.detail-text{font-size:14px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.tile img{transition:none}}

/* Compact navigation on tablets; the same controls as on phones. */
@media(min-width:701px) and (max-width:1100px){
 header{top:24px;min-height:90px;padding:20px 28px;gap:24px}
 .brand{width:190px}.header-right{display:none}
 .menu{display:block;margin-left:auto;border:0;background:transparent;color:#fff;font-size:12px;letter-spacing:1px;min-height:44px;padding:0 8px}
 #mobile-nav{position:fixed;top:126px;left:3.7%;right:3.7%;background:#050505;color:#fff;z-index:14;display:flex;flex-direction:column;align-items:flex-start;padding:25px 28px;gap:16px}
 #mobile-nav a{min-height:44px;display:flex;align-items:center}
 .round{top:128px}
}
@media(max-width:700px){.menu{min-height:44px;padding:0 4px}#mobile-nav a{min-height:44px;display:flex;align-items:center}#mobile-nav{max-height:calc(100dvh - 190px);overflow:auto}.brand{width:min(170px,49vw)}header{gap:12px}}
@media(min-width:1101px){header nav a{font-size:clamp(10px,.82vw,13px)}.contact{gap:clamp(25px,4vw,70px)}}
/* Integrated hotel information and Casona date selection. */
.booking-form{display:flex;align-items:end;justify-content:center;gap:20px;position:relative;margin:0;flex-wrap:wrap}.booking-form label{display:flex;flex-direction:column;align-items:flex-start;gap:3px;font-size:10px;letter-spacing:1.5px;text-transform:uppercase}.booking-form input{font:15px Arial,sans-serif;color:#222;background:#fff;border:1px solid #c8ccc6;border-radius:0;padding:11px 12px;min-height:44px;max-width:100%;min-width:0;letter-spacing:0}.booking-form button,.contact-form button{border:0;background:var(--green);color:#fff;font-size:10px;letter-spacing:1.3px;min-height:44px;padding:13px 22px}.date-error:empty{display:none}.hero-dates{margin:30px auto 0;background:#060a08a6;padding:18px 25px;max-width:740px}.hero .discover{margin-top:22px}.booking.booking-dates{height:86px;padding:7px 4%;letter-spacing:1px}.booking-dates .booking-form{width:100%;gap:clamp(20px,5vw,100px)}.booking-dates input{font-size:14px;padding:6px 12px}:is(.video-toggle,.site-back){bottom:104px}footer{padding-bottom:135px}.section-nav{position:relative;justify-content:center;flex-wrap:wrap;gap:30px;padding:22px 6%;background:#0008}.section-nav a{font-size:10px;letter-spacing:1.5px}.home-panel{margin:35px auto 75px;max-width:1160px;padding:55px 5%;background:#f7f6f1;color:#28372e}.home-panel>h2{font:38px/1.2 Georgia,serif;margin:5px 0 30px}.home-panel a:not(.image-open){text-decoration:underline;text-underline-offset:4px}.home-panel .service-grid a{text-decoration:none}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 30px}.service-grid a{display:flex;align-items:center;border-bottom:1px solid #bcc4b8;padding:18px 0;gap:16px;font-size:14px}.service-grid span{font-size:10px;color:#697569}.service-grid b{margin-left:auto}.resource-link{display:block;padding:15px 0;overflow-wrap:anywhere}.content-page{background:#e9ece5;color:#26372c}.page-shell{max-width:1160px;margin:185px auto 60px;padding:25px 5% 50px;background:var(--paper)}.back-link{display:inline-block;font-size:12px;margin:15px 0 30px}.page-content{font-size:16px;overflow-wrap:anywhere}.page-content>div{margin:0 0 20px}.page-content h1{font:46px/1.15 Georgia,serif}.page-content h2{font:32px/1.25 Georgia,serif;margin-top:30px}.page-content h3{font-size:21px}.page-content p{line-height:1.85}.page-content a{color:#285340;text-decoration:underline;text-underline-offset:3px}.page-content ul,.page-content ol{padding-left:25px}.page-images{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:35px 0}.page-images img{width:100%;height:280px;object-fit:cover;display:block}.page-images img:only-child{grid-column:1/-1}.all-pages{display:grid;grid-template-columns:1fr 1fr;gap:12px 25px}.all-pages a{padding:12px 0;border-bottom:1px solid #c5cbbb}.page-book{padding:30px 0;border-top:1px solid #c5cbbb}.page-book h2{font:32px Georgia,serif}.page-book .booking-form{justify-content:flex-start}.contact-form{display:grid;grid-template-columns:1fr 1fr;gap:20px}.contact-form label{display:flex;flex-direction:column;font-size:12px;gap:6px}.contact-form label:nth-child(n+3){grid-column:1/-1}.contact-form input,.contact-form textarea{padding:13px;font:16px Arial;border:1px solid #b9c0b4;max-width:100%;width:100%;background:#fff}.contact-form p{font-size:12px;grid-column:1/-1}.social-links{display:flex;gap:25px}.hotel-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}.hotel-gallery img{height:210px}blockquote{font:italic 26px/1.5 Georgia,serif;margin:20px 0}
@media(max-width:700px){.hero{min-height:740px;height:auto;padding-top:230px;padding-bottom:60px}.hero h1{font-size:clamp(33px,8.5vw,50px)}.hero-dates{padding:16px;margin-top:25px}.hero-dates .booking-form{display:grid;grid-template-columns:1fr 1fr;gap:12px}.hero-dates button{grid-column:1/-1}.booking-form input{width:100%;font-size:13px;padding:9px 5px}.booking-form label{font-size:9px;letter-spacing:.6px}.booking.booking-dates{height:auto;min-height:97px;padding:7px 12px calc(7px + env(safe-area-inset-bottom))}.booking-dates .booking-form{display:grid;grid-template-columns:1fr 1fr;gap:6px 12px}.booking-dates .booking-form label{gap:0}.booking-dates input{min-height:34px;font-size:12px;padding:5px}.booking-dates button{grid-column:1/-1;min-height:32px;padding:7px 12px;font-size:9px}:is(.video-toggle,.site-back){bottom:128px}.section-nav{gap:16px;padding:20px}.section-nav a{font-size:9px}.home-panel{margin:20px 5% 50px;padding:28px 6%}.home-panel>h2{font-size:30px}.service-grid,.all-pages{grid-template-columns:1fr}.service-grid a{font-size:13px}.page-shell{margin:125px 4% 40px;padding:15px 7% 30px}.page-content h1{font-size:35px}.page-content h2{font-size:27px}.page-content{font-size:14px}.page-images,.hotel-gallery{grid-template-columns:1fr 1fr;gap:10px}.page-images img,.hotel-gallery img{height:160px}.contact-form{grid-template-columns:1fr}.contact-form label{grid-column:1/-1}.page-book .booking-form{display:grid;grid-template-columns:1fr 1fr;gap:12px}.page-book button{grid-column:1/-1}footer{padding-bottom:150px}.intro{padding-top:45px}}
header{isolation:isolate}header .brand,header .contact a,header nav a,header .menu{color:#fff}.brand img{mix-blend-mode:normal}.round{color:#fff}.intro>div>p{font:16px/1.85 Arial,sans-serif}.intro>div>h2{font:16px/1.85 Arial,sans-serif}.content-page #mobile-nav a{color:#fff}
.backdrop{overflow:hidden}footer>*{min-width:0}.legal{flex-wrap:wrap}footer a,footer small{overflow-wrap:anywhere}@media(max-width:700px){footer{grid-template-columns:minmax(0,1fr)}.legal{gap:12px 18px}}
/* One visual language across the entire hotel website. */
.content-page{background:#252c26;color:#fff}.page-shell{background:transparent;max-width:1300px;margin:185px auto 40px;padding:20px 5% 60px}.back-link{color:#fff;letter-spacing:1px;font-size:10px;text-transform:uppercase;border-bottom:1px solid #fff8;padding-bottom:6px}.subpage-hero{position:relative;min-height:460px;display:grid;grid-template-columns:.85fr 1.3fr;align-items:center;margin:45px 0 80px;gap:0}.subpage-heading{position:relative;z-index:1;margin-right:-80px;padding:20px 0}.subpage-heading .eyebrow{text-shadow:0 1px 15px #000}.subpage-heading h1{display:inline-block;background:#050505;padding:22px 32px;margin:0;font:400 clamp(34px,4.2vw,65px)/1.15 Georgia,serif;max-width:620px;overflow-wrap:anywhere}.subpage-hero>img{width:100%;height:460px;object-fit:cover;box-shadow:0 20px 65px #0004}.subpage-hero.text-only{min-height:200px;display:block;margin-bottom:45px}.text-only .subpage-heading{margin:0}.page-content{padding:40px clamp(22px,4vw,65px);background:#08110dc2;box-shadow:0 20px 60px #0002;font-size:16px;color:#f6f6f1}.page-content h2,.page-content h3{color:#fff}.page-content h2{display:inline-block;background:#050505;padding:10px 18px;margin-left:-18px;font:400 27px/1.3 Georgia,serif}.page-content p{line-height:1.9}.page-content a{color:#fff}.legal-content{max-width:920px;margin:auto}.legal-content h2{font-size:23px}.page-content>div:empty{display:none}.page-images{gap:45px;margin:75px 0;align-items:start}.page-images img{height:340px;box-shadow:0 20px 55px #0003}.page-images>a:nth-child(even){margin-top:55px}.page-book{border-color:#ffffff50;margin-top:70px;padding:30px;background:#05050596}.page-book h2{color:#fff}.page-book .booking-form{justify-content:center}.page-book>h2{text-align:center}.home-panel{background:transparent;color:#fff;box-shadow:none;max-width:1240px;margin:80px auto;padding:10px 4%}.home-panel>h2{display:inline-block;background:#050505;color:#fff;padding:16px 24px;font:400 34px/1.25 Georgia,serif;margin-bottom:45px}.home-panel .eyebrow{margin-left:24px}.home-panel .direct-benefits{padding:25px;background:#08110db8;margin:0 0 60px}.home-panel a:not(.image-open){color:#fff}.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:75px 5%;margin:25px 0 50px}.service-grid>a{display:block;position:relative;aspect-ratio:1.5;min-width:0;border:0;padding:0;background:#183326;box-shadow:0 18px 50px #0003;isolation:isolate}.service-grid>a:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 50%,#0008);pointer-events:none}.service-grid>a>img{width:100%;height:100%;object-fit:cover;display:block;transition:filter .5s}.service-grid>a:hover>img{filter:brightness(1.1)}.service-grid .service-title{position:absolute;top:-18px;left:-15px;color:#fff;background:#050505;font-size:clamp(15px,1.7vw,24px);line-height:1.35;padding:13px 20px;max-width:95%;z-index:2}.service-grid b{position:absolute;bottom:17px;right:20px;color:#fff;font-size:25px;z-index:2}.all-pages{padding-top:20px}.all-pages a{color:#fff;padding:15px 0}.home-panel .contact-form{padding:35px;background:#08110db8}.contact-form input,.contact-form textarea{background:#0d1711b8;color:#fff;border-color:#ffffff80}.home-panel blockquote{background:#08110db8;padding:35px}.home-panel#aktivitaeten>div{background:#08110db8;margin:18px 0;padding:18px 25px}.home-panel#aktivitaeten h2{font-size:26px}.home-panel#aktivitaeten>h2{font-size:34px}.hotel-gallery img{height:260px}.content-page footer,footer{background:#050505;color:#fff}.legal,footer small{color:#bbb}footer small{border-color:#fff3}.content-page :is(.video-toggle,.site-back){bottom:20px}
@media(max-width:700px){.page-shell{margin:125px 4% 30px;padding:15px 4% 30px}.subpage-hero{display:flex;flex-direction:column-reverse;align-items:stretch;min-height:0;margin:30px 0 35px}.subpage-hero>img{height:290px}.subpage-heading{margin:-45px 0 0 -10px;padding:0 0 10px}.subpage-heading .eyebrow{margin:0;padding:15px 15px 9px;background:#050505;display:table}.subpage-heading h1{font-size:34px;padding:15px 20px;max-width:100%}.subpage-hero.text-only{margin:35px 0;min-height:0}.text-only .subpage-heading{margin:0}.page-content{padding:25px 22px;font-size:14px}.page-content h2{font-size:23px;margin-left:-10px;padding:9px 12px}.page-images{gap:15px;margin:40px 0}.page-images img{height:210px}.page-images>a:nth-child(even){margin-top:25px}.page-book{padding:24px 15px;margin-top:40px}.page-book h2{font-size:27px}.home-panel{padding:10px 6%;margin:55px auto}.home-panel>h2{font-size:28px;padding:13px 18px;margin-bottom:35px}.service-grid{grid-template-columns:minmax(0,1fr);gap:55px;margin-top:25px}.service-grid .service-title{font-size:21px;left:-10px;top:-17px;max-width:98%}.service-grid>a{aspect-ratio:1.3}.all-pages{grid-template-columns:minmax(0,1fr)}.home-panel .contact-form{padding:25px 20px}.hotel-gallery{grid-template-columns:1fr 1fr}.hotel-gallery img{height:170px}.home-panel#aktivitaeten>div{padding:15px 20px}.content-page :is(.video-toggle,.site-back){bottom:15px}}
/* Compact introduction, benefit ribbon and minimal booking footer. */
.intro{max-width:850px;padding:65px 35px 75px}.intro>h2{font:400 clamp(34px,4vw,54px)/1.15 Georgia,serif;letter-spacing:0;margin:15px 0 22px}.intro>p:last-child{font-size:16px;line-height:1.8;max-width:680px;margin:0 auto}.intro .eyebrow{font-size:9px;letter-spacing:2.5px}.home-panel .direct-benefits{padding:0;background:none;margin:0 0 75px}.benefit-ribbon{position:relative;display:flex;align-items:center;gap:30px;justify-content:space-between;background:#0b0e0cf0;border:1px solid #d1c4a26e;border-left:4px solid #b9a67a;padding:22px 30px;box-shadow:0 12px 40px #0004;transform:rotate(-1deg);color:#fff;text-decoration:none!important}.benefit-kicker{font-size:9px;letter-spacing:2px;color:#d7c9a8}.benefit-ribbon strong{font:400 24px/1.2 Georgia,serif}.benefit-action{font-size:10px;letter-spacing:1px;white-space:nowrap;border-bottom:1px solid #b9a67a;padding:8px 0}.benefit-action b{margin-left:16px}.benefit-ribbon:hover{border-color:#d1c4a2;background:#14261c}.booking.booking-dates{height:53px;min-height:53px;padding:5px 4%}.booking-dates .booking-form{display:flex;flex-wrap:nowrap;align-items:center;gap:clamp(20px,5vw,80px)}.booking-dates .booking-form label{flex-direction:row;align-items:center;gap:10px;font-size:9px}.booking-dates .booking-form input{min-height:31px;max-width:155px;font-size:12px;padding:5px 8px;border-color:#d2d4ce}.booking-dates .booking-form button{min-height:32px;font-size:9px;padding:7px 18px;letter-spacing:.8px}:is(.video-toggle,.site-back){bottom:69px}footer{padding-bottom:100px}.content-page footer{padding-bottom:70px}
@media(max-width:700px){.intro{padding:45px 8% 55px}.intro>h2{font-size:37px}.intro>p:last-child{font-size:14px}.intro .eyebrow{font-size:8px}.benefit-ribbon{display:grid;grid-template-columns:1fr auto;gap:10px;padding:19px 18px}.benefit-kicker{grid-column:1/-1;font-size:8px}.benefit-ribbon strong{font-size:21px}.benefit-action{font-size:8px;max-width:100px;white-space:normal}.benefit-action b{margin-left:5px}.home-panel .direct-benefits{margin-bottom:55px}.booking.booking-dates{height:57px;min-height:57px;padding:4px 8px calc(4px + env(safe-area-inset-bottom))}.booking-dates .booking-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;gap:6px;align-items:end}.booking-dates .booking-form label{flex-direction:column;gap:0;font-size:7px;letter-spacing:.3px;align-items:stretch}.booking-dates .booking-form input{width:100%;max-width:none;min-height:28px;font-size:10px;padding:4px 2px}.booking-dates .booking-form button{grid-column:auto;min-height:28px;font-size:0;padding:6px 10px}.booking-dates .booking-form button:after{content:'Prüfen ↗';font-size:10px;letter-spacing:.2px}:is(.video-toggle,.site-back){bottom:73px}footer{padding-bottom:95px}}
.section-nav{display:flex}.benefit-ribbon{overflow-wrap:anywhere}
/* Calm, straight geometry and direct navigation. */
.round{transform:none;border-radius:0;outline:0;width:auto;height:auto;min-width:112px;min-height:38px;top:154px;right:6.5%;padding:9px 15px;background:#050505;border:1px solid #ffffff65;color:#fff;font-size:10px;letter-spacing:1px;line-height:1.4;display:block;text-align:center}.round:hover{background:#fff;color:#111}.benefit-ribbon{transform:none;border:0;border-radius:0;border-left:0;background:#080b09e8;box-shadow:0 12px 35px #0003;padding:25px 30px;gap:25px;outline:0}.benefit-copy{display:flex;flex-direction:column;gap:6px}.benefit-copy strong{font:400 27px/1.2 Georgia,serif;color:#fff}.benefit-copy small{font:12px/1.5 Arial,sans-serif;color:#deded9}.benefit-ribbon .benefit-action{border:1px solid #fff;background:#fff;color:#111;padding:12px 18px;font-size:10px;letter-spacing:.8px}.benefit-ribbon:hover{background:#050505}.intro>h2{font-size:clamp(32px,3.4vw,46px)}.tile,.tile img,.service-grid>a,.service-grid>a>img,.page-images img{transform:none!important}.service-grid>a>img{filter:none}.service-grid>a:hover>img{filter:brightness(1.03)}#mobile-nav{max-height:calc(100dvh - 160px);overflow:auto}.hotel-carousel{display:flex;gap:24px;overflow-x:auto;scrollbar-width:thin;scrollbar-color:#fff8 #ffffff10;overscroll-behavior-x:contain;cursor:grab;padding:10px 0 20px;scroll-behavior:auto}.hotel-carousel:active{cursor:grabbing}.hotel-carousel figure{flex:0 0 66%;margin:0;min-width:0}.hotel-carousel img{display:block;width:100%;height:430px;object-fit:cover;transform:none}.hotel-carousel figcaption{font-size:11px;letter-spacing:1px;padding:13px 0;color:#eee}.carousel-controls{display:flex;justify-content:flex-end;gap:10px;margin:-15px 0 15px}.carousel-controls button{background:#080b09;border:1px solid #fff8;color:#fff;min-height:38px;min-width:40px;font-size:24px;padding:0 13px}.carousel-controls .carousel-pause{font-size:10px;letter-spacing:1px}.attraction-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.attraction-card{display:block;text-decoration:none!important;background:#050505a8}.attraction-card img{display:block;width:100%;height:165px;object-fit:cover}.attraction-card span{display:block;padding:15px;font-size:14px}.attraction-card small{display:block;font-size:9px;color:#ddd;padding:0 15px 15px}.home-panel#aktivitaeten .attraction-grid{background:transparent;margin:0;padding:0}.home-panel#aktivitaeten>h2{font:400 34px/1.25 Georgia,serif}
@media(min-width:1101px){header nav{gap:clamp(12px,1.5vw,27px)}header nav a{font-size:10px;letter-spacing:1.3px}}
@media(max-width:1100px) and (min-width:701px){.round{top:124px}.hotel-carousel img{height:350px}.attraction-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.round{top:110px;right:28px;min-width:100px;min-height:33px;padding:8px 12px;font-size:9px}.benefit-ribbon{display:flex;flex-direction:column;align-items:flex-start;gap:18px;padding:22px}.benefit-copy strong{font-size:24px}.benefit-copy small{font-size:11px}.benefit-ribbon .benefit-action{max-width:none;white-space:nowrap;font-size:10px;padding:11px 16px}.hotel-carousel{gap:14px}.hotel-carousel figure{flex-basis:88%}.hotel-carousel img{height:250px}.carousel-controls{margin:0 0 12px}.attraction-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.attraction-card img{height:115px}.attraction-card span{font-size:12px;padding:11px}.attraction-card small{font-size:8px;padding:0 11px 11px}.home-panel#aktivitaeten>h2{font-size:28px}}
/* Original supplied logo, displayed with an exact crop and inverted on black. */
header{padding-block:12px}.brand .brand-logo{display:block;position:relative;aspect-ratio:1400/530;overflow:hidden;width:100%;margin:0;line-height:0;isolation:isolate}.brand .brand-logo img{display:block;position:absolute;max-width:none;width:122%;height:151.1321%;left:-14.6429%;top:-28.3019%;object-fit:fill;filter:invert(1);mix-blend-mode:screen}.brand>span:not(.brand-logo){margin-top:3px}.brand{width:200px}
@media(min-width:701px) and (max-width:1100px){header{padding-block:9px}.brand{width:180px}}
@media(max-width:700px){header{padding:9px 16px}.brand{width:min(150px,47vw)}.brand>span:not(.brand-logo){font-size:6px;letter-spacing:1.5px;margin-top:2px}}
@media(min-width:1101px){.round{top:164px}}@media(min-width:701px) and (max-width:1100px){.round{top:134px}#mobile-nav{top:138px}}
/* Flatter original logo, with an enlarged and strengthened original wordmark. */
.brand .brand-logo{aspect-ratio:4.15;overflow:visible}.brand .brand-logo>span{position:absolute;display:block;overflow:hidden;margin:0;line-height:0}.brand .brand-logo .logo-mark{width:80%;height:58%;left:10%;top:1%}.brand .brand-logo .logo-wordmark{width:100%;height:41%;left:0;bottom:0}.brand .brand-logo .logo-mark img{width:122%;height:219.452%;left:-14.6429%;top:-42.4658%;filter:invert(1)}.brand .brand-logo .logo-wordmark img{width:142.3333%;height:762.8571%;left:-20.8333%;top:-542.8571%;filter:invert(1) drop-shadow(.35px 0 white) drop-shadow(-.35px 0 white) drop-shadow(0 .3px white)}
/* Overlapping portrait cards, in the style of the Friseur Kern carousel. */
.hotel-carousel{--card-width:340px;--card-step:230px;position:relative;display:block;overflow:hidden;height:510px;padding:10px 0 30px;perspective:1200px;touch-action:pan-y;cursor:grab;scrollbar-width:none}.hotel-carousel figure{position:absolute;left:50%;top:10px;width:var(--card-width);height:455px;min-width:0;margin:0 0 0 calc(var(--card-width) / -2);border-radius:3px;overflow:hidden;background:#080b09;box-shadow:0 20px 55px #0007;transform:translateX(calc(var(--offset) * var(--card-step))) scale(var(--card-scale));transition:transform 1s cubic-bezier(.2,.65,.2,1),opacity .8s;transform-origin:center center;user-select:none;outline-offset:4px}.hotel-carousel figure[aria-current="true"]{box-shadow:0 24px 65px #0008}.hotel-carousel img{width:100%;height:100%;object-fit:cover;pointer-events:none;user-select:none;-webkit-user-drag:none}.hotel-carousel figcaption{position:absolute;bottom:0;left:0;right:0;padding:55px 22px 22px;background:linear-gradient(transparent,#000b);font:400 23px/1.2 Georgia,serif;letter-spacing:0;color:white;pointer-events:none}.carousel-controls{justify-content:center;margin:0 0 7px}.carousel-controls .carousel-prev,.carousel-controls .carousel-next{display:none}.carousel-controls .carousel-pause{background:none;border:0;font-size:9px;letter-spacing:1.5px;min-height:28px;padding:0 12px;color:#ddd}.carousel-dots{display:flex;justify-content:center;gap:12px;margin:10px 0 0}.carousel-dots button{width:7px;height:7px;border:1px solid white;border-radius:50%;padding:0;background:transparent}.carousel-dots button[aria-current="true"]{background:white}.photo-viewer{background:#080b09;color:white;width:min(1100px,94vw);padding:0;border:0;max-height:92svh;overflow:auto}.photo-viewer::backdrop{background:#000c;backdrop-filter:blur(8px)}.photo-viewer img{display:block;width:100%;max-height:78svh;object-fit:contain}.photo-viewer p{padding:10px 25px;margin:0;text-align:center;font:20px Georgia,serif}.photo-viewer button{position:absolute;top:12px;right:12px;width:38px;height:38px;border:1px solid #fff8;background:#080b09cc;color:white;font-size:28px;z-index:1}
@media(max-width:1000px){.hotel-carousel{--card-width:310px;--card-step:190px;height:465px}.hotel-carousel figure{height:415px}}
@media(max-width:700px){.hotel-carousel{--card-width:min(72vw,310px);--card-step:46vw;height:clamp(340px,101vw,455px);margin-left:-7%;margin-right:-7%}.hotel-carousel figure{height:calc(var(--card-width) * 1.34)}.hotel-carousel figcaption{font-size:21px;padding:45px 18px 18px}.carousel-dots{gap:13px;margin-top:0}.brand .brand-logo .logo-wordmark img{filter:invert(1) drop-shadow(.25px 0 white) drop-shadow(-.25px 0 white) drop-shadow(0 .25px white)}}
@media(prefers-reduced-motion:reduce){.hotel-carousel figure{transition:none}}
/* Stronger cricket line, slightly raised. */
.brand .brand-logo .logo-mark{top:-6%}.brand .brand-logo .logo-mark img{filter:invert(1) drop-shadow(.3px 0 white) drop-shadow(-.3px 0 white) drop-shadow(0 .25px white)}
/* Compact price comparison action. */
.round{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:#f4f2eb;color:#151b16;border:0;min-width:0;padding:10px 16px;font-size:10px;letter-spacing:.5px;box-shadow:0 5px 20px #0003}.round span{display:inline}.round svg{flex-shrink:0}.round:hover{background:#fff;color:#111}
/* The slim date bar appears only after the main date selector scrolls away. */
.booking.booking-dates{height:39px;min-height:39px;padding:3px 4%}.booking-dates .booking-form{gap:clamp(14px,4vw,65px)}.booking-dates .booking-form label{font-size:8px;gap:7px}.booking-dates .booking-form input{min-height:27px;height:27px;font-size:11px;max-width:135px;padding:3px 6px}.booking-dates .booking-form button{min-height:27px;height:27px;font-size:8px;padding:5px 13px}:is(.video-toggle,.site-back){bottom:53px}.booking-dates[hidden]{display:none!important}body{overflow-x:clip}html{overflow-x:clip}
@media(max-width:700px){.round{padding:9px 12px;min-height:33px;font-size:9px;gap:6px}.round svg{width:15px;height:15px}.booking.booking-dates{height:42px;min-height:42px;padding:2px 7px calc(2px + env(safe-area-inset-bottom))}.booking-dates .booking-form{gap:5px}.booking-dates .booking-form label{font-size:6px;gap:0}.booking-dates .booking-form input{height:25px;min-height:25px;font-size:10px;padding:3px 2px;max-width:none}.booking-dates .booking-form button{height:25px;min-height:25px;font-size:0;padding:4px 9px}.booking-dates .booking-form button:after{font-size:9px}:is(.video-toggle,.site-back){bottom:55px}.brand .brand-logo .logo-mark img{filter:invert(1) drop-shadow(.22px 0 white) drop-shadow(-.22px 0 white) drop-shadow(0 .2px white)}}

.round{flex-direction:row;width:auto;height:auto;border-radius:3px;outline:0;white-space:nowrap}

/* Current supplied brand and direct-price seal */
.brand>.current-logo{display:block;width:100%;height:auto;filter:invert(1);mix-blend-mode:screen}
.footer-logo{margin:0 0 20px!important;max-width:235px;line-height:1!important}.footer-logo a{display:block}.footer-logo .current-logo{display:block;width:100%;height:auto;filter:invert(1);mix-blend-mode:screen}
.round{width:116px;height:116px;min-width:116px;min-height:116px;padding:17px 8px;border-radius:50%;background:#285340;color:#fff;flex-direction:column;gap:5px;outline:1px solid #d7dfc7;outline-offset:-7px;border:1px solid #829b75;box-shadow:0 8px 24px #0004;transform:rotate(-8deg);white-space:normal;text-align:center;line-height:1.2}
.round:before{content:'';position:absolute;inset:10px;border:1px dashed #d7dfc766;border-radius:50%;pointer-events:none}.round .stamp-top,.round .stamp-bottom{font:7px/1.2 Arial,sans-serif;letter-spacing:1.1px}.round .stamp-main{font:400 17px/1.05 Georgia,serif;letter-spacing:0}.round:hover{background:#34634c;color:#fff}
.contact-details a{display:inline-block;text-underline-offset:5px;text-decoration-color:#ffffff60}.contact-details a:hover{text-decoration:underline}.contact-details a:last-child{margin-top:7px}
.review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px;margin-top:35px}.review-grid figure{margin:0;padding:28px 22px;border-top:1px solid #d7dfc755;background:#090e0c40}.review-grid blockquote{margin:0!important;font:400 22px/1.45 Georgia,serif!important}.review-grid figcaption{margin-top:24px;font-size:10px;letter-spacing:.5px;color:#d8d8d0}.review-grid figcaption a{text-decoration:underline;text-underline-offset:3px}
@media(max-width:700px){.brand{width:150px}.round{width:90px;height:90px;min-width:90px;min-height:90px;padding:13px 6px;gap:4px;right:22px}.round .stamp-top,.round .stamp-bottom{font-size:5.5px;letter-spacing:.65px}.round .stamp-main{font-size:14px}.round:before{inset:9px}.review-grid{grid-template-columns:1fr;gap:15px}.review-grid figure{padding:22px}.review-grid blockquote{font-size:21px!important}.review-grid figcaption{margin-top:16px}.footer-logo{max-width:200px}.contact-details{font-size:13px}.contact-details a{padding:5px 0}}

/* Fixed opening screen and raised price seal */
.round{top:65px;right:2.5%;transform:rotate(9deg);z-index:13}
html.start-screen,html.start-screen body{height:100%;overflow:hidden;overscroll-behavior:none}
.start-screen main> :not(.hero),.start-screen footer,.start-screen .booking-dates{display:none!important}
.start-screen .hero{height:100dvh;min-height:0;max-height:100dvh;padding:170px 25px 70px;display:flex;align-items:center;justify-content:center;overflow:hidden}
.start-screen .hero>div{width:100%;max-width:1100px}
.inner-screen .hero{display:none}
@media(min-width:701px) and (max-width:1100px){.round{top:55px;right:2%}}
@media(max-width:700px){.round{top:45px;right:10px;width:82px;height:82px;min-width:82px;min-height:82px}.round .stamp-main{font-size:13px}.round .stamp-top,.round .stamp-bottom{font-size:5px}.start-screen .hero{padding:145px 20px 55px}.start-screen .hero h1{font-size:clamp(27px,7.4vw,38px);line-height:1.25}.start-screen .hero .eyebrow{margin-bottom:18px}.start-screen .hero-dates{zoom:.8}.start-screen .discover{margin-top:25px}}
@media(max-width:700px) and (max-height:600px){.start-screen .hero{padding-top:125px;padding-bottom:15px}.start-screen .hero h1{font-size:26px}.start-screen .hero .eyebrow{margin-bottom:10px}.start-screen .hero-dates{margin-top:20px}.start-screen .discover{margin-top:12px}}
@media(min-width:1101px){header{padding-right:155px;gap:clamp(22px,3vw,50px)}}
@media(max-width:700px){header{padding-left:20px;padding-right:100px;gap:10px}.brand{width:140px}.menu{flex-shrink:0}}
@media(max-width:700px){.start-screen .hero-dates{zoom:1;transform:scale(.8);transform-origin:center center;margin-top:16px;margin-bottom:-16px}}
@media(min-width:701px) and (max-width:1100px){header{padding-right:125px;gap:20px}}
@media(max-width:360px){header{left:12px;right:12px;padding-left:14px;padding-right:94px;gap:5px}.brand{width:105px}.menu{font-size:9px}.round{right:5px}}

/* Natural page scrolling, without pulling the opening screen downward. */
html,body{overscroll-behavior-y:none}
.hero{height:100svh;min-height:650px;padding:170px 25px 70px;display:flex;align-items:center;justify-content:center}
.hero>div{width:100%;max-width:1100px}
.round{top:128px;right:2.5%;transform:rotate(9deg)}
@media(min-width:1101px){header{padding-right:clamp(24px,3vw,48px)}}
@media(min-width:701px) and (max-width:1100px){.round{top:112px}header{padding-right:clamp(24px,3vw,48px)}}
@media(max-width:700px){header{padding-left:20px;padding-right:20px;gap:15px}.brand{width:140px}.menu{margin-left:auto;flex-shrink:0}.round{top:96px;right:14px}.hero{height:100svh;min-height:580px;padding:150px 20px 45px}.hero h1{font-size:clamp(27px,7.4vw,38px);line-height:1.25}.hero .eyebrow{margin-bottom:18px}.hero-dates{transform:scale(.8);transform-origin:center;margin-top:16px;margin-bottom:-16px}.hero .discover{margin-top:25px}}
@media(max-width:360px){header{padding-right:14px}.brand{width:130px}.menu{font-size:10px}.round{right:8px}}
/* Image and text share a composed editorial panel on hotel detail pages. */
.subpage-hero.editorial-hero{grid-template-columns:1fr 1.1fr;gap:0;min-height:400px;margin:30px 0 55px;background:linear-gradient(120deg,#0b1713f2,#1d3028eb);border:1px solid #d2dbbf38;box-shadow:0 24px 65px #0003;overflow:hidden;align-items:stretch}
.editorial-hero .subpage-heading{margin:0;padding:clamp(24px,4vw,58px);display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
.editorial-hero .subpage-heading h1{background:none;padding:0;font:400 clamp(32px,4vw,57px)/1.12 Georgia,serif;max-width:100%;overflow-wrap:normal;hyphens:auto}
.editorial-hero .subpage-heading .eyebrow{font-size:9px;letter-spacing:2px;color:#cbd4bd;margin:0 0 23px}
.editorial-intro{font:400 clamp(17px,1.6vw,22px)/1.5 Georgia,serif;color:#e0e2d6;max-width:320px;margin:23px 0 0;padding-top:20px;border-top:1px solid #cbd4bd50}
.editorial-photo{margin:0;min-width:0;position:relative;padding:22px 22px 0 0;display:flex;flex-direction:column}
.editorial-photo img{display:block;width:100%;height:100%;min-height:340px;max-height:480px;object-fit:cover;box-shadow:none;flex:1}
.editorial-photo figcaption{font-size:8px;line-height:1.5;letter-spacing:1.5px;padding:13px 0;color:#cbd4bd}
.page-images.editorial-gallery{gap:25px;margin:45px 0 60px;background:#0b1713b8;padding:25px;border:1px solid #d2dbbf30}
.editorial-gallery figure{margin:0;min-width:0;background:#0c1511;border:1px solid #d2dbbf25;overflow:hidden}
.editorial-gallery figure a{display:block}.editorial-gallery figure img{height:280px;width:100%;object-fit:cover;box-shadow:none}.editorial-gallery figcaption{padding:15px 18px;font:400 16px/1.4 Georgia,serif;color:#e2e4d9}
.stay-extras{margin-top:65px;padding-top:30px;border-top:1px solid #d2dbbf40}.stay-extra-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin:20px 0 30px}.stay-extra-grid>a{display:flex;flex-direction:column;align-items:flex-start;padding:25px;background:#17291fed;border:1px solid #d2dbbf40;text-decoration:none;transition:background .2s}.stay-extra-grid>a:hover{background:#284533}.stay-extra-grid span{font-size:9px;letter-spacing:1.3px;text-transform:uppercase;color:#cbd4bd}.stay-extra-grid h3{font:400 25px/1.2 Georgia,serif;margin:15px 0}.stay-extra-grid p{font-size:13px;line-height:1.7;margin:0 0 22px}.stay-extra-grid b{font-size:10px;font-weight:400;margin-top:auto;border-bottom:1px solid #d2dbbf70;padding-bottom:4px}.stay-documents{display:flex;flex-wrap:wrap;align-items:center;gap:14px 24px;padding:20px 0;border-top:1px solid #d2dbbf30;font-size:11px}.stay-documents>span{color:#cbd4bd;margin-right:auto}
@media(max-width:700px){.subpage-hero.editorial-hero{display:grid;grid-template-columns:1fr;margin:25px 0 30px;min-height:0}.editorial-hero .subpage-heading{padding:26px 24px}.editorial-hero .subpage-heading h1{font-size:35px}.editorial-hero .subpage-heading .eyebrow{background:none;padding:0;margin-bottom:16px}.editorial-intro{font-size:18px;margin-top:16px;padding-top:15px;max-width:none}.editorial-photo{padding:0 16px;}.editorial-photo img{height:240px;min-height:0;max-height:300px;flex:auto}.editorial-photo figcaption{font-size:7px;padding:11px 0}.page-images.editorial-gallery{grid-template-columns:1fr;gap:20px;margin:30px 0;padding:16px}.editorial-gallery figure img{height:250px}.editorial-gallery figcaption{font-size:15px;padding:13px 15px}.stay-extra-grid{grid-template-columns:1fr;gap:14px}.stay-extra-grid>a{padding:23px}.stay-extras{margin-top:35px}.stay-documents>span{flex-basis:100%}}

.room-welcome{max-width:780px;margin:60px auto;text-align:center}.room-welcome h2,.family-rooms>h2,.room-details-gallery h2{font:400 clamp(30px,3.6vw,45px)/1.2 Georgia,serif;margin:15px 0 25px}.room-welcome>p:last-child{font-size:16px;line-height:1.9;color:#e0e4dc}.room-collection{display:grid;gap:38px}.room-feature{display:grid;grid-template-columns:1.15fr 1fr;background:#0d1b15ec;border:1px solid #d2dbbf35;overflow:hidden}.room-feature:nth-child(even){grid-template-columns:1fr 1.15fr}.room-feature:nth-child(even)>figure{order:2}.room-feature figure{margin:0;min-width:0;display:flex;flex-direction:column}.room-feature figure a{display:block;flex:1;min-height:360px}.room-feature img{display:block;width:100%;height:100%;min-height:360px;max-height:470px;object-fit:cover}.room-feature figcaption{padding:13px 20px;font-size:10px;color:#cbd4bd;border-top:1px solid #d2dbbf30}.room-copy{align-self:center;padding:clamp(25px,4vw,50px)}.room-copy h2{font:400 clamp(29px,3.3vw,43px)/1.2 Georgia,serif;margin:18px 0 23px}.room-copy>p{font-size:15px;line-height:1.85}.room-copy .eyebrow{font-size:9px;color:#cbd4bd;letter-spacing:1.8px}.room-tags{padding:0;margin:25px 0;list-style:none;display:flex;flex-wrap:wrap;gap:8px}.room-tags li{font-size:10px;border:1px solid #d2dbbf50;padding:6px 10px;color:#e1e7d8}.room-note{font-size:12px!important;line-height:1.7;color:#cbd4bd}.room-details-link{display:inline-block;border-bottom:1px solid #cbd4bd70;font-size:12px;padding:6px 0}.family-rooms{margin:75px 0}.family-room-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:23px}.family-room-grid article{background:#0d1b15ec;border:1px solid #d2dbbf35;min-width:0}.family-room-grid article img{display:block;width:100%;height:245px;object-fit:cover}.family-room-grid article>div:not(.two-room-motif){padding:25px}.room-capacity{font-size:8px;letter-spacing:1.2px;color:#cbd4bd}.family-room-grid h3{font:400 28px/1.2 Georgia,serif;margin:15px 0 20px}.family-room-grid p{font-size:13px;line-height:1.8}.two-room-motif{height:245px;display:flex;align-items:center;justify-content:center;gap:20px;background:linear-gradient(120deg,#345642,#152a20);border-bottom:1px solid #d2dbbf35}.two-room-motif>span{font:120px/1 Georgia,serif;color:#cbd4bd}.two-room-motif>p{font:22px/1.4 Georgia,serif;color:#e4e9dd}.room-details-gallery{padding:35px;background:#0d1b15cf;border:1px solid #d2dbbf35}.room-details-gallery>div:first-child{max-width:630px;margin-bottom:30px}.room-details-gallery p{font-size:14px;line-height:1.8}.room-detail-photos{display:grid;grid-template-columns:1fr 1fr;gap:25px}.room-detail-photos figure{margin:0;min-width:0}.room-detail-photos img{width:100%;height:330px;object-fit:cover;display:block}.room-detail-photos figcaption{font-size:11px;padding:13px 0;color:#cbd4bd}.room-book>p{text-align:center;max-width:650px;margin:15px auto 30px;font-size:13px}.room-photo-open{cursor:zoom-in}.room-photo-viewer{padding:0;background:#09120f;color:#fff;border:1px solid #ffffff50;max-width:92vw;max-height:92dvh;width:1000px}.room-photo-viewer::backdrop{background:#000d}.room-photo-viewer img{display:block;width:100%;height:80dvh;object-fit:contain}.room-photo-viewer button{position:absolute;right:12px;top:12px;width:44px;height:44px;background:#050505e8;border:1px solid #fff9;border-radius:50%;font-size:28px}.room-photo-viewer p{font-size:12px;text-align:center;padding:12px;margin:0}
@media(max-width:900px){.family-room-grid{grid-template-columns:1fr}.family-room-grid article{display:grid;grid-template-columns:1fr 1fr}.family-room-grid article img,.two-room-motif{height:100%;min-height:260px}.room-feature,.room-feature:nth-child(even){grid-template-columns:1fr}.room-feature:nth-child(even)>figure{order:0}.room-feature img{height:360px}.room-feature figure a{min-height:0}.room-detail-photos img{height:290px}}
@media(max-width:700px){.room-welcome{margin:35px 0}.room-welcome>p:last-child{font-size:14px}.room-collection{gap:25px}.room-feature img{height:245px;min-height:0}.room-copy{padding:25px}.room-copy h2{font-size:31px}.room-copy>p{font-size:14px}.room-feature figcaption{font-size:9px;padding:12px 16px}.family-rooms{margin:45px 0}.family-room-grid article{display:block}.family-room-grid article img,.two-room-motif{height:245px;min-height:0}.family-room-grid article>div:not(.two-room-motif){padding:24px}.room-details-gallery{padding:20px}.room-detail-photos{grid-template-columns:1fr;gap:20px}.room-detail-photos img{height:270px}.room-photo-viewer img{height:70dvh}.room-tags{margin:20px 0}}
.hotel-faq details{border-top:1px solid #d2dbbf50;background:#0b1713b8;padding:0 24px}.hotel-faq details:last-child{border-bottom:1px solid #d2dbbf50}.hotel-faq summary{cursor:pointer;padding:22px 0;font:400 22px/1.4 Georgia,serif}.hotel-faq details p{padding:0 0 22px;margin:0;font-size:14px;line-height:1.8;max-width:850px;color:#e0e4dc}.hotel-faq summary:focus-visible{outline:2px solid #d2dbbf;outline-offset:4px}@media(max-width:700px){.hotel-faq summary{font-size:19px}.hotel-faq details{padding:0 19px}}
.seo-breadcrumbs{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center;margin:15px 0 30px;font-size:10px;line-height:1.7;color:#d3dbcc}.seo-breadcrumbs a{font-size:10px;letter-spacing:.3px;text-transform:none;border-bottom:1px solid #d3dbcc60;padding:4px 0}.seo-breadcrumbs span[aria-current]{color:#fff}
/* Smaller direct-price seal, with the same contact point at the menu. */
.round{transform:rotate(9deg) scale(.8);transform-origin:top right}
.hotel-carousel figure{border:7px solid #e5e3d6;outline:1px solid #a4ae94;outline-offset:0;box-shadow:0 20px 55px #0007,inset 0 0 0 1px #ffffff55}.hotel-carousel figure[aria-current="true"]{border-color:#f0eee4;box-shadow:0 24px 65px #0008}.hotel-carousel figure:focus-visible{outline:3px solid #e7bf72;outline-offset:4px}
.trip-home-categories{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin:30px 0}.trip-home-categories>a{display:flex;flex-direction:column;gap:12px;background:#10251bea;border:1px solid #d2dbbf50;padding:22px;text-decoration:none!important}.trip-home-categories span{font:22px/1.2 Georgia,serif}.trip-home-categories small{font-size:10px;color:#d0d9c6}.trip-more-button{display:inline-flex;align-items:center;gap:35px;background:#e5e3d6;color:#152319!important;padding:16px 25px;text-decoration:none!important;font-size:12px;letter-spacing:.7px}.trip-more-button span{font-size:22px}.trip-intro{padding:45px 0 40px;max-width:900px}.trip-intro h1{font:400 clamp(40px,5vw,70px)/1.12 Georgia,serif;margin:20px 0 30px}.trip-intro>p:last-child{max-width:650px;font-size:17px;line-height:1.8;color:#e2e6d9}.trip-categories{display:flex;flex-wrap:wrap;gap:12px;margin:0 0 50px}.trip-categories a{background:#13281eea;border:1px solid #d2dbbf66;padding:12px 19px;font-size:11px;letter-spacing:.4px;text-transform:none}.trip-category{padding:38px 0 25px;scroll-margin-top:175px}.trip-category-heading{border-top:1px solid #d2dbbf60;padding-top:30px;margin-bottom:30px}.trip-category-heading h2{font:400 clamp(30px,3.5vw,44px)/1.2 Georgia,serif;margin:15px 0}.trip-category-heading>p:last-child{color:#dce2d4;font-size:15px}.trip-offers{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:19px}.trip-offer{display:flex;flex-direction:column;padding:27px;background:linear-gradient(120deg,#0c1b15f0,#1c3025ed);border:1px solid #d2dbbf40;transition:background .2s,border-color .2s}.trip-offer:hover{background:#264532;border-color:#d2dbbfaa}.trip-location{font-size:9px;letter-spacing:1.5px;text-transform:uppercase;color:#cbd4bd}.trip-offer h3{font:400 27px/1.2 Georgia,serif;margin:15px 0}.trip-offer p{font-size:14px;line-height:1.75;color:#e1e5d9;margin:0 0 25px}.trip-visit{font-size:10px;border-bottom:1px solid #d2dbbf70;padding-bottom:5px;align-self:flex-start;margin-top:auto}.trip-top{display:inline-block;font-size:10px;color:#d5ddca;margin:22px 0}.trip-note{font-size:12px;line-height:1.9;background:#0b1713bd;padding:25px;border-top:1px solid #d2dbbf50;margin-top:30px}.trip-offer:focus-visible,.trip-categories a:focus-visible{outline:3px solid #e7bf72;outline-offset:4px}
@media(max-width:900px){.trip-home-categories{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.hotel-carousel figure{border-width:5px}.trip-home-categories{gap:12px}.trip-home-categories>a{padding:17px}.trip-home-categories span{font-size:19px}.trip-home-categories small{font-size:9px}.trip-more-button{padding:13px 23px}.trip-intro{padding:30px 0}.trip-intro>p:last-child{font-size:15px}.trip-categories{gap:10px;margin-bottom:25px}.trip-categories a{font-size:10px;padding:11px 13px}.trip-category{scroll-margin-top:135px;padding-top:15px}.trip-offers{grid-template-columns:1fr;gap:15px}.trip-offer{padding:24px}.trip-offer h3{font-size:25px}.trip-offer p{font-size:13px}.trip-note{padding:20px}.trip-intro h1{font-size:40px}}
@media(min-width:701px){.stay-extra-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.home-panel#aktivitaeten>.trip-home-categories{background:none;margin:30px 0;padding:0}
#kategorien{scroll-margin-top:180px}

/* Match the visible lettering width precisely to the cricket flourish. */
.balanced-logo,.brand>.balanced-logo,.footer-logo .balanced-logo{position:relative;display:block;width:100%;height:auto;aspect-ratio:496/215;overflow:hidden;margin:0;padding:0;filter:none!important;mix-blend-mode:normal!important;line-height:0}
.balanced-logo>img{position:absolute!important;top:0!important;height:100%!important;max-width:none!important;margin:0!important;padding:0!important;object-fit:fill;filter:invert(1)!important;mix-blend-mode:screen;display:block}
.balanced-logo>.balanced-symbol{width:100%!important;left:0;clip-path:inset(0 0 35% 0)}
.balanced-logo>.balanced-lettering{width:117.2151899%!important;left:-4.26653736%;clip-path:inset(65.11627907% 0 0 0)}
/* Excursion cards: photography and separate website/navigation controls. */
.trip-offer{padding:0;overflow:hidden;min-width:0}.trip-image{position:relative;margin:0;min-width:0;background:#0c1812}.trip-image>a{display:block}.trip-image img{display:block;width:100%;height:110px;object-fit:cover}.trip-image-context{position:absolute;left:12px;top:12px;max-width:calc(100% - 24px);background:#07110bd9;color:#fff;padding:5px 9px;font-size:9px;line-height:1.5;letter-spacing:.3px}.trip-image-credit{font-size:9px;color:#c7d1bf;padding:0 15px;border-bottom:1px solid #d2dbbf25}.trip-image-credit summary{padding:9px 0;cursor:pointer}.trip-image-credit p{font-size:10px;line-height:1.7;margin:0;padding:0 0 12px;overflow-wrap:anywhere}.trip-image-credit a{text-decoration:underline;text-underline-offset:2px}.trip-offer-copy{padding:25px 27px 10px}.trip-offer-copy>p{margin-bottom:15px}.trip-route{margin-top:auto;padding:20px 27px 24px;border-top:1px solid #d2dbbf35;background:#14291de0}.trip-offer .trip-route-label{font-size:8px;letter-spacing:1.6px;margin:0 0 5px;color:#c7d1bf}.trip-offer .trip-distance{font-size:14px;margin:0 0 15px;color:#fff}.trip-offer .trip-route-target{font-size:10px;margin:-7px 0 14px;color:#c7d1bf}.trip-actions{display:flex;align-items:stretch;gap:9px;flex-wrap:wrap}.trip-actions>a{display:flex;align-items:center;justify-content:center;min-height:42px;padding:9px 15px;font-size:10px;line-height:1.4;border:1px solid #d2dbbf70;background:transparent;white-space:nowrap}.trip-actions .trip-navigation{background:#e5e3d6;color:#102218;border-color:#e5e3d6}.trip-actions .trip-transit{color:#d4ddca;border-color:transparent;padding:9px 4px}.trip-actions a:hover{background:#fff;color:#14281a}.trip-actions a:focus-visible{outline:3px solid #e7bf72;outline-offset:3px}.trip-intro .trip-routing-hint{font-size:12px;line-height:1.8;color:#d2dbc7;max-width:680px;margin-top:22px}.trip-route-sources{display:block;margin-top:12px;font-size:10px}.trip-route-sources a{text-decoration:underline;text-underline-offset:2px}
@media(max-width:700px){.trip-image img{height:100px}.trip-offer-copy{padding:23px 24px 8px}.trip-route{padding:18px 24px 22px}.trip-offer .trip-distance{font-size:13px}.trip-actions{gap:7px}.trip-actions>a{min-height:44px;padding:9px 12px;font-size:10px}.trip-actions .trip-transit{padding:9px 3px}}
.trip-offer h3{overflow-wrap:anywhere;hyphens:auto}

/* Compact excursion cards, retaining readable route controls. */
.trip-offer-copy{padding:16px 22px 5px}.trip-offer h3{margin:10px 0;font-size:24px}.trip-offer-copy>p{margin-bottom:10px;line-height:1.6}.trip-route{padding:13px 22px 16px}.trip-offer .trip-distance{margin-bottom:10px}.trip-image-credit summary{padding:6px 0}
@media(max-width:700px){.trip-offer-copy{padding:15px 18px 5px}.trip-offer h3{font-size:23px}.trip-route{padding:12px 18px 15px}}

/* Consistent category tiles and category-coloured wayfinding. */
.trip-categories{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));align-items:stretch;gap:12px}
.trip-categories a{display:flex;align-items:center;justify-content:center;min-width:0;min-height:68px;padding:12px;text-align:center;line-height:1.5;box-sizing:border-box;font-size:12px}
.trip-categories a[href="#familien"],#familien{--trip-tone:#674528;--trip-accent:#e3b57f;--trip-surface:#30251beF}
.trip-categories a[href="#kultur"],#kultur{--trip-tone:#384d6b;--trip-accent:#b4c9e6;--trip-surface:#1c2837ef}
.trip-categories a[href="#natur"],#natur{--trip-tone:#3c5941;--trip-accent:#bbd1a7;--trip-surface:#1a2d20ef}
.trip-categories a[href="#auszeit"],#auszeit{--trip-tone:#654859;--trip-accent:#dfbbd1;--trip-surface:#30222def}
.trip-categories a{background:var(--trip-tone);border:1px solid var(--trip-accent);color:#fff;box-shadow:0 7px 20px #0002}
.trip-categories a:hover{filter:brightness(1.18)}
.trip-category-heading{border-top:2px solid var(--trip-accent);border-left:3px solid var(--trip-accent);padding:24px 24px 18px;background:linear-gradient(110deg,var(--trip-surface),transparent)}
.trip-category-heading .eyebrow{color:var(--trip-accent)}
.trip-category .trip-offer{background:var(--trip-surface);border-color:color-mix(in srgb,var(--trip-accent) 45%,transparent)}
.trip-category .trip-offer:hover{border-color:var(--trip-accent)}
.trip-category .trip-route{background:color-mix(in srgb,var(--trip-tone) 40%,#101812)}
.trip-category .trip-navigation{background:var(--trip-accent);border-color:var(--trip-accent);color:#172018}
.trip-number{display:flex;align-items:baseline;gap:6px;width:fit-content;margin:0 0 10px;color:var(--trip-accent);font:600 18px/1.3 Arial,sans-serif;letter-spacing:1px}
.trip-number small{font:400 10px/1.3 Arial,sans-serif;letter-spacing:.4px;opacity:.85}
@media(max-width:900px){.trip-categories{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.trip-categories{gap:10px}.trip-categories a{min-height:68px;padding:10px 7px;font-size:11px}.trip-category-heading{padding:20px 17px 15px}}

/* Booking dock matches the black header on every device. */
.booking.booking-dates{background:#050505;color:#fff;border-top:1px solid #ffffff30;color-scheme:dark}
.booking-dates .booking-form label{color:#fff}
.booking-dates .booking-form input{background:#050505;color:#fff;border:1px solid #ffffff65;color-scheme:dark}
.booking-dates .booking-form button{background:#050505;color:#fff;border:1px solid #ffffff90}
.booking-dates .booking-form button:hover{background:#202020;border-color:#fff}
.booking-dates .booking-form input:focus-visible,.booking-dates .booking-form button:focus-visible{outline:2px solid #fff;outline-offset:2px}
.booking-dates .date-error{color:#ffcdcd}

/* A single compact booking row, including labels on narrow screens. */
.booking.booking-dates{height:auto;min-height:36px;padding:4px max(8px,env(safe-area-inset-right)) calc(4px + env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left))}
.booking-dates .booking-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;align-items:center;gap:12px;width:100%;max-width:820px;flex-wrap:nowrap}
.booking-dates .booking-form label{display:flex;flex-direction:row;align-items:center;gap:8px;font-size:9px;letter-spacing:.3px;white-space:nowrap;min-width:0}
.booking-dates .booking-form input{flex:1;width:100%;min-width:0;max-width:none;height:28px;min-height:28px;font-size:12px;padding:3px 5px}
.booking-dates .booking-form button{grid-column:auto;height:28px;min-height:28px;font-size:0;padding:4px 14px;background:var(--green);color:#fff;border:1px solid #7eac91}
.booking-dates .booking-form button:after{content:'Prüfen';font-size:11px;letter-spacing:.2px}
.booking-dates .booking-form button:hover{background:#355e49;border-color:#b5d1bd}
.booking-dates .date-error{position:absolute;bottom:100%;left:0;margin:0;background:#050505}
.booking-dates .date-error:empty{display:none}
@media(max-width:700px){.booking-dates .booking-form{gap:6px}.booking-dates .booking-form label{gap:4px;font-size:7px;letter-spacing:0}.booking-dates .booking-form input{font-size:10px;padding:3px 0}.booking-dates .booking-form button{padding:4px 9px}.booking-dates .booking-form button:after{font-size:10px}}

/* Wide editorial invitation at the end of the excursion cards. */
.attraction-grid .attraction-more{grid-column:span 2;display:grid;grid-template-columns:45% minmax(0,1fr);grid-template-rows:1fr 1fr;column-gap:0;background:linear-gradient(120deg,#10231beb,#243a2bed);border:1px solid #c5d0b873;box-shadow:0 10px 30px #0003;overflow:hidden;transition:border-color .2s,background .2s}
.attraction-more img{grid-column:1;grid-row:1/3;height:100%;min-height:170px;max-height:220px;object-fit:cover}
.attraction-more span{grid-column:2;align-self:end;padding:22px 26px 9px;font:400 clamp(23px,2.6vw,32px)/1.2 Georgia,serif;color:#fff}
.attraction-more small{grid-column:2;align-self:start;padding:0 26px 22px;font-size:12px;line-height:1.6;color:#e0e7d7}
.attraction-more:hover{border-color:#e7e7d5;background:#294332}
.attraction-more:focus-visible{outline:3px solid #e7bf72;outline-offset:4px}
@media(max-width:700px){.attraction-grid .attraction-more{grid-template-columns:42% minmax(0,1fr)}.attraction-more img{min-height:145px;max-height:none}.attraction-more span{font-size:23px;padding:18px 17px 8px}.attraction-more small{font-size:10px;padding:0 17px 18px}}
/* One shared arrival/departure calendar. */
.booking-form .stay-date-trigger{background:#fff;color:#222;border:1px solid #c8ccc6;min-height:44px;padding:11px 12px;font:15px Arial,sans-serif;letter-spacing:0;white-space:nowrap;text-align:left}
.booking-dates .booking-form .stay-date-trigger{background:#050505;color:#fff;border:1px solid #ffffff65;flex:1;min-width:0;min-height:28px;height:28px;padding:3px 5px;font-size:12px}
.booking-dates .booking-form .stay-date-trigger:after{content:none}
.stay-calendar{box-sizing:border-box;width:min(440px,calc(100vw - 24px));max-height:calc(100dvh - 24px);overflow:auto;border:1px solid #a8b59b;border-radius:12px;padding:24px;background:#111d16;color:#fff;box-shadow:0 25px 90px #0009;position:fixed;inset:0;margin:auto;font:14px/1.4 Arial,sans-serif;color-scheme:dark}
.stay-calendar::backdrop{background:#000a;backdrop-filter:blur(5px)}
.stay-calendar button{cursor:pointer;font:inherit;color:inherit;border-radius:5px}.stay-calendar button:focus-visible{outline:2px solid #e5c68d;outline-offset:2px}.stay-top{display:flex;align-items:center;justify-content:space-between;gap:15px}.stay-top h2{margin:0;font:28px Georgia,serif}.stay-close{background:transparent;border:0;font-size:28px!important;min-width:40px;min-height:40px}.stay-selection{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:20px}.stay-selection button{padding:12px;background:#1d3024;border:1px solid #60735e;text-align:left}.stay-selection button[aria-pressed=true]{border-color:#e5c68d;box-shadow:inset 0 -3px #e5c68d}.stay-selection small,.stay-selection strong{display:block}.stay-selection small{font-size:10px;text-transform:uppercase;letter-spacing:1px;margin-bottom:5px;color:#d1dac7}.stay-instruction{min-height:35px;color:#d1dac7;font-size:12px;margin:16px 0 8px}.stay-month-nav{display:flex;align-items:center;justify-content:space-between}.stay-month-nav h3{font-size:17px;font-weight:400}.stay-month-nav button{background:transparent;border:1px solid #6d7c67;min-width:40px;min-height:40px;font-size:25px}.stay-calendar button:disabled{opacity:.3;cursor:default}.stay-weekdays,.stay-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px}.stay-weekdays{text-align:center;font-size:11px;color:#b9c6ad;margin:10px 0}.stay-days{touch-action:pan-y}.stay-days button{border:0;background:transparent;min-height:42px;padding:0;font-size:14px}.stay-days button:hover:not(:disabled){background:#344d39}.stay-days button.in-range{background:#304936;border-radius:0}.stay-days button.selected{background:#d7dfca;color:#152219;font-weight:bold}.stay-summary{margin:17px 0;font-size:12px;text-align:center;min-height:18px}.stay-apply{width:100%;padding:13px;border:1px solid #91ac8b;background:#31573f;color:#fff}
@media(max-width:700px){.booking-form .stay-date-trigger{font-size:13px;padding:9px 5px}.booking-dates .booking-form .stay-date-trigger{font-size:10px;padding:3px 2px}.stay-calendar{padding:18px}.stay-days button{min-height:40px}}
/* Preserve the original date-field appearance with the shared calendar. */
.hero-dates .booking-form label,.page-book .booking-form label{align-items:stretch;min-width:0}
.hero-dates .booking-form .stay-date-trigger,.page-book .booking-form .stay-date-trigger{display:flex;align-items:center;justify-content:space-between;gap:10px;box-sizing:border-box;width:100%;max-width:none;min-height:44px;height:44px;padding:11px 12px;background:#fff;color:#222;border:1px solid #c8ccc6;border-radius:0;font:15px Arial,sans-serif;letter-spacing:0;box-shadow:none}
.hero-dates .stay-date-trigger:after,.page-book .stay-date-trigger:after{content:'';display:block;width:7px;height:7px;flex:none;border-right:1px solid #444;border-bottom:1px solid #444;transform:rotate(45deg);margin:0 3px 4px 7px}
@media(max-width:700px){.hero-dates .booking-form{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}.hero-dates .booking-form label{width:100%}.hero-dates .booking-form .stay-date-trigger,.page-book .booking-form .stay-date-trigger{font-size:13px;padding:9px 8px}.hero-dates .booking-form>button[type=submit]{grid-column:1/-1;width:100%}}

/* Use the existing caption space for routes without increasing card height. */
.attraction-website{display:block;text-decoration:none}
.attraction-route-slot{position:relative}
.attraction-route-slot small{visibility:hidden}
.attraction-route{position:absolute;inset:0 15px auto;display:flex;align-items:baseline;gap:6px;white-space:nowrap;font-size:11px;line-height:1.25}
.attraction-route b{font-weight:400;color:#ddd}
.attraction-route a{text-decoration:underline;text-underline-offset:2px}
.attraction-route a:focus-visible{outline:2px solid #e7bf72;outline-offset:2px}
@media(max-width:700px){.attraction-route{inset-inline:11px;gap:5px;font-size:9px}}

.guest-guide{max-width:860px;margin-inline:auto}
.guest-guide .guide-overview{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-block:1px solid #d2dbbf55;margin-bottom:24px}
.guide-overview>div{padding:16px 14px}
.guide-overview>div+div{border-left:1px solid #d2dbbf55}
.guide-overview span{display:block;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:#cbd8c4;margin-bottom:6px}
.guide-overview strong{display:block;font:400 clamp(18px,3vw,26px)/1.25 Georgia,serif}
.guide-overview p{margin:4px 0 0}
.guest-guide section{padding:24px 0;border-bottom:1px solid #d2dbbf35}
.guest-guide section h2{display:block;background:none;padding:0;margin:0 0 9px;font:400 clamp(22px,3vw,30px)/1.2 Georgia,serif}
.guest-guide section p{margin:0 0 10px}
.guest-guide section p:last-child{margin-bottom:0}
.guide-actions{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0 0}
.guide-actions a{display:inline-flex;align-items:center;min-height:42px;padding:6px 14px;background:#294433;border:1px solid #a1b39670;text-decoration:none;font-size:13px}
.guide-actions a:hover,.guide-actions a:focus-visible{background:#3c5941}

.guide-taxi{scroll-margin-top:170px}
.guide-taxi table{width:100%;border-collapse:collapse;margin:16px 0;font-size:inherit}
.guide-taxi caption{text-align:left;color:#cbd8c4;font-size:.9em;margin-bottom:9px}
.guide-taxi th,.guide-taxi td{padding:10px 8px;border-bottom:1px solid #d2dbbf35;text-align:left}
.guide-taxi tbody th{font-weight:400}
.guide-taxi th:last-child,.guide-taxi td:last-child{text-align:right;white-space:nowrap}
.guide-taxi td{color:#e6d6ad;font-weight:600}
.guide-taxi-note{font-size:.87em;color:#cbd8c4}

.food-guide section{scroll-margin-top:165px}
.food-entry{margin:12px 0;border:1px solid #d2dbbf40;background:#14291de0}
.food-entry summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;cursor:pointer;list-style:none}
.food-entry summary::-webkit-details-marker{display:none}
.food-entry summary::after{content:'+';font:24px/1 Georgia,serif;color:#e5c68d}
.food-entry[open] summary::after{content:'−'}
.food-entry summary:focus-visible{outline:2px solid #e5c68d;outline-offset:2px}
.food-entry summary strong{display:block;font:400 clamp(17px,2.6vw,23px)/1.3 Georgia,serif}
.food-entry summary small{display:block;color:#ced9c5;font-size:.82em;margin-top:4px}
.food-entry-body{padding:14px 16px 17px;border-top:1px solid #d2dbbf35}
.food-entry dl{margin:12px 0}
.food-entry dt{font-weight:600;color:#e5d2ad;margin-top:8px}
.food-entry dd{margin:2px 0 0}
.food-guide .food-note{font-size:.85em;color:#cbd8c4;margin-top:14px}

/* Rotate the displayed flyer rack a quarter turn counterclockwise. */
img[src$="/import-1ca496f8e9ef.jpg"]{rotate:90deg}
.editorial-gallery .flyer-rack>a{position:relative;aspect-ratio:3/4;container-type:inline-size}
.editorial-gallery .flyer-rack img{position:absolute;top:50%;left:50%;width:133.333cqw;height:100cqw;max-width:none;translate:-50% -50%;object-fit:contain}

.arrival-overview .arrival-street{display:inline;color:inherit;font:inherit;letter-spacing:inherit;text-transform:none;white-space:nowrap;hyphens:none;overflow-wrap:normal}
@media(max-width:500px){
  .guest-guide .arrival-overview{grid-template-columns:minmax(0,1fr)}
  .arrival-overview>div+div{border-left:0;border-top:1px solid #d2dbbf55}
}

.guest-guide .arrival-actions,.arrival-provider-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:1fr;gap:10px}
.arrival-actions a,.arrival-provider-grid dt a{display:flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:48px;padding:9px 10px;text-align:center;color:#fff}
.arrival-actions a:nth-child(1),.arrival-provider-grid>div:nth-child(1) dt a{background:#345742}
.arrival-actions a:nth-child(2),.arrival-provider-grid>div:nth-child(2) dt a{background:#384e6a}
.arrival-actions a:nth-child(3),.arrival-provider-grid>div:nth-child(3) dt a{background:#674b31}
.arrival-actions a:nth-child(4),.arrival-provider-grid>div:nth-child(4) dt a{background:#60465b}
.arrival-actions a:hover,.arrival-provider-grid dt a:hover{filter:brightness(1.18)}
.arrival-actions a:focus-visible,.arrival-provider-grid dt a:focus-visible{outline:2px solid #e5c68d;outline-offset:2px}
.arrival-rides{scroll-margin-top:170px}
.arrival-provider-grid{margin:16px 0 0}
.arrival-provider-grid dt a{border:1px solid #a1b39670;text-decoration:none;font-size:13px}
.arrival-rides dd{margin:6px 0 0;font-size:13px}
@media(max-width:500px){.guest-guide .arrival-actions,.arrival-provider-grid{grid-template-columns:minmax(0,1fr)}}

.guest-guide .travel-section{scroll-margin-top:170px}
.guest-guide nav.arrival-actions{margin-bottom:20px}

.breakfast-guide .breakfast-heading{display:block;background:none;padding:0;margin:0 0 14px;font:400 clamp(22px,3vw,30px)/1.2 Georgia,serif}
.breakfast-menu{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:20px}
.breakfast-group{padding:17px 18px;background:#14291d;border:1px solid #d2dbbf40}
.breakfast-group h3{margin:0 0 10px;color:#e5d2ad;font:400 20px/1.3 Georgia,serif}
.breakfast-group ul{margin:0;padding-inline-start:19px}
.breakfast-group li+li{margin-top:6px}
@media(max-width:650px){
  .breakfast-menu,.guest-guide .breakfast-hours{grid-template-columns:minmax(0,1fr)}
  .breakfast-hours>div+div{border-left:0;border-top:1px solid #d2dbbf55}
}

.cycle-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:16px}
.cycle-route{display:flex;flex-direction:column;padding:16px;background:#14291d;border:1px solid #d2dbbf40}
.cycle-route h3{margin:0 0 5px;font:400 21px/1.25 Georgia,serif}
.cycle-route .cycle-meta{color:#e5d2ad;font-size:13px;font-weight:600}
.cycle-route .guide-actions{margin-top:auto;padding-top:8px}
.cycle-guide .cycle-note{font-size:13px;color:#cbd8c4}
@media(max-width:650px){.cycle-grid{grid-template-columns:minmax(0,1fr)}}

.guest-faq>h2{display:block;background:none;padding:0;margin:0 0 14px;font:400 clamp(22px,3vw,30px)/1.2 Georgia,serif}
.guest-faq .food-entry summary strong{font-size:clamp(16px,2vw,20px)}
.guest-faq .food-entry summary::after{flex:none}
.guest-faq .food-entry-body .arrival-actions{margin-bottom:0}

header .menu{display:block;min-height:44px;padding:0 12px;border:0;background:#050505;color:#fff;white-space:nowrap;font:500 11px/1.2 Arial,sans-serif;letter-spacing:.05em;cursor:pointer}
#mobile-nav{top:var(--header-menu-top,138px);left:auto;right:4%;width:min(800px,92vw);max-height:calc(100dvh - var(--header-menu-top,138px) - 18px);box-sizing:border-box;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:start;gap:18px;padding:22px;border:1px solid #d2dbbf50;background:#0d1912;box-shadow:0 18px 52px #000a;overscroll-behavior:contain;z-index:50}
.header-menu-group{min-width:0;padding:12px;background:#17281e;border-top:2px solid #a0b494}
.header-menu-group:nth-child(2){border-top-color:#9eb7d6}
.header-menu-group:nth-child(3){border-top-color:#d8bd90}
.header-menu-group:nth-child(4){border-top-color:#c9aaa3}
.header-menu-group h2{margin:0 0 5px;color:#e5d2ad;font:400 19px/1.3 Georgia,serif}
#mobile-nav .header-menu-group a{padding:8px 5px;box-sizing:border-box;border-bottom:1px solid #d2dbbf25;color:#fff;font:14px/1.35 Arial,sans-serif;letter-spacing:0;text-transform:none;text-decoration:none}
#mobile-nav .header-menu-group a:last-child{border-bottom:0}
#mobile-nav .header-menu-group a:hover,#mobile-nav .header-menu-group a[aria-current="page"]{background:#294433}
header nav a[aria-current="page"]{text-decoration:underline;text-underline-offset:.35em}
#mobile-nav a:focus-visible,header .menu:focus-visible{outline:2px solid #e5c68d;outline-offset:2px}
@media(max-width:700px){
  #mobile-nav{right:4%;grid-template-columns:minmax(0,1fr);gap:10px;padding:12px}
  .header-menu-group{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:8px}
  .header-menu-group h2{grid-column:1/-1}
  #mobile-nav .header-menu-group a{font-size:13px;border-bottom:0}
}

header .contact a {
  display: inline-flex;
  align-items: center;
  gap: 7px;
}
header .contact svg {
  flex: none;
}

/* Keep the dropdown on phones and the inline navigation on wider screens. */
@media(min-width:701px){
  header .menu,#mobile-nav{display:none}
  header .header-right{display:block}
}
@media(min-width:701px) and (max-width:1100px){
  header .brand{width:clamp(115px,17vw,175px);flex-shrink:0}
  header nav{justify-content:flex-end;flex-wrap:wrap;gap:0 14px}
  header .contact{flex-wrap:wrap;gap:4px 16px}
}

.wifi-intro{display:flex;align-items:flex-start;gap:18px;margin-bottom:24px}
.wifi-intro svg{box-sizing:content-box;flex:none;padding:10px;color:#e5d2ad;background:#172e21;border:1px solid #d2dbbf55;border-radius:12px}
.wifi-intro h2,.cleaning-guide>h2{display:block;margin:0 0 8px;padding:0;background:none;font:400 clamp(23px,3vw,32px)/1.2 Georgia,serif}
.wifi-intro p,.cleaning-guide .breakfast-group p{margin:0}
.wifi-steps{margin:12px 0;line-height:1.7}
.wifi-steps li+li{margin-top:8px}
@media(max-width:480px){.wifi-intro{flex-direction:column;gap:12px}}


.site-back{left:auto;right:20px;display:grid;place-items:center;color:#fff;text-decoration:none;box-sizing:border-box}
.site-back:hover{background:#000a}
.site-back:focus-visible{outline:2px solid #e5c68d;outline-offset:2px}
@media(max-width:700px){.site-back{left:auto;right:12px}}

.bar-guide > h2 {
  display: block;
  margin: 0 0 8px;
  padding: 0;
  background: none;
  font: 400 clamp(23px, 3vw, 32px)/1.2 Georgia, serif;
}

.bar-guide .guide-overview {
  margin: 24px 0 0;
}

.bar-guide .guide-overview svg {
  display: block;
  margin-bottom: 10px;
  color: #e5d2ad;
}

header .site-language {
  display: inline-grid;
  place-items: center;
  min-width: 44px;
  min-height: 44px;
  flex: none;
  color: #fff;
  border: 1px solid #ffffff65;
  font: 600 11px/1 Arial, sans-serif;
  letter-spacing: .08em;
}

header .site-language:hover {
  background: #262626;
}

@media (max-width: 700px) {
  header .site-language {
    border-color: transparent;
  }

  header .brand {
    width: min(170px, 42vw);
  }

  header .menu {
    padding-inline: 4px;
  }
}

.coffee-guide {
  display: grid;
  grid-template-columns: minmax(0, 3fr) minmax(0, 2fr);
  align-items: center;
  gap: clamp(18px, 4vw, 38px);
}
.coffee-guide section { padding: 0; border: 0; }
.coffee-guide figure { margin: 0; border: 1px solid #d2dbbf30; }
.coffee-guide figure img { display: block; width: 100%; height: auto; }
.coffee-guide figcaption { padding: 8px 12px; font-size: .7rem; letter-spacing: .08em; }
@media (max-width: 640px) {
  .coffee-guide { grid-template-columns: minmax(0, 1fr); }
}

.house-letter {
  display: grid;
  grid-template-columns: minmax(95px, 1fr) minmax(0, 4fr);
  gap: clamp(22px, 5vw, 62px);
  border: 1px solid #d2dbbf38;
  background: linear-gradient(145deg, #1b2921, #0c1511);
}

.house-letter > div { margin: 0; }
.house-letter-count {
  align-self: start;
  padding-bottom: 14px;
  border-bottom: 1px solid #dbc39270;
  color: #e5c994;
}
.house-letter-count span {
  display: block;
  font: 400 clamp(55px, 9vw, 108px)/.9 Georgia, serif;
}
.house-letter-count small {
  display: block;
  margin-top: 10px;
  font-size: 10px;
  letter-spacing: .24em;
}
.house-letter h2 {
  display: block;
  margin: 8px 0 18px;
  padding: 0;
  background: none;
  font: 400 clamp(33px, 5vw, 60px)/1.08 Georgia, serif;
}
.house-letter .house-letter-lead {
  font: 400 clamp(18px, 2.4vw, 24px)/1.5 Georgia, serif;
  color: #f4e7d3;
}
.house-letter-signature {
  margin-top: 24px;
  padding-top: 18px;
  border-top: 1px solid #dbc39245;
  color: #e5c994;
  font-size: 13px;
}
.house-letter-signature strong {
  font: italic 400 clamp(24px, 4vw, 34px)/1.25 Georgia, serif;
}
.house-letter .guide-actions a { color: #fff; }

@media (max-width: 640px) {
  .house-letter { grid-template-columns: minmax(0, 1fr); }
  .house-letter-count { width: fit-content; min-width: 90px; }
}


.house-page {
  --house-panel-gap: clamp(28px, 4.5vw, 56px);
}
.house-page .editorial-hero {
  margin-bottom: var(--house-panel-gap);
}
.house-page .house-services {
  margin-top: var(--house-panel-gap);
  border: 1px solid #d2dbbf38;
}

.activity-guide .activity-overview {
  background: #172a21;
  border: 1px solid #d2dbbf55;
  margin-bottom: 8px;
}
.activity-guide .activity-overview strong { color: #eee1c5; }
.activity-guide .guide-actions { margin-top: 18px; }
.az-promo {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  gap: 12px 24px;
  margin-bottom: 28px;
  border-left: 3px solid #c5a66b;
}
.az-promo > div { margin: 0; }
.az-promo h2 { display: block; padding: 0; margin: 0 0 8px; background: none; }
.az-promo p { margin: 0; }
.az-jump { display: flex; gap: 8px; flex-wrap: wrap; margin-bottom: 18px; }
.az-jump a {
  display: grid;
  place-items: center;
  min-width: 38px;
  min-height: 38px;
  border: 1px solid #d2dbbf55;
  color: #f5e9d0;
  text-decoration: none;
}
.az-jump a:hover, .az-jump a:focus-visible { background: #30453a; }
.az-group { scroll-margin-top: 20px; }
.az-directory .az-group h2 { color: #dbc392; font-size: 34px; }
.az-group ul { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; padding: 0; margin: 0; list-style: none; }
.az-group li { padding: 14px; border: 1px solid #d2dbbf30; background: #172a21; }
.az-group li h3 { margin: 0 0 5px; font: 400 19px/1.25 Georgia,serif; }
.az-group li a { display: inline-block; margin-top: 8px; color: #f5e9d0; }
@media(max-width: 640px) {
  .az-group ul,.activity-guide .activity-overview { grid-template-columns: 1fr; }
  .activity-guide .activity-overview > div + div { border-left: 0; border-top: 1px solid #d2dbbf55; }
}
