:root {
  --hotel-bg: #f4eee2;
  --hotel-bg-soft: #fbf8f2;
  --hotel-bg-card: #fffdf9;
  --hotel-brand: #2d372c;
  --hotel-brand-strong: #1e261f;
  --hotel-accent: #b6915f;
  --hotel-accent-deep: #89633a;
  --hotel-text: #2c2a25;
  --hotel-text-soft: #696153;
  --hotel-border: #dcccb5;
  --hotel-white: #ffffff;
  --hotel-shadow: 0 12px 28px rgba(23, 27, 22, 0.14);
}

* {
  box-sizing: border-box;
}

html,
body {
  margin: 0;
  padding: 0;
}

body.hotelKroneTemplate,
body.hotelKroneModal,
body.hotelOfflinePage {
  color: var(--hotel-text);
  font-family: "Segoe UI", "Trebuchet MS", Arial, sans-serif;
  line-height: 1.6;
  background:
    radial-gradient(circle at 85% -20%, rgba(188, 155, 107, 0.23), rgba(188, 155, 107, 0) 40%),
    linear-gradient(180deg, #efe7d8 0%, #f8f4ec 320px, #f8f5ef 100%);
}

a {
  color: var(--hotel-brand);
  text-decoration: none;
}

a:hover,
a:focus-visible {
  color: var(--hotel-accent-deep);
}

img {
  max-width: 100%;
  height: auto;
}

.hotelPageWrap {
  min-height: 100vh;
}

.hotelKroneTemplate p {
  color: #4a463f;
}
.heroHeadContent p,
.storyVisualCard p {
  color: #e6c292;
}
.menuHeadTopInner,
.menuHeadMainInner,
.heroHeadInner,
.bookingStripInner,
.overviewBandInner,
.storySectionInner,
.highlightsSectionInner,
.contentAreaInner,
.footerGrid {
  width: min(1180px, calc(100% - 2.4rem));
  margin: 0 auto;
}

.moduletable {
  margin-bottom: 1rem;
}

.visually-hidden {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.contentMain h1,
.contentMain h2,
.contentMain h3,
.articleWrap h1,
.articleWrap h2,
.articleWrap h3 {
  margin: 0 0 0.85rem;
  color: #2b2924;
  font-family: "Palatino Linotype", "Book Antiqua", Palatino, serif;
  line-height: 1.2;
}

.contentMain ul,
.contentMain ol,
.articleWrap ul,
.articleWrap ol {
  padding-left: 1.2rem;
}
