:root{
  --green:#2f4f4f;
  --green2:#3a5f5b;
  --green3:#1f3735;
  --off:#f6f4ef;
  --sand:#d8d2c4;
  --linen:#ebe5d8;
  --ink:#1e2927;
  --muted:#6d7772;
  --gold:#c7b98a;
  --white:#fffdf8;
  --shadow:0 24px 60px rgba(18,34,32,.16);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Arial,sans-serif;background:var(--off);color:var(--ink);line-height:1.55}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
.nav{position:sticky;top:0;z-index:50;background:rgba(246,244,239,.92);backdrop-filter:blur(16px);border-bottom:1px solid rgba(47,79,79,.12)}
.nav-inner{max-width:1180px;margin:0 auto;padding:16px 24px;display:flex;justify-content:space-between;align-items:center;gap:24px}.brand{display:flex;align-items:center;gap:14px}.brand img{height:44px;width:auto}.brand-name{font-family: system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;}.brand-sub{font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--muted)}.nav-links{display:flex;align-items:center;gap:22px;font-size:14px}.nav-links a{opacity:.86}.nav-links a:hover{opacity:1;color:var(--green2)}.nav-cta{border:1px solid var(--green2);padding:10px 16px;border-radius:999px;color:var(--green2)}
.hero{min-height:84vh;display:grid;align-items:center;position:relative;overflow:hidden;background:var(--green3);color:var(--off)}.hero::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(17,31,30,.82),rgba(31,55,53,.58),rgba(31,55,53,.18)),url('../assets/images/hero-cover.jpg') center/cover no-repeat;opacity:.95}.hero-inner{position:relative;max-width:1180px;margin:0 auto;padding:110px 24px 90px;display:grid;grid-template-columns:1.1fr .9fr;gap:50px;align-items:center}.eyebrow{letter-spacing:.22em;text-transform:uppercase;font-size:12px;color:var(--sand);margin-bottom:18px}.hero h1{font-family:Georgia,serif;font-weight:400;letter-spacing:.08em;font-size:clamp(46px,7vw,92px);line-height:.95;margin:0 0 22px}.hero p.lead{font-family:Georgia,serif; font-size:clamp(19px,2.4vw,28px);max-width:660px;color:#efeade}.buttons{display:flex;flex-wrap:wrap;gap:14px;margin-top:32px}.btn{display:inline-flex;align-items:center;gap:10px;border-radius:999px;padding:14px 22px;font-weight:600}.btn-primary{background:var(--off);color:var(--green3)}.btn-secondary{border:1px solid rgba(246,244,239,.55);color:var(--off)}.hero-card{background:rgba(246,244,239,.12);border:1px solid rgba(246,244,239,.25);border-radius:28px;padding:34px;box-shadow:var(--shadow);backdrop-filter:blur(10px)}.hero-card h3{font-family:Georgia,serif;font-weight:400;font-size:28px;margin:0 0 12px}.hero-card ul{padding-left:18px;color:#efeade}.hero-card li{margin:10px 0}
.section{padding:92px 24px}.container{max-width:1180px;margin:0 auto}.narrow{max-width:860px}.section-title{font-family:Georgia,serif;font-size:clamp(34px,4vw,58px);line-height:1.05;font-weight:400;margin:0 0 20px;color:var(--green3)}.section-kicker{letter-spacing:.2em;text-transform:uppercase;color:var(--green2);font-size:12px;margin-bottom:16px}.lead-dark{font-size:20px;color:#3e4844;max-width:880px}.grid{display:grid;gap:24px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.card{background:var(--white);border:1px solid rgba(47,79,79,.1);border-radius:30px;padding:30px;box-shadow:0 14px 35px rgba(31,55,53,.08)}.card h3{font-family:Georgia,serif;font-weight:400;font-size:28px;margin:0 0 12px}.card p{color:#4c5652}.image-card{overflow:hidden;padding:0}.image-card img{height:280px;width:100%;object-fit:cover}.image-card .pad{padding:28px}.split{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}.rounded-img{border-radius:34px;overflow:hidden;box-shadow:var(--shadow)}.rounded-img img{height:460px;width:100%;object-fit:cover}.alps{position:relative;min-height:540px;display:grid;align-items:end;background:url('../assets/images/chiemgau-kampenwand.jpg') center/cover no-repeat;color:var(--off)}.alps::before{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(31,55,53,.88),rgba(31,55,53,.18),rgba(31,55,53,.1))}.alps .container{position:relative;padding:90px 24px}.alps h2{font-family:Georgia,serif;font-size:clamp(38px,5vw,68px);font-weight:400;line-height:1.05;margin:0 0 18px;max-width:820px}.alps p{max-width:720px;font-size:20px;color:#f0eadb}.program{display:flex;flex-direction:column;gap:16px}.pill{display:inline-block;border:1px solid var(--sand);border-radius:999px;padding:7px 12px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--green2);width:max-content}.dark{background:var(--green3);color:var(--off)}.dark .section-title{color:var(--off)}.dark .lead-dark,.dark p{color:#e6dfd1}.dark .card{background:rgba(246,244,239,.08);border-color:rgba(246,244,239,.16);box-shadow:none}.dark .card h3{color:var(--off)}.two-cta{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:44px}.cta-card{border-radius:34px;overflow:hidden;background:var(--green3);color:var(--off);position:relative;min-height:420px;display:flex;align-items:flex-end}.cta-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.58}.cta-card::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(31,55,53,.78),rgba(31,55,53,.1))}.cta-content{position:relative;z-index:2;padding:34px}.cta-content h3{font-family:Georgia,serif;font-weight:400;font-size:36px;margin:0 0 10px}.footer{background:#172927;color:var(--off);padding:54px 24px}.footer-inner{max-width:1180px;margin:0 auto;display:flex;justify-content:space-between;gap:30px;flex-wrap:wrap}.footer small{color:#bcb5a6}.note{font-size:13px;color:#6f7975}.page-hero{background:linear-gradient(90deg,rgba(31,55,53,.88),rgba(31,55,53,.52)),var(--green3);color:var(--off);padding:110px 24px 78px}.page-hero .container{display:grid;grid-template-columns:1fr .8fr;gap:50px;align-items:center}.page-hero h1{font-family:Georgia,serif;font-weight:400;font-size:clamp(42px,6vw,76px);line-height:1.02;margin:0 0 20px}.page-hero p{font-size:21px;color:#eee6d6}.page-hero img{border-radius:34px;box-shadow:var(--shadow);height:420px;width:100%;object-fit:cover}.steps{counter-reset:step}.step{display:grid;grid-template-columns:54px 1fr;gap:18px;align-items:start}.step:before{counter-increment:step;content:counter(step);width:54px;height:54px;border-radius:50%;background:var(--green2);color:var(--off);display:grid;place-items:center;font-family:Georgia,serif;font-size:24px}.accordion details{background:var(--white);border:1px solid rgba(47,79,79,.1);border-radius:20px;margin:12px 0;padding:18px 22px}.accordion summary{cursor:pointer;font-weight:700}.accordion p{color:#4c5652}.contact-band{background:var(--linen);border-top:1px solid rgba(47,79,79,.08);border-bottom:1px solid rgba(47,79,79,.08)}
@media(max-width:900px){.nav-inner{align-items:flex-start}.nav-links{gap:10px;flex-wrap:wrap}.hero-inner,.split,.page-hero .container,.grid-2,.grid-3,.two-cta{grid-template-columns:1fr}.hero{min-height:auto}.hero-inner{padding-top:80px}.hero-card{max-width:620px}.rounded-img img,.page-hero img{height:320px}.section{padding:70px 20px}.brand-name{font-size:15px}.nav-links{font-size:13px}.nav-cta{padding:8px 12px}}
@media(max-width:620px){.nav-inner{padding:12px 16px}.brand img{height:34px}.brand-sub{display:none}.hero h1{font-size:44px}.hero-inner{padding:70px 18px}.buttons{flex-direction:column}.btn{justify-content:center}.page-hero{padding-top:82px}.cta-card{min-height:330px}}


.footer-links{display:flex;gap:18px;flex-wrap:wrap;align-items:center}
.footer-links a{color:#efe6d6;text-decoration:none;border-bottom:1px solid rgba(239,230,214,.35)}
.footer-links a:hover{border-bottom-color:#efe6d6}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}
.contact-form{background:var(--white);border:1px solid rgba(47,79,79,.12);border-radius:30px;padding:32px;box-shadow:0 14px 35px rgba(31,55,53,.08)}
.contact-form h3{font-family:Georgia,serif;font-weight:400;font-size:30px;margin:0 0 6px;color:var(--green3)}
.form-intro{color:#58625e;margin-top:0}
.contact-form label{display:block;font-weight:700;font-size:14px;margin:18px 0 8px;color:var(--green3)}
.contact-form input[type="text"],.contact-form input[type="email"],.contact-form select,.contact-form textarea{width:100%;border:1px solid rgba(47,79,79,.22);background:#fffdf8;border-radius:16px;padding:13px 14px;font:inherit;color:var(--ink);outline:none}
.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:var(--green2);box-shadow:0 0 0 4px rgba(58,95,91,.12)}
.checkline{display:flex!important;gap:12px;align-items:flex-start;font-weight:400!important;line-height:1.4}
.checkline input{margin-top:4px}
.checkline a{text-decoration:underline;color:var(--green2)}
.hp-field{position:absolute;left:-9999px;opacity:0;height:0;width:0;overflow:hidden}
.form-status{font-size:14px;margin-top:14px;color:var(--green2)}
.btn-dark-text{color:var(--green3)!important;border-color:var(--green2)!important}
.legal-page h1{margin-bottom:18px}
.legal-page h2{font-family:Georgia,serif;font-weight:400;font-size:28px;margin-top:36px;color:var(--green3)}
.legal-page a{text-decoration:underline;color:var(--green2)}
@media(max-width:900px){.contact-grid{grid-template-columns:1fr}.footer-inner{display:grid}.footer-links{order:3}}
