/* SaaleSpa – Feinschliff 17.10.: einheitlicher Footer, gut lesbare Kleinschrift */
html body footer:has(.footer-contact){display:grid!important;grid-template-columns:minmax(240px,1.25fr) minmax(220px,1fr) minmax(200px,1fr)!important;gap:48px!important;align-items:start!important;padding:72px max(32px,calc((100vw - 1200px)/2)) 64px!important;background:#0b1c24!important;color:#c3d0d3!important;text-align:left!important}
html body footer:has(.footer-contact)>div{min-width:0}
html body footer:has(.footer-contact) .footer-label{margin:0 0 16px!important;font:400 12px/1.4 var(--hx-label,'Josefin Sans',Arial,sans-serif)!important;letter-spacing:.24em!important;text-transform:uppercase!important;color:#dbbd8b!important}
html body footer:has(.footer-contact) address,html body footer:has(.footer-contact) p{margin:0 0 14px!important;font-style:normal;font-size:15px!important;line-height:1.65!important;color:#c3d0d3}
html body footer:has(.footer-contact) .footer-contact,html body footer:has(.footer-contact) .footer-more{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:2px!important}
html body footer:has(.footer-contact) :is(.footer-contact,.footer-more)>a,html body footer:has(.footer-contact) .footer-more .sm-privacy-launcher{display:inline-flex!important;align-items:center!important;width:auto!important;min-height:40px!important;padding:0!important;margin:0!important;font:400 15px/1.3 var(--hx-body,'DM Sans',Arial,sans-serif)!important;color:#c3d0d3!important;text-decoration:underline!important;text-decoration-color:#c3d0d355!important;text-underline-offset:5px!important;background:none!important;border:0!important;box-shadow:none!important;letter-spacing:0!important;text-transform:none!important;cursor:pointer}
html body footer:has(.footer-contact) :is(.footer-contact,.footer-more)>a:hover,html body footer:has(.footer-contact) .footer-more .sm-privacy-launcher:hover{color:#dbbd8b!important;text-decoration-color:#dbbd8b!important}
html body footer:has(.footer-contact) .footer-contact a[href^="mailto:"]{overflow-wrap:anywhere}
html body footer:has(.footer-contact) .brand-family{margin-top:8px!important}
html body footer:has(.footer-contact) .water-motion-control{display:inline-flex;align-items:center;min-height:40px;margin:6px 0 4px!important;padding:0!important;font-size:14px!important;background:none!important;border:0!important;color:#dbbd8b!important;text-decoration:underline;text-underline-offset:5px;text-decoration-color:#dbbd8b66}
@media (max-width:899px){
 html body footer:has(.footer-contact){grid-template-columns:1fr 1fr!important;gap:36px 24px!important;padding:56px 24px calc(48px + env(safe-area-inset-bottom))!important}
 html body footer:has(.footer-contact) .footer-brand{grid-column:1/-1}
 html body footer:has(.footer-contact) :is(.footer-contact,.footer-more)>a,html body footer:has(.footer-contact) .footer-more .sm-privacy-launcher{min-height:44px!important}
}
@media (max-width:380px){html body footer:has(.footer-contact){grid-template-columns:1fr!important}}
/* Kleinschrift auf mindestens 12 px */
html body .hx-season,html body .water-price-label,html body .water-price-detail,html body .standard-note,html body .gift-shop .tag,html body .sp-shell .tag{font-size:12px!important}
html body .hx-letters-hint{font-size:13px!important}
html body footer:has(.footer-contact) .footer-more .sm-privacy-launcher{opacity:1!important}
html body .hx-includes span{font-size:12.5px!important;letter-spacing:.08em!important}
@media(max-width:700px){html body .hx-includes span{font-size:12px!important;letter-spacing:.06em!important}}
/* Bewertung: große Note, kleine Skala, Sterne darüber */
html body.spa-water .review-score{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:6px!important}
html body.spa-water .review-score strong{display:block;line-height:1.05!important;color:inherit}
html body.spa-water .review-score strong>span{font:inherit!important;font-size:1em!important;color:inherit!important;letter-spacing:0!important}
html body.spa-water .review-score>span{font-size:14px!important}

/* Anreise 17.10.: Hängeschaukel als bewegtes Titelbild */
html body .sp-hero-media picture{display:contents}
html body .sp-hero-film{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 45%;display:block;background:#0b1c24}
@media (min-width:900px){
  html body .sp-hero:has(.sp-hero-film) .sp-hero-media{background:#0b1c24}
  html body .sp-hero:has(.sp-hero-film) .sp-hero-media img{opacity:0}
  html body .sp-hero-film{left:auto;right:0;width:54%;object-position:0% 50%;background:#0b1c24}
  /* weicher Übergang ist in den Rechner-Film eingearbeitet (keine Maske, keine Kante) */
}

/* 17.10. (2): kein weichgezeichneter Nebel über dem Headerfilm – ruhiger, klarer Verlauf reicht */
html body .water-entry .hx-mist{display:none!important}

/* 17.10. (2): Titelbilder stehen ruhig – kein Nachzoomen beim Laden (wirkte wie doppeltes Laden) */
html body .sp-hero-media img,html body .sp-shell .sp-pagehead .sp-pagehead-media img{animation:none!important;transform:none!important}

/* 17.10. (2): Buchungsleiste am Handy verdeckt die Titel-Knöpfe nicht mehr */
html.sp-hero-in-view body .mobile-book{visibility:hidden;pointer-events:none;transform:translateY(110%)}
html body .mobile-book{transition:transform .32s cubic-bezier(.2,.7,.2,1),visibility .32s}

/* 17.10. (2): Feinschliff Startseite */
html body .restaurant-actions .button.outline{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 26px;border:1px solid rgba(20,47,57,.32);border-radius:999px;color:#142f39;background:transparent;font-family:var(--hx-label,'Josefin Sans',sans-serif);font-size:13px;letter-spacing:.16em;text-transform:uppercase;text-decoration:none}
html body .restaurant-actions .button.outline:hover{border-color:#142f39}
html body .water-prologue h2{margin-bottom:24px!important}

/* 17.10. (2): Headerfilm füllt auch auf Tablets das ganze Bild (vorher Band mit dunkler Fläche) */
@media (min-width:600px){html body .water-media #water-header-film{object-fit:cover!important;object-position:50% 50%!important}}

/* ===== Vorschau 17.10.: grafische Ergänzungen ===== */
/* 1) Bewertungssiegel im Header */
html body .water-rating{display:inline-flex;align-items:center;gap:10px;margin:0 0 14px;padding:7px 14px 7px 12px;border:1px solid rgba(217,187,135,.38);border-radius:999px;background:rgba(11,28,36,.42);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);color:#f4f1ea;font:500 12.5px/1.2 var(--hx-sans,'DM Sans',sans-serif);letter-spacing:.02em;text-decoration:none;width:max-content}
html body .water-rating-stars{color:#d9bb87;letter-spacing:2px;font-size:12px}
html body .water-rating:hover{border-color:#d9bb87}
html body .water-price .water-rating{display:flex;margin:0 0 12px}
/* 2) Wegskizze Anreise */
html body .sp-route{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin:8px 0 64px;padding:34px 34px 26px;border-radius:22px;background:linear-gradient(160deg,#10262f,#0b1c24);color:#f4f1ea;box-shadow:0 30px 60px -36px rgba(11,28,36,.6)}
html body .sp-route-line{display:none}
html body .sp-route-stop:not(:last-of-type)::after{content:"";position:absolute;left:62px;right:-16px;top:27px;border-top:2px dashed rgba(217,187,135,.5)}
html body .sp-route-stop{position:relative;display:flex;flex-direction:column;gap:6px}
html body .sp-route-dot{display:grid;place-items:center;width:54px;height:54px;border-radius:50%;background:#0b1c24;border:1px solid rgba(217,187,135,.6);margin-bottom:12px}
html body .sp-route-dot svg{width:24px;height:24px;fill:none;stroke:#d9bb87;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
html body .sp-route-stop:last-of-type .sp-route-dot{background:#d9bb87}
html body .sp-route-stop:last-of-type .sp-route-dot svg{stroke:#0b1c24}
html body .sp-route-stop strong{font:400 24px/1.1 var(--hx-serif,'Cormorant Garamond',serif);color:#f4f1ea}
html body .sp-route-stop>span:last-child{font-size:14px;line-height:1.5;color:rgba(244,241,234,.74)}
html body .sp-route figcaption{grid-column:1/-1;margin-top:6px;padding-top:16px;border-top:1px solid rgba(244,241,234,.12);font-size:13.5px;color:rgba(244,241,234,.7)}
@media (max-width:760px){
  html body .sp-route{grid-template-columns:1fr;gap:20px;padding:26px 22px 22px;margin-bottom:44px}
  html body .sp-route-stop:not(:last-of-type)::after{left:22px;right:auto;top:54px;bottom:-16px;border-top:0;border-left:2px dashed rgba(217,187,135,.5)}
  html body .sp-route-stop{display:grid;grid-template-columns:46px 1fr;column-gap:16px;row-gap:2px;align-items:center}
  html body .sp-route-dot{width:46px;height:46px;margin:0;grid-row:1/3}
  html body .sp-route-dot svg{width:20px;height:20px}
  html body .sp-route-stop strong{font-size:22px;align-self:end}
  html body .sp-route-stop>span:last-child{align-self:start}
}
/* 3) Symbole auf den Arrangement-Karten */
html body .package-tabs button{position:relative}
html body .package-tabs button::after{content:""!important;display:block!important;position:absolute;top:14px;right:14px;width:22px;height:22px;background:#a9834b;-webkit-mask:var(--pk-ico) center/contain no-repeat;mask:var(--pk-ico) center/contain no-repeat;opacity:.9}
html body .package-tabs button.active::after,html body .package-tabs button[aria-pressed="true"]::after{background:#d9bb87}
html body .package-tabs button[data-package-index="0"]{--pk-ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 21c-3.3 0-6-2.4-6-5.6 0-3.6 3.3-5.4 3.8-9.4 2.6 1.6 4 3.8 4.2 6.2.7-.7 1.2-1.7 1.3-2.8 1.7 1.4 2.7 3.6 2.7 6 0 3.2-2.7 5.6-6 5.6z'/%3E%3C/svg%3E")}
html body .package-tabs button[data-package-index="1"]{--pk-ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 20c-4-2.5-6-5.5-6-9a6 6 0 0 1 6-6 6 6 0 0 1 6 6c0 3.5-2 6.5-6 9z'/%3E%3Cpath d='M12 20V9'/%3E%3Cpath d='M12 13l-3-3M12 11l3-3'/%3E%3C/svg%3E")}
html body .package-tabs button[data-package-index="2"]{--pk-ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Ccircle cx='8' cy='6.5' r='2.3'/%3E%3Ccircle cx='16' cy='6.5' r='2.3'/%3E%3Ccircle cx='12' cy='12' r='1.8'/%3E%3Cpath d='M4.5 19v-3.5A3.5 3.5 0 0 1 8 12M19.5 19v-3.5A3.5 3.5 0 0 0 16 12M9.5 19v-1.5a2.5 2.5 0 0 1 5 0V19'/%3E%3C/svg%3E")}
html body .package-tabs button[data-package-index="3"]{--pk-ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 3.5l2.5 5.2 5.6.8-4 4 1 5.6-5.1-2.7-5.1 2.7 1-5.6-4-4 5.6-.8z'/%3E%3C/svg%3E")}
html body .package-tabs button[data-package-index="4"]{--pk-ico:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M12 20s-7-4.4-7-10a4 4 0 0 1 7-2.6A4 4 0 0 1 19 10c0 5.6-7 10-7 10z'/%3E%3C/svg%3E")}
@media (max-width:599px){html body .water-offer{flex-wrap:wrap;row-gap:16px}html body .water-price .water-rating{font-size:12px}}
@media (max-width:420px){html body .package-tabs button[data-package-index="2"]::after{top:12px;right:12px}html body .package-tabs button[data-package-index="2"] .package-choice-price{margin-top:22px}}

/* 17.10. (3): Rundgang „Das Boot“ – alle vier Bilder im gleichen edlen Hochformat statt unterschiedlich großer Fotos */
html body.spa-water .water-scene-photo{aspect-ratio:4/5;width:auto!important;max-width:100%;justify-self:center;align-self:center;display:block;overflow:visible;border-radius:0;box-shadow:none}
html body.spa-water .water-scene-photo img{position:absolute;inset:0;width:100%!important;height:100%!important;object-fit:cover!important;border-radius:18px;box-shadow:0 30px 70px #0b1c2440}
html body.spa-water #water-boat .water-scene-photo img{object-position:42% 50%}
html body.spa-water #water-sauna .water-scene-photo img{object-position:50% 60%}
html body.spa-water .water-scene-photo figcaption{bottom:-30px}
html body.spa-water.water-reduced .water-scene-photo{aspect-ratio:4/5;height:auto!important;width:100%!important}
html body.spa-water.water-reduced .water-scene-photo img{position:absolute;height:100%!important}
html body.spa-water.water-reduced .water-scene-photo figcaption{position:absolute;top:calc(100% + 10px);bottom:auto}

/* 17.10. (4): Startbild aufgeräumt – oben Aussage und Bewertung, unten eine ruhige Leiste mit Termin, Preis und Buchung */
html body .water-copy .water-rating{display:inline-flex;margin:26px 0 0}
html body .hx-season{display:none!important}
@media (min-width:901px){
  html body .water-lower{left:5.5vw!important;right:5.5vw!important;bottom:40px!important;display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:flex-end!important;justify-content:flex-start!important;gap:20px!important;width:auto!important;margin:0!important;padding:0!important}
  html body .water-lower-copy{order:1}
  html body .water-lower>.hx-next{order:2}
  html body .water-offer{order:3}
  html body .water-lower-copy{display:block!important;max-width:none!important;margin:0!important;align-self:flex-end}
  html body .water-lower>.hx-next{margin:0!important;align-self:flex-end}
  html body .water-lower>.hx-next{align-self:flex-end;margin:0}
  html body .water-offer{margin-left:auto}
  html body #header-film-toggle{min-height:40px!important;padding:8px 14px!important;border:1px solid rgba(244,241,234,.28);border-radius:999px;background:rgba(11,28,36,.35);font-size:12px!important;letter-spacing:.08em}
}
@media (min-width:901px) and (max-width:1365px){
  html body .water-lower{flex-wrap:wrap!important;row-gap:16px!important}
  html body .water-lower>.hx-next{order:0!important;flex:0 0 auto!important;width:max-content!important;max-width:100%!important;flex-wrap:nowrap!important;white-space:nowrap}
  html body .water-lower>.hx-next::after{content:"";flex-basis:100%}
  html body .water-lower-copy{flex-basis:auto}
  html body .water-lower::before{content:"";order:1;flex-basis:100%;height:0}
}

/* ---------- Optik-Check 17.10.2026: Feinschliff Handy & Desktop ---------- */
/* Bestellknopf Gutschein: Pflichtwortlaut bleibt, aber höchstens zwei Zeilen */
@media (max-width:560px){html body #submit.sp-shine{font-size:13px!important;letter-spacing:.07em!important;line-height:1.3!important;padding:10px 18px!important;min-height:56px!important;text-align:center}}
/* Fußbereich am Handy: eine Spalte, nichts läuft an den Rand */
@media (max-width:560px){html body footer:has(.footer-contact){grid-template-columns:1fr!important;gap:30px!important}html body footer:has(.footer-contact) .footer-label{letter-spacing:.2em!important}}
/* Eckdaten im Startbild der Unterseiten: mehr Luft auf schmalen Geräten */
@media (max-width:420px){.sp-facts strong{font-size:23px}.sp-facts li{padding-right:8px}.sp-facts li+li{padding-left:10px}.sp-facts span{font-size:12.5px}}
/* Abschluss-Link: Pfeil bleibt beim Wort */
@media (max-width:480px){.sp-next-title{font-size:clamp(32px,8.6vw,40px);flex-wrap:nowrap;white-space:nowrap}}
/* Unterseiten am Handy: kein leerer Streifen nach dem Startbild */
@media (max-width:899px){.sp-hero-copy{padding-bottom:64px}.hx-kino{padding-top:36px;padding-bottom:44px}}
/* Startseite: Gutschein-Abschnitt schließt enger an */
.gift-section{padding-bottom:clamp(56px,6vw,80px)!important}
@media (max-width:899px){.sp-ways{padding-bottom:64px!important}.gift-section{padding-top:48px!important}}
/* Leistungs-Kacheln: Symbole stehen auf einer Linie */
.hx-includes li{align-content:start}
/* Rundgang: Link „Das Boot in 3D“ wird nie angeschnitten */
.water-tour-top .water-model-open{white-space:nowrap;flex:none}

/* Wege an Bord als Bildtafeln statt nummerierter Liste (17.10.2026) */
.sp-ways-grid{gap:16px}
.sp-way{display:block;padding:0;border-radius:24px;background:#0f2128;color:#fbf7ef;aspect-ratio:5/4;min-height:260px;box-shadow:0 30px 60px -36px #16333daa}
.sp-way::before{display:none}
.sp-way figure{position:absolute;inset:0;width:auto;height:auto;margin:0;border-radius:0;aspect-ratio:auto}
.sp-way figure::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,20,25,0) 30%,rgba(8,20,25,.55) 62%,rgba(8,20,25,.9) 100%)}
.sp-way img{width:100%;height:100%;object-fit:cover}
.sp-way-copy{position:absolute;left:0;right:64px;bottom:0;padding:24px 24px 24px;gap:6px;z-index:1}
.sp-way-no{display:none}
.sp-way-title{color:#fbf7ef;font-size:34px;text-shadow:0 2px 18px rgba(0,0,0,.35)}
.sp-way-text{color:rgba(251,247,239,.86);font-size:15px;line-height:1.45;max-width:30ch}
.sp-way-go{position:absolute;right:20px;bottom:24px;z-index:1;display:grid;place-items:center;width:44px;height:44px;border-radius:50%;border:1px solid rgba(232,200,145,.7);color:#e8c895;font-size:18px;transition:background .4s var(--hx-ease),color .4s var(--hx-ease),transform .4s var(--hx-ease)}
.sp-way:hover .sp-way-go,.sp-way:focus-visible .sp-way-go{background:#e8c895;color:#0f2128;transform:translateX(3px)}
.sp-way:focus-visible{outline:3px solid #b98a4e;outline-offset:3px}
@media (min-width:900px){
 .sp-ways-grid{gap:24px}
 .sp-way{aspect-ratio:3/4;padding:0;border-radius:28px}
 .sp-way figure{width:auto;border-radius:0;aspect-ratio:auto}
 .sp-way-copy{padding:0 32px 32px;right:72px}
 .sp-way-title{font-size:40px}
 .sp-way-go{right:28px;bottom:32px}
}
@media (prefers-reduced-motion:reduce){.sp-way-go{transition:none}}
