/* September refinement: same brand, calmer spacing, tactile controls. No booking styles. */
.lipo-ci-native { --lipo-ink:#292525; --lipo-line:#e9e1df; --lipo-soft:#faf7f6; }
.lipo-detail { padding-block:40px 80px!important; }
.lipo-detail > .elementor-container > .elementor-column > .elementor-widget-wrap > .elementor-widget-heading { margin-bottom:44px!important; }
.lipo-detail .elementor-widget-text-editor { width:100%; }
.lipo-polished .elementor-widget-text-editor p:last-child { margin-bottom:0; }
.lipo-polished .elementor-widget-the7_button_widget { margin-top:24px!important; margin-bottom:16px!important; }
.lipo-detail .elementor-widget-the7_button_widget { width:100%!important; text-align:left!important; }
.lipo-detail .elementor-button-wrapper { text-align:inherit!important; }
.lipo-detail .elementor-inner-section { margin-bottom:44px; }
.lipo-detail .elementor-inner-section > .elementor-container > .elementor-column > .elementor-widget-wrap { align-content:center!important; }
.lipo-detail > .elementor-container > .elementor-column > .elementor-widget-wrap > .elementor-widget-text-editor { margin-block:16px 24px; }
.lipo-detail .elementor-widget-text-editor h2 { margin-top:2em; margin-bottom:.7em; }
.lipo-detail .elementor-widget-text-editor h2:first-child { margin-top:0; }
.lipo-photo img { border-radius:16px; box-shadow:0 18px 45px -28px #39141266; }
.lipo-detail .lipo-photo img { aspect-ratio:5/4; }
.lipo-portrait img { border-radius:20px; box-shadow:0 18px 45px -28px #39141266; }

/* The7 buttons, header CTA and Finder retain brand red and accessible hit areas. */
:is(.lipo-polished .elementor-widget-the7_button_widget a,.lipo-finder .lf-primary,.lipo-modern-header .e-n-menu-item:last-child .e-n-menu-title-container) {
 background:linear-gradient(145deg,#c30a0a 0%,#b40404 55%,#970303 100%)!important;
 border:1px solid #a20303!important; border-radius:10px!important;
 box-shadow:inset 0 1px 0 #ffffff38,0 5px 10px -5px #72000055,0 12px 24px -16px #72000088!important;
 transition:transform .22s ease,box-shadow .22s ease,filter .22s ease!important;
}
.lipo-polished .elementor-widget-the7_button_widget a { display:inline-flex; align-items:center; justify-content:center; gap:14px; padding:15px 24px!important; min-height:52px!important; text-decoration:none!important; }
.lipo-polished .elementor-widget-the7_button_widget a::after { content:'→'; display:inline-block; position:static!important; width:auto!important; height:auto!important; background:none!important; border:0!important; font-size:18px; line-height:1; transition:transform .22s ease; }
.lipo-finder .lf-secondary { border-radius:10px; background:#fff; transition:background .2s ease,border-color .2s ease; }
@media(hover:hover) {
 :is(.lipo-polished .elementor-widget-the7_button_widget a,.lipo-finder .lf-primary:not(:disabled),.lipo-modern-header .e-n-menu-item:last-child .e-n-menu-title-container):hover { transform:translateY(-2px); filter:brightness(1.06); box-shadow:inset 0 1px 0 #ffffff38,0 9px 18px -8px #72000066,0 16px 30px -17px #72000088!important; }
 .lipo-polished .elementor-widget-the7_button_widget a:hover::after { transform:translateX(3px); }
 .lipo-finder .lf-secondary:hover { background:#fff7f7; }
 .lipo-card-grid .the7-icon-box-grid:hover { transform:translateY(-3px); border-color:#d6b9b6; box-shadow:0 18px 36px -25px #56211e66; }
}
.lipo-card-grid .the7-icon-box-grid { border-radius:16px; transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease; }
.lipo-hero .elementor-widget-the7_button_widget { margin:10px 6px!important; }

/* Comparison: readable line lengths, gentle separators and an intentional ending. */
.lipo-comparison-intro { max-width:850px; margin:0 auto 36px!important; text-align:center; }
.lipo-ci-table-wrap { border:1px solid var(--lipo-line); border-radius:16px; background:#fff; box-shadow:0 16px 40px -30px #39141244; }
.lipo-ci-table { margin:0!important; border:0!important; }
.lipo-ci-table caption { caption-side:top; margin:0!important; padding:24px!important; background:#fff; font-size:15px!important; color:#665b58; }
.lipo-ci-table thead { background:var(--lipo-soft); }
.lipo-ci-table th,.lipo-ci-table td { border:0!important; border-bottom:1px solid var(--lipo-line)!important; padding:22px 20px!important; }
.lipo-ci-table tbody tr:last-child :is(th,td) { border-bottom:0!important; }
.lipo-ci-table tbody tr:hover { background:#fdfafa; }
.lipo-ci-table tbody th { width:18%; font-weight:500; }
.lipo-ci-table th:last-child,.lipo-ci-table td:last-child { min-width:136px; }
.lipo-ci-table a { display:inline-flex; align-items:center; white-space:nowrap; padding:8px 11px; border:1px solid #ead3d1; border-radius:8px; background:#fff; font-size:13px; text-decoration:none; transition:background .2s ease; }
.lipo-ci-table a:hover { background:#fff0ef; }
.lipo-comparison-note { color:#6e605d; font-size:14px!important; line-height:1.65!important; padding:20px 6px; margin:0!important; }
.lipo-detail .lipo-comparison-note.elementor-widget-text-editor { font-size:14px!important; }
.lipo-endcap { margin:40px 0 0!important; padding:34px!important; border:1px solid var(--lipo-line); border-radius:20px; background:linear-gradient(115deg,#faf5f3,#fff); }
.lipo-endcap > .elementor-container { align-items:center; gap:24px; }
.lipo-endcap > .elementor-container > .elementor-column > .elementor-widget-wrap { padding:0!important; }
.lipo-endcap .elementor-widget-heading { margin:0 0 12px!important; }
.lipo-endcap h2 { font-size:clamp(27px,2.6vw,36px)!important; text-align:left; }
.lipo-endcap .elementor-widget-text-editor { max-width:650px; }
.lipo-endcap .elementor-widget-the7_button_widget { margin:0!important; text-align:right!important; }

/* Head Spa: native Elementor sections, one dominant original photograph. */
.lipo-spa-page { padding:28px 28px 88px!important; }
.lipo-spa-page > .elementor-container { max-width:1440px!important; }
.lipo-spa-page > .elementor-container > .elementor-column > .elementor-widget-wrap { padding:0!important; }
.lipo-spa-page .lipo-breadcrumb { padding-inline:8px; margin-bottom:24px; }
.lipo-spa-hero { margin:0!important; background:#221e1d; border-radius:22px; overflow:hidden; box-shadow:0 28px 70px -40px #30120a88; }
.lipo-spa-hero > .elementor-container { max-width:none!important; min-height:620px; }
.lipo-spa-hero > .elementor-container > .elementor-column:first-child > .elementor-widget-wrap { padding:clamp(30px,4vw,66px)!important; align-content:center!important; position:relative; z-index:1; }
.lipo-spa-hero > .elementor-container > .elementor-column:last-child > .elementor-widget-wrap { padding:0!important; height:100%; }
.lipo-spa-hero .elementor-widget-heading { margin:16px 0 24px!important; }
.lipo-spa-hero h1 { color:#fff!important; font-size:clamp(38px,4.2vw,64px)!important; line-height:1.08!important; text-align:left!important; hyphens:none; }
.lipo-spa-hero .elementor-widget-text-editor { color:#eee5e0; max-width:36ch; }
.lipo-eyebrow { font:500 11px/1.65 Inter,Arial,sans-serif; letter-spacing:.16em; color:#9d0303; margin:0; }
.lipo-spa-hero .lipo-eyebrow { color:#ead2c6; }
.lipo-spa-hero .elementor-widget-the7_button_widget { margin:30px 0 20px!important; }
.lipo-spa-hero .elementor-widget-the7_button_widget a { color:#fff!important; }
.lipo-spa-hero .lipo-spa-hero-photo,.lipo-spa-hero-photo .elementor-widget-container { height:100%; width:100%; }
.lipo-spa-hero .lipo-spa-hero-photo img { display:block; width:100%; height:100%; min-height:620px; aspect-ratio:auto; object-fit:cover; object-position:52% center; border-radius:0; box-shadow:none; transform:translateY(var(--lipo-parallax,0px)) scale(1.055); }
.lipo-spa-discover { color:#f2e9e4!important; font:400 13px/1.6 Inter,Arial,sans-serif; text-underline-offset:5px; }
.lipo-spa-discover span { display:inline-block; margin-left:8px; }
.lipo-spa-hosts { color:#c6b8b2; font:400 12px/1.6 Inter,Arial,sans-serif; margin-top:28px; }
.lipo-spa-features { display:grid; grid-template-columns:repeat(3,1fr); gap:0; padding:42px 0 58px; }
.lipo-spa-feature { padding:10px 32px; border-right:1px solid var(--lipo-line); }
.lipo-spa-feature:last-child { border:0; }
.lipo-spa-feature h2 { font:400 25px/1.25 'Alegreya SC',Georgia,serif; margin:16px 0 12px; }
.lipo-spa-feature p { font:400 15px/1.7 Inter,Arial,sans-serif; color:#635956; max-width:36ch; margin:0; }
.lipo-spa-story { padding:40px 4% 60px; margin:0!important; }
.lipo-spa-story > .elementor-container { gap:7%; }
.lipo-spa-story > .elementor-container > .elementor-column > .elementor-widget-wrap { padding:0!important; }
.lipo-spa-story h2 { font-size:clamp(34px,3.4vw,48px)!important; text-align:left!important; margin:14px 0 22px!important; }
.lipo-spa-story .elementor-widget-heading { margin:0!important; }
.lipo-spa-story .elementor-widget-text-editor { max-width:56ch; }
.lipo-spa-story .lipo-text-link { display:inline-block; margin-top:24px; font:500 14px/1.6 Inter,Arial,sans-serif; color:#9d0303; text-underline-offset:5px; }
.lipo-spa-pause { background:radial-gradient(ellipse at 80% 0%,#eee4df,transparent 65%),#f8f3ef; padding:clamp(32px,5vw,72px); border-radius:120px 20px 20px 20px; color:#5e514b; }
.lipo-spa-pause .lipo-spa-quote { font:400 clamp(38px,4vw,58px)/1.15 'Alegreya SC',Georgia,serif; margin:28px 0; color:#302724; }
.lipo-spa-pause .lipo-spa-quote em { font-style:normal; color:#a70303; }
.lipo-spa-pause > p:last-of-type { font:400 15px/1.8 Inter,Arial,sans-serif; }
.lipo-spa-pause-line { display:block; width:48px; height:2px; background:#b40404; margin-top:36px; }
.lipo-spa-faq { display:grid; grid-template-columns:1fr 1.35fr; gap:8%; margin:40px 4% 70px; padding-top:50px; border-top:1px solid var(--lipo-line); }
.lipo-spa-faq h2 { font:400 clamp(28px,3vw,40px)/1.18 'Alegreya SC',Georgia,serif; margin:16px 0 22px; }
.lipo-spa-faq p { font:400 15px/1.75 Inter,Arial,sans-serif; color:#635956; }
.lipo-spa-faq a { color:#9d0303; text-underline-offset:4px; }
.lipo-spa-questions details { border-bottom:1px solid var(--lipo-line); padding:0 0 20px; margin:0 0 20px; }
.lipo-spa-questions summary { display:flex; align-items:center; justify-content:space-between; gap:20px; cursor:pointer; list-style:none; font:500 16px/1.6 Inter,Arial,sans-serif; padding:6px 0; }
.lipo-spa-questions summary::-webkit-details-marker { display:none; }
.lipo-spa-questions summary::after { content:'+'; font-size:22px; font-weight:400; color:#b40404; }
.lipo-spa-questions details[open] summary::after { content:'−'; }
.lipo-spa-questions details p { margin:14px 28px 0 0; }
.lipo-spa-page .lipo-endcap { margin:0 4%!important; }
#headspa-erlebnis { scroll-margin-top:125px; }
.lipo-spa-page a:focus-visible,.lipo-spa-page summary:focus-visible { outline:2px solid #b40404; outline-offset:5px; }

@media(min-width:768px) and (max-width:1100px) {
 .lipo-spa-hero > .elementor-container > .elementor-column:first-child { width:48%!important; }
 .lipo-spa-hero > .elementor-container > .elementor-column:last-child { width:52%!important; }
 .lipo-spa-hero .elementor-widget-the7_button_widget a { padding:14px 16px!important; }
 .lipo-spa-feature { padding-inline:22px; }
}
@media(max-width:767px) {
 .lipo-detail { padding:28px 20px 52px!important; }
 .lipo-detail > .elementor-container > .elementor-column > .elementor-widget-wrap > .elementor-widget-heading { margin-bottom:26px!important; }
 .lipo-detail .elementor-inner-section { margin-bottom:28px; }
 .lipo-polished .elementor-widget-the7_button_widget { margin-top:22px!important; }
 .lipo-detail .lipo-photo img { aspect-ratio:5/4; }
 .lipo-comparison-intro { text-align:left; margin-bottom:24px!important; }
 .lipo-ci-table-wrap { border:0; background:transparent; box-shadow:none; overflow:visible; }
 .lipo-ci-table caption { padding:4px 0 20px!important; text-align:left; }
 .lipo-ci-table tr { border:1px solid var(--lipo-line)!important; border-radius:16px; margin-bottom:16px; padding:20px!important; background:#fff; box-shadow:0 10px 25px -22px #39141266; }
 .lipo-ci-table th,.lipo-ci-table td { width:auto!important; border:0!important; padding:7px 0!important; min-width:0!important; }
 .lipo-ci-table tbody th { font-size:18px; padding-bottom:14px!important; }
 .lipo-ci-table td[data-label]::before { font-weight:500!important; color:#746864; }
 .lipo-ci-table td:last-child::before { display:none; }
 .lipo-ci-table td:last-child { padding-top:16px!important; }
 .lipo-ci-table a { font-size:14px; min-height:44px; }
 .lipo-endcap { padding:26px 22px!important; margin-top:26px!important; }
 .lipo-endcap > .elementor-container { gap:24px; }
 .lipo-endcap .elementor-widget-the7_button_widget { text-align:left!important; }
 .lipo-spa-page { padding:20px 16px 52px!important; }
 .lipo-spa-hero { border-radius:16px; }
 .lipo-spa-hero > .elementor-container { min-height:0; }
 .lipo-spa-hero > .elementor-container > .elementor-column:first-child > .elementor-widget-wrap { padding:34px 26px 30px!important; }
 .lipo-spa-hero > .elementor-container > .elementor-column:last-child > .elementor-widget-wrap { padding:0!important; }
 .lipo-spa-hero h1 { font-size:38px!important; }
 .lipo-spa-hero .lipo-spa-hero-photo img { min-height:0; height:350px; aspect-ratio:auto; transform:none; }
 .lipo-spa-hero .elementor-widget-the7_button_widget { margin:26px 0 18px!important; }
 .lipo-spa-hero .elementor-widget-the7_button_widget a { padding:14px 16px!important; gap:10px; }
 .lipo-spa-hosts { margin-top:24px; }
 .lipo-spa-features { grid-template-columns:1fr; padding:24px 8px; }
 .lipo-spa-feature { padding:24px 4px; border:0; border-bottom:1px solid var(--lipo-line); }
 .lipo-spa-feature h2 { font-size:25px!important; }
 .lipo-spa-story { padding:30px 8px!important; }
 .lipo-spa-story > .elementor-container { gap:34px; }
 .lipo-spa-story h2 { font-size:34px!important; }
 .lipo-spa-faq { grid-template-columns:1fr; gap:26px; margin:28px 8px 44px; padding-top:32px; }
 .lipo-spa-faq h2 { font-size:30px!important; }
 .lipo-spa-page .lipo-endcap { margin:0!important; }
}
/* Progressive enhancement: no hidden content unless the observer is running. */
@media(prefers-reduced-motion:no-preference) {
 .lipo-reveal-pending { opacity:0; transform:translateY(18px); }
 .lipo-reveal-ready { transition:opacity .65s ease,transform .65s cubic-bezier(.2,.7,.2,1); }
}
@media(prefers-reduced-motion:reduce) {
 .lipo-reveal-pending { opacity:1!important; transform:none!important; }
 .lipo-spa-hero .lipo-spa-hero-photo img { transform:none!important; }
 :is(.lipo-polished .elementor-widget-the7_button_widget a,.lipo-finder .lf-primary,.lipo-finder .lf-secondary,.lipo-modern-header .e-n-menu-title-container,.lipo-card-grid .the7-icon-box-grid) { transition:none!important; transform:none!important; }
 .lipo-polished .elementor-widget-the7_button_widget a::after { transition:none!important; transform:none!important; }
}
