:root{
  --bg:#FAF7F1;--soft:#F3EDE2;--navy:#173746;--blue:#1F4E5F;--sand:#D8C7AA;--text:#2F3437;--muted:#6E7375;--line:#E5DDD0;--white:#fff;
  --shadow:0 20px 50px rgba(23,55,70,.10);--radius:24px;--container:1180px;
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,system-ui,-apple-system,Segoe UI,sans-serif;font-size:16px;line-height:1.65}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}svg{width:22px;height:22px;fill:currentColor}h1,h2,h3{font-family:Lora,Georgia,serif;color:var(--navy);line-height:1.08;margin:0 0 18px}h1{font-size:clamp(2.4rem,5vw,4.5rem);letter-spacing:-.03em}h2{font-size:clamp(2rem,3.5vw,3.1rem);letter-spacing:-.025em}h3{font-size:1.25rem}p{margin:0 0 18px}.container{width:min(var(--container),calc(100% - 48px));margin-inline:auto}.narrow{max-width:760px}.center{text-align:center}.center-head{text-align:center;max-width:820px}.center-head p{color:var(--muted);font-size:1.05rem}.section-pad{padding:92px 0}.soft{background:var(--soft)}.eyebrow{font-weight:700;color:#A47D43;letter-spacing:.02em;margin-bottom:12px}.lead{font-size:1.14rem;color:#3f484b;max-width:620px}.site-header{height:78px;padding:0 42px;background:rgba(250,247,241,.92);backdrop-filter:blur(18px);border-bottom:1px solid rgba(229,221,208,.8);display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:50;transition:box-shadow .2s}.site-header.scrolled{box-shadow:0 12px 30px rgba(23,55,70,.08)}.brand{display:flex;flex-direction:column;line-height:1.1}.brand strong{font-family:Lora,Georgia,serif;font-size:1.15rem;color:var(--navy)}.brand span{font-size:.79rem;color:var(--muted)}.main-nav{display:flex;align-items:center;gap:28px;font-size:.91rem;font-weight:700}.main-nav a{color:var(--navy)}.main-nav a:hover,.main-nav .active{color:#A47D43}.nav-cta,.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:8px;font-weight:800;border:1px solid transparent;line-height:1;transition:.2s ease}.nav-cta{background:var(--navy);color:#fff!important;padding:14px 22px}.btn{padding:17px 27px}.btn-primary{background:var(--navy);color:#fff;border-color:var(--navy);box-shadow:0 12px 25px rgba(23,55,70,.15)}.btn-primary:hover,.nav-cta:hover{background:var(--blue);transform:translateY(-1px)}.btn-secondary{background:#fff;color:var(--navy);border-color:#BEB29F}.btn.small{padding:14px 22px}.btn.full{width:100%}.button-row{display:flex;gap:16px;flex-wrap:wrap;margin-top:28px}.menu-toggle{display:none;background:transparent;border:0;padding:10px}.menu-toggle span{display:block;width:26px;height:2px;background:var(--navy);margin:5px 0}.hero{padding-top:64px}.hero-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:60px;align-items:center}.hero-image{margin:0;position:relative}.hero-image:before{content:"";position:absolute;inset:32px -20px -20px 40px;background:var(--sand);border-radius:var(--radius);z-index:-1;opacity:.45}.hero-image img{border-radius:var(--radius);box-shadow:var(--shadow);aspect-ratio:16/10;object-fit:cover}.quick-facts{display:flex;flex-wrap:wrap;gap:18px 22px;margin:28px 0;color:var(--navy);font-weight:700;font-size:.92rem}.quick-facts span{display:inline-flex;align-items:center;gap:8px}.benefits{padding:0 0 58px}.benefits-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.benefit-card,.amenity-card,.facts-card,.price-card,.form-card,.contact-panel,.excursion-grid article{background:#fff;border:1px solid var(--line);border-radius:18px;box-shadow:0 14px 35px rgba(23,55,70,.06)}.benefit-card{padding:26px;min-height:145px;opacity:0;transform:translateY(15px);transition:.5s}.benefit-card.is-visible{opacity:1;transform:none}.benefit-card svg{color:#A47D43;width:31px;height:31px;margin-bottom:12px}.benefit-card p{color:var(--muted);font-size:.94rem;margin:0}.two-col{display:grid;grid-template-columns:1fr .78fr;gap:70px;align-items:start}.two-col p{font-size:1.04rem}.facts-card{padding:32px;background:#fffdf9}.facts-card dl{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:0 28px}.facts-card div{display:flex;justify-content:space-between;gap:16px;padding:13px 0;border-bottom:1px solid var(--line)}.facts-card dt{color:var(--muted)}.facts-card dd{margin:0;font-weight:700;color:var(--navy);text-align:right}.gallery-grid{display:grid;grid-template-columns:1.35fr 1fr 1fr;grid-auto-rows:190px;gap:16px}.gallery-grid a{position:relative;overflow:hidden;border-radius:18px;box-shadow:0 10px 25px rgba(23,55,70,.08)}.gallery-grid img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.gallery-grid a:hover img{transform:scale(1.04)}.gallery-main{grid-row:span 2}.gallery-grid span{position:absolute;left:14px;bottom:12px;background:rgba(23,55,70,.82);color:#fff;border-radius:8px;padding:6px 10px;font-size:.85rem;font-weight:700}.amenity-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.amenity-card{padding:30px;opacity:0;transform:translateY(15px);transition:.5s}.amenity-card.is-visible{opacity:1;transform:none}.amenity-card svg{color:var(--blue);width:34px;height:34px;margin-bottom:12px}.amenity-card ul{list-style:none;padding:0;margin:0}.amenity-card li{padding:5px 0;color:#465054}.amenity-card li:before{content:"✓";color:#A47D43;font-weight:900;margin-right:8px}.price-card{padding:38px;text-align:center}.price-card table{width:100%;border-collapse:collapse;margin:14px 0 22px;text-align:left}.price-card th,.price-card td{padding:16px;border-bottom:1px solid var(--line)}.price-card td{text-align:right;font-size:1.25rem;font-weight:900;color:var(--navy)}.price-card small{display:block;margin-top:16px;color:var(--muted)}.location-grid{display:grid;grid-template-columns:1fr .9fr;gap:54px;align-items:center}.distance-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin:28px 0}.distance-grid span{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px;text-align:center;color:var(--muted);font-size:.86rem}.distance-grid b{display:block;color:var(--navy);font-size:1.2rem}.map-card{margin:0;background:#fff;border-radius:var(--radius);padding:12px;box-shadow:var(--shadow)}.map-card img{border-radius:18px;aspect-ratio:4/3;object-fit:cover}.map-card figcaption{text-align:center;padding:12px;color:var(--muted);font-weight:700}.map-consent{position:relative;overflow:hidden}.map-consent img{filter:saturate(.9) contrast(.98)}.map-consent-box{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:min(82%,360px);background:rgba(255,255,255,.94);border:1px solid var(--line);border-radius:18px;padding:18px;text-align:center;box-shadow:var(--shadow)}.map-consent-box strong{display:block;color:var(--navy);font-size:1.05rem;margin-bottom:6px}.map-consent-box span{display:block;color:var(--muted);font-size:.84rem;margin-bottom:12px}.map-card iframe{display:block;width:100%;aspect-ratio:4/3;border:0;border-radius:18px}.excursion-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:18px;margin-bottom:30px}.excursion-grid article{overflow:hidden;grid-column:span 2;opacity:0;transform:translateY(15px);transition:.5s}.excursion-grid article:nth-child(4){grid-column:2/span 2}.excursion-grid article:nth-child(5){grid-column:4/span 2}.excursion-grid article.is-visible{opacity:1;transform:none}.excursion-grid img{width:100%;height:170px;object-fit:cover}.excursion-grid h3,.excursion-grid p{padding-inline:22px}.excursion-grid h3{margin-top:20px}.excursion-grid p{color:var(--muted);padding-bottom:22px}.inquiry-section{background:linear-gradient(135deg,var(--navy),#1f5969);color:#fff}.inquiry-section h2,.inquiry-section h3{color:#fff}.inquiry-grid{display:grid;grid-template-columns:.8fr 1fr .65fr;gap:28px;align-items:start}.inquiry-copy p{color:#DDE8EA}.trust-list{list-style:none;padding:0;margin:28px 0 0}.trust-list li{padding:8px 0}.trust-list li:before{content:"✓";color:#D8C7AA;font-weight:900;margin-right:8px}.form-card{padding:28px;color:var(--text)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}label{display:block;font-weight:700;color:var(--navy);font-size:.9rem;margin-bottom:14px}input,select,textarea{width:100%;border:1px solid var(--line);border-radius:8px;padding:13px 14px;margin-top:7px;font:inherit;background:#fff;color:var(--text)}textarea{resize:vertical}.check{display:flex;gap:10px;align-items:flex-start;color:var(--muted);font-size:.84rem}.check input{width:auto;margin-top:4px}.contact-panel{padding:28px;color:var(--text)}.contact-panel h3{color:var(--navy)}.contact-panel a{color:var(--blue);font-weight:800}.contact-panel img{border-radius:14px;height:120px;width:100%;object-fit:cover;margin-top:18px}.content-page{padding:70px 0 90px}.page-card{background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:var(--shadow);padding:46px}.page-card h1{font-size:3rem}.page-card h2{font-size:1.7rem;margin-top:32px}.legal-text p,.legal-text li{color:#4b5457}.contact-page-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:32px;align-items:start}.site-footer{background:var(--navy);color:#fff}.footer-image-strip{height:170px;background:url('../img/footer-starnberger-see-panorama.jpg') center/cover;opacity:.92}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1.3fr 1fr;gap:36px;padding:52px 0}.site-footer h3{color:#fff;font-size:1.05rem}.site-footer p,.site-footer a{display:block;color:#D9E1E3;margin:0 0 8px}.footer-bottom{text-align:center;border-top:1px solid rgba(255,255,255,.14);padding:18px;color:#D9E1E3;font-size:.88rem}.mobile-action-bar{display:none}.lightbox{position:fixed;inset:0;background:rgba(9,24,30,.88);z-index:100;display:flex;align-items:center;justify-content:center;padding:30px}.lightbox img{max-height:86vh;border-radius:18px;box-shadow:0 30px 90px rgba(0,0,0,.4)}.lightbox button{position:absolute;top:22px;right:30px;font-size:42px;background:transparent;border:0;color:#fff;cursor:pointer}.reveal{opacity:0;transform:translateY(15px);transition:.6s}.reveal.is-visible{opacity:1;transform:none}@media(max-width:1020px){.site-header{padding:0 24px}.menu-toggle{display:block}.main-nav{position:absolute;left:18px;right:18px;top:78px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:18px;padding:18px;display:none;flex-direction:column;align-items:stretch;gap:0}.main-nav.open{display:flex}.main-nav a{padding:14px;border-bottom:1px solid var(--line)}.nav-cta{margin-top:10px;text-align:center}.hero-grid,.two-col,.location-grid,.inquiry-grid,.contact-page-grid{grid-template-columns:1fr}.benefits-grid,.amenity-grid{grid-template-columns:repeat(2,1fr)}.gallery-grid{grid-template-columns:1fr 1fr}.gallery-main{grid-column:span 2}.excursion-grid{grid-template-columns:1fr 1fr}.excursion-grid article,.excursion-grid article:nth-child(4),.excursion-grid article:nth-child(5){grid-column:auto}.footer-grid{grid-template-columns:1fr 1fr}.distance-grid{grid-template-columns:1fr 1fr}.inquiry-copy{order:1}.form-card{order:2}.contact-panel{order:3}}@media(max-width:680px){body{font-size:15px;padding-bottom:72px}.container{width:min(100% - 28px,var(--container))}.section-pad{padding:58px 0}.site-header{height:70px;padding:0 16px}.brand strong{font-size:1rem}.brand span{font-size:.72rem}.main-nav{top:70px}.hero{padding-top:42px}.hero-grid{gap:30px}.hero-image{order:-1}.quick-facts{display:grid;grid-template-columns:1fr 1fr;gap:12px}.button-row,.form-row{grid-template-columns:1fr;display:grid}.btn{width:100%}.benefits-grid,.amenity-grid,.gallery-grid,.excursion-grid,.footer-grid,.distance-grid{grid-template-columns:1fr}.gallery-main{grid-column:auto;grid-row:auto}.gallery-grid{grid-auto-rows:230px}.facts-card dl{grid-template-columns:1fr}.page-card{padding:26px}.page-card h1{font-size:2.35rem}.footer-image-strip{height:110px}.mobile-action-bar{display:grid;grid-template-columns:1fr 1fr;position:fixed;bottom:0;left:0;right:0;z-index:60;background:var(--navy);box-shadow:0 -12px 28px rgba(0,0,0,.15)}.mobile-action-bar a{color:#fff;text-align:center;font-weight:900;padding:18px;border-right:1px solid rgba(255,255,255,.18)}.contact-panel img{height:180px}}
.notice{padding:14px 16px;border-radius:10px;margin:0 0 20px;font-weight:700}.notice.success{background:#E9F4ED;color:#245C3A;border:1px solid #BBD7C5}.notice.error{background:#FCEAE6;color:#883727;border:1px solid #EAB8AD}

.hp{position:absolute;left:-9999px;opacity:0;height:0;overflow:hidden}.check a{display:inline;color:var(--blue);font-weight:800;text-decoration:underline}

/* Nacharbeit final */
.check{align-items:flex-start;line-height:1.45;gap:10px}.check input{flex:0 0 auto;margin-top:.2em}.check span{display:block;min-width:0}.check a{display:inline!important;white-space:nowrap;color:var(--blue);font-weight:800;text-decoration:underline}.footer-contact a{display:inline!important;margin:0;color:#D9E1E3;font-weight:700}.footer-share{margin-top:18px;display:flex;flex-wrap:wrap;gap:8px;align-items:center}.footer-share span{color:#fff;font-weight:800;margin-right:4px}.site-footer .footer-share a{display:inline-flex;align-items:center;justify-content:center;margin:0;padding:7px 10px;border:1px solid rgba(255,255,255,.22);border-radius:999px;color:#fff;font-size:.82rem;font-weight:800;background:rgba(255,255,255,.06)}.site-footer .footer-share a:hover{background:rgba(255,255,255,.14)}.map-consent img{filter:saturate(.98) contrast(.98);opacity:.92}.map-consent:before{content:"";position:absolute;inset:12px;border-radius:18px;background:rgba(255,255,255,.18);pointer-events:none;z-index:1}.map-consent-box{z-index:2;background:rgba(255,255,255,.92);backdrop-filter:blur(6px)}.map-consent figcaption{position:relative;z-index:2}.narrow-page{max-width:760px}.page-card .btn{margin-top:10px}@media(max-width:680px){.footer-share{gap:7px}.site-footer .footer-share a{font-size:.78rem;padding:7px 9px}.check{font-size:.82rem}.map-consent-box{width:min(88%,340px)}}

/* Nacharbeit Bilder, Share-Icons, Links und saubere Umbrüche */
.nowrap{white-space:nowrap}.contact-panel a.nowrap,.footer-contact a.nowrap{white-space:nowrap}.site-footer .footer-contact p{line-height:1.8}.site-footer a,.page-card a,.contact-panel a,.check a,.legal-text a{transition:color .18s ease,text-decoration-color .18s ease,background .18s ease,border-color .18s ease}.site-footer .footer-grid a:not(.share-link):hover,.page-card a:hover,.contact-panel a:hover,.check a:hover,.legal-text a:hover{color:#D8C7AA;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}.main-nav a:not(.nav-cta):hover{color:var(--blue);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:6px}.footer-share{align-items:center}.site-footer .footer-share a.share-link{width:38px;height:38px;padding:0;border-radius:50%;display:inline-flex!important;align-items:center;justify-content:center;color:#fff;border:1px solid rgba(255,255,255,.24);background:rgba(255,255,255,.08)}.site-footer .footer-share a.share-link svg{width:20px;height:20px;fill:currentColor}.site-footer .footer-share a.share-link:hover{color:#fff;text-decoration:none;transform:translateY(-1px);border-color:rgba(255,255,255,.38);background:rgba(255,255,255,.16)}.share-whatsapp:hover{background:#25D366!important}.share-facebook:hover{background:#1877F2!important}.share-x:hover{background:#000!important}.share-linkedin:hover{background:#0A66C2!important}.share-mail:hover{background:#A47D43!important}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.map-consent img{filter:none!important;opacity:1!important;object-position:center center}.map-consent:before{background:rgba(255,255,255,.06)!important}.map-consent-box{background:rgba(255,255,255,.9)!important}.map-card figcaption{color:var(--navy);font-weight:800}.contact-panel{min-width:0}.footer-contact{min-width:0}@media(max-width:680px){.site-footer .footer-share a.share-link{width:36px;height:36px}.site-footer .footer-share a.share-link svg{width:18px;height:18px}.contact-panel a.nowrap,.footer-contact a.nowrap{font-size:.95rem}}

/* Kundenkorrektur: Sporthinweis im Lagebereich */
.location-note{margin:-12px 0 24px;color:var(--navy);font-weight:700;background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px 16px;}

/* Finale Nacharbeit: dezenter Parallax-Effekt fuer das Footer-Panoramabild */
@media (min-width: 1021px) and (prefers-reduced-motion: no-preference) {
  .footer-image-strip {
    height: 210px;
    background-image: linear-gradient(rgba(23, 55, 70, .08), rgba(23, 55, 70, .16)), url('../img/footer-starnberger-see-panorama.jpg');
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
    background-attachment: fixed;
    opacity: 1;
  }
}

@media (max-width: 1020px), (prefers-reduced-motion: reduce) {
  .footer-image-strip {
    background-attachment: scroll;
  }
}
