.pwf-active{--pwf-red:#c9202e;--pwf-ink:#18252a;--pwf-muted:#53656a;--pwf-border:#d9e3e2}
.pwf-active.home [data-elementor-type="wp-page"]>.elementor-element:first-child{display:block!important}
.pwf-active .pwf-offer{background:#f4f8f7;color:var(--pwf-ink);padding:64px max(24px,calc((100% - 1180px)/2)) 46px;font-family:Arial,sans-serif}
.pwf-offer *{box-sizing:border-box}.pwf-offer__grid{display:grid;grid-template-columns:1.1fr .9fr;gap:62px;align-items:center}
.pwf-offer .pwf-kicker{font-size:12px;letter-spacing:.15em;font-weight:800;color:var(--pwf-red);margin:0 0 22px}
.pwf-offer h1{font-size:clamp(38px,4.5vw,65px)!important;letter-spacing:-.045em;line-height:1.05!important;color:var(--pwf-ink)!important;margin:0 0 24px!important;font-weight:800!important;text-transform:none!important}
.pwf-offer h1 span{color:var(--pwf-red)}.pwf-lead{font-size:18px;line-height:1.65;color:var(--pwf-muted);max-width:560px}
.pwf-price{display:grid;gap:8px;border-top:1px solid var(--pwf-border);padding-top:22px;margin:28px 0}.pwf-price strong{font-size:35px}.pwf-price span{font-size:15px;color:var(--pwf-muted)}
.pwf-buttons{display:flex;gap:12px;flex-wrap:wrap}.pwf-active .pwf-button{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:14px 20px;border:1px solid var(--pwf-red);border-radius:10px;background:var(--pwf-red);color:white!important;font:700 15px/1.35 Arial,sans-serif;text-decoration:none!important;cursor:pointer;text-align:center}
.pwf-active .pwf-button--light{background:#fff;color:var(--pwf-ink)!important;border-color:var(--pwf-border)}.pwf-button:hover{filter:brightness(.95)}.pwf-button:focus-visible{outline:3px solid #167b80;outline-offset:3px}.pwf-button:disabled{opacity:.6;cursor:wait}
.pwf-address{font-size:14px;line-height:1.7;color:var(--pwf-muted);margin-top:22px}.pwf-address a{color:var(--pwf-ink);text-decoration:underline}
.pwf-photo{margin:0;position:relative}.pwf-photo img{width:100%;height:490px;object-fit:cover;object-position:center 40%;border-radius:24px;display:block}.pwf-photo figcaption{font-size:11px;color:var(--pwf-muted);padding-top:10px}
.pwf-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:40px}.pwf-steps article{padding:26px;background:white;border:1px solid var(--pwf-border);border-radius:16px}.pwf-steps span{color:var(--pwf-red);font-size:12px;font-weight:800;letter-spacing:.08em}.pwf-offer h2{font-size:21px!important;line-height:1.25!important;color:var(--pwf-ink)!important;font-weight:700!important;text-transform:none!important;margin:12px 0!important}.pwf-steps p,.pwf-help p{font-size:15px;line-height:1.65;color:var(--pwf-muted);margin:0}
.pwf-help{display:flex;align-items:center;gap:28px;justify-content:space-between;margin-top:22px;padding:24px;background:#e7f0ee;border-radius:16px}.pwf-help>div{max-width:700px}.pwf-help .pwf-button{flex-shrink:0}.pwf-other{font-size:14px;margin:25px 0 0;color:var(--pwf-muted)}.pwf-other a{color:var(--pwf-ink);text-decoration:underline}
.pwf-contact{max-width:900px;padding:16px 0 35px;color:var(--pwf-ink);font:16px/1.6 Arial,sans-serif}.pwf-contact-form{display:grid;gap:20px;background:#fff;border:1px solid var(--pwf-border);border-radius:18px;padding:28px}.pwf-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.pwf-contact-form label{display:grid;gap:8px;font-size:15px;font-weight:700}.pwf-contact-form input:not([type="checkbox"]),.pwf-contact-form textarea,.pwf-contact-form select{width:100%;background:#f8faf9!important;color:#18252a!important;border:1px solid #bbc9c7!important;border-radius:8px;padding:13px;font:16px/1.4 Arial,sans-serif}.pwf-contact-form .pwf-consent{display:flex;align-items:flex-start;font-weight:400;font-size:14px}.pwf-consent input{margin-top:6px}.pwf-contact-form .pwf-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.pwf-small{font-size:13px;margin:0;color:#53656a}.pwf-contact a{color:#a81925;text-decoration:underline}.pwf-status{padding:18px;background:#e5f0ec;border-left:4px solid #26765a;border-radius:8px}.pwf-form-message{margin:0}.pwf-contact-form .pwf-button{justify-self:start}
/* The single existing joint calendar remains the booking system. */
.pwf-active .wv-choice>.wv-tabs,.pwf-active [data-wv-panel="visage"]{display:none!important}.pwf-active [data-wv-panel="training"]{display:block!important}
.pwf-active .pravilo-native-booking{background:#f5f8f7!important;color:#18252a!important}
.pwf-active .pravilo-native-booking .pravilo-native-booking__summary h2,.pwf-active .pravilo-native-booking .pravilo-native-booking__summary p,.pwf-active .pravilo-native-booking .pravilo-native-booking__benefits,.pwf-active .pravilo-native-booking .pravilo-native-booking__contact{color:#18252a!important}
.pwf-active .pravilo-native-booking .pravilo-native-booking__summary h2 span{color:#c9202e!important}
.pwf-active .pravilo-native-booking .pravilo-booking{background:#fff!important;color:#18252a!important;border:1px solid #d9e3e2!important;box-shadow:0 14px 40px rgba(24,37,42,.06)!important}
.pwf-active .pravilo-native-booking .pravilo-booking h2,.pwf-active .pravilo-native-booking .pravilo-booking__label{color:#18252a!important}
.pwf-active .pravilo-native-booking .pravilo-booking__intro{color:#53656a!important}
.pwf-active .pravilo-native-booking .pravilo-booking__notice{background:#f4f8f7!important;color:#18252a!important;border-color:#d9e3e2!important;border-left-color:#c9202e!important}
.pwf-active .pravilo-native-booking .pravilo-booking__slot,.pwf-active .pravilo-native-booking .pravilo-booking__service-card{background:#f8faf9!important;color:#18252a!important;border-color:#d3dfdc!important}
.pwf-active .pravilo-native-booking .pravilo-booking__slot span,.pwf-active .pravilo-native-booking .pravilo-booking__service-card>span,.pwf-active .pravilo-native-booking .pravilo-booking__service-card small{color:#53656a!important}
.pwf-active .pravilo-native-booking .pravilo-booking__slot.is-selected,.pwf-active .pravilo-native-booking .pravilo-booking__service.is-selected .pravilo-booking__service-card{background:#fff0f0!important;border-color:#c9202e!important}
.pwf-active .pravilo-native-booking .pravilo-booking input:not([type="checkbox"]):not([type="radio"]),.pwf-active .pravilo-native-booking .pravilo-booking textarea{background:#fff!important;color:#18252a!important;border-color:#b8c8c4!important;color-scheme:light!important}
.pwf-active .pravilo-booking__consent a{color:#a81925!important;text-decoration:underline!important}
#termin-buchen,#pwf-anfrage{scroll-margin-top:30px}
@media(max-width:800px){.pwf-active .pwf-offer{padding:36px 20px}.pwf-offer__grid{grid-template-columns:1fr;gap:28px}.pwf-offer h1{font-size:42px!important}.pwf-photo img{height:360px;object-position:center 42%}.pwf-steps{grid-template-columns:1fr;gap:12px;margin-top:24px}.pwf-steps article{padding:20px}.pwf-help{display:block;padding:20px}.pwf-help .pwf-button{margin-top:18px}.pwf-buttons .pwf-button{width:100%}.pwf-form-grid{grid-template-columns:1fr}.pwf-contact-form{padding:20px}.pwf-contact{padding:14px 5px}.pwf-contact-form .pwf-button{width:100%}.pwf-lead{font-size:17px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}}

.pwf-active .pwf-imprint{background:#fff;color:#18252a!important;padding:24px;border-radius:12px}.pwf-active .pwf-imprint p,.pwf-active .pwf-imprint h2{color:#18252a!important}.pwf-active .pwf-imprint a{color:#a81925!important;text-decoration:underline}

/* 1.0.1: explicit child colors override the old dark sidebar styles. */
.pwf-active .pravilo-native-booking .pravilo-native-booking__benefits li,
.pwf-active .pravilo-native-booking .pravilo-native-booking__contact p,
.pwf-active .pravilo-native-booking .pravilo-native-booking__contact strong,
.pwf-active .pravilo-native-booking .pravilo-native-booking__offer p{color:#18252a!important}
.pwf-active .pravilo-native-booking .pravilo-native-booking__contact{border-top-color:#b8c8c4!important}
.pwf-active .pravilo-native-booking .pravilo-native-booking__contact a{color:#18252a!important;background:#fff!important;border-color:#b8c8c4!important}
.pwf-active .pravilo-native-booking .pravilo-native-booking__contact a:hover{color:#18252a!important;background:#e7f0ee!important;border-color:#53656a!important}
.pwf-active .pravilo-native-booking .pravilo-native-booking__contact a:focus-visible{outline:3px solid #167b80;outline-offset:3px}
.pwf-active .pravilo-native-booking .pravilo-native-booking__offer{background:#fff!important;border-color:#d9e3e2!important;box-shadow:0 12px 32px rgba(24,37,42,.07)!important}
.pwf-active .pravilo-native-booking .pravilo-native-booking__offer:after{display:none!important}
.pwf-active .pravilo-native-booking .pravilo-native-booking__offer>span,
.pwf-active .pravilo-native-booking .pravilo-native-booking__offer strong,
.pwf-active .pravilo-native-booking .pravilo-native-booking__offer strong small{color:#b71c2a!important}

/* 1.0.2: keep legacy Elementor text lists in normal document flow. */
.pwf-active [data-elementor-type="wp-page"] .elementor-widget-icon-list .elementor-widget-container{height:auto!important;max-height:none!important;overflow:visible!important}
.pwf-active [data-elementor-type="wp-page"] .elementor-widget-icon-list ul.elementor-icon-list-items{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:12px!important;height:auto!important;max-height:none!important;margin:0!important;padding:0!important;list-style:none!important}
.pwf-active [data-elementor-type="wp-page"] .elementor-widget-icon-list li.elementor-icon-list-item{display:flex!important;align-items:flex-start!important;position:relative!important;top:auto!important;left:auto!important;bottom:auto!important;float:none!important;transform:none!important;width:100%!important;height:auto!important;min-height:0!important;max-height:none!important;margin:0!important;padding:0!important;line-height:1.5!important}
.pwf-active [data-elementor-type="wp-page"] .elementor-widget-icon-list .elementor-icon-list-text{display:block!important;position:static!important;height:auto!important;max-height:none!important;line-height:1.5!important;font-size:clamp(15px,1.15vw,20px)!important;white-space:normal!important;overflow-wrap:anywhere!important;word-break:normal!important;flex:1;min-width:0}
.pwf-active [data-elementor-type="wp-page"] .elementor-widget-icon-list .elementor-icon-list-icon{display:inline-flex!important;align-items:center!important;flex:0 0 auto!important;line-height:1.5!important;margin-top:3px!important}

/* 1.0.3: show the supplied opening flyer in full, including on phones. */
.pwf-active .pwf-photo--flyer{width:100%;max-width:520px;margin:0 auto}
.pwf-active .pwf-photo--flyer .pwf-flyer-link{display:block;position:relative;overflow:hidden;border-radius:18px;background:#050505;text-decoration:none!important;box-shadow:0 18px 45px rgba(24,37,42,.16)}
.pwf-active .pwf-photo--flyer img{display:block;width:100%!important;height:auto!important;max-height:none!important;object-fit:contain!important;border-radius:0!important}
.pwf-active .pwf-photo--flyer .pwf-flyer-domain{position:absolute;inset:auto 0 0;height:5.4%;display:flex;align-items:center;justify-content:center;background:#050505;color:#fff!important;font:italic 500 clamp(13px,1.6vw,23px)/1.2 Arial,sans-serif;text-decoration:none!important}
.pwf-active .pwf-photo--flyer .pwf-flyer-link:focus-visible{outline:3px solid #167b80;outline-offset:5px}
