@import url('https://fonts.googleapis.com/css2?family=Figtree:wght@400;500;600&family=Instrument+Serif:ital@0;1&family=Mrs+Saint+Delafield&display=swap');

/* ===== HANSLER 2026 – Design im Stil "Living Lands": Creme, Anthrazit, Salbei ===== */
:root {
  --hs-cream: #efebe1;
  --hs-cream2: #e6e0d2;
  --hs-ink: #2f3437;
  --hs-sage: #54675c;
  --hs-rose: #b07f81;
  --hs-wood: #8a6a4b;
  --hs-line: #cfc7b6;
  --hs-serif: 'Instrument Serif', Georgia, serif;
  --hs-script: 'Mrs Saint Delafield', cursive;
  --hs-sans: 'Figtree', Helvetica, Arial, sans-serif;
}

/* Grundflaechen */
body, .body-inner, .breakpoint-xs .header-inner .container {
  background: var(--hs-cream) !important;
  background-image: none !important;
  color: var(--hs-ink);
  font-family: var(--hs-sans);
}
div, span, p, li, td { color: var(--hs-ink); }
p, li { font-family: var(--hs-sans); font-size: 16px; line-height: 1.75; }
section p, section li { font-size: 16px !important; }
section { background-color: transparent; }
.shape-divider { display: none; }

/* Ueberschriften */
h1, h2, h3, h4, .page-title h1 {
  font-family: var(--hs-serif) !important;
  font-weight: 400 !important;
  color: var(--hs-sage) !important;
  letter-spacing: .02em;
  text-transform: none;
}
h1 { font-size: 52px; line-height: 1.1; }
h2 { font-size: 40px; line-height: 1.15; }
h3 { font-size: 28px; line-height: 1.2; }
a { color: var(--hs-sage); }
a:hover { color: var(--hs-ink); }

/* Topbar & Header */
#topbar.topbar-colored, #topbar.topbar-colored.dark {
  background-color: var(--hs-ink) !important;
}
#topbar a, #topbar li, #topbar span {
  color: var(--hs-cream) !important;
  font-family: var(--hs-sans);
  font-size: 12px;
  letter-spacing: .12em;
  text-transform: uppercase;
}
.dark #footer, #footer.inverted, #footer.dark, #page-title[data-bg-parallax], [data-bg-parallax], #header.header-sticky.sticky-active .header-inner, #header.header-sticky.sticky-active #header-wrap, .b--desktop #header {
  background-image: none !important;
}
#header .header-inner, #header #header-wrap { background: transparent; }
#header.header-sticky.sticky-active .header-inner, #header.header-sticky.sticky-active #header-wrap {
  background: var(--hs-ink) !important;
}
#mainMenu nav > ul > li > a {
  color: #fff;
  font-family: var(--hs-sans) !important;
  font-weight: 500 !important;
  font-size: 12px !important;
  letter-spacing: .16em !important;
  text-transform: uppercase;
}
#mainMenu nav > ul > li .dropdown-menu {
  background: var(--hs-cream) !important;
  border: 0 !important;
  box-shadow: 0 18px 40px rgba(47,52,55,.18) !important;
}
#mainMenu nav > ul > li .dropdown-menu > li > a, #mainMenu nav > ul > li .dropdown-menu a {
  color: var(--hs-ink) !important;
  font-family: var(--hs-sans) !important;
  font-size: 13px !important;
  letter-spacing: .04em;
  text-transform: none !important;
}
.breakpoint-xs #mainMenu nav > ul > li > a, .breakpoint-sm #mainMenu nav > ul > li > a { color: var(--hs-ink); }
.b--desktop #header .logo-default img { max-height: 105px; margin-top: -17px; }
.logo-default img { margin-top: auto; }
.breakpoint-lg .logo-default img, .breakpoint-md .logo-default img, .breakpoint-xl .logo-default img { margin-top: -50px; }
.header-sticky .logo-default img, .breakpoint-md .logo-default img { max-height: 80px; margin-top: inherit; }
.breakpoint-xs #header .header-inner #logo, #header #header-wrap #logo { background: var(--hs-ink) !important; background-image: none !important; }

