/* Michael am Waal guest interface — reference design system, 2026-09-02 */
:root {
  --page: #fff;
  --gallery: #f0e9e0;
  --braun: #6e5848;
  --text: #3a2d20;
  --zwischen: #806656;
  --karte: #f2ede6;
  --highlight: #eae3d8;
  --kreis: #dfd3c4;
  --sand: #c2b4a2;
  --linie: #d8cfc2;
  --footer: #6f5848;
  --maw-shadow: 0 30px 80px -48px rgba(58, 45, 32, .46);
}

html { background: var(--gallery); }
body.maw-reference {
  background: var(--gallery);
  color: var(--text);
  font-family: 'Montserrat', sans-serif;
  font-weight: 300;
}

/* Main guest app: white editorial sheet on the warm gallery background. */
.maw-guest-home .app {
  --app: 520px;
  background: var(--page);
}
.maw-guest-home .topbar {
  min-height: 66px;
  border-bottom-color: rgba(110, 88, 72, .12);
  background: rgba(255, 255, 255, .94);
}
.maw-guest-home .topbar img { height: 20px; }
.maw-guest-home .hero { min-height: 430px; }
.maw-guest-home .hero-in { padding-bottom: 38px; }
.maw-guest-home .hero-in .k,
.maw-guest-home .eyebrow,
.maw-guest-home .label {
  letter-spacing: .3em;
}
.maw-guest-home .h1 {
  font-weight: 200;
  letter-spacing: .035em;
}
.maw-guest-home .h2 { font-weight: 300; }
.maw-guest-home .capcard {
  border-radius: 22px;
  padding: 22px 24px;
  box-shadow: var(--maw-shadow);
}
.maw-guest-home .status,
.maw-guest-home .step,
.maw-guest-home .icard,
.maw-guest-home .hibox,
.maw-guest-home .tl-card,
.maw-guest-home .lrow,
.maw-guest-home .place,
.maw-guest-home .crow,
.maw-guest-home .fyband {
  border-radius: 18px;
}
.maw-guest-home .status,
.maw-guest-home .step,
.maw-guest-home .icard,
.maw-guest-home .tl-card,
.maw-guest-home .lrow,
.maw-guest-home .place,
.maw-guest-home .crow {
  border: 1px solid rgba(216, 207, 194, .68);
}
.maw-guest-home .btn {
  min-height: 48px;
  padding: 14px 25px;
  letter-spacing: .18em;
}
.maw-guest-home .btn--ghost { background: #fff; }
.maw-guest-home .media,
.maw-guest-home .mapcard { border-radius: 22px; }
.maw-guest-home .foot { background: var(--footer); padding-top: 42px; }
.maw-guest-home .nav {
  min-height: 72px;
  background: rgba(255, 255, 255, .96);
}
.maw-guest-home .nav button small { font-size: 10px; letter-spacing: .12em; }

/* Complete curated explore module inside the existing Tips screen. */
#explore .mawx-entdecken {
  max-width: none;
  padding: 42px 0 28px;
  background: transparent;
}
#explore .mawx-sectop { margin-bottom: 28px; }
#explore .mawx-sectop h2 { font-size: clamp(27px, 7vw, 36px); }
#explore .mawx-grp {
  border-radius: 20px;
  box-shadow: none;
}
#explore .mawx-grp[open] { box-shadow: var(--maw-shadow); }
#explore .mawx-card { border-radius: 16px; }

/* Check-in and arrival: reference variants 04 + 10. */
.maw-form-page header {
  background: rgba(255, 255, 255, .94);
  border-bottom-color: rgba(110, 88, 72, .12);
}
.maw-form-page .head-inner { height: 68px; }
.maw-form-page .mark {
  font-weight: 200;
  letter-spacing: .25em;
}
.maw-form-page .hero {
  min-height: 310px;
  background: var(--page);
  color: var(--braun);
  border-bottom: 1px solid var(--linie);
}
.maw-form-page .hero .eyebrow { color: var(--sand); }
.maw-form-page .hero h1 { color: var(--braun); letter-spacing: .08em; }
.maw-form-page .hero .sig { color: var(--zwischen); }
.maw-form-page .form-card {
  border-color: rgba(216, 207, 194, .78);
  border-radius: 22px;
  box-shadow: var(--maw-shadow);
}
.maw-form-page .field input,
.maw-form-page .field select,
.maw-form-page .field textarea {
  border: 1px solid var(--linie);
  border-radius: 16px;
  background: var(--karte);
  padding: 13px 15px;
}
.maw-form-page .field select { background-position: right 14px center; }
.maw-form-page .field input:focus,
.maw-form-page .field select:focus,
.maw-form-page .field textarea:focus {
  border-color: var(--sand);
  box-shadow: 0 0 0 3px rgba(194, 180, 162, .18);
}
.maw-form-page .guest-block {
  border-radius: 18px;
  background: #fff;
}
.maw-form-page .notice,
.maw-form-page .summary { border-radius: 16px; }
.maw-form-page .btn {
  background: var(--footer);
  border-radius: 40px;
}
.maw-form-page footer {
  background: var(--footer);
  border-top: 0;
  color: #fff;
}
.maw-form-page footer .foot-mark,
.maw-form-page footer .foot-sig,
.maw-form-page footer a,
.maw-form-page footer .copy { color: #fff; }

/* The swipeable information guide keeps its interaction, but shares the same frame. */
.maw-info-page .stage { background: var(--page); }
.maw-info-page .slide.paper { background: var(--page); }
.maw-info-page .slide.karte { background: var(--karte); }
.maw-info-page .slide.hero {
  background: linear-gradient(160deg, #806656 0%, #6e5848 100%);
}
.maw-info-page .num { box-shadow: 0 14px 30px -24px rgba(58, 45, 32, .55); }

@media (min-width: 600px) {
  .maw-guest-home .app {
    margin: 24px auto;
    min-height: calc(100dvh - 48px);
    border-radius: 30px;
    overflow: hidden;
    box-shadow: var(--maw-shadow);
  }
  .maw-guest-home .nav { border-radius: 22px 22px 0 0; }
  .maw-form-page main,
  .maw-form-page > header,
  .maw-form-page > .hero,
  .maw-form-page > footer {
    max-width: 920px;
    margin-inline: auto;
  }
  .maw-form-page > header { border-radius: 0 0 18px 18px; }
  .maw-form-page > footer { margin-bottom: 24px; border-radius: 0 0 24px 24px; }
}

@media (max-width: 599px) {
  body.maw-reference { background: #fff; }
  .maw-form-page .hero { min-height: 250px; }
  .maw-form-page .form-card { padding: 26px 20px; border-radius: 18px; }
  #explore .mawx-entdecken { padding: 34px 0 18px; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; }
}
