/* Shared spa design. Existing content, menu markup and scripts are retained. */
body.aalen-spa-design {
  --green:#234a3c; --violet:#234a3c; --ink:#34483c;
  --soft:#f2eee4; --line:#ded8c9; --green-900:#234a3c;
  --green-700:#345a46; --gold:#79632e; --gold-soft:#dfd5b5;
  --cream:#f7f4ed; --ink-soft:#435246;
  background:#f7f4ed!important; color:#435246!important;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
}
body.aalen-spa-design#blog { padding-bottom:88px!important; }
body.aalen-spa-design#blog .page-area { background:transparent!important; }
body.aalen-spa-design#blog #bulk-content {
  background:#fcfaf6!important; border:1px solid #e2ddcf!important;
  box-shadow:none!important; border-radius:8px!important;
  margin-top:28px!important; margin-bottom:42px!important; padding:30px!important;
}
body.aalen-spa-design#blog :is(.main-content-page,.entry-content,.main-container,.onerow) {
  background:transparent!important; color:#435246!important;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
}
body.aalen-spa-design#blog #bulk-content :is(p,li,div,span,small,strong,b,em,figcaption,label,summary,td,th) {
  color:#435246!important;
}
body.aalen-spa-design#blog #bulk-content :is(p,li) { font-size:16px!important; line-height:1.8!important; }
body.aalen-spa-design#blog #bulk-content :is(h1,h2,h3,h4,h5,h6),
body.aalen-spa-design#blog #bulk-content :is(h1,h2,h3,h4,h5,h6) span {
  color:#234a3c!important; font-family:Georgia,"Times New Roman",serif!important;
  font-weight:400!important; line-height:1.3!important; background:transparent!important;
}
body.aalen-spa-design#blog #bulk-content h2 { font-size:30px!important; }
body.aalen-spa-design#blog #bulk-content :is(h3,h4) { font-size:23px!important; }
body.aalen-spa-design#blog #bulk-content a { color:#345a46!important; text-underline-offset:3px; }
body.aalen-spa-design#blog #bulk-content :is(.pcontainer,.aalen-firstvisit,.aalen-intro-cta,.aalen-metime,.aalen-voucher,.aalen-faq,.static-google-reviews) {
  background:#f2eee4!important; border:1px solid #ded8c9!important;
  border-radius:8px!important; box-shadow:none!important; padding:24px!important;
}
body.aalen-spa-design#blog #bulk-content .pcontainer .col-1 { background:transparent!important; color:#435246!important; }
body.aalen-spa-design#blog #bulk-content .aalen-hero-band {
  background:#e8eddf!important; color:#234a3c!important;
  border:1px solid #d6dfcb!important; border-radius:8px!important;
}
body.aalen-spa-design#blog #bulk-content .aalen-hero-band :is(h2,p,span,strong,b) { color:#234a3c!important; }
body.aalen-spa-design#blog #bulk-content .aalen-trustbar {
  background:transparent!important; border-bottom:1px solid #e2ddcf;
  border-radius:0; padding:0 0 24px!important; gap:12px 24px; font-size:13px!important;
}
body.aalen-spa-design#blog #bulk-content .aalen-trustbar .stars,
body.aalen-spa-design#blog #bulk-content :is(.static-google-review__stars,.static-google-reviews__stars) { color:#79632e!important; }
body.aalen-spa-design#blog #bulk-content :is(.aalen-firstvisit li,.aalen-top3-card,.static-google-review,.aalen-metime .aalen-bio) {
  background:#fcfaf6!important; border-color:#ded8c9!important;
  border-radius:6px!important; box-shadow:none!important;
}
body.aalen-spa-design#blog #bulk-content .aalen-welcome .aalen-facts li { background:#f2eee4!important; border-color:#82917a!important; }
body.aalen-spa-design#blog #bulk-content .aalen-welcome .aalen-lead { border-color:#79632e!important; }
body.aalen-spa-design#blog #bulk-content :is(.aalen-btn-primary,.button-green,.aalen-voucher-btn,.aalen-top3-card .b1,.aalen-metime-btn,.static-google-reviews__button,.buchenbutton,.violettbuttonbreiter),
body.aalen-spa-design#blog #bulk-content a[href*="reservierungssystem.online"] {
  display:inline-flex; align-items:center; justify-content:center; min-height:46px;
  background:#234a3c!important; color:#fff!important; border:1px solid #234a3c!important;
  border-radius:4px!important; box-shadow:none!important;
  font-size:14px!important; font-weight:600!important; padding:12px 20px!important;
  text-decoration:none!important; line-height:1.5!important;
}
body.aalen-spa-design#blog #bulk-content :is(.aalen-btn-primary,.button-green,.aalen-voucher-btn,.aalen-top3-card .b1,.aalen-metime-btn,.static-google-reviews__button,.buchenbutton,.violettbuttonbreiter) :is(span,strong,b,a),
body.aalen-spa-design#blog #bulk-content a[href*="reservierungssystem.online"] :is(span,strong,b) { color:#fff!important; }
body.aalen-spa-design#blog #bulk-content :is(.aalen-btn-phone,.static-google-reviews__button--light) {
  background:transparent!important; color:#234a3c!important;
  border:1px solid #82917a!important; border-radius:4px!important; min-height:46px;
}
body.aalen-spa-design#blog #bulk-content :is(.aalen-voucher-badge,.aalen-metime .badge) {
  background:#e2e9d8!important; color:#34513d!important; border-color:#d6dfcb!important;
  border-radius:4px!important;
}
body.aalen-spa-design#blog #bulk-content :is(.aalen-voucher-img img,.aalen-wm-gallery img,.aalen-reviewpics img) { border-radius:6px!important; box-shadow:none!important; }
body.aalen-spa-design#blog #bulk-content .aalen-faq summary {
  color:#234a3c!important; padding:14px 32px 14px 0!important;
  font-size:16px!important; line-height:1.5!important; border-color:#ded8c9!important;
}
body.aalen-spa-design#blog #bulk-content .aalen-faq summary::after { top:18px!important; color:#6a7a5c!important; }
body.aalen-spa-design#blog #bulk-content :is(hr,td,th) { border-color:#ded8c9!important; }
body.aalen-spa-design#blog #quote-carousel .carousel-inner { background:#fcfaf6!important; border-color:#ded8c9!important; box-shadow:none!important; }
/* Retain the existing menu and its original responsive behavior. */
body.aalen-spa-design :is(.main-menu,#site-navigation,#mega-menu-wrap-main_menu,#mega-menu-wrap-main_menu .mega-menu-toggle) {
  background:#f7f4ed!important; border-color:#ded8c9!important; box-shadow:none!important;
}
body.aalen-spa-design #site-navigation .site-title a {
  color:#234a3c!important; font-family:Georgia,"Times New Roman",serif!important;
  font-weight:400!important; font-size:28px!important; line-height:1.25!important;
}
body.aalen-spa-design #site-navigation .site-description { color:#626d5e!important; }
body.aalen-spa-design #mega-menu-wrap-main_menu #mega-menu-main_menu,
body.aalen-spa-design #mega-menu-wrap-main_menu #mega-menu-main_menu > li,
body.aalen-spa-design #mega-menu-wrap-main_menu #mega-menu-main_menu > li > a {
  background:#f7f4ed!important; color:#234a3c!important; border-color:#ded8c9!important;
}
body.aalen-spa-design #mega-menu-wrap-main_menu #mega-menu-main_menu > li > a {
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
  font-size:14px!important; font-weight:500!important;
}
body.aalen-spa-design #mega-menu-wrap-main_menu #mega-menu-main_menu > li > a:is(:hover,:focus) { background:#e2e9d8!important; color:#234a3c!important; }
body.aalen-spa-design #mega-menu-wrap-main_menu .mega-toggle-animated-inner,
body.aalen-spa-design #mega-menu-wrap-main_menu .mega-toggle-animated-inner::before,
body.aalen-spa-design #mega-menu-wrap-main_menu .mega-toggle-animated-inner::after { background-color:#234a3c!important; }
/* Hero treatment from the new design, retaining every image and heading. */
body.aalen-spa-design#blog .top-header { background:#ece8dc!important; }
body.aalen-spa-design#blog .single-image { position:relative!important; }
body.aalen-spa-design#blog .single-image::after {
  content:""; position:absolute; inset:0;
  background:linear-gradient(90deg,rgba(247,244,237,.82),rgba(247,244,237,.30)); pointer-events:none;
}
body.aalen-spa-design#blog .header-title { text-align:left!important; padding:0 34px!important; }
body.aalen-spa-design#blog .header-title .page-header {
  font-family:Georgia,"Times New Roman",serif!important; font-weight:400!important;
  font-size:48px!important; line-height:1.15!important; text-align:left!important;
}
body.aalen-spa-design#blog .header-title h1 span { background:transparent!important; color:#234a3c!important; padding:0!important; }
body.aalen-spa-design#blog .header-title p { text-align:left!important; }
body.aalen-spa-design#blog .header-title p span { background:transparent!important; color:#234a3c!important; padding:0!important; font-size:17px!important; font-weight:400!important; }
/* Standalone landing pages and legal pages keep their own menus. */
body.aalen-spa-design.aalen-standalone :is(main,section,.Artikel) {
  color:#435246!important; font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important; line-height:1.8!important;
}
body.aalen-spa-design.aalen-standalone :is(main,section,.Artikel) :is(h1,h2,h3,h4,h5,h6) {
  color:#234a3c!important; font-family:Georgia,"Times New Roman",serif!important; font-weight:400!important; line-height:1.3!important;
}
body.aalen-spa-design.aalen-standalone h1 { font-size:clamp(30px,4vw,44px)!important; }
body.aalen-spa-design.aalen-standalone h2 { font-size:clamp(24px,3vw,30px)!important; }
body.aalen-spa-design.aalen-standalone h3 { font-size:23px!important; }
body.aalen-spa-design.aalen-standalone :is(main,section,.Artikel) a { color:#345a46!important; }
body.aalen-spa-design.aalen-standalone :is(.top,header,nav) { background-color:#f7f4ed!important; color:#234a3c!important; border-color:#ded8c9!important; }
body.aalen-spa-design.aalen-standalone :is(.top,header,nav) a { color:#234a3c!important; }
body.aalen-spa-design.aalen-standalone .hero { background:#e8eddf!important; }
body.aalen-spa-design.aalen-standalone .hero img { opacity:.26!important; }
body.aalen-spa-design.aalen-standalone .hero h1 { background:transparent!important; color:#234a3c!important; }
body.aalen-spa-design.aalen-standalone .hero :is(p,span,small,strong,b,.eyebrow,.lede,.trustline,.hero-scroll) { color:#345a46!important; }
body.aalen-spa-design.aalen-standalone .hero :is(.btn,.button) { color:#fff!important; }
body.aalen-spa-design.aalen-standalone .hero :is(.btn,.button) :is(span,strong,b) { color:#fff!important; }
body.aalen-spa-design.aalen-standalone .hero .ghost { color:#234a3c!important; }
body.aalen-spa-design.aalen-standalone main {
  background:#fcfaf6!important; border:1px solid #ded8c9; border-radius:8px;
  margin-top:30px!important; margin-bottom:30px!important;
}
body.aalen-spa-design.aalen-standalone :is(.panel,.card,.Artikel,.white,.kasten1,.kasten2,.kasten3,.verantwortlich,.content-box,.band-dark,.clarity,.price,.massage) {
  background:#f2eee4!important; background-image:none!important; color:#435246!important;
  border:1px solid #ded8c9!important; border-radius:6px!important; box-shadow:none!important;
}
body.aalen-spa-design.aalen-standalone :is(.panel,.card,.Artikel,.band-dark,.clarity) :is(p,span,strong,b,li) { color:#435246!important; }
body.aalen-spa-design.aalen-standalone :is(.button,.btn,.btn-primary,.massage-buchen),
body.aalen-spa-design.aalen-standalone :is(main,section) a[href*="reservierungssystem.online"] {
  background:#234a3c!important; color:#fff!important; border:1px solid #234a3c!important;
  border-radius:4px!important; min-height:46px; padding:11px 20px!important;
  font-size:14px!important; font-weight:600!important; text-decoration:none!important;
  display:inline-flex; align-items:center; justify-content:center;
}
body.aalen-spa-design.aalen-standalone :is(.button,.btn,.btn-primary,.massage-buchen) :is(span,strong,b) { color:#fff!important; }
body.aalen-spa-design.aalen-standalone :is(.alt,.ghost,.outline,.btn-outline) { background:transparent!important; color:#234a3c!important; border-color:#82917a!important; }
body.aalen-spa-design.aalen-standalone .badge { background:#e2e9d8!important; color:#34513d!important; }
body.aalen-spa-design :is(input:not([type=submit]):not([type=checkbox]):not([type=radio]),textarea,select) { background:#fcfaf6!important; color:#34483c!important; border-color:#a3ad99!important; border-radius:4px; }
body.aalen-spa-design :is(button[type=submit],input[type=submit]) { background:#234a3c!important; color:#fff!important; border-color:#234a3c!important; border-radius:4px; }
body.aalen-spa-design.aalen-standalone .form-band { background:#f2eee4!important; color:#435246!important; }
body.aalen-spa-design.aalen-standalone .form-band :is(p,span,label,small,div) { color:#435246!important; }
body.aalen-spa-design.aalen-standalone .form-band h2 { color:#234a3c!important; }
body.aalen-spa-design :is(#colophon,footer) { background:#234a3c!important; color:#f6f3e9!important; border-color:#234a3c!important; }
body.aalen-spa-design :is(#colophon,footer) :is(h3,a,p,div,span,small) { color:#f6f3e9!important; }
body.aalen-spa-design :is(#colophon,footer) h3 { font-family:Georgia,serif!important; font-weight:400!important; }
body.aalen-spa-design .UnderFooter { background:#f7f4ed!important; border-color:#ded8c9!important; box-shadow:0 -4px 16px rgba(35,74,60,.05)!important; padding:12px 20px!important; }
body.aalen-spa-design .UnderFooter .underfooterbutton {
  display:inline-flex; align-items:center; justify-content:center; min-height:44px;
  background:#234a3c!important; color:#fff!important; border:1px solid #234a3c!important;
  border-radius:4px!important; padding:12px 26px!important; font-size:14px!important;
  font-weight:600!important; line-height:1.3!important; text-decoration:none!important;
}
body.aalen-spa-design .UnderFooter .underfooterbutton[href^="tel:"] { background:transparent!important; color:#234a3c!important; border-color:#82917a!important; }
body.aalen-spa-design :is(a,button,summary):focus-visible { outline:2px solid #897442; outline-offset:3px; }
/* Explicit contrast pairs for light surfaces and filled/transparent controls. */
body.aalen-spa-design.aalen-standalone :is(main,section,header.hero) :is(p,li,dd,dt,small,label,cite,td,th) {
  color:#435246!important;
}
body.aalen-spa-design.aalen-standalone :is(.panel,.card,.band-dark,.clarity,.form-band,.hero,.content) :is(span,strong,b,em,.muted,.note,.form-foot,.consent) {
  color:#435246!important;
}
body.aalen-spa-design.aalen-standalone :is(main,section,header.hero) .eyebrow { color:#79632e!important; }
body.aalen-spa-design.aalen-standalone :is(main,section,header.hero) :is(.button,.btn,.btn-primary,.massage-buchen),
body.aalen-spa-design.aalen-standalone .cta a {
  background:#234a3c!important; color:#fff!important; border-color:#234a3c!important;
}
body.aalen-spa-design.aalen-standalone :is(main,section,header.hero) :is(.button,.btn,.btn-primary,.massage-buchen) :is(span,strong,b,em,small),
body.aalen-spa-design.aalen-standalone .cta a :is(span,strong,b,em,small) { color:#fff!important; }
body.aalen-spa-design.aalen-standalone :is(main,section,header.hero) :is(.button,.btn,.btn-primary,.massage-buchen):is(.alt,.ghost,.outline,.btn-outline,.btn-ghost) {
  background:transparent!important; color:#234a3c!important; border-color:#82917a!important;
}
body.aalen-spa-design.aalen-standalone :is(main,section,header.hero) :is(.button,.btn,.btn-primary,.massage-buchen):is(.alt,.ghost,.outline,.btn-outline,.btn-ghost) :is(span,strong,b,em,small) { color:#234a3c!important; }
body.aalen-spa-design.aalen-standalone .gift-note { background:#234a3c!important; color:#fff!important; }
body.aalen-spa-design.aalen-standalone .gift-note :is(p,span,strong,b,em,small,a) { color:#fff!important; }
body.aalen-spa-design.aalen-standalone .badge,
body.aalen-spa-design.aalen-standalone .badge :is(span,strong,b) { background-color:#e2e9d8!important; color:#34513d!important; }
body.aalen-spa-design#blog #bulk-content .massage-buchen { background:#234a3c!important; color:#fff!important; border-color:#234a3c!important; }
body.aalen-spa-design#blog #bulk-content .massage-buchen :is(span,strong,b,em,small) { color:#fff!important; }
body.aalen-spa-design#blog #bulk-content :is(.aalen-btn-phone,.static-google-reviews__button--light) :is(span,strong,b,em,small) { color:#234a3c!important; }
body.aalen-spa-design#blog #bulk-content .aalen-metime .aalen-checks li::before { background:#234a3c!important; color:#fff!important; }
body.aalen-spa-design#blog #bulk-content .aalen-top3-note,
body.aalen-spa-design#blog #bulk-content .aalen-reviewpics__hint { color:#435246!important; }
body.aalen-spa-design :is(input,textarea)::placeholder { color:#626d5e!important; opacity:1; }
body.aalen-spa-design :is(#colophon,footer) :is(strong,b,em,cite,label) { color:#f6f3e9!important; }
@media(min-width:768px) {
  body.aalen-spa-design #mega-menu-wrap-main_menu #mega-menu-main_menu > li > a { padding:18px 12px!important; }
}
@media(max-width:767px) {
  body.aalen-spa-design#blog #bulk-content { width:calc(100% - 24px)!important; padding:18px!important; margin-top:20px!important; }
  body.aalen-spa-design#blog #bulk-content h2 { font-size:26px!important; }
  body.aalen-spa-design#blog #bulk-content :is(h3,h4) { font-size:21px!important; }
  body.aalen-spa-design#blog .header-title { padding:0 25px!important; }
  body.aalen-spa-design#blog .header-title .page-header { font-size:34px!important; }
  body.aalen-spa-design#blog .header-title p span { font-size:14px!important; }
  body.aalen-spa-design#blog #bulk-content :is(.pcontainer,.aalen-firstvisit,.aalen-intro-cta,.aalen-metime,.aalen-voucher,.aalen-faq,.static-google-reviews) { padding:18px!important; }
  body.aalen-spa-design#blog #bulk-content .aalen-trustbar span { white-space:normal!important; }
  body.aalen-spa-design#blog #bulk-content .aalen-voucher-text { min-width:0!important; }
  body.aalen-spa-design#blog #bulk-content .aalen-intro-cta .aalen-btn { width:100%; margin:5px 0!important; }
  body.aalen-spa-design.aalen-standalone main { width:calc(100% - 24px)!important; padding:20px!important; }
  body.aalen-spa-design.aalen-standalone :is(.grid,.cards,.feats,.senses,.prices) { grid-template-columns:1fr!important; }
  body.aalen-spa-design .UnderFooter { padding:10px 12px!important; }
  body.aalen-spa-design .UnderFooter .underfooterbutton { padding:11px 18px!important; }
}