/* Slider & Seitentitel */
#slider .bg-overlay { background: linear-gradient(180deg, rgba(47,52,55,.35) 0%, rgba(47,52,55,0) 35%, rgba(47,52,55,.25) 100%) !important; opacity: 1 !important; }
#page-title h1, .page-title h1, #slider h1, #slider h2 {
  color: #fff !important;
  font-size: 64px !important;
  text-shadow: 0 2px 30px rgba(0,0,0,.25);
}
.flickity-page-dots .dot { background: rgba(255,255,255,.6) !important; }

/* Inhalte allgemein */
.lines, .lines:before, .lines:after, .tags a { background-color: var(--hs-sage); }
.seperator { display: none; }
.btn, .button, button.btn, input[type=submit] {
  background: var(--hs-ink) !important;
  border: 1px solid var(--hs-ink) !important;
  color: var(--hs-cream) !important;
  border-radius: 0 !important;
  font-family: var(--hs-sans) !important;
  font-size: 12px !important;
  letter-spacing: .16em;
  text-transform: uppercase;
}
.btn:hover, .button:hover { background: var(--hs-sage) !important; border-color: var(--hs-sage) !important; }

/* Appartement-Karten & Seitenleiste */
.sidebar .widget-title, .sidebar h4, .widget h4 {
  font-family: var(--hs-sans) !important;
  font-size: 12px !important;
  letter-spacing: .18em !important;
  color: var(--hs-ink) !important;
  text-transform: uppercase;
}
.sidebar .tags a, .widget .tags a, .tags a {
  background: transparent !important;
  border: 1px solid var(--hs-line) !important;
  border-radius: 0 !important;
  color: var(--hs-ink) !important;
  font-family: var(--hs-sans);
}
.sidebar .tags a:hover, .tags a:hover { background: var(--hs-ink) !important; color: var(--hs-cream) !important; }
.post-item .post-item-description h2, .post-item h2, .portfolio-item h3, .post-item-description h2 a {
  font-family: var(--hs-serif) !important;
  color: var(--hs-sage) !important;
  font-size: 28px !important;
  line-height: 1.15 !important;
}
.post-item .post-item-description span, .post-item-description .post-meta-category, .post-item-description p span {
  color: var(--hs-rose);
}

/* Footer */
#footer, .dark #footer, #footer.inverted {
  background: var(--hs-ink) !important;
  line-height: normal;
}
#footer *, #footer p, #footer div, #footer span, #footer a { color: var(--hs-cream) !important; }
.dark #footer .copyright-content, #footer.inverted .copyright-content, #footer.dark .copyright-content { background-color: rgba(0,0,0,.25); }
.wcom-default > div > div:nth-child(3) { display: none; }
.breakpoint-xs .logosfooter { display: none; }

