:root{--ink:#263b32;--green:#315e4a;--mint:#edf5ef;--cream:#fbf9f3;--orange:#e9a95f}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:85px}body{margin:0;font:17px/1.7 system-ui,-apple-system,Segoe UI,sans-serif;color:var(--ink);background:#fff}a{color:var(--green)}.wrap{width:min(1120px,calc(100% - 44px));margin:auto}.narrow{max-width:850px}.header{position:sticky;top:0;z-index:10;background:#fffffff2;backdrop-filter:blur(12px);border-bottom:1px solid #e5ebe6;display:flex;align-items:center;justify-content:space-between;padding:13px max(22px,calc((100vw - 1120px)/2));gap:20px}.brand{text-decoration:none;color:var(--ink);display:flex;align-items:center;gap:12px;line-height:1.2}.brand strong{font-size:26px;display:block}.brand small{font-size:12px;display:block;letter-spacing:.03em}.brand-icon{font-size:37px;color:#e8a24b}nav{display:flex;align-items:center;gap:26px}nav a{text-decoration:none;font-size:14px;font-weight:650}.nav-cta{background:var(--green);color:white;padding:10px 18px;border-radius:30px}.menu{display:none}.hero{background:linear-gradient(115deg,#f7f6ed,#eaf3e9);overflow:hidden}.hero-grid{min-height:620px;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:50px;padding-top:60px;padding-bottom:60px}.eyebrow{font-size:12px;letter-spacing:.16em;color:#a36b2e;font-weight:800;margin:0 0 15px}h1,h2,h3{line-height:1.17;letter-spacing:-.035em}h1{font-size:clamp(43px,5.2vw,72px);margin:0 0 25px}h1 em{font-style:normal;color:#60916c}h2{font-size:clamp(34px,4vw,49px);margin:0 0 25px}h3{font-size:23px}.lead{font-size:20px;max-width:610px}.actions{display:flex;flex-wrap:wrap;gap:12px;margin:32px 0}.btn{display:inline-block;background:var(--green);color:white;text-decoration:none;border-radius:50px;padding:13px 25px;font-weight:700;font-size:15px}.btn.secondary{background:#fff;color:var(--green);border:1px solid #cbd9cd}.micro{font-size:13px;color:#5d6b61}.hero-art{height:430px;border-radius:180px 180px 35px 35px;background:radial-gradient(circle at 60% 40%,#f8e8c3,#d0e2cc 65%,#b2d0b4);position:relative;display:grid;place-items:center}.art-sun{font-size:190px;color:#f7f4e5;line-height:1}.art-card{position:absolute;bottom:25px;left:-35px;background:white;border-radius:18px;padding:22px 28px;box-shadow:0 15px 50px #315e4a25;max-width:310px;font-size:25px;color:#e2a454}.art-card b,.art-card span{display:block;color:var(--ink);font-size:17px}.art-card span{font-size:13px;color:#66736a}.section{padding:100px 0}.section p{max-width:730px}.tinted{background:var(--cream)}.quote{border-left:4px solid var(--orange);padding:18px 25px;background:var(--cream);font-size:20px;margin:32px 0}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:42px}.card{background:white;border:1px solid #e8ebe5;padding:30px 25px;border-radius:20px;box-shadow:0 6px 22px #253b3210}.card h3{font-size:21px}.card p{font-size:15px}.symbol{font-size:36px;color:#d79a55}.split{display:grid;grid-template-columns:1fr 1fr;gap:75px;align-items:center}.schedule{background:var(--mint);padding:30px;border-radius:22px}.schedule>div{display:flex;gap:22px;padding:17px 0;border-bottom:1px solid #cdded1}.schedule>div:last-child{border:0}.schedule b{color:#a36b2e}.schedule strong,.schedule small{display:block}.schedule small{color:#65766b}.info,.address{background:white;border-radius:22px;padding:40px;box-shadow:0 10px 40px #253b3212}.info span{font-size:42px;color:var(--orange)}.contact{background:var(--mint)}.address a{font-weight:700}footer{background:#233e31;color:white;padding:26px 0;font-size:13px}.foot{display:flex;justify-content:space-between;gap:20px}.foot a{color:white;margin-left:24px}@media(max-width:900px){.cards{grid-template-columns:repeat(2,1fr)}.hero-grid,.split{gap:30px}.hero-art{height:330px}.art-sun{font-size:130px}.art-card{left:0}}@media(max-width:700px){.menu{display:block;border:0;background:transparent;font-size:27px;color:var(--green);cursor:pointer}nav{display:none;position:absolute;top:68px;left:0;right:0;background:white;padding:20px;flex-direction:column;align-items:stretch;box-shadow:0 15px 30px #0001}nav.open{display:flex}.hero-grid,.split{grid-template-columns:1fr}.hero-grid{padding-top:50px}.hero-art{height:240px;margin:10px 0 35px}.art-card{bottom:-30px;left:12px}.section{padding:65px 0}.cards{grid-template-columns:1fr}.foot{flex-direction:column}.foot a{margin:0 20px 0 0}h1{font-size:43px}}

/* Originalbilder und HappyDays-Farben */
:root{--ink:#453328;--green:#b95220;--mint:#fff1de;--cream:#fffaf2;--orange:#f18334}
.brand-logo{display:block;width:245px;max-width:42vw;height:auto;object-fit:contain}
.hero{background:linear-gradient(100deg,rgba(255,248,239,.97),rgba(255,242,222,.91)),url('startseite_oben.png') center/cover}
.hero-art{border-radius:26px;background:#efc09c;overflow:visible}
.hero-art>img{width:100%;height:100%;object-fit:cover;border-radius:26px}
.art-card{color:#e77d2f}
.availability{background:#fff2b7;padding:28px 0}.availability-inner{display:flex;align-items:center;justify-content:space-between;gap:25px}.availability strong{font-size:clamp(22px,3vw,32px)}.availability p{margin:3px 0}.availability .btn{white-space:nowrap}
.image-section{background:#fff}.image-section img{display:block;width:min(520px,100%);height:auto;border-radius:18px;box-shadow:0 12px 35px #3c291525}
@media(max-width:700px){.brand-logo{width:200px;max-width:68vw}.availability-inner{flex-direction:column;align-items:flex-start}.hero-art{margin-bottom:55px}}

/* Originalgrafik mit den drei Senioren als sichtbares Header-Banner */
.senioren-banner{height:clamp(180px,26vw,360px);background:#ee7b36 url("startseite_oben.png") center center / cover no-repeat;}
@media(max-width:700px){.senioren-banner{height:190px;background-position:68% center;}}

/* Neuer Banner: vollständige Illustration ohne Beschnitt */
.senioren-banner{height:auto;background:#f47d34;line-height:0}
.senioren-banner img{display:block;width:100%;height:auto;object-fit:contain}
@media(max-width:700px){.senioren-banner{height:auto;background:none}.senioren-banner img{width:100%;height:auto}}

/* Kontaktinformationen oben rechts – wie auf der bisherigen Webseite */
.header-right{display:flex;flex-direction:column;align-items:flex-end;gap:10px;min-width:0}
.header-contact{display:flex;align-items:stretch;gap:18px;color:#45454a}
.header-contact-details{display:flex;flex-direction:column;justify-content:space-between;gap:6px;text-align:left;padding:2px 18px 2px 0;border-right:1px solid #a9a9a9}
.header-contact-details a{color:#45454a;text-decoration:none;font-size:clamp(12px,1.3vw,19px);font-weight:400;white-space:nowrap;line-height:1.4}
.header-contact-details a:hover{text-decoration:underline}
.header-contact-button{display:flex;align-items:center;justify-content:center;border:2px solid #f36a19;border-radius:8px;padding:9px 25px;color:#ed641b;text-decoration:none;font-size:clamp(15px,1.5vw,22px);font-weight:400;letter-spacing:.02em;transition:background .2s,color .2s}
.header-contact-button:hover{background:#f36a19;color:#fff}
.header-right nav{gap:17px}
.header-right nav a{font-size:13px}
@media(max-width:1050px){.header{flex-wrap:wrap}.header-right{flex:1}.header-right nav{gap:12px}.header-contact-details a{font-size:14px}}
@media(max-width:700px){.header{align-items:center}.header-right{flex-direction:row;align-items:center;justify-content:flex-end;gap:10px}.header-contact{gap:8px;align-items:center}.header-contact-details{border-right:0;padding:0;gap:1px}.header-contact-details a{font-size:clamp(9px,2.2vw,12px)}.header-contact-button{font-size:12px;padding:7px 9px;border-radius:6px}.header-right nav{position:absolute;top:100%;left:0;right:0}.brand-logo{width:clamp(100px,25vw,165px);max-width:none}.menu{font-size:25px}}
@media(max-width:390px){.header{padding-left:10px;padding-right:10px;gap:6px}.header-contact-button{padding:5px 6px}.header-contact-details a{font-size:9px}}

/* Kopfbereich: Logo links, Navigation mittig, Kontaktdaten rechts – eine Zeile */
.header{display:flex;flex-wrap:nowrap;align-items:center;gap:clamp(12px,1.4vw,26px);padding:14px clamp(18px,3vw,58px)}
.brand{flex:0 0 auto}.brand-logo{width:clamp(160px,17vw,270px);max-width:none}
.header>nav{display:flex;flex:1 1 auto;justify-content:center;gap:clamp(10px,1.2vw,24px);min-width:0}
.header>nav a{white-space:nowrap;font-size:clamp(12px,.9vw,15px)}
.header-contact{flex:0 0 auto;align-items:center;gap:clamp(8px,1.2vw,18px)}
.header-contact-details{gap:5px;justify-content:center}
.header-contact-details a,.header-contact-details span{font-size:clamp(11px,1.05vw,17px);white-space:nowrap;color:#45454a;line-height:1.5}
.header-contact-button{white-space:nowrap;font-size:clamp(13px,1.1vw,19px);padding:9px clamp(10px,1.4vw,24px)}
@media(max-width:1200px){.header{flex-wrap:wrap;justify-content:space-between}.brand-logo{width:190px}.header>nav{order:3;flex-basis:100%;justify-content:center}.header-contact{margin-left:auto}}
@media(max-width:700px){.header{flex-wrap:wrap;gap:8px 12px}.brand-logo{width:clamp(125px,30vw,180px)}.menu{display:block;order:2;margin-left:auto}.header-contact{order:3;flex-basis:100%;margin-left:0;justify-content:center}.header-contact-details{border-right:1px solid #aaa;padding-right:12px}.header-contact-details a,.header-contact-details span{font-size:clamp(11px,2.5vw,14px)}.header-contact-button{font-size:13px;padding:7px 12px}.header>nav{display:none;position:absolute;top:100%;left:0;right:0;order:4;flex-basis:auto;flex-direction:column;align-items:stretch;gap:12px;padding:18px;background:#fff;box-shadow:0 15px 30px #0001}.header>nav.open{display:flex}}

/* Hero: Originalfoto vollständig und ohne überlagernde Karte */
.hero{overflow:visible}
.hero-intro{padding-top:60px;padding-bottom:28px}
.hero-intro h1{max-width:1000px;font-size:clamp(36px,5vw,66px)}
.hero-intro .lead{max-width:850px}
.hero-wide-photo{width:100%;background:#f4e9dc;text-align:center}
.hero-wide-photo img{display:block;width:100%;height:auto;object-fit:contain}
.hero-outro{padding-top:26px;padding-bottom:55px}
.hero-outro>p:first-child{font-size:clamp(19px,2.4vw,26px);font-weight:650;margin:0}
.hero-outro .actions{margin:22px 0}
@media(max-width:700px){.hero-intro{padding-top:38px}.hero-outro{padding-bottom:38px}}

/* Originalfoto maximal in nativer Breite anzeigen, ohne Hochskalierung */
.hero-wide-photo{padding:20px 22px;background:#fff4e9}
.hero-wide-photo img{width:100%;max-width:1080px;height:auto;margin:0 auto;object-fit:contain;border-radius:16px}
@media(max-width:700px){.hero-wide-photo{padding:12px}.hero-wide-photo img{border-radius:10px}}

/* Original-Sonnenmotiv dezent auf hellen Inhaltsabschnitten */
.section:not(.tinted):not(.contact), .image-section {
  background-color:#fff;
  background-image:url("body-hg.png");
  background-repeat:no-repeat;
  background-position:center center;
  background-size:cover;
}
@media(max-width:700px){
 .section:not(.tinted):not(.contact), .image-section {background-size: auto 100%;}
}

/* Nach-oben-Button */
.back-to-top{position:fixed;right:24px;bottom:24px;z-index:1000;width:52px;height:52px;border:0;border-radius:50%;background:#c04f1e;color:#fff;font-size:30px;line-height:1;display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:0 5px 16px rgba(0,0,0,.18);opacity:0;visibility:hidden;pointer-events:none;transform:translateY(10px);transition:opacity .2s ease,transform .2s ease,visibility .2s ease}
.back-to-top.is-visible{opacity:1;visibility:visible;pointer-events:auto;transform:translateY(0)}
.back-to-top:hover{background:#a84016}
.back-to-top:focus-visible{outline:3px solid #333;outline-offset:3px}
@media(max-width:700px){.back-to-top{right:16px;bottom:16px;width:46px;height:46px;font-size:27px}}
@media(prefers-reduced-motion:reduce){.back-to-top{transition:none}}

/* Finanzierung: Informationssymbol neben der Überschrift statt separat darüber */
#finanzierung .info h3{display:flex;align-items:center;gap:14px;margin:0 0 22px}
#finanzierung .info .info-icon{display:inline-flex;align-items:center;justify-content:center;flex:0 0 34px;width:34px;height:34px;border-radius:50%;background:#fff0e6;color:#e8792e;font-size:23px;font-weight:800;line-height:1}
#finanzierung .info p{margin:0}
@media(max-width:700px){#finanzierung .info h3{font-size:21px;gap:10px}}

/* Einblicke: zwei gleichwertige Bildflächen, vorbereitet für spätere Redaktion */
.einblicke-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:start;margin-top:24px}
.einblicke-item{margin:0;min-width:0}
.image-section .einblicke-item img{width:100%;max-width:100%;height:auto;display:block;object-fit:contain}
.einblicke-placeholder{min-height:320px;border:2px dashed #e8c6a8;border-radius:18px;background:#fffaf5;display:flex;align-items:center;justify-content:center;text-align:center;padding:32px;color:#815c44;font-size:1.05rem}
@media(max-width:720px){.einblicke-grid{grid-template-columns:1fr;gap:18px}.einblicke-placeholder{min-height:190px}}

/* HappyDays Bildergalerie */
.happy-gallery-section{background:#fff}.happy-gallery{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:30px}.gallery-tile{padding:0;border:0;background:#f6ede5;border-radius:14px;overflow:hidden;cursor:pointer;aspect-ratio:4/3;box-shadow:0 5px 18px #4b2c1b13}.gallery-tile img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .25s}.gallery-tile:hover img{transform:scale(1.05)}.gallery-tile:focus-visible{outline:3px solid #c3521b;outline-offset:3px}.gallery-lightbox{display:none;position:fixed;inset:0;z-index:9999;background:rgba(15,12,10,.95);align-items:center;justify-content:center;padding:64px 66px 40px}.gallery-lightbox[aria-hidden="false"]{display:flex}.gallery-lightbox figure{margin:0;max-width:100%;text-align:center;color:white}.gallery-lightbox figure img{display:block;max-width:100%;max-height:calc(100vh - 135px);object-fit:contain;margin:auto}.gallery-lightbox figcaption{margin-top:12px;font-size:14px;color:#eee}.gallery-lightbox button{position:absolute;border:0;border-radius:50%;background:#c3521b;color:#fff;cursor:pointer;display:grid;place-items:center;width:46px;height:46px;font-size:32px;line-height:1}.gallery-close{right:20px;top:18px}.gallery-prev{left:12px;top:50%}.gallery-next{right:12px;top:50%}.gallery-status{margin-top:18px}@media(max-width:900px){.happy-gallery{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:600px){.happy-gallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.gallery-lightbox{padding:65px 42px 36px}.gallery-lightbox button{width:36px;height:36px;font-size:26px}.gallery-prev{left:3px}.gallery-next{right:3px}}

/* Weicher Bildwechsel in der Großbildgalerie */
.gallery-lightbox figure img{opacity:1;transition:opacity .22s ease-in-out}
.gallery-lightbox figure img.gallery-fade-out{opacity:0}
.gallery-lightbox figure img.gallery-fade-in{opacity:1}
@media(prefers-reduced-motion:reduce){.gallery-lightbox figure img{transition:none}}

/* Flyer-Download im Senioren-Banner */
.senioren-banner{position:relative}
.banner-flyer-download{position:absolute;left:clamp(14px,4vw,80px);bottom:clamp(12px,3vw,55px);display:inline-flex;align-items:center;gap:.5em;background:#ff7200;color:#fff700;text-decoration:none;font-size:clamp(13px,1.65vw,30px);font-weight:600;line-height:1.2;padding:.6em .95em;border:1px solid rgba(255,255,255,.65);border-radius:5px;box-shadow:0 2px 12px rgba(255,255,255,.55);transition:background .2s ease,transform .2s ease;z-index:1}
.banner-flyer-download:hover,.banner-flyer-download:focus-visible{background:#e96200;transform:translateY(-2px);color:#fff700}
@media(max-width:600px){.banner-flyer-download{left:10px;bottom:8px;padding:.45em .65em;font-size:clamp(11px,2.5vw,15px)}}

#hd-news{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px}.hd-news-card{background:white;border-radius:12px;padding:22px;box-shadow:0 2px 12px #0001}.hd-news-card p{white-space:pre-line}.hd-news-card img{max-width:100%;border-radius:8px;margin-top:12px}

/* Aktuelles an der bisherigen Einblicke-Position: zwei gleich breite Beiträge */
#hd-news{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;align-items:stretch;margin-top:24px}
#hd-news .hd-news-card{min-width:0;overflow:hidden;background:#fff;border-radius:18px;padding:24px;box-shadow:0 3px 16px rgba(0,0,0,.08);display:flex;flex-direction:column;gap:12px}
#hd-news .hd-news-card h3{margin:0}
#hd-news .hd-news-card small{color:#815c44}
#hd-news .hd-news-card p{margin:0;white-space:pre-line;overflow-wrap:anywhere}
#hd-news .hd-news-card img{display:block;width:100%;height:auto;max-width:100%;border-radius:12px;margin-top:8px;object-fit:cover}
.hd-news-empty{margin-top:24px}
@media(max-width:720px){#hd-news{grid-template-columns:1fr;gap:18px}#hd-news .hd-news-card{padding:18px}}

/* SEO: semantische H1 im Hero, unveränderte optische Darstellung */
.hero-intro h1.eyebrow{font-size:12px;letter-spacing:.16em;line-height:1.7;font-weight:800;color:#a36b2e;margin:0 0 15px;max-width:none}
