:root{--blue:#0796d6;--navy:#062f5b;--yellow:#ffcc05;--pale:#edf8fd;--ink:#17355d;--line:#d9edf8;--radius:20px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:Arial,sans-serif;font-size:16px;line-height:1.5}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.08}h2{font-size:clamp(1.9rem,3vw,2.65rem)}.site-shell{width:min(1320px,calc(100% - 64px));margin:auto}
.site-header{position:sticky;z-index:20;top:0;background:#fff;border-bottom:1px solid #eef5f9}.header-inner{min-height:80px;display:flex;align-items:center;gap:28px}.brand{display:inline-flex;align-items:center;flex-shrink:0}.brand-logo{display:block;width:210px;height:auto}.brand--footer .brand-logo{filter:invert(1);mix-blend-mode:screen}.main-navigation{margin-left:auto}.main-navigation ul,.footer-links{display:flex;gap:28px;padding:0;margin:0;list-style:none}.main-navigation a{font-size:.9rem;font-weight:700}.main-navigation a[aria-current="page"]{color:var(--blue);border-bottom:2px solid var(--blue);padding-bottom:7px}
.main-navigation .onepage-navigation{display:grid;gap:4px;margin:10px 0 0;padding:0 0 0 12px;border-left:2px solid var(--line);list-style:none}.main-navigation .onepage-navigation a{display:block;padding:2px 0;color:#40648c;font-size:.76rem;font-weight:600;line-height:1.25}.main-navigation .onepage-navigation a:hover,.main-navigation .onepage-navigation a:focus-visible{color:var(--blue)}
.button{display:inline-flex;justify-content:center;gap:9px;align-items:center;padding:13px 23px;border-radius:999px;border:2px solid transparent;font-weight:700;transition:transform .2s,background-color .2s}.button:hover,.button:focus-visible{transform:translateY(-2px)}.button--phone,.button--primary{background:var(--yellow);color:var(--navy)}.button--outline{border-color:var(--blue);color:var(--blue);background:#fff}.header-contact{font-size:.86rem;white-space:nowrap}
.hero{overflow:hidden;background:linear-gradient(100deg,#fff 0%,#edf9fe 51%,#d8f1fc 100%)}.hero-grid{display:grid;grid-template-columns:1fr 1fr;min-height:460px;align-items:center}.hero-copy{padding:66px 12px 66px 0;position:relative;z-index:1}.eyebrow{margin-bottom:8px;color:#40648c;font-weight:700;font-size:.73rem;letter-spacing:.09em;text-transform:uppercase}h1{margin-bottom:16px;color:var(--navy);font-size:clamp(3rem,5vw,5rem);letter-spacing:-.055em}h1 em{color:var(--blue);font-style:normal}.hero-lead{font-weight:700;font-size:1.15rem;margin-bottom:3px}.button-row{display:flex;flex-wrap:wrap;gap:13px;margin-top:25px}.placeholder-visual{position:relative;display:grid;min-height:330px;place-items:center;overflow:hidden;background:radial-gradient(circle at 75% 78%,rgba(255,204,5,.88) 0 8%,transparent 9%),radial-gradient(circle at 15% 20%,#fff 0 14%,transparent 14%),linear-gradient(135deg,#bfe7f8,#eaf8fd);color:var(--navy);text-align:center}.placeholder-visual:before,.placeholder-visual:after{content:"";position:absolute;border:3px solid rgba(7,150,214,.2);border-radius:50%}.placeholder-visual:before{width:260px;height:260px}.placeholder-visual:after{width:380px;height:380px}.placeholder-visual span{z-index:1;font-size:1.35rem;font-weight:700;transform:rotate(-6deg)}.placeholder-visual small{font-size:.75rem;font-weight:400}
.trust-bar{background:#f5fbfe;border-block:1px solid var(--line)}.trust-list{display:grid;grid-template-columns:repeat(4,1fr)}.trust-list>div{display:flex;gap:12px;align-items:center;padding:17px 20px;border-right:1px solid var(--line)}.trust-list>div:last-child{border:0}.trust-list span{color:var(--blue);font-size:1.6rem}.trust-list p{margin:0;font-size:.8rem;line-height:1.35}.trust-list strong{color:var(--navy)}.site-section{padding:78px 0}.services h2{margin-bottom:29px}.service-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:13px}.service-card{min-height:245px;padding:22px 18px;border-radius:var(--radius);background:linear-gradient(145deg,#f7fcff,#e7f6fd)}.service-card--warm{background:linear-gradient(145deg,#fffdf6,#fff5d2)}.service-icon{display:grid;place-items:center;width:45px;height:45px;margin-bottom:18px;border-radius:50%;background:#fff;color:var(--blue);font-size:1.45rem;box-shadow:0 3px 12px rgba(6,47,91,.1)}.service-card h3{margin-bottom:7px;font-size:1rem}.service-card p{font-size:.86rem;line-height:1.38}.service-card a,.text-link{color:var(--blue);font-weight:700;font-size:.87rem}
.split-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:48px;align-items:center}.team-visual{min-height:285px;border-radius:var(--radius)}.split-grid p:not(.eyebrow){max-width:600px}.steps{padding-top:20px}.steps>div{padding:38px;border-radius:var(--radius);background:var(--pale)}.step-list{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;padding:0;list-style:none}.step-list li{position:relative;padding-left:56px}.step-list span{display:grid;position:absolute;left:0;top:0;width:36px;height:36px;place-items:center;border-radius:50%;background:var(--blue);color:#fff;font-weight:700}.step-list h3{margin-bottom:6px;font-size:1rem}.step-list p{margin:0;font-size:.84rem}.content-area:empty{display:none}.content-area{padding:0 0 42px}.contact-cta{margin:0 0 44px;color:#fff}.cta-inner{display:flex;justify-content:space-between;align-items:center;gap:30px;padding:26px 38px;border-radius:var(--radius);background:linear-gradient(110deg,#007fc5,#0796d6)}.cta-inner h2{margin-bottom:5px;font-size:1.45rem}.cta-inner p{margin:0;font-size:.88rem}.cta-inner .button{flex-shrink:0}
.site-footer{padding:44px 0 18px;background:var(--navy);color:#fff}.footer-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:50px}.brand--footer{color:#fff}.brand--footer .brand-copy small{color:#bdeaff}.footer-grid h2{margin-bottom:13px;font-size:1rem}.footer-grid p,.footer-links{color:#d6e9f6;font-size:.88rem}.footer-links{display:grid;gap:6px}.contact-placeholder{color:#ffdc55!important;font-weight:700}.footer-bottom{display:flex;justify-content:space-between;margin-top:34px;padding-top:15px;border-top:1px solid rgba(255,255,255,.18);color:#b4d4e9;font-size:.78rem}.footer-bottom span:last-child{display:flex;gap:16px}.menu-toggle,.mobile-contact{display:none}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.editorial-zone:has(> .frame) > .section-default{display:none}.frame .text-start,.frame .text-align-left{text-align:left}.frame .text-center,.frame .text-align-center{text-align:center}.frame .text-end,.frame .text-right,.frame .text-align-right{text-align:right}.frame .text-justify,.frame .text-align-justify{text-align:justify}.frame-pflege-card{padding:28px;border-radius:var(--radius);background:#fff;box-shadow:0 8px 26px rgba(6,47,91,.1)}.frame-pflege-highlight{padding:34px;border-radius:var(--radius);background:linear-gradient(135deg,#007fc5,#0796d6);color:#fff}.frame-pflege-soft{padding:30px;border-radius:var(--radius);background:var(--pale)}
.services-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;align-items:start}.services-grid>.frame{position:relative;min-height:100%;margin:0;padding:30px;overflow:hidden;border:1px solid rgba(7,150,214,.13);border-radius:var(--radius);background:linear-gradient(145deg,#fff 0%,#f2faff 100%);box-shadow:0 10px 28px rgba(6,47,91,.07);transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}.services-grid>.frame:nth-child(even){background:linear-gradient(145deg,#fffef9 0%,#fff8de 100%);border-color:rgba(255,204,5,.33)}.services-grid>.frame:before{position:absolute;top:0;left:30px;right:30px;height:4px;content:"";border-radius:0 0 999px 999px;background:var(--blue)}.services-grid>.frame:nth-child(even):before{background:var(--yellow)}.services-grid>.frame h2,.services-grid>.frame h3{margin-bottom:12px;color:var(--navy);font-size:clamp(1.2rem,1.8vw,1.5rem)}.services-grid>.frame p:last-child{margin-bottom:0}.services-grid>.frame ul,.services-grid>.frame ol{margin:0 0 1em;padding-left:1.2em;list-style-position:outside}.services-grid>.frame li{margin-left:0!important}.services-grid>.frame li+li{margin-top:.4em}.services-grid>.frame.frame-pflege-full{grid-column:1/-1;overflow-x:auto;overflow-y:hidden}.services-grid>.frame.frame-pflege-full img{max-width:100%;height:auto}.services-grid>.frame.frame-pflege-full table{width:100%;border-collapse:collapse}.services-grid>.frame.frame-pflege-full th,.services-grid>.frame.frame-pflege-full td{padding:.8rem 1rem;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.services-grid>.frame.frame-pflege-full th{color:var(--navy);background:rgba(7,150,214,.07)}.services-grid>.frame.frame-pflege-highlight{border-color:transparent;background:linear-gradient(135deg,#007fc5,#0796d6);box-shadow:0 14px 32px rgba(0,127,197,.22)}.services-grid>.frame.frame-pflege-highlight:before{background:var(--yellow)}.services-grid>.frame.frame-pflege-highlight h2,.services-grid>.frame.frame-pflege-highlight h3{color:#fff}@media(hover:hover){.services-grid>.frame:hover{z-index:1;transform:translateY(-4px);border-color:rgba(7,150,214,.3);box-shadow:0 18px 36px rgba(6,47,91,.13)}}
.services-grid>.frame.frame-type-header{grid-column:1/-1;min-height:0;padding:20px 0 17px;overflow:visible;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;box-shadow:none}.services-grid>.frame.frame-type-header:before{top:0;left:0;right:auto;width:78px;background:var(--yellow)}.services-grid>.frame.frame-type-header h1,.services-grid>.frame.frame-type-header h2,.services-grid>.frame.frame-type-header h3{margin:12px 0 0;color:var(--navy);font-size:clamp(2rem,3.2vw,3.15rem);letter-spacing:-.035em}.services-grid>.frame.frame-type-header:hover{transform:none;border-color:var(--line);box-shadow:none}
@media(max-width:980px){.header-inner{gap:16px}.main-navigation ul{gap:16px}.header-contact{padding-inline:16px}.service-grid{grid-template-columns:repeat(3,1fr)}.services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-card{min-height:215px}}@media(max-width:760px){body{padding-bottom:58px}.site-shell{width:min(100% - 32px,600px)}.header-inner{min-height:72px;justify-content:space-between}.brand-logo{width:180px}.header-contact{display:none}.menu-toggle{display:grid;width:42px;height:42px;gap:5px;place-content:center;border:0;border-radius:8px;background:transparent}.menu-toggle span:not(.visually-hidden){display:block;width:24px;height:3px;border-radius:4px;background:var(--blue)}.main-navigation{display:none;position:absolute;top:72px;left:0;right:0;padding:16px;background:#fff;box-shadow:0 10px 20px rgba(6,47,91,.1)}.main-navigation.is-open{display:block}.main-navigation ul{display:grid;gap:0}.main-navigation a{display:block;padding:13px}.main-navigation a[aria-current="page"]{padding-bottom:13px;border-bottom:0;background:var(--pale)}.hero-grid,.split-grid{grid-template-columns:1fr}.hero-copy{padding:48px 0 28px}.hero h1{font-size:clamp(2.75rem,13vw,4rem)}.hero-visual{min-height:245px;margin-inline:-16px}.button-row{display:grid}.button{width:100%}.trust-list{grid-template-columns:repeat(2,1fr)}.trust-list>div{padding:14px 4px;border-right:0}.trust-list p{font-size:.68rem}.trust-list span{font-size:1.25rem}.site-section{padding:53px 0}.service-grid{grid-template-columns:1fr;gap:11px}.services-grid{grid-template-columns:1fr;gap:16px}.service-card{min-height:0;padding:19px}.service-icon{float:left;margin:0 14px 12px 0}.service-card h3{padding-top:5px}.service-card p{clear:both}.team-visual{min-height:220px}.steps{padding-top:0}.steps>div{padding:28px 20px}.step-list{grid-template-columns:1fr;gap:22px}.cta-inner,.footer-bottom{display:block}.cta-inner{padding:26px 23px}.cta-inner .button{margin-top:14px}.footer-grid{grid-template-columns:1fr;gap:27px}.footer-bottom span:last-child{margin-top:9px}.mobile-contact{display:grid;position:fixed;z-index:30;bottom:0;left:0;right:0;grid-template-columns:1fr 1fr;background:var(--navy);box-shadow:0 -3px 12px rgba(6,47,91,.2)}.mobile-contact a{padding:15px;color:#fff;text-align:center;font-weight:700}.mobile-contact a:last-child{background:var(--yellow);color:var(--navy)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition:none!important}}

/* Hauptnavigation: an allen Bildschirmbreiten als aufklappbares Menü unter dem Logo. */
.header-inner{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:auto auto;align-items:center;gap:10px 28px;min-height:180px;padding:20px 0}.header-inner .brand{grid-column:1;grid-row:1}.header-inner .brand-logo{width:420px}.menu-toggle{display:grid;grid-column:1;grid-row:2;width:46px;height:42px;gap:5px;place-content:center;padding:0;border:0;border-radius:9px;background:var(--pale);cursor:pointer}.menu-toggle:hover,.menu-toggle:focus-visible{background:#d9f1fb}.menu-toggle span:not(.visually-hidden){display:block;width:25px;height:3px;border-radius:4px;background:var(--blue)}.main-navigation{display:none;position:absolute;top:calc(100% - 1px);left:0;width:min(460px,100%);margin:0;padding:12px;background:#fff;border:1px solid var(--line);border-radius:0 0 var(--radius) var(--radius);box-shadow:0 14px 30px rgba(6,47,91,.14)}.main-navigation.is-open{display:block}.main-navigation ul{display:grid;gap:0}.main-navigation>ul>li+li{border-top:1px solid var(--line)}.main-navigation a{display:block;padding:12px 13px;border-radius:9px;font-size:.95rem}.main-navigation a:hover,.main-navigation a:focus-visible{background:var(--pale)}.main-navigation a[aria-current="page"]{padding:8px 13px;border-bottom:0;background:var(--pale)}.main-navigation .onepage-navigation{margin:10px 0 8px 13px;padding:0 0 0 13px}.header-contact{grid-column:2;grid-row:1 / span 2;align-self:center}
@media(max-width:980px){.header-inner .brand-logo{width:360px}}@media(max-width:760px){.header-inner{min-height:150px;gap:8px 16px;padding:16px 0}.header-inner .brand-logo{width:min(300px,calc(100vw - 96px))}.menu-toggle{width:44px;height:40px}.main-navigation{width:100%;padding:10px}.header-contact{display:none}}

/* Onepage-Ziele bleiben beim Scrollen vollständig unterhalb des festen Headers sichtbar. */
.frame[id]{scroll-margin-top:var(--sticky-header-offset,210px)}@media(max-width:760px){.frame[id]{scroll-margin-top:var(--sticky-header-offset,175px)}}

/* Header Only bildet in jedem Grid die Abschnittsüberschrift. */
.frame.frame-type-header{position:relative;min-height:0;padding:20px 0 17px;overflow:visible;border:0;border-bottom:1px solid var(--line);border-radius:0;background:transparent;box-shadow:none}.frame.frame-type-header:before{position:absolute;top:0;left:0;right:auto;width:78px;height:4px;content:"";border-radius:0 0 999px 999px;background:var(--yellow)}.frame.frame-type-header h1,.frame.frame-type-header h2,.frame.frame-type-header h3{margin:12px 0 0;color:var(--navy);font-size:clamp(2rem,3.2vw,3.15rem);letter-spacing:-.035em}.frame.frame-type-header:hover{transform:none;border-color:var(--line);box-shadow:none}
.about-header:has(> .frame){margin-bottom:42px}
.about-pairs{display:grid;gap:24px}.about-pair{display:grid;grid-template-columns:1fr 1.2fr;gap:48px;align-items:start;padding:28px;border:1px solid var(--line);border-radius:var(--radius);background:linear-gradient(145deg,#fff 0%,#f7fcff 100%)}.about-pair__media,.about-pair__text{min-width:0}.about-pair__media .ce-image,.about-pair__media .ce-gallery,.about-pair__media .ce-outer,.about-pair__media .ce-inner,.about-pair__media figure.image{margin-left:0;margin-right:0;text-align:left}.about-pair__media .ce-row{justify-content:flex-start}.about-pair__media img{display:block;margin-left:0;margin-right:0;max-width:100%;height:auto}.about-pair__text .frame,.about-pair__media .frame{margin:0}@media(max-width:760px){.about-pair{grid-template-columns:1fr;gap:24px;padding:22px}}
.about-pair__media figure.image{overflow:hidden;border:1px solid rgba(7,150,214,.18);border-radius:16px;background:#fff;box-shadow:0 12px 22px -16px rgba(6,47,91,.22);transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease}.about-pair__media figure.image img{border-radius:15px;transition:transform .3s ease}@media(hover:hover){.about-pair__media figure.image:hover{transform:translateY(-4px);border-color:rgba(7,150,214,.42);box-shadow:0 20px 30px -18px rgba(6,47,91,.3)}.about-pair__media figure.image:hover img{transform:scale(1.025)}}@media(prefers-reduced-motion:reduce){.about-pair__media figure.image,.about-pair__media figure.image img{transition:none}}

/* Hero: Bild über die gesamte Breite, redaktioneller Text als lesbare Karte darüber. */
.hero{position:relative;isolation:isolate;min-height:570px;background:var(--pale)}.hero-visual{position:absolute;z-index:0;inset:0;overflow:hidden}.hero-visual>.frame,.hero-visual .ce-image,.hero-visual .ce-gallery,.hero-visual .ce-outer,.hero-visual .ce-inner,.hero-visual .ce-row,.hero-visual .ce-column,.hero-visual figure.image{width:100%;height:100%;margin:0}.hero-visual figure.image{overflow:hidden}.hero-visual img{display:block;width:100%!important;height:100%!important;max-width:none!important;object-fit:cover}.hero-overlay{position:relative;z-index:1;display:flex;align-items:center;min-height:570px;padding:42px 0 126px}.hero-copy{width:min(760px,100%);margin:0 auto;padding:38px 46px;transform:translateY(-42px);text-align:center;border:1px solid rgba(255,255,255,.8);border-radius:var(--radius);background:rgba(255,255,255,.25);box-shadow:0 16px 38px rgba(6,47,91,.2);backdrop-filter:blur(8px)}.hero-copy:not(:has(.frame)){display:none}.hero-copy .button-row{justify-content:center}.hero-copy .frame:last-child>*:last-child{margin-bottom:0}@media(max-width:760px){.hero,.hero-overlay{min-height:500px}.hero-overlay{align-items:flex-start;padding:76px 0 54px}.hero-copy{padding:27px 23px;transform:translateY(0)}.hero-copy .button-row{display:flex}.hero-copy .button{width:auto}}
@media(max-width:900px){.about-pair{grid-template-columns:1fr;gap:24px;padding:22px}}

/* Contact form: native TYPO3 fields, two columns with a calm white card. */
.contact-cta .cta-inner {display:block}
.contact-cta .frame-type-form_formframework {width:100%;max-width:1100px;margin-inline:auto;padding:clamp(20px,3vw,40px);border-radius:22px;background:#fff;color:#183f4b;box-shadow:0 16px 44px rgba(13,54,67,.12)}
.sonnenblume-contact-form {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 24px;text-align:left}
.sonnenblume-contact-form > div:first-child {display:none}
.sonnenblume-contact-form .form-group {min-width:0;margin:0}
.sonnenblume-contact-form .form-group:has(textarea),.sonnenblume-contact-form .form-group:has(.form-check) {grid-column:1/-1}
.sonnenblume-contact-form .form-label {display:block;margin-bottom:7px;font-weight:600}
.sonnenblume-contact-form input:not([type=checkbox]):not([type=hidden]),.sonnenblume-contact-form textarea {width:100%;min-width:0;padding:12px 15px;border:1px solid #bdcfd4;border-radius:10px;background:#f9fbfc;color:#183f4b;font:inherit;line-height:1.5}
.sonnenblume-contact-form textarea {min-height:150px;resize:vertical}
.sonnenblume-contact-form input:focus-visible,.sonnenblume-contact-form textarea:focus-visible,.contact-captcha-refresh:focus-visible {outline:3px solid #72cce5;outline-offset:2px}
.sonnenblume-contact-form .form-check-label {display:flex;align-items:flex-start;gap:10px;font-weight:400;line-height:1.6}
.sonnenblume-contact-form input[type=checkbox] {width:19px;height:19px;flex-shrink:0;margin-top:4px;accent-color:#087fa1}
.sonnenblume-contact-form .contact-captcha {display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.sonnenblume-contact-form .contact-captcha input {max-width:145px}
.contact-captcha-image {border-radius:8px;width:180px;height:56px;object-fit:contain}
.contact-captcha-refresh {border:1px solid #bdcfd4;border-radius:10px;background:#f1f8fa;color:#183f4b;width:48px;height:48px;font-size:28px;cursor:pointer}
.sonnenblume-contact-form .form-group:has(.contact-captcha) {grid-column:1}
.sonnenblume-contact-form .actions {grid-column:2;align-self:center;display:flex;justify-content:stretch}
.sonnenblume-contact-form .form-navigation,.sonnenblume-contact-form .btn-toolbar,.sonnenblume-contact-form .btn-group {width:100%;display:block}
.sonnenblume-contact-form .btn-primary {width:100%;padding:13px 24px;border:0;border-radius:10px;background:#008dba;color:white;font:inherit;font-weight:600;cursor:pointer;transition:background .2s}
.sonnenblume-contact-form .btn-primary:hover {background:#006e94}
.sonnenblume-contact-form .error {color:#a12525;margin-top:6px}
.sonnenblume-contact-form .has-error input,.sonnenblume-contact-form .has-error textarea {border-color:#a12525}
.sonnenblume-contact-form .form-text,.sonnenblume-contact-form small {font-size:.875rem}
@media(max-width:760px) {.sonnenblume-contact-form {grid-template-columns:minmax(0,1fr)}.sonnenblume-contact-form .actions {grid-column:1}.contact-cta .frame-type-form_formframework {padding:20px 16px}.sonnenblume-contact-form .contact-captcha {gap:8px}}

/* Footer logo: 25% larger at both existing responsive sizes. */
.brand--footer .brand-logo {width:262.5px;max-width:100%;height:auto}
@media (max-width:760px) {.brand--footer .brand-logo {width:225px}}

/* Online booking: full-width content and responsive meetergo integration. */
.booking-page {padding-block:clamp(32px,5vw,64px)}
.booking-page .frame-type-pflege_booking {width:100%;max-width:none;margin-inline:0}
.booking-page .frame-type-pflege_booking > header {margin-bottom:20px}
.booking-intro {max-width:none;margin-bottom:28px;line-height:1.75}
.booking-widget-shell {padding:clamp(12px,2vw,24px);border:1px solid #dce8ed;border-radius:22px;background:#fff;box-shadow:0 12px 36px rgba(11,48,73,.08);min-width:0}
.booking-widget-shell .meetergo-iframe {width:100%;min-width:0;min-height:700px}
.booking-widget-shell iframe {display:block;width:100%;max-width:100%;border:0;border-radius:14px}
.booking-fallback {margin-top:18px;font-size:.875rem;color:#496575}
.booking-fallback a {color:#007caf;text-decoration:underline;text-underline-offset:3px}
.footer-booking p {line-height:1.65}
.footer-booking .button {display:inline-flex;margin-block:12px;white-space:normal;text-align:center}
.footer-contact-link {text-decoration:underline;text-underline-offset:3px}
@media(max-width:760px) {.booking-widget-shell {padding:0;border-radius:14px}.booking-widget-shell .meetergo-iframe {min-height:760px}.booking-page {padding-block:28px}.booking-intro {margin-bottom:20px}}

.split-grid.split-grid--single {grid-template-columns:minmax(0,1fr)}

/* Direct booking calendars report their height to the integration. */
.booking-widget-shell .meetergo-iframe {min-height:0}
.booking-option + .booking-option {margin-top:clamp(32px,5vw,56px)}
.booking-option > h2 {margin-bottom:20px}

/* Contact section: heading on the page, with a separate subtle form card. */
.contact-cta {color:var(--navy)}
.contact-cta .cta-inner {padding:0;border-radius:0;background:transparent}
.contact-cta .cta-inner > .frame-type-header {margin-bottom:28px}
.contact-cta .frame-type-form_formframework {max-width:none;margin-inline:0;border:1px solid #dce8ed;background:linear-gradient(145deg,#fff 0%,#f5fbfd 100%);box-shadow:0 10px 30px rgba(11,48,73,.06)}
.contact-cta .cta-inner p {font-size:inherit;line-height:1.65}
@media(max-width:760px) {.contact-cta .cta-inner > .frame-type-header {margin-bottom:20px}}

/* Compact header with telephone, contact and booking actions. */
.header-inner {min-height:0;padding-block:12px;gap:8px 24px}
.header-actions {grid-column:2;grid-row:1 / span 2;align-self:center;display:flex;flex-direction:column;align-items:flex-end;gap:14px}
.header-phone {display:inline-flex;align-items:center;gap:10px;color:var(--navy);font-size:1.3rem;font-weight:700;line-height:1.3;text-decoration:none}
.header-phone > span:first-child {color:var(--blue);font-size:1.65rem}
.header-phone:hover {color:var(--blue)}
.header-action-links {display:flex;align-items:center;gap:12px}
.header-action-links .button {font-size:.9rem;padding:13px 22px;white-space:nowrap}
.header-action-links .button--outline {border:1px solid var(--blue);background:#fff;color:var(--blue)}
.header-action-links .button--outline:hover {background:var(--pale)}
.header-actions a:focus-visible {outline:3px solid var(--blue);outline-offset:4px}
@media(max-width:980px) {.header-inner {column-gap:16px}.header-inner .brand-logo {width:320px}.header-action-links {gap:8px}.header-action-links .button {padding:11px 14px;font-size:.8rem}.header-phone {font-size:1.15rem}}
@media(max-width:760px) {.header-inner {padding-block:10px;gap:8px 12px}.header-inner .brand {grid-column:1 / -1}.header-inner .brand-logo {width:min(300px,100%)}.header-actions {grid-column:2;grid-row:2;gap:0}.header-action-links {display:none}.header-phone {font-size:.95rem}.header-phone > span:first-child {font-size:1.3rem}}

/* Persistent Pflegesongs controls and branded music page. */
.header-action-links {flex-wrap:wrap;justify-content:flex-end;max-width:560px}
.header-music {position:relative}
.music-menu-button {border:1px solid #c8e5f1;background:var(--pale);color:var(--navy);gap:8px}
.music-menu-button.is-playing {border-color:var(--blue);background:#dff5ff}
.music-popover {position:absolute;right:0;top:calc(100% + 12px);width:280px;padding:20px;border:1px solid #d9e8ef;border-radius:16px;background:white;box-shadow:0 12px 32px rgba(11,48,73,.14);z-index:30;color:var(--navy)}
.music-popover[hidden] {display:none}
.music-popover p {font-weight:600;margin-bottom:14px}
.music-popover > a {display:block;margin-top:14px;color:var(--blue);text-decoration:underline}
.music-page {padding-block:48px}
.music-page > h1 {margin-bottom:24px;color:var(--navy)}
.music-player {margin-top:28px;padding:clamp(20px,4vw,40px);border:1px solid #d9e8ef;border-radius:24px;background:linear-gradient(145deg,#fff,#eff9fd);box-shadow:0 12px 36px rgba(11,48,73,.07)}
.music-eyebrow {color:#007fac;font-size:.9rem;font-weight:700}
.music-controls {display:flex;justify-content:center;gap:16px;margin-block:24px}
.music-controls button,.music-play {min-height:48px;padding:12px 22px;border:1px solid #c8e5f1;border-radius:999px;background:#fff;color:var(--navy);font:inherit;font-weight:600;cursor:pointer}
.music-controls .music-play,.music-popover .music-play {background:var(--yellow);border-color:var(--yellow);min-width:135px}
.music-player button:focus-visible,.music-popover button:focus-visible {outline:3px solid var(--blue);outline-offset:3px}
.music-player button:disabled {opacity:.5;cursor:default}
.music-progress {display:flex;align-items:center;gap:14px;font-variant-numeric:tabular-nums}
.music-progress input {flex:1;min-width:0;accent-color:var(--blue)}
.music-volume {display:flex;align-items:center;justify-content:flex-end;gap:12px;margin-top:18px;font-size:.9rem}
.music-volume input {accent-color:var(--blue);max-width:160px}
.music-playlist {margin:28px 0 0;padding-left:24px}
.music-playlist li {padding-left:8px;color:#497084}
.music-playlist button {display:flex;justify-content:space-between;align-items:center;gap:16px;width:100%;padding:16px;border:0;border-bottom:1px solid #d9e8ef;background:transparent;text-align:left;color:var(--navy);font:inherit;cursor:pointer}
.music-playlist button.is-current {background:#dff3fc;border-radius:10px;font-weight:700}
.music-status:empty {display:none}
.music-status:not(:empty) {position:fixed;bottom:76px;left:50%;transform:translateX(-50%);max-width:calc(100% - 32px);padding:12px 20px;border-radius:12px;background:var(--navy);color:#fff;z-index:40}
@media(max-width:980px) {.header-action-links {max-width:340px}}
@media(max-width:760px) {.header-actions {flex-direction:row;gap:10px}.header-action-links {display:flex}.header-action-links > .button {display:none}.header-action-links .music-menu-button {padding:9px 12px;font-size:.8rem}.header-phone {font-size:.85rem}.music-page {padding-block:28px}.music-popover {width:260px}.music-controls {gap:8px}.music-controls button {padding:11px 16px}}

/* Give the mobile booking action enough room for its complete label. */
@media(max-width:760px) {.mobile-contact {grid-template-columns:1fr 1.7fr}}