/* Bestpreis-Badge */
#pferd { position: fixed; top: 63%; right: 50px; z-index: 1; opacity: .6; cursor: pointer; }
@media (max-width: 767px) { #pferd { width: 30%; height: auto; } }

/* ===== Startseite: Bausteine hs- ===== */
.hs-eyebrow {
  display: block;
  font-family: var(--hs-sans) !important;
  font-size: 12px !important;
  letter-spacing: .22em;
  text-transform: uppercase;
  color: var(--hs-ink) !important;
  text-align: center;
  margin: 0 0 56px 0;
}
.hs-script {
  font-family: var(--hs-script) !important;
  font-size: 1.25em;
  color: var(--hs-sage);
  letter-spacing: 0;
  line-height: .8;
  padding: 0 .08em;
}
.hs-intro { display: flex; flex-wrap: wrap; gap: 48px; align-items: flex-start; margin: 0 0 96px 0; }
.hs-intro-text { flex: 1 1 420px; }
.hs-intro-text h1 { font-size: 64px !important; line-height: 1.05 !important; margin: 0 0 32px 0 !important; text-align: left !important; }
.hs-intro-media { flex: 1 1 380px; position: relative; padding-bottom: 80px; }
.hs-intro-media .hs-main { width: 100%; aspect-ratio: 4 / 5; object-fit: cover; display: block; }
.hs-intro-media .hs-polaroid {
  position: absolute; left: -40px; bottom: 0; width: 46%;
  border: 8px solid #fff; transform: rotate(-4deg);
  box-shadow: 0 14px 30px rgba(47,52,55,.22);
  aspect-ratio: 4 / 3; object-fit: cover;
}
.hs-lead { font-size: 18px !important; line-height: 1.8 !important; }
.hs-sign { font-family: var(--hs-script) !important; font-size: 40px !important; color: var(--hs-sage) !important; line-height: 1.2 !important; margin-top: 8px; }
.hs-band { margin: 0 calc(50% - 50vw) 96px calc(50% - 50vw); }
.hs-band img { width: 100%; height: 62vh; min-height: 360px; object-fit: cover; display: block; }
.hs-center { text-align: center; max-width: 760px; margin: 0 auto 48px auto; }
.hs-center h2 { margin-bottom: 16px !important; }
.hs-list { border-top: 1px solid var(--hs-line); margin: 0 auto 96px auto; max-width: 980px; }
.hs-list-item { display: flex; flex-wrap: wrap; gap: 8px 32px; padding: 22px 0; border-bottom: 1px solid var(--hs-line); }
.hs-list-item h3 { flex: 0 0 260px; font-size: 26px !important; margin: 0 !important; color: var(--hs-ink) !important; }
.hs-list-item p { flex: 1 1 380px; margin: 0 !important; }
.hs-cards { display: flex; flex-wrap: wrap; gap: 32px; margin: 0 0 96px 0; }
.hs-card { flex: 1 1 240px; background: transparent; }
.hs-card img { width: 100%; aspect-ratio: 3 / 4; object-fit: cover; display: block; margin-bottom: 18px; transition: transform .6s ease; }
.hs-card:hover img { transform: scale(1.02); }
.hs-card h3 { font-size: 30px !important; margin: 0 0 8px 0 !important; }
.hs-card p { font-size: 15px !important; margin: 0 0 12px 0 !important; }
.hs-link {
  font-family: var(--hs-sans) !important; font-size: 12px !important; letter-spacing: .18em;
  text-transform: uppercase; color: var(--hs-ink) !important; text-decoration: none !important;
  border-bottom: 1px solid var(--hs-ink); padding-bottom: 3px;
}
.hs-link:hover { color: var(--hs-sage) !important; border-color: var(--hs-sage); }
.hs-season { display: flex; flex-wrap: wrap; gap: 56px; margin: 0 0 96px 0; }
.hs-season > div { flex: 1 1 400px; }
.hs-season img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; display: block; margin-bottom: 28px; }
.hs-season h3 { font-size: 24px !important; color: var(--hs-ink) !important; margin-top: 28px !important; }
.hs-season .embed { position: relative; width: 100%; aspect-ratio: 16 / 9; margin-bottom: 28px; }
.hs-season .embed iframe { position: absolute; inset: 0; width: 100%; height: 100%; border: 0; }
.hs-cta { background: var(--hs-ink); margin: 0 calc(50% - 50vw) 0 calc(50% - 50vw); padding: 96px 24px; text-align: center; }
.hs-cta h2 { color: var(--hs-cream) !important; font-size: 48px !important; margin-bottom: 16px !important; }
.hs-cta h2 .hs-script { color: #c9b39a; }
.hs-cta p { color: var(--hs-cream) !important; max-width: 620px; margin: 0 auto 32px auto !important; }
.hs-cta .hs-btn {
  display: inline-block; margin: 6px 8px; padding: 15px 34px;
  font-family: var(--hs-sans) !important; font-size: 12px !important; letter-spacing: .18em; text-transform: uppercase;
  text-decoration: none !important; border: 1px solid var(--hs-cream); color: var(--hs-cream) !important;
}
.hs-cta .hs-btn.hs-solid { background: var(--hs-cream); color: var(--hs-ink) !important; }
.hs-cta .hs-btn:hover { background: var(--hs-sage); border-color: var(--hs-sage); color: #fff !important; }

/* Startseite: Theme-Container luftiger */
section:has(.hs-intro) { padding-top: 64px !important; padding-bottom: 0 !important; }
section:has(.hs-intro) .container { overflow: visible; }
section:has(.hs-intro) { overflow: hidden; }

@media (max-width: 991px) {
  h1 { font-size: 40px; } h2 { font-size: 32px; }
  .hs-intro-text h1 { font-size: 44px !important; }
  .hs-intro-media .hs-polaroid { left: 0; }
  .hs-list-item h3 { flex-basis: 100%; }
  .hs-cta h2 { font-size: 36px !important; }
  #page-title h1, .page-title h1 { font-size: 44px !important; }
}
@media (max-width: 575px) {
  .hs-intro { gap: 32px; margin-bottom: 64px; }
  .hs-intro-text h1 { font-size: 38px !important; }
  .hs-band img { height: 46vh; }
  .hs-cards, .hs-season { gap: 40px; }
}

/* Themefarbe (Rot) ueberschreiben */
.background-dark { background-color: var(--hs-ink) !important; }
.background-dark .btn { background-color: var(--hs-cream) !important; border-color: var(--hs-cream) !important; color: var(--hs-ink) !important; }
#footer.inverted .copyright-content, #footer .copyright-content { background-color: #24282a !important; }
.flickity-button:hover, #scrollTop::after, #scrollTop::before { background-color: var(--hs-sage) !important; }
#mainMenu nav > ul > li .dropdown-menu > li > a:hover, #mainMenu nav > ul > li .dropdown-menu > li > a:focus { color: var(--hs-sage) !important; background: transparent !important; }
button.btn, .btn:not(.close):not(.mfp-close) { background-color: var(--hs-ink) !important; border-color: var(--hs-ink) !important; }
.text-colored, .text-theme, .color-theme { color: var(--hs-sage) !important; }
body:has(.hs-cta) section.sidebar-right { display: none !important; }


/* ===== Sommer/Winter-Seiten ===== */
.hs-stats { display: flex; flex-wrap: wrap; justify-content: center; gap: 24px 64px; margin: 0 auto 96px auto; max-width: 980px; text-align: center; border-top: 1px solid var(--hs-line); border-bottom: 1px solid var(--hs-line); padding: 36px 0; }
.hs-stats div { flex: 0 1 160px; }
.hs-stats strong { display: block; font-family: var(--hs-serif) !important; font-weight: 400 !important; font-size: 52px; line-height: 1; color: var(--hs-sage) !important; margin-bottom: 8px; }
.hs-stats span { font-family: var(--hs-sans) !important; font-size: 12px; letter-spacing: .16em; text-transform: uppercase; color: var(--hs-ink) !important; }
.hs-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 48px 32px; margin: 0 0 96px 0; }
.hs-grid img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; display: block; margin-bottom: 16px; }
.hs-grid h3 { font-size: 28px !important; margin: 0 0 6px 0 !important; color: var(--hs-ink) !important; }
.hs-grid p { font-size: 15px !important; margin: 0 0 8px 0 !important; }
.hs-facts { display: block; font-family: var(--hs-sans) !important; font-size: 11px !important; letter-spacing: .16em; text-transform: uppercase; color: var(--hs-sage) !important; margin-bottom: 10px; }
.hs-credit { display: block; font-size: 11px !important; color: #7d8285 !important; margin-top: 4px; }
.hs-split { display: flex; flex-wrap: wrap; gap: 56px; align-items: center; margin: 0 0 96px 0; }
.hs-split > div { flex: 1 1 400px; }
.hs-split img { width: 100%; aspect-ratio: 5 / 4; object-fit: cover; display: block; }
.hs-split.hs-rev { flex-direction: row-reverse; }
.hs-tags { display: flex; flex-wrap: wrap; gap: 10px; margin: 18px 0 0 0; padding: 0; list-style: none; }
.hs-tags li { border: 1px solid var(--hs-line); padding: 6px 14px; font-size: 13px !important; line-height: 1.4 !important; }
.hs-note { background: var(--hs-cream2); padding: 28px 32px; margin: 0 0 96px 0; }
.hs-note p { margin: 0 !important; }
.hs-teaser { display: flex; flex-wrap: wrap; gap: 32px; margin: 0 0 96px 0; }
.hs-teaser > div { flex: 1 1 400px; position: relative; }
.hs-teaser img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; display: block; margin-bottom: 20px; }
.hs-teaser h2 { margin: 0 0 10px 0 !important; }
section:has(.hs-intro, .hs-stats) { padding-top: 64px !important; padding-bottom: 0 !important; overflow: hidden; }
body:has(.hs-cta) section.sidebar-right { display: none !important; }
@media (max-width: 575px) { .hs-stats strong { font-size: 40px; } .hs-note { padding: 22px; } }


/* ===== Fusszeile ===== */
#footer, #footer .footer-content { background: var(--hs-ink) !important; }
#footer .footer-content { padding: 72px 0 56px 0 !important; border-top: 6px solid var(--hs-sage); }
#footer #map { min-height: 300px; border: 1px solid rgba(239,235,225,.25); filter: grayscale(.5) sepia(.15); padding: 0 !important; }
#footer .widget-contact-us { background-image: none !important; }
#footer .hs-foot, #footer .hs-foot tbody, #footer .hs-foot tr, #footer .hs-foot td { display: block; width: 100% !important; background: transparent !important; border: 0 !important; margin: 0 !important; }
#footer .hs-foot td { text-align: left !important; padding: 0 !important; font-family: var(--hs-sans) !important; font-size: 14px !important; line-height: 1.9 !important; color: rgba(239,235,225,.85) !important; }
#footer .hs-foot tr:first-child td { padding: 0 0 22px 0 !important; }
#footer .hs-foot img { width: 170px !important; height: auto !important; }
#footer .hs-foot tr:last-child td::before { content: "Kontakt"; display: block; font-family: var(--hs-sans); font-size: 11px; letter-spacing: .22em; text-transform: uppercase; color: #b9c4bc; margin-bottom: 8px; padding-bottom: 8px; border-bottom: 1px solid rgba(239,235,225,.2); }
#footer .hs-foot a { color: var(--hs-cream) !important; text-decoration: none !important; border-bottom: 1px solid rgba(239,235,225,.35); }
#footer .hs-foot a:hover { border-bottom-color: var(--hs-cream); }
#footer .hs-foot span { color: rgba(239,235,225,.55) !important; font-size: 11px !important; }
#footer .logosfooter::before { content: "Unsere Region"; display: block; font-family: var(--hs-sans); font-size: 11px; letter-spacing: .22em; text-transform: uppercase; color: #b9c4bc; margin-bottom: 18px; padding-bottom: 8px; border-bottom: 1px solid rgba(239,235,225,.2); }
#footer .logosfooter .polo-carousel-item img { background: var(--hs-cream); padding: 18px; height: 150px; width: 100%; object-fit: contain; }
#footer .logosfooter .flickity-page-dots { display: none !important; }
#footer .copyright-content { background: #262a2c !important; padding: 22px 0 !important; border-top: 0 !important; }
#footer .copyright-content, #footer .copyright-content a, #footer .copyright-content .copyright-text { font-family: var(--hs-sans) !important; font-size: 12px !important; letter-spacing: .06em; color: rgba(239,235,225,.7) !important; }
#footer .copyright-content a:hover { color: var(--hs-cream) !important; }
section:has(.hs-cta) .m-b-40, section:has(.hs-cta) [class*=col-] { margin-bottom: 0 !important; }
section:has(.hs-cta) .hs-cta { margin-bottom: 0 !important; }
@media (max-width: 767px) { #footer .footer-content > .container > .row > div { margin-bottom: 36px; } #footer .hs-foot td { text-align: center !important; } #footer .hs-foot tr:last-child td::before, #footer .logosfooter::before { text-align: center; } }
/* ===== Kopfzeile auf Seiten ohne Titelbild ===== */
body:not(:has(#slider)) #header:not(.sticky-active) { margin: 0 !important; width: 100% !important; max-width: 100% !important; left: 0 !important; top: 0 !important; border-radius: 0 !important; }
body:not(:has(#slider)) #header, body:not(:has(#slider)) #header .header-inner { background-color: var(--hs-ink) !important; }
body:not(:has(#slider)) #header .header-inner { border-bottom: 1px solid rgba(239,235,225,.12); }
body:not(:has(#slider)) #page-content { padding-top: 72px !important; }
/* ===== Seitenleiste ===== */
#page-content .sidebar .widget-title { font-family: var(--hs-sans) !important; font-size: 11px !important; letter-spacing: .2em; text-transform: uppercase; color: var(--hs-sage) !important; }
#page-content .sidebar .tags a { display: block; float: none !important; background: transparent !important; border: 0 !important; border-bottom: 1px solid var(--hs-line) !important; padding: 12px 0 !important; margin: 0 !important; font-family: var(--hs-serif) !important; font-size: 21px !important; letter-spacing: 0 !important; color: var(--hs-ink) !important; }
#page-content .sidebar .tags a:hover { color: var(--hs-sage) !important; padding-left: 6px !important; }
/* ===== Appartements ===== */
body:has(.rooms.roomcontent) #page-content .sidebar { display: none !important; }
body:has(.rooms.roomcontent) #page-content .content { flex: 0 0 100% !important; max-width: 100% !important; }
.rooms.roomcontent .flickity-viewport { height: auto !important; overflow: visible !important; }
.rooms.roomcontent .flickity-slider { transform: none !important; position: static !important; display: grid !important; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 56px 32px; }
.rooms.roomcontent .polo-carousel-item { position: static !important; width: auto !important; padding: 0 !important; left: auto !important; }
.rooms.roomcontent .room-image img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; display: block; margin-bottom: 20px; }
.rooms.roomcontent .room-details { padding: 0 !important; }
.rooms.roomcontent .room-details > p:empty { display: none; }
.rooms.roomcontent .hs-room-feat, .rooms.roomcontent .hs-room-h, .rooms.roomcontent .hs-room-house, .rooms.roomcontent .hs-room-opt { display: none !important; }
.rooms.roomcontent .hs-room-lead { display: -webkit-box; -webkit-line-clamp: 4; -webkit-box-orient: vertical; overflow: hidden; }
.hs-room-title { font-family: var(--hs-serif) !important; font-size: 34px !important; line-height: 1.1 !important; color: var(--hs-ink) !important; margin: 0 0 8px 0 !important; }
.hs-room-meta, .hs-room-h { font-family: var(--hs-sans) !important; font-size: 11px !important; letter-spacing: .16em !important; text-transform: uppercase; color: var(--hs-sage) !important; line-height: 1.6 !important; }
.hs-room-meta { margin: 0 0 16px 0 !important; }
.hs-room-lead, .hs-room-house, .hs-room-feat li, .hs-room-opt li { font-family: var(--hs-sans) !important; font-size: 15px !important; line-height: 1.75 !important; color: var(--hs-ink) !important; }
.hs-room-more a { font-family: var(--hs-sans) !important; font-size: 12px !important; letter-spacing: .16em; text-transform: uppercase; color: var(--hs-ink) !important; text-decoration: none !important; border-bottom: 1px solid var(--hs-rose); padding-bottom: 4px; }
.hs-room-more a:hover { color: var(--hs-sage) !important; }
body:has(.roomcontent):not(:has(.rooms.roomcontent)) .hs-room-more { display: none; }
.roomcontent:not(.rooms) .hs-room-title { font-size: 48px !important; }
.roomcontent:not(.rooms) .hs-room-lead { font-size: 18px !important; max-width: 760px; margin-bottom: 28px !important; }
.roomcontent:not(.rooms) .hs-room-feat { list-style: none; padding: 0 !important; margin: 0 0 12px 0; border-top: 1px solid var(--hs-line); }
.roomcontent:not(.rooms) .hs-room-feat li { padding: 14px 0; border-bottom: 1px solid var(--hs-line); }
.roomcontent:not(.rooms) .hs-room-feat li strong { display: block; font-family: var(--hs-serif) !important; font-weight: 400 !important; font-size: 22px; color: var(--hs-ink); margin-bottom: 2px; }
.roomcontent:not(.rooms) .hs-room-h { margin: 36px 0 10px 0 !important; }
.roomcontent:not(.rooms) .hs-room-opt { list-style: none; padding: 20px 24px !important; background: var(--hs-cream2); }
.roomcontent:not(.rooms) .hs-room-opt li { padding-left: 18px; position: relative; }
.roomcontent:not(.rooms) .hs-room-opt li::before { content: ""; position: absolute; left: 0; top: .75em; width: 7px; height: 7px; background: var(--hs-rose); }
#page-content .content > iframe { margin-top: 40px; }
@media (max-width: 575px) { .roomcontent:not(.rooms) .hs-room-title { font-size: 36px !important; } }

/* ===== Unterseiten ===== */
.hs-boxes { display: grid; grid-template-columns: repeat(auto-fit, minmax(260px, 1fr)); gap: 24px; margin: 0 0 56px 0; }
.hs-box { background: var(--hs-cream2); padding: 32px 28px; border-top: 3px solid var(--hs-sage); }
.hs-box h3 { font-size: 30px !important; margin: 0 0 12px 0 !important; color: var(--hs-ink) !important; }
.hs-box p { font-size: 15px !important; }
.hs-price { display: block; font-family: var(--hs-serif) !important; font-size: 38px; line-height: 1; color: var(--hs-sage) !important; margin-top: 18px; }
.hs-check { columns: 3 220px; column-gap: 40px; list-style: none; padding: 0 !important; margin: 0 auto 96px auto !important; max-width: 980px; }
.hs-check li { break-inside: avoid; position: relative; padding: 10px 0 10px 22px; border-bottom: 1px solid var(--hs-line); font-size: 15px !important; }
.hs-check li::before { content: ""; position: absolute; left: 0; top: 1.15em; width: 7px; height: 7px; background: var(--hs-rose); }
.hs-intro-text .hs-btn { margin-top: 8px; }
body:has(.hs-cta) #page-content .content { flex: 0 0 100% !important; max-width: 100% !important; }

.rooms.roomcontent .hs-room-more { display: none !important; }
.rooms.roomcontent .plan-button { margin-top: 18px; text-align: left !important; }
.rooms.roomcontent .plan-button .btn { background: transparent !important; border: 0 !important; border-bottom: 1px solid var(--hs-rose) !important; border-radius: 0 !important; padding: 0 0 4px 0 !important; height: auto !important; line-height: 1.4 !important; font-family: var(--hs-sans) !important; font-size: 12px !important; letter-spacing: .16em !important; text-transform: uppercase; color: var(--hs-ink) !important; box-shadow: none !important; }
.rooms.roomcontent .plan-button .btn:hover { color: var(--hs-sage) !important; }

/* ===== Menue Desktop: vertikal zentriert, Dropdown unter der Kopfzeile ===== */
@media (min-width: 1025px) {
#header #mainMenu { height: 80px !important; display: flex !important; align-items: center; }
#header #mainMenu > .container { height: 80px; display: flex; align-items: center; justify-content: flex-end; }
#header #mainMenu nav > ul > li > a { margin: 0 !important; }
#mainMenu nav > ul > li { padding-top: 23px !important; padding-bottom: 23px !important; }
#mainMenu nav > ul > li > .dropdown-menu { top: 100% !important; margin-top: 0 !important; }
}
.rooms.roomcontent .plan-button .btn { display: inline-block !important; width: auto !important; }

/* ===== Sprachumschalter ===== */
#header .header-extras { display: flex !important; align-items: center; height: 80px; margin-left: 22px; }
#header .header-extras > ul { margin: 0 !important; padding: 0 !important; }
#header .header-extras .p-dropdown > a { display: inline-flex !important; align-items: center; gap: 8px; height: auto !important; line-height: 1 !important; padding: 8px 12px !important; border: 1px solid rgba(239,235,225,.5); background: transparent !important; font-family: var(--hs-sans) !important; font-size: 12px !important; font-weight: 600; letter-spacing: .16em; color: var(--hs-cream) !important; text-decoration: none !important; }
#header .header-extras .p-dropdown > a:hover { background: var(--hs-cream) !important; color: var(--hs-ink) !important; border-color: var(--hs-cream); }
#header .header-extras .p-dropdown > a .icon-globe, #header .header-extras .p-dropdown > a .langflag { display: none !important; }
#header .header-extras .p-dropdown > a::before { content: "DE"; }
#header .header-extras .p-dropdown > a:has(.langflag[src*="EN"])::before, #header .header-extras .p-dropdown > a:has(.langflag[src*="English"])::before { content: "EN"; }
#header .header-extras .p-dropdown > a::after { content: ""; width: 6px; height: 6px; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: rotate(45deg) translateY(-2px); }
#header .header-extras .p-dropdown-content { background: var(--hs-cream) !important; border: 0 !important; border-radius: 0 !important; box-shadow: 0 12px 30px rgba(0,0,0,.18) !important; padding: 8px 0 !important; min-width: 160px; right: 0; left: auto !important; }
#header .header-extras .p-dropdown-content li a { display: flex !important; align-items: center; gap: 10px; padding: 10px 18px !important; font-family: var(--hs-sans) !important; font-size: 14px !important; color: var(--hs-ink) !important; letter-spacing: .02em; }
#header .header-extras .p-dropdown-content li a:hover { background: var(--hs-cream2) !important; color: var(--hs-sage) !important; }
#header .header-extras .p-dropdown-content li a img { width: 18px; height: auto; }
@media (max-width: 1024px) { #header .header-extras { height: auto; margin-left: 0; } }

@media (max-width: 1024px) { #header .header-extras .p-dropdown-content { left: 0 !important; right: auto !important; } }
